I hope this is the right place for my question; I've been searching online and hit a bit of a roadblock, so I thought I'd seek some help.

I'm in my late 20s, and I've got a chance to start fresh from an unfulfilling career path, beginning with a bachelor's degree. It's a unique situation, but I'm grateful for the opportunity and fully committed because I believe I've found my true calling.

My passion for AI and machine learning has grown significantly, and I eventually want to pursue a Ph.D. in that field. Now, here's the dilemma: I'm torn between starting with a Bachelor of Science degree in Mathematics or Computer Science. The deep mathematical roots of ML make me worry that a CS degree might not provide enough groundwork in the math and theory necessary for advanced research.

Living in Europe, I can't major and minor like in some educational systems (at least where I live); it's an either-or situation here.

I know one can fill in knowledge gaps through self-study, but I believe starting from the right place will be a massive confidence booster for me.

Thanks a bunch; any help is greatly appreciated!

4 Answers 4


My background is in mathematics: thesis in complex geometry, Ph.D. in something that could charitably be called "discrete optimization". During my Ph.D., I did inferential statistics, essentially analysis of experimental data for psychologists. (Once a few papers were in the pipeline, the lead author married me, FWIW.) It was these papers and my statistical contributions that got me hired in a research job in forecasting. That was in 2006; nowadays such jobs are called "data science" or "machine learning" - these terms did not exist back then. My job title for the last years has involved "data science".

From this vantage point, I would say that CS beats math hands down as preparation for a career in AI/ML. Math is wonderful, but all you need for most of AI/ML is calculus of multiple variables and linear algebra. (Lots of both.) Both of these will happen in your first semesters. Everything beyond that is wonderful, (and in my personal opinion, much more fulfilling than most of what is happening in AI/ML, but your mileage will almost certainly vary from mine) but essentially useless in AI/ML. And you will get most of what you need in these things in a CS bachelor program. Most of what is data science nowadays happens in CS departments, and you will learn most of the tools for AI/ML in CS.

What I most use out of my math preparation is the way of thinking that I got inculcated with there. Mathematicians object when I say that studying math is essentially brainwashing: the way you think is reprogrammed, and consciously so. What you end up with is precisely the way of thinking you need in any analytical field, from management consulting to AI/ML. This is absolutely great, but unfortunately you don't get to learn the actual tools you will be using in that career...

That said, I would very much recommend a third option beyond math and CS: statistics. That CS departments managed to brand themselves as the Machine Learning experts is in my opinion the greatest feat of scientific marketing ever. It is essentially the Machine dog wagging the Learning tail, because the field is all about learning from and dealing with noisy data, i.e., teasing signal out of very noisy data. And that is what statisticians do. Having data science done in CS departments is like having physics done in the tooling workshops, or in the engineering department. Don't get me wrong: engineers are absolutely fundamental to any kind of physics research - but engineering is not physics, and computer science provides the tools used in data science/machine learning, which IMO is a branch of applied statistics. Computer scientists are very good at what they understand. But in my experience, while they are great at designing and developing databases and software to analyze data, they have a very hard time with the specific way of thinking that is required for data science, most of which can be summarized as "being comfortable with noise" (Kolassa, 2016 - ping me if you are interested in that article, and in the meantime, this may be interesting). And of course, the same applies to mathematicians. Both mathematicians and computer scientists can become good data scientists. But both typically underestimate the statistical knowledge and understanding they need. (Conversely, statisticians typically have an easier time understanding that they will need to acquire CS knowledge.)

So, after that little rant, I would recommend you prefer CS over maths if your goal is ML/AI - but that you take a very hard look at the statistical part of any ML program you might be thinking of attending. Ideally, see whether the university actually has a school of statistics, or at least whether anyone in the data science track actually has statistical credentials. Good luck!


As you have assumed, both are needed. But university departments differ in their focus. I'd guess a CS department with a lot of focus on math and theoretical aspects would probably be a bit better than a pure math department. The faculty profiles of a given department will tell you a lot about what seems important to them and to the faculty as a whole. A math department that is already doing applications to ML would also serve.

But the real purpose of this answer is to give you a bit of a warning about this career path. It is currently very "hot" with a lot of people preparing to enter it. This implies both a lot of competition for positions as well as the possibility that most of the very important questions will get answered before you have a chance to enter. I can't guess at the probability of that, but with a lot of effort one can expect some (maybe much) progress. And you are several years away from starting a career.

That aside, enter a field that you truly "want" to do and can accept the possibility that it might not be very hot in the future. There is a saying that "You don't choose mathematics. Mathematics chooses you." That was certainly my case.


Many CS programs offer a very math-heavy curriculum anyway. Thus, I’d say that a CS orientation is the way to go, since it’ll equip you with the mathematical thinking oriented with AI/ML - statistics, algebra, combinatorics, graph theory etc.

Another reason is practical: 3-4 years of school is a long time. You may think you want a PhD now, but life happens. Marriage, kids, a change in interests or financial situation… any of these may make you seriously reconsider entering a PhD program vs a lucrative industry job. A CS undergrad degree almost always guarantees access to higher paying jobs than one in mathematics. Sure- a degree in math may grant you access to a software engineering job, but not as much as a CS degree for sure.


Definitely go with maths, you can learn the programming aspects yourself, but without an undergraduate degree in mathematics, lots of doors are either closed or very difficult to open (in terms of what you feel you can then study, but also in terms of jobs to some extent). A maths degree on the whole closes no doors, but not doing one can be trouble in research in the sciences generally.

The skills of technical analysis are so high in maths that you will be well prepared for serious research in ML. Also, the mathematics of machine learning (and data science generally) would be an option, which CS won't help with. Maths, physics, those two degrees for ML if possible. Otherwise, a lot of ground might need to be made up later.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .