Machine Learning - An Introduction

Note that this page is a work in progress. It may contain erroneous information.

What is learning machines?

Learning Machines is a resource for learning about and interacting with machine learning. Learning machines also happens to be developed using rust!

What is machine learning?

There are many different sub fields of machine learning but they all boil down to roughly the following: machine learning is about solving a problem without explicitly programming that solution.

Another way to think about this is that with machine learning we hope that by providing more experience to the computer program it will perform better at some task. In contrast to more standard techniques, where we as programmers must consider all possible inputs, machine learning is great for helping us solve problems where we couldn't possibly describe all the cases.

How do machines learn?

Hopefully machine learning sounds pretty exciting! However, we haven't really addressed how machines learn. Can we really trust our computer program to self-improve just by feeding it information?

There is a lot of theory behind machine learning that says: "Yes. Well... Kind of." We're not going to spend too much time discussing this theory but if you're interested there are some great resources online (Which we should include references too.).

With regards to our initial question - machines learn in a variety of ways. But all of them come back to this: data. In order for our program to learn from experience we must have a bank of experiences for them to access. This might be data retrieved by the program interacting with the real world or historic data gathered over the span of years and fed to the machine all at once.

With this website we'll explore what's going on under the hood in some common machine learning techniques. There will also be the opportunity to interact with some of these models to get a feel for how they behave.