Getting into Top CS PhD Programs in the US

December 15th deadline is approaching and thousands of PhD applicants from around the world would be submitting several pieces of documents for an increasingly more competitive PhD programs at the top US schools. A repetitive theme that one hears from some old professors is that they wouldn’t have been accepted into the PhD program at their own school with the application they submitted.

I learned a lot in the process of applying to PhD schools five years ago and I’ll offer some suggestions in this post for being competitive and avoiding common mistakes. The information below is specific to the artificial intelligence (computer vision, natural language, machine learning) field but could apply to  other fields as well.

Die has been cast   

Unfortunately to a large extent the admission process is predecided. Many programs generally take students from a select few universities (of similar ranking) that they have come to trust over the period of time and many of these students would have already written papers with some professors at these universities as part of internship or exchange program. This is not necessarily a bad thing and from a professor’s perspective it makes sense to hire someone you have worked with and who has been productive over an unknown person that you are unsure of. This is also true for jobs and life in general, your connection and where you come from is a good indicator of where you will be and the more at top you are the more opportunities you have to rise even further. Further a lot of this advantage could be very subtle e.g., children of professors would know much more about the university and inner working and naturally this makes them more competitive.

However, for an applicant from a less prestigious school or one who hasn’t had the opportunity to find good internships can be at severe disadvantage. I remember my second year of summer at IIT Kanpur when I was very desperate to find a summer internship (I ended up spending the summer reading about advanced data structures and hashing techniques on my own). While I did not get an official internship position, students at Ivy Leagues, Stanford or UC Berkeley have plenty of such opportunities.

However, to balance what I said, I must add that if you are a student from a top-tier university applying to a PhD program then bar for you is also higher and not being able to take advantage of your alma mater makes your application look much weaker than a student with similar credentials from a less prestigious school.

By writing a quality research statement describing any personal research that you did as a course project or on your own, one could negate the above disadvantage. However something like the following is generally true for top CS PhD programs:

″If you haven’t published, have not done top-tier internship, do not have good grades and do not have great recommendation letters then your chances are very slim (<2%)″

and none of the above can be fixed in a couple of weeks before the deadline (unless you solve P vs NP or some major result).

A colleague of mine has pointed out to me that the admission committee (to a varying extent) looks for (1) capability and technical skills to succeed in a competitive research program, (2) interest in research, (3) likelihood to succeed and stick through with it when things get difficult. Experience in a research lab that has led to a publication can demonstrate all three of these, but these could also be demonstrated separately in unique circumstances, in which case properly presenting them in a personal statement is crucial.

The Usual Thing

The material below has been repeated by several more eminent people elsewhere so I’ll cover it briefly. An application consists of the following:

  • CV: consisting of list of papers that you have published, list of internships and your grades. This is an objective history of your capabilities. A good candidate would have one or few publications (only top-tier counts), would have done internship at good schools or top research labs and would have high grades.
  • Research Statement: Your description of your capabilities and experiences. You can use this to talk about any specific hardship that you had to face. E.g., if you were very sick for a specific semester which affected your grades or performance.
  • Recommendation Letters: Other people’s description of your capabilities. It is very important to get letters from people who are well known and who know you well. To a large extent, hiring process is based on trust which is a transitive relation. So if a school trusts a person and they trust you then the school trusts you. Generally schools require 3 recommendation letters and a common solution is to get recommendation from your thesis supervisor, someone with whom you did an internship and someone with whom you collaborated on a project. Getting a recommendation letter that says, “person XYZ did good in my class” is a near waste  and shows you in bad light. It is advisable to plan this ahead in time and reach out to your letter writers to give them enough time. No one likes to be rushed particularly when they are doing you a favour.  If you did not go to a school in US, try to get recommendation from someone the university may know. You can look at the success rate of applicants who asked a letter from a specific person. You should also let your letter writers that you need a strong letter and it is better for them to say no than to write a weak one.
  • GRE and (TOEFEL) score: This is generally not a problem for students who are targeting top-tier US schools. However, TOEFEL could be hard for students from non-English speaking countries like China. If this is the case, you can seek some coaching in advance for speaking and writing. This is going to be very important later in your career.

Common Mistakes

The Subset Rejection Rule: This is not really mistake in the sense that you could do something about it. But if you are a strict subset of another applicant then your rejection chances increases. For example, if there is another student in your university who did whatever you did but has better grades or has more experience, and if there is no other distinguish criteria then universities have no incentive to hire you over the other. Further, the admission process may want to cover more universities and countries and therefore may only select a single applicant from your school which then rules you out.

Talk to Alums: The biggest mistake you can make, which I did make, is to not seek help  from your alums who are studying at the school of your liking. They are the ones to provide the most tailored advice that anyone can get you.

Applying too Narrowly: Even if you are a very capable applicant, there are aspects of the decision making that is not in your hand. A school may not be taking any students in that field that year or a professor may have already committed to working with someone else. For this reason, one should apply to several schools unless you are very sure that you would rather not do PhD if you don’t get your favourite school.

Writing Lousy Research Statements: I bet each year some applicants write a research statement that reads like:

A: “My parents gave me a toy as a kid which I quickly proceeded to disassemble to figure out its internal working since then I decided…..”

B: “I saw Beautiful Mind/Goodwill Hunting/Sherlock/House MD… and I was inspired to be a…”

C: “I want to do a PhD to make my family proud…”

The first one doesn’t say much about you besides that you like breaking toys. The second is a similar type of mistake and the last one shows that you are not interested in pursuing PhD cause you like doing research.

A good research statement can contain your research experience, the problem you really enjoyed and could contain stuff like,

“In the CS470 course, I was introduced to the spectral properties of the Laplacian matrix and I was intrigued by capabilities of such an abstract quantity to explain several properties of graphs. This made me decide to spend the next summer doing research on this topic with Professor ABC QRB during which we investigated the use of spectral methods for analyzing XYZ problem which arises in MNR. By the end, even though we couldn’t solve the problem in its entirety, we felt confident enough by the novelty of our findings to submit a paper at ICML 2018. I am attaching this paper with my statement. I am interested in continuing to do research in spectral methods with Professor MNR whose work RQR is very similar to our finding…..”

This statement, while not fully fluent, shows a genuine interest in something concrete, shows your confidence in pursuing a topic you really like and seeing it through the end and at last that you did research the university properly. PhD is a lot about a kiddish fascination with things that probably no one else on Earth except you and your advisor appreciates.

How to find a Good Advisor

When I was writing my research statements I mentioned the name of several professors I was interested in working with, not knowing that half of them were not active researchers anymore and were not accepting student. I also mentioned the name of some labs that were defunct but had functioning stale webpages. If you are not from the US then deciphering such information can be difficult without access to insider knowledge. Unless you are very picky about what you want to do (less than 20% of applicants), you should find a broad range of professors that you would be interested in working with. Then do your research to find a subset of professors who are accepting students. Some professors would list this on their website, some may reply to your email if you inquire while some you just cannot tell. It is generally advisable to give names of 3-4 professors that you are interested in working with along with reasons for the interest, in your research statement. Of the subset that you have so far,  you should try reading their research paper and mentally simulate if that is something you can do sustainably in the long run. Doing a PhD only for getting a higher salary, as a bragging right, to make your parents proud, to gain social prestige or cause you have nothing better to do is a very risky gamble with the best time of your life as collateral.

If you get accepted or make it through the first round, the university may arrange interviews with the professors that you have listed in your research statement or someone related to your interest. In some universities, you get hired by a professor and so your advisor is predecided. At Cornell University that is not true and you get freedom for a year to try out various advisors (and for them to try you) to find the best match. In general, finding a good advisor is quite hard cause your interest may change or you may not match in terms of working style or personality. For example, in AI certain groups publish more than 50 papers per year while some groups publish only 3-4 papers. Some groups have projects with several first authors while other groups will generally have a single student own the project completely. Some groups will be more abstractly inclined while some groups will be more empirical. Some advisors maybe more hands off while others maybe more hands on. In general, finding the right balance could take time and it is important to get it right otherwise you can have a very unhappy PhD life.

It is also quite important to be clear about interests (theory vs applied, rate of publication), work expectations (not working on weekend or Christmas break) and other things (would I get access to my own GPU machine or do I have to share) in advance.  Students from outside US (particularly from India and China) could be shy in being so direct with American professors and may instead tread on a very unhappy path without giving enough sign of their dissatisfaction. In AI these days, it is also very common for professors to hold a position in Industry or to take a break and be full-time at Industry. I strongly recommend applicants to ask their potential advisors to be clear about this during their interviews or soon thereafter rather than assuming. It has happened to me and to many other students in 2nd, 3rd and 4th year who had to restart their PhD cause their advisor left to join a bigger university or open a company. It happens far more often than you would think and there is no legal document that prevents this.

Big Universities vs Small Universities

One final thing I want to talk about is the dilemma of going to a big university (defn: place with lots of researchers) cause of the more number of options available or a small university (defn: place with few researchers) cause you really want to work with a specific professor there. In general, I always recommend going to the big universities particularly if you are undecided. While the second idea is idealistic and could work if you are very sure about working with that professor and they plan to stick around and help you graduate. In practice, several things can happen that is not in your control: the professor you are working with is very good and gets an offer from a top school and decides to leave; they may not get a tenure or in worst case they die. The first two conditions are quite common actually. My first advisor decided to quit academia to open a startup after my second year. In the worst case, you’ll be left in a place with few backup options (for example the professor moves to a top school and cannot bring you along). Top universities have way more options and generally have someone who works on your topic of interest. They also have great connections with industries and provide a safe option in case your interests change.

Acknowledgement: I am thankful to my friend and colleague Valts Blukis for taking valuable time to offer suggestions.

Disclaimer: The opinion above are my alone and do not represent my research group,  Cornell University, Microsoft Research or any other institution that I am associated with or was.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s