What is machine learning? In this video we will try to define what it is and also try
to give you a sense of when you want to use machine learning. Even among machine
learning practitioners there isn't a well accepted definition of what is and what
isn't machine learning. But let me show you a couple of examples of the ways that
people have tried to define it. Here's the definition of what is machine learning
does to Arthur Samuel. He defined machine learning as the field of study that gives
computers the ability to learn without being explicitly programmed. Samuel's claim to
fame was that back in the 1950's, he wrote a checkers playing program. And the
amazing thing about this checkers playing program, was that Arthur Samuel himself,
wasn't a very good checkers player. But what he did was, he had to program for it to play
10's of 1000's of games against itself. And by watching what sorts of board
positions tended to lead to wins, and what sort of board positions tended to lead to
losses. The checkers playing program learns over time what are good board
positions and what are bad board positions. And eventually learn to play
checkers better than Arthur Samuel himself was able to. This was a remarkable result.
Although Samuel himself turned out not to be a very good checkers player. But because the
computer has the patience to play tens of thousands of games itself. No
human, has the patience to play that many games. By doing this the computer was able
to get so much checkers-playing experience that it eventually became a
better checkers player than Arthur Samuel himself. This is somewhat informal
definition, and an older one. Here's a slightly more recent definition by Tom
Mitchell, who's a friend out of Carnegie Mellon. So Tom defines machine learning by
saying that, a well posed learning problem is defined as follows. He says, a computer
program is said to learn from experience E, with respect to some task T, and some
performance measure P, if its performance on T as measured by P improves
with experience E. I actually think he came up with this definition just to make it
rhyme. For the checkers playing example the experience e, will be the
experience of having the program play 10's of 1000's of games against itself. The
task t, will be the task of playing checkers. And the performance measure p,
will be the probability that it wins the next game of checkers against
some new opponent. Throughout these videos, besides me trying to teach you
stuff, I will occasionally ask you a question to make sure you understand the
content. Here's one, on top is a definition of machine learning by Tom
Mitchell. Let's say your email program watches which emails you do or do not flag
as spam. So in an email client like this you might click this spam button to report
some email as spam, but not other emails and. Based on which emails you mark as
spam, so your e-mail program learns better how to filter spam e-mail. What is the
task T in this setting? In a few seconds, the video will pause. And when it does so,
you can use your mouse to select one of these four radio buttons to let, to let me
know which of these four you think is the right answer to this question. That might
be a performance measure P. And so, our task performance on the task our system's
performance on the task T, on the performance measure P will improve after
the experience E. In this class I hope to teach you about various different types of
learning algorithms. There are several different types of learning algorithms.
The main two types are what we call supervised learning and unsupervised
learning. I'll define what these terms mean more in the next couple videos. But
it turns out that in supervised learning, the idea is that we're going to teach the
computer how to do something, whereas in unsupervised learning we're going let
it learn by itself. Don't worry if these two terms don't make sense yet, in the
next two videos I'm going to say exactly what these two types of learning are. You
will also hear other buzz terms such as reinforcement learning and recommender
systems. These are other types of machine learning algorithms that we'll talk about
later but the two most used types of learning algorithms are probably
supervised learning and unsupervised learning and I'll define them in the next
two videos and we'll spend most of this class talking about these two types of
learning algorithms. It turns out one of the other things we'll spend a lot of time
on in this class is practical advice for applying learning algorithms. This is
something that I feel pretty strongly about, and it's actually something that I
don't know of any other university teaches. Teaching about learning
algorithms is like giving you a set of tools, and equally important or more
important to giving you the tools is to teach you how to apply these tools. I like
to make an analogy to learning to become a carpenter. Imagine that someone is
teaching you how to be a carpenter and they say here's a hammer, here's a
screwdriver, here's a saw, good luck. Well, that's no good, right? You, you, you
have all these tools, but the more important thing, is to learn how to use
these tools properly. There's a huge difference between, between people that
know how to use these machines learning algorithms, versus people who don't know
how to use these tools well. Here in Silicon Valley where I live, when I go
visit different companies even at the top Silicon Valley companies very often I see
people are trying to apply machine learning algorithms to some problem and
sometimes they have been going at it for six months. But sometimes when I look at
what they're doing I, I, I say, you know, I could have told them like, gee, I could
have told you six months ago that you should be taking a learning algorithm and
applying it in like the slightly modified way and your chance of success would have
been much higher. So what we're going to do in this class is actually spend a lot
of time talking about how, if you actually tried to develop a machine learning
system, how to make those best practices type decisions about the way in which you
build your system so that when you're applying learning algorithm you're less
likely to end up one of those people who end up pursuing some path for six months
that, you know, someone else could have figured out it just wasn't gonna work at
all and it's just a waste of time for six months. So I'm actually going to spend a
lot of the time teaching you those sorts of best practices in machine learning and
AI and how to get this stuff to work and how we do it, how the best people do it in
Silicon Valley and around the world. I hope to make you one of the best people in
knowing how to design and build serious machine learning and AI systems. So,
that's machine learning and these are the main topics I hope to teach. In the next
video, I'm going to define what is supervised learning and after that, what
is unsupervised learning. And also, start to talk about when you would use each of them.