Deep Learning For Smart Cities

In recent years, technological advancements in hardware, software, and embedded systems are enabling billions of smart devices to be connected to the internet. This ecosystem is collectively referred to as Internet of Things. A lot of people are actively migrating to cities, which means the essential resources are going to get scarcer. Cities will have to manage … Continue reading Deep Learning For Smart Cities

Deep Learning For Sequential Data – Part V: Handling Long Term Temporal Dependencies

In the previous blog post, we learnt why we cannot use regular backpropagation to train a Recurrent Neural Network (RNN). We discussed how we can use backpropagation through time to train an RNN. The next step is to understand how exactly the RNN can be trained. Does the unrolling strategy work in practice? If we … Continue reading Deep Learning For Sequential Data – Part V: Handling Long Term Temporal Dependencies

Deep Learning For Sequential Data – Part IV: Training Recurrent Neural Networks

In the previous blog post, we learnt how Recurrent Neural Networks (RNNs) can be used to build deep learning models for sequential data. Building a deep learning model involves many steps, and the training process is an important step. We should be able to train a model in a robust way in order to use it for … Continue reading Deep Learning For Sequential Data – Part IV: Training Recurrent Neural Networks

Deep Learning For Sequential Data – Part III: What Are Recurrent Neural Networks

In the previous two blog posts, we discussed why Hidden Markov Models and Feedforward Neural Networks are restrictive. If we want to build a good sequential data model, we should give more freedom to our learning model to understand the underlying patterns. This is where Recurrent Neural Networks (RNNs) come into picture. One of the … Continue reading Deep Learning For Sequential Data – Part III: What Are Recurrent Neural Networks

Deep Learning For Sequential Data – Part I: Why Do We Need It

Most of the current research on deep learning is focused on images. Deep learning is being actively applied to many areas, but image recognition is definitely generating a lot of buzz. Deep neural networks are being used for image classification tasks and they are able to outperform all the other approaches by a big margin. … Continue reading Deep Learning For Sequential Data – Part I: Why Do We Need It

How To Extract Feature Vectors From Deep Neural Networks In Python Caffe

Convolutional Neural Networks are great at identifying all the information that makes an image distinct. When we train a deep neural network in Caffe to classify images, we specify a multilayered neural network with different types of layers like convolution, rectified linear unit, softmax loss, and so on. The last layer is the output layer … Continue reading How To Extract Feature Vectors From Deep Neural Networks In Python Caffe

How To Programmatically Create A Deep Neural Network In Python Caffe

When you are working with Caffe, you need to define your deep neural network architecture in a '.prototxt' file. These prototxt files usually consist of hundreds of lines, defining layers and corresponding parameters. Before you start training your neural network, you need to create these files and define your architecture. One way to do this … Continue reading How To Programmatically Create A Deep Neural Network In Python Caffe

What Is Local Response Normalization In Convolutional Neural Networks

Convolutional Neural Networks (CNNs) have been doing wonders in the field of image recognition in recent times. CNN is a type of deep neural network in which the layers are connected using spatially organized patterns. This is in line with how the human visual cortex processes image data. Researchers have been working on coming up … Continue reading What Is Local Response Normalization In Convolutional Neural Networks

Understanding Xavier Initialization In Deep Neural Networks

I recently stumbled upon an interesting piece of information when I was working on deep neural networks. I started thinking about initialization of network weights and the theory behind it. Does the image to the left make sense now? The guy in that picture is lifting "weights" and we are talking about network "weights". Anyway, when we implement … Continue reading Understanding Xavier Initialization In Deep Neural Networks

Deep Learning With Caffe In Python – Part IV: Classifying An Image

In the previous blog post, we learnt how to train a convolutional neural network (CNN). One of the most popular use cases for a CNN is to classify images. Once the CNN is trained, we need to know how to use it to classify an unknown image. The trained model files will be stored as "caffemodel" … Continue reading Deep Learning With Caffe In Python – Part IV: Classifying An Image