I recently started my machine learning PhD and I have absolutely no idea what I'm doing

Talk to your supervisor. Your supervisor accepted you, and therefore she must think that you had something to offer her research group. Don't phrase it like you did here. Instead, come to her with solutions and not problems. For instance, you need to learn to ask good questions. That's great. So why don't you ask her to recommend a good dataset that is common to use so that you can start exploring different methods?

Ultimately, you are in a PhD program and one of the biggest things you need to learn is how to read the literature to discover the open problems. This requires you to read far and wide. A big thing that will probably help you is to try to replicate results. You aren't doing this for publications, but to better understand what was done and why, and what the limitations were. Take a recent paper and try to recreate it. If you can't, go to a less recent paper that that one cites and so on. Build your way up.

For what it's worth, I think that a lot of PhD students come in with a general understanding of the field but not much of a deep understanding. As an anecdote, in the beginning of my PhD I'd find a paper that was written years before I started and think "Oh no! They've solved all of the problems I thought were important!" I'd rush to my supervisor to show him the brilliant research, and he'd show me the limitations and how they were being addressed. It seemed to me at the time that these papers solved their problems, but by spending time speaking to him I realized that that was not true - perhaps the data set was particularly simple, perhaps the researchers didn't try to expand their results too far, perhaps the domain in which the algorithm worked was so restricted that it was of no practical use.

Eventually, I learned how to do that on my own, first by looking for common obvious problems, then by thinking more subtly as I got better - and as I started doing my own research and making my own mistakes.


First of all, I know exactly where you're coming from. I also started a PhD in machine learning, whilst coming from a different field entirely. I knew next to nothing about computer science, I did not even have any math background to speak off. I have never before and never again felt as stupid and incompetent as I did in the first year of my PhD. I am now about to graduate with several high impact publications, so stuff can work out just fine, even if you feel like this.

So here are the things I would do (and did):

  1. Really do talk to your supervisor, reluctant though you may be. I can almost guarantee she thinks your struggle is completely normal and expected. She is in the ideal position to give you essential papers to read and tell you what you should understand about those. She can also help you formulate your first research questions.
  2. When you do read papers, focus on understanding the concepts, rather than all the details. Especially at the beginning trying to understand everything can become overwhelming quickly if you don't have the right background. Also try to think for yourself what the limits of the research are and what next steps would be. That kind of thinking just takes practice and experience. Both will come with time.
  3. Practice the practical things. This can also greatly help your understanding. In machine learning, for almost every problem and method there's an example dataset/tutorial. In the beginning just working through this and playing with parameters can really give you a feel of how an algorithm works.

But most of all, relax and give yourself some time. Yes, you will need to work hard to get to know the field, but don't panic. Understanding will come. And use your supervisor, that's what she's there for. Every supervisor knows new PhD students take some investment and time to become useful. And even in the very unlikely event she would not want to help you out with this, that's better to find out now than a year or more in. Good luck!


It might be the most important skill in a PhD to:

(i) understand what you do not understand,

(ii) find out if you need to understand it, and then

(iii) find out how to understand it.

For example: (i) if I am not understanding anything about the papers I am reading (happens all the time), I know I will have to dedicate months to grasp the basic keywords properly. This usually requires me to tackle such concepts from many different angles in basic frameworks, take pauses and come back at them, to let my brain "absorb" such concepts (ii)-(iii). For me, talking to people without fearing my own ingnorance is really a conditio sine qua non (ii)-(iii), especially if I need a tailored explanantion. If I feel new to the entire subject, I will put my best effort to talk to people to understand the way one thinks about the subject, at a more philosophical level.

(I did not address any machine learning aspect, as I interpreted the question as a more general PhD concern)