arduino / summer-of-code

Arduino @ Google Summer of Code
40 stars 51 forks source link

Writing Regression Example for Portenta | GSoC 2020 #35

Closed pra-dan closed 3 years ago

pra-dan commented 4 years ago

Hello everyone ! I am Prashant Dandriyal, a final year student of Bachelor of Technology in Electronics and Communication Engineering. My past experiences with Embedded systems has been an invigorating one. Beginning from simple Home Automation projects, which mainly used electro-mechanical components and (user-friendly 8 bit micro-controllers like) Arduino Uno, the journey turned towards more advanced 32 bit ones like the Texas Instruments' EK-TM4C123GXL - ARM TIVA Launchpad; an attempt for the Indian Innovation Challenge and Design Contest (IICDC 2018). This was the first half of the journey and it taught me a lot about microcontrollers, beginning from burning a bootloader into a ATmega328p to getting down to Embedded C. The best part began when I had begun learning Machine Learning under the hood of Embedded AI. This was the time when EdgeAI was not a thing. (or at least not a popular one). I began researching the possibilities of interfacing Neural Network and micro-controllers and learnt that it was then, all known as Embedded AI. Soon, I came across the tinyML community and have been into EdgeAI since then. I have been working on Neural Networks for the Arduino Boards for quite sometime now. I am proposing 2 ideas:

1) I would like to work on developing a library for the purpose of educating everyone (especially newcomers) to implement and run tiny yet efficient Machine learning models on the classic and new Portenta boards.

2) Porting TF Lite for the Portenta board for using TensorFlow Lite for the Portenta Boards (which is supported as per the official site).

Please help me with the question(s): My motive of contributing to this community can be achieved either way.

I would be indebted if the community could assist me in deciding my project. Thank you for reading the long issue.

pra-dan commented 4 years ago

As a conclusion of #24, I have gone through the guide and would like to clarify that the question 1 emphasizes on : applying for 2 ideas in a single proposal

pra-dan commented 4 years ago

Hey @alranel I wish to add ML examples to run regression on the Portenta board, alternatively, I would like to port the TensorFlow Lite for the Portenta board (which hasn't been done yet). Please link me to any mentor handling that or some related work. I am getting familiar with the porting process for some time.

alranel commented 4 years ago

@PrashantDandriyal developing examples about using Tensorflow Lite on Arduino boards (also the classic ones such as the Nano) could be an interesting project. Make sure you detail the example projects you would like to work in the proposal.

pra-dan commented 4 years ago

Thanks for replying @alranel. Please clarify some of my queries...

1) I do not have the nano board, so can Arduino provide it to me, if selected ?

2) Can the tensorflow Lite examples be developed for a single board (only the Portenta) or multiple (portenta + Nano)?

3) Is there any minimum number of examples i should go for ?

pra-dan commented 4 years ago

@alranel @masci Hello, I wanted to know if we will be told who the mentors will be for respective projects... I ask this because I am almost done with my proposal and I plan to get it reviewed by the mentors. If you could do so, I will be really thankful. Also, your review is highly anticipated. :)

pra-dan commented 4 years ago

@per1234 can you please provide some clarifications on my proposal and suggest edit. I will be thankful.

pra-dan commented 4 years ago

Here's my draft version https://github.com/PrashantDandriyal/arduino_GSoC2020