Computer Vision technologies are becoming better and better at not just analyzing the visual environment, but also perceiving what they see just as humans do !
Amit More, our next pathbreaker, AI Researcher at Honda R&D Co. (Tokyo, Japan), works on development of AI systems for autonomous driving technologies.
Amit talks to Shyam Krishnamurthy from The Interview Portal about his PhD (IIT Bombay) on visual perception based on real camera images using computer vision and AI .
For students, we might not have much of a choice in what we do at the beginning of our career, but its never too late to discover your interests and pursue a field of your choice !
Amit, can you tell us about your background?
I grew up in Mumbai and studied in Marathi Medium School. I studied science till 12th and then finished my Engineering (graduation), Masters (Post-Graduation) and PhD after that. My parents had basic education. My father studied till 10th standard and my mom studied till 4th standard.
During school days, I did not have any extracurricular activities and I did not have any hobbies either. I was a very simple kid. I liked maths and science subjects, so I knew that I would study in the science stream when I would go to college.
What did you study?
I did my Engineering from Mumbai University in Electronics and Telecommunications Engineering. I did my Masters from IIT Kharagpur in Electronics. Finally, I did my PhD from IIT Bombay in Artificial Intelligence.
Tell us, how did you end up in such an offbeat, unconventional and unique career?
As a school kid, I was really fascinated with SciFi movies and documentaries on Discovery channels. I think that had the biggest impact on me and drove me to choose Science and Engineering as my career path.
During college days, some of the teachers were my mentors with whom I discussed future opportunities for my career. They suggested to me that higher education is very important and I followed their advice.
Tell us about your career path
I chose Engineering as my career option since I only knew this option. I studied Electronics and Tele-Communications engineering. Usually, many students get campus placements during the final year of college, but in my case, the final year of college (2008-2009) was an economic recession year. Hence very few companies came for campus recruitment and selected very few students. I should mention here that though I topped my college in all 4 years of engineering, I still did not manage to get a job offer from the campus recruitment process. What I really want to stress here is that sometimes students will face disappointments in life, but you must not lose hope and never stop working hard. You will be successful one day.
I searched for new job opportunities online as well as by getting information from other friends who were in the same situation as myself. Finally after a few months, I got a job in the Telecommunications industry in a company called, Reliance Communications Ltd. I was happy because this job was related to my engineering education. However, the salary was too low compared to the salaries offered in IT industries.
My Job at Reliance Communications was to identify problems in the mobile network provided by the network tower. Whenever the mobile network tower gets any problem, the server in the company office (server is really a big computer which monitors all the machines in the company and mobile towers) would send a message to our team and tell us that there is a problem in the tower. We would then log into the mobile tower computer using our office computer and check the problem. This is a very simplified description of my job.
While I worked at Reliance, I realised that my job was a little bit boring and I would be happier if I did some other job. So I decided to change my working area/field. During my engineering days itself, I had decided that I will pursue higher education. Many of my friends decided to do MBA. As I really liked technical subjects, I decided to do either an MTech or MS. Finally I decided to do MTech. I knew that my family could not afford to pay the high fees required for doing MS from the US, so I rejected this option. Further, doing MTech from an IIT was a really good option since MTech degree is highly valued in India.
I started preparation for the entrance exam for MTech admission. Everyday, I would study for the exam after returning home from the office. It was a very tough time for me as it is very difficult to study while working, especially when you need to travel 3-4 hours everyday.
I managed to get admission the next year itself in IIT Kharagpur for the MTech program in Visual Information Processing and Embedded Systems (VIPES) in the Electronics and Communications Engineering Department. Though I had the option to select Communication as my specialization for my MTech, I chose VIPES because I had already worked in the area of communications and I felt that it was a little bit boring. After my MTech, I got campus placement in a company called Intel Technology India Pvt. Ltd. Many of you already know about this company. Most of the computers and laptops have processors made by this company.
At Intel, my team worked on making a new processor for the next generation of laptops and computers. What we did was make a program that explains how the processor works. Then we would test this program to make sure that it works in the correct way. Sometimes there are errors/mistakes in the program. Sometimes the program is correct but when we test it, we find out that the processor would not work in the actual laptop due to some issues, in which case we need to change the processor design and rewrite a new program for this new processor. Me and my team worked on all these tasks at Intel.
Why did you decide to do a PhD after working for a few years?
While I was working at Intel, I really liked my job. During this time, a new field was emerging, the field of Artificial Intelligence (AI). I was fascinated by this research area. There were many interesting applications for AI, and I wished I could work in this area. Furthermore, during my MTech days, I felt that I should do a PhD. I now had two reasons to study further, and so I quit my job at Intel after 1.5 years and got admission at the Electrical Engineering Department at IIT Bombay. I selected the research area of Computer Vision and AI. It took me 5.5 years to finish my PhD.
My PhD research was focused on generating virtual camera images using already taken images. Consider this example for understanding this problem. Suppose you visit the Taj Mahal and take a couple of photos. After you have come home you realize that you wanted to take another photo of Taj Mahal but from another position or camera angle. As a human, you can imagine how this new photo would have looked like. My PhD work focused on generating such a new photo using photos which are already taken from different camera positions. Basically we give all the photos and a new camera position (the position from where we have not taken the photo, but wished we had) and the algorithm outputs the new photo.
This research problem has many applications in the area of Augmented/Virtual Reality, Animation, Gaming, etc.
Solving this problem requires understanding the 3D structure of the real world. For example, what is the distance of the Taj Mahal, trees, people and the ground, etc. from the camera. A particular tree in one image and the exact same tree in another image appear different but the AI system must understand that it is the same tree that looks different in two different photos, etc. This same kind of information analysis is required in many applications of AI, for example, autonomous driving.
How did you get your first break?
After BE, I could not get a campus placement. I searched for a job through online platforms and by getting information from friends and contacts.
After MTech, I got the placement from IIT Kharagpur campus.
The PhD program is a little different from other programs such as BTech or MTech. A student can finish his PhD anytime in the year. So when I finished my PhD degree, the placement season was already over at IIT Bombay. So I had to search for a job by myself. I collected contacts of major companies that came to IITB for placements from the BTech/MTech students who participated in placements. I also took reference from Professors, Senior PhD students and contacted a few companies using their references.
I started emailing my resume to these companies. Some of them replied and some did not.
I also contacted other companies which did not come for placements via contacts from friends and professors. Some companies agreed to take my interview.
Finally, after around 3-4 months, I had job offers from 2 companies, both of them working in the area of AI. (One offer was from a company which did not visit IITB for campus recruitment process and another was from Honda R&D Pvt Ltd which had come to IITB for campus placements earlier). I accepted the offer from Honda and came to Tokyo, Japan.
It was an international placement, but Honda had visited IITB before for placements and so getting a job at Honda was a bit easier.
I contacted them via email. Initially, they asked me to try in the next placement season, the next year. The Honda’s placement team visited campus after a few months and I contacted them one more time and simply asked to have a small talk, to know more about the company, the job profile and other things. They agreed to meet me and they liked my resume, and scheduled the interview spontaneously. At the end of the day, I was told that the placement team had decided to proceed with an HR round of interviews and after that I was given a job offer.
What were some of the challenges you faced? How did you address them?
There were two primary challenges that I want to discuss here.
Preparing for GATE (entrance exam for MTech):
When I started preparing for this exam, I was working at Reliance. The office was 2 hours away by bus from my house. So I would spend around 12 hours each day away from home. There was very little time for studies after I came back home. I reduced my sleeping time to 4 hours at home and slept on the bus while travelling. This way I was able to save some time at home which I used to study for the exam. Further, I used all my holidays just before the exam, so I had enough time to revise all the study material. I kept telling myself that this situation is just temporary and it is only a matter of a few months. This is how I kept motivating myself during this time.
Searching for a Job after PhD:
When I finished my PhD, the placement season was already over. So what I did was, collect the contact information from all the contacts that I had. I spoke to many BTech, MTech and PhD students who were either working in industry or had job offers. I did not hesitate to contact them. I asked them for reference or contact information of the HR department and sent my resumes to the companies.
Where do you work now and tell us about your current role?
Currently, I work at Honda R&D in Tokyo, Japan. Honda is an automobile company.
My Job at Honda R&D involves development of AI systems for autonomous driving technology.
All car manufacturing companies are conducting research in order to develop an Autonomous Driving System, i.e., an AI system that can drive like a human driver. The system has cameras which can see the road and surrounding environment, and computers (which run the AI software) which can understand the surrounding environment. This system can either drive the car by itself or if a human driver is driving the car then it can assist/help the driver.
What are the skills required for your role?
The work that I do involves programming (especially in Python), reading research papers, testing new ideas/algorithms/programs and debugging them to understand if an algorithm works, why it works or why it does not work.
What do you love about your work?
This field is new and there are many unsolved problems in this area. Working in this area is like solving puzzles. There is always something new that you can learn.
How does your work benefit society?
Many traffic accidents happen all over the world. Most of them are due to human errors. For example, the driver is not paying attention to the road, he is over-speeding and it goes out of control or simply put, the driver is not an expert in driving.
The driver assistance system can support drivers in such cases, for example, the system can apply a brake if it detects that a car is going to hit some object (another car or a person). Such a system can reduce the number of accidents and increase the safety of people on the road. A fully autonomous driving system can remove the need for human drivers completely which will reduce many accident cases resulting due to human errors.
Your advice to students?
My advice for the young students is that you should find a proper balance between your studies/job and other activities. You need to work hard but that does not always mean that you should give up all fun activities like having fun time with family and friends. Work hard but also enjoy life. Good balance between these two activities is really important if you want to succeed in life. This way you will not get bored with your studies and job.
Further, there will be moments in life when you will fail even if you worked really hard. I failed many times in my life. I did not get admission to the college that I wanted to during my MTech. I did not get the job that I wanted after my BE (in fact I did not get a job from campus at all even when I topped the college). This is a part of life, everybody fails at some point in their life. The point is that, don’t let these failures demotivate you or stop you from achieving your goals. Take some time to adjust to the situation and start again.