Deep visualization to understand neural networks better

Over the past few years , research and innovation in the field of computer vision has been very promising. Ideas like face recognition, autonomous self driving cars, object recognition,speech recognition etc which was an imagination in the past has become a reality. Machines have reached a stage where they can actually see like a human. Thanks to the power of deep learning.


Deep learning is a branch of machine learning which involves developing algorithms to extract high level features also known as deep features and  use these features to make decision similar to a human brain. Deep learning algorithm constitutes many connected neural layers consisting of connected neurons to extract features and recognize patterns from input data.


An artificial neural network consists of many connected neurons which works slightly like nerve connection in the human brain. Neurons are the constitutive units in the neural network.Deep Neural Networks (aka DNN) is a collection of multiple neural networks with definite layers to process information given an input. A typical DNN looks like figure 1 below.


Figure 1


At Aindra we are always experimenting  to get inside this huge neural network, pull the features which the machine learns and a more practical understanding of DNN.


One of the ways of understanding DNN is to visualize each layer in the network. We opted to visualize the layers in a DNN by triggering the activation function in each layer. Each neuron in the network is defined with an activation function. An activation function defines the output given an input from the previous layer. By triggering the activation function, we get a tensor (n dimensional matrix array) which can be converted to an image to visualize.


To illustrate this method we conducted a small experiment where we developed a DNN and an image of  digit (4) was given as input to recognize among 0 to 9. The following visuals show the outputs from each layer.




From the above experiment we would like to show certain valuable outcomes :-


  1. The visuals clearly show that the features which the machine learns are very rich compared to any other traditional method of feature extraction. With deep learning, we need not have to specify the type of feature which should be extracted. Using the traditional method we have to choose a specific feature extraction technique like HOG etc which could be useful or it may not be useful. Using deep learning technique we only have to design the architecture of the network. The network itself picks up all features irrespective of any specification.


  1. Extensive research and development is not required to build any particular detector like object detector or face detector. The layers in the neural network are so huge that at some node the machine recognizes the specific region of interest and creates a detector. In the above example the machine built a digit recognition engine. Visualization helps us identify the particular layer where the machine picked the region of interest.

On the whole visualization techniques have helped us understand deep neural networks better and not treat a DNN as a “blackbox”. Understanding neural networks will help us build more better models by extracting deep features and break more barriers.


[1]Yosinski, Jason, et al. “Understanding neural networks through deep visualization.” arXiv preprint   arXiv:1506.06579 (2015).

Skill Sector innovation​s​ that promises to be a game changer​

When a biological feature of a user like Fingerprint, Face, Iris, etc is used to identify a user, it is known as biometric verification of the user. One of the important programs from the Indian Government where biometric verification is mandatory, is the Skill India program, where the Indian. Government provides monetary reward to every young person who successfully completes an approved skill training program with an affiliated training provider.


The objectives of a biometric verification and attendance solution is to eradicate the following challenges during the process of skill training:

  • Unauthorized beneficiaries: Unauthorized beneficiaries show-up during the training session against a registered Aadhaar ID which results in identity fraud
  • Ghost Beneficiaries:Mismatch in the number of beneficiaries actually present during the training session and numbers shown on attendance reports
  • Non availability of effective portable biometric devices:The existing finger-print solution requires a dedicated scanner and needs to be installed at a given location with provisions for power and electrical wiring.
  • Subsidy leakage:Padding up the number of trained beneficiaries submitted to government bodies not only defeats the overall purpose of skill training, but also leads to financial loss and corruption.
  • High drop-out rate of beneficiaries:Absence of centralized attendance tracking system does not allow the management to have a close check on the actual cause of the high dropout rate of beneficiaries from the classroom sessions.
  • Highinitial price and maintenance cost of existing Finger print hardware: Training sessions are conducted across the country in rural and semi-rural locations. Initial set up of existing fingerprint based hardware devices includes wiring, hardware install and internet setup. Considering the remote locations of most of the training centers, the setup becomes a tedious effort. This creates a lot of maintenance hassles later and long turnaround times, mostly due to time consumed in reaching to these far flung centers to deliver the support.

Aindra Labs has come up with biometric verification and attendance solutions that work even in an infrastructure deficient country like India. Our flagship products, based on our patent-pending Face-recognition engine, are called SmartVerify© and SmartAttendance© and work as user-friendly smartphone application for bio-metric verification of an user’s identity. SmartVerify© and SmartAttendance© work in tandem to help an organization, that is spread out across various branches in distant locations, to capture attendance for both in-the-office and on-the-field beneficiaries. The attendance information is geo-tagged with location and timestamp information, so that the organization can track the beneficiaries in a humanly auditable, smart fashion. SmartVerify© can verify the user’s identity from the facial photo captured in user’s Aadhaar card or a Passport size frontal face photo of the user. SmartAttendance© can produce central reports of periodic attendance for different frequencies like daily, weekly, monthly, etc. at the click of a button, along with other relevant information like location, duration, time-stamp, etc. while providing attendance, helping the management to track and manage the training beneficiaries closely.

A smartphone is usually the device of choice due to the ubiquitous-ness and low cost of the device. SmartVerify© and  SmartAttendance©  utilize user’s existing Smartphone. The face biometric solution from Aindra Labs is hardware-agnostic and also works with laptops, IP camera and even desktops with a webcam – essentially with any smart device that has a camera to take pictures. It is an innovation that promises to be a game-changer in the Skill India program of Indian Government and many other verticals where biometric verification of identity with location and time-stamp information of a mobile workforce is critical.

Based out of Bangalore, Aindra Labs creates Computer Vision and Machine Learning based products that address the problems of a huge magnitude in poor countries.

Our vision is to address problems of a huge magnitude with the aid of deep technology. We have been recognized as one of the top 10 Artificial Intelligence based start-ups in India.

Year 2015 For Face Recognition: 10 -Best Innovations & Implementations


Research in recent face recognition technologies seem to suggest that it is challenging to fake the identity of the person even after a facial surgery (though, we find that hard to believe) because they make use of something called as ‘nodes’ (around 600 nodes for every face) of the facial structure, which these techniques claim, remains unique to each person – dead or alive.

Face recognition has its distinct advantage of being non-contact in nature compared to the other well-known bio metrics. A distant webcam/ video recorder and off lately smart phones, are capturing details required for bio metric systems that use Face Recognition, without any extra effort required by the people whose biometrics are being captured. Coming to think of it, this is in itself is a revolution in terms of the technological advancements that have taken place to enable such a seamless biometric operation to take place.

We have seen that face recognition technology backed products are becoming part of the mainstream. Here are a few use cases of face recognition technology being used to impact societies across different geographies:

Tweet: World's Top 10 Usage of Face Recognition Technology #2015

      1. New York & New Jersey, USA: New York and New Jersey are the first states using facial recognition software to bust illegal drivers at the Department of Motor Vehicles (DMV). CBS 2’s Jessica Schneider says it’s the key technological tool now used by law enforcement. It has already helped authorities make 3,500 arrests of the illegal or dual motor license fraudsters.
      2. Bangalore, India: LabourNet Services has adopted SmartAttendance, “a mobile based face recognition solution” to make sure the expected beneficiaries are receiving educational and skill development services at right time and place. As a social enterprise they are able to
        • Control the drop out rates of the enrolled trainees
        • Ensure the presence of expected trainees at the training sessions
        • Automate the complete monitoring process
      3. Arizona,USA:  The number of potential ID fraud cases identified has increased by 860 percent, as reported by the Arizona Republic. The Arizona Department of Transportation (ADOT) has implemented a commercial-off-the-shelf (COTS) vendor-hosted facial recognition solution, to support the Motor Vehicle Division (MVD) credential-issuance process.  This will further enhance fraud and identity theft protection for the citizens of Arizona and over time, expedite the processing and cut the number of fraud investigation cases. The system cross-references new driver’s license pictures with the MVD’s database of existing drivers.
      4. USA: Apple and Facebook have already worked on a mechanism that auto shares the images their social circles based on face recognition
      5. Indonesia, US, Portugal, Africa, India : Using face recognition to identify faces of church visitors from CCTV footage or photos to match churchgoers used to check attendance numbers, and alert church officials if some members stop coming to services. Attendance of these events and services is a key indicator on how the church performs in terms of popularity and growth. It also allows the church to keep a close connection to its members. Most churches already keep track of members attendance manually. However, when it comes to big events it is nearly an impossible task to track members.  It can also screen for people banned from the church.
      6. USA: Customs and Border Protection Officers stationed at air ports of entry are using facial recognition technology as a tool to help them in determining whether an individual presenting themselves with a valid U.S. electronic passport is the same individual photographed in that passport. The U.S. Customs and Border Protection (CBP) is conducting 1:1 Facial Recognition to identify this.
      7. China: A team of university and technology company researchers in China introduced an ATM with built-in facial recognition technology to cut the risk of illegal withdrawals.  The new ATM, built by a team from Tsinghua University and Tzekwan Technology, which captured the facial images using the cameras equipped in the ATM and later compare them with ID photos for verification. The facial recognition measure will be an added layer of identification on top of the traditional password or PIN required to access funds with a card. The ATM will also be linked to banks and local police offices to further bolster security.
      8. India: A social enterprise delivering health services in remote places (rural and semi rural areas) has adopted a novel solution to make sure beneficiaries receive the services at the right place and time through the on-the-field employees. The SmartAttendance, a mobile based face recognition and tracking solution collects bio metric data tagged with GPS and time stamp to detect and identify beneficiaries at meeting venues. This  has enabled the organization to track, monitor and audit the data coming from all the on-site service locations across the country. Salary calculations, productivity analysis and auditing are made extremely simple through the use of visual dashboards.
      9. Europe: Government and law enforcement agencies took a huge technological leap by providing their agents with the ability to identify individuals using facial recognition in ‘near’ real-time. Agents can now transmit photos or videos captured on their smartphone through specific mobile application,which later gets processed by  the application provider on the cloud server using automated face detection and recognition technologies.
      10. Thailand: Using the face recognition ability to identify people from group images, Thailand Government is investigating a deadly bombing case on a famous shrine. Such automatic machines can detect up to 100 people within 5-6 seconds than making people sit and do the same job which would take all day.

While this is a small roundup of the Use-Cases where we see Face Recognition technology in use, we would love to hear from you if there have been some glaring omissions.

Tweet: World's Top 10 Usage of Face Recognition Technology #2015




How will India Train 40Cr People by 2022 under Skill Development Initiative?

aindra systems

In India, young people who will soon be entering the labor and manufacturing market, would constitute the largest segment of the demographic structure. In recent years India has rapidly expanded the capacity of educational institutions and enrolments but educational attainment remains low. While India has a well-institutionalized system of vocational training, it has not sufficiently prepared its youth with the skills that today’s industries require.

Thus, to speed its economic growth and take advantage of its “demographic dividend,” Prime Minister Narendra Modi has launched four initiatives as a part of which over 40 crore people will be trained in various skills by 2022. As much as it is important to drive such initiatives, we must accept that the on-going techniques and implementations could be treacherous to track outcome oriented initiatives.

Over all, here are some of the challenges pertaining in skill development initiatives:

  • Lack of common certification systems
  • Lack of awareness and mentoring process due to poor…

View original post 197 more words

How to begin your career in Computer Vision and Machine Learning Field?

This post is for Computer vision enthusiasts. We are highlighting the focal point of resources and computer vision tutorials for all CV aficionados and get themselves started in this emerging field. As a passionate beginner in the field of computer vision, we hope you find this useful.
Some prior knowledge about linear algebra, calculus, probability and statistics would definitely be a plus but its not always required. The most important thing is to get started and you can learn other essential things on the fly.
  • Computer Vision – Mubarak Shah (UCF) : All the materials related to the course are available online and what is more interesting is that even the video lectures are available.
  • Computer Vision – Subhransu Maji (UMass Amherst) : Provides access to all the lecture materials and assignments but there are no video lectures.
  • Visual Recognition – Kristen Grauman (UT Austin) : This Provides links to some of the interesting and fundamental papers in computer vision.
  • Language and Vision – Tamara Berg (UNC Chapel Hill) : This course is basically aimed towards exploring topics straddling the boundary between Natural Language Processing and Computer Vision.
  • Convolutional Neural Networks for Visual Recognition – Fei-Fei Li and Andrej Karpathy (Stanford University) : This course is a deep dive into details of the deep learning architectures with a focus on learning end-to-end models for computer vision tasks with a main focus on image classification.
Some additional resources:

Tweet: How to begin your career in Computer Vision and Machine Learning Field? #AI #career #technology #CV #MLBooks:

Computer Vision
In addition to this, it is very useful to be aware of most of the basic image processing techniques presented in this book Digital Image Processing – Gonzalez 2007
OpenCV Programming
Software Packages:
You can find an exhaustive list of links presenting code which implements some of the standard vision algorithms at
Major Conferences: 
Below are some of the major conferences listed in their ranking order.
Most of the papers published in the above mentioned conferences can be accessed at
Nice way to keep track of the conferences deadline is via
Now that you have acquired some knowledge of computer vision and Deep Learning (from the previous post), please feel free to compete in Kaggle competitions (best way to put your learning into practice).
If you would like to have any guidance/support in CV domain or have any additional resource information, we would love to hear it without judging you. You may drop your comments below.

Tweet: How to begin your career in Computer Vision and Machine Learning Field? #AI #career #technology #CV #ML

Mobile based Face Attendance & Monitoring System for Skill Development Institutions

This post is on a case study with a vocational training institution that has adopted our face based solution for effectively managing their processes and management. We felt putting this post out would help us articulate and communicate the value that such similar institutions can find in adopting robust systems to held as they scale their organizations. Such organizations are working to bring operational improvements and a structured approach to scaling up.

Opportunities and challenges related to skill development in India is humongous. Billions of aspiring and ambitious people are ready to work hard and push their limits. It becomes close to impossible to handle such variability.

Skill development programs are becoming imperative for our ambitious youth. It becomes all the more critical for a country that is emerging as an economic powerhouse. Today, skill development organizations are taking care of end to end processes starting from identifying and sourcing young employable people, identifying suitable courses, providing the best state of art trainings, and finding jobs and opportunities for the trainees and mobilizing them.

Improving the methodologies of training and bringing effectiveness in this complete training process is a continuous endeavor for these organizations. As a positive attempt to work in this direction, Aindra Systems in April 2015 has enabled one of the fastest growing skill development and training institutions, in deploying a breakthrough and innovative biometric technology to address their three persistent problems:

  • Controlling the drop out rates of the enrolled trainees
  • Ensuring presence of expected trainees at the training sessions
  • Automation of the complete monitoring process

Some of the challenges that the implementation faced, were:

  • Working with an unorganized sector, the solution has to be extremely simple to use
  • The solution should be able to work with little or no consistent power
  • It should work in remote areas without consistent Internet connectivity
  • It should not be dependent on expensive hardware and infrastructure maintenance
  • It has to be scalable in nature, to meet the demands of a growing organization
  • Change management within the users of the organization

Following are a few snapshots taken at actual location in one of the training centres in Hosur, Tamil Nadu.

Face based attendance- monitoring in action
Face based attendance- monitoring in action
Smart Phone Application Auto Captures the faces for biometric  attendance
Smart Phone Application Auto Captures the faces for biometric attendance

Tweet: Mobile based face attendance and monitoring system via @AIndraSystems

The mobile based face attendance solution is an application which is installed on the trainers mobile phones. Based on a patent pending product that uses Artificial Intelligence, the application has intelligence to automatically capture the trainees faces and later update their attendance on any cloud application, be it the NSDC, MIS or any other ERP system.

Deep Learning Online Courses, Reading Materials and Software Packages

Why do you want to learn Deep Learning?

Deep learning has been termed as one of the leading scientific breakthroughs in recent years, you can read an interesting article: MIT Technology Review. It has resulted in state of the art performance in a variety of areas, including computer vision, natural language processing, reinforcement learning, and speech recognition. It has attracted significant industrial investment with large groups at Google ( hired Geoff Hinton), Facebook ( hired Yann LeCun to head Facebook AI Lab), Baidu (hired Andrew Ng), IBM, Microsoft etc working on applications of deep learning. Most interestingly, we at Aindra are also making use of this cutting-edge technology to develop our products.


Do you want to learn about Deep Learning?

The best way is to take an online course. There are many online courses on Machine Learning but very few on Deep Learning. Here’s a list:

Deep Learning and Neural Networks: by Kevin Duh. It consists of only four lectures but provides an excellent foundational understanding at a level sufficient for anyone to start reading research papers in this exciting and growing area.

Neural Networks for Machine Learning:  You could listen to the lectures here from one of the legend Geoffrey Hinton from the University of Toronto. This course emphasizes both on basic algorithms and the practical tricks needed to get them to work well in applications like speech and object recognition, image segmentation, modeling language and human motion, etc.

Material for the Deep Learning course: Here is all the course related materials by the legend Yann Lecun, NYU. It also has pointers to some of the tutorials conducted at various conferences.

Convolutional Neural Networks for Visual Recognition: at Stanford University. Though, video lectures are not available online but you can still get access to an excellent course notes and assignments.

Deep Learning seminar course: by Lorenzo Torresani at Dartmouth University. This might not be an extensive list of papers related to deep learning but definitely mentions some of the important deep learning papers and its well categorised.

Neural networks class – Université de Sherbrooke: by Hugo Larochelle Provides an in-depth lecture videos along with the slides on Deep Learning topics starting from the very basics of Neural Network.


Apart from these online courses you could also find some interesting tutorial talks at various conferences/workshop, here is a partial list:

Deep Learning for Natural Language Processing: This was a tutorial at NAACL HLT 2013 presented by Richard Socher, Yoshua Bengio, and Christopher Manning.

Deep Learning of Representations-Google Techtalk: Hear it from Yoshua Bengio, University of Montreal, who has made significant contributions in the deep learning field.

Deep Learning methods for vision: This was one of the CVPR 2012 tutorial.

Software packages which support Deep Learning include

  • Caffe: Caffe is a deep learning framework made with expression, speed, and modularity in mind. It is developed by the Berkeley Vision and Learning Center (BVLC) and by community contributors.Yangqing Jia created the project during his PhD at UC Berkeley. Caffe is released under the BSD 2-Clause license.
  • Torch7: an extension of the LuaJIT language which includes an object-oriented package for deep learning and computer vision. It is easy to use and efficient, built using LuaJIT scripting language, and an underlying C/CUDA implementation.
  • Theano + Pylearn2: Pylearn2 is a python wrapper that lets you use Theano’s symbolic differentiation and other capabilities with minimal overhead.
  • cuda-convnet: High-performance C++/CUDA implementation of convolutional neural networks, based on Yann LeCun work written by Alex Krizhevsky.


For any further materials related to Deep Learning you can find them at

Please leave your comments or suggestions to include more sources related to deep learning (that we might have missed in this article).