Skip to content

mehmet-engineer/Deep_Learning_with_Python

Repository files navigation

Deep Learning with Python

Deep learning is a newer approach to machine learning and has a different principle. Making sense of the data in machine learning is carried out by transferring the features from the data to the machine learning models after the developers themselves extract the features from the data. For this reason, the success of the model largely depends on the well-extracted features. With deep learning, a different approach has been brought to this situation. The most obvious difference of deep learning from machine learning is that the features are also learned by the model. In this way, complex data can be learned with deep learning models with high success and the data can be interpreted.

Deep learning emerged with the mathematical modeling and artificial imitation of nerve cells (neurons) as a result of examining human decision-making mechanisms based on cybernetics. The nervous structure of living things consists of hierarchically arranged neurons interacting with each other through electrical impulses. Each nerve cell processes the electrical data it receives from the previous neuron and transmits it to the other neuron to which it is connected. Body decisions are made as a result of processing the data. This theoretical knowledge has been found in deep learning models as artificial neural networks (Artificial Neural Networks). First of all, artificial neurons (perceptron) were created and then placed in the artificial neural network in layers. Thus, a deep machine learning model was realized.

The task of each artificial neuron is to produce an output by processing the data it receives as input according to the linear function f(x) = Wx+b. The task of the artificial neural network is to calculate the W weight and b bias parameters that the model will give the best output score. When neural networks only perform linear weighted sum (Wx+b), the outputs are limited. In order for the neural network to solve nonlinear real-life problems, it must have an activation function. The model performs the learning process by updating parameters such as the weight of the neurons it contains. Thus, deep neural networks can solve types of problems such as classification, estimation, sampling, pattern completion, object detection, sampling and generalization.

To talk about the widely used specialized deep neural networks;

  1. Convolutional Neural Networks CNN (Computer vision applications)
  2. Recursive Neural Networks RNN (Natural language processing, auto translate, voice assistants)
  3. Generative Contention Networks GAN (Synthetic image rendering)
  4. Capsule Networks