· Background information of the projects / tasks which you were involved in.
Upon our first day, We had much to learn about AI (Artificial Intelligence) and its applications and our first week was spent familiarising ourselves with the terms and concepts used in this computer science industry. Only after that we were able to apply these concepts in the learning tasks that we were given
Our first task was create a CNN (Convoluted Neural Network) model capable of classifying images in a dataset (CIFAR-10). We had to test several different CNN architectures in order to discover one that worked with high validation accuracy.
<<< Infomation on relevant key terms
Our second task was to use a pretrained CNN to identify faces in an image. This exposed us to simple coding and troubleshooting skills.
Our third task was to input our own images and train a CNN to identify specific faces and give a highly accurate guess.
Our fourth task included OCR ( Optical Character Recognition), this was the act of converting images of text into electronically identifiable text. We were given more autonomy with this task, as our mentor took a step back and allowed us to put into practice our coding skills and knowledge of this subject.
Finally, our project and fifth task, was to create our own AI from scratch. This included labelling approximately 2000 images, creating our own architecture, training said architecture and implementing this AI in application and collaboration with group SCEI002. The idea was to create a waste sorting robot. At this point, aside from some help with our mentor, this project was done with our own autonomy
Elaboration / record of the activities done
Our main project was the aforementioned fifth task. This was the activity that we spent most of our time at A*STAR on. This project would require the use of our coding skills and the concepts gained in the previous four tasks. Firstly, labelling the 2000 images. The task of labelling images included drawing a bounding box on the object in the image and assigning a class to it. (The images were sourced from an open source file on the internet). This was a rather menial task and would only require time on our part to hand label all the images but, with the help of SCEI002 we were able to finish this task in under 2 hours.
Secondly, we had to come up with an effective CNN model to train using said images. Using the website ENNUI by MIT we could design our own architecture quickly and export it to a python file and test it. This model was trained using Keras and Tensorflow. By changing the layout, the number of layers, the blocks used and the number of epochs, the highest validation accuracy that we achieved was 75%. This was not going to be nearly accurate enough as to function properly in the final prototype. With the guidance of our mentor, we were then exposed to existing architecture of models that existed in the keras library. After experimenting with these models we found a certain model that worked extremely well with our dataset and we used that in the final prototype. (The particular architecture was known as Xception). After training the model to be able to classify waste materials at high percentage (95%) we saved the model so as to be able to export it and run it on other computers. Now, our progress so far included training the model to identify the material of the object identified, usually trash. (Paper, Metal , Glass, Plastic and Generic trash). However, for the robot arm to pick the object up, the program should be able to identify the bounding box surrounding the object and output the centre of said bounding box. This was when we first encountered our first problem.
Our initial model was only able to predict the material present in the image and was not able to identify the object itself. In the end we decided to use an open source pretrained model to identify what and where the image is. YOLOv3 as made available by Darknet was the object detection model we chose to do this for us. The problem was to integrate both these models in single program such that this would work seamlessly. Only after endless troubleshooting, internet research and our mentors help were we able to modify the code to give our desired output.
· Elaboration / record of results / deliverables / impact of work done
In the end, our program was able to accurately identify the material, location and object in a given picture. This picture could be anything from a saved image or a frozen frame of a video in the webcam.
(above is a phone-camera image of what our desired output had looked like)
With this, group SCEI002 would be able to allow the robot arm to sort through trash in a picture and separate waster according to material, thus enabling more efficient recycling.
*However, because of issues with installing TensorFlow on windows computer, we were not able to run this program*
· 3 content knowledge / skills learnt
1. During the period of the attachment, I became increasing proficient at coding and troubleshooting my code. As coding is becoming evermore essential, I feel that it was beneficial to practice coding during the period of my attachment. Coding skills may also translate to increased computer literacy and in this age of everything cyber, being computer literate is important to protect oneself from cyber threats/scams.
2. I learnt about the essential concepts in Artificial Intelligence and their applications in our daily lives. As AI also becomes increasingly relevant, learning the basics will allow me to have a deeper understanding of the applications in our world. It has made me more aware of the current implications and possible future liabilities of the use of AI. This also has clarified certain misconceptions I had with AI and made me more curious and intrigued on this entire topic.
3. I have learnt that research is the task of expanding the human races’s perception of the world we live in. I also have learnt more about how research is conducted and process of which is conducted. As research is linearly combined, it is essential for companies like A*STAR to exist so as to facilitate the growth of mankind allows others to continue their research. Hence, I also have concluded that many useful inventions in the past are based on previous inventions and it is this cycle that allows invention.
· 2 interesting aspects of your learning
1. I found the process of coding and troubleshooting to achieve a final product very satisfactory. As coding is a rather precise and demanding language, to get the code to work perfectly, one must be able to have good knowledge of the language itself. Even then, mistakes are bound to happen, for example, indentation errors and value errors. Sometimes while the code may work perfectly, the computer itself might not be able to execute the code due to compatibility issues. After going through the trouble to go online to find better methods to do a task and computer issues fixes, finally be able to run the program and obtain the desired result is very satisfactory.
2. I experienced the basics of the process of doing research. From coming up with an initial idea, a hypothesis of how it would work, slowly creating an CNN architecture that would fit the dataset we made ourselves and finishing the product. I found the process of using other people’s research and methods as building blocks to build on my own project very engaging. This has given me a taste on how research is done in companies like A*STAR. I feel that in Singapore’s context, the economy will have to rely on focusing on research to look more vibrant and innovative to attract foreign investors. Hence, it is becoming increasingly relevant in today’s context.
· 1 takeaway for life
One thing that I have taken away from my time at the attachment is that if you enjoy what you do, work becomes easier more manageable. Looking at my mentor, I can see his passion towards his work. His dedication to learn and grow is something I have taken away in life. I aspire to be able to pursue my goals and be as passionate at the things I do. I have been inspired to do so through this attachment.
In addition, Prof. Luo Jian Xi came during the attachment to give a talk about creative AI and drawing inspiration from other sources. At his age, his thinking is far beyond his years and he is able to provide unique insights. This shows that perception of our surroundings is important and affects the way we think.
END