I wrote an article recently about “How to become technical” and it made me think of two things: I have a few new things that I want to learn, and I enjoy watching people like Mike Boyd learning skills. So, in the spirit of practice what I preach, I am going to document learning “Machine Learning”.
Why Machine Learning? I am looking for something interesting to do, and think there is a lot of future in machine learning. Also, no-one seems to really understand just what the hell it is, and if you do – that is value. It started with a thread on a forum which had a list of “hard problems” going into the future, one of which was;
Can we make it easy to apply machine learning to all the complex problems we face?
Well I don’t know, can we? Can I?
Search: learning machine learning
And here we can see the perceived value – ads. Now, I don’t like ads; they are answers to questions you haven’t asked. I am sure as hell not interested in buying a computer to do machine learning, am not really interested in a page selling an e-book, and definitely don’t care in the slightest what IBM are doing. That leaves me with two links, machinelearningmastery.com and elitedatascience.com (beyond that was coursea, codeacademy, and a few others – we can come back to them).
Machine Learning Mastery
Site looks pretty ordinary, but that is probably good – if it looks this bad, the content must be amazing! Regardless, I can see a clear path, and I like the look of that.
Elite Data Science
Also looks pretty ordinary, that must be a theme – at least this one has a picture. Whatever, Elite Data Science is speaking to me a bit more as it follows with these three questions;
- Are you a self-starter?
- Are you tired of seeing expensive courses and bootcamps?
- Do you want a single page on the internet that will always be up-to-date?
So let’s do a quick comparison and work out where we are going to start. I am not locking myself in to never looking at the other one, but I am confident that I am going to start with one of these two, and push it as far as I can this week.
The outlines of both are different, MLM looks like this:
And EDS looks like this:
MLM looks to have a more flexible approach, EDS looks to have a more rigid but less “fluffy” approach (also, I like the writing style of EDS – starting lists at 0 is always a good sign).
So, without taking anything away from MLM, EDS is where I will be focusing at this stage. I have a bias to action: pick a direction, apply it, and don’t be afraid to change direction if you find out you were wrong.
First thing is first, I signed up for the EDS newsletter – it is, at this stage, my payment to them. They sent some pretty handy starter cheat sheets, so it worked out well for me.
Roadblock #1 – Pre-requisites.
After going through the background and fluff of what is machine learning and why the method EDS are suggesting is better, I hit a roadblock – probably a bad name for it but that is a problem for later.
The course recommends that you know three things before beginning: python, statistics, and math for data science. It also offers some handy links to similar guides that teach those things.
I guess I am learning Python now.
Now, I can’t code – I have dabbled with C# years ago, but it was nothing I was terribly interested in and I gave it away. I can code rudimentary HTML and smash my way though scripts, but that isn’t “real code” to me. So I am coming at this clean. As such I finally made a stackoverflow account, really though, this is just me procrastinating…
And the first roadblock has a roadblock of its own! “If you are completely new to programming, we recommend the excellent
Automate the Boring Stuff with Python book”. I am, so off we go in a new direction. It is at times like this where it is easy to get discouraged – I came here to learn machine learning and make a robot army or something, and I haven’t even been reading about that! I am hopeful that writing this down will serve as a reminder to myself, as well as a beneficial distraction.
Automate the Boring Stuff with Python has already got me excited, just in reading the preface. I HATE doing repetitive manual tasks in excel or windows explorer and yet continually find myself in that situation while manipulating data. There is a link with a video course, but I am going to try and avoid videos for now.
The name Python comes from the surreal British comedy group Monty Python, not from the snake. Python programmers are affectionately called Pythonistas, and both Monty Python and serpentine references usually pepper Python tutorials and documentation.
I’ve never been so sure that I am on the right path than I am right now.
I completed chapters 0-2, which were the Introduction, Basics, and Flow Control. I felt I knew a lot of the basics quite well, and the flow control was logical but there was a lot of information. It was definitely a lot to take in, so I am going to stop it there and see who I go when I next get some time. The next chapter should be much newer to me, this all felt rather familiar for reasons I don’t completely understand.
The book had some good little quizzes at the end of each chapter, and I did pretty well – far from perfect, but I can write out the basic examples it hopes for and be mostly right.
Day 0 done