I'm a first-year student at a top 100 university studying computer science. I have looked at all the different fields of software for which I can get into and I am personally most interested in exploring a career in AI and/or machine learning.

Basically, I am wondering what my college studies should look like in order to make my interest a reality. Its obvious that I need to learn computer programming but are there any other less obvious topics which I should study up on? I have heard that I need to know every field of math, quantum mechanics, physics, and a bunch of other stuff, what is the reality of this?

Last question, is graduate school necessary if I want to go into an advanced field like AI? Are there any paths other than graduate school which I can use to get into the career?

Thanks for your help.


[I]s graduate school necessary if I want to go into an advanced field like AI? Are there any paths other than graduate school which I can use to get into the career?

"Go into AI" is pretty broad. What sort of job do you want to be doing? Theoretical research? Software development? Engineering? To get an idea of what jobs are out there you can look through the job postings at Google Research, Microsoft Research, IBM Research, Amazon Research, and so on. All of these do ML and AI.

They have position all along the spectrum from things that only require undergraduate degrees to things that require PhD's. I have no experience with the non-PhD path, so I can't tell you much about that, but a lot of their internships are geared to ML/AI PhD students spending their summers there, and then those same people get their degrees and apply for research jobs at those companies.

I am wondering what my college studies should look like in order to make my interest a reality.

I can tell you what is useful to know for ML and AI, besides programming: In computer science, you need to have a good grasp of the theory, taught in courses like Theory of Computation and Algorithms. Some schools also teach an undergraduate AI course. Machine learning can be viewed as the intersection between computer science and statistics, so basic statistics is important. A lot of AI and ML has to do with (mathematical) optimization, for that you need a good grasp of linear algebra and multivariate calculus. Some methods (like neural networks) require understanding differential equations and partial differential equations (but I would put those down as fairly optional, you'll learn the relevant material if you ever need to).

The reality is, if you are going to go to a graduate program in AI/ML, you'll learn all the AI/ML-specific things you need to learn there. What you need to know to get accepted into the program is very variable on a program-by-program basis, but the reality is that the coursework probably won't be the most important thing in the admission process. If you're going straight for a job out of college, employers probably won't care much about your coursework either. It will be all about how you do at the interview, which will be very variable on an employer-by-employer basis.

At the end of the day, my suggestion is to think about what job you want to end up doing and work backwards from there to figure out what you need to do to get it.

  • Thanks! I would either like to work on software development or engineering of AI technologies. I will look at those companies and see what their requirements are in terms of employment. I guess how I do on the interview is mostly dependent on how well I understand whatever concepts their asking me about which goes back to the coursework in someway. Thanks friend!
    – DrJonesYu
    Feb 25 '14 at 22:29

Firstly, I congratulate you for thinking in these lines at your initial engineering days itself.

My answer for you is that, no subject is ignored to make a machine (lifeless object) intelligent. But still focus on these subjects like Eng.Maths, *data structure (code it understand it), compilers design, os, dbms, nlp, ai, etc-- to expertise in the space of Artificial Intelligence. Don't consider them just as a subjects learnt it like a Pro.

For most of the C.S.E students completing their B.tech, will have two option either research or Development.

But many of them will fail in understanding what they are capable of. For this matter I would ask you to get good mentor first and do some projects on ML, AI. Understand the algorithms. You should do the projects that you are nowhere less than a typical AI developer.

Having all this done, by the end of your course you will be able to figure out either to go for research or development.

As per me,

If any student wants to explore more insights of the Algorithms/Mathematics or want enhance the existed algorithms or really passionate to design a new algorithm they can go for Research.

If any student wants to make business out of the existed technology then they can go for Development.

Hope this will be helpful to any cse student.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.