Branch of machine learning.
Deep Learning is a subset of Machine Learning, which is essentially a neural network with three or more layers. These neural networks attempt to simulate the behavior of the human brain—albeit far from matching its ability—in order to 'learn' from large amounts of data. While a neural network with a single layer can still make approximate predictions, additional hidden layers can help optimize the accuracy.
Machine Learning and Deep Learning are subsets of Artificial Intelligence that provide machines with the ability to learn and improve from experience. The key difference between the two lies in the way data is presented in the system. Machine Learning algorithms typically require structured data and the features need to be manually identified, whereas Deep Learning networks rely on layers of artificial neural networks and can learn and make intelligent decisions on their own.
Deep Learning algorithms are designed to learn by example, and Python provides a robust platform for the implementation of such algorithms. Python libraries like TensorFlow, Keras, and PyTorch offer modules for building and training neural networks. We'll focus on TensorFlow in this course, which is a powerful open-source library developed by Google Brain.
Overfitting and underfitting are common phenomena in machine learning and deep learning. Overfitting occurs when a model learns the detail and noise in the training data to the extent that it negatively impacts the performance of the model on new data. Underfitting refers to a model that can neither model the training data nor generalize to new data. An underfit machine learning model is not a suitable model and will be obvious as it will have poor performance on the training data.
Regularization is a technique used to prevent overfitting by adding an additional penalty to the loss function. The most common types of regularization techniques are L1 and L2 regularization. L1 regularization adds a penalty equal to the absolute value of the magnitude of coefficients. L2 regularization adds a penalty equal to the square of the magnitude of coefficients.
In conclusion, Deep Learning is a rapidly evolving field, with new techniques and applications being developed and published constantly. Python, with its robust libraries, provides an excellent platform for diving into Deep Learning, whether you're a novice or an experienced data scientist.