Chapter 9 – Getting Your Neurons to Work
1. A convolutional neural network (CNN) can only process images. (Yes | No)
The answer is no. CNNs can process words, sounds, or video sequences, to classify and predict.
2. A kernel is a preset matrix used for convolutions. (Yes | No)
The answer is yes and no. There are many preset matrices used to process images such as the one used in edge_detection_Kernel.py
in this chapter. However, in this chapter, kernels were created randomly and then the network trained their weights to fit the target images.
3. Does pooling have a pooling matrix or is it random?
A pooling matrix has a size that is an option when the pooling layer is added to the model, such as a 2x2 pooling window.
4. The dataset always has to be large. (Yes | No)
No. A dataset does not have a standard size. It depends on the training model. If the target images, for example, do not contain complex features, the dataset will be smaller than a complex feature dataset. Furthermore, the ImageDataGenerator
function will expand the data by distorting it with the provided options.
5. Finding a dataset is not a problem with all the available image banks on the web. (Yes | No)
The answer is yes and no. Yes because if the model remains a standard academic one, then the available images (CIFAR, MNIST, or others) will suffice.
No, because in real-life corporate situations, you will have to build your dataset and add images containing noise. Noise requires more fine-tuning of the model to become reliable and generalized.
6. Once a CNN is built, training it does not take much time. (Yes | No)
The answer is no. Whatever the model is, training will remain time-consuming if you want it to be reliable. As seen in this chapter, a model requires a lot of options and mathematical thinking.
7. A trained CNN model applies to only one type of image. (Yes | No)
Yes and no. There are three main types of overfitting:
- Overfitting a model for a certain type of images with absolutely no consequence of implementation. In this case, the model classifies and predicts enough to satisfy the goals set.
- Overfitting a model that creates implementation problems because it cannot adapt to different images of the same time. The model will then go through more training.
- Overfitting a model that trains a certain type of image quite well but does not fit similar types of images when needed.
Each situation has its constraints. As long as the model works, no general rules apply. It is up to you to decide.
8. A quadratic loss function is not very efficient compared to cross-entropy function. (Yes | No)
The answer is no. Each model has its constraints. Quadratic loss functions work fine on some models and do not provide good results on others. This represents the main problems of training a model. No general rules will help you. You have to use your neurons or write a program that modifies the model automatically.
9. The performance of a deep learning CNN does not a represent a real issue with modern CPUs and GPUs. (Yes | No)
The answer is yes and no. If the model runs quickly enough for your needs, then performance will not limit the outcome of your project. However, in many cases, it remains a problem. Reducing features to simply focus on the best ones is one of the reasons that the layers bring the size to analyze down, layer by layer.