Machine learning is the science of getting computers to act without being explicitly programmed.
Logistic Regression Artificial Neural Network Machine Learning (ML) Algorithms Machine Learning
Next cohort starts July 20. Accessible for free. Completion certificates are offered.
Affiliate disclosure: Please use the blue and green buttons to visit Coursera if you plan on enrolling in a course. Commissions Reddsera receives from using these links will keep this site online and ad-free. Reddsera will not receive commissions if you only use course links found in the below Reddit discussions.
CEO/Founder Landing AI; Co-founder, Coursera; Adjunct Professor, Stanford University; formerly Chief Scientist,Baidu and founding lead of Google Brain
Reddit Posts and Comments
13 posts • 1193 mentions • top 35 shown below
11739 points • SITNHarvard
We are PhD students from Harvard University here to answer questions about artificial intelligence and cognition. Ask us anything!
Thank you everyone for making this so exciting! I think we are going to call it a day here. Thanks again!!
Thanks everyone for the discussion! Keep the discussion going! We will try to respond to some more questions as they trickle in! A few resources for anyone interested.
Introduction to Programming with CodeAcademy.
More advanced [Python programming language] (https://www.edx.org/course/introduction-computer-science-mitx-6-00-1x-10) (one of the most popular coding languages).
Kaggle Competitions - Not sure where to start with data to predict? Would you like to compete with other on your machine learning chops? Kaggle is the place to go!
Machine Learning: A Probabilistic Perspective - One of the best textbooks on machine learning.
Sklearn - Really great machine learning algorithms that work right out of the box
Hello Redditors! We are Harvard PhD students studying artificial intelligence (AI) and cognition representing Science in the News (SITN), a Harvard Graduate Student organization committed to scientific outreach. SITN posts articles on their blog, hosts seminars, creates podcasts, and meet and greets with scientists and the public.
Things we are interested in:
AI in general: In what ways does artificial intelligence relate to human cognition? What are the future applications of AI in our daily lives? How will AI change how we do science? What types of things can AI predict? Will AI ever outpace human intelligence?
Graduate school and science communication: As a science outreach organization, how can we effectively engage the public in science? What is graduate school like? What is graduate school culture like and how was the road to getting here?
Rockwell Anyoha is a graduate student in the department of molecular biology with a background in physics and genetics. He has published work on genetic regulation but is currently using machine learning to model animal behavior.
Dana Boebinger is a PhD candidate in the Harvard-MIT program in Speech and Hearing Bioscience and Technology. She uses fMRI to understand the neural mechanisms that underlie human perception of complex sounds, like speech and music. She is currently working with both Josh McDermott and Nancy Kanwisher in the Department of Brain and Cognitive Sciences at MIT.
Adam Riesselman is a PhD candidate in Debora Marks’ lab at Harvard Medical School. He is using machine learning to understand the effects of mutations by modeling genomes from plants, animals, and microbes from the wild.
Kevin Sitek is a PhD candidate in the Harvard Program in Speech and Hearing Bioscience and Technology working with Satra Ghosh and John Gabrieli. He’s interested in how the brain processes sounds, particularly the sound of our own voices while we're speaking. How do we use expectations about what our voice will sound like, as well as feedback of what our voice actually sounds like, to plan what to say next and how to say it?
We will be here from 1-3 pm EST to answer questions!
Proof 2: Us by the Harvard Mark I!
118 points • Lesabotsy
This is the only place to learn machine learning online ...
219 points • ziptofaf
First - I suggest you take a look at this book:
Reason - somehow I doubt you actually learnt how to code in Python, you probably only learnt syntax. So might as well look at this one and see if you can do things presented in it as it focuses on real-life tasks.
\> My ultimate goal with python is to either make a social media type app
Look into Flask or Django. You will find plenty of resources if you google for these.
\> or do something with AI
Coursera, Andrew Ng course: https://www.coursera.org/learn/machine-learning Be warned, you don't really use Python in there. It's a field of math after all, just wrapped with some programming.
51 points • FinxterCom
I would also recommend Andrew Ng's Coursera Course. He is the ML god.
93 points • StillNoNumb
45 points • lFailedTheTuringTest
Is that the Machine Learning course as in this one? PM me if you want to do it together. I am currently at week 5 and for now it is quite easy. Remember to study the vectorisation and linear algebra portions carefully as vectorising the exercises halves the lines of code.
36 points • Rachenlol
You mostly need to take specialized classes during your Masters and get into the research at the University level, or finish the Masters and look for a job specifically in that area. AI is a growing field of study, but it's not so big that every company needs it or wants to pay inexperienced people to work on it.
It doesn't take much to get started in this area of study. I recommend the free online class taught by Andrew Ng at Standford.
36 points • sshumiye
Nice Introductory Course on Machine Learning on Coursera
In case anyone is interested, here is a course on Machine Learning on Coursera (without the certificate option, it is free).
34 points • theoneneophyte
Andrew Ng's ML course is absolute gold! https://www.coursera.org/learn/machine-learning
28 points • conancat
For machine learning there are plenty of free online courses to get into the field, one that I've completed and is immensely useful for me was this Coursera course by Stanford University professor Andrew Ng, pretty much every single ML/Big Data professionals I've met have completed this course. It doesn't presume any knowledge in computer science or anything, if you can do high school algebra you can do this course, and it's free!
Once you've completed the course you can then pick a field for your specialization, but must importantly if you want to work in the field you need to demonstrate that you have the skills for it. The industry doesn't look at your degree, they look at your Github or Gitlab for your hard skills, and LinkedIn for your soft skills.
If you're completely new to the field, completing the course should give you an idea what to expect and how to proceed to the next steps. If you dedicate all your time to it and if you have no full time job at the moment, you should be able to get from "unhireable" to "intern/junior" in two months.
I know Taiwan there are courses that help people to change careers in 6 months, and I've seen them gone from knowing nothing about the field to jumping to mid level devs -- I know, I hired some of them.
Tech industry is all about your skills, not your papers. The world is always hiring, but most importantly is dedicating the time to learn those skills needed!
28 points • Vilkaz
Do you guys remember Number "J" ?
Day 9 made it, Number J is Offizial part of Maschine Learning :D
SKIP to 3:03
275 points • klovinup
How we trained Dota 2 chat simulator: why he is so rude and fun
Hi! Yesterday we toured the chains from ROFLAN - Dota 2 chat simulator.
In this article, we will explain how we trained him, why he is so funny and rude.
ROFLAN's chat examples:
How the Roflan works?
We trained so called Recurrent Neural Network on chats taken from 1 million Dota 2 replays. This kind of neural network is used as a language model in machine translation and automatic question answering. Roughly speaking, the input neurons (called “encoders”) eats your sentence word-by-word and build a 50-dimensional numerical vector that represent what you said on network’s strange language. After that, output neurons (called “decoders”) generates the answer word-by-word utilizing mathematical transformations of your question vector.
The Roflan neural network was trained for several hours on single GPU — Nvidia GTX 1080Ti (yes, GPUs are not only useful to accelerate your games). The training process modifies neuron’s behavior step-by-step enforcing them to generate answers similar to real player’s messages.
Why the answers are so strange?
First of all, when you read the chat, you can see a lot of strange in communication between players. Players send different kind of messages to each other, so there's nothing strange about this. There's a principle of "Garbage in, garbage out!'' in computer science, which can be reformulated as ''LoL-RoFl in, RoFl-LoL out'' by Roflan-bot.
Another reason is that the network doesn't take into account the significant part of the communication between the players occurring directly by actions on the map and also in the voice chat.
Why there are so many curse words and why it insults me?
Because this is how the players communicate in chat, ''language model'' doesn't understand what polite communication means and what is verbal abuse. It simply learns how to speak the language, which is spoken by people from the collection.
The neural network isn't alive and doesn't work like a human brain; It doesn't have a purpose to offend, its purpose is — to show the text, that matches the grammar of the language spoken by the players, and the answer has to be combined with the question as good as possible.
Want to create AI
If you want to be a Machine Learning geek and you’re ready for some math, I recommend to look through fast.ai courses. There are lection about RNNs that covers the ideas behind Roflan bot. Also, the Andrew Ng course is a great starting point.
For all comers, we published anonymized chats used for training bot on Kaggle. Use it to make more ROFLs.
And don't forget enjoy ROFLAN
24 points • tomekanco
This is a free Coursera course (all content is available, including tests).
Starts from regression, to logistic regression to NN and further. You're forced to sumbit results in Octave/Matlab. You don't have to learn a lot of syntax, mainly matrix operations (which is a good exercise for vectorisation).
49 points • OneOverNever
Grupo de estudio de Machine Learning. Actividad colaborativa y gratuita!
Estimado Foro, si tienen:
1) Buen nivel de ingles (vamos a seguir material en ingles).
2) Conocimiento básico de algebra, cálculo diferencial y estadística.
Estoy por arrancar desde cero los cursos de Fast. El curso de FAST tiene dos modulos, el primero de Machine Learning y el segundo de Deep Learning.
Como background, trabajo de Data Scientist y ya pase por el curso de Machine Learning de Andrew Young (el de Stanford/Coursera) hace casi un año y me gustaría retomar desde cero el tema.
Lo ideal es poder armar un grupo simpático con el que podamos competir en Kaggle eventualmente.
La frequencia que se busca es de 1 a 2 veces por semana, la segunda sería relativa al tiempo que dispongamos.
La ubicación sería en CABA, pero se puede ver de trabajar con distintas regiones de Argentina con reuniones por skype... Eso se ve.
PD - No hay necesidad de dinero. Solo una (buena) compu y tal vez unos mangos para el café si nos sentamos en algún bar.
Edit - Recién voy a estar en una compu para leer el thread de nuevo a la noche (por si no respondo).
23 points • TO_DA_MOON
Let's start a Coursera ML group!
Stanford Machine Learning Course is starting this week and I think it would be cool to start a little community of people to help each other out on the course so that way we can ask questions and get quick responses if we're stuck, or to come up with cool ways to apply the stuff we learn.
I've just completed the first week, and this stuff seems super interesting, and I'd love to find a bunch of likeminded people to take it with!
22 points • marcjschmidt
Basic: Machine learning, Natural Language Processing, Voice Recognition, Speech Synthesization. Hard: Common Sense, Self Analysis, Performance.
Start the journey by playing around with Python and Keras. Do https://www.coursera.org/learn/machine-learning, implement all the concepts of Basic. If you did that with good understanding, come back to me in 2 years.
272 points • serimachi
Programming advice for CS majors
This week, a classmate approached my friend and I to ask for advice in becoming a better programmer. We're all CS students, but my classmate, despite being a genius, claimed not to feel confident in his programming ability. I was flattered and wrote him this lengthy email. I figured others might like to read it, and would be open to any feedback or additional advice.
Hi! Let's just launch right in.
What's more important is deciding what you want to do. Python is a great general-purpose language, and you can do anything in it. However, more specialized languages exist out there--you're already familiar with Matlab, which is designed for scientists doing matrix shenanigans. (As evidenced by its 1-indexing, wtf.) If your desire is to program for the web, you can hack together a PHP script in a day. If your desire is to do nuts-and-bolts system programming--interacting with the hardware itself--then C and C++ are your game (which may be useful to learn anyway, as you need them for class.) C# (or something) is what they use in game dev. Java is your only realistic choice for Android apps; likewise for C# (I think?) and Swift for iOS. But Python is still amazing, and I recommend it unless you're really set on specializing.
[Codeacademy] has another course that might be more your style. But make sure you install Python on your home computer at some point; don't just do it through the web.
I'm pretty sure the way I started with Python was a textbook I bought in 11th grade. This was silly, and I retained nothing and built nothing (maybe a if-branching and while-loop text adventure game). What really got me started was Python the Hard Way, which you can zip through in approximately no time. (I see now that the author has published an expanded book version--that's not necessary to buy, the link I sent you is the perfect base for anything you want to do.
After that, like I said, it's a matter of specializing.
- Run through HTML (do not bother with the tables section--table-based layouts are not good practice, I get so annoyed by this!) / CSS / SQL on Codeacademy. Codeacademy will just barely give you enough knowledge to do anything; it is not a thorough course. However, you could spend a year mastering front-end web design or SQL. You'll want to come back at some point to get a better grounding in this stuff, but this is enough to get started.
- Run through this Flask tutorial.
But, learning web dev will make you useful at hackathons. A lot of jobs out there aren't much more than very simple web dev (or "CRUD: apps). Before long, you'll be able to throw together a blog in just a few hours. It's a really useful thing to learn.
You might consider ignoring everything I just said, and going through a full fledged online course. These exist en masse. This course teaches PHP and SQL--you could conceivably learn HTML and CSS and then hop right into this. There's this. I tried this, but it didn't stick. My first experience with web development, at twelve years old, was actually this. (But I'm not a childhood whiz kid or something; I forgot all of this and had to learn it again a couple years ago. And the website I built at twelve was just HTML/CSS with no backend; I just wanted a place to post my stories and articles.) Finding a university course lectured online might be more your style. I know, though, that I would get bored and never finish it. (When I do do courses, I tend to watch them at 1.5x speed, but I do pause to take very good notes and complete the exercises. I think most people fly through them without really absorbing the material like they would in an actual classroom, which is why they have no respectability whatsoever. That said, a lot of these courses on Coursera (and its ilk) says they should take a month or more to complete, and I like to blast through them over the course of a week or so depending on their difficulty.)
- You might be into game dev, in which case pygame would be fun to learn (and probably a lot quicker / less overwhelming than web dev.) I was never interested in game dev, but this is how I taught my little brother programming. (Who is waaaaaay smarter than me.)
- Web scraping is cool--building scripts that can scrape data off the web--and has been surprisingly useful. I've used it both in both of my jobs, and it impresses people. You'll need to know HTML, and it requires a knowledge of how whatever website you're building is structured (requiring research.) But I've built a few fun project that way, including one I'm particularly proud of that automated an assignment in a gen ed course. This tutorial looks fine. (I forget the one I used.)
- You can build bots that interact with Twitter, Reddit, and most social media sites, if you can think of something clever to do with that. You need nothing more than basic Python for that. You'll have to Google that; "How to build a Twitter bot with Python for beginners" or something. (I have built a twitter bot, but the library I used is no longer supported.)
- You are a math guy, so you might be interested in the course I'm in now. It's about parsing data and building attractive visualizations out of it using Python libraries. It requires nothing more than Python. (It later gets into machine learning. The usual recommendation for that (which I second) is Machine Learning with Andrew Ng, who is minorly famous, and that goes into the nitty-gritty more than other courses (but less than an actual university class). It uses Matlab, which you might prefer.)
These are just some ideas of directions to go in. By far, the best thing is to decide not on a technology you specifically want to learn for your resume or something, but on a project you want to build, and let your desire to complete that project drive you to learn. I keep a notepad on my computer of projects I want to work on. Keep an open mind and actually write down your ideas, and you'll have more than you could possibly ever act on. (Even if most of them are crazy or not terribly impressive. It's about learning, for us, at this point. We'll likely never have this much creative freedom in our careers.) Then, come to us or somebody relatively experienced for pointers, or look online for how you might get started.
There's something [Friend] and I have disagreeing approaches to. [Friend] is methodical, and like to understand things fully before applying them. He likes to work through courses and get his material in a structured way.
I'm the opposite. I get a creative itch to build something, and learn the bare minimum to build that thing. I learn on the fly, with a billion and a half reference pages usually open.
[Friend]'s way is probably better in some ways, because it doesn't leave one with with massive, fundamental knowledge gaps. I've built projects in languages and with frameworks I don't understand before, just by pattern-matching code, and A) it probably shows and B) I left without learning all that much. (Just recently, I've started a data analytics course in Python, and it kills me that there are libraries out there that would have been extremely useful and time-saving for projects I've worked on, had I researched them.)
Point is, take what I say with a gigantic grain of salt, and follow your own learning style. Do what actually works for you. By far, the biggest learning block most people have is not a lack of resources or a bad teacher, but a lack of motivation to learn. Do what it takes to stay motivated. Even if it's silly. Sometimes, I'll force myself to go to the library only by making a deal with myself to buy chocolate milk from the store along the way.
You'll also want to make sure you've got the general programming skills. This is not stuff you'll want to do right away, for the most part. (You may want to get the basics of Git down, so you can show off your projects and link to them on your resume--but just the basic three commands, not the complex stuff you'll need when you're working as a team. It will take an hour, tops.) You might want to work on applying Data Structures and Algorithms on Leetcode and with Project Euler problems. (Whenever I learn a new language nowadays, I do a few problems on Project Euler rather than running through an entire tutorial. I learned C that way before taking Low-Level, and it gave me an advantage in the class.) You'll want to work through the books Cracking the Coding Interview _and _Clean Code. (The video series Clean Coders goes even more in-depth than the book and is a lot less boring--though it's really wacky in its presentation--I have the first 18 videos of the series if you like.) Plan stuff out, do some pair programming. You'll want to learn Test-Driven Development, SOLID principles, Git, how the Internet really works, etc. You'll want to install some version of Linux, probably Ubuntu, and really learn it, meaning the command-line and bash scripts. (I deleted Windows when I got my first laptop at 16 in order to eliminate the temptation of using it. I did learn Linux, but now I kind of forget how to use Windows.) A lot of people say to read code to learn other programming styles, and contribute to open-source projects. More generally--just stretch yourself a little, and occasionally do things the hard way just for the practice. (For example, it's sometimes okay to copy-paste code when you really want something done--you're essentially doing that every time you use a library--but you don't want to do that all the time.) This is the stuff that will make you a mature programmer. They're a bit boring (unless you're [Friend]), but it's like eating vegetables. You've just gotta do it.
Oh, and it's good to skulk reddit.com/r/cscareerquestions and reddit.com/r/learnprogramming. Probably some others I'm forgetting about. Read the sidebars, sort by top. Read the comments. Take everything you read with a pinch of salt, but try to find the good advice. (And don't get addicted.) This will give you a link into the hacker culture/community, will help you pick up a lot of general knowledge and will inspire a lot of thought/introspection in a way that's hard to define, but is definitely useful. You can do this at any point; there's no particular reason to wait.
It's a lot of work. More work than anyone sees. I spend, on average, about and hour and a half a night on courses or projects on top of my schoolwork, and more since [Friend] and I started on a project that has a large learning curve. Once you get in the habit, and you have something to be focused on, it's not a terrible pace. (It's pretty great that now I am functionally paid to learn for my work. And it's not to hard to build projects based around what you're doing in class--the machine learning course I completed, for example, has gotten me to brush up on linear algebra that has come in useful during our Math Concepts II class.) However, there's no need to go that hard unless you come to really love it, or unless you're aiming for a Big 4 (Google, Facebook, Microsoft, Amazon) sort of position (which you would be well-suited for, with your math-y background.) (We really are in a good field; a lot of anthropology students would envy us only needing to work only a half hour a night to be a competitive graduate with good job prospects.) And while each project is going to be inevitably harder than it seems when you first were planning it out, eventually you'll find yourself doing things in hours that once took you days or weeks. You'll walk into job interviews and they'll comment on how relaxed and confident you seem. And then, at some point, you'll find yourself being the person people come to for advice, and you'll be writing them lengthy emails at one in the morning.
Let us know how we can help. And please come to the hackathon! (And for goodness sake, please force me to come to this stupid CS career stuff, I really should be going. But I'm not wearing a damn suit!)
Sincerely, [ /u/serimachi ]
19 points • FeebleOldMan
I think it's this one.
17 points • iceickle
Do this course: https://www.coursera.org/learn/machine-learning
122 points • MoistPurchase
Looking for feedback on my Action Plan for Learning Machine Learning
Hello everyone, I am currently building an app and I want to integrate a Recommender system inside the app, so I decided to learn Machine learning. I'm going to be pursuing the Machine Learning course offered by Andrew NG on course era, but before I start it, I wanted to make sure I had the foundation to properly understand the concepts of Machine Learning. So this is the plan I made:
1) Linear Algebra
2) MIT Calculus 1A: Differentiation
3) MIT Calculus 1B: Integration
4) MIT Calculus 1C: Coordinate Systems & Infinite Series
5) Imperial College London: Mathematics for Machine Learning: Multivariate Calculus
5) MIT Fundamentals of Statistics
6) Finally, Stanford Machine Learning by Andrew Ng
I'm a college dropout and I want to get into learning machine learning so that I could start using concepts such as Recommender System in the app I am building, and hopefully eventually work towards getting a job in Machine Learning.
68 points • Nottherealaron
Can we get a online course recommendation thread going?
Hi, since there are a lot of great free online courses, which in many cases are much better than what they teach at your university I thought it would be nice to get some recommendations.
So what online courses are you currently doing? Which are on your to do list? And which do you recommend?
I just started Algorithms Part 1 by Princeton University to prepare for the algorithms course I'm taking in fall.
I just finished part one of Object-Oriented programming with Java by University of Helsinki, good course, I would definitely recommend it if you're getting in to coding or are about to start your first year at uni.
I also just finished Elements of AI by University of Helsinki. It's a bit high level and I already knew a lot of what they talked about, but if you're not familiar with AI it could be a fun intro to Artificial Intelligence.
I haven't done this course yet, but a few friends have recommended and it's on my to do list.
57 points • LeVraiPetitRenard
What's a good pathway to developing data science skills?
My background is a B.S. in EE, and this fall I'll be re-starting a Masters in CogSci. I know basic Python, and I'm currently working through "Discovering Statistics with R" by Andy Field. I don't know SQL, and my LinAlg and Calc needs brushing up on.
Frankly, I'm lost in all the online resources. I've spent the better part of a day trying to compare courses like Udacity's Data Analyst Course and Coursera's Data Science Course keeping in mind other things people continue to mention like Peter Ng's Machine Learning Course and free resources like DataQuest. I can't figure out where my time would be best spent.
I realize for job searching the best thing to have is a portfolio of projects, but it'd be nice to have a structured approach for the moment. Any and all advice is appreciated. Thanks!
3319 points • ______DEADPOOL______
Here's a SANITIZED list of 530+ free online programming/CS courses (MOOCs) with feedback(i.e. exams/homeworks/assignments) that you can start this month (December 2016)
So, a submission on this sub to a huge list of MOOC courses caught my attention today as I've been trying to learn programming myself. So I look into the comments first to see what courses people were taking, when a comment caught my attention that says: "This is a great resouces but beware, OP ran some of the links through some pay site so that he profits out of traffic and hid this using bit.ly links...."
So I decided to investigate further, and sure enough. uBlock Origin blocked the first link that I clicked. It turns out, pretty much every link to the course on the post is a bit.ly link hiding a reference link to a spam site linksynergy.com. The url itself has reference id and everything. Full link:
I posted this in the comment and reported the post for spamming, thought nothing more of it, and move on. In my goofing off, I ended up installing NVIDIA CodeWorks, and the damn installer turned out to be a download manager for installer to a bunch of stuffs it needed to install. So, I let it run and while it downloads, I thought I'd fire up Overwatch and try to climb out of gold rank, when for some reason, I thought about the MOOC post again.
Hiding a reference link using bit.ly is not only spamming, but it's also unethical because bit.ly tracks where clicks come from and the whole practice preys on the innocent who just wanted to learn some programming stuffs.
So I decided to go through the links and sanitized the bit.ly and removed all the spam links and replace it with direct links to each of the course.
Over the course of cleaning up the links, I found that OP feed all their links through two spam sites that ublock origin blocked:
The first one is the linksynergy site as I've mentioned before.
The second one is through awin1.com
I hope this sort of shady spamming behavior is not tolerated in this sub, and doesn't happen again. But just in case another post comes up again next month, would someone be so kind as to make a bit.ly expander plugin for chrome or something to automate this cleanup without exposing the user's location, and clicking on the reference, etc. I didn't want to run this through python in case something bad happens and some dumb protocol got exposed or whatever.
Anyway, here's the full sanitized list. I've left the links bare so you can see this list has not been compromised. And if you'll excuse me, I'm going to run spybot on my system now.
Happy learning. GLHF.
Course Name|Start Date|Length in weeks|Rating :--|:--:|:--:|:--:|:--: NEW Combining and Analyzing Complex Data https://www.coursera.org/learn/data-collection-analytics-project via Coursera|1st Dec|NA|NA NEW Recommender Systems: Evaluation and Metrics https://www.coursera.org/learn/recommender-metrics via Coursera|1st Dec|NA|NA Genomic Data Science and Clustering Bioinformatics V https://www.coursera.org/learn/genomic-data via Coursera|1st Dec|2|3.5★ Regression Modeling in Practice https://www.coursera.org/learn/regression-modeling-practice via Coursera|2nd Dec|4|5★ Genome Sequencing Bioinformatics II https://www.coursera.org/learn/genome-sequencing via Coursera|5th Dec|4|5★ Big Data, Genes, and Medicine https://www.coursera.org/learn/data-genes-medicine via Coursera|5th Dec|NA|NA Probabilistic Graphical Models 1: Representation https://www.coursera.org/learn/probabilistic-graphical-models via Coursera|5th Dec|11|4.4★ Parallel programming https://www.coursera.org/learn/parprog1 via Coursera|5th Dec|NA|5★ Machine Learning With Big Data https://www.coursera.org/learn/big-data-machine-learning via Coursera|5th Dec|4|1.8★ Comparing Genes, Proteins, and Genomes Bioinformatics III https://www.coursera.org/learn/comparing-genomes via Coursera|5th Dec|5|5★ Relational Database Support for Data Warehouses https://www.coursera.org/learn/dwrelational via Coursera|5th Dec|5|2★ Machine Learning Foundations: A Case Study Approach https://www.coursera.org/learn/ml-foundations via Coursera|5th Dec|6|4.2★ Finding Mutations in DNA and Proteins Bioinformatics VI https://www.coursera.org/learn/dna-mutations via Coursera|5th Dec|5|NA Approximation Algorithms Part II https://www.coursera.org/learn/approximation-algorithms-part-2 via Coursera|5th Dec|4|NA Machine Learning: Regression https://www.coursera.org/learn/ml-regression via Coursera|5th Dec|6|4.7★ Finding Hidden Messages in DNA Bioinformatics I https://www.coursera.org/learn/dna-analysis via Coursera|5th Dec|4|4.5★ Machine Learning: Classification https://www.coursera.org/learn/ml-classification via Coursera|5th Dec|7|4.8★ Pattern Discovery in Data Mining https://www.coursera.org/learn/data-patterns via Coursera|5th Dec|4|2.2★ Graph Analytics for Big Data https://www.coursera.org/learn/big-data-graph-analytics via Coursera|5th Dec|4|2.4★ Machine Learning: Clustering & Retrieval https://www.coursera.org/learn/ml-clustering-and-retrieval via Coursera|5th Dec|NA|4.5★ Practical Predictive Analytics: Models and Methods https://www.coursera.org/learn/predictive-analytics via Coursera|5th Dec|4|2.5★ Developing Data Products https://www.coursera.org/learn/data-products via Coursera|5th Dec|4|3.9★ Cloud Computing Applications, Part 2: Big Data and Applications in the Cloud http://bit.ly/2gXcF52 via Coursera|5th Dec|NA|NA Introduction to Recommender Systems: Non-Personalized and Content-Based https://www.coursera.org/learn/recommender-systems-introduction via Coursera|5th Dec|NA|NA Hardware Security https://www.coursera.org/learn/hardware-security via Coursera|5th Dec|6|3★ Cluster Analysis in Data Mining https://www.coursera.org/learn/cluster-analysis via Coursera|12th Dec|4|2.6★ Basic Data Descriptors, Statistical Distributions, and Application to Business Decisions https://www.coursera.org/learn/descriptive-statistics-statistical-distributions-business-application via Coursera|12th Dec|NA|NA Text Mining and Analytics https://www.coursera.org/learn/text-mining via Coursera|12th Dec|4|3.7★ Nearest Neighbor Collaborative Filtering https://www.coursera.org/learn/collaborative-filtering via Coursera|12th Dec|NA|NA Machine Learning for Data Analysis https://www.coursera.org/learn/machine-learning-data-analysis via Coursera|12th Dec|4|3★ Probabilistic Graphical Models 2: Inference https://www.coursera.org/learn/probabilistic-graphical-models-2-inference via Coursera|19th Dec|NA|NA Computational Neuroscience https://www.coursera.org/learn/computational-neuroscience via Coursera|19th Dec|8|3.8★ Algorithms for DNA Sequencing https://www.coursera.org/learn/dna-sequencing via Coursera|19th Dec|4|4.5★ Bioconductor for Genomic Data Science https://www.coursera.org/learn/bioconductor via Coursera|19th Dec|4|3.3★ System Validation 2: Model process behaviour https://www.coursera.org/learn/system-validation-behavior via Coursera|19th Dec|NA|NA System Validation: Automata and behavioural equivalences https://www.coursera.org/learn/automata-system-validation via Coursera|26th Dec|NA|NA Advanced Linear Models for Data Science 1: Least Squares https://www.coursera.org/learn/linear-models via Coursera|26th Dec|NA|NA Big Data Science with the BD2K-LINCS Data Coordination and Integration Center https://www.coursera.org/learn/bd2k-lincs via Coursera|26th Dec|7|4★ Neural Networks for Machine Learning https://www.coursera.org/learn/neural-networks via Coursera|26th Dec|8|4.5★ Hands-on Text Mining and Analytics https://www.coursera.org/learn/text-mining-analytics via Coursera|26th Dec|NA|NA Quantitative Formal Modeling and Worst-Case Performance Analysis https://www.coursera.org/learn/quantitative-formal-modeling-1 via Coursera|26th Dec|4|4★ Embedded Hardware and Operating Systems https://www.coursera.org/learn/embedded-operating-system via Coursera|26th Dec|NA|NA
13 points • ndha1995
I think you can already start with taking an online ML course in which the teacher explains the math (not too deep though) behind the methods. Andrew Ng's ML course is one such course. Students also get a chance implement ML algorithms, not by calling from a library but by writing from scratch.
I think you have a real shot if you apply to a data engineer / data analyst position, prove yourself for a period of time and then ask to transition to a data scientist / ML engineer position.
13 points • the_empty
[Discussion] Machine Learning course at Coursera
Hey guys, I am a software developer and I am interested in ML, what do you think about this course?
13 points • ThatGuyOverYonder
Anyone here enrolled in the Machine Learning course on Coursera?
It just started yesterday. Would be nice to have a local study group going. If you're interested in AI, Data and Machine Learning - you should join the class!
It's free, but if you want to get a certificate it will cost AED 300. It's taught by Andrew Ng, professor at Stanford and is widely considered one of the best courses on the topic.
EDIT: I've sent out messages to everyone who has expressed interest in joining the study group. If anyone else is interested then shoot me a DM or sound off below. Thanks
13 points • sjforman
Anyone interested in a study group for Andrew Ng's Machine Learning Coursera / Stanford class?
I'm going to try to make my way through the session that starts on Nov 30. Let me know if you want to join. I was thinking maybe like a weekly virtual meet-up to work on the problem sets. Something along those lines.
40 points • ssingal05
Python is a good place to start for data science and Machine Learning. Are you looking for advice on how to start?
Python - I would try to take some basic introductory classes, even free ones like codeacademy.org
Machine Learning - Are you into math at all? Are you curious about the fundamentals of machine learning? This is probably the most famous ML course, and I can attest it is phenomenal: https://www.coursera.org/learn/machine-learning (I think this is it....) They even go over neural nets. Downside is that it is in Matlab/Octave, so that is a new programming language.
Robots - You should look into Arduinos. Arduinos are microcontrollers and, in a nutshell, is a fantastic stepping stone into the world of robots. I'll have to defer for good sources for this, but you can Google around.
12 points • MrNaturalOrganic
Why don't you just try Professor Ng's course: https://www.coursera.org/learn/machine-learning
It is highly regarded in the community and free unless you want the certificate which I believe is $70 usd
112 points • aenimaxoxo
Introduction to Data Science
Data is the closest thing we have to a real world application of truth, and the world is a better place when decisions are made with care.
Now that you know why you should become a data scientist, here is a simple guide to becoming one.
Math: You can honestly get really far with little math. That being said, there are far too many people who don't understand the math and end up using analysis techniques with little forethought into why they should be using that model. I will say this much: The more math, the better off you are. It is a beautiful field and directly relevant to you if you want to make the most of your foray into data science.
Beginner: High school algebra, maybe some calculus 1, high school statistics
Intermediate: College stats, Calc 1,2,3, Probability Theory, linear algebra, Statistical Inference
Advanced: Upper undergrad / Grad level statistical inference, bayesian inference, harder probability theory, linear optimization, convex optimization, real analysis, calculus of variations. Math is the limiting factor, remove those obstacles. Learn all the advanced math you can muster.
Reccs: khanacademy if you've never seen the content. MIT OCW has really great self paced math courses for calc 1-3, linear algebra and much more. Eventually you will want to learn the art of grinding through math textbooks while doing problems. The only way to learn math is by doing math. Practice, practice, practice.
If you want to be a true OG, here is Michael I. Jordan's reading list for prospective grad students in ML:
Pick up a language and stick with it for now. It is far easier to pick up a second language once you are very good at one than it is to slowly work through being mediocre at a bunch of languages.
People live and die by their language of choice for some reason. Generally, my thoughts on this are the following:
R is fantastic. R is great for data analysis, and if you use the tidyverse, R is great for everything else too. R is an organically grown language that is not always lexically consistent, so it can be a bit quirky. Due to the community of statistics researchers that use R, generally you will find the most bleeding edge packages on R. R will make you think like a statistician.
Python is great for taking your data a bit farther. It has packages which provide most of the functionality you would need from R. Python is a great choice because it has many more varied packages and capabilities related to software development. Python is a broad, general purpose language that is beautifully designed and consistent. This will make you think more like a programmer.
Over a career, it is wise to know as many tools well as you can. Since you will spend a good amount of time writing code, you should strive to learn both at some point.
Alrighty, now onto the core stuff.
1. Get Data
This can be done by scraping, downloading a data set, building a data set, making a survey, whatever. There is a lot of data floating around and there are plenty of resources for learning how to scrape. Since data is usually stored in data bases in the real world, it is wise to learn a bit about data bases. Learn some SQL. Since we live in the age of big data, it would also be wise to learn non-relational database query languages like nosql and postgresql
Some good spots for data: /r/datasets, kaggle, data.gov
2. Clean it
Remember: garbage in, garbage out. The quality of the data is the foundation of all your work from here on out. Check out a book or a course that will take you from these early stages into actually playing with the data. For python, Harvard CS109 does this. It also have video lectures. For R, Hadley Wickham (Chief Scientist at RStudio) has a bunch of amazing books out. Check out R for Data Science . It wouldn't hurt to eventually read a book on data cleaning and data interpolation.
3. Take some time to familiarize yourself with your data
What kind of variables are there? Quantitative (numbers)? Categorical / Qualitative (Labels)? Text? Images? Geographical? The types of data present will determine what can be modeled.
Its a good idea to look at the data in list form and plot it out using R or python or excel or whatever. If using other types of data (eg images, geographical), then find the best ways to visualize the data. Now would be a good time to learn about knitr and rmarkdown if using R and jupyter notebooks if using python.
This is the time to do some descriptive statistics. Look at the way the data flows on the plots. What relationships do you think are there? Are there any outliers? Plot, plot, plot, and plot some more. Make the plots look good. Check out ggplot2 in R or matplotlib / seaborn in python.
Learn to dissect your data. Check out feature engineering. Learn to combine data sets to expand what can be done.
If you want to be a true OG, learn some graphic design principles. Learn to use blank space and color. There is nothing more influential than a beautiful graph.
Language Agnostic: The Visual Display of Quantitative Information
A book on seaborn / matplotlib if using python.
4. Figure out the questions you want to ask
This is perhaps the hardest part. The questions you ask will determine what you find in the data. When thinking about questions, ponder proactively about what techniques you would use to answer them. This is where a broad set of modeling tools comes handy. That will be gone over in the next section.
The most satisfying part in my opinion. When you wrote out your questions, hopefully you have some idea of what techniques you would use. That said, there are a lot of techniques to choose from and each technique has its own special niches. You will learn to select models properly from seeing a lot of data and practicing. Like everything else, practice, practice, practice. Try many models, run them on test sets using cross validation and see what works best. Learn about bias-variance trade-off.
Generally statistical analysis is broken into 2 parts:
In descriptive statistics we want to describe the patterns and structure of the data. If you did part 3 well, this will be partially taken care of. You can expand on this as the analysis comes along.
In inferential statistics we want to predict from the data. This is what we are at now.
Broadly speaking, this is the content that seems to be spread around the most. I will post some reccs to different courses / books that you will see floating around this subreddit (because they are great).
Make sure you learn and understand cross validation extremely well.
Make sure to understand the assumptions behind each modeling technique you use. There is no one size fits all technique.
Since this is such a broad topic, go learn data analysis from books and courses. Learn models, figure out why you would want to use them, and then apply them.
Once you have completed your modeling, make sure to create a visualization. If others will be seeing it, learn to explain things in simple terms as if non experts will see it. When you are being paid to be a data scientist, it is not about how intelligent you come across, it is about results and understanding for everyone.
More Stats focused:
More CS focused:
Harvard CS109 and R for Data Science linked in part 2.
Any other data analysis book you can find.
6. The Great Beyond
After step 5, you are essentially a (good) data analyst. What will differentiate you now will be the extras. Heres some other stuff that you should probably look into:
Databases: SQL / Nosql / any query language really.
Data Engineering: Create pipelines and automate a lot of the legwork to make raw data usable.
Shell: Linux is cool, and bash scripting is useful
Hadoop, Mapreduce, Spark, AWS, etc: Big Data
Deep Learning : See what the hype is all about
Time series analysis: Given the ubiquity of time series data, a book on TSA can't hurt
Computer Science: Learn CS rigorously. Check out Structure and Interpretation of Computer Programs, CLRS Algorithms, Concepts, Techniques and Models of Computer Programming, and more. If you learn the concepts underlying the technologies you see, you won't be outdated nearly as easily. Tools may change, but the concepts and math stay the same.
Learn to love practicing. This list is daunting, but it is completely achievable one small step at a time. Setting aside time to learn and practice daily will get you farther than you could ever imagine.
Guide to Learning
Like all other things in life, there are exciting things and less exciting things. What you find exciting is unique to you, but for the sake of this guide I will give how I would learn the content (assuming you know basic maths and programming):
- Learn some data analysis. If using python, think stats is nice. If using R, R for Data Science is nice
- Learn how to clean and dissect data. If you read one of the books in the bullet above, you will have learned this.
- Now learn some visualization. Make it pretty with a book on ggplot or seaborn/matplotlib
- Now learn some better tools for analysis: Read and work through Intro to Statistical Learning or Andrew Ng's Machine Learning course. Ideally you would do both.
- Learn database query languages. You will come across databases, so its best to be a wizard with them.
- Learn hadoop / map reduce / spark for big data
- Learn the theory on a deeper level. Probability Theory is great, Statistical Inference is great, Bayesian Inference and multilevel modeling is great.
- Never stop learning
Please let me know if there are errors, I wrote this quite late at night. Make sure to give your own reccs and advice in the comments! Data Science is a vast field that can be really intimidating to look into at first, and any input in the comments is helpful for me and others!
11 points • mfalcon
El primer curso que hice fue el famoso de Machine Learning por Andrew Ng https://www.coursera.org/learn/machine-learning
Uno de sus capítulos es de neural networks
10 points • MarvinLazer
I was thinking of the Udemy machine learning course, but that one doesn't appear to be free anymore. This Stanford one, though, seems to be free indefinitely. https://www.coursera.org/learn/machine-learning
62 points • techwizrd
You should check out the following courses from fast.ai. They teach them in a top-down approach (rather than bottom-up), don't have a math prerequisite, and they teach practical machine learning (not toy problems) that you could actually use at work.
The courses are structured into weekly 2 hour videos with Jupyter notebooks so that you can actually write code that runs on GPUs. You can work at your own pace and each course is about 7 weeks.
Right now, they've got a few courses.
- Deep Learning Part 1: Practical Deep Learning for Coders
- Deep Learning Part 2: Cutting Edge Deep Learning for Coders
- Computational Linear Algebra: Online textbook and Videos
If you're looking to learn about regular machine learning (not deep learning specifically) from a more theoretical, math-y POV, check out Andrew Ng's Intro to Machine Learning