How do I learn machine learning?
Obviously I think my Machine learning textbook is pretty good :) However, the current version is admittedly rather hard for beginners. I am actually in the process of writing the second edition, which will ramp up more slowly, making it more accessible to beginners. (I'm also adding new content on deep learning, reinforcement learning, etc.) But it will take me a while to finish (~2 years?).
In the meantime, there are many good books available. See eg this list:josephmisiti/awesome-machine-learning . One book which I think is particularly good for beginners is Introduction to Statistical Learning, by James, Witten, Hastie and Tibshirani. It has a few references to concepts from frequentist statistics, such as p-values (which you can safely ignore :), and doesn't cover topics such as deep learning or graphical models, but nevertheless it's a good place to start.
(Spanish version of this answer here)
I didn't do a PhD on machine learning (was mostly focused on Signal Processing and Software Engineering) so I get this question a lot. The typical person that asks me this question is a software engineer with a computer science background, so I will address it from that perspective. If you are a Math major, for example, my answer might be less useful.
Take an online course
The first thing I tell someone who wants to get into machine learning is to take Andrew Ng'sonline course. I think Ng's course is very much to-the-point and very well organized, so it is a great introduction for someone wanting to get into ML. I am surprised when people tell me the course is "too basic" or "too superficial". If they tell me that I ask them to explain the difference between Logistic Regression and Linear Kernel SVMs, PCA vs. Matrix Factorization, regularization, or gradient descent. I have interviewed candidates who claimed years of ML experience that did not know the answer to these questions. They are all clearly explained in Ng's course. There are many other other online courses you can take after this one (see My answer to What is the best MOOC to get started in Machine Learning?)but at this point you are mostly ready to go to the next step.
Implement an algorithm
My recommended next step is the following. Get a good ML book (my list below), read the first intro chapters, and then jump to whatever chapter includes an algorithm you are interested. Once you have found that algo, dive into it, understand all the details, and, especially, implement it. In the previous online course you would already have implemented some algorithms in Octave. But, here I am talking about implementing an algorithm from scratch in a "real" programming language. You can still start with an easy one such as L2-regularized Logistic Regression, or k-means, but you should also push yourself to implement more interesting ones such as LDA (Latent Dirichlet Allocation) or SVMs. You can use a reference implementation in one of the many existing libraries to make sure you are getting comparable results, but ideally you don't want to look at the code but actually force yourself to implement it directly from the mathematical formulation in the book.
Some book recommendations
So, what are some good books to do this? Many have been mentioned before. Some of my favorite (see my answer to What are the best books about machine learning? for more details):
- Kevin Murphy's Machine learning: a Probabilistic Perspective
- Hastie, Tibshirani, and Friedman's The Elements of Statistical Learning
- Bishop's Pattern Recognition and Machine Learning
- David Barber's Bayesian Reasoning and Machine Learning
- Larry Wasserman's All of Statistics: A Concise Course in Statistical Inference(more details on this book in my edit below)
You can also go directly to a research paper that introduces an algorithm or approach you are interested on and dive into it.
My main point is that machine learning is both about breadth as depth. You are expected to know the basics of the most important algorithms (see my answer to What are the top 10 data mining or machine learning algorithms?). On the other hand, you are also expected to understand low-level complicated details of algorithms and their implementation details. I think the approach I am describing addresses both these dimensions and I have seen it work.
Ready for a career in Machine Learning?
The next logic step some people ask about is whether they should now be ready to start a career in machine learning. That is, of course, a different question. Please refer to amy answer to How should one start a career in machine learning? for that.
Edit 08/26/2015
In response to some comments and questions, I feel that I should add another book recommendation. If you feel like you lack some background in Statistics, I would totally recommend:
- Larry Wasserman's All of Statistics: A Concise Course in Statistical Inference
This books covers all the topics in statistics that you need for understanding ML concepts. As a matter of fact, the book itself has a pretty good introduction to many of the typical ML approaches such as regression and classification.
Machine learning is playing an ever-larger role in many fields. From various disciplines in academic research to applied applications in industry. To become proficient at machine learning requires more than knowing R and Python packages or winning a few competitions. It means knowing how to map the algorithmic variety offered by machine learning to the real-world challenges that exist. Here are the 3 key areas I believe one should focus on to become good, or even great, at machine learning.
Concepts Stand the Test of Time
It is easy to get lost in all the languages and technologies that allow one to practice machine learning on real-world data. They allow us to execute our ideas and build our models. When integrated into real applications they engender software with the ability to learn and distill high-dimensional problems down to focused results. But languages and technology come and go. Knowing R or Python really well might amount to building a model faster or allow you to integrate it into software better, but it says nothing about your ability choose theright model, or build one that truly speaks to the challenge at hand. The art of being able to do machine learning well comes from seeing the core concepts inside the algorithms and how they overlap with the pain points trying to be addressed. Great practitioners start to see interesting overlaps before ever touching a keyboard.
Throughout your journey be sure to always revisit core concepts and see how they manifest themselves in real problem solving. Here is a resource for learning the conceptual ontology of data science. Data science and machine learning are not synonyms, but much of the core algorithmic variety used by data scientists comes from machine learning.
Interactive Learning Tool for the Core Concepts in Data Science
Data Science Ontology
Failure is your Friend - Practice Practice Practice
Good training is now defined by one's ability to step outside their comfort zone by just the right amount to train the mind into learning and adapting to new concepts and situations. For example, practicing the same golf swing over and over is not real training...but trying a slightly different swing each time from slightly different angles keeps the mind guessing just enough to become better each time; this is true training. The concepts you learn from resources like the above ontology are truly powerful when seen in context. They are even more powerful when seen in changing contexts. This requires you to expose yourself to constant problem solving and constant failure.
In today's online world there is no lack of resources available for practicing machine learning. Here are a few books I have found to be good introductions. But the key point is to simply jump in and fail. Jumping in without knowing where to start is the whole point. It will force you to understand why certain languages and approaches are needed to solve the problem.
Practical Books
These books offer a practical yet well-rounded introduction to solving real problems with machine learning. Their foundations will serve you well as you later learn to become more sophisticated in your approaches (if needed)
And for a little inspiration, here is an article on learning to solve problems:
The Only Skill you Should be Concerned With
Competing
Listed below is the main machine learning competition site. Competing will force you to do whatever you can to squeeze that extra little bit of predictive accuracy from your models. Cleaning data, engineering features, and including domain knowledge are where the real results in machine learning come from. Just try to place in the top 10%
- Kaggle (The Home of Data Science)
Theoretical Book
The book I list here is fast becoming one of the classics. I have had the pleasure of having lunch with the author on a few occasions and he is a brilliant man capable of explaining things very well. This book does go deeper and is laced with a fair amount of mathematics. But you must learn to not shy away from equations as they are the most concise way to showcase concepts to fellow scientists. What I like about this book is that it begins by discussing the feasibility of learning and extends later chapters from this core idea.
- Learning from Data (Yaser S. Abu-Mostafa, Malik Magdon-Ismail, Hsuan-Tien Lin: 9781600490064: Amazon.com: Books)
Think like a Researcher
You may have noticed that many machine learning jobs look for people that have a PhD in some quantitative discipline. The reason for this is that the PhD is the only degree that trains its students in the discipline of advanced research. Importantly, obtaining a PhD means you have solved something truly original and defended that in front of leaders in the field.
I don't say this to suggest a PhD is required but rather to stress the point that research skills are vital to doing machine learning well. Although many vendors would have you believe machine learning can be a "service" or something that is packaged, real machine learning takes real research. If it could be a packaged solution, everyone would do it and there would be no competitive advantage in either academia or enterprise.
Thinking like a researcher means working towards something truly original, regardless of how small that piece of originality might be. Don't look for obvious solutions; look for that thing that models the system in an original way and that offers you, your client, or your employer something truly competitive and interesting.
Bringing it all together
Revisit the core concepts regularly, practice solving problems relentlessly, and work towards trying to solve something original.
Jump in and have fun. Machine learning is an exciting field and will help solve many of today's most difficult challenges.
The usual way is to sign up for a bunch of online courses, breeze through some of the videos while skipping the coding assignments and then spending the next few months procrastinating and wondering which deep learning library is better out of TensorFlow, Theano, Torch, Keras and CNTK.
The best way is to start doing stuff right away. Install Python or R or some other programming language that does machine learning well and start coding. Don’t worry too much about which language or tool is better. Get some data or even generate some random data yourself and implement basic stuff like linear regression and gradient descent. Google how to do stuff. Some of the simpler algorithms can be understood just by reading their Wikipedia pages. If you like what you’re doing, you can sign up for Coursera’s Machine Learning course by Andrew Ng to get an introduction to the concepts and math behind ML. If you know the basics and can successfully implement 3–5 algorithms you are already way ahead of most beginners.
In terms of math, you should be incredibly comfortable with probability, statistics, and linear algebra. If you want to actually learn the theory behind Machine Learning, I would follow a useful online course like the one offered by Stanford. In terms of technical skill, you should become fluent in Python & R, especially the built in modules like nltk, sci-kitlearn, theano, etc.
Here’s some of the relevant syllabus for the Data Science Course I teach at Byte Academy:
- Statistical Modeling & Inference
- Probability, Distributions
- Classical/Frequentist Statistics
- Regression and Bias
- Scipy.stats & statsmodel packages
- Machine Learning
- Regression Models, Classification, SVM, Decision Trees, Random Forests
- Scikit-learn
- Intro to Deep Learning
- RNNs & CNNs
- Tensorflow, Theano, Lasagne
- NLP & Text Mining
- Nltk Package
- Lexical analysis
- N-gram models
- Parts-of-speech tagger
Hope this is helpful!
First you need to be trained with the appropriate basis in mathematics and computer science. In the case of deep learning, you can see part 1 of the MIT Press Deep Learning book (available online for now, eventually MIT Press will have a real paper book) to either brush up on these or see which areas of math and CS are most relevant. Then you need to read on machine learning (there are several good books, such as Chris Bishop's and Kevin Murphy's, online videos such as Andrew Ng's coursera's class and Hugo Larochelle's videos on neural networks, and you can get a summary of many of the basic issues in chapter 5 of the Deep Learning book). Then you need to start practicing, i.e., programming some learning algorithms yourself and playing with them on data, try to compete in some Kaggle competitions, for example. Try to become an expert at optimizing hyper-parameters and choosing models appropriately. In parallel, continue reading. If you are interested in deep learning, part 2 of my book will give you the basis for the most common algorithms. At that point you should have enough background to start a steady regimen of reading papers that tickle your fancy.
There are two parts to it. The first is the theory and the second , the practice. You may do the latter with the help of packages and libraries available for various programming languages without having a good understanding of the former, but this approach will disadvantage you in that not only will you miss out on significant amount of applied, useful, mathematics but you will also forgo models that could have been better had you known what your libraries are doing. There is another advantage to learning the theory : whether ML gives way to AGI or anything else, your knowledge of the Mathematics will remain relevant, which in turn will keep you relevant in the long run. Therefore, my answer will begin at the very basics and build up.
The first area you need to master is Linear Algebra. If you've never done it before, the best place to start is Gilbert Strang's 18.06 from MIT OCW and his book for the course. After that, you need to study Golub's Matrix Computations. The next thing you need to do is script as many algos as you can from Golub/Strang. This will test whether you have understood the theory properly.
The next area is Calculus. For Calculus, its hands down Apostol - both the volumes.
The third area you need to know is Probability and Statistics. For the former you may useRoss's Probability and for the latter, Wasserman's All of Statistics. Once you are done with these, do go through Hastie et al : The Elements of Statistical Learning.
After becoming reasonably proficient in the three areas above, you can take Tom Mitchell's ML course available online. Concurrently, you may study Bishop's Pattern Recognition and Machine Learning. There are many other books available too.
Check out ICML and NIPS papers.
So much for theory.
For practice, you would know enough by now to participate in Kaggle Competitions and take on your own projects.
Both.
The theory is an absolute must because it will let you understand what you are doing, why Machine Learning works and how it works, how each algorithm behaves and which gears are moving under the hood.
Projects are fundamental to practice specific tools and to build judgement. Judgement is what allows you to say “oh, you have this dataset, it is very similar to XXX, I bet a Random Forest will work great”.
Consider going deep in to the theory, not only knowing the algorithms but also coding them, because you can and because you learn on the way and also consider diving into some deep theory like PAC learning, VC-Dimension, etc.
Finally there is a third leg: research. While you learn the theory and while you practice with projects you should also keep an eye to publications, papers, conferences, videos and everything related to the field of Machine Learning.
Theory will give you foundations.
Projects will make you able to do things.
Research will keep you surfing the waves.
If you have enough discipline and passion you can learn Machine Learning by just using freely available online material.
This is important, my recommendation would be to start from the Stanford Convolutional Neural Networks course. That course touches all aspects of this guide and will keep you motivated because you accomplish things in small bites.
Foundational Material
Mathematics
Linear Algebra, probability, and Calculus will be required. Approach your study from a tools perspective i.e learn about a topic when you encounter it and be very clear on why that topic is important.
- First section of the Deep Learning book. Nice and gentle introduction to Machine Learning related mathematical concepts.
- Essence of Linear Algebra & Essence of Calculus. Series of short Youtube videos providing very beautiful intuition on Linear Algebra and Calculus. For example, did you know that determinant describes how the space is scaled and transformed by a matrix.
- Calculus Made Easy by Thompson. I recently stumbled into this text(somebody posted on Twitter) and just fell in love with it. Gives a nice surface introduction to Calculus.
- MIT Probability Systems Analysis & Applied Probability. Goes a little slow for my taste but covers all the main topics.
- Mathematical Methods for Computer Vision, Robotics, and Graphics Course Notes. I recommend going back to Khan Academy for supplementary materials.
- Mathematical Methods for Engineers 1 and 2. MIT course on applied mathematics. Some methods relevant to AI and others not. I watch select lectures when I am reviewing some material.
Software Engineering
- Learn Python. Most of the AI libraries and sample code out there is implemented in Python. I came from a JAVA background and this book helped me immensely to understand the Pythonic ways.
- Once you are comfortable with the basics start getting comfortable with parallel programming in Python. You will have to use it to create training data in parallel or speed-up mundane data cooking tasks. This blog will give you a good start. You will encounter the wonderful world of GIL :).
- Get good at using NumPy and Scipy. These tools implement mathematics on computers. This introduction from Stanford is a great start. One subtle point is this: NumPy seems to have set the standards on how one should think about Linear Algebra on computers. So the concepts learnt here transfer to most other AI toolkits.
GPU Accelerated Machine Learning
Most of Machine Learning is Matrix transformations. Matrix math can be massively accelerated on GPUs. I recommend exploring GPUs for speeding up your ML models.
- On the long run building your own GPU box will be cheaper. Refer to these guides:A Full Hardware Guide to Deep Learning - Tim Dettmers and Building your own deep learning box – Towards Data Science – Medium.
- I recommend this book and this course. Remember, you do not need to know everything but comfort with this material will help you run your networks faster and debug issues.
- You will also need to learn one GPU based framework. There are many to choose from like MXNet, Theano, Tensorflow, and PyTorch. All these frameworks are Linear Algebra engines. Their websites are full of guides and tutorials. Pick one and get good at it.
Machine Learning Specific Materials
Machine Learning is a vast field. This section will vary based on the type of Machine Learning you want to pursue. I use Neural Networks to pursue Machine Learning so my description will be biased to those techniques.
IMHO the progression of digesting materials is lectures -> blogs/books -> papers. Some of my favorites.
Lectures
- Learning from Data.
- Neural Networks for Machine Learning.
- Convolutional Neural Networks for Visual Recognition.
- Deep Learning for Natural Language Processing
- Oxford CS Deep NLP
- Neural Networks
Blogs/Books
Papers
- Great list compiled by Terry Taewoong Um
- Create an account on Arxiv Sanity Preserver and well go insane
This field is moving so fast that the best way to “keep in the know” is to follow the leaders of the field. Best way to do that is social media. Some recommendations and most probably your social media of choice(Most of them are active on Twitter) will start showing you more relevant people :)
Organizing your Reading Material (Optional)
I constantly try to optimize how I organize my material. At one point I had printed papers everywhere. Then with iPad Pro & Apple Pencil I “tried” to go paperless but reverted back. But, in the past month(After iPad 10.5 inch release) I think I have finally found a system that works for me.
- I use Papers to organize my PDFs. It can import PDFs from sources like Arxiv.
- I use LiquidText to read and annotate my PDFs. Cool thing here is that you can open PDFs from Papers in LiquidText and when you are done you can send them back to Papers with your annotations intact.
- I use Google Keep for on-the-fly bookmarks. Then, when I get some time I import things into Papers or LiquidText for future reading.
This is the way
In order to learn machine learning, you need to be really good at math. Here are the maths you must learn in order to be ready.
- Linear algebra
- Probability theory
- Calculus
- Calculus of variations
- Graph theory
- Optimization methods (Lagrange multipliers)
Also definitely try this book Programming Collective Intelligence: Building Smart Web 2.0 Applications: Toby Segaran: 0636920529323: Amazon.com: Books
It explains classics of machine learning with really simple explanations on how and why they work. The examples are on python but you dont need to know that to understand the book.
Here are also some online machine learning libraries for you to use.
Data Mining with Open Source Machine Learning Software in Java
Java Machine Learning Library (Java-ML)
Scalable machine learning and data mining
You can find many more on Google
The best way to learn machine learning is to practice it. Try making a Artificial neural network or a Genetic algorithm
This will deepen your understanding of machine learning.
Also machine learning isn't also about math it's also about data analysis
The real prerequisite for machine learning isn't math, it's data analysis
Good luck and I hope you do well.
If you're only interested in learning the basics then you can get away with online lectures. There's plenty of good ones out there. Here's a few good ones:
Mathematicalmonk's youtube videos on Machine Learning
Pedro Domingo's coursera lecture videos
Abu-Mostafa's course on edX
Andrew Ng's coursera course (It's a watered version of his Stanford lectures, so if you want more depth go with this instead -> Stanford Course
)
Alex Smola puts his CMU lectures on youtube and has additional lecture content on his website -> Introduction to Machine Learning
I personally really like the first two that I mentioned above.
If you really want to do machine learning then you'll need to have a good grasp of multivariable calculus, linear algebra, probability and statistics, and convex optimization.
Gilbert Strang is the guy for Linear Algebra.
MIT also has great videos on Multivariable Calculus.
For Convex Optimization go with Boyd's free book and Stanford Video Lectures on Convex Optimization.
I don't know of any good stats lectures but I'm a big fan of Probability Theory: The Logic of Science by E. T. Jaynes.
Once you're comfortable with the math, you can pick up a few books and chew through them.
To ease in I'd start with Pattern Classification by Duda, Hart and Stork, it's a nice introduction that will build up your intuition for Machine Learning.
After you're done with that pick up Pattern Recognition and Machine Learning by Christopher M. Bishop, which is really dense on information and covers Bayesian methods.
Another good (and free) book is Elements of Statistical Learning.
If after all of that you're hungry for more, check out Machine Learning videos/lectures/talks on videolectures.net
If you have two to three months then you shouldn't just settle for a broad overview that only allows you to apply some machine learning libraries (sklearn, MLib, weka, ...) as they come.
Instead, I believe you should go for an in-depth understanding of the algorithms, methods and principles that underly these libraries and techniques. I also believe that the best way to achieve this, is the old-school approach of self-study: get yourself a good book (e.g. one ofMachine Learning Books - Computer vision for dummies), and study it. Don't just read it, but make sure you understand every word and every formula. This can definitely be done in a few months.
If you then have some time left, start reading papers that seem interesting (google scholar is your friend). These will help you to get up to date with the state-of-the-art.
Finally, if you still have time, watch some online videos to recap the most important ideas and techniques.
Good luck
You can't learn machine learning (ML) quickly but you can learn the overview of ML very quickly, in a matter of a few days. You just need to revisit:
- Linear algebra: Matrices & vectors
- Calculus: Differential calculus is what you need to focus on more.
- Numerical optimization: Convex and non-convex optimization algorithms.
- Statistics and probability: Probability distributions such as Gaussian distributions are important. Also learn about the logistic and softmax functions, they are motivated by probability theory.
- Programming: Python is a high level easy to learn language with lots of ML libraries supporting it. So get some ML models up and running with Python and libraries like TensorFlow.
Then after that you need to know deep learning (DL) a little deeper. Thus go through the Ian Goodfellow deep learning book[1] slowly, depending on your level of understanding. Also don't forget support vector machines (SVM) and kernel tricks.
That should take you about 2 to 3 months to cover the whole introductory ML + DL stuff. But that is still not enough, that is not how you learn ML, you need to continue for longer now, practicing and reading research papers from top conferences and top companies like Google, Facebook, Microsoft and OpenAI.
The practice part can take years, so ML is not that simple after all. You also need to love the field itself because in practice, things don’t work great everytime. So passion and tenacity is also important in learning ML. Read everyday about ML, practice and help others understand ML by answering questions on Quora, that way you will improve automatically.
You can also get internships afterwards in companies like Google, Facebook or OpenAI to deepen your understanding in ML. You can also pursue a PhD after that, if you are deeply in love with the field, to become an ML researcher.
So there is no sure way to learn ML quickly. Just fall in love with it and then take a deep breath and prepare for a long interesting and very challenging fulfilling journey through the world of ML, you will become better every step of the way, you will get there.
Hope this helps.
Footnotes
This is probably the most common question I get asked here on Quora and I have been spending some time thinking about a way to provide some resources to people who are interested in getting into artificial intelligence and machine learning that is presented in an easy to understand format.
Today I came up with a course of action.
I’ve decided to start a series on The Educational Blog on artificial intelligence and machine learning: Understanding Artificial Intelligence Series.
This is the first post that goes through the motivation and content of the series.
Motivation behind this series
Artificial intelligence (AI) is a really hot topic today.
You hear a lot of dark and ominous proclamations from the media today about AI. Just last week, an overblown article claimed that Facebook “shut down” it’s AI because it was getting too intelligent.
There’s a lot of worry from some high profile people such as Elon Musk and Stephen Hawking that if left unchecked, AI has the ability to be a world ending threat.
A decent amount of today’s population is also worried about AI’s potential to displace jobs and the subsequent consequences on a socioeconomic level.
You only need to look at the most suggested completions on Google for the search phrase “Will AI … “ to see this fear is very real among a good number of people.
But how much of this fear is really justified?
I believe that a lot of fear in the abilities of AI comes down to a collective lack of understand of how AI really works. How do computers exhibit intelligence? What does intelligence really mean in this context? What are the limits of this intelligence? How do we create intelligent systems?
Basically it boils down to a fundamental question.
How does AI really work?
As someone who works in the field of artificial intelligence and helps teach the artificial intelligence course at UC Berkeley, I am going to take a crack at demystifying this field. I am going to try to do it in a simple. fun, and intuitive way, especially since a lot of things that are happening in modern AI seem to require a lot of technical jargon.
We’re going to take things from square one. I will try my very best to make very few assumptions about prior knowledge. For anything that does require prior knowledge from a mathematical or computer science perspective, I will try explain in detail before we continue. For those of you who want to go deeper into the topics, I will also bring up more advanced ideas and link to resources that you might find useful.
Hopefully, people at all levels will find this series to be interesting and enlightening. Above all, I hope you all start viewing artificial intelligence as a field full of excitement rather than a field hidden with darkness, uncertainty, and fear.
This series will appear on The Educational Blog.
Here’s a list of topics that I will go over in this series, and please feel free to let me know in the comments if you want me to go through any other topics that I may have forgotten. The order and content of this may change around if I see something better so keep an eye on it updates.
A lot of my posts are going to be story and example driven, which is why some of these titles may seem a little peculiar. I have included the formal topics in parentheses for your reference.
Index
- What Is Artificial Intelligence?
- Where Am I? (State Spaces)
- Laziness (Graphs and the Shortest Path Problem)
- Way Out of My Depth (Depth First Search)
- Branching Out (Breadth First Search, Uniform Cost Search)
- Getting Smarter — the Power of Heuristics (A* Search)
- I Hate Conforming to Rules (Constraint Satisfaction Problems)
- Let’s Play Some Games (Game Trees, Minimax)
- Playing Games Smarter (Alpha-Beta Pruning, Expectimax)
- Everything Is Uncertain (Introduction to Probability)
- Making Decisions in a Chaotic World (Markov Decision Process, Value Iteration)
- Making Decisions Is Hard — Let’s Just Try Things (Reinforcement Learning, Q-learning)
- Every Action Has Consequences (Bayesian Networks)
- Relationships Among Actions (Independence in Bayesian Networks)
- Predicting Consequences of Actions (Inference in Bayesian Networks)
- Predicting Consequences of Actions Faster (Sampling in Bayesian Networks)
- Is Knowledge Really Power (Decision Networks and Value of Perfect Information)
- Yesterday You Said Tomorrow (Markov Chains)
- Let’s Start Observing (Hidden Markov Models)
- Woah, I Have Data Now (Introduction to Machine Learning)
- I Guess I’m Naive (Naive Bayes)
- I Have Some Awesome Neighbors (K-Nearest Neighbors)
- Dealing with Change (Brief Overview of Calculus)
- I Love Lines (Linear Regression)
- I Also Love Logistics (Logistic Regression)
- I Need Some Support (Support Vector Machines)
- Decisions: Let’s Draw Some Trees (Decision Trees)
- Introduce Some Chaos (Random Forests)
- Finally Without Adult Supervision (Unsupervised Learning)
- Where’s My Cluster (k-Means)
- Simplify, Simplify (Dimensionality Reduction and Principal Components Analysis)
- Let’s Think about Things Deeper (Introduction to Deep Learning)
- Taking a Deeper Look at Lines (Perceptrons)
- I See a Brain (Artificial Neural Networks)
- Should We Be Worried (AI, Society, Ethics, and the Future)
Thanks A2A.
Machine Learning, as you may know, is a subfield of Computer Science that evolved from the study of pattern recognition and computational learning theory in artificial intelligence.
To get started into machine learning you will first have to learn many Computer Science principles and many maths topics as well.
You will need to first learn at least one programming language very well. I suggest you go with Python as it's easy and has many good libraries to support machine learning. Refer here for the same.
Yash Sharma's answer to What are some good websites to teach Python to a complete newbie?
Once you have done this then I would suggest you do some algorithmic courses to get yourself acquainted with the algorithms that will be used. I would suggest these courses for the same.
https://www.coursera.org/special...
https://www.coursera.org/course/...
https://www.coursera.org/course/...
And in the end you can combine all of this by watching famous Andrew NG's course on Machine Learning.
https://www.coursera.org/learn/m...
Hope I helped.
Cheers.
P.S some additional sites that you might find interesting.
7 Steps to Mastering Machine Learning With Python
Start Here - Machine Learning Mastery
How do I learn machine learning?
I’m borrowing from the answer that I wrote to Karlijn Willems' answer to How does a total beginner start to learn machine learning if they have some knowledge of programming languages?
I’m still learning, but when I look at how I started out, I think there are definitely some things that I could have done a little better or different. So here is what I would do if I was to learn machine learning all over again:
- Assess, refresh and learn math and stats. This is probably a hard one, because I didn’t really have an idea what to look for. Nowadays, I’d advise you to go through this list (40+ Python Statistics For Data Science Resources) and learn as much as you can by applying the stuff with Python, if you’re also new to programming. For math, I’d consider taking linear algebra on Khan Academy. I can not stress enough how important I think it is to do this step well because it will save you some time in the long run.
- Invest in Machine Learning “theory”. What I hear a lot is that people don’t take the effort to go through some more dry/theoretical material. But I think that this is extremely valuable in the long run. I went through Machine Learning textbookand at the same time, I watched the videos of Machine Learning - Stanford University | Coursera. I think these were very instructive and gave a good solid basis to start from. Also check out Machine Learning Yearning.
- Get hands-on. These materials that I have mentioned are great to build up the foundations, but you should also be able to apply the concepts that you have learned about. You might consider taking Intro to Machine Learning Course | Udacity or Supervised Learning with scikit-learn, and Unsupervised Learning in Python.
- Practice. But, even more important than getting hands-on and revising the material with Python, is practicing. This step was probably the hardest one for me. I didn’t find any materials that I liked and that were on my level, so I had to do most of the things myself. Recently, I wrote a Python machine learning tutorial for beginners: Python Machine Learning: Scikit-Learn Tutorial. I’d also recommendKaggle Python Tutorial on Machine Learning.
- Don’t be scared of projects. After these, consider getting started on some projects via Your Home for Data Science . Make sure to put your code on Github so that others can see your progress and discuss.
- Don’t stop at the basics. There are always new materials coming out and if you’re following some machine learning podcasts, you’ll always be up to date with the latest news.
- I’d also consider checking out topics such as deep learning (Deep Learning in Python, Keras Tutorial: Deep Learning in Python) and how both topics tie in with text-based information retrieval.
- If you’re up for it, I think academic research can help you tremendously to dig even deeper into machine learning and the latest advancements in the field.
- I’d also consider getting into R to do machine learning. The following courses can help you to do this: Free Introduction to R Programming Online Course,OpenIntro, Data Analysis and Statistical Inference, Basic Statistics orStatistics with R Track | DataCamp for the basics and statistics with R andIntroduction to Machine Learning - Online Course, R: Unsupervised Learning and Machine Learning in R for beginners for machine learning.
- Make use of all the material that is out there. Besides podcasts, there is great documentation out there that will most definitely help you to get out there and conquer the data fear: scikit-learn: machine learning in Python, Keras Documentation, and cheat sheets such as Choosing the right estimator , Scikit-Learn Cheat Sheet: Python Machine Learning, Keras Cheat Sheet: Neural Networks in Python, or other materials such as A visual introduction to machine learning, Clustering with Scikit with GIFs.
Hope this helps. Good luck!
Persistance.
It will take a lot of time. The way to learn Machine Learning is to persist - no matter what. Machine Learning is interdisciplinary field: You need to have strong mathematical foundations to understand it - linear algebra, statistics and calculus. You will build models, process data and write code. You will also evaluate, visualize and present the results.
So how do you start? I assume that you are just out of high school. This is the learning map for you:
You start learning the basic math and programming:
Linear Algebra with Applications - it might get pretty abstract so I would always supplement the theory with real-life applications.
Learning Python - Python is the easiest programming language that is very popular in the field. While programming you will also learn mathematical logic hands-on.
I’d also do it on Linux or Mac and learn how to use the Unix and command line tools.
Secondly, I’d go to learn Probability Theory and Statistics and then jump straight away to learning methods in Statistics. I would combine the theory with real-life applications and R programming language - in that way you keep working on the theoretical fundamentals, keep practicing and learn your tools.
Introductory Statistics with R
With the basics skills in math and programming, I’d take the introductory course to Machine Learning by Andrew Ng:
Andrew Ng's Machine Learning Lectures - YouTube
I would prepare myself before every lecture by reading the course hand-outs: Machine Learning (Course handouts).
The course covers Supervised Learning and Unsupervised Learning. You will learn about Regression methods, Classification tasks including Random Forrests, Bayes Classifiers and Support Vector Machines. You will learn about different optimisation methods and you will get a grasp of neural networks - the Rosenplatt’s Perceptron.
At the same time, I would work with Machine Learning with Python by Sebastian Raschka. The book is much simpler than the Andrew’s course and comes with much more examples. It is supplemented by a Github repository and Jupiter notebooks. You will work with the Python math libraries such as numpy, sckit-learn, pandas, matplotlib.
Now, you will be fully equipped to do some really impressing stuff - what about Image recognition of handwritten digits with Tensorflow?
MNIST For ML Beginners | TensorFlow
There is an option that you fall in love with the library and your computer will be to slow for it. Then it might even happen that you learn something about GPU computing and tune it up by a factor of 50.
Now you can start thinking big - working with big data. Perfectly you learn something about distributed databases like (Cassandra) and distributed computing (Spark) - how to store and compute not on one really powerful supercomputer but on many not so fast computers. You probably already have a laptop, old PC and can get a cloud server for free - you can build your own ML processing cluster.
Next I’d go now for deep neural networks.
Deep Learning: The Definitive Guide
This is currently a very hot topic with a lot of research going on. I would read research publications by DeepMind (Publications | DeepMind) and try to understand the code behind the agents learning how to play old Atari games. You will find the code on Github.
I’d also try to get big picture about different applications with the Microsoft Cognitive Services – Intelligence-Anwendungen | Microsoft Azure.
The services are state of the art technology and you will learn how far the ML and AI can go.
At this level, I’d find a local meet-up group for ML paper discussion and join. Maybe you can even start your our discussion group.
By now you will have acquired the big picture and general knowledge about Machine Learning.
A bit off the beaten path, but perhaps a source of ideas for a project: See
In more general terms, when I need to research something new to me, I find that a good place to start is a good ol' Google search. Usually an early hit in the Google search is a Wikipedia page. Do follow-up on the reference links on the Wikipedia page. If you have access to a good technical library, the usual catalog search there may turn up some relevant books. If you are still in school, try to find someone with research interests similar to your own (a professor, perhaps?). Take a close look at what is on their bookshelf.
Pearltrees is a web site that can help you organize (and share) a collection of links to web content. I find it helpful as my collection of links on a topic burgeons. Do remember to take the time to reorganize the collection into sub-topics whenever any one part of your collection gets overly bushy. Search pearltrees for your topic and you may find other people already have collections of useful links. More importantly, you may find people who will be useful contacts for you.
"machine learning" is a vast and sprawling topic. You might be wise to spend some time asking yourself which aspects of machine learning particularly intrigue you and look for a project that way. I've seen projects on the web like a model airplane autopilot to stay within a designated region while searching for an objective object on the ground. And there are projects to get quadrotor flyers to cooperate and do things like juggle balls and similar acrobatic feats.
IBM's Watson has to be a potential source of inspiration for projects to pursue. Natural language processing. Medical diagnosis, ....
Heck, you need look no further than the shopping recommendations ofhttp://Amazon.com for aspirational ideas. How about a webcam that looks at the customer's apparel choices (e.g. what they wore into the store) and makes suggestions based on that first impression?
Machine Learning is in itself a huge learning. The term machine learning is self explanatory. Machines learn to perform tasks that aren’t specifically programmed to do.
Machine Learning in a process is
- Algorithms consuming humongous data
- Dig out patterns from the data
- Convert patterns to actions
Don’t be surprised if you come across an advertisement exactly similar to your interests which you wanted to buy the last time you were shopping online. That simply is machine learning.
Machine Learning being a vast field, knowing just python is not well enough. There are lot many other things you should know to be a machine learning engineer.
Here are the skills you will have to develop other than Python to excel in the field of machine learning.
Basic Skills
Machine Learning is a mixed bag of software engineering, math and data science. These three are the basic skills and one should be proficient at it. Going deep into this
Probability and Statistics
One can learn about algorithms with the help of probability and statistics theories. Some models like Gaussian Mixture Models, Naive Bayes and Hidden Markov Models demand a sound understanding of probability and statistics. Learn measure theory. Statistics helps as a model evaluation metric like receiver-operator curves, confusion matrices, p-values, etc.
Data Modeling
Machine learning engineers also have to analyze unstructured data. This mainly relies on the science of data modeling, the process of assessing the basic structure of a dataset, locating patterns and bridging the gap where there are no traces of data. Data modeling is the base of developing firm algorithms which can be enhanced over time.
Programming Skills
Your software development and programming skills will matter the most as machine learning is all about developing productive algorithms.
Programming and Computer Science Fundamentals
There is a lot of computation on extremely large amount of data in machine learning. Hence, one should be clear with
- Data Structures like queues, multi-dimensional arrays, trees stacks, graphs etc.
- Complexity like NP-complete problems, P vs. NP, big-O notation.
- Algorithms like searching, optimisation, dynamic programming, sorting.
- Computer Constitution like cache, deadlocks, memory, bandwidth, distributed processing.
Once you are deeply know these fundamentals, you are also responsible to know how to apply as well as deploy them while programming.
Software Design
What do machine learning engineers deliver? They deliver “Software”. If we look closely, software is a very small component however, a game changer in a large community of products and services. Therefore, it is important to form systems and algorithms that can effectively be integrated with such software. Having a strong hold on API, dynamic libraries will help in proper software designing and effective interface development.
Applied Maths and Algorithms
Universal implementations of Machine learning are easily accessible through libraries like Theano, scikit-learn, Spark MLlib, TensorFlow, H2O etc. However, choose an appropriate model to implement them effectively like decision tree, nearest neighbor, neural net, ensemble of multiple models, support vector machine etc. You need to have knowledge about convex optimization, quadratic programming, gradient decent, partial differential equations, lagrange etc. Moreover, it's important to have an idea about merits and demerits of different approaches like overfitting and underfitting, data leakage, bias and variance, missing data, data leakage.
Machine Learning Programming Languages
Machine Learning is not limited to any specific language. You will come across ML libraries in different programming languages like C,C++, R and Python. Among all these programming languages, the best language in my opinion to go ahead is Python.
Data scientists and machine learning engineers easily fall in love with python language because of its easy syntax. Python ensures efficient scientific computing and data processing, thanks to its helpful libraries like SciPy, NumPy and Pandas. Some specialized ML libraries like Theano, scikit-learn and TensorFlow easily develop algorithms with diverse computing platforms.
With so much hype of machine learning already in 2017, I am sure machine learning will emerge more bigger in the coming years down the line. ML will play an important role in moulding the future of online platforms.
Disclaimer: I am a co-founder @GreyAtom, assisting engineering talents find sustainable careers in emerging technologies.
GreyAtom’s highly selective flagship program aims at mentoring working professional and freshers in kickstarting their Data Science career. Students built projects upon REAL DataSet and Problem Statements provided by our industry and hiring partners. Program is classroom based and heavily practice driven. GreyAtom is an ecosystem where students can leverage the best from academia, industry practitioners and influencers.
Some quick links
Chat with Academic Counsellor - You're welcome to share all your doubts, insecurities paying an ear to which we'll try our level best to guide you to your career path of success.https://calendly.com/greyatom/counselling-session
In 2011, Stanford professor Andrew Ng launched his first MOOC, teaching just over 100,000 students about machine learning. Ng has said that the course, which turned out to be very popular, led to the start of Coursera. Today, Coursera reaches 7.5 millions of users around the world, and Ng’s Machine Learning course continues to receive wildly positive reviews from seasoned and newly initiated programmers alike.
Programmers are using machine learning to build really, really smart algorithms — and thanks to educators like Andrew Ng, people are starting to take notice. If you want to begin your education in machine learning and explore some of its applications, check out our round-up of some of the best MOOCs on machine learning today.
Beginner Machine Learning:
1. Machine Learning (Stanford): This highly-rated Stanford course is perhaps the best introduction to machine learning. Users praise Professor Andrew Ng for his ability to expertly explain the mathematical concepts involved in different areas of machine learning.
Level: Beginner | Duration: 10 weeks | Start date: On now | Read reviews
2. Learning From Data: This introductory course from CalTech dives into machine learning as if telling a story: Can machines learn? How exactly? Students will gain an understanding of the theory behind machine learning, and gain experience with different algorithms and models.
Level: Beginner | Duration: 10 weeks | Start date: September 25, 2014
3. Principles of Autonomy and Decision Making: Gain an overview of the different ways systems make decisions: from logic to heuristics to model-based reasoning.
Level: Beginner | Duration: Self-paced | Start date: Always on
Intermediate Machine Learning:
4. Machine Learning (University of Washington): This interactive course goes beyond basic concepts to explore neural networks, learning theory and vector machines — among other things. It is taught through “supervised learning” — meaning that the correct answers is usually given to the student during class.
Level: Intermediate | Duration: N/A | Start date: TBA
5. Practical Machine Learning: Part of John Hopkins’ specialization in Data Science, this course focuses on learning the components and applications of prediction functions.
Level: Intermediate | Duration: 4 weeks | Start date: July 07, 2014
6. Introduction to Convex Optimization: This high-level course will help students recognize and tackle convex optimization problems. The course will also go over applications in areas like finance, computational geometry, mechanical engineering and more.
Level: Intermediate | Duration: Self-paced | Start date: Always on
Advanced Machine Learning:
7. Machine Learning (MIT): This graduate level course from MIT approaches machine learning through the lens of statistical inference.
Level: Advanced | Duration: Self-paced | Start date: Always on
8. Prediction: Machine Learning and Statistics: Another graduate level course from MIT, but this one explores machine learning through predictive models and “the study of generalization” from data.
Level: Advanced | Duration: Self-paced | Start date: Always on
9. Topics in Statistics: Statistical Learning Theory: This course provides an in-depth analysis of the theories behind statistical learning, and covers empirical process theory, Vapnik-Chervonenkis Theory and more.
Level: Advanced | Duration: Self-paced | Start date: Always on
Introduction to Neural Networks:
10. Neural Networks for Machine Learning: This course introduces users to algorithms that are “inspired by the way the human brain works.” These algorithms are used to build machines with things like speech recognition, image retrieval, and personalized recommendations for users.
Level: Intermediate | Duration: 8 weeks | Start date: TBD
11. Introduction to Neural Networks (Spring 2005): This course delves deeper into the topic of neural computing and learning, and covers models of perception, motor control, memory and more.
Level: Advanced | Duration: Self-paced | Start date: Always on
Introduction to Genetic Programming:
12. Bioinformatic Algorithms (Part I): In this University of California at San Diego course, students will deal with real genetic data to learn more about the computational methods used in modern biology and genome sequencing.
Level: Intermediate | Duration: 10 weeks| Start date: Sept 15, 2015
13. Bioinformatics Algorithms (Part II): If you liked the first one, continue your studies with the second half of UCSD’s course in modern computational biology.
Level: Intermediate | Duration: 10 weeks| Start date: Jan 15, 2015
Additional Resources:
Interested in learning more about machine learning? Read up on what Andrew Ng is doing atBaidu, or check out Kaggle, the company that wants to make data science competitions a thing.
To become an expert in Machine Learning space you need to first build up your background in Mathematics & CS (i.e. algorithms, optimization, probability & statistics). Next, you need to pick a good quality book covering ML fundamentals.
Last but not least, you need to spend time to apply the ML theories to practical problems. This can be achieved by either working for top companies whose core product relies on ML area. I also have heard some people suggest juniors to attend Kaggle competitions.
To pick a high quality ML book we have taken a data-driven approach by crawling the web to collect various signals for 100's of ML, DM, and NLP books (e.g. reviews, ratings, year of publication, content, author influence. social media etc).
We fed all above signals to a Machine Learning Ranking algorithm to score and rank the top books.
See link below to view the list of top books:
Top 16 Machine Learning, Data Mining & Natural Language Processing Books
Here is a link to a free introductory machine learning text from 05:
http://ai.stanford.edu/~nilsson/...
and another from 97:
http://www.cs.cmu.edu/~tom/mlboo...
My suggestion would be to do a linear algebra course first, then the machine learning class from Stanford, then the artificial intelligence. At that point, I would find a problem that I'm interested in and try to apply machine learning concepts to solve it. Once you're at that point, use the texts as resources.
The project is led by Sebastian Thrun (http://en.m.wikipedia.org/wiki/S...) and he is also colaborator in Udacity, which is a great place to learn new things.
Following you'll find the instructors and the courses.
Sebastian Thrun
Sebastian Thrun is a Research Professor of Computer Science at Stanford University, a Google Fellow, a member of the National Academy of Engineering and the German Academy of Sciences. Thrun is best known for his research in robotics and machine learning, specifically his work with self-driving cars.Peter norvig
Peter Norvig is Director of Research at Google Inc. He is also a Fellow of the American Association for Artificial Intelligence and the Association for Computing Machinery. Norvig is co-author of the popular textbook Artificial Intelligence: A Modern Approach. Prior to joining Google he was the head of the Computation Sciences Division at NASA Ames Research Center.Intro to machine learning: https://www.udacity.com/course/u...
Intro to artificial intelligence: https://www.udacity.com/course/c...
Artificial intelligence for robotics: https://www.udacity.com/course/c...
Edit: Forgot to say that all of them are totally free.
You can always take help of reference books , online tutorials as well as your peers help.
But what i believe is that the most efficient way of learning something is through online tutorials where you can learn and implement at the same time.
The best tutorials for learning Machine Language is provided by hackr.io.
Do Visit Hackr.io - Find & share the best online programming courses & tutorials
#HappyCoding
A good starting point might be Google’s very own Machine Learning series which will take you from “Hello World” to “I am liking where this is going”. You should also check Siraj Raval’s channel. I think his pace is not suitable for beginners though he has an entertaining way of teaching.
I got myself started with this really great book called Hands On machine learning with Scikit and Tensorflow
In this book, Mr. Geron has really managed to combine theoretical basics with real world applications. Because he gets users to solve real problems and tweak results, I look forward everyday to reading more of it.
I also created this short video to help beginners write their first few lines of code. It will help you set up the environment and help you write your first ML program in <20 minutes.
Cheers!
Ben Hamner, Kaggle co-founder and CTO, held a Quora Session last month answering questions on the future of Kaggle, machine learning and AI, and data science workflows.Here we highlight his advice for studying machine learning in eight steps.
The Best Sources to Study Machine Learning and AI: Quora Session Highlight - Ben Hamner, Kaggle CTO
Now is better than ever before to start studying machine learning and artificial intelligence. The field has evolved rapidly and grown tremendously in recent years. Experts have released and polished high quality open source software tools and libraries. New online courses and blog posts emerge every day. Machine learning has driven billions of dollars in revenue across industries, enabling unparalleled resources and enormous job opportunities.
This also means getting started can be a bit overwhelming. Here's how I'd approach it. If you get stuck anywhere in this process, searching Kaggle (there's a good chance someone's hit your issue before) and posting on our forums (in case someone hasn't) is a great way to get pointers and get unstuck.
1. Pick a problem you're interested in
Starting with a problem you want to solve makes it a lot easier to stay focused and motivated to learn, instead of starting with an intimidating, disconnected list of topics (you're a Google search away from many of lists of machine learning resources, I'm not providing another one here). Solving a problem also forces you to deeply engage with machine learning, instead of passively reading about it.
Solving a problem... forces you to deeply engage with machine learning, instead of passively reading about it.
Good problems to start with have several criteria:
-They cover an area you're personally interested in
-Data is readily available that's well-suited to addressing the problem (otherwise the bulk of your time will go here)
-You can work with the data (or some relevant subset of it) comfortably on a single machine
-Don't have a problem that comes to mind? No worries! We provide a nice onramp of machine learning problems at Kaggle through our getting started competition series. Start off on the Titanic competition. Read Out More here The Best Sources to Study Machine Learning and AI: Quora Session Highlight - Ben Hamner, Kaggle CTO
You can try different online courses, but I would suggest Coursera - Free Online Courses From Top Universities | Coursera for basic knowledge and then choose appropriate to your focused field (neural networks, SVM, etc.) and find most suitable one for your stage of knowledge.
In this guide, we're going to reveal how you can get a world-class machine learning education for free.
You don't need a fancy Ph.D in math. You don't need to be the world's best programmer. And you certainly don't need to pay $16,000 for an expensive "bootcamp."
Whether your goal is to become a data scientist, use ML algorithms as a developer, or add cutting-edge skills to your business analysis toolbox, you can pick up applied machine learning skills much faster than you might think.
1. Are you a self-starter?
Do you like to learn with hands-on projects? Are you driven and self-motivated? Can you commit to goals and see them through? If so, you'll love studying machine learning. You'll get to solve interesting challenges, tinker with fascinating algorithms, and build an incredibly valuable career skill.
2. Are you tired of seeing expensive courses and bootcamps?
We are too... That's why we put together this guide of completely free resources anyone can use to learn machine learning. The truth is that most paid courses out there recycle the same content that's already available online for free. We'll pull back the curtains and reveal where to find them for yourself.
3. Do you want a single page on the internet that will always be up-to-date?
Machine learning is a rapidly evolving field. That makes it exciting to learn, but materials can become outdated quickly. We're going to update this page regularly with the best resources to learn machine learning.
We've got a lot of great stuff you'll like, so let's dive right in!
WTF is Machine Learning?
Machine Badass (NOT Machine Learning)
Machine learning is about teaching computers how to learn from data to make decisions or predictions. For true machine learning, the computer must be able to learn to identify patterns without being explicitly programmed to.
It sits at the intersection of statistics and computer science, yet it can wear many different masks. You may also hear it labeled several other names or buzz words:
Data Science, Big Data, Artificial Intelligence, Predictive Analytics, Computational Statistics, Data Mining, Etc...
While machine learning does heavily overlap with those fields, it shouldn't be crudely lumped together with them. For example, machine learning is one tool for data science (albeit an essential one). It's also one use of infrastructure that can handle big data.
Here are some examples:
- Supervised Learning - Your email provider kindly places that sketchy email from the "Nigerian prince with $50,000 to deposit into an overseas bank account" into the spam folder.
- Unsupervised Learning - Marketing firms "kindly" use hundreds of behavior and demographic indicators to segment customers into targeted offer groups.
- Reinforcement Learning - A computer and camera within a self-driving car interact with the road and other cars to learn how to navigate a city.
Don't worry if some of those terms mean nothing to you. After you complete this guide, you'll be able to apply each of those techniques yourself! (Self-driving car not included.)
Self-driving car: NOT included in this guide!
Why Learn Machine Learning?
Have you ever wanted to take over the world with robot raccoons?...
Or program your own personal butler like J.A.R.V.I.S. from Iron Man?!...
Or crack the stock market and become a billionaire overnight??!!...
Well, sorry to be a party pooper... but you probably won't be able to do that with machine learning (yet). But there are still awesome reasons to learn machine learning! Here are a few:
- Massive Global DemandThe demand for machine learning is booming all over the world. Entry salaries start from $100k – $150k. Data scientists, software engineers, and business analysts all benefit by knowing machine learning.
- Data is PowerData is transforming everything we do. All organizations, from startups to tech giants to Fortune 500 corporations, are racing to harness their data. Big and small data will continue to reshape technology and business.
- It's Fun as Hell!OK, we may be a bit biased, but ML is really damn cool. It has a unique blend of discovery, engineering, and business application that makes it one-of-a-kind. You’ll have a ton of fun with this rich and vibrant field.
Assuming that you know the basics in programming, there are couple of MOOCs that can help you get started. I would recommend the following:
1. Deep Learning Specialization (Coursera)
This course was designed by Andrew Ng co-founder of Coursera and Chief Data Scientist at Baidu. I just finished the first 3 courses of the specialization and I must say it’s one of the best ways to get started.
2. Fast.ai
A course taught by Jeremy Howard who is the president of Kaggle. This course is designed to get your hands dirty quickly and start designing Neural Networks.
If you don’t know how to code yet, then you should learn python first. It’s the most commonly used language in Data Science and very easy to get started. I’ve heard that this course is very good for learning python: Learn Python The Hard Way. Haven’t tried it myself.
Whatever you do, try engage with the community and build stuff on your own as this is the best way to learn something new.
Good luck!
I taught myself from scratch with no programming experience and am now a Kaggle Master and have an amazing job doing ML full time at a hedge fund.
It took an incredible amount of work and study.
Here’s how I did it:
- take every single online course you can involving data science. That includes basic ML, linear algebra (probably the most important), statistics, visualization, deep learning etc.
- read constantly. read blogs, classic texts, journal articles. I kept books by my bed and would read every night until I passed out.
- not only read this stuff, but master it. I’d get a new paper or book chapter I liked and I’d go to a coffee shop and rewrite the entire thing by hand w pencil and paper. I’d go through every derivation and memorize it. Any time a foreign concept was referenced, I’d research it and do the same thing with that concept - rewrite everything I read by hand, including my own thoughts, master it, then go back to the original paper
- keep learning and relearning everything until it was second nature. I probably learned and relearned something as simple as linear regression dozens of times, each time understanding it from a new perspective.
- do the same thing with programming. I’d consider myself a nearly complete expert in Python. You need to be a quick and effective programmer to be of any use. I know at least one very talented and knowledgable data scientist whose mediocre programming skills make him almost useless.
- Read about new tools and packages for your language of choice every day. Make a conscious effort to integrate them into my toolbox if it would help me reduce an expression of a procedure by even one line of code. It all adds up, your power multiplies.
- Do as many kaggle competitions as possible. Work on as many datasets as you can, and understand how all the classic ML algorothms would interact with the structure of that data. Each dataset had its own idiosyncracies; get familiar with a wide variety of data.
- Get a job somewhere that works with ML. At first, they might not let you touch the ML. Make ML stuff that would aid the business in your spare time to show them that you know your stuff and can implement it. They’ll probably let you start working on ML.
Do all of this to the point that you almost can’t take it anymore, every day for at least a few hours a day. Do it for years.
Eventually, you’ll get there. That’s how I did it.
Machine Learning, AI & Deep Learning Certification
Machine learning methods are used for data analysis, this is where they are similar to data mining, but the main goal of machine learning is to automate decision models. Algorithms are the heart and soul of machine learning and they help computers to find hidden insights.
So in essence machine learning algorithms need to learn. The machine needs to learn from data. Data will have multi dimensions- Type (quantitative or qualitative), amount (big or small size) and number of variables available to solve a problem. Learning algorithms should also be as general purpose as possible. We should be looking for algorithms that can be easily applied to a broad class of learning problems.
The data scientists are responsible for machine learning and getting outputs but the business people are the ones who are going to use it for business purpose so the rules and insights extracted from machine learning should be interpretable. So the output produced by the machine has to be understood by humans, who may not be from the machine learning area.
What differentiates this course are the following:
- Case study based approach, where participants are immersed in the problem.
- Complete package of AI (deep learning and NLP) and machine learning.
Objectives
The training aims at providing the participants with latest and general purpose machine learning algorithms. At the same time the training aims to deliver some common threads or a common knowledge base which can be used in future for learning a wide range of algorithms.
Contact at kartik@collaberatact.com for further queries.
This is my first answer on Quora and I believe that I can answer this as I am working in this area for last 15 years and got PhD in Machine Learning too.
I would suggest to go through some of the machine learning courses on cousera to begin with. Also have MIT, Standford cources on Data Sciences, Machine Learning etc. Start the habit of googling and be inquisitive in your approach. Also start participating in kaggle competitions and go through pages of various grand masters out there. which are very resourceful. Python is a must language that a data scientist should know but you can do decent job in R too.
Data Scientists need to be on their toe always and keep learning new and new stuff on regular basis.
First, get's your hand dirty on sample datasets and small problems which are avaiable at following locations.
Usefull Links:
http://archive.ics.uci.edu/ml/
Analytics, Data Mining, and Data Science
Courses:
https://www.coursera.org/special...
BigDataset :
Datasets: Large Datasets Repository | Public Datasets on AWS
Million Song Dataset | scaling MIR research
UCI Machine Learning Repository
Anonymous Microsoft Web Data
MSNBC — Breaking News, Top Stories, & Show Clips Anonymous Web Data
Syskill and Webert Web Page Ratings
I have also have couple of post on LinkedIn which could also be relevant here.
How to become a Data Scientist? Answer is Simple: "Behave Like A Child".
https://www.linkedin.com/pulse/h...
Life of Data Scientist in an Internet Company:
https://www.linkedin.com/pulse/l...
I hope that below response could be useful for those who wish to pursue career in data science.
We just published a new Machine Learning book which is oriented for people who want to start using Machine Learning. It covers the major concepts in a tutorial-based approach with practical applications using Python and Scikit-learn library.
No previous knowledge in Machine Learning is required.
Learning scikit-learn: Machine Learning in Python: Raúl Garreta, Guillermo Moncecchi: 9781783281930: Amazon.com: Books
Whether your goal is to become a data scientist, use ML algorithms as a developer, or add cutting-edge skills to your business analysis toolbox, you can pick up applied machine learning skills much faster than you might think.
1. Are you a self-starter?
Do you like to learn with hands-on projects? Are you driven and self-motivated? Can you commit to goals and see them through? If so, you'll love studying machine learning. You'll get to solve interesting challenges, tinker with fascinating algorithms, and build an incredibly valuable career skill.
2. Are you tired of seeing expensive courses and bootcamps?
We are too... That's why we put together this guide of completely free resources anyone can use to learn machine learning. The truth is that most paid courses out there recycle the same content that's already available online for free. We'll pull back the curtains and reveal where to find them for yourself.
3. Do you want a single page on the internet that will always be up-to-date?
Machine learning is a rapidly evolving field. That makes it exciting to learn, but materials can become outdated quickly. We're going to update this page regularly with the best resources to learn machine learning.
I would suggest that you read online some blogs and material on Machine learning as it takes time to get into this skill. Also, a part depends on your maths, statistics, business and programming skills. It is a good idea to do a classroom training than online if you are thinking of a career change. Create a transition plan if you are planning a movement from IT services to ML.
I have written a simple machine level road map in my blog which put some level 0 requirements and further stages. This does not move into deep learning and only focused on Machine learning.
All the best.
Robotics blog from India | Robotics blog | Robotics club
Hey all, although there are already awesome answers to the question, I'm here to add one more alternative.
Recently, we released a Machine Learning magazine called A Collection of our Machine Learning articles, aimed to be a great introduction to the field to Computer Science students.
The magazine provides an interesting combination of key ML concepts along with state of the art topics and how are these being applied in the industry.
Also… it's totally free of charge ;)
Read more about the magazine and download it here.
Interested in the field of Machine Learning? Then this course is for you!
Course link- Machine Learning A-Z™: Hands-On Python & R In Data Science-Learn to create Machine Learning Algorithms
Learn to create Machine Learning Algorithms in Python and R from two Data Science experts. Code templates included.
This course has been designed by two professional Data Scientists so that we can share their knowledge and help you learn complex theory, algorithms and coding libraries in a simple way.
They will walk you step-by-step into the World of Machine Learning. With every tutorial you will develop new skills and improve your understanding of this challenging yet lucrative sub-field of Data Science.
This course is fun and exciting, but at the same time they dive deep into Machine Learning. It is structured the following way:
- Part 1 - Data Preprocessing
- Part 2 - Regression: Simple Linear Regression, Multiple Linear Regression, Polynomial Regression, SVR, Decision Tree Regression, Random Forest Regression
- Part 3 - Classification: Logistic Regression, K-NN, SVM, Kernel SVM, Naive Bayes, Decision Tree Classification, Random Forest Classification
- Part 4 - Clustering: K-Means, Hierarchical Clustering
- Part 5 - Association Rule Learning: Apriori, Eclat
- Part 6 - Reinforcement Learning: Upper Confidence Bound, Thompson Sampling
- Part 7 - Natural Language Processing: Bag-of-words model and algorithms for NLP
- Part 8 - Deep Learning: Artificial Neural Networks, Convolutional Neural Networks
- Part 9 - Dimensionality Reduction: PCA, LDA, Kernel PCA
- Part 10 - Model Selection & Boosting: k-fold Cross Validation, Parameter Tuning, Grid Search, XGBoost
Moreover, the course is packed with practical exercises which are based on live examples. So not only will you learn the theory, but you will also get some hands-on practice building your own models.
And as a bonus, this course includes both Python and R code templates which you can download and use on your own projects.
Who is the target audience?
- Anyone interested in Machine Learning
- Students who have at least high school knowledge in math and who want to start learning Machine Learning
- Any intermediate level people who know the basics of machine learning, including the classical algorithms like linear regression or logistic regression, but who want to learn more about it and explore all the different fields of Machine Learning.
- Any people who are not that comfortable with coding but who are interested in Machine Learning and want to apply it easily on datasets.
- Any students in college who want to start a career in Data Science.
- Any data analysts who want to level up in Machine Learning.
- Any people who are not satisfied with their job and who want to become a Data Scientist.
- Any people who want to create added value to their business by using powerful Machine Learning tools
What Will I Learn?
- Master Machine Learning on Python & R
- Have a great intuition of many Machine Learning models
- Make accurate predictions
- Make powerful analysis
- Make robust Machine Learning models
- Create strong added value to your business
- Use Machine Learning for personal purpose
- Handle specific topics like Reinforcement Learning, NLP and Deep Learning
- Handle advanced techniques like Dimensionality Reduction
- Know which Machine Learning model to choose for each type of problem
- Build an army of powerful Machine Learning models and know how to combine them to solve any problem
Requirements
- Just some high school mathematics level
Course link- Machine Learning A-Z™: Hands-On Python & R In Data Science-Learn to create Machine Learning Algorithms
Hi,
If you want to learn Machine learning, i suggest you to join a training program. During training you get proper guidance and in guidance of someone you will able to learn fast. Do you know, why I suggest you to join training while you can also learn online? I suggest you because its not enough to acquire only theoretical knowledge you must know how to use it in real world. In a free time read more about Machine learning and try to implement it practically.
Machine learning is a form of artificial intelligence (AI) that provides computer systems with the ability to study without being explicitly programmed. Machine mastering focuses on the development of computer applications that may exchange while exposed to new information.
Moreover, Webtunix Solutions is one of the best Artificial Intelligence Research Organizations in Chandigarh who is working on Intelligent Web Frameworks Such as MATLAB, Python, Hadoop, Big Data and Java.
There are many free courses available for machine learning. If you are new then Udacity course for machine learning is best.
Intro to Machine Learning - YouTube
For advanced Users I will recommend machine learning tutorial by Andrew ng
Machine Learning — Andrew Ng, Stanford University [FULL COURSE] - YouTube
After that If you want to learn machine learning from books , then below is the link where you can find list of best books to learn machine learning from beginners to advanced
Best Book to Learn Python for Data Science | Machine Learning
Machine learning algorithm knowledge and intuition help data scientists to find a good model faster. But it is unknown for sure what ideas will bring you the best value. This is why the iteration time is a critical parameter in data science process. The quicker you iterate, the more you can check ideas and build a better model.
To speed up the iterations in data science projects the special DS tool - Data Version Control (DVC) - How A Data Scientist Can Improve His Productivity - was created. This tool takes care of dependencies between commands that you run, generated data files, and code files and allows you to easily reproduce any steps of your research with regards to files changes:
Regular pipeline tools like Airflow and Luigi are good for representing static and fault tolerant workflows. A huge portion of their functionality is created for monitoring, optimization and fault tolerance. In contrast to the traditional systems, DVC reflects the process of researching and looking for a great model (and pipeline), not optimizing and monitoring an existing one.
Small steps!
Neural networks is a kind of machine learning process. It works in bits and pieces. It collects information which looks like unrelated and unconnected blobs initially, but it perseveres for a long time after which all the data starts making perfect sense. They become interconnected.
So patience is the key!
Try taking up courses to learn some theory. You have some wonderful courses on edX andCoursera | Online Courses From Top Universities. Join for Free .
It may seem too much in the beginning but keep learning, and the more you learn, the more it begins to make sense.
Try text mining, neural networks and all the related fields. Check out which interests you the most.
Now try working on some simple algorithms and try running up some data. You can always get free data online.
After this, think of a problem you would like to apply machine learning to, and come up with an algorithm. Start working on it.
Keep yourself updated with new ideas on your field of interest.
Most importantly, make sure you have domain knowledge. For example, if you are going to work in predictive analysis for the stock market, then you should know how to analyze a balance sheet and how to pick out various ratios.
So start somewhere and keep going! Good luck!
Upvote it you like the answer!
I see ^^ :
- Do a review of basic programming
- Go through descriptive and inferential statistics
- Understand the data science pipeline (eg. Data cleaning, exploration etc)
- Get a taste of ML from basics to advanced concepts.
- Participate in knowledge competitions / ML hackathons.
- Explore ML in depth and use your skills to build something useful for humsnity!
- Top Book Recommendations
Taken together, our advisors' recommendations compose a strong collection of introductory texts, covering statistical learning, the theoretical underpinnings of machine learning, and the practical implementation of algorithms and model-building in the most popular programming languages (Python & R) and framework (Spark).
Xavier recommends:
- Hastie, Tibshirani, and Friedman's The Elements of Statistical Learning
- Bishop's Pattern Recognition and Machine Learning
- David Barber's Bayesian Reasoning and Machine Learning
- Kevin Murphy's Machine learning: a Probabilistic Perspective
- Larry Wasserman's All of Statistics: A Concise Course in Statistical Inference
For, professional ML, “Yes” you have to. There are several reasons:
- ML/DL frameworks/libraries have extensive support for python i.e. Tensorflow, Keras, etc.
- Python is built for data science, you get tons of great tools like numpy or scikit-learn or matplotlib to ease your work.
- Huge open source community.
- Damn easy in structure.
You know the basic theory of ML, you are good to go with tensorflow or keras or any framework for that matter to train your model. You just need to know the basic structure of that framework. Tensorflow has tons of tutorials and has huge open-source community. So, that is a good starting point.
As long as resources for ML are concerned, here are few resources:
- Coursera ML Course: Machine Learning - Stanford University | Coursera
- CS231n (Computer Vision Course): CS231n Convolutional Neural Networks for Visual Recognition
- CS224n (NLP): CS224n: Natural Language Processing with Deep Learning
- BDU DL with TF: Deep Learning with TensorFlow
- Udacity DL: Deep Learning | Udacity
- Caltech Course: Yaser Abu-Mostafa’s machine learning course
These are pretty good resources to kick start your career.
Happy Learning. :)
I think that a deep understanding of machine learning theory will lead you to better insights about your problems. I’d recommend you to start studying the theoretical aspects of machine learning, and then progressively moves to some simple and classical problems. I think that starting as stated bellow may be a good idea:
This question has a good link or resources: How do I learn deep learning in 2 months? (How do I learn deep learning in 2 months?)
I’d recommend you to take a look in the first weeks of the Stanford Machine Learning at Coursera (Machine Learning | Coursera (Machine Learning | Coursera)). In these initial weeks, Andrew teaches some important concepts and challenges in this area.
While studying Andrew’s classes, a good source to get a deeper understanding (with calculus and probability) it to watch the Nando de Freitas videos at Youtube: Machine Learning 2013 - YouTube (Machine Learning 2013 - YouTube) or Deep learning at Oxford 2015 - YouTube (Deep learning at Oxford 2015 - YouTube) (I prefer the UBC-2013 classes, but feel free to choose the one the best fits). In these courses, Nando shows the theory behind the most popular machine learning and deep learning models, and these approaches will give a better understanding of what is happening when the model “learns” from data.
And finally, try to implement something ! Kaggle is a good starting point for programming because you can find some tutorials and there is a good forum to ask questions and look for ideas. Play with these problems:
- Digit Recognizer | Kaggle (Digit Recognizer | Kaggle)
- Titanic: Machine Learning from Disaster (Titanic: Machine Learning from Disaster)
- House Prices: Advanced Regression Techniques (House Prices: Advanced Regression Techniques)
Machine Learning is nothing but a tool. Unless you are about to use it for some purpose it would be useless to learn it for now , because you might end up forgetting it. But since it is useful in almost every possible field it’s nice to learn it. I am attaching a link hereby.
Learn Machine Learning - Best Machine Learning tutorials | Hackr.io
It contains all the sources people consider for the machine learning and have been up-voted accordingly. It contains sources in every possible format , a person would like to learn.
You can check it out here: A Gentle Guide to Machine Learning
If you are getting serious about learning machine learning, the next step is to enroll to theMachine Learning course by Stanford University on Coursera.
Other recommended resources where you can get tons of material to read and study:
- Machine Learning • /r/MachineLearning
- Human Conversation About Machine Learning
- Awesome Machine Learning
Hii Nipun Aggarwal Thank you for A2A.
Before starting the answer, let me ask you, Are you good at data and Algorithms? if yes, then obviously you can learn Machine learning, and if no then better first focus on the basic things.
Machine learning, the word itself suggest the meaning. Machine learning is the sub-field of Artificial Intelligence and can be used in Automation and that can be used in making self- learning.
Machine learning can be learned by Online video tutorials and Practise. For that you need strong (very strong) knowledge of Algorithms like K-means, Classification, clustering and other related. Second thing you need to train the data. Without training data set, your machine would not be able to learn by itself. Now to training data set, your machine need to be high configure (Please check out on the google, Machine learning requirements in hardware configs.)
Keep in mind that, Machine learning and A.I is the most emerging techniques used nowadays. Do a lots of research before moving to the actual concepts. Also refer some github Libraries for the coding techniques.
Hope this helps.!
Thank you.
NC - The Fifth Horse
Basically Machine Learning Need to Perfect on Mathematics & Programming .
Coming to Mathematics
Coming to Programming .
That’s it , these are basics .
After that , you need to Get in to Machine Learning .
Here you can go with any Online Course . i will Suggest you
Best Machine Learning Online Course
Machine Learning A-Z™: Hands-On Python & R In Data Science
This course has been designed by two professional Data Scientists so that we can share our knowledge and help you learn complex theory, algorithms and coding libraries in a simple way.
Part 1 - Data Preprocessing
Part 2 - Regression: Simple Linear Regression, Multiple Linear Regression, Polynomial Regression, SVR, Decision Tree Regression, Random Forest Regression
Part 3 - Classification: Logistic Regression, K-NN, SVM, Kernel SVM, Naive Bayes, Decision Tree Classification, Random Forest Classification
Part 4 - Clustering: K-Means, Hierarchical Clustering
Part 5 - Association Rule Learning: Apriori, Eclat
Part 6 - Reinforcement Learning: Upper Confidence Bound, Thompson Sampling
Part 7 - Natural Language Processing: Bag-of-words model and algorithms for NLP
Part 8 - Deep Learning: Artificial Neural Networks, Convolutional Neural Networks
Part 9 - Dimensionality Reduction: PCA, LDA, Kernel PCA
Part 10 - Model Selection & Boosting: k-fold Cross Validation, Parameter Tuning, Grid Search, XGBoostMoreover, the course is packed with practical exercises which are based on live examples.
So not only will you learn the theory, but you will also get some hands-on practice building your own models.And as a bonus, this course includes both Python and R code templates which you can download and use on your own projects.
Additional Resources :-
beginner to advanced - machine learning and neural networks
All The Best .
This answer assumes that you know any one programming language and can fluently solve problems using it
Books, courses and peers who are learning it.
Books
- Artificial Intelligence: A Modern Approach by Stuart Russell
- Machine Learning in Python by Michael Bowles
- Deep Learning by Ian Goodwell
- A Probabalistic Theory of Pattern Recognition
These are amazing and renowned books in machine learning
Courses
- Artificial Intelligence MIT OCW course
- Machine Learning course by Andrew Ng
- Deep Learning nanodegree program hosted by Siraj Raval
Peers
Make friends! Not just any, but those who are pursuing machine learning. Talk to people on forums, interact with participants on Kaggle, and have college friends around who are doing what you are doing, or maybe even advanced things. And yeah, talk to your professors about it. They might know a thing or two more.
These are some of the books i came across in the internet.Hope it helps!!!!!
Machine Learning
Elements of Statistical Learning. Hastie, Tibshirani, Friedman
All of Statistics. Larry Wasserman
Machine Learning and Bayesian Reasoning. David Barber
Gaussian Processes for Machine Learning. Rasmussen and Williams
Information Theory, Inference, and Learning Algorithms. David MacKay
Introduction to Machine Learning. Smola and Vishwanathan
A Probabilistic Theory of Pattern Recognition. Devroye, Gyorfi, Lugosi.
Introduction to Information Retrieval. Manning, Rhagavan, Shutze
Forecasting: principles and practice. Hyndman, Athanasopoulos. (Online Book)
Probability / Stats
Introduction to statistical thought. Lavine
Basic Probability Theory. Robert Ash
Introduction to probability. Grinstead and Snell
Principle of Uncertainty. Kadane
Linear Algebra / Optimization
Linear Algebra, Theory, and Applications. Kuttler
Linear Algebra Done Wrong. Treil
Applied Numerical Computing. Vandenberghe
Applied Numerical Linear Algebra. James Demmel
Convex Optimization. Boyd and Vandenberghe
Genetic Algorithms
A Field Guide to Genetic Programming. Poli, Langdon, McPhee.
Essentials of Metaheuristics. Luke
You Want Learn Machine Learning from Scratch ,
Better to take Any Online Course . In the World There are various Machine Learning Online Courses are there , i will Suggest you
Best Machine Learning Online Courses
Machine Learning A-Z™: Hands-On Python & R In Data Science
This course has been designed by two professional Data Scientists so that we can share our knowledge and help you learn complex theory, algorithms and coding libraries in a simple way.
It is structured the following way:
- Part 1 - Data Preprocessing
- Part 2 - Regression: Simple Linear Regression, Multiple Linear Regression, Polynomial Regression, SVR, Decision Tree Regression, Random Forest Regression
- Part 3 - Classification: Logistic Regression, K-NN, SVM, Kernel SVM, Naive Bayes, Decision Tree Classification, Random Forest Classification
- Part 4 - Clustering: K-Means, Hierarchical Clustering
- Part 5 - Association Rule Learning: Apriori, Eclat
- Part 6 - Reinforcement Learning: Upper Confidence Bound, Thompson Sampling
- Part 7 - Natural Language Processing: Bag-of-words model and algorithms for NLP
- Part 8 - Deep Learning: Artificial Neural Networks, Convolutional Neural Networks
- Part 9 - Dimensionality Reduction: PCA, LDA, Kernel PCA
- Part 10 - Model Selection & Boosting: k-fold Cross Validation, Parameter Tuning, Grid Search, XGBoost
Moreover, the course is packed with practical exercises which are based on live examples. So not only will you learn the theory, but you will also get some hands-on practice building your own models.
And as a bonus, this course includes both Python and R code templates which you can download and use on your own projects.
Relevant Courses :-
Artificial intelligence will bring transformative change to all industries, and not in some distant science-fiction future—we are seeing rapidly growing demand for AI-related skills right now, and new artificial intelligence jobs are emerging every day.
Start by learning from-
Intro to AI: https://www.udacity.com/course/c... It's taught by the head of the Google self-driving Car project, and the guy who wrote AI: A Modern Approach. And it's free!
Other free online AI classes do use many of the topics covered in that class as their basis.
Other classes to do next:
https://www.udacity.com/course/c... AI for Robotics
https://www.coursera.org/course/ml Machine Learning
https://www.coursera.org/course/... Neural Networks for Machine Learning
https://www.coursera.org/course/... Natural Language Processing
https://www.coursera.org/course/... AI Planning
https://www.coursera.org/course/... Computational Neuroscience
Skill Set: While the skills in most demand vary from company to company, dependent upon business needs, there are some core competencies that all companies value in AI engineers. Engineers must be able to search through large amounts of data for patterns, possess a deep understanding of algorithms, as well as problem-solving and math skills.
According to recent job postings, the major tech companies expect their AI engineers to be proficient with:
- Java: 60%
- Artificial Intelligence: 57%
- Software Development: 48%
- C++: 38%
- Linux: 37%
- Python: 36%
Old-fashion and modern AI : http://aima.cs.berkeley.edu/
Statistical machine learning : http://scikit-learn.org/stable/
Evolutionary computation : https://code.google.com/p/deap/
There is no quick way to learn machine learning.
Unless you alredy know :
1- statistics, bayesian statistics and statistical inference
2- linear algebra and combinatorics
3- programming in R or Python or Java or … almost any language
4- algorithms and data structures in one of the above listed languages
In that case you can learn machine learning quickly. For that I recommend WEKA machine learning framework and a book which provides you with quick ready to apply recepies :Instant Weka How-to
Happy (quick) machine learning :-)
Learning Machine Learning, this sounds interesting in itself!
So, to get into the matter, there are certain well-defined steps I can demarcate for you to actually learn Machine Learning.
First things first,
Stage 1: Get your math in place.
Do online courses on :
- Convex Optimization. [Online Course on Convex Optimization NPTEL]
- Linear Algebra.[Online Course on Convex Optimization NPTEL]
- Probability and Statistics.[Online Course on Probability and Statistics NPTEL]
- High School Calculus.[Calculus Khan Academy]
Certain Books that could give you some insight into the required math, the link will direct you to the pdf of the books.
- Linear Algebra and Its Applications by Gilbert Strang.
- Introduction to Probability and Statistics for Engineers and Scientists by Sheldon M Ross.
- Convex Optimization by Boyd.
- Calculus by Gilbert Strang MIT Press
This stage needs some time. Give it a lot of attention, hold on and be patient.
Now, that the math is ready. Let us build some programming skills. We will focus on then basics first. I am biased for Python and R. You can have another preference, but at the end of the day the approach will remain unchanged.
Stage 2: Programming
- Python from Code-academy.
- R from Cyclismo.
- Numpy from the official tutorial.
- Matplotlib from the official documentation.
- Pandas from the official documentation.
- Study of R packages like dplyr, ggplot2, ggvis, plyr, zoo, ts andMASS. [ts is not a package per se].
Stage 3: Learn Machine Learning tools.
You will have to learn certain common topics to build from. They are:
- Regression techniques.
- SVM.
- Classification Techniques.
- Clustering Techniques.
- Neural Nets.
- Decision making algorithms.
- Optimization Techniques.
A conclusive list of ML algorithms is : Machine Learning Algorithm Tour
There are certain books that you should read at this stage, all those books can be found here: 10 must read books for ML
Stage 4: Build
After you have learnt the tools. It is time you build something. There are millions of ML project ideas, try them out. Refer the link : What small projects are best to practice Linear Regression, Logistic Regression, Feed Forward Neural Network, ANN with backpropogation, Bayesian Network, Restricted Boltzmann Machines, and Deep Belief Network? I want to showcase my skills.
Regards.
:)
You learn machine learning only by doing. Theory is fine, but hands on is great. To get you started, look at the following sites:
The Home of Data Science (real-world competitions, awesome!!)
python-scikit (Amazing python packages for ML)
python-pandas (Terrific for loading and processing the data)
keras/nolearn (For neural network)
And use these, all of these to get an idea of how to do ML.
And for blogs , check out for
no-free hunch , which is by kaggle. where winners of competition post their winning solution. Real learning happens here and in the forums
I have recently started to write about ML in my blog at:
Just started it, a lot to go!!
Remember, if some one tells you some thing you may recollect, if some one teaches it you may remember but when you involve and do work, that is when you learn.
Wishing you luck,
Suriya
Machine Learning is one the best course on which future resembles and if you learn it will be very much helpful in the future. As the world is moving towards Artificial Intelligence era you should know machine learning.
Points before starting Machine Learning Course:-
- Choose a language in which you do the code of Machine Learning, I personally believe Python will be great.
- Choose a library from which you can get the implemented algorithms of machine learning, Tensor flow and keras are the best for these.
- Learn the basics and algorithms from the available online courses like:-
You could enroll in Stanford’s online machine learning course:https://www.coursera.org/learn/m....
You have the option of taking the full course for free, or for $79 you will receive a certificate if you successfully complete the course.
The course is made up of videos with quizzes interspersed throughout. The video will sometimes pause and have a short quiz that asks about the material just covered, and then goes on to explain the answer. At the end of a few videos that compromise a lesson, there will be a test. Tests are comprised of multiple choice questions and programming questions.
The course takes place over 11 weeks with a graded test(s) every week.
Thankfully, the amount of machine learning resources and tutorials online has skyrocketed, making it easier than ever to really dive into the subject. However this explosion in machine learning info is a double-edged sword! It can be incredibly hard to determine what resources are most helpful and will give you a real (not just superficial) understanding of the theory and math behind machine learning, as well as the ability to code and implement the right machine learning algorithms for your needs.
The easiest way to really dive into machine learning and commit to understanding the subject is to enroll in an online class. My personal favorite is Machine Learning Foundations on Experfy.
Taught by Peter Chen, who studied at MIT and Harvard and has years of experience using machine learning in industry, the course covers practical applications of machine learning algorithms to solve real-world problems.
As long as you have a (very) basic understanding of Python and R, you’re ready to take the course. You’ll learn when to apply the right algorithm, be able to understand and explain the math of the underlying algorithms, evaluate the effectiveness of your model. Most importantly, you’ll understand how to tinker and improve your models to get the best possible results, a skill that will be invaluable when you get your hands dirty with machine learning.
Andrew Ng’s course here on Coursera gives an easy to understand introduction to Machine Learning without skipping the necessary theory. This involves some multivariable calculus and linear algebra (what you’d be learning in your first year) - a strong motivation for both ML and college Math :)
I’ve also found Siraj Raval’s YouTube channel on Deep Learning very useful (and entertaining). He has great walkthroughs on the latest libraries and tools like Keras and TensorFlow. And since you’ve got experience with Python, the actual programming should be intuitive. His videos involve interesting problems (analyzing Game of Thrones using word vectors, chat bots etc.) and give you an exciting intro to the kinds of problems you can solve with ML.
Good luck!
Having completed it, study from Andrew Ng's online course (coursera) (Coursera).
These will definitely make your foundation rock solid and you will be able to add bricks by bricks thereafter. Be patient. Happy Machine Learning!
My advice would be not to start with a book. If you are not from mathematical background, you will be scared to death and will lose interest in the subject. I would advice you to start with some online course and check out some old Kaggle competition before even thinking to pick up a book. The basic idea is to get an overview of what you can do with machine learning and what purpose each component of your algorithm is solving. Once you get that, you can go deep into that specific component and study it from any good book. If you want, you can check out my article How to get started with Machine Learning
In order to learn Machine Learning, the best way is to learn while practicing. Find reliable learning source like Tensor Flow, Amazon Alexa, Facebook Data, Baidu Open Source etc. Try strengthen your mathmatics/statistics skills as well. Now try to learn, scala or python or Java. Once ready with above three, please try to writr some machine learning code to the available public problems around you. You can find plenty of data online to try your machine learning code and check the output, accuracy etc.
Keep practicing this way to learn machine learning. You can also try doing some intern in any startup who can help you implementing machine learning in real way.
There are several sources to learn machine learning for e.g. coursera, edx, moocs.
whats your mission on that?
What you are going to do with that machine learning course you learned.
If you are about to make high end robots like tony stark then I should suggest you to learn it as professional degree course.
It also increases your profile value, because as it is a demand increasing field.
Also the professional course may contain other parts of AI like Natural Language processing (NLP), Fuzzy Logic(FL) and much more.
And if you are just a beginner and just chilling out to see machine learning then you can go for coursera machine learning module which covers basics of machine learning.
if you chose the latter one, then I should suggest you to workout the assignments , because assignments makes you beginning of the expert.
Because lot of machine learning course contains mathematics based solutions to work on. so if anybody weak on math , do think before you attend the course.
So it depends on how you take the course in your life.
Hope it helps…
Thank You :)
Machine Learning, currently the most sought after skill in the computer science, has plethora of good courses over the internet.
Having a good understanding of the basics and the mathematics behind it is paramount for selecting the best Machine Learning model.Don’t worry you don’t need to be a PhD in Maths to dig deep.
Currently Andrew Ng’s Machine Learning course is on demand and is the right starting point for any beginner.
I would also recommend to check out Machine Learning course by University of Washington, as certain things can be better retained when explained with better graphics, and I believe that’s where the latter stands out.
Once the introduction to Regression, Classification and Clustering has been completed, the next step would be to advance further into the domain of Neural Networks. Deep Learning by Andrew Ng is by far the best course. Once this course is done it will give a holistic understanding of Machine Learning and its facets.
I would also recommend to check out Time Series , as it is not covered in any of the courses mentioned above, but knowing it would be a huge plus as it involves applying Machine Learning to time related data(very useful in Stock Market and company related Finances).
Even after finishing the courses, we have just come half way. From my experience I can vouch that the best of Machine Learning is understood only through discussion. Knowing which Machine Learning model to apply is always going to be a question. Having a strong understanding along with value added discussion is a bonus. Even after a model has been decided on, there are many questions that still needs to be answered in the development process.
In short Machine Learning unlike other facets, needs further tweaking and optimisation on the developer’s part according to the data which can be best understood only through discussion and implementation of the knowledge acquired.
Also check out Kaggle after the courses as it will give a hands on experience on real world data if you are still in college.
PS : For people interested in deeper understanding of the statistical maths involved in Machine Learning kindly refer to the Harvard Lecture Series on Statistics.
Edit 1 : fast.ai · Making neural nets uncool again is another must visit website which helps to build state of the art Machine Learning models on the fly.
Happy Learning!
If your math is weak, you will probably first want to beef that up a little. There are two goals you need to accomplish to be good at Machine Learning:
- Have strong understanding of the math behind ML concepts.
- Get a lot of hands on experience applying ML in different problem domains.
It's most important that you know the basics of probability and statistics well. A lot of learning is Bayesian learning, so make sure you know Bayes' rule very well.
The next most important thing to study is numerical optimization techniques. Almost all the theory of machine learning that I've seen breaks down into some kind of optimization problem. If you're really unfamiliar with numerical optimization, then start by learning about gradient descent. You'll need to be comfortable with Calculus, at the very least being able to do partial derivatives, so if you've forgotten a lot of it then time to refresh.
Plenty of other kinds of math used in machine learning, but if you're starting from scratch, start with my suggestions.
Something to keep in mind is that when you learn these mathematical principles, you generally learn them in the context of 1-dimensional or 2-dimensional problems. But as soon as you start looking at ML problems, you're almost always looking at very high dimensional problems. In ML, it is very common to have data with hundreds or even thousands of dimensions!
And that makes things very interesting, to say the least. For instance, consider the nearest neighbor problem, where you're trying to find a point that is closest to another point. There are some efficient algorithms for doing it in 2 dimensions, and you may already know one. But once your points are high dimensional, that algorithm is no longer efficient.
The fact that having higher dimensional data makes life harder is referred to as the Curse of Dimensionality. A lot of ML is about finding ways around that Curse of Dimensionality, to deal with high dimensional data. But before you even study that, you need to first have a good conceptual understanding of how the math works in low dimensional spaces you can actually visualize.
Once you've got the math down, pick up a good textbook or if you prefer take a free online course through a MOOC. I don't have any personal favorites, a lot of the other answers here probably give good recommendations.
There are A LOT of buzz words used by ML people, so hopefully a good textbook will help you understand the jargon and give a good overview of different techniques. If you have a strong math background, you should be able to understand the theory behind any ML technique relatively easily.
That of course is all just the first goal.
The second goal is far harder and more time consuming, and is the real test of how committed you are to machine learning. Just knowing the theory of ML, unfortunately, won't tell you enough to make you an expert at it. You need to get lots of practice running your own experiments, and using ML techniques to solve problems that are of interest to you.
If you're someone who likes instant results, then you probably won't have much patience for this. Expect to have code that runs for a very long time -- hours or even days. And when the results come back and they're not good enough, then you have to start all over.
And if things are running too slow, then you either have to optimize your code better or get better hardware. If you're learning on your own, you may not have access to better hardware.
Finally, since ML is very broad, you probably want to focus on getting expertise in just one or two techniques. Nobody I know is an expert in all of machine learning.
Note: I myself am not an expert in ML, because I don't have enough patience to dedicate to the second goal. This is just what I know based on my limited experience with it.
Take Andrew Ng's Coursera class if you know nothing about machine learning, have a basic amount of programming, and possess a weaker math background. This would be a good way for you to understand what the field is about while gaining a little bit of experience coding algorithms and working with data sets.
If you have a strong math background, I would strongly recommend reading Elements of Statistical Learning by Friedman, Hastie & Tibshirani, or PRML by Bishop and do all the exercises so you have a rock-solid foundation before you start writing any code. You might also want to look into Vapnik or Murphy (one drawback being that Vapnik is heavily biased towards SVMs over hierarchical models, and it goes without saying that the latter is all the rage nowadays). If you are already familiar with mathematical statistics, I would recommend you look into a rigorous book on optimization. I've heard that Convex Analysisby Boyd & Vandenberghe is an excellent and approachable book on the subject. If you are a math wiz, you could go through half of these in one summer, and such preparation will give you a huge leg up in understanding algorithms and models before coding them, so this is a worthwhile investment IMO.
If you have a solid/intermediate math background and some coding experience you should definitely look for Introduction to Statistical Learning (with Applications in R) by James, Witten, Hastie & Tibshirani. This book is a goldmine of intuition combined with application-oriented problems, and completing the exercises will give you experience in a programming language quite literally tailored for machine learning and data mining applications. Learning From Data by Magdon-Ismail and Mostafa is also an excellent and brilliantly intuitive introductory book and gives you the mindset to be an ML expert. It goes without saying that if a machine learning textbook has 4.6 stars with 101 reviews on Amazon, then it is a pretty damn good ML textbook.
At the end of the day, no matter what your experience level is, you have to eventually code. Even mathematicians working on the theoretical underpinnings of machine learning eventually script models to make sure that some kind of empirical, measurable result is achieved.
- As an introduction, Programming Collective Intelligence: Building Smart Web 2.0 Applications: Toby Segaran: 9780596529321: Amazon.com: Books is really good.
- Machine Learning: Tom M. Mitchell: 9780070428072: Amazon.com: Books is a bit outdated but still the most authoratative book on Machine Learning.
- Part V of Artificial Intelligence: A Modern Approach is all about Machine Learning. It's the most authoritative book on Artificial Intelligence.
Hello,
Machine learning is a highly specific and specialised topic. It is in vogue, however.
I suggest two avenues:
One, the more traditional route: learn about computer programming and Ai- specific languages such as LISP or Prolog. That will show you the challenges involved in teaching a machine to "deduce", which is not the same as learning.
Two, learn more about the human brain or Neural Networks. They don't work the same way a computer might be taught to solve, say, Sudoku puzzles or recognise patterns. A chess grand master can't analyse 20,000,000 moves before making one but they don't have to: they just know that with a chess board in a given state the best move is just "X" because they've been there before.
Trying to create AI solutions to simple games can give you a lot of insight too
Date seed removing machine of Sama Engineering is suitable for several fruits including, dates, plum, olive, hawthorn and so on. A convenient solution for consumers to use pit free fruits. Having different molds and a flexible system to fit with every type of product. New technology making the deseeding process faster, efficient and easy to operate.Dates pitting machine has high integrity flesh rate. Equipment is flexible and effective since startup with such features: 304 stainless steel, keeps the machine easy to clean, thick wall square tube, channel steel welding composition, bolts used to assemble all component parts. Feeder, loads material automatically and then Seed remover machine works with punch pin from center of dates to remove seeds.
I think many folks here already gave good answers. But it depends very much on your current background that you may feel overwhelmed and intimidated. So I want to keep everything short and simple. To do so, all I want to suggest is that: Just take Andrew Ng.'s Machine Learning Course. If you have free time, read some Machine Learning blogs, e.g.,MLWave. Let's just focus on that for a few months and you will know what next things that best fit your need.
Machine design is an important part for engineering applications. But what is a machine? Machine is a devise that comprises of the stationary parts and mobile parts combined together to produce, transform or use mechanical energy. Some types of machines are: lathe, engine, compressor and many more.
A Machine design is an important part of engineering use. All the machines are made up of elements or parts or units. Each element is a separate part of the machine and it might have to be designed separately and in assembly. Each element in turn can be a complete part or made up of several small pieces which are joined together. Several machine parts are joined together to form a complete machine.
Here we list some examples of machines:
Read more at: An Overview Of Machine And Its Types
if you were like me who has taken some lessons on coursera or udacity etc, and you found still not very practical on ML, I recommend Hands-On Machine Learning with Scikit-Learn and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems. It has end to end example to tell you the whole process of ML, from cleaning data, to finding model, tunning model, etc. It covers how to use popular tools like scikit learn and tensorflow. More importantly, it also has great chapters to teach theory of some basic models. I hope it can help anyone who don’t know how to start coding with ML. Have fun!
First of all Congratulations for choosing this filed.
Machine Learning is not easy to start straight away but I am following my friend’s link 10 Top Videos, Lecturers & Courses on Machine Learning for Beginners and Advancedhere.
See if it can help.
But I tell you that you best way to start Machine learning is video lectures, you can see video lectures on Coursera, Youtube and etc. There are many well known courses but I want to offer you Page on youtube.com this one. It's playlist on machine learning.
After watching videos and discovering some fundamental concepts in machine learning it's time to start reading books.
I think that you already know some programming language, in machine learning most frequently used languages are Python and R. If you don't know any of them, and know some others for example: C/C++ or Java it's better to start with python not R.
Good luck.
I am currently following this course and also desire to learn a lot about machine learning. Check out Alex Kamil's answer to What are the best, regularly updated machine learning blogs or resources available?, and its parent question, What are the best, regularly updated machine learning blogs or resources available?
My best advice for getting started in machine learning is broken down into a 5-step process:
- Step 1: Adjust Mindset. Believe you can practice and apply machine learning.What is Holding you Back From Your Machine Learning Goals?Why Get Into Machine Learning?Find Your Machine Learning Tribe
- Step 2: Pick a Process. Use a systemic process to work through problems.Applied Machine Learning Process
- Step 3: Pick a Tool. Select a tool for your level and map it onto your process.Beginners: Weka Workbench.Intermediate: Python Ecosystem.Advanced: R Platform.Best Programming Language for Machine Learning
- Step 4: Practice on Datasets. Select datasets to work on and practice the process.Practice Machine Learning with Small In-Memory DatasetsTour of Real-World Machine Learning ProblemsWork on Machine Learning Problems That Matter To You
- Step 5: Build a Portfolio. Gather results and demonstrate your skills.Build a Machine Learning PortfolioGet Paid To Apply Machine LearningMachine Learning For Money
For more on this top-down approach, see:
Many of students have used this approach to go on and do well in Kaggle competitions and get jobs as Machine Learning Engineers and Data Scientists.
hope this can help you to get expert in Machine Learning. All The Best.
Take an online course
The best way is through an online course. They walk you through a lot of material. There area online courses on Machine Learning, even youtube.
- http://www.youtube.com/watch?v=UzxYlbK2c7E
- https://youtube.com/watch?v=_XiW...
- https://www.youtube.com/watch?v=OB1reY6IX-o&list=PLYx7XA2nY5Gf37zYZMw6OqGFRPjB1jCy6&index=92
You can find more on course sites like Coursera, Udemy, Edx.
Practice
Implement algorithms, apply machine learning to problems, complete online tutorials. To learn Machine Learning, you need to practice with the concepts, ideas, code. There’s plenty of example code online for Machine Learning.
By working on a project that is FUN to you. For example, if you like sports, you can follow this course, which is aimed towards beginners to machine learning and talks about how you can use machine learning and predictive modeling in R to determine which positions in the game of football best correlates with teams’ winning percentages:https://www.udemy.com/intro-to-p...
- Hayek, F. A. v. (1952). The sensory order; an inquiry into the foundations of theoretical psychology. London,, Routledge & Paul.
- Hillis, W. (1999). The pattern on the stone, Weidenfeld and Nicolson.
- Minsky, M. (1988). The society of mind, Simon and Schuster.
- Simon, H. (1996). The sciences of the artificial, The MIT Press.
- Wiener, N. (1988). The human use of human beings: Cybernetics and society, Da Capo Pr.
Or start at the middle. Then go up and down, down and up, dolphin kick.
- Durfee, E., V. Lesser, et al. (1989). "Trends in cooperative distributed problem solving." IEEE Transactions on Knowledge and Data Engineering: 63-83.
- Elman, J. (1990). "Finding structure in time." Cognitive science 14(2): 179-211.
- Eberhart, R. C., Y. Shi, et al. (2001). Swarm intelligence, Elsevier.
- Richards, W. (1988). Natural computation, Mit Press.
- Spitzer, M. (2000). The mind within the net: Models of learning, thinking, and acting
Don't start from the bottom and drown. If you encounter algorithms that are referred to with 4-7 letter acronyms (e.g. FASTHEX), save it for later. Once you develop a solid foundation, you'll be able to go through most of such papers within minutes (even seconds). Start by building up your schema so you can better engage with journal articles later.
You can directly start with Titanic: Machine Learning from Disaster. This is a fantastic way to explore all phases of data analysis and implementing the findings to predict passenger survival in the test dataset. You’ll find an awesome community as well as lots of tutorials to get going. Also learning on implementing will give you the taste of it, rather than studying for hours before any hands on.
As a free resource, you can use Data Science Courses: R & Python Analysis Tutorials | DataCamp, but after sometime you’ll have to pay for the courses. If you don’t want to, search on YouTube for related technical materials.
Now if are ready to pay and learn industry-ready things go with Machine Learning Engineer Nanodegree. They are the best so far.
If you want to get the theoretical background, Coursera is great. You’ll find variation of courses. Although Andrew Ng is the guru, he’ll be using Matlab. So, it’s up-to you. You can also conider this NPTEL module.
Originally answered: How does a beginner start to learn machine learning?
Hello there, I'm currently new to ML, so won't be able to answer this question in detail, but do check out this helpful link here:
Also, I have created a whatsapp group for those interested in Machine Learning. So in case if you need one-to-one help regarding anything in your journey or stuck up with a doubt/query, you can ask the group members who are ready to help you.
To join the group, click the invite link below:
Best of luck!!
I have answered a smilar question, take a look into my answer @ Hari Hara Kumar's answer to What are some tips for someone who wants to learn Machine Learning?
Machine Learning can seem a bit frightening at the beginning but I recommend just to dive right in! The first you have to ask yourself when starting with (ml) is, if your problem is solvable with (ml). Then, the first big and important step you do is collecting data and further preparing the data for training. This can be any data from excel sheets to text files, audio files, images and so on. When it comes to tutorials, there are many great websites with videos and papers on how to start working with machine learning!
Udacity for example is always a good tip when it comes to programming courses. This intro to machine learning course is for free and takes about 10 weeks. The required programming skills are listed with “intermediate”.
Find more infos on how to get started in this Machine Learning for Newbies guide! Have fun! :)
I am on the same challenge. For weeks I've being struggling trying to understand crazy mathematical formulas and trying to convert it to code (because I am a software developer) but I realized that I was missing some core concepts and also a little of history behind deep learning and machine learning (history helps to understand how we reached this level of complexity).
Doing some research about how everything started I came across this awesome YouTube channel.
This channel has a set of playlists with a very nice, simple and clear explanation about the history and the basics of Deep Learning and Machine Learning.
I like Cory Hicks’ answer. And I would recommend something similar. First, learnEngineering, and then add to your toolbelt as an Engineer with Machine Learning.
- Learn Regression (Linear, Multiple)
- Learn KNN
- Learn SVMs
- Learn Clustering
- Learn Deep Learning
- Learn some statistics to understand the math behind it
- Start integrating them in some applications, e.g. a prediction application
- Get to know the ins- and outs of Algorithms
- Learn libraries to help you along the way
- Learn Python (really, It’s the go-to language for ML along with R)
At that point, you’re very valuable as an Engineer. If you can design big software systems and integrate Machine Learning in them all on your own, you’re set! :)
* Andrew Ng's online course (coursera) (Coursera)
* Machine Learning, Tom Mitchell: Machine Learning textbook
* Machine Learning Course Materials of Stanford university: (Machine Learning (Course handouts))
-Machine Learning: An Algorithmic Perspective (Chapman & Hall/Crc Machine Learning & Pattern Recognition)
For starters machine learning by Tom Mitchell is really good. Covers all the content and can be approached by newbie.
Go through Pattern Recognition and Machine Learning | Christopher Bishop | Springer for more thorough understanding.
For Bayesian perspective further explore Machine learning textbook by Murphy.
A very generic book data mining, inference, and prediction. 2nd Edition. can be used as a reference.
Before you go for Machine Learning, you need to know what do you mean when you say word “machine learning”. Read the answers to following questions to know what do you actually want to learn(Machine Learning, Artificial intelligence, Data Science or Deep Learning). These words are very much similar to each other but before you start with Machine Learning, you should know the meaning of all these terms.
Cristóbal Esteban's answer to What is machine learning?
Luis Otavio Martins' answer to What is data science?
Christopher Schrader's answer to What is artificial intelligence and why do we need it?
The first thing you need to do right now in your life is to learn Python and only then you are dressed to start Machine Learning.
There are several courses of Machine Learning available on Internet and when I started learning Machine Learning, I ended up getting confused. So, start with one course and I should also tell you that just doing one course would not be enough. The path you are choosing needs patience and will take a lot of time. The best course that I should recommend you as a beginner is Coursera’s Machine Learning Course by Andrew Ng:
Coursera | Online Courses From Top Universities. Join for Free
After you complete this course, Welcome to udacity.com :
This course is very interesting but not for beginners(and not for those who don’t know Python).
Once you are done with these two courses, visit Machine Learning Mastery, this is what you need to visit to apply all your knowlwdge.
Hope it helps!!
First and foremost I applaud you for wanting to learn a topic that is still fairly new within the industry. Machine learning allows computers to do things that were previously thought to be impossible. It allows data to be used to automate what would take a human centuries to sort out and process. To assist you in your quest to find the best resources on the topic of machine learning, follow the link below and pick your choosing from the list. I personally like, Machine Learning: The Art and Science of Algorithms that Make Sense of Data, by Peter Flach. It does a great job of going into detail, and providing the fundamentals of machine learning, all while being affordable. Best of luck in your search.
Amazon.in: Buy Machine Learning: An Algorithmic Perspective (Chapman & Hall/Crc Machine Learning & Patrtern Recognition)
Then go through the lecture videos on ML by Andrew NG from his Stanford class.
I think that'll get you started.
Hope that helps.
Best way is to get into a Masters or Phd course. Spend good time learning fundamentals.
But thats not always possible.
Also there is no universal best method. Find one that suits you.
If you like to read or study first then go with the books and online videos.
If you like to start with theoretical understanding then consider Coursera (Andrew Ng)
If you like to learn by applying then dig into youtube videos from companies that talk about how they are using ML, read through source code on github (may require basic knowledge of python and libraries used in ML), start working on an application yourself.
There are many methods. Look into your past and figure out what worked for you.
I think Bishop is a great book, but ISLR is unquestionably easier to ingest for a beginner. It will give you a good fundamental intuition about how a lot of the most popular techniques work and why they are used.
Focus on the theory and intuition before specific programming languages. If you understand the methods, they can be implemented in a variety of languages. Try reading some ArXiv papers on machine learning. If you don't have much of a math background, a good place to start might be a non-technical presentation or book. I have one that covers most topics without diving into too much math: https://www.slideshare.net/Colle...
for LAFF Linear Algebra - Foundations to Frontiers
LAFF Linear Algebra - Foundations to Frontiers (www.ulaff.net)
for machine learning, web search, data analysis
Page on youtube.com
Over the past few years, there’s been a lot of hype in the media about “data science” and “Big Data.” A reasonable first reaction to all of this might be some combination of skepticism and confusion; indeed we, Cathy and Rachel, had that exact reaction.
And we let ourselves indulge in our bewilderment for a while, first separately, and then, once we met, together over many Wednesday morning breakfasts. But we couldn’t get rid of a nagging feeling that there was something real there, perhaps something deep and profound representing a paradigm shift in our culture around data. Perhaps, we considered, it’s even a paradigm shift that plays to our strengths. Instead of ignoring it, we decided to explore it more.
But before we go into that, let’s first delve into what struck us as confusing and vague—perhaps you’ve had similar inclinations. After that we’ll explain what made us get past our own concerns, to the point where Rachel created a course on data science at Columbia University, Cathy blogged the course, and you’re now reading a book based on it.
Data Science Online Training In Hyderabad
There is a course on Machine Learning in coursera taught by Andrew. This is an extraordinary course. You will learn many things. So, I would suggest you to take this. It’s free.
There are many courses and books. The course of Andrew Ng in Coursera is very good. Regarding books Bishop’s book: Pattern Recognition and Machine Learning is very complete but a little bit difficult if you are a beginner. If you are starting I would recommend this post about the basic principles of Machine Learning.
Good luck, it is a very interesting subject!!!
Start here https://www.coursera.org/learn/machine-learning
I am a beginner myself to machine learning world, despite being a developer for a long time. This course is taught in Matlab/Octave, which is even suited for wannabe programmers. The concepts are taught in clear and concise manner. Andrew Ng, who is teaching the course, is a legend and is the chief scientist of Baidu.
Machine learning is a very vast subject and sometimes people find complex stuff in it to understand if there is no proper math fundamental .
You cannot learn machine learning quickly of course not just machine learning but any course will take time for you to understand and Learn.
All I would suggest is that to have an overview of the course and if it really enthrals you ,then start on with courses on coursera which are pretty neat and convenient.
Machine learning is an enormous field of study, and there are a large number of applications that an individual can use to learn machine learning. Some of the applications include:
1.Bioinformatics
2.Brain Machine Interfaces
3.Computational Anatomy
4.Classifying DNA Sequences
5.Computer vision, including object recognition
6.Information retrieval
7.Internet fraud detection
8.Structural health monitoring
9.Credit card fraud detection
10.Sequence mining
11.Syntactic pattern recognition
12.Software engineering
13.Speech and handwriting recognition
14.User behavior analytics
15.Stock market analysis
16.Game Playing, and many others.
Some other sources that can be used to learn machine language are from the books and educational websites. Some of the best books include:
Pattern Classification by Duda, Hart, and Stork
This book consists of a nice introduction regarding Machine Learning which can help one to build up one’s intuition.
Pattern Recognition and Machine Learning by Christopher M. Bishop
This is an awesome book which consists detailed information of Bayesian Methods and also covers the dense information on the subject.
To have a good grasp on Machine Learning, it is important for the student to be well-versed with the concepts of probability and statistics, multi-variable calculus, linear algebra, and convex optimization. Some informative books on the related topics are:
- To understand the concepts of probability and statistics read Probability Theory: The Logic of Science by E. T. Jaynes
- Study the concepts of Gilbert Strang for Linear Algebra
- MIT videos for Multivariable Calculus
- For Convex Optimization take a thorough read of Boyd's free book and Stanford Video Lectures
I hope the links and content mentioned above can help anyone to have detailed information in the field of Machine Learning.
Machine learning is the sub field of computer science that gives computers the ability to learn without being explicitly programmed. Evolved from the study of pattern recognition and computation learning theory in artificial intelligence.
Here i mentioned two book name with image, hope you preferred it.
- Machine Learning an algorithmic Perspective by Stephen Marsland
2. Machine Learning Dummies by John Paul Mueller and Luca Massaron
But the real proof is in eating the pudding. Tear open some of these open source libraries (Mahout for example) and know how each algorithm has been implemented. That in my view would give you an excellent grip on translating the algorithms to actual working ideas (which is essential), especially because ML works on top of historic data most of the times and you'd want to know about how to get that data into your algorithm.
I keep myself busy with Machine Learning (ML) these days. Here is the story:
- I began with Udacity’s free Intro to ML course and completed. I enjoyed it. There is not theory more than needed. It comes to business quickly. I think certain technical Computer Science (CS) fundamentals and coding skills are required to start that course. I am a CS graduate I was comfortable with the content: For example I have never worked with Python but I survived.
- Than I enrolled in ML Nanodegree and I am now in the middle of it. There are frequent theory and coding quizzes. And at the end of each topic you are doing a project and uploading it, which is reviewed by mentors personally several times until it reaches an excellent condition. I appreciate the feedbacks of the competent mentors. All together it is worth its price.
The best way to start is by doing Andrew Ng ‘s Machine Learning course on course era:Machine Learning - Stanford University | Coursera
Do all the assignments of this course . Once you are done with this you must go through Pedro Domingus online lecture series for ML.
Further you can polish all your data science concepts by participating in kaggle competitions. Competitions | Kaggle
Matlab and Python are mostly used for developing Machine learning models.
C and C++ can be used but not recommended .
Python book to start with http://www.souravsengupta.com/in...
The course content is excellent and it covers all the fundamentals to get you started.
The course will teach you a concept and then there will be a programming exercise which will be in Octave or you can use matlab also. Once you get ready i.e. comfortable with the programming then you can take up some of the projects in machine learning using some of the open source libraries like scikit-learn: machine learning in Python
Scalable machine learning and data mining
Machine Learning (C++) and there are many more.
I hope that i have answered you question. If you have any doubts feel free to ask me.
Happy Learning!!!
There are some excellent courses being offered in Microsoft's Channel 9 and, best of all, they free. (Dictated in part using SpeechToText Pro).
Aspiring Minds presents AM Data Bootcamp 2016, an online + offline bootcamp on applying machine learning to real world problems. Register and GRAB this unique offering comprising of a MOOC + a data release + a data competition + a one-day workshop. Last date of submissions is 8th March 2016. To enroll now and dive deep into ML : Aspiring Minds University | Boot Camp
There are a number of courses available that might work to help get you started with machine learning. Below are the two that I used to get myself started.
Andrew NG’s Machine Learning course on Coursera
John Hopkin’s University Practical Machine Learning Course on Coursera
I’ll talk about the second one in detail in a post coming next week as well.
There is free material in the web. from Youtube to University lectures.
I like hands on, so ebooks, videos etc.
if you are don't know the basics of python, Java or any other high level language i would suggest a low cost on-line course.
To start try : Machine Learning & AI for Business Bundle
https://stacksocial.com/sales/in...
This is a complete bundle with hands on Machine Learning from 0 to Hero!
if you want to go deeper on AI and Deep Learning try
The Deep Learning and Artificial Intelligence Introductory Bundle
I have both and don't regret till this day!
You can also download free ebooks, however prefer videos and for step by step guides.
Good Luck and never quit!
Do have a look:
Wise set of machine learning resources
The best place to start, in my opinion, is to start reading KD Nuggets every day:
Analytics, Data Mining, and Data Science
After that, I would start reading these books from O’Reilly—and learn Python which is the prime prototyping language of ML: Machine Learning Kit - Get - O'Reilly Media
A course from Udacity or Coursera makes sense too.
To start off from my experience machine learning is more of a Science then a skill. Its not a tool or technique you can learn and then keep doing it every time, everywhere, anytime like cycling. People who really work in machine learning and are improving it day by day are Scientists in nature because machine learning is not a language, its MATHS!
So don’t try to learn machine learning, try to explore and generate your know thesis on it. Experiment, observe and iterate that is what happens in machine learning.
To start off you would want to do:
- Andrew Ng’s online course.
- After that individually study why perceptrons, regression, decision trees, neural nets where made so you can see why the maths was created for them.
- Study technologies that have been made using machine learning like insurance prediction, credit scoring, fraud detection, AlphaGo to analyze how they used machine learning in a customized way to deliver results.
- Experiment like hell! You should be familiar with database and one of the programming languages like Java, Python or C++. For GUI try KNIME and Neuroph. For data operations R or Minitab.
- Find a problem and solve it in your own way. Don’t just do examples which are given for practice. In real world getting right data mix is also a challenge.
- Be patient as it will take time. It won’t be a 4–5 month learning course, it will take years.
The thing in machine learning is that you would have to keep experimenting & brainstorming while learning.
I started by this course Machine Learning - Stanford University | Coursera it will be easier if you have coding and calculus background but that’s not necessary you just would have to make more effort.
You can start from the following online courses:-
- Andrew NG’s Intro to Machine Learning course on Coursera:- This course is considered as one of the best Machine Learning course available online. This course exploits the mathematical aspect of Machne Learning and gives you knowledge from the ground up. But the programming languages used in this course are Matlab and Octave which i don’t feel comfortable coding with. But for the theoretical aspect this course is the best.
- Udacity’s Intro to Machine Learning or Deep Learning:- These courses are for those who just wants to do ML without digging deeper into the subject by using ML libraries such as ScikitLearn and Tensorflow. These courses also give a practical hands on experience on real datasets like enron dataset etc. Programming language used is python
- Siraj Raval youtube channel:- This channel gives you the practical knowledge in a very easy to understand manner. He gives weekly challenges and also provides links to other useful resources. He mostly uses Python for implementing ML algorithms.
My suggestion would be to follow Siraj Raval’s youtube channel and any one of the udacity and coursera course, depending upon your need of theoretical or practical knowledge.
Good Luck :)
There is plenty of online material and courses available. I would recommend you to go through online courses as they will provide a structured way of teaching and give you small assignments along the way.
There are various free as well as paid courses on the Web such as coursera, udemy and udacity, etc.
Andrew Ng has a terrific course on machine learning on coursera and will get you started. It is free of cost and there is also a paid version of it which will provide a certificate.
I also recommend people to get familiar with open-source communities such as github by which you can see and share your code with like minded people.
For Machine learning you just need to follow 5 things…
- Learning from Daily Life. This is very Important. What is your goal in AI? To make a machine which copies us? Right? So, analyse our daily life. A Complex structure of our Society etc.
- Analysing your own brain. How your Brain works? How it gives you the solutions of Complex Problems. How it make connections of those data which you already have. Why your Brain sometime hangs? Emotions, Fillings… this things make our brain very unique.
- Any one Programming language(just for implementing your Ideas…) You can choose Prolog, Python, Java any of them.
- Curiosity. To know more about yourself. How we learn anything. Where those data stores in our Mind? Where the images of Humans stores which you EVER meet. Where smells of anything stores in our brain? etc.
- Implementation of your Ideas. Because what if you have a great idea, and you didn't know how to express it, or how to implement it? This thing requires knowledge of data structures and Algorithms.
Machine Learning is the topic on which world of tomorrow relies. So, for them whose age is around or less than 20 to 25, be READY to see MAGIC OF MACHINE LEARNING.
Have a nice day…
you can start with a few MOOCs like coursera andrew ng machine learning course
Data analysis course
There are many courses available to learn machine learning in either python or R
You can refer to my blog
How to get started with machine learning (Python)
to start machine learning models in python
I learnt more from on line courses like:
Machine Learning - Stanford University | Coursera
Intro to Machine Learning | Udacity
Theory first please.
Even the Engineering fields were first conceived and proofed Mathematically and theoretically, before experiments were conducted to close the research and development loop.
Approaching ML or AI by diving into projects directly will force stalls along your development path while you go back to the material brush up on the core, underlying principles behind some arcane stuff that your peers will be doing.
Without the requisite theoretical understanding, it would be like standing in a room full of people having heated, interesting conversations with each other, but in a language you barely understand.
The strain of keeping up will be detrimental to your mental and psychological health.
http://mastermachinelearning.com , it is one of the best resource to get intro of basic concepts of Machine Learning and in case if you have experience with python then you will get learn how to implement machine learning algorithms from scratch..
There is a lot of stuff present on youtube.
Build machine learning systems e-book can help you with that.
Thankyou
Happy Machine Learning.
Thanks for the A2A
I would suggest you learn a program language. C++ is a good option. It is a solid language and will help you understand the other languages quicker.
Also take some classes in mathematics. Partial differentiation and Linear Algebra would help you out.
Andrej Karpathy's class on CS231n: Convolutional Neural Networks for Visual Recognition and
Andrew NG's course on Coursera are really good.
I would emphasize that you learn mathematics and C++ because it will help you out later on
Both very good advice by Harsha and Partyay.
My two cents: Reading alone will not help, ML is a practical field, you will learn by doing only. So one place is Kaggle. Skills you will need:
- Programming, lots of it. Learn Python.
- Learn Keras/Tensorflow
- Go through Andrew Ng course on ML, it will teach you basics.
- Hinton course on Neural Networks for ML
Another thing that I would recommend Udacity nanodegree on Artificial Intelligence or Machine Learning.
How Do I Get Started?
You can Learn Machine Learning here.
The most common question I’m asked is: “how do I get started?”
My best advice for getting started in machine learning is broken down into a 5-step process:
- Step 1: Adjust Mindset. Believe you can practice and apply machine learning.What is Holding you Back From Your Machine Learning Goals?Why Get Into Machine Learning?Find Your Machine Learning Tribe
- Step 2: Pick a Process. Use a systemic process to work through problems.Applied Machine Learning Process
- Step 3: Pick a Tool. Select a tool for your level and map it onto your process.Beginners: Weka Workbench.Intermediate: Python Ecosystem.Advanced: R Platform.Best Programming Language for Machine Learning
- Step 4: Practice on Datasets. Select datasets to work on and practice the process.Practice Machine Learning with Small In-Memory DatasetsTour of Real-World Machine Learning ProblemsWork on Machine Learning Problems That Matter To You
- Step 5: Build a Portfolio. Gather results and demonstrate your skills.Build a Machine Learning PortfolioGet Paid To Apply Machine LearningMachine Learning For Money
For more on this top-down approach, see:
Many of my students have used this approach to go on and do well in Kaggle competitions and get jobs as Machine Learning Engineers and Data Scientists.
1. Learn Python
If you are new to programming, I recommend that you learn python. It’s an easy language to learn and lot of courses are available on internet to teach you python . I'll recommend pluralsight for that.
2. Learn / Brush up your Multivariate Calculus
Every Machine Learning algorithm requires optimization. Foundation for which is a solid knowledge of Multivariate Calculus and Linear Algebra.
3. Learn / Brush up Linear Algebra
We all know how to multiply matrices, take inverses and calculate determinants. To understand Machine Learning algorithms, that’s not enough ! You need sound understanding of geometric interpretations of these operations.
4. Take a course in probability theory and statistical inference
It is vital to understand probability theory well, to understand why any machine learning algorithms work .
5. Take a basic course in Algorithms
Solid understanding of algorithms is essential to any computational discipline.
6. Take basic machine learning course
Peace
- Coursera - "Machine Learning"
- Coursera - "Neural Nets"
- Neural networks class - Université de Sherbrooke
I would suggest you that there are many free online courses available to learn machine learning here those listed out to help everyone.
A Tour of Machine Learning Algorithms
Get started with machine learning using Python
7 Ways to Handle Large Data Files for Machine Learning
Machine Learning Crash Course: Part 1 Tutorial
Machine Learning Crash Course: Part 2 Tutorial
Machine Learning Crash Course: Part 3 Tutorial
Hope these resources will help you out.
1st of all sign - up on (Any 1 below) :-
“Coursera | Online Courses From Top Universities. Join for Free”
or
“Udacity - Free Online Courses and Nanodegree Programs”
If you chose Coursera, then go to “Machine Learning | Coursera”
There 30 days course including videos, quiz-test etc. Complete that.
AFTER 30 - DAYS :-
(When you completed with course)
Sign - up on “Sign up for HackerRank”
Start practicing on “Solve Artificial Intelligence Code Challenges”
NOTE :-
On “HACKERRANK”, there is “ARTIFICIAL - INTELLIGENCE”, and it's crucial.
First you need to be trained with the appropriate basis in mathematics and computer science. In the case of deep learning, you can see part 1 of the MIT Press Deep Learning book (available online for now, eventually MIT Press will have a real paper book) to either brush up on these or see which areas of math and CS are most relevant. Then you need to read on machine learning (there are several good books, such as Chris Bishop's and Kevin Murphy's, online videos such as Andrew Ng's coursera's class and Hugo Larochelle's videos on neural networks, and you can get a summary of many of the basic issues in chapter 5 of the Deep Learning book). Then you need to start practicing, i.e., programming some learning algorithms yourself and playing with them on data, try to compete in some Kaggle competitions, for example. Try to become an expert at optimizing hyper-parameters and choosing models appropriately. In parallel, continue reading. If you are interested in deep learning, part 2 of my book will give you the basis for the most common algorithms. At that point you should have enough background to start a steady regimen of reading papers that tickle your fancy.
I suggest you take calculus, statistics and probability classes along with numerical analysis since machine learning is all about probability. For example, how confident is the machine that the image you showed it is a stop sign, or a speed sign or a kite. After that move on to learning how to code by choosing a language, I suggest Java or C++ but LISP is more useful in the AI area. From there just mess around by programming and creating your own programs that learn!
Loonycorn is providing easy to understand, simple but not simpler, animated video course for machine learning. its divided into 18 sessions, 20.5hours long course video and 82 lectures. its name is Machine Learning, NLP & Python-Cut to the Chase : From 0 to 1available on Learn Online, Teach Online
You just need to be high school passed, and mathematics will be helpful but not mandatory. its learning level is beginner to Expert level.
This is the best ML class ever and ever.
It's 11weeks long course. I have spent nearly 5weeks to finish. It's not very difficult but it needs your concentration profoundly through course's videos. You had better learn it according to real example in the world rather than understand theory. Try hard to finish assignment and keep moving other courses in coursera.
Best wishes.
http://www.amazon.com/Programmin...
Machine learning is one of the hottest domain for the time being.I would like to share a blog on how you can be a good ML engineer.Please go through the blog.I think it would be helpful
How To Become The Master Of Machine Learning
First of all I'm not a master of ML. But I'm working with ML and using it to solve problems.
I will tell you how I learnt it…
It's not like your taming a Robot or designing some great I-ROBOT stuff. Your daily work will be mostly IMPORT SCIKIT-LEARN & IMPORT NLTK .. So to do this first of all you need to know how to code in Python.. Learn some basics, open a terminal code code code. !!
Once you are comfortable enough to understand how to write logic with Python you can Call some ALGORITHAMS from SCIKIT-LEARN yo do the MATH for you… For this you need to know which algorithm will do what.?? So the next step learn the Types of ALGORITHAMS from basics not the theory stuff.. learn how they are applied in REAL WORLD.. Do you know that the amazon website recommendation system just works on a combination of the two basic recommendation ALGORITHAM . learn stuff like this you can relate to…
learn how to understand a data. Go get some data and try to get tge maximum knowledge out of it by going through it…. Look whats given and whats asked ?.. yup thats it. So in short
- Learn Python
- Learn ALGORITHAMS
- Learn what is data ?
- What is asked out the given data
- Can I get with the knowledge i have
- Learn
- You can code…!
You can do machine learning!
This will sound pretty crazy and maybe a little revolutionary: try reading.
While at university, I took a course in AI and Machine Learning, and the best resources were books and, ultimately, a sympathetic supervisor who pointed our programs that would help me grasp the complexities of coding a program that was capable of learning.
You need to figure out what kind of learning you want to pursue: supervised or unsupervised, neural networks or heuristics etc etc. While I would strongly recommend finding someone who is in the Machine Learning field and trying to get them to lend you advice and hints on what to do, you can also just start by reading. Russell and Norvig write a great book on the subject and then if you go into any university library and look up machine learning, you will find a multitude of books to get the theory down so you can start practising.
Best of luck!
Machine Learning in Action - Peter Harrington
Machine Learning For Hackers - Drew Conway, John Myles White
Here’s a small Tutorial that should get you started in 5 mins Getting started with Machine learning on Linux with Python 3 and Scikit-learn
I had answered a similar question on starting to learn AI , it might be of help.
Start here: The Top 5 Machine Learning Libraries in Python - Udemy
- Learn Python: Core Language
- Learn Python: Machine Learning Models (deep learning and regular)
- Learn Python: Data Wrangling
- Learn SQL
- Learn an approach to Big Data
Starting is really easy.
Just google… machine learning tutorials.
I like this guys tutorials.
Your First Machine Learning Project in Python Step-By-Step - Machine Learning Mastery
https://www.coursera.org/course/ml
Lecture notes nicely explained:
http://cs229.stanford.edu/materi...
After those:
Linear Algebra and its applications - gilbert strang. ( MUST )
patern recognition and machine learning - BISHOP
convex optimization - Boyd
MLaPP - kevin murphy
pattern classification - duda hart stork
Lots of resources here:
http://dk-techlogic.blogspot.in/...
See the following short tutorials for quick understanding of how to study and use ML:
http://machinelearningmastery.co...
http://machinelearningmastery.co...
I learnt the basic out of school. first course is numerical method, the professor who taught this course is a NIPS reviewer, he introduced us many ML concepts; then I soon enrolled an introduction course in machine learning next term. I might continue my journey if I went to grad school.
If what you are looking for is a general overview of machine learning then this set of videos explains the ideas in a simple and concise format: Deep Learning SIMPLIFIED - YouTube
The best way to start machine learning will be to take Andrew Ng's course.
The link to the course is here https://www.coursera.org/learn/m...
This is the best beginner resource for machine learning that I have found.
There are a few programming languages, concepts and techniques one has to learn for learning Machine Learning. These are the skills:
Good knowledge of Mathematics and Statistics.
Good programming skills using R, Python, Hadoop, C++ etc.
Algorithms like: NLP, LSTM, Deep Belief Nets etc.
Great problem solving skills and analytical aptitude.
There is a great book introducing machine learning in Python. Here is the associated git repository with all of the code from the book: rasbt/python-machine-learning-book
For more info you can subscribe to
https://www.youtube.com/channel/...
You'll gain better intuitions on machine learning. It covers machine learning, deep learning, NLP, Computer vision. All deep learning frameworks are covered Tensorflow, keras, pytorch. Neural networks like RNNs, CNNs, GANs have been detailed in discuss.
Good luck
Coursera
Course Catalog for Online Classes
https://www.edX/course/mitx/mitx-6-00-2x-introduction-computational-2836
lots of resources to participate at :
Tutorials | Kaggle
Few famous courses :-
Coursera
Page on edx.org
Page on edx.org
For statistics :-
Statistical Learning
Also keep yourself updated about latest industry trends. Follow the articles posted on these pages. These pages share articles written by AI leaders.
AI DailyDose (@AI_DailyDose) | Twitter
Start with Machine Learning at Cousera. Andrew Ng is super human.
Take first three weeks. If you find that, what you're doing is great work, then complete the course. Jump to Edx. They have a course on distributed Machine Learning with Spark.
Still you find you're doing great work, IEEE Explore is the next place to go. Type ‘ machine learning’ on search box and start reading journals.
Inspired?
Go to Gardner's Hype Cycle and feel the awesomeness of what you've done so far.
Just going to throw a couple of links at you that I found useful when I started learning:
Great intro to different sorts of networks and some coding exercises.
Neural networks and deep learning
Bit of a dive into convolutional networks.
How to Code and Understand DeepMind's Neural Stack Machine
My personal favorite. Look at some of Trask’s other posts as well. He explains it well and builds the code without using frameworks.
I recommend trying it in python first as that is probably easiest to actually get something working in and then you can try to use a framework such as tensor-flow.
It has collated all the best out of copyright and open access textbooks and put them in one place, (for the sake of full disclosure i'm completely biased as I'm a co-founder!)
Chillycon best answer !
- Step 1: Adjust Mindset. Believe you can practice and apply machine learning. ...
- Step 2: Pick a Process. Use a systemic process to work through problems. ...
- Step 3: Pick a Tool. ...
- Step 4: Practice on Datasets. ...
- Step 5: Build a Portfolio.
There is an excellent course on Coursera that Andrew Ng at Stanford teaches on machine learning.
Machine Learning - Stanford University | Coursera
Try looking for video courses on Udemy Online Courses - Learn Anything, On Your Schedule
There are great courses available and at very reasonable price.
I fully support everyone recommending coursera and Andrew Ng’s course is a great way to start. I would add this lecture series from Professor Abu-Mostafa at Cal-tech to get a better understanding of the theory. This should definitely come later after you’ve gotten the basics but it is a great way to really get the ideas behind what you’re doing and can greatly up you’re understanding of the subject as a whole. The big downside is that it doesn’t give you many opportunities to apply concepts but I got around this by trying to code all of the algorithms he talked about after each lecture which really helped with my machine learning coding as well.
(This is just the first lecture in a series of 18)
I also recommend watching at 1.5x 0r 1.25x speed as he speaks pretty slowly.
Its always best to actually dive in if you want to learn swimming.You cannot learn swimming until you swim. So don’t read about it much .Its best time to learn by practice.
Here are some free tutorials on this website in R & Python
How do I learn Machine Learning
Logistic Regression using python
Random Forest for data analytics in R
Neural Networks for Data Analytics in R
K-means Clustering for Data Analytics in R
Start following Nando De Freitas Lectures.
Machine Learning and Data Mining
One of the best professors. It will provide solid background and then you can use any machine learning algorithm according to your problem.
The first recommendation most of them would give is the Coursera course on Machine Learning. Primarily because it is taught by Andrew NG and it is free. The link is as follows:
Machine Learning - Stanford University | Coursera
This course can sometimes be overwhelming as certain concepts are out of layman’s understanding.
There is a much simpler course that I would like to recommend. This course has a lot of coding exercises and all files are available for you to use. I feel this course would be very useful. The link:
Machine Learning and Natural Language Processing Tutorial | ChalkStreet
Do explore all options and learn right! Hope this helped. Happy Learning!
This is a great book for all those who strive to understand the basics of how computers work. Once the hardware basics and concepts of materials used in a computer is clear, you can start learning about various microprocessors from books like "80836 Microprocessor Handbook" by Chris H. Pappas.
Have patience and follow these steps:
1: Complete Any ‘one’ good rated Statistics book and solve its problems
2: Watch any ‘one’ ML video lectures from udemy or coursera with good rating and repeat untill you understand all
3: learn R or SAS or Python ML or any langauge ML libraries
4: Read experts answers on kaggle and try to understand
5: Try any exercise yourself
and also there are few video links for machine learning resources done by data scientist expert.
Machine Learning | BEyond
Since the advent of deep learning (which I discovered in 2002 but who’s counting :) there is fortunately a strong consensus that only neural nets are relevant. Not so long ago many fools would swear than ML was other things like pathetic bayesian nets.
I used to say the few pages in Mitchell’s book Machine Learning on neural nets and particularly the backprop algo. Not so much the deriving math which is a little hard to follow but the idea that you simply naively adjust the weights a tiny bit towards a more correct result for a single training pair and pick training pairs in a random fashion. Much like shaking things in place. It’s really a very crude but potent notion.
The core of ML today is neural nets with backprop. The rest is just a few tricks in how you apply it and those are easy enough to learn.
Because of the popularity of ML today you might find much better teaching resources than the book. Search for neural nets and backprop algo.
First by understanding that the IT model of machine learning is worthless, IT is based on assumptions that perhaps 90% of people in the business of machine learning use as their foundation. That is the manipulation of, using, and transferring, digital information. IT also includes ‘genetic algorithms’ that is the foundation of most of the work being done in this field.
Since the human brain has substantially different ways of operating, we are now very much in the early theoretical stages of understanding consciousness. We are sort of like B.F. Skinner, particularly his book, “Beyond Freedom and Dignity.” He has veritably gone off the radar being replaced by behaviorism. (Forgive me followers of Skinner.
The IT model will just disappear and all the people who support it.
So in answer to the first part of your question, skip IT.
What about the 10% that are left?
- There is DSSim (created 2005)
- Unsupervised Learning
- Dimensionality reduction
These examples from many possibilities are not (in my opinion) IT oriented. Some do used genetic algorithms or other verboten IT techniques, but I do not feel the foundation of these are in IT.
Good luck!
You can go through the books on machine learning , that is prepared for beginners. Many books will be there, you can go to library, or go to shop and purchase one, or you can go online to purchase a best book.
Nowadays you can access learning online too. Many tutorial sites are also available, you can go through the best that is easier and effective to learn.
There is this great website.
You wanna know the name.
You know it.
You can find a lot of pdf about machine learning on internet and you can use programs like Matlab’s Neural Network Toolbox,Wavelett Toolbox and Global Optimization Toolbox. The real problem is not to learn machine learning formula and architecture but to use it in your real problem. You can spend a lot of months to optimize your system. Post-processing data is more important than machine learning ! You will not obtain nothing without using denoising and PCA,the same about curse of dimensionality,overfitting,K-Fold Optimization and the theory of spurious information in limited time series.Enjoy,result is magic!!!
Machine Learning by Christopher Bishop is a very good book to start with. Even “Introduction to Machine Learning” by Ethem Alpaydin is a good book to understand the basics of Machine Learning.
Predicting movie ratings and recommender systems, A. Paterek
The e-book contains a general introduction to machine learning / predictive analytics.
I put together a curated list of Free ML lectures sorted by category and difficulty level atMachine Learning Society. Hover over Free lectures. Feel free to use and write suggestions for quality videos.
Independent study is best done in a group regardless of which course(s) you choose to do first. Form a study group to discuss the problems and homework assignments. Meet virtually or in person weekly or bi-weekly.
All ,Please refer this great cheat sheet on ML :Essential Cheat Sheets for Machine Learning and Deep Learning Engineers Machinelearning
Single line answer- start learning python language.
6 Practical Books for Beginning Machine Learning.
6 Practical Books for Beginning Machine Learning - Machine Learning MasteryYou can begin machine learning journey through reading Andrew ng lectures on machine learning
Why, by gradient descent of course!
[1606.04474] Learning to learn by gradient descent by gradient descent
- Step 1: Adjust Mindset. Believe you can practice and apply machine learning. ...
- Step 2: Pick a Process. Use a systemic process to work through problems. ...
- Step 3: Pick a Tool. ...
- Step 4: Practice on Datasets. ...
- Step 5: Build a Portfolio.
As you have basic knowledge of math I recommend you go through the frequently used algorithms and start projects .if you want to start quickly. There is no need to go into the mathematical details
Understanding Machine Learning with R - uFaber.com
I liked the course by Andrew Ng in coursera.org...
Join Machine Learning course by Andrew Ng at Coursera.
Machine Learning - Stanford University | Coursera
I’m taking the AI course at Udacity. It has a nice mix of theory and projects.