Deeplearning notes

Deeplearning toolkits

Search for: Deeplearning toolkits


PyTorch - Facebook
Tensorflow - Google
CNTK - MS

Playlist

Keras is a wrapper for other toolkits

In deep learning, a neuron is a unit of computation that receives input from data or from other neurons, processes this input using a set of weights and biases, and produces an output. Neurons are organized into layers in a deep learning model, with each layer representing a different level of abstraction or feature learning.

For example, in a convolutional neural network (CNN) for image classification, the input layer may contain neurons that receive pixel values from the input image, and subsequent layers may contain neurons that learn to recognize more complex features such as edges, shapes, and objects. The final layer of the network is typically a fully connected layer that produces a set of output values representing the predicted class labels for the input image.

Each neuron in a deep learning model typically uses a nonlinear activation function to process its input and produce its output. This activation function allows the model to learn complex relationships between the input data and the desired output. Common activation functions include the sigmoid function, the rectified linear unit (ReLU) function, and the hyperbolic tangent (tanh) function.

Summary and concepts: Neuron Weights and Biases

Search for: Summary and concepts: Neuron Weights and Biases

1. It is a unit of learning based on multiple inputs and a corresponding output

2. It can also be in equivalence seen as a "curve fitting" module

3. Example, if you are given a scatter plot of (x,y), find a line that most fits that linear relationship

4. The resulting values of slope and intercept is what is learned from the given points

5. Of course the relationship can be nonlinear, or a step function, or a parabola or something of that nature

What are the good usecases for Neural Networks?

Search for: What are the good usecases for Neural Networks?

1. Image classification

2. language translation

3. time series forecasting

Types of neural networks

Search for: Types of neural networks

Convolutional neural networks:Search On Web

Recurrent Neural networks:Search On Web

Self-organizing maps:Search On Web


model = keras.Sequential([
    keras.layers.Dense(10, input_shape=(784,), activation='sigmoid')
])

model.compile(optimizer='adam',
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])

model.fit(X_train_flattened, y_train, epochs=5)

1. Create 10 neurons as the receiving layer

2. There are 784 inputs

3. The activation function in the output layer (of 10) is sigmoid)

Compile it then

1. An epochs is a try

2. So here 5 epochs means 5 tries

3. After each try adjust the internal params based on accuracy and retrain and remeasure accuracy

4. Continue till the end of all epochs.

how does a neuron adjust its weights for a new epoch?

Search for: how does a neuron adjust its weights for a new epoch?

What is a learning rate?

Search for: What is a learning rate?

Satya Komatineni How are the outputs of different neurons in the output layer aggregated?

Search for: Satya Komatineni How are the outputs of different neurons in the output layer aggregated?

What parameter to the network decides how the output layer can be aggregated?

Search for: What parameter to the network decides how the output layer can be aggregated?

Formulas for derivatives of widely used loss functions in neural network back propagation in a table?

Search for: Formulas for derivatives of widely used loss functions in neural network back propagation in a table?

">A reasonable good video on Chain rules to calculate loss derivative

Are there a drag and drop tool to train AI models?

Search for: Are there a drag and drop tool to train AI models?

Yes, there are several drag-and-drop tools that allow you to train artificial intelligence (AI) models without having to write any code. These tools typically have a graphical user interface (GUI) that allows you to build and train models by dragging and dropping pre-defined blocks or elements onto a canvas.

One example of a drag-and-drop tool for building and training AI models is Google's Cloud AutoML. Cloud AutoML is a suite of machine learning (ML) tools that allows you to train high-quality custom models with minimal effort. It includes a drag-and-drop interface for building and training models, as well as pre-trained models that you can use as a starting point.

Other examples of drag-and-drop tools for building and training AI models include IBM Watson Studio, DataRobot, and H2O.ai's Driverless AI. These tools also offer a range of pre-built ML models and allow you to build and train custom models without having to write any code.

It's worth noting that while these tools can be a useful way to get started with AI and ML, they may have some limitations in terms of the complexity and flexibility of the models that you can build. In some cases, you may need to write code to build and train more advanced models or to fine-tune the models that you build with the drag-and-drop interface.