Deep learning is not a beginner-friendly subject, even for experienced software engineers and data scientists. If you’ve been Googling the subject and confused by the content you’ve come across, you’ll want to check out the recommended resources we’ve compiled for you.
These educational resources include online courses, in-person courses, as well as books and videos. All are completely free and designed by leading professors, researchers, and industry professionals like Geoffrey Hinton, Yoshua Bengio, and Sebastian Thrun.
Machine Learning
Deep learning techniques build off of and often combine with classic machine learning methodologies. If you don’t know the difference between supervised and unsupervised learning or think “gradient descent” is some kind of Photoshop tool, you’ll definitely need to take one of the courses below to get caught up.
1) Andrew Ng’s Machine Learning at Stanford University (ONLINE COURSE)
Before Andrew Ng became Chief Scientist at Baidu, he taught machine learning at Stanford and co-founded Coursera, the world’s first MOOC (massively open online course) platform. Ng’s gentle introduction to machine learning course is perfect for engineers who want a foundational overview of key concepts in the field.
To supplement the online course, you’ll want to check out the lecture notes, problem sets, and Matlab code samples under Ng’s formal Stanford’s CS 229 – Machine Learning course offered at the university.
August 2018 UPDATE: Ng just launched a new deep learning specialization, also on Coursera, consisting of 5 distinct courses.
2) Sebastian Thrun’s Introduction To Machine Learning (ONLINE COURSE)
Sebastian Thrun has a long history of innovating in A.I. and autonomous vehicle technology, first winning the DARPA Grand Challenge with Stanford’s Stanley team in 2005. He also directed Stanford’s artificial intelligence laboratory, started Google’s self-driving car division, and founded Udacity, another MOOC platform with excellent offerings in machine learning and artificial intelligence.
Thrun’s “Introduction To Machine Learning” course is a robust introduction to the subject with numerous programming exercises interspersed throughout the material to help cement each lesson. The MOOC is also the foundation for a Data Analyst “nanodegree” certification sponsored by Facebook and MondoDB.
Also offered on Udacity is Thrun’s “Introduction to Artificial Intelligence” which teaches the fundamentals of A.I. as well as applications such as robotics, computer vision, and natural language processing. This course leads into the Machine Learning Engineer nanodegree sponsored by Kaggle.
Deep Learning
Even though neural networks were invented in the 1960’s, deep learning only became viable and popular in recent years due to the explosion of big data and computational power. Once you’ve covered the basics of machine learning, you can start learning about this exciting new field in artificial intelligence.
1) Geoffrey Hinton’s Neural Networks For Machine Learning (ONLINE COURSE)
Widely credited as the “father of deep learning,” Geoffrey Hinton is a University of Toronto professor and Google Researcher. Hinton’s UT lab put “deep learning” into mainstream media in 2012 with their surprising win of a Merck drug discovery challenge despite no one on the team having any molecular biology expertise. Suddenly, the New York Times started featuring headlines like “Scientists See Promise In Deep Learning Programs.”
Alums of Hinton’s lab have continued his legacy. Yann LeCun, formerly a postdoctorate research associate in Hinton’s lab, is a leading innovator in convolutional neural nets and now directs Facebook’s AI Research. Ilya Sutskever went on to co-found and act as Research Director of OpenAI (backed by Elon Musk). Brendan Frey, inspired by a personal tragedy, went on to found Deep Genomics, a startup that applies deep learning to genomic medicine and therapy.
Keep in mind that Hinton’s course”Neural Networks For Machine Learning” course on Coursera is not beginner friendly. We recommend you start with the Practical Deep Learning MOOC by Jeremy Howard and Rachel Thomas if you’re skilled with code (see #2 below), and Andrew Ng’s course on machine learning (see #1 above) if you’re a non-engineer learning about AI.
2) Jeremy Howard’s Fast.ai & Data Institute Certificates (ONLINE & IN-PERSON COURSES)
Jeremy Howard was President & Chief Scientist of Kaggle before founding Enlitic, a company that applies deep learning to medical diagnoses and clinical decisions, and Fast.ai, an educational resource for deep learning engineers.
He also teaches in-person deep learning courses along with researcher Rachel Thomas at the University of San Francisco’s Data Institute. Deep Learning Part One covers the basics of Deep Learning, while Part Two covers advanced applications. The in-person certificate courses are not free, but all of the content is available on Fast.ai as MOOCs.
Howard and his teaching team work hard to curate diverse students because they’ve observed that the A.I. industry is severely lacking in women, people of color, LGBTQ, and other minority representation. Potential students who fall within these underrepresented groups are encouraged to apply for diversity fellowships in order to attend.
3) Deep Learning by Yoshua Bengio & Ian Goodfellow (BOOK)
Yoshua Bengio, professor at University of Montreal, is another leading figure driving forward the deep learning industry. His papers have been cited over 40,000 times on Google Scholar. His former student, Ian Goodfellow, is now a researcher at OpenAI and best known for inventing Generative Adversarial Networks.
Their book, Deep Learning, published by MIT Press, is freely available online and conveniently includes applied math refreshers on Linear Algebra, Probability Theory, and Numeric Computation prior to diving into core deep learning concepts. Bengio and Goodfellow’s book is quite detailed and mathematically-oriented, making it not as friendly for beginners as Nielsen’s book (see #4 below), but an excellent in-depth coverage for engineers with some experience in machine and deep learning.
4) Neural Networks & Deep Learning by Michael Nielsen (BOOK)
When we surveyed engineers on their favorite resources for deep learning, Michael Nielsen’s ever evolving book on “Neural Networks & Deep Learning” was recommended over and over again. Nielsen, a Research Fellow at YCombinator Research, prefers to explain core principles in intuitive and memorable ways rather than drown you in “a hazy understanding of a long laundry list of ideas.”
Nielsen’s book focuses on teaching you how to solve a concrete problem – teaching a computer to recognize handwritten digits – with neural networks. You start with a simple neural network and gradually improve upon your code as new concepts are introduced.
If you don’t have the strongest grasp of the prerequisite mathematics for deep learning or are not an experienced programmer, Nielsen’s book is especially beginner-friendly. The code for the course exercises are written in Python 2.7 and relatively easy to understand even if you don’t normally use the language.
5) Deep Learning With TensorFlow (ONLINE COURSE)
Once you’ve mastered the conceptual groundwork of deep learning and neural networks using any of the previous resources, you’ll want to master the tools to turn theory into practice. While numerous deep learning frameworks and libraries exist, TensorFlow by Google has quickly become one of the most popular and best supported.
Udacity’s Deep Learning by Google online course is taught by Vincent Vanhoucke, a Principal Scientist at Google, and technical lead in the Google Brain team. The course assumes intermediate to advanced grasp of machine and deep learning concepts and extends your knowledge to training logistical classifiers, simple deep networks, and convolutional and recurrent neural networks with TensorFlow.
TensorFlow’s website also offers beginner and advanced tutorials and strong community support. Videos from their most recent developer summit are available here and describe a slew of new features.
6) Oxford Deep NLP Course (VIDEOS & LECTURES)
For those of you with an interest in natural language processing and understanding, Oxford recently published course videos and lectures from their “Deep Natural Language Processing” course taught by DeepMind experts like Phil Blunsom and Chris Dyer. This advanced and applied course covers NLP topics like analyzing latent dimensions in text, speech-to-text transcription, machine translation, and Q&A systems.
7) Stanford University CS224N: Natural Language Processing With Deep Learning (VIDEOS & LECTURES)
Christopher Manning, founder of Stanford’s NLP group and manager of Stanford’s CoreNLP library, co-teaches this “Natural Language Processing With Deep Learning” with Richard Socher, co-founder of Metamind and Chief Scientist at Salesforce Einstein. Techniques covered include word vectors, feed-forward models, recurrent neural networks, recursive neural networks, convolutional neural networks, and memory networks applied to NLP tasks such as question and answering and machine translation.
8) David Silver’s Reinforcement Learning Course (VIDEOS)
David Silver leads the reinforcement learning group at Google’s DeepMind. While newer reinforcement learning courses have appeared since Silver taught his “Reinforcement Learning” lecture series at University College London in 2015, this well-paced course offers an excellent introduction to the topic and is widely recommended by engineers and students. Supporting lecture notes and assignments can be found on the course website. Silver even includes all past exams and their answers.
9) NIPS Conference Video Archive (VIDEO)
Advanced practitioners of deep learning flock to the increasingly more popular NIPS (Neural Information Processing Systems) conference every year to hear the top researchers present their breakthrough papers and discoveries.
If you’ve missed the conference in the past or simply can’t make the event in person, check out the NIPS video archives from 2015 and 2016.
10) Scientific Papers
New papers are published every day in the artificial intelligence and deep learning space. Google Scholar, ArXiv, and Research Gate are great repositories to start with, but many more collections exist.
If you’re wondering which papers to start with, here is a starting list of foundational research papers to read. Once you start reading papers, Andrej Karpathy created a useful tool aptly named ArXiv Sanity which will recommend related work.
To be alerted to new papers, you can subscribe to the RSS feeds of these two ArVix sections: computer learning and machine learning. The most popular articles also tend to bubble up on Reddit Machine Learning or Hacker News.
If you own an Amazon Echo and want to geek out hands-free, you can use ArXivML, an Alexa Skill that will read recent abstracts for you.
Artificial Intelligence Talent Is In High Demand
With the best minds in artificial intelligence freely offering a wide range of educational resources, everyone interested in deep learning should be able to find content that suits their learning style and level.
Beginners can start with Andrew Ng’s online course and Michael Nielsen’s accessible book, while advanced engineers can dive right into Geoffrey Hinton’s classic Neural Networks course, start learning Tensorflow, and stay updated with the latest scientific research.
Did we miss any deep learning education resources from industry leaders? Please let us know in the comments below.
Carl dea says
Jeff Heaton is also a really great resource.
michael says
Udemy offers a couple of hands on courses. I am taking the A-Z for ML atm. I think they might be good to take too because they are very practical and show implementation in R and Python. They don’t teach much though but focus on implementation.
Christopher says
The Coursera class with Andrew Ng looks like a great resource.
You could also check out DZone’s new AI Zone. Lots of chatbots and Machine Learning at the moment, but I see a couple of articles in there on deep learning.
priya says
Java, Python, Lisp, Prolog, and C++ are major AI programming language used for artificial intelligence capable of satisfying different needs in development and designing of different software.
nisha says
It’s really a great and useful piece of information. I’m glad that you shared this helpful information with us.
Please stay us up to date like this. I just wanted to say good job. I will be sure to
bookmark your blog and may come back in the future. Thank you
Adrian Keister says
Do you have any ideas for free computing resources, particularly if wanting to go intermediate on Kaggle, say?
Robert says
It’s a fantastic and helpful piece of information. I appreciate you sharing this useful information with us.
Please keep us informed in this manner. I just wanted to compliment you on your work. I’ll be sure to bookmark your website and return in the future. Thank you very much.
Emma Henderson says
Class Size and Student-Teacher Ratio: Smaller class sizes generally allow for more individual attention and personalized instruction. Consider the student-teacher ratio and determine whether it aligns with your child’s learning needs.
Emma Desa says
Reputation and Reviews: Seek recommendations from other parents, research the school’s reputation, and read reviews or testimonials. This can provide valuable insights into the school’s strengths, weaknesses, and overall satisfaction of parents and students.
malcolm says
very interesting for me
Daisy Hartwell says
Thank you for this list! By the way, Coursera also has some great courses to offer.