Applying to CS PhD programs for Machine Learning: what I wish I knew

These are my takeaways from applying to PhD programs for Machine Learning, and having spent several years at Penn doing ML Research. I am fairly dogmatic in my presentation, and I describe what a high quality application looks like. These rules seem to be shared by word of mouth, but I missed that memo before my application. My hope is this prevents you from doing the same.

Your application has several components people tell you about, ordered by importance:

It also has another component people do not tell you about: networking.

Letters of Recommendation

Unfortunately, these are the most important part of your application; not only do you, the student, not have direct control over their content, the contents are weighed by who is writing them. A generally positive letter, written by someone who the admissions committee knows does good research (i.e. famous in their subfield), goes much farther than a glowing recommendation letter written by someone that the admitting faculty do not know.

The rational behind this is detailed in this blog post by Shriram Krishnamurthi, but in short it’s because the admissions committee has a more calibrated understanding of the judgement of the recommendation letter writer — they receive “this is my best student in a decade” letters written by random people every year, and it means very little without context to understand the judgement of the writer themselves.

This means you must be strategic about who you get to write your recommendation letters — ideally, you have at least one well known, senior faculty member who can directly attest to your research ability. Letters from PhD students or people in industry mean very little (with the rare exception of them being very famous in their own right). Do not take anyone’s word for how famous or influential they are; academics, even more than the general population, have a habit of believing they are more important than they actually are. Ideally you can form your own assessment of their influence and importance based on an analysis of their research output in the context of their subfield, but realistically an undergrad without extensive research experience is not going to be able to do that. Instead, you’re going to have to rely upon (flawed) metrics; publishing metrics are highly gamed, but a combination of h-index and where they stack up in your subfield on, both at your institution and relative to other institutions, contain some signal, but use your best judgement.

You need three letters of recommendation. At least one must be able to attest directly to your research ability, ideally two if there’s another professor you worked with (or, optimally, all three). While the other letters speak less directly about the research you did, they must be more than a “did well in class” letter. They must be able to attest that you went above and beyond, demonstrated curiosity, and seemed to care deeply about learning the material. Shriram’s blogpost goes into more detail about what readers are looking for, and I highly recommend a careful read through to understand the nuances of what makes for a well rounded set of letters.

Statement of Purpose / Research Statement

This is the second most important part of your application, and the one that you have the most direct control over. The recommendation letters have attested to your abilities as a researcher, and your goal with your SoP is to demonstrate that you have direction. Some places e.g. Penn ask a specific set of guiding questions, other places provide no guidance at all; but the broad goal is to outline a vision for the future.

Importantly, this is not a brag sheet; the admissions committee has access to your transcripts and your resume. Referencing what you have done is useful in grounding what you want to do next, but the real value add is in making it clear that you have a grasp of the domain and methods you want to use to get to your PhD dissertation.

Do research on the institutions you are planning to apply to — I went on, sorted by subfield, and applied to the top 14 schools. Do not do this — actually look at the faculty members who are at these institutions, and see if they have research agendas that match yours. You should have a final paragraph that coherently weaves the agenda of several faculty into your overarching vision.


They are what they are. Maybe you were a straight A student, maybe you were a C student. I know someone who had a 2.7 GPA at a decent state school who got into a good program because he was able to clearly articulate a research vision in his Statement of Purpose and he had good recommendation letters from a well respected professor at an undergrad summer research program. Frankly, these are mostly used to answer if you will fail out of the program’s breadth requirements.

GRE Scores

Quantitative and Verbal sections are mostly what matter (but do not do what I did and write a 5 sentence essay, mostly because it looks bad). Importantly, your scores are not superscored like the SATs, you are judged on your full sittings, not the best performance on each section. It’s the Quantitative and Verbal sections that matter, and they should be high — I had 78th percentile Quantitative and this put me in the bottom 10% of the admitted class for Penn CS PhD. If you do them early, they will not be a source of stress. My alarm didn’t go off and I ended up doing the test without eating anything, and I had no time to retake it.


If you know a faculty member at an admitting institution, e.g. faculty you were close with that moved institutions, reach out to them and say hello — even if they are not in your subfield, if they believe you are a smart, motivated person they will vouch for your abilities in a way that the admissions committee understands very well; one of their colleagues, who they know well, has good things to say about you. This can essentially serve as a free additional recommendation letter and in the right circumstances ensure you an admission.

If you don’t know faculty members at your admitting institutions, you should try to get warm intros to them from people they know while at conferences. One of the unspoken components of academia is the social graph that’s built between people; in the same way you should seek out written recommendation letters from well respected professors, you should seek out in-person introductions. These introductions allow your application to then stand out when it later comes across their desk as part of the admissions committed decision process.

Cold emailing professors 6 weeks before the PhD application deadline is not a good way to hack this social aspect — at best you will be ignored, at worst you will annoy them and they will remember you. If you do actually want to talk to a professor about their work, then email them about their work and ask something coherent and substantive. Professors aren’t stupid, and they can distinguish scholarly discussion from empty words trying to get their attention. That said, if you’re a year+ out from applying to PhD, this is a good way to get an opportunity to do summer research with them, which will let you display your research abilities to them.