Ask HN: Is a masters in ML worth it?
With all the new developments and AI startups, I have been considering going back to get a masters in ML/AI concentration. I have about 5 YOE in non ML software engineering but want to work for these cutting edge tech companies. Will a masters in ML give me an advantage when applying or is it not worth it?
71 comments
[ 3.1 ms ] story [ 177 ms ] threadI had one student who did all the coding for a successful project that we wrote a paper about. I've talked to others who feel like they are "over their head" but are working on teams with people who know how to do all the math. That might be OK because there is a lot more to successful ML projects than being an individual contributor: very few people know how to manage ML projects and if you learned something about that it could be highly valuable.
If you study for a PhD you will definitely learn the math, but you've got an entirely different problem that you could be out of the workforce between 5-10 years and the market could look entirely different then than it looks now.
Do you mean because of automation?
> but you've got an entirely different problem that you could be out of the workforce in between 5-10 years
Thanks for highlighting this!
As someone starting to wade into the ML project management space, would you be able to share any resources on the topic that you think would be helpful?
How long is a masters going to take? Three years? What's the ML landscape going to look like in three years?
I don't know the answer. In three years, ML could have pretty much maxed out, and people could be not hiring for it any more. Or in three years a masters in ML could be the golden ticket. I don't know. I don't think anyone else knows, either.
My impression is that "these cutting edge tech companies" are not easily able to find as many qualified candidates as they want right now. Emphasis on "right now". Is there something you can do to become qualified (by their definition) that will be faster than a masters?
(I'm pretty sure that their definition of "qualified" has to be less than a masters - there hasn't been enough time for there to be very many ML masters degrees yet.)
I don't think it is. Investment is being made at an institutional level in a way that was not happening for crypto.
We are deep in the midst of the hype cycle right now, but if the hype pans out, ML will have a transformative effect on the tech market (or world for that matter) akin to the internet itself. In that scenario, ML expertise at any level will be a golden ticket.
I wonder how many times that's been said in the last 15 years on HN.
Make reference implementations from a couple recent papers, publish them on GitHub. Fine tune a demo model to show off during an interview.
Thats shows you lean into the work, not memorization of academias circumlocution
Actually implementing methods from recent papers will give a real education and at the very least a really damn impressive portfolio, if not some notoriety on its own.
A master's will almost certainly do one or more of 1) Getting you past the resume screener and the posting's absurdly high education requirements 2) Showing that you are not dumb 3) Showing that you are willing to put in work 4) Communicating that you might actually know how to do stuff 5) Letting the hiring manager brag about hiring someone with a master's in ML instead of a bachelor's.
So how do you get a job in AI without dropping to an intern's wage?
(As an aside, I also think "job in AI" is a little to abstract to comment on in many ways since the term is so overloaded in 2024)
Keep in mind that most machine learning fundamentals haven't changed for decades. While new architectures/trends are always emerging, the lessons that you will take away from an academic program like OMSCS will be relevant for the rest of your career.
The only worthwhile related masters degree, IMO, would be in large AI from a top-tier university.
Lol this does not currently exist. Sure some unis are doing LLM research at the doctoral level but no masters program is going to cover anything but the barest of basics of training or finetuning an LLM. You're honestly better off hanging out on r/localLlamma and r/machineLearning to keep up to date because degree programs are hopelessly behind.
Maybe theoretical work such as developing fundamentally new neural network architectures that don't need to be proven out with a 7+ figure budget for training the model? But that would be more of a labor of love than a career strategy.
- The experience is what you make of it, how challenging a course-load you choose, etc. It is often possible to coast thru these programs by taking the easiest classes, if you just want the degree. It is also possible to really go off the deep end and learn a ton, if you want to put in major hours.
- Office hours with professors made it worth-while. I utilized almost every one and grilled the profs hard with questions. I imagine you can get this for free if you work at Google/Meta/etc but I didnt have access to that type of intellectual sounding board, so the MS made a lot of sense.
- Degree diversification makes sense. I had an east coast ivy league undergrad, so I wanted to balance that out with a west coast technical institution with a very different alumni base, so I chose my MS program accordingly.
- The network matters. Find a Uni with a great network.
- Ecosystem matters. Find a Uni with a great ecosystem of startups, accelerators, VCs, and FAANG workers who are adjunct. That limits you to Bay Area and possibly NY/Boston in the US, but I think people underestimate how valuable this is. I compared my undergrad (rural Ivy league) to grad (Bay Area) and the difference was night and day. There is just very limited ecosystem possible when the University is stuck in the mountains.
- Job placement can be good or bad. Uni recruiters have their "target student profiles" whom they work with to place them at top companies. If you arent on their "target student profiles" list, they wont help you. I spoke to great students in 2021 graduating at the absolute peak of the tech hiring craze, who had been sent away by the university recruiters noting "there are no jobs now."
- To learn deep ML you need to start a hard-startup and dive deep into it w/o a dayjob. I did. I did an ML/CV startup diagnostics firm focused on medical imaging. I learned more in 3yrs than I did in 10yrs in industry. I did this in parallel with the MS in DS and that would a wonderful combination because the campus had numerous benefits for students with startups. I could also run hard problems I encountered by my professors and TAs. The MS gave me theoretical knowledge and the startup forced me to truly learn things because otherwise I couldnt ship.
- A small number of students (15%) were outstanding and I keep in touch with them, they made the experience worth it.
- A large number of students (30% ?) were not paying anything for the degree, often it was being paid for by the US Government as part of US Gov benefits programs. I'm sure it was worth it for them. In some cases they didnt value it as much those paying out of pocket. I saw some completely free-riding and doing no work and leaving most of the effort to team members.
- Ambitious projects get seen. I had many, many employers reach out and try to hire me after seeing my masters projects. But you have to learn to manage, market, document and be very vigilant with whom you work with. One free-riding student can seriously tank a major project, and you end up suffering. A cohort of equally ambitious students is unstoppable and a pleasure to work with.
If you want, you are welcome to email me and I'm happy to speak to you on the phone.
Also some stats, optimization, and linear algebra hopefully, but most of the data science degrees focus on the tools.
That said, if you want to get into machine learning, I've been seeing that increasingly many entry-level machine learning jobs now require a master's degree of some sort. Be aware, though, that these jobs may not be glamorous. I've go a master's degree myself, and usually see all the really exciting work get handed to colleagues with PhDs. I still find it to be a rewarding career, but that's possibly because I enjoy the work itself, and am not particularly worried about the glamor.
It may also be worth pointing out, while all of my colleagues do have at least a master's degree, none of them have one in machine learning specifically. Typically it's one in some other hard or social science. Basically anything that builds a strong foundation in statistics, linear algebra, and research & experimental methodology. The actual machine learning part of the job is kind of the easy part, and mostly belongs in the top row of that "what people think I do / what I really do" meme. I did have two former colleagues who started out as software engineers and then got a master's in machine learning / data science / whatever in order to pivot to AI/ML. Both of them really struggled to settle into the work, and ended up reverting back to just being software engineers, only now with a lot more student debt.
Im also thinking of doing a masters at georgia tech or something, or just diving in, but not really sure what to do. I just know Ill regret it if I never do it.
You've put a PhD amount of work into industry. Unless there's a specialization you have a passion for, what are you hoping to get out of it? Or is it that you just liked school?
I genuinely just enjoy thinking about theoretical concepts. Its the one thing I found to be a natural driver for me, where I can find myself walking in circles thinking about something days on end. Ive put an unhealthy amount of the last 3-4 years or so for example thinking about pattern composition with no practical benefit.
Never wanted to work in corp in the first place, but I wasnt a super achiever back then and the money was good.
I do miss school and think Id be happy learning abstract mathematics, but my real interest is in knowledge representation.
On the other hand, I have little interest in tech, and even less interest in working in industry and after 8 years I can build pretty much any application and scale it to millions of users which is good enough for me. Not interested in promotions, making more money, being CTO or whatever
> I can build pretty much any application and scale it to millions of users
Can you build the cloud it runs on? Can you write a database? An OS? Design a motherboard? It's hard to run out of things to learn in this industry.
As to your second point, no I cant do any of that. Theres a million things for sure. If I could pivot from being a backend/web engineer to writing OSs or compilers or something thatd be another story, but its hard to make that kind of change. 99% of the jobs on the market are for some kind of consumer application, and I literally have zero interest in learning snother framework or tooling.
I eventually quit and did find a job with a smaller company building math-heavy analysis software for an engineering field. I'm quite happy with my choice; I pick my language and tools, I have complete agency over my part of the product stack, and I solve interesting problems. Sometimes I entertain the "what-if," but I see the ML industry as stuck in a massive bull-trap bubble, with a lot of people working on "products" that add zero value to their company's portfolio.
I don't chase easy money, I chase interesting work.
Those programs tend to show me that you're interested in and have done the more boring but foundational coursework that is often cut to make the sexy degree programs. That means that hopefully you won't be upset that 100% of your job isn't deep learning, and that you'll be better suited to pick the right tool for the job.
At one of my last jobs, there was a machine learning engineering team (all boys) and a data science team (all girls and gays) who had the same ML chops. The DS team ended up getting more models into production and more research published than the ML team because they had more "soft" skills to navigate the problems the org was facing. When someone in leadership would say "we're having issues booking appointments", the ML team would set off building some fancy deep learning model while the DS team would generate hypotheses with stakeholders, do some exploratory analysis, run a few prospective studies, and then use those results to inform some regression models that would end up in production. It wasn't as sexy as some deep learning model, but the leadership team wanted full interpretability of their model so deep learning was never going to be acceptable. I generally think of these kinds of skills being taught more the stats, applied math, or epi programs than in the designer ML programs. ymmv
I strongly prefer folks from non-specific degree programs who come with a desire to learn as opposed to deep experience in a program tailor made for a specific niche subject where degree candidates learned on absurdly simplistic or unrealistic data and models.
The modeling itself is largely meaningless and simple to execute against. It’s the data and the insights that matter and I haven’t yet seen a niche designer masters program graduate who actually could show me a meaningful end-to-end project they were truly passionate about.
So, some of the "working on the same problems" was intentional-- it would require effort from both teams. But the dividing line was nebulous. The DS team would have preferred to do all of the stakeholder work through building a model, and then hand a pickled model to the ML team to implement in production. The ML team would have preferred to have the DS team scope the problem and hand off to them to do anything involving any form of modeling. It was a total mess.
But I have never worked at an organization where this has gone well, so I don't think it was an issue specific to that org. If you're involved in data things, you want to do interesting work and there's only so much interesting work to go around. And, ultimately, the vast majority of organizations don't have a need for tons of people to be doing the really technical aspects of ML/AI/etc. SO much of the work is scoping problems, cleaning data, worrying about pipelines, etc... and so if OP or whomever is thinking they're going to waltz into a job and make the next version of ChatGPT, that's really unlikely with anything less than a PhD. Personally, I've found a pretty good home being able to interact with leadership to define nebulous problems and solve those problems with whatever tool is appropriate-- and my success has way more to do with communication/project management/scoping skills than with technical skills (although both are necessary)... and I think those skills are better fostered through the more traditional programs.
What if the data science degree is essentially equivalent to a computer science degree? The program I was admitted to permits students to enroll in graduate-level computer science courses, such as algorithms, networking, and systems, which contribute to the degree requirements.
Would you still hold a bias against those individuals? The data science program I was admitted to is essentially a computer science degree augmented with some statistics and AI courses.
I believe it would be misguided to categorize all data science degrees under a single label and to discriminate against hiring from these programs based on false assumptions.
I'm just saying that I seem to have more luck with people coming out of those traditional programs. But, also, as you add more jobs to your resume, the specifics of your education matters less and less.
>I'm just saying that I seem to have more luck with people coming out of those traditional programs.
Would having a master's in data science and also a traditional undergraduate STEM degree be beneficial?
>as you add more jobs to your resume, the specifics of your education matters less and less.
In my case, I'm attempting to move from a non-technical role to a technical one, with my master's degree serving as my gateway into the field, since my previous job experience isn't relevant. Do you have any tips on how to make my resume stand out to recruiters?
The getting the interview part is difficult: some places will more liberally interview candidates, and others more heavily screen them. The three things that you can change to improve your odds here are tailoring your resume to use more words and phrases from the job description (trying to game any AI or human resume screener), networking to try to bypass the screening stage altogether, and casting as wide of a net as possible. Networking can be anything from having a social media presence, going to various forms of dev events, talking to friends about open roles they've heard about, or even cold emailing people you're interested in (although, if you do this, you'll probably have more luck asking to zoom/coffee for career advice than asking if they have a job available for you). And then, regarding the role you're targeting, I moved into increasingly technical roles starting as a data analyst-- I know not everyone would agree with this approach, but it worked well for me. I was a really technical analyst, who became a data scientist, who worked up the ranks, and then started moving between DE/MLE/DS roles. But this was also back in the days when "data scientist" was a new term, and before it got so watered down-- so maybe with title inflation, my original "data analyst" jobs might be "data scientist" jobs today? Anyway, my point is that I think it's easier to slowly slide in to your ideal role than it is to try to hop directly into it.
The passing the interview part ends up being so much about how you communicate and frame work that you've done. It sucks because this ends up inadvertently screening out really smart/good people that struggle with this kind of thinking (and screening in people who are good at talking but suck at doing e.g., many MBAs). But once you're talking to a live person, I think emphasizing how your degrees (both grad and ugrad) have really prepared you for exactly the role in front of you. You can also often take non-technical experience as evidence of certain components of the technical job requirements. Like, I worked in a restaurant when I was a teenager, and you better believe that prepared me to deal with many concurrent demands from many different sources, and required me to think on my feet about the priority/order of operations. So, when I was earlier in my career, I got really good at answering questions along the lines of "you know, I haven't done this work in a single role, but I have experience doing everything you're asking for over multiple roles..."
But it sounds like a lot of the issue you're running into is just getting in the door to begin with? Unfortunately, I think so much of it comes down to luck-- just keep applying to as large of a variety of jobs as possible, and network as much as you can.
e.g. look at Anthropic's job postings for engineering roles -- they don't super-emphasize AI knowledge, they seem to also face a ton of classic engineering challenges. there's as much about managing cloud infrastructure and distributed systems as there is about transformers.
As said a few times below, I'm looking for real work experience. Specifically in the domain.
I also agree, there is going to be a lot more really boring work, mixed in with some new and interesting. Pretty much the job description for most of the IT world.