I’m on lesson 3 of the course and am pretty new to Deep Learning. I think I now have a reasonable grasp on the difference between Deep Learning and Machine Learning, with Machine Learning being a lot more domain specific and identifying features of interest to train your model to look for, where as Deep Learning uses a generic equation and then attempts to find the correct weights until the output matches the expected output by minimizing the loss across the data set.
So if Deep Learning can be broadly applied, when would it be better to use Machine Learning over Deep Learning?
@sfkiwi Hey Michael, I’m a fellow noob in this vast world of machine/deep learning.
Now, some parts of what you said were absolutely correct. Machine learning involves a lot more identifying features of interest and fiddling around with them to suit your model (this is called feature engineering) and deep learning uses a generic equation and backprop to find the optimal weights. However, for the other stuff, I think you have it the other way around. Deep learning is a subset of Machine Learning. There are tons of other techniques which have been around for years including KNN, K-means, SVM, Random Forest and so on. Neural Networks (Deep or Shallow) are just one method that can be used from a plethora of options. Each algorithm suits a particular task better and sometimes we use a collection of these techniques together (see boosting and bagging).
Having said that, deep learning is the technique that is revolutionizing the industry and academia. It’s giving us the results that were unprecedented.
For a good overview of machine learning and it’s algorithms, I suggest you look at the ML course from fast.ai itself or the popular machine learning course on Coursera.
Thanks @keratin. After I’ve finished the fast.ai DL course I might try and do the ML one. So with deep learning revolutionizing the industry, would it be fair to say that more and more people are using deep learning over other machine learning techniques. What might be an application where deep learning just wouldn’t work and instead one of the other machine learning techniques would need to be used instead?
Yes! Way too much infact. Deep learning is great and is very promising but it comes with its costs. High GPU costs, Training time, hard to train etc. You’ll find a number of occasions where a simple logistic regression does just as well or even better at a simple problem but people using deep neural networks to solve it just because of the hype.
So, I’m not familiar (so far) with a task that other machine learning techniques can do and neural networks can’t. As far as I know, NNs can do clustering (poor), classification and reinforcement methods pretty well. But there sure as hell are many situations where other machine learning techniques work better than deep learning in much less time and with a much lower cost.
This may point you in the right direction : http://hyperparameter.space/blog/when-not-to-use-deep-learning/
I have completed both Deep Learning Part 1 and Part 2 courses and almost done with the Machine Learning course. WIth my level of knowledge, here’s how I understand it. The differences between deep learning (DL) and machine learning (ML):
- In practical terms, DL is a subset of ML. DL is technically ML and functions in a similar way. Thus, why the terms are sometimes loosely interchanged, but its capabilities are different.
- Both fall under the broad category of AI.
- ML uses algorithms to parse data, learn from that data, and make informed decisions based on what it has learned.
- DL structures algorithms in layers to create an “artificial” neural network that can learn and make intelligent decisions on its own.
Let’s take an example:
ML models like decision tree (e.g.: random forest) do become progressively better at whatever their function is, but they still need some guidance. If an ML algorithm returns an inaccurate prediction, then an engineer needs to step in and make adjustments.
But with a DL model, the algorithms are capable of determining on their own if the prediction are accurate or not.
Would it be better to use Machine Learning over Deep Learning?
Why limit yourself when you can use both in some cases? Example, we can use DL to automate feature engineering and passed the “learned” features to ML model like Random Forest, Ensemble, etc.
Is it a requisite to be well versed with ML before doing DL?