Never fall in love with a single framework. I used keras, tensorflow, pytorch and deeplearning4j because in enterprise it matters. Thanks Siraj for this comparison.❤️👍
@@nagendrapp2213 Only one book is suffice deeplearningbook.org/ if you are good in Mathematics period. Frameworks are just sugarcoats on actual concept. Also, if you want to start something easy yet informative: Deep Learning with Python by my favorite Author François Chollet. As regards to Videos and Online courses, I believe books are boring 'initially' but they provide solid foundation (so start with books).
fastai is an unfortunate omission. It's benefits are; intended to be an AI practitioner's dream framework; more powerful than Keras, easy to use, concise for teaching ML modeling, internally uses pytorch libraries, great momentum, Apache Software 2.0 license. Disadvantages are it's new.
@Onward hmmmm. well whatever the case may be. i had to check up on that and indeed you are correct. fastai is a unique resource. unique in how practically helpful it is. really cant think of anything that uses a similar method. students from the class get top ranks in _real_competitions_. there is an active effort to communicate well (i.e., the "teacher" actually values skills in "teaching"). you get this library. but its just the effort going into making the resource valuable thats so different. e.g., i did not know swift was good for machine learning. if you had said that to me before, i'd say "thats random". just random.
Coming from TensorFlow (and Keras) and then debugging DL models with Pytorch feels like magic. I love dynamic computation graphs but static are tough as vikings 💪🏻
I loved tensorflow, keras and pytorch. But now I am loving mxnet. And the reasons are: 1. Extremely handy and flexible for research due to its imperative nature (like pytorch), which is so much essential for prototyping and debugging, even for optimization. 2. Insanely faster than any other framework most of the time. Especially when batch size is above 64. 3. Also supports declarative approach (like tensorflow and keras) for light speed execution. 4. It's the only framework that supports data parallelism insanely and easily like no other framework. It's just so so beautiful. 5. And the most important reason why it's the best framework on the planet is that "you can convert your imperative code to declarative" which makes your execution 2x faster. 6. And obviously it has unbeatable aws support So basically the road map is you can debug and prototype in imperative nature which is awesome and very handy, and when you are ready to deploy just convert your code to declarative by hybridising it. The most important challenge for mxnet is tensorflow, which has already captured the market. I used to be a dead tensorflow fan, but since I used mxnet................ You know what I want to say
Are you a mindreader? I was just googling for what framework or online service to use. I'm finally starting my very first AI project. I'm a music producer and I want to make my life easier as a music producer so I want to create a tool that would help me tremendously. You've inspired me a lot, Siraj.
Chainer is very unique in that it you can code with it even from a mobile natively. Uses numpy so you will always get it installed on any newer or older hardware. You don't need expensive new hardware. Thats important as an educational tool for schools. Basically If you want to spread AI spread chainer. Or get the others to use numpy
Yes, his description of Chainer is completely wrong. Chainer is the only framework which strictly follows numpy syntax. BTW, PyTorch's autograd started as a fork of Chainer :-).
I've been playing with PlaidML owned by intel, accepts either Keras or ONNYX front end and most importantly works with AMD GPU's and integrated GPU's on windows for those that own an Nvidia or no GPU at all. Defo worth a look
After reading "Deep learning with python" by Francois Chollet (The author of Keras), I fell in love with tensorflow and keras again. I work in production and working with raw tf is a mess.
@@nagendrapp2213 It's probably the best book written on deep learning for the intermediate practitioners. Check it out on amazon or look up on piratebay..wink wink..
My own evaluation on the DL frameworks I used: - TensorFlow: honeslty, one the sh.ttest DL frameworks I used. Lots of counter-intuitive design choices, bad documentation, huge community but actually a lot of non-skilled people try to use it and at the end, it produces a lot of noise which make it difficult to find the right answer when you face a specific problem. Just look at the number of opened issues on the github repo. Actually, if you don't work at Google, you should not use it. - PyTorch: To me, the best for prototyping and experimenting new models / ideas. Sucks in a production environment though and caffe2 is not that easy to use. - Caffe: The best for Computer Vision tasks, relatively easy to deploy. Still too many useless dependencies which sometimes make it annoying to deploy on un-common systems. - Keras: For learning only, would not even consider to use it in a production environment. - MXNet: Probably the best trade-off between research vs production in 2019. - Darknet: I really like its simplicity and low-level. It is sad that most of the famous DL frameworks are actually a pain to deploy in a real-world contrained environment like embedded system for example. I am pretty sure a lot of people don't realize at which point these huge, fat frameworks are completely useless and over-dimensioned for 90% of real-world use-cases. At the end, we talk about a bunch of stacked matrix-matrix and matrix-vector additions / multiplications. Why does it have to be such a complicated mess ?
I has been using MxNet, until I found some dangerous bugs. Now I am very happy in Pytorch. Python is really easy (easier than MxNet) and extremely powerful.
MATLAB is the easier...with all models ready to implement. A graphical tool to create new architectures. In 2 days I did in matlab what took me weeks to do using Tensorflow.
I really appreciate the passion you have, to share a lot's of information about this amusing field. your inspirational words and scientific words to explore and dig out much more information regarding this technology is very fascinating. I will follow you forever until you are playing with this field.
If you're about to start your project using framework for the first time go with TensorFlow... after some days you will able to know what framework you want according to your needs😁...
Thanks Siraj, you make very complicated topics such fun to learn. I'm a beginner, I'll get my hands dirty with Keras then I'll move on to prototyping with PyTorch and someday deploy using Tensorflow
Hi Siraj, I’m new to Deep Learning and I have a few questions. 1 - Do you know any good documentation to learn Deep Image Matting? 2 - Do you know how can I create my own Image Matting Dataset? 3 - Do you know if there is a good to pretrain my models? I’m new to this so trying to understand a few pieces. I really like your channel. Thank you
Hey Siraj! Great video :) The only thing I'd say you miss is to mention is that TF is just a single facet of TFX. I believe that tools like TFDV, TFT, TFMA are extremely important once you start to get serious with ML and, to the best of my knowledge, these can be used only with TF.
Javier Fernandez If you just want to run inference on the machine, I would recommend tensorflow c_api. However, if you want to train too then you want Caffe or Darknet. Darknet is the only one Im aware of that you can do everything in pure C. However, the learning curve is very, very steep
Shoutout to **dynet**, the even more-natural way to do variable-input modeling - lazy computation graph building (so, more efficient and readable than pytorch). It also has auto-minibatching, which saves a lot of unnecessary wrapping (but pytorch should include soon as well, I hear). Best of all, it works great on CPU, definitely compared to TF and pytorch. My choice for research prototyping.
Siraj invented his own hand gesture now. I wonder if it’s meant for some kinda of cool gesture recognition demo he’s gonna show us soon. Now I can’t get Hello..It’s-a-me Mario off my head.
My research is in optimizing NN for low latency and low power applications. So I have my own NN written in CUDA C++ (both forward and back propagation using different techniques). Which of these frameworks allow to easily integrate, test and compare customized NN written in CUDA C++ with the traditional ones available in their library?
Hey Siraj. I am finding it difficult to implement NN topologies from papers. Could you make one episode where you show your thinking process of going through the paper, figuring out how to implement the NN ? in Pytorch would be great. Also, could you make an episode on Spiking Neural Networks?
@Z3U5 Pytorch1.0 is better now, unless it offer c++ api for us to use the model. mxnet provide high level api like gluoncv, this make mxnet great for production and fast prototype. tensorflow, if the customers did not ask me to use it, I will run away from tensorflow as far as possible, their api are ridiculous poor compare with pytorch and mxnet. api of tensorflow, they looks like designed by scholars who don't have much experiences on real world projects In the contrary, pytorch and gluoncv, their api are designed by seasons programmers who know deep learning
I have a small question related to one of your videos @3:45 you are saying here that "backpropagation is defined by how the code is run" I am not quite sure that I understand what you mean, could you or somebody elaborate a bit further?
Never fall in love with a single framework.
I used keras, tensorflow, pytorch and deeplearning4j because in enterprise it matters.
Thanks Siraj for this comparison.❤️👍
How to start learning deep learning can u suggest me the correct path
@@nagendrapp2213 Siraj shared a very good path on his channel.Just follow it and if have any problem then let me know :)
Did you learn all of these frameworks before you find a job?
@@nagendrapp2213 Only one book is suffice deeplearningbook.org/ if you are good in Mathematics period. Frameworks are just sugarcoats on actual concept. Also, if you want to start something easy yet informative: Deep Learning with Python by my favorite Author François Chollet. As regards to Videos and Online courses, I believe books are boring 'initially' but they provide solid foundation (so start with books).
deeplearning 4 jews
fastai is an unfortunate omission. It's benefits are; intended to be an AI practitioner's dream framework; more powerful than Keras, easy to use, concise for teaching ML modeling, internally uses pytorch libraries, great momentum, Apache Software 2.0 license. Disadvantages are it's new.
uhhhhhhh. fastai is a course? @least when i took it (iteration2), it was. used tensorflow and pytorch (or keras, switched from 2to3).
@Onward hmmmm. well whatever the case may be. i had to check up on that and indeed you are correct. fastai is a unique resource. unique in how practically helpful it is. really cant think of anything that uses a similar method. students from the class get top ranks in _real_competitions_. there is an active effort to communicate well (i.e., the "teacher" actually values skills in "teaching"). you get this library. but its just the effort going into making the resource valuable thats so different. e.g., i did not know swift was good for machine learning. if you had said that to me before, i'd say "thats random". just random.
Coming from TensorFlow (and Keras) and then debugging DL models with Pytorch feels like magic. I love dynamic computation graphs but static are tough as vikings 💪🏻
I loved tensorflow, keras and pytorch. But now I am loving mxnet. And the reasons are:
1. Extremely handy and flexible for research due to its imperative nature (like pytorch), which is so much essential for prototyping and debugging, even for optimization.
2. Insanely faster than any other framework most of the time. Especially when batch size is above 64.
3. Also supports declarative approach (like tensorflow and keras) for light speed execution.
4. It's the only framework that supports data parallelism insanely and easily like no other framework. It's just so so beautiful.
5. And the most important reason why it's the best framework on the planet is that "you can convert your imperative code to declarative" which makes your execution 2x faster.
6. And obviously it has unbeatable aws support
So basically the road map is you can debug and prototype in imperative nature which is awesome and very handy, and when you are ready to deploy just convert your code to declarative by hybridising it.
The most important challenge for mxnet is tensorflow, which has already captured the market. I used to be a dead tensorflow fan, but since I used mxnet................
You know what I want to say
7. Gluon! (touched on tangentially in 1, 3, and 5)
Are you a mindreader? I was just googling for what framework or online service to use.
I'm finally starting my very first AI project.
I'm a music producer and I want to make my life easier as a music producer so I want to create a tool that would help me tremendously.
You've inspired me a lot, Siraj.
Even Rani Mukherjee would never have thought of labeling as TENSORFLOW!
Chainer is very unique in that it you can code with it even from a mobile natively. Uses numpy so you will always get it installed on any newer or older hardware. You don't need expensive new hardware. Thats important as an educational tool for schools. Basically If you want to spread AI spread chainer. Or get the others to use numpy
Yes, his description of Chainer is completely wrong. Chainer is the only framework which strictly follows numpy syntax. BTW, PyTorch's autograd started as a fork of Chainer :-).
Just want to say that I think Siraj is really good anyway. Machine learning is important to the future
I'm very successful with ChainerCV.
Best 13 minutes I've spent all week, kudos on zeroing in on a number of the key points!
As a ML engineer I love using PyTorch both for development and production 🔥
I've been playing with PlaidML owned by intel, accepts either Keras or ONNYX front end and most importantly works with AMD GPU's and integrated GPU's on windows for those that own an Nvidia or no GPU at all. Defo worth a look
So finally I was able to watch a Siraj's video at 1.5x today. So proud of my achievement!! Old subscribers of Siraj's channel can relate.
Same bruh, same
It's honestly pure supprising the number and depth of ML libraries. It's an astonishingly the productivity of people in this field!
Best Deep Learning Frameworks Comparison video
If you are a beginner and expert in python, use pytorch.
After reading "Deep learning with python" by Francois Chollet (The author of Keras), I fell in love with tensorflow and keras again. I work in production and working with raw tf is a mess.
It's a book how cost ?
@@nagendrapp2213 It's probably the best book written on deep learning for the intermediate practitioners. Check it out on amazon or look up on piratebay..wink wink..
My own evaluation on the DL frameworks I used:
- TensorFlow: honeslty, one the sh.ttest DL frameworks I used. Lots of counter-intuitive design choices, bad documentation, huge community but actually a lot of non-skilled people try to use it and at the end, it produces a lot of noise which make it difficult to find the right answer when you face a specific problem. Just look at the number of opened issues on the github repo. Actually, if you don't work at Google, you should not use it.
- PyTorch: To me, the best for prototyping and experimenting new models / ideas. Sucks in a production environment though and caffe2 is not that easy to use.
- Caffe: The best for Computer Vision tasks, relatively easy to deploy. Still too many useless dependencies which sometimes make it annoying to deploy on un-common systems.
- Keras: For learning only, would not even consider to use it in a production environment.
- MXNet: Probably the best trade-off between research vs production in 2019.
- Darknet: I really like its simplicity and low-level.
It is sad that most of the famous DL frameworks are actually a pain to deploy in a real-world contrained environment like embedded system for example.
I am pretty sure a lot of people don't realize at which point these huge, fat frameworks are completely useless and over-dimensioned for 90% of real-world use-cases.
At the end, we talk about a bunch of stacked matrix-matrix and matrix-vector additions / multiplications.
Why does it have to be such a complicated mess ?
What did you use MXNet for? How was the experience?
I has been using MxNet, until I found some dangerous bugs. Now I am very happy in Pytorch. Python is really easy (easier than MxNet) and extremely powerful.
Hi Siraj, great video as always! Any words about fast.ai as a (sort of) Keras for PyTorch?
Probably the best one: Easy to use and great performance with the latest SotA ideas outside the box
i'll make a separate video about that
@@SirajRaval Great! Looking forward to it :)
My fav - Tensorflow and keras..
Wow! I understood basically everything you said! I'm exploring adding DL into my product line.
Pft.. Excellent as always Siraj
Seriously your videos have no equal, you are special.
MATLAB is the easier...with all models ready to implement. A graphical tool to create new architectures. In 2 days I did in matlab what took me weeks to do using Tensorflow.
I really appreciate the passion you have, to share a lot's of information about this amusing field.
your inspirational words and scientific words to explore and dig out much more information regarding this technology is very fascinating.
I will follow you forever until you are playing with this field.
who thinks 'pytorch' is the most nice one? thumbs up!
👍
Pytorch is awesome.
It's really convenient. I do really like Vanilla Tensor flow once I have a prototype hammered out, though.
I prefer Keras
GO Fk URSELF
KERAS ALL THE WAY BITCHES!!!! CHECK OUT ITS FUNCTIONAL API AND THEN TALK TO ME
If you're about to start your project using framework for the first time go with TensorFlow... after some days you will able to know what framework you want according to your needs😁...
Thanks Siraj, you make very complicated topics such fun to learn. I'm a beginner, I'll get my hands dirty with Keras then I'll move on to prototyping with PyTorch and someday deploy using Tensorflow
Hi Siraj, I’m new to Deep Learning and I have a few questions.
1 - Do you know any good documentation to learn Deep Image Matting?
2 - Do you know how can I create my own Image Matting Dataset?
3 - Do you know if there is a good to pretrain my models?
I’m new to this so trying to understand a few pieces.
I really like your channel.
Thank you
Hey Siraj! Great video :)
The only thing I'd say you miss is to mention is that TF is just a single facet of TFX. I believe that tools like TFDV, TFT, TFMA are extremely important once you start to get serious with ML and, to the best of my knowledge, these can be used only with TF.
thanks Siraj, great video for clarification on different DL frameworks
wow you're great - the go to guy if I get my project.......
The fastai library is quite nice. It sits on top of pyrotorch. I’ve been using that to get up to speed on deep learning
What's a good framework for resource constraint devices? Not mobile devices, but more like autonomous machines where C and C++ reign.
Javier Fernandez If you just want to run inference on the machine, I would recommend tensorflow c_api. However, if you want to train too then you want Caffe or Darknet. Darknet is the only one Im aware of that you can do everything in pure C. However, the learning curve is very, very steep
i have used pytorch for a while as a beginner and it was cool atleast for me.
I usually go with Keras and TF..!
Hi Siraj
Thanks for using my tensorflow environment diagram!
Mxnet is the most unnecessarily underrated library which can outperform tensorflow just "yooo it's done".
Have you used it? What's your take?
True label: Rani Mukerji
Predicted label: Tensorflow
Difference: infinity ;-
I like CNTK because it's fast. But it seems like not many people are using it. Now, using PyTorch.
Did not expect that at 2:00 LOL!
Glad you finally shouted out to Sonnet! Highly customizable TF is the best! Though still gotta give some love to PyTorch as well XD
ill go for pytorch
you are beyond amazing!
i am with Tensorflow & Deeplearning4j (Dl4j) :)
I also dont see any commercial frameworks like MATLAB on the list. Just curious if you have looked at how it compares to these major frameworks?
R, caret, forecast, recipes, broom, tsibble, fable, and more!
NIce, thank you, you clarified a lot
Which one should I use for training an AI to play a multi-agent (cooperative), imperfect information turn-based game?
Do you have any videos about any kind of Deep Learning or Networks with C#?
Welcome to the siraj-side.
Shoutout to **dynet**, the even more-natural way to do variable-input modeling - lazy computation graph building (so, more efficient and readable than pytorch). It also has auto-minibatching, which saves a lot of unnecessary wrapping (but pytorch should include soon as well, I hear). Best of all, it works great on CPU, definitely compared to TF and pytorch.
My choice for research prototyping.
Great overview! I particularly liked your suggestions at the end.
Siraj invented his own hand gesture now. I wonder if it’s meant for some kinda of cool gesture recognition demo he’s gonna show us soon. Now I can’t get Hello..It’s-a-me Mario off my head.
Always... The best of the best..... Most informative.... Thankx for every single video man 👍🏻👊🏻
Any ideas about ML Kit? Is it comparable to Core ML, or is it just a fancy name for TF packaged for Firebase?
Which one would you recommend to be implemented on a Raspberry Pi for camera feed object recognition for best performance?
Better use a optimized inference engine for ARM.
I will use pytorch 🔥
Fantastic list - really useful information. Thanks!!
Hi Siraj, great video! What do you think about Brain.js ?
A very good overview, thanks. My favorite framework is DL4J.
Hi Saraj,
Can you make a video on how to use sonnet? And also structure and idea if sonnet? Thanks.
Your videos are awesome for a data science enthusiast
Nice work, always enjoy the quality content!
Awesome, information packed video. I especially liked the "Conclusions" section.
Siraj love your dedication and hardwork for the wizards
I've started learning Tensorflow but my favorite is keras because of lesser amount of code
Great information. Good work with collecting all stuff under one hood. keep it up Siraj
I use keras and tensorflow 👍
xD 2:03 best troll face ever
Pytorch POWEEERRRRR !!!!
Amazing Video Siraj
I used FANN a lot. Wich framework can do the same in an equal easy way?
I'll make my own god damn framework.
That's exactly what im doing
...with blackjack and hookers. In fact forget about the framework.
there you go buddy )))
lol
I did that but I need to learn existing ones for jobs.
Hi, can you make coding videos where you implement the neural network described in recent research papers?
really great video, i've wasted too much time to choose one already
Thanks siraj for this informative video, actually I use keras, and I hope that I Will be able to use tendorflow.
My research is in optimizing NN for low latency and low power applications. So I have my own NN written in CUDA C++ (both forward and back propagation using different techniques). Which of these frameworks allow to easily integrate, test and compare customized NN written in CUDA C++ with the traditional ones available in their library?
Why do you want to do exactly ? Bench-marking your implementation against those frameworks ?
great summary! thank you Siraj
Hi Siraj, any upcoming videos on computer vision domain & newer GAN's ?
check Knet which was written by Julia
i'm taking the deep learning course this semester and we're implementing a scientific paper with it
Thanks! This info what i needed right now.
Positively surprised by what you can achieve with Keras alone - GANs, autoencoders...lots of decent stuff.
Very, very nice video. Thanks :)
Hey Siraj. I am finding it difficult to implement NN topologies from papers. Could you make one episode where you show your thinking process of going through the paper, figuring out how to implement the NN ? in Pytorch would be great. Also, could you make an episode on Spiking Neural Networks?
Great review! Never used anything other than Keras so this is great!
Siraj sir can you do a demo on eager execution of Tensorflow 2.0 ?? Like comparison pytorch with TF 2.0
0:01, tensorflow is sexy
Rishik Mourya Pytorch is ironically more sexier imo...
@Z3U5 Pytorch1.0 is better now, unless it offer c++ api for us to use the model.
mxnet provide high level api like gluoncv, this make mxnet great for production and fast prototype.
tensorflow, if the customers did not ask me to use it, I will run away from tensorflow as far as possible, their api are ridiculous poor compare with pytorch and mxnet.
api of tensorflow, they looks like designed by scholars who don't have much experiences on real world projects
In the contrary, pytorch and gluoncv, their api are designed by seasons programmers who know deep learning
@@computervision557 so true bro, I used to be a tensorflow fan but after using mxnet it changed my mind and now I use it for all my projects.
Would be great to have a retake on this once TF2 is officially released!
if I wanna deploy trained model into Nvidia JetsonTX, which framework is better to use ?
Siraj just tell me that can i implement my yoloV3 model in android phone or not..??
Please just yes or no....
I have a small question related to one of your videos @3:45
you are saying here that
"backpropagation is defined by how the code is run"
I am not quite sure that I understand what you mean, could you or somebody elaborate a bit further?
Great video siraj .. Just get to know about onyx .
wow keep itup !!!!!!!!!!!!!!
Please do some example video about google automl and how use them in android application.
man thank you for this work BEST INTRO
Pytorch... hands-down....
Minimum required knowledge of machine learning when using preferred framework?
Thanks for the summary
Any recommendation for deploying in IBM?
Keras has MXNet as a backend now too.
Tensorflow uses Swift so I use tensorflow ;)
What do you guys think of autokeras?