Deep Learning
34 posts
-
CUDAMatrix Multiplication in CUDA
Matrix multiplication is at the heart of deep learning. In this evolving world of LLMs, the need for fast and efficient matrix multiplications is paramount. Nvidia CUDA allows...
-
Computer VisionPyTorch Basic Tutorial
PyTorch libraries torchvision: for computer vision torchtext: for NLP torchaudio: for speech
-
Deep LearningIntroduction to Panoptic Segmentation: A Tutorial
In semantic segmentation, the goal is to classify each pixel into the given classes. In instance segmentation, we care about segmentation of the instances of objects separately. The...
-
Deep LearningEvaluation metrics for object detection and segmentation: mAP
Read about semantic segmentation, and instance segmentation.
-
Deep LearningQuick intro to Instance segmentation: Mask R-CNN
This is the third post in the Quick intro series: object detection (I), semantic segmentation (II).
-
Deep LearningQuick intro to semantic segmentation: FCN, U-Net and DeepLab
Suppose you’ve an image, consisting of cats. You want to classify every pixel of the image as cat or background. This process is called semantic segmentation.
-
Deep Learning
Converting FC layers to CONV layers
It is worth noting that the only difference between FC and CONV layers is that the neurons in the CONV layer are connected only to a local region...
-
Deep LearningData augmentation
-
Deep LearningGenerative Adversarial Networks variants: DCGAN, Pix2pix, CycleGAN
First, make sure you read the first part of this post, Generative models and Generative Adversarial Networks. This post is its continuation.
-
Deep Learning
Layer-specific learning rates
Note: This post answers the question I asked on Cross-Validated: What are the benefits of layer-specific learning rates?
-
Deep LearningQuick intro to Object detection: R-CNN, YOLO, and SSD
Object detection deals with the detection of object instances in an image. There are a number of methods to accomplish it. The following post summarizes few important object...
-
Deep LearningAttention
Attention is the technique through which the model focuses itself on a certain region of the image or on certain words in a sentence just like the same...
-
Deep LearningBackpropagation Through Time
In the earlier post The gradient problem in RNN, you came to know that RNNs have exploding and vanishing gradient problems. This post discusses how exactly the gradients...
-
Deep LearningAutoencoder: Downsampling and Upsampling
Note: Read the post on Autoencoder written by me at OpenGenus as a part of GSSoC.
-
Deep LearningWeight initialization in neural nets
In deep learning, the goal is to find the optimum weights of the model to get the desired output. In transfer learning, the network is initialized using the...
-
Deep LearningImage captioning using encoder-decoder
Note: This post discusses the project I’m doing currently. Check it on kHarshit/image-captioner. The working demo is available on https://imagecaptioner.herokuapp.com.
-
Deep LearningThe gradient problem in RNN
Much as Convolutional Neural Networks are used to deal with images, the Recurrent Neural Networks are used to process sequential data. The key idea in recurrent neural networks...
-
Deep LearningWhy Batch Normalization?
As mentioned in Scaling Vs Normalization, applying normalization to the input features increases the convergence rate of our algorithm i.e. it speeds up the learning process.
-
Deep LearningFilters in Convolutional Neural Networks
Note: This post is inspired by the answer I gave on stackoverflow.
-
Deep LearningLoss vs Accuracy
A loss function is used to optimize the model (e.g. a neural network) you’ve built to solve a problem.
-
Deep LearningGenerative models and Generative Adversarial Networks
In supervised learning, we have data x and response (label) y and the goal is to learn a function to map x to y e.g. regression, classification, object...
-
Deep LearningSkip connections and Residual blocks
Deep neural networks are difficult to train. They also have vanishing or exploding gradient problems. Batch normalization helps, but with the increase in depth, the network has trouble...
-
Data ScienceLoss functions
In machine learning, the difference between the predicted output and the actual output is used to tune the parameters of the algorithm. This error in prediction, so called...
-
Data ScienceOptimizers
Building neural networks, we compute gradients with the backpropagation algorithm. These gradients are used to perform the parameter updates. The default way of doing this is to update...
-
Deep Learning
Transfer learning: How to build accurate models
A good Covolutional Neural Network model requires a large dataset and good amount of training, which is often not possible in practice. Transfer learning provides a turn around...
-
Data ScienceMethods of Hyperparameter optimization
The parameters, called hyperparameters, that define the performance of the machine learning algorithm (model), depends on the problem we are trying to solve. Thus, they need to be...
-
Deep Learningword2vec: The foundation of NLP
Natural Language Processing deals with the task of making computer understand the human language. The computer understands only 0s and 1s. A language consists of words. So, the...
-
Data ScienceDropout: Prevent overfitting
Dropout is a regularization technique that prevents neural networks from overfitting. Regularization methods like L2 and L1 reduce overfitting by modifying the cost function. Dropout, on the other...
-
Data ScienceHow deep should neural nets be?
How do we decide on what architecture to use while solving a problem using neural networks? Should we use no hidden layers? One hidden layer? Two hidden layers?...
-
Data ScienceDon't use sigmoid: Neural Nets
In neural networks, activation functions are used to introduce non-linearity in the model. There are several activation functions to choose from. Traditionally, people have been using sigmoid as...
-
Deep LearningThe magic behind ConvNets
Ordinary neural networks consists of neurons that have learnable weights and biases. The input is a single vector (of features) that is transfomed through a number of hidden...
-
Data Science
Computational graphs: Backpropagation
Backpropagation is an efficient method of computing gradients in directed graphs of computations, such as neural networks. This is not a learning method, but rather a nice computational...
-
Data ScienceGradient descent: The core of neural networks
As discussed in the post linear algebra and deep learning, the optimization is the third and last step in solving image classification problem in deep learning. It helps...
-
Data ScienceLinear algebra: The essence behind deep learning
Mathematics lies behind every algorithm; if not mathematics then mathematical thinking. In case of deep learning algorithms, linear algebra is the driving force.