Live data from Hacker News

Ask HN: How can a front-end developer dive into machine learning?

news.ycombinator.com

111–120 of 154 posts

Re: Ask HN: How can a front-end developer dive into machine learning?

#111

Earlier quoted context omitted.

As a computer vision/ML applications engineer I disagree with this. What you describe is someone who is actively implementing cutting edge tech. That is VERY different than what 99% of people should be doing with ML which is: Spinning up some K80s on Azure, installing TF/CUDA/OpenCL, pulling existing pre-trained models off the shelf, and running inference on a novel data set. That's how you get into it as a garden va…

I would definitely extend this to running training as well, but I agree with the concept - for most people, it should be either transfer learning to adapt existing models to their data, or running training from scratch with currently known best practice methods, NN architectures and hyperparameters, but doing it on their particular datasets. Possibly by using mostly existing code and modifying mostly the data input/o…

I think you need a bit more competence to get into the training realm though, because it's a bigger step to create a new model - especially the hard step of data labeling.

Unless you have a novel data set and a way to quickly train you're probably better off using existing trained models in most cases.

I agree with the transfer learning piece wholeheartedly though.

Re: Ask HN: How can a front-end developer dive into machine learning?

#112
post #12

Earlier quoted context omitted.

This is not true and harmful to the progress of the field: http://www.fast.ai/2017/03/17/not-commoditized-no-phd/

Well the article builds around a very superficial view of ML. If you want to do simple recommendation systems or spam filters than O.k. Those are solved problems, hence commoditized. If you want to build novel things, you really need academic-grade ML. If you want another argument, I came from working in VC and startups, and they think they understand ML. Boy, they really don't. They are like kids pretending to play…

"If you want to build novel things, you really need academic-grade ML." is a bit tricky.

If you want to achieve novel (better than yesterday's state of art) results on existing problems, then yes, you really need academic grade ML. Especially for "solved" (i.e. well researched) problems - if the current solution isn't good enough for your needs, then you're going to need serious work to improve on that.

However, if you want to attack novel business problems, then it's quite likely that you can solve them without needing to solve any new ML problems. You have to know what "instruments" are available, and you have to be able to read&learn how implement a particular solution that you choose, but generally you just need to squint hard enough to map your business problem to one or more ML tasks that have a known solution.

Re: Ask HN: How can a front-end developer dive into machine learning?

#113

Earlier quoted context omitted.

I would definitely extend this to running training as well, but I agree with the concept - for most people, it should be either transfer learning to adapt existing models to their data, or running training from scratch with currently known best practice methods, NN architectures and hyperparameters, but doing it on their particular datasets. Possibly by using mostly existing code and modifying mostly the data input/o…

I think you need a bit more competence to get into the training realm though, because it's a bigger step to create a new model - especially the hard step of data labeling. Unless you have a novel data set and a way to quickly train you're probably better off using existing trained models in most cases. I agree with the transfer learning piece wholeheartedly though.

Data labeling isn't hard, it's labor intensive, which is an entirely different resource. If the business goal is valuable enough, then a non-tech manager without any special expertise can organize twenty man-months of grunts to do the labeling, three man-months of cookie-cutter junior dev work for tools of labeling and data management, and a single man-month of an external consultant with proper expertise to write sensible guidelines on how the labeling should be done and supervise the process. All of which will cost something comparable to a the annual cost a single ML developer.

Training models often is tricky, but it's not that hard, my experience shows that decent undergrads learn to train standard models on their own datasets after a single one semester course, and train quite difficult models after two semesters; so teaching/learning basic ML takes comparable time and effort to e.g. teaching/learning basic JS frontend development.

So if some company's IT department has some minimum ML skills, lack of expertise shouldn't be preventing them from training models. And even more so, using your own data (IMHO) is the whole point of adopting ML; if the problem is so generic that you don't need to adapt it to your data, then you shouldn't be learning to use ML but rather buying and integrating a SaaS API run by someone else.

Re: Ask HN: How can a front-end developer dive into machine learning?

#114
post #41

Earlier quoted context omitted.

Was your undergrad in computer science or did you 'hop' into the masters?

Liberal arts troll reporting. Starting my prereqs for a masters in CS this summer. It'll take me quite a bit longer to complete than someone who started with a BS in CS (basically I'm taking enough undergrad courses to fill several semesters, before even getting to MS work). However I was a developer for several years before this leap, and I feel pretty comfy with math things. Also working on reproducing papers to de…

Consider a MS in Math (or another BS) vs. CS. The Math will transcend the pace of CS...machine learning today, what will it be tomorrow? Whatever it will be it will need to leverage math (at least initially so that others can stand on their shoulders).

Re: Ask HN: How can a front-end developer dive into machine learning?

#115
post #41

Earlier quoted context omitted.

Liberal arts troll reporting. Starting my prereqs for a masters in CS this summer. It'll take me quite a bit longer to complete than someone who started with a BS in CS (basically I'm taking enough undergrad courses to fill several semesters, before even getting to MS work). However I was a developer for several years before this leap, and I feel pretty comfy with math things. Also working on reproducing papers to de…

What graduate program is this? Most MS programs I came across make you take CS pre-reqs before applying.

> basically I'm taking enough undergrad courses to fill several semesters, before even getting to MS work

Re: Ask HN: How can a front-end developer dive into machine learning?

#116
post #108
post #71

Earlier quoted context omitted.

I work in machine learning and I don't think a 3 months course is going to transform you in a machine learning engineer. I think you need at least the time you took. You need to learn the maths, statistics, etc. Apply those tools to real problems, get some experience with different problems and techniques. And, finally, be involved in some type of research. Because machine learning is evolving so fast, you need to le…

Any insight for someone that already works as a bioinformatics scientist that wants to move into deep learning? I've got the programming, math, some stats, and am currently involved in research, but I only know a little about deep learning. I'm currently working my way through the course.fast.ai deep learning courses and am going to do Part 2 when it is released. Any other resources that would be useful for getting a…

I would say to you to go to kaggle and get your hands dirty in any competition related with bioinformatics. As you already know the domain better than other people in there you can focus on learning deep learning.

Re: Ask HN: How can a front-end developer dive into machine learning?

#117

Earlier quoted context omitted.

You are over generalizing. I am a bootcamp grad who specialized in undergrad in electrical engineering. I worked for a few years as a research for the one of the top tech universities in the country; I have found that I have a stronger math and physics background than many CS grads. However, many times when doing something I have been stopped by saying "wait aren't you a bootcamp grad? can you even understand this?"…

How is he over generalizing? It's just a very simple fact that 90% of the bootcamp grads can't program their way out of a paper bag. In fact, most self-trained programmers are vastly better than even the best bootcamp graduates. The problem with bootcamp grads is that they don't know what they don't know. And they don't know a lot. Undoubtedly some of them will turn out to be great programmers, but not after 3 months…

Again I think you are overgeneralizing since I follow the careers of my class and at least 1/3 of it is doing extremely well in their careers. I think you should be able to program a "paper bag" working at companies like Pivotal Labs, Microsoft, Pinterest, Airbnb, etc. which is where my classmates work at. Maybe I'm not interacting with the right grads though or have a representative sample set, but then again I know you pulled that 90% number out of thin air.

And you know how I know what I don't know? I constantly read, get mentorship from senior engineers at my company, build side projects, etc. The learning process hasn't stopped and it hasn't for many of my colleagues.

I do agree self trained programmers are better, because frankly thats way harder.

Re: Ask HN: How can a front-end developer dive into machine learning?

#118
I'm a front end developer who was in a similar position as you! I'd highly recommend giving this playlist a shot: https://www.commonlounge.com/discussion/81f5bbcfea4e44b9b2bd...

From the description: These tutorials have been chosen to maximize learning curve, i.e. learn the most in the shortest amount of time and cover topics from basic deep learning all the way to research done within the last 1 year.

They cover significantly more material than a typical deep learning course and took me lesser time. Good luck!

Re: Ask HN: How can a front-end developer dive into machine learning?

#119
I don't usually comment on HN but when I do...

Kidding aside, I've seen these kinds of posts so many times and I want to make sure that for those that are thinking "strategically" about their profession, career and passions then I would advise to buckle down with a good BS in Math at a minimum (or CS).

But why? Im your older self telling you that you will grow to really really like and enjoy programming, computers, tech etc. and may want to continuously dive deeper. And when you attempt to do that it all comes down to Math. So save yourself a ton of time and money and just do it, close all your browser tabs, cobble together all your transcripts and get into a Math program (if you already have, go get a MS in Math at a uni that has a strong CS program).

Re: Ask HN: How can a front-end developer dive into machine learning?

#120
post #71

Earlier quoted context omitted.

I work in machine learning and I don't think a 3 months course is going to transform you in a machine learning engineer. I think you need at least the time you took. You need to learn the maths, statistics, etc. Apply those tools to real problems, get some experience with different problems and techniques. And, finally, be involved in some type of research. Because machine learning is evolving so fast, you need to le…

As a computer vision/ML applications engineer I disagree with this. What you describe is someone who is actively implementing cutting edge tech. That is VERY different than what 99% of people should be doing with ML which is: Spinning up some K80s on Azure, installing TF/CUDA/OpenCL, pulling existing pre-trained models off the shelf, and running inference on a novel data set. That's how you get into it as a garden va…

You are missing a lot of things that you don't know. If you want to do machine learning at some point you have to train a model. You need to know how to clean the data, how to create the train/validation/test set, how to measure how good your model is, how to compare to other models you trained previously. If the model is not performing correctly you need to know why. You need to know the trade offs between precision and recall. This is like 95% of your work, the other 5% is running the training in Amazon or whatever you want to use.

I have worked with people who get a training example code and apply it to a dataset. And few weeks later they were still pulling off their hair because the model wasn't working in production but they have such a great results in their test. I took a look to their way of doing the training and I could point to so many errors they were doing why the model will never work in production.

That is not cutting edge, but at some point there is a new model that works better, and you should understand why in order to improve you current model. So probably you will have to read the paper and understand it.

Post reply on HN