4 ms·
That's a little bit like saying: don't learn web development, it's too easy, invest in learning fundamentals of computer science instead. Sure, if you want to
by maciejgryka 11y ago
That's a little bit like saying: don't learn web development, it's too easy, invest in learning fundamentals of computer science instead.
Sure, if you want to innovate in the field of academic AI, you probably need to know much more than how to throw some data at a neural net. But there are SO MANY problems supervised learning can solve out there - much like there are so many people and businesses who need a website done.
It's a tool, like any other - and right now it seems very hard to beat. So please go ahead, learn how to use it, and apply it to your own problem domain.
- amelius 11y agoI guess one problem is that deep learning requires a different mindset than most people who are currently in computing are willing to have. I'm not a deep learning expert, but I guess that working in this field requires a lot of trial-and-error: "hmm this doesn't work, let's see what happens if we change this parameter". This is directly in contrast with the more "engineering" or "mathematical" mindset that computer science requires. (Of course, deep learning certainly requires mathematics and engineering skills, but the driving force behind their use remains vague and difficult to grasp.)
- navait 11y agoIsn't the above mindset the mindset used for debugging?
- amelius 11y agoI would say not. While debugging, you are using inference techniques to bracket your bug, and using such an approach you are almost certain that you will find it. Whereas in deep learning, you are more blindly trying things (where those "things" can certainly be rigorous techniques, it is just that they are being applied more or less haphazardly), and you are never sure where you will be arriving.
- tangentspace 11y agoI don't think the mental process is necessarily all that different in pure mathematics. The process of creating new structures and proofs in mathematics definitely involves a lot of trial-and-error and vague intuition. When the evidence mounts that a particular approach is likely to succeed, more effort goes into refining the intuitive approach into a valid proof. Further iterations often build on the original proof by tweaking the parameters to make it more general or change the context, just to see what happens.
- amelius 11y agoYou have a good point. But at least in pure mathematics, you end up with a rigorous proof, whereas in deep learning, you end up with a system that may-or-may-not work. This means that in pure mathematics you can build on your previous results, but in deep learning you cannot (without danger).
- tamana 11y agoRigorous proofs are a formality that gets less attention than you'd guess at first.
- S4M 11y agoHow about the process of creating user interfaces? That's not my specialty, but I suppose one might do lots of iterations like "oh, how about explaining how it works by first launching a pop-up? Ha no, users don't like it and close the webpage right away... let's try...".
- jcfrei 11y ago> That's a little bit like saying: don't learn web development, it's too easy, invest in learning fundamentals of computer science instead. But that's very solid advice, not just for an academic. A lot of the web development jobs are either outsourced or marginalized by newer and more powerful frameworks. It's an unfortunate side effect of the fast moving field of informatics - your skills become either redundant or invaluable very quickly.
- maciejgryka 11y agoThat really depends on what you want to do - I bet there are still people making very decent living after learning how to make WordPress themes in 2005. Sure, you need to keep up to date and constantly learn, but you don't necessarily need to know details about how Apache works if you're just making a portfolio page. I don't want to discourage anyone from learning hard topics - it can be very rewarding and useful. I just object to the sentiment that learning how to use a tool has no value if you don't have an intimate understanding of it. It still gives you the power to solve new problems.
- coldnebo 11y agoIf you learn web development and apply for a job as computer scientist, there's a bit of a mismatch. I think the author is assuming that "data scientist" means scientist more than developer. But I agree, there's more than enough applications coming out of this for developers.
- maciejgryka 11y agoNow it gets much more fuzzy, but for the sake of the argument (after all why are we here? ;)) I'm willing to bet that there are lots of data science jobs that could be done well given a good knowledge of how to use deep learning and no understanding of how EM works. I'm not saying that knowing fundamental (and/or difficult) topics is not useful - it absolutely is! It's just a matter of prioritizing what you learn about. I think if you want to maximize your impact, it makes sense to invest in learning the currently-most-promising tool before going for things with lower reward/effort ratio.
- vivekn 11y agoThe problem with doing that is you keep reinventing the wheel. Use deep learning if that fits the problem, but keep learning about other things like how EM works, variational inference, graphical models etc on the side. One day you might find a problem where deep learning doesn't work as well as some of the other techniques. Sure there are data science jobs that can be done without much knowledge, but people tend to stop when they see math and are just happy to use some API. This IMO is a wrong approach.
- maciejgryka 11y agoYou're completely right. There's a cool quote from http://waitbutwhy.com/2015/06/how-tesla-will-change-your-life.html http://waitbutwhy.com/2015/06/how-tesla-will-change-your-lif...: "I’ve heard people compare knowledge of a topic to a tree. If you don’t fully get it, it’s like a tree in your head with no trunk—and without a trunk, when you learn something new about the topic—a new branch or leaf of the tree—there’s nothing for it to hang onto, so it just falls away. By clearing out fog all the way to the bottom, I build a tree trunk in my head, and from then on, all new information can hold on, which makes that topic forever more interesting and productive to learn about. And what I usually find is that so many of the topics I’ve pegged as “boring” in my head are actually just foggy to me—like watching episode 17 of a great show, which would be boring if you didn’t have the tree trunk of the back story and characters in place." I think learning to use APIs is probably the way to start, but it definitely pays off to keep digging deeper as you go along.