Posts Tagged ‘mlforkids-tech’

I wrote a book

Sunday, January 24th, 2021

It’s called “Machine Learning for Kids: A Project-Based Introduction to Artificial Intelligence”.

It’s a hands-on, application-based introduction to machine learning and artificial intelligence that guides young readers through creating compelling AI-powered games and applications using the Scratch programming language.

Since starting the Machine Learning for Kids site, I’ve written project worksheets to inspire students and teachers what can be built using the tool. By making them freely available as Creative Commons-licensed MS Word docs, they’ve been a jumping off point to help teachers and code-club leaders to create their own lessons and activities.

As I’ve written the worksheets with schools and code clubs in mind, that introduced constraints.

Each worksheet is self-contained – many schools will only have time in their timetable/curriculum for one, or maybe two, AI projects, so a lot of the projects retread some of the same basics. None of them build on, or even refer to, any of the other worksheets. They also need to be short activities, so that they can be completed within a school lesson.

Writing a book version of Machine Learning for Kids was a chance to do something for a different audience: this time aimed at a child at home with their parents.

This means I didn’t have the same constraints as the worksheets on the site. It’s still based on explaining machine learning in a hands-on way through making projects in Scratch. But there’s a flow between the projects in the book. They’re in an intentional order, and there is a continuation between them. Each project builds upon the projects that came before it.

Some of the projects take a bit longer as they don’t need to be done in one sitting. I have more time and space to explain the ideas and to give the real-world context for each project. As each project doesn’t need to work as an introduction, it means the later chapters can get into more advanced topics that none of the project worksheets on the site go near, like accuracy, recall, and confidence matrices.

It’s been a lot of work. A lot more than I expected. Over two years of work. And not just by me: I had no idea how many people would be involved in making the book into a real thing. I’ve not really worked with editors before, and it has been a fascinating experience. They made my rambling gibbering so so much better that I’m almost embarrassed that only my name is on the cover. There’s no way the finished thing would be nearly as good without their work.

There were a few points where I wondered if it’d ever actually see the light of day – but it’s finally available. (Well, the e-book is available now, but the printed version is still a couple of weeks away).

I hope people find it useful! I am proud of it. I’m particularly proud of the Foreword, which I didn’t even write. It was very generously written by Grady Booch, and it’s the perfect inspirational start to what I wanted the book to be.

It’s very strange to see something I’ve written in online bookshops. It’s in Amazon, Waterstones, and WHSmith. That feels a bit weird. I hope that at some point I’ll get to see a printed copy in a real bookshop, but I suspect that won’t be any time soon!

Looking back at Machine Learning for Kids in 2020

Saturday, January 2nd, 2021

A review of what I did on Machine Learning for Kids in 2020.

Happy New Year!

At this time of year, it’s traditional to get a bit reflective, so I thought I’d look over the work I did on ML for Kids in 2020.
(more…)

Developer Guide: Machine Learning for Kids

Friday, November 27th, 2020

A run-through of the DEVELOPMENT.md guide.

In this video, I go from zero to a running Machine Learning for Kids website (including installing all the necessary dependencies and building the site from source).


youtu.be/Ss3e6yCWOhU

Running TensorFlow models in Scratch

Thursday, November 19th, 2020

I gave a short presentation today to explain how you can use TensorFlow machine learning models in the student block-based coding platform, Scratch.

This post has the recording of my presentation, and I’ve put some notes (all the stuff I meant to say but forgot!) and screenshots below.


recording at https://youtu.be/qHKwtefn21w

I demonstrated three things:

  1. Using your own TensorFlow models in Scratch
  2. Using pretrained models in Scratch
  3. Creating TensorFlow models in Teachable Machine and using them in Scratch

(more…)

Using TensorFlow.js for training image classifiers

Sunday, November 15th, 2020

Machine Learning for Kids lets students train their own machine learning models in a simplified child-friendly training tool. A variety of project types are supported (such as classifying text, images, numeric data, sound recordings, etc.). Under the covers, machine learning models they train are created and hosted using IBM Watson cloud services, such as Watson Assistant and Watson Visual Recognition

I’m currently investigating image projects being created and hosted in the browser, without using Watson cloud API calls.

(more…)

Explaining ML with neural networks

Tuesday, October 27th, 2020

I’m working on interactive visualisations for Machine Learning for Kids that explain more of the machine learning models that children create.

Machine Learning for Kids is a platform to teach children about artificial intelligence and machine learning, by giving them a simple tool for training machine learning models, and using that to make projects using tools like Scratch. I’ve described before how I’ve seen children learn a lot about machine learning principles by being able to play and experiment with it.

But I still want the site to do more to explain how the tech actually works. I’ve done this before for the decision tree classifiers that students train for numbers projects but with this new feature I’m trying to explain neural networks.

I’ve recorded a video run-through of what I’ve done so far. The screenshots below link to different sections of the video.

(more…)

Pretrained models in Machine Learning for Kids

Monday, May 25th, 2020

I’ve started adding pretrained machine learning models to Machine Learning for Kids. In this post, I wanted to describe what I’m doing.


(more…)

Using repl.it with Machine Learning for Kids

Sunday, May 10th, 2020

Students can work on machine learning projects in Python entirely in the browser, without any need for setup, installs, or registration.

(more…)