Owlbot: Faith’s first chatbot (and barcamp)

November 13th, 2016

For her talk at Barcamp Southampton yesterday, Faith did a presentation on owls, together with a chatbot she trained to answer questions about owls.

I’ve brought Grace to a couple of barcamps with me before: Barcamp Berkshire and Barcamp Bournemouth. But this was Faith’s first time.

She decided that she wanted to do a talk on owls. That wasn’t a big surprise… she’s a little bit obsessed with owls.

Some of Faith's owls

Read the rest of this entry »

Machine learning “Top Trumps”

October 1st, 2016

A simple demonstration of machine learning to let a child train a computer to play Top Trumps

I’ve been talking for a while now about how we introduce the idea behind machine learning to school kids. I’ve given several talks about it but I’ve also tried out a couple of approaches to it.

Now I’m trying out another: training a machine learning bot how to play Top Trumps.

I’ve put a demo at toptrumps.eu-gb.mybluemix.net.

screenshot

What is this?

It’s basically Top Trumps: that card game I used to play as a kid where you choose one of the attributes on a card, and if it beats the other player you get their card. Except it’s online, and you’re playing against a computer.

But the computer hasn’t been given any strategies on how to play, and has to learn from the player.

Initially, it makes random choices, but it learns from playing against the player. The more turns it plays, the more training it gets, which it uses to make predictions of which choice would give it the best chance of winning. Read the rest of this entry »

A night at the museum

August 25th, 2016

I shared this at the time on twitter, and then went off on holiday. Now we’re back, I thought it’s worth sharing a little more.

I took Grace and Faith to the Natural History Museum in London, and we had a sleepover! It’s something they do for kids aged 7-11, called Dino Snores for Kids.

Read the rest of this entry »

Normalised Discounted Cumulative Gain

July 15th, 2016

A ramble about accuracy compared with NDCG scores for evaluating effectiveness of information retrieval. It’s an introduction, so if you already know what they are, you can skip this.

A couple of weeks ago, we released a new tool for training the IBM Watson Retrieve and Rank service (a search service that uses machine learning to train it how to sort search results into the best order).

This afternoon, I deployed a collection of small updates to the tool and thought I’d make a few notes about what’s changed.

Most of them are a bunch of incremental updates and minor bug fixes.

For example, support for a wider range of Bluemix environments, support for larger document cluster sizes, displaying the amount of disk space left in a cluster, and so on.

One update in particular I thought was more interesting, and worth explaining.

Read the rest of this entry »

IBM Watson Retrieve and Rank tool

June 30th, 2016

A few months ago, I mentioned that I was starting a new project. In this post, I’ll explain what we’ve been working on and what we’re trying to achieve with it.

The project was to build something new: a self-serve web-based tool to enable training the IBM Watson Retrieve and Rank service.

Earlier today, we released a first version of the tool. Now it’s finally out there, I can share what I’ve been working on!


My video walkthrough of the IBM Watson Retrieve and Rank tool

Read the rest of this entry »

Watson Rock, Paper, Scissors

June 26th, 2016

A simple hands-on activity to let kids train a machine learning classifier to be able to play Rock, Paper, Scissors.

Screen Shot 2016-06-26 at 13.59.20

I’ve written and spoken before that I think we should do more to introduce children to the idea of machine learning. And I’ve tried introducing my two kids to it, such as by making a Code Club-style game with them: we built a system to play Guess Who, that they trained both to understand what you say and to recognise the characteristics of faces from photos.

This weekend, we tried out another idea – Rock, Paper, Scissors from a web app, using the web cam to see your moves, and training a system to recognise your hand signs.

DSC06146

Read the rest of this entry »

An introduction to machine learning with Guess Who

February 18th, 2016

I tried introducing my two kids to machine learning by helping them make a game this week.

In this post, I’ll try and explain why, how we did it, and how it went. And if you make it all the way to an end, I’ve got some videos and a link to a demo to show you what we made.

Why

I think we need to introduce the basic concept of machine learning to children.

I think the current approach to introducing coding using things like Scratch aren’t enough. This isn’t to say Scratch isn’t great (I’ve been running a Code Club every week for the last couple of years, delivered almost entirely using Scratch, so I’d be the last person to say it isn’t a fantastic tool). It lets you snap together blocks representing actions to teach the programming mindset of getting a computer to do something by you breaking the task down into a series of steps.

I think we need to add to this with something that introduces the model of machine learning – getting a computer to do something by training it with examples of doing that task.

I’ve been saying this for a while – I gave a talk about it at an education conference last year, I’ve written about it here before, and it was the theme of a lecture I gave at a science society in London last month.

This week is half-term and I have the week off work, so I thought I’d finally spend a bit of time trying it out by experimenting on my own two daughters (Faith and Grace, who are aged 7 and 11).

In Code Club, I mostly try to introduce programming concepts by helping the kids to create games. Sticking with what seems to work, I’ve helped them to make a game by training an ML system how to play it.

Read the rest of this entry »

Don’t be like blonde Gwyneth 

December 2nd, 2015

Or a helpful pointer for developers contributing fixes and changes to an existing code base.

Do you remember that old Gwyneth Paltrow movie Sliding Doors? Imagine that she’d been a software developer who had been asked to fix a problem with an existing software project.

Next thing you know she’s running for the train, some kid gets in her way and she misses the train but also gets the train, one of her gets a dramatically convenient hair cut, and we’re left with two Gwyneths and two insights into how things could play out.

Read the rest of this entry »