4 ms·
My question is, it feels like machine learning is reaching its "Rails" stage. You can implement the latest Bi-directional NN or LSTM-RNN using a high level API
by orthoganol 10y ago
My question is, it feels like machine learning is reaching its "Rails" stage. You can implement the latest Bi-directional NN or LSTM-RNN using a high level API that already sits on top of another high level framework. Even beyond the core setup it will do the peripherals - smart initializations, anti-overfitting, split up your data, etc.
Do people who implement (albeit real, useful) deep learning systems, but who have no formal machine learning background, who don't really know much or care about implementing derivatives or softmax functions because the frameworks abstract all that away - are these people getting offered jobs?
- yomly 10y ago>My question is, it feels like machine learning is reaching its "Rails" stage No, I don't think so yet, but even if it did, would it even matter? There would still be world of different between the teams that can build a Twitter/LinkedIn/Github in Rails to someone who knows vaguely how to string something together because they learned it on codecademy
- orthoganol 10y agoA world of difference or a bootcamp and 6 months of difference? It's about barriers to entry, which many claim are insurmountable for mere common developers. A Rails bootcamp gets you close to being employable, and assuming you code, why not for deep learning too?
- dmix 10y agoThis sounds like you're comparing driving a car to flying an airplane. From my understanding, much like before flying, you need a lot of foundational knowledge to work with ML and be productive on your own. You could learn to drive a car, like you can learn to build a Rails CRUD app over a weekend, you'll be bad at it still but you can get to point A->B with little investment. The barrier to entry for AI stuff is quite a high. And IMO will be limited to certain kinds of people who like working on the hard science /math stuff, and have a strong enough early education to learn advanced linear algebra and statistics (for example) .
- sireat 10y agoAnecdotally I think flying is not much harder to do badly than drive a car badly. In many ways flying itself is easier than driving because you have less chance of a collision. The really hard parts are takeoff and landing, not sure if one could learn to takeoff and land a Cessna badly in a week long bootcamp.
- loopbit 10y ago> not sure if one could learn to takeoff and land a Cessna badly in a week long bootcamp Yes, you can. Taking off is extremely easy, you just need to accelerate with the flaps down and pull up at around 90km/h (if I recall correctly, it has been many, many years since I last flew an airplane). Landing is much more complex, but you can do decent landings[0] in normal weather conditions after a few classes. The course I did (as I said, many, many years ago) had 35 flight hours and I did it in a summer (2-3 classes per week, usually 1 hour of theory and 45 minutes of flying) and you were perfectly able to do the exam (and pass) after it. [0] Of course, in the eyes of many pilots, a decent landing is one you can walk away from. A good landing is one where you can use the plane again.
- nharada 10y agoAm I the only one who feels like all that math is required in order to properly implement an ML system? Bugs in ML systems are insidious and tricky, often difficult to find and manifesting in unexpected ways based on subtle issues in the underlying data or mathematics. Having a ground up understanding of why things work the way they do is a requirement to reasoning through all the layers of the system to find and fix issues. Maybe someday all of that will be abstracted enough that you don't need to know math to do ML (like how now you generally don't need to know machine architecture to program), but how soon will that be?
- tjl 10y agoIt might be some time before it's abstracted enough. For example, there's software packages for Finite Element Analysis, but if you don't know the underlying math, you can't do anything more complicated than the basics. Plus, if there's a problem without that knowledge you can't really debug it. I'm guessing ML will be like that for a while. If you want to do something simple using a package is fine, but as soon as something goes wrong you'll need that knowledge to figure out what's happening. For example, for a while there's been work on doing sentiment analysis using machine learning and they typically train them on a data set of movie reviews. It turns out that as soon as you apply that trained system to anything other than movie reviews the actual results are quite poor, but you might not catch it.
- loopbit 10y agoMaybe I'm not exactly the case you are asking for, but let me tell you my experience: I started college in '97 and specialized in robotics and AI. Dropped out during my fifth year (2003) for several reasons (some having to do with the university, others were personal/family related). My working experience begins in a startup in '99 doing web stuff. Now, in my country and in the early 2000's there were no jobs in robotics/AI, so I continued doing web stuff and, through the years I've moved up and down the ladder (I was development director of a multinational, left for a senior developer position because I was bored), lived in 4 countries and moved into different sectors and technologies. AI/Machine learning/Robotics were a hobby and I tried to keep up to date[0], but I had very few opportunities to apply that knowledge in my day to day. In terms of education, I'm a drop out: I went through five years of university and have more than enough university credits for a bachelor degree, but have never felt the need to go back and officially get a degree[1]. I started a master's degree in Ireland and left it after the second module[2]. Now, finally, the point I wanted to make (sorry for the long introduction, I felt it was important to give a bit of background): About five-six years ago, I got my first official position working full time with AI and machine learning[3] and suddenly found that my maths knowledge was definitely lacking. Even today, although I'm always improving, I find that when talking about deep learning, the maths are definitely my weak point even though I'm able to implement models, systems and tweak them enough to get good results. So, to answer your question: Yes, I keep being offered jobs. Maybe not as well paid as someone with a similar level of experience and a PhD and definitely not research-oriented. If the company does have a data science team, those jobs are usually working with them to take their models and integrate them with the rest of the product/s. [0] I went through Andrew Ng, Sebastian Thrun and Peter Norvig courses originally through Stanford Online and I'm constantly following one or two coursera or MITx courses in the area. I also have an account in Kaggle but I don't usually push my results, I'm more interested in the datasets. [1] I'd need to go back to my country and fight the bureaucracy there while trying to get documents from a university that no longer teaches computer science. [2] I felt a bit cheated, to be honest: The syllabus looked great, the content was mediocre at best and the papers we had to do had very little to do with the stuff we learnt and even with IT in general. 4K euros per module (for an online master) and the time spent wasn't worth it just to get an official piece of paper. [3] "Data science", I don't specially like that term and, if anything, I prefer to call myself a data engineer. I don't do science, I don't do research. I can take a research paper, implement it and add all the stuff that makes it useful and production-ready. But I don't call that science.