[MUSIC]
We're not starting from scratch in this course, and
we're going to assume some background from all of us.
In fact, we're going to assume that you've taken the first two courses in
the specialization.
This is really fundamental.
From the first course,
you gained a wide view of what's possible to do with machine learning.
And if you already have that view, it's okay.
But this is something that's going to be very helpful, as well as
facilitating kind of your programming skills, manipulating data and all that.
We're also going to be taking the second course, where we cover issues like what's
a machine learning algorithm, gradient ascent, over-fitting, validation set and
cross-validation, bias-variance trade off, and regularization.
So we'll see if we remember those topics.
Go back and review if you don't.
If you haven't taken any of the courses but you know what the techniques are, feel
free to jump straight into this course but we'll assume them throughout the course.
Just like the other courses we'll assume some basic background so
you're going to take a few derivatives here and there.
You should know what a vector is because we're going to use those.
And we're going to use some basic functions,
including exponentiation and logarithm.
So if you need to take a little refresher on those basic functions,
this is a good time to do it.
This is a hands-on course, for every module you're going to do some programming
with real world data and get real world results.
So you should expect that, but
that doesn't mean that you're going to have to do some programming.
We've set up an infrastructure makes it easy for you to do it if you know Python.
If you don't know Python, you can catch up on python pretty quickly just like you did
in previous courses or you can implement in whatever language you want.
We don't assume that you use a particular language, but
it would be a lot easier if you use Python.
Unlike this first course in the specialization we'll use heavy use of
GraphLab Create.
Because use a good black box to get started.
In this course, we're going to not really heavily on GraphLab Create.
We do suggest that you use SFrames,
which is the data manipulation open source library that was created by Dato, or
you can use other libraries like pandas if you prefer in Python.
And there will be some assignments, where using the pre-implemented algorithm,
just try to understand how things behave before you implement them yourself.
For that, we do suggest you use GraphLab Create, but
you can use other libraries like scikit-learn.
It's up to you.
It will be easier if you use Python, and we will give you
some starter code and some other things, but you are welcome to use your own.
But the net result of this course
is all about you implementing your own machinery algorithms from scratch.
So that's what you should be prepared to do.
Now you will need a computer that has a little bit of power to it.
A laptop should be fine, 64-bit machine will make a big difference.
You're going to need access to the internet to download data sets and
everything else, and to watch these videos.
And you have to have the ability to install Python, maybe GraphLab Create if
you choose to use it, and store a few gigabytes of data on your machine.
Just like you did with previous courses.
We'll also provide some other resources for
those who don't have their own machines.
They can use machines on the web, and we'll talk about that too in our readings.
[MUSIC]