Tuesday, March 31, 2009

Research in the Engineering Sciences (Machine Learning)

Research in the engineering sciences differs from more established fields in that it's focused on the methodology rather than the search for the truth (in the natural sciences), or the TRUTH (in pure mathematics). As such, it's more empirically driven than research in mathematics, since (almost) no one cares about methods that don't work in practice, but a model need not be perfect or even understandable in order to be useful and very widely applicable. One can think of engineering research as primarily concerned with analyzing trade offs with respect to things like computational efficiency, accuracy, robustness, etc.

Since the computer science field is relatively young and experiments are usually done completely on computers, most research projects produce publishable results fairly quickly (usually within 3-9 months). This has (at least) two consequences. First, the ease of technology transfer from research to consumer software makes it very attractive for companies to establish flexible collaborations with academics. Second, the condensed publication cycle makes computer science a conference driven field (as opposed to journal driven).

Being a conference driven field with strong industry participation has its advantages and disadvantages, though I think the advantages strongly outweigh the disadvantages for engineering fields like computer science. First, this means that Ph.D. students will typically have several publications by the time they graduate, thus affording them many chances to attend conferences, give talks, share ideas, and network with other researchers. For a field that is rapidly growing, this offers grad students a great opportunity to distinguish themselves (by having clear ownership over their research projects) and thus facilitating finding productive collaborations with other researchers.

My particular area, machine learning, intersects strongly with statistics. In fact, many statistics students compete for machine learning positions in industry. However, given that statistics is mathematics field and has a much longer publication cycle with different criterion for judging research quality, it can be more difficult for a statistics student to land a good position in industry (c.f. the statistics handicap). The good news, as stated before, is that the field is growing and thus requires more people.

But not all is roses. Computer science, and machine learning in particular, suffers from having an extremely long tail in terms of publication quality. This year alone, the major machine learning conferences will publish around a thousand papers, and this is not even counting all the workshops or papers in application areas that heavily use machine learning such as computer vision, natural language processing, computational biology and information retrieval. As you might imagine, reviewing so many paper submissions can be quite a chore, and most published papers are rarely heard from again.

I think having such a long tail lowers the barrier of entry for machine learning research (which is good), but it can also degrade the scientific rigor of the field (which is bad). Many researchers effectively use their papers to convey chapters of their ongoing research story. This, of course, is completely reasonable. The problem arises when individual papers convey very little novel content. One interesting solution would be to incorporate blogs as an accepted component of the research culture. Who knows, maybe I'll start my own research blog some day.

At any rate, despite its imperfections, machine learning is a booming research area with many exciting problems to tackle. The style of research in the engineering sciences is dramatically different from that in the natural sciences or in mathematics. Publishable results are generally easier to come by and, given the technology infrastructure in place, typically have quick turn-around times in terms of making an impact. The condensed publication cycle also keeps things fresh, since I find myself working on at least two new projects every year (although they're usually related to my previous projects) . Of course, it's not for everyone. You have to like working with computers and be sufficiently motivated (or at least satisfied) by the types of impact progress in this field will have. But it sure is fun!

1 comment:

ninja said...

Thanks for sharing.I found a lot of interesting information here. A really good post, very thankful and hopeful that you will write many more posts like this one.