my-robotics-machine-learning-teaching-lightning-talk-pecha-kucha

version 0.1.3-15 updated June 28th, 2022

Fork this repo, fill in your markdown and <html> for the 15 slides (max 20 slides), record your presentation and save it as recorded-talk.m4a (or change the code to reflect the new name.)

Setup gitPages –> settings–>pages–>none to master–>save–> copy the link and replace below.

Demo website of this Github Markdown can be viewed at this GitPages site (replace this link with your Gitpages link) https://hpssjellis.github.io/my-robotics-machine-learning-teaching-lightning-talk-pecha-kucha/

This Github Repository https://github.com/hpssjellis/my-robotics-machine-learning-teaching-lightning-talk-pecha-kucha

Number of Slides: , Seconds per Slide:


1

Intro: Lightning Talks in Pecha Kucha Format

~15 slides, 20 seconds per slide works out to about 5 min per Presenter
Traditional Business/Education Format: Powerpoint, PDF (Issue for audience not able to click links)
But Coders use Github!
So I made a Github README.md file that works with Javascript for both audio and automatic scrolling
This Lightning Talk is a summary of what I am working on to simplify Machine Learning for any interested student and Educators.

image







2

Who:

I am Jeremy Ellis, Twitter @rocksetta
Jeremy Ellis Github Profile
Canadian High School Technology Teacher, with greater than 30 years experience teaching coding.
Presently teaching Animation, Coding, 3D Printing and Robotics with Machine Learning

I started my Data Science interests when I tried to understand patterns in music and developed a sing-able music notation and other stuff at rocksetta.com. This project is ongoing
In the early 1990’s I was designing fully connected Neural Networks using Quick Pascal. (Not that hard to program), but they never worked, they just kept oscillating between solutions. I did other things until Tensorflow was made public in 2015. I knew this was something that students would benefit from but had to wait until 2017 when deeplearnJS came out.










3

Topic:

I believe all educated people should have some form of hands on Robotics and Machine Learning Education. It doesn’t matter if the person is at University to become a Lawyer, Accountant, Scientist, Educator or any field. Machine Learning is here to stay, and will have an enormous effect, both good and bad, on all areas of society. Knowing how deep learning works might be the most important thing Educators teach.

Some ML Educational Issues:

Traditional Method is too difficult for the general population and gives no preparation for Embedded devices

Online Simplifications: (EdgeImpulse, CodeCraft-tinkergen, Scratch) (Motion, Sound, Vision:Classification and FOMO) Very simple for any age group of students with cell phones to quickly (under 40 minutes) understand how to create a dataset and train a Machine Learning model and test it’s effectiveness.

There is a huge gap between the Traditional and Online teaching methods.

Issues: The Online is simpler but advanced issues are: How to program the embedded device after analysis, how to use other sensors, and ability to do advanced model manipulation.





4

Keras, Tensorflow , PyTorch, Theano

The traditional way to teach Machine Learning and the subset Deep Learning is with these platforms. Mainly for students with some advanced Math skills. These platforms typically involve only the computer and not directly using sensors and/or sending output to actuators. Typically a known dataset is loaded and the Machine Learning model is manipulated to demonstrate understanding of the concept with the output generated for the computer screen.

Tensorflow

image

Note: https://gitpod.io/ can help enormously with teaching the above as most Github sites can be loaded into Gitpod (an online browser docker) and ran with only a few starting commands. With a github login you just need to add to the front of a github URL gitpod.io/# My Gitpod (old) examples are rocksetta-gitpod-links

image



















5

The $58.00 Arduino Tiny Machine Learning Kit

Very well supported by Harvard SEAS (School of Engineering and Applied Science) Education TinyMLEdu The Github at tinyMLx Github

Also by EdgeImpulse University Github of the course at courseware-embedded-machine-learning


Often a university can get a few free sets of the Arduino Tiny Machine Learning Kits or other hardware from either of these groups.
















6

Raspberry Pi 4B

All RPI’s and other single board computers such as the NVIDIA® Jetson Nano™ 2GB Developer Kit have the advantage of near full computer power with up to 40 pins for connectivity to sensors, actuators and built in Communication. Really the best situation, except for the larger amount of electricity used, hardware cost and larger size compared to other microcontrollers.

image

TinyML should be inexpensive

As Educators we purchase kits that allow students to experience many facets of Robotics and Embedded Machine Learning, however the big picture goal is for student’s to be able to design specific combinations of components that they have a Proof of Concept that the components can do the job. The individual components can be very cheap. The $111 Arduino PortentaH7 chip costs $10.00












7

My Maker100

For the $111 Arduino PortentaH7 with the $68 LoRa Vision Shield and/or $7 Seeedstudio XIAO Github of my course at https://github.com/hpssjellis/maker100

My main Robotics and Machine Learning course is called Maker 100 and is fully on Github, with plans to make all parts available for individual equipment purchase and a fully online component for technologically capable teenagers to complete before going to University.

I believe that Machine Learning needs to be taught within an understanding of Robotic sensors (flex, touch, light…), actuators (DC motors, stepper, servo, LED’s… ), communication (Ethernet, WiFI, BLE, LoRa) and PCB design ( best PCB video here). The Maker100 course quickly touches on all these areas and leaves more advanced topics to the as yet not developed Maker101 course.

image












8

Portenta Pro Community Solutions Arduino Library

Has over 100 examples to help MBED Arduino Coders get up and running fast.












9

TensorflowJS Can reach a large Web capable audience

In 2017 TensorflowJS was introduced originally as deeplearnJS, using TypeScript and some compiled Javascript. I spent a lot of time converting the @Google Brain code for Single page Vanilla Javascript that student’s could use without installing anything, beginner-tensorflowjs-examples-in-javascript In my opinion TensorflowJS is the best, most powerful platform to truly teach Machine Learning to the largest audience.

Note: I have converted TensorflowJS models to arduino here but it is a bit complex and size is always an issue, much easier to work with EdgeImpulse!







10

Vanilla Javascript Single Page TensorflowJS

A Working xOr example here that can be edited live and copied to your own website.





11

WebSerial Possible Teaching Potential

WebSerial is an interesting combination of microcontrollers with Javascript webpages such as TensorflowJS and working on Desktop or Android Cell Phone. See demo page here which has links to the Arduino files. Teaching power of TensorflowJS, cheap microcontroller to connect with Actuators (to do something), possibly connect with Sensors, but a cell phone has a lot of sensors built in. Interesting potential here for education with minimal cost. Any Grad students with a strong Javascript background interested in this?

Combining WebSerial with EdgerImpulse WASM (Web Assembly) would be very interesting. See my WASM examples here. Note: these WASM assignments are very easy to get students to make and test on their cell phones.


12

Maker101 Advanced ML

EdgeImpulse expert Keras Mode for Model Manipulation

**Expert mode on EdgeImpulse is a must-learn area for advanced use of Machine Learning Models. Hopefully future videos will be on my playlist here.**

After Classification Coding What I found really interesting this year with my GearBotsBC group was using EdgeImpulse models but then coding the results to drive a car. This model sensed the white line, but the processing of the information was very interesting to drive the car. This is on going.









13

Boards other than the $57.50 Arduino ML Kit and $111 PortentaH7 mentioned earlier)

  1. The $5.40 USD Seeeduino XIAO Only a limited number of pins, but works with my Arduino MBED code

  2. The $37 USD Seeeduino Wio Terminal
  3. The $115.00 USD NiclaVision could be very good for Color Vision, sound and accelerometer Machine Learning
  4. The $33.40 USD Nano 33 Ble Sense is very good for sound and accelerometer Machine Learning
  5. The $129 USD Sony Spresense Kit with Breakout Board and Camera and now works on the Arduino IDE. Absolutely nothing wrong with this board, I have just not yet got it doing Machine Learning on the Arduino IDE yet. Note: uses LED0, LED1, LED2, LED3 instead of LEDB, LEDG, LEDR
  6. The $25.50 USD Arduino Nano-RP2040-Connect Is very new but has lots of potential over the RPI Pico as it has WiFi and BLE onboard and the $4 USD RPI Pico Amazing board for the price.
  7. The $25.00 USD ArducamPico-4ML This board looks like it would be perfect for machine learning with a mini screen and camera but I have never got it properly working on the Arduino IDE.
  8. What boards will be available in 2023? Cheaper, faster, more efficient.





14

Voltera.io at School PCB design

Voltera.io is a possible educational solution, similar to a 3D printer, but for PCB’s. Takes a set size small board, drills holes, manual install copper vias, prints traces, print solder paste, manual place SMD’s (surface mount components), auto heat, long cool down. Uses very low temperature silver solder for through-hole-technology (THT) components.

I have asked my school to purchase a V-One, but the $6000 USD price tag might be too steep. Perhaps someone has a suggestion for how to get a grant to get one of these?

image

My animation/3D Printing students can do a lot of PCB design from this one 6 minute video here about EasyEDA and JLCPCB.

















15

Summary:

I am Jeremy Ellis, Twitter @rocksetta Canadian High School Technology Teacher.

Jeremy Ellis Github Profile

Lots of ways to teach Machine Learning and even more will be available in the future.

It is an exciting world with lots of changes due to Machine Learning, as Educators I feel we have a responsibilty to promote understanding of this new tool and not just Machine Learning but how it all fits together with Embedded Devices, Sensors, Actuators, Communication and PCB Design.







Top of page

Template for this from pecha-kucha-lightning-talks-template

### By Jeremy Ellis Twitter @Rocksetta Use at your own Risk!