Book Image

Neural Network Projects with Python

By : James Loy
Book Image

Neural Network Projects with Python

By: James Loy

Overview of this book

Neural networks are at the core of recent AI advances, providing some of the best resolutions to many real-world problems, including image recognition, medical diagnosis, text analysis, and more. This book goes through some basic neural network and deep learning concepts, as well as some popular libraries in Python for implementing them. It contains practical demonstrations of neural networks in domains such as fare prediction, image classification, sentiment analysis, and more. In each case, the book provides a problem statement, the specific neural network architecture required to tackle that problem, the reasoning behind the algorithm used, and the associated Python code to implement the solution from scratch. In the process, you will gain hands-on experience with using popular Python libraries such as Keras to build and train your own neural networks from scratch. By the end of this book, you will have mastered the different neural network architectures and created cutting-edge AI projects in Python that will immediately strengthen your machine learning portfolio.
Table of Contents (10 chapters)

Creating a Siamese neural network in Keras

We are finally ready to start creating a Siamese neural network in Keras. In the previous sections, we looked at the theory and the high-level structure of a Siamese neural network. Let's now look at the architecture of a Siamese neural network in greater detail.

The following diagram shows the detailed architecture of the Siamese neural network we'll build in this chapter:

Let's start by creating the shared convolutional network (boxed in the preceding diagram) in Keras. By now, you should be familiar with the Conv layer, Pooling layer, and Dense layer. If you need a refresher, feel free to refer to Chapter 4, Cats Versus Dogs – Image Classification Using CNNs, for their definitions.

Let's define a function that builds this shared convolutional network using the Sequential class in Keras:

from keras.models...