Welcome to this free online class on machine learning. Machine learning is one
of the most exciting recent technologies. And in this class, you learn about the
state of the art and also gain practice implementing and deploying these algorithms
yourself. You've probably use a learning algorithm dozens of times a day without
knowing it. Every time you use a web search engine like Google or Bing to
search the internet, one of the reasons that works so well is because a learning
algorithm, one implemented by Google or Microsoft, has learned how to rank web
pages. Every time you use Facebook or Apple's photo typing application and it
recognizes your friends' photos, that's also machine learning. Every time you read
your email and your spam filter saves you from having to wade through tons of spam
email, that's also a learning algorithm. For me one of the reasons I'm excited is
the AI dream of someday building machines as intelligent as you or me. We're a long
way away from that goal, but many AI researchers believe that the best way to
towards that goal is through learning algorithms that try to mimic how the human
brain learns. I'll tell you a little bit about that too in this class. In this
class you learn about state-of-the-art machine learning algorithms. But it turns
out just knowing the algorithms and knowing the math isn't that much good if
you don't also know how to actually get this stuff to work on problems that you
care about. So, we've also spent a lot of time developing exercises for you to
implement each of these algorithms and see how they work fot yourself. So why is
machine learning so prevalent today? It turns out that machine learning is a
field that had grown out of the field of AI, or artificial intelligence. We wanted
to build intelligent machines and it turns out that there are a few basic things that
we could program a machine to do such as how to find the shortest path from A to B.
But for the most part we just did not know how to write AI programs to do the more
interesting things such as web search or photo tagging or email anti-spam. There
was a realization that the only way to do these things was to have a machine learn
to do it by itself. So, machine learning was developed as a new capability for
computers and today it touches many segments of industry and basic science.
For me, I work on machine learning and in a typical week I might end up talking to
helicopter pilots, biologists, a bunch of computer systems people (so my
colleagues here at Stanford) and averaging two or three times a week I get email from
people in industry from Silicon Valley contacting me who have an interest in
applying learning algorithms to their own problems. This is a sign of the range of
problems that machine learning touches. There is autonomous robotics, computational
biology, tons of things in Silicon Valley that machine learning is having an impact
on. Here are some other examples of machine learning. There's database mining.
One of the reasons machine learning has so pervaded is the growth of the web and the
growth of automation All this means that we have much larger data sets than ever
before. So, for example tons of Silicon Valley companies are today collecting web
click data, also called clickstream data, and are trying to use machine learning
algorithms to mine this data to understand the users better and to serve the users
better, that's a huge segment of Silicon Valley right now. Medical
records. With the advent of automation, we now have electronic medical records, so if
we can turn medical records into medical knowledge, then we can start to understand
disease better. Computational biology. With automation again, biologists are
collecting lots of data about gene sequences, DNA sequences, and so on, and
machines running algorithms are giving us a much better understanding of the human
genome, and what it means to be human. And in engineering as well, in all fields of
engineering, we have larger and larger, and larger and larger data sets, that
we're trying to understand using learning algorithms. A second range of machinery
applications is ones that we cannot program by hand. So for example, I've
worked on autonomous helicopters for many years. We just did not know how to write a
computer program to make this helicopter fly by itself. The only thing that worked
was having a computer learn by itself how to fly this helicopter. [Helicopter whirling]