Monday, December 10, 2012

Doing a PhD

For many undergraduate students, doing a PhD seems to be the logical next step after passing out of college. So much so, in fact, that people often undervalue the difficulties and challenges that lurk ahead. Note, however, that I am not discouraging people to apply for a PhD. All I am saying is that today's undergraduates need to be more careful in choosing PhD as their next career step.

When I came to the US for my PhD, I was pretty much a blank sheet of paper. All I knew about research from my modicum of past experience was that it involved "a lot of work". Little did I think, however, that there are simply too many factors out there that needed to be taken care of.

For one, I did not have sufficient background in the area that I was going to work on. For people who would like to know more, let me say that I have a Bachelor's degree and a Master's degree - both in Computer Science and Engineering. My research interests are in Natural Language Processing (NLP), Computational Linguistics and Cognitive Linguistics. I am also interested in Data Mining, Psycholinguistics and Sociolinguistics.

Note that when I did my Bachelors in 2008, I had only heard these terms. I didn't have the slightest clue regarding what they actually meant. All I knew, however, was that I'd have to do "a lot of work", and the rest would be taken care of by my advisor.

Well, here comes the interesting part of the story. Note that it is usually impossible for an advisor to spoonfeed you. The advisor may be a significant person in his/her field, but that does not mean (s)he will match your research and career interests. In fact, it is often the possibility that your advisor will only be marginally interested in what you are working on. Given that your advisor has a busy schedule and marginal interest in your work, you will most likely be left on your own.

Even in the rather fortuitous case where your advisor's research interests almost exactly match your research interests, it is very unlikely that your advisor will appreciate your different career options. Then again, (s)he might be picky - maybe a little too much - about which way you should go.

To me, there are three distinct phases of advising a PhD student. In the first phase, the student (almost always) needs to be spoonfed, because (s)he knows nothing about what research means. In the second phase, the student needs to be trained on standard research practice, writing and documenting code, writing papers, ensuring reproducibility of research, etc. In the third phase, the advisor needs to gradually fade out of the student's horizon, to give him/her more freedom to conduct independent research. An ideal advisor-advisee relationship never imposes too much on either side.

In reality, however, advisors and advisees may fail in any one or more of the three phases I just mentioned. The advisee might simply turn out to be too incompetent or too headstrong; the advisor may expect too much from the advisee; there might be a huge background mismatch between advisor and advisee; and so on. In any case, it will always be good to probe these issues deeper before a student jumps into the decision of doing a PhD.

The three phases of advising that I just mentioned, need a little bit of elaboration. Note that it is often the case that advisors are too busy to actually spoonfeed their PhD students. In that case, this first phase may be delegated to other senior PhD students, or postdocs. Or even better, let the students take special-topic courses for one/two years, and then let him/her do the actual research. For Natural Language Processing, Data Mining and Machine Learning, I would recommend a rigorous training in Statistics and statistical packages (e.g, R, Octave/Matlab, Minitab) as well. A course in Python would also help students tremendously. Let me give a list of courses I think would be useful for anybody working in Natural Language Processing:

Linear Algebra, Numerical Optimization, Algorithms, Pattern Recognition, Machine Learning, Data Mining, Bayesian Methods, Nonparametric Statistics, Learning Theory, Measure Theory, Applied Statistics, Time Series Analysis, Regression, Multivariate Statistics, Sampling Theory, Information Retrieval, Corpus Analysis, Complex Networks, and Stochastic Processes.

You would notice that there are 19 courses listed above that span six long semesters (three years). You might wonder why I listed so many courses, especially when it may very well be the case that there might be overlaps in course contents.

The point that I wanted to make, though, is not about course contents. My point is - at the end of these 19 courses, you would have sufficient background to conduct independent research in Natural Language Processing. And that would completely obviate any spoonfeeding from your advisor. In fact, if you have strong statistical background, you can use it in your job hunt as well.

Nowadays, many of the above courses are also available online, so you don't have to actually register and pay for them. You can just go take an online course. They are often very good. My point is - do these courses first, and then consider doing a PhD. :-)

(to be continued)

No comments:

Post a Comment