The reason I chose to study CS was maintaining the strongest connection possible to the real world while pursuing a Science subject. Powerful and complex software engineering lies at the heart of most web services today: information retrieval (Google Search), entertainment (YouTube, Spotify), social apps (Facebook, Instagram), shopping (Amazon) — you name it! There are massive developments powered by Computer Science, spanning areas such as speech processing, design of faster graphics cards, new programming languages to help better and less error-prone development of apps we use every day, infrastructure for large-scale computations (think about the search query ‘Cambridge’ returning 347,000,000 results in 0.74 seconds!) So I guess you can’t get bored…
One of my main interests is machine learning — I am currently working on my third-year project which involves classifying musical genres by using a convolutional neural network (ConvNet). This is a particular kind of artificial neural network which takes biological inspiration from the animal visual cortex. ConvNets are widely used for identifying objects of interest in images (Google and Facebook use them for some of their most ambitious current projects).
At a high-level, this is what happens: if you give the network enough pictures of cats, enough pictures of other things and tell it which are cats and which are not, it will learn to identify a cat by itself. I’m using this classification method to learn features from spectrograms (visual representations of sound files) and classify music genres.
While reading about ConvNets for the first time, I was intrigued by their ability to learn about almost anything in image format — powerful (even real-time) recognition systems can be designed. There are still some questions to be answered; for example, why do some functions used in network layers work better than others on particular classification tasks? The explanation and maths behind this is not obvious yet. ConvNets also have failings — if an image is perturbed by a very small amount of noise, humans sense almost no difference, but ConvNets get fooled; more can be understood in the future about these learning models.
This is only a single, very specific application in Computer Science — there are countless others probably being used by most people exposed to modern technology, not only within the space of web services, but also in areas such as medicine, security or banking. If you’re keen on Science subjects, I’d definitely advise you to consider Computer Science as a university degree. You can have immediate and valuable impact on people’s lives, as well as the best and most exciting career prospects, even from your undergraduate years.
I am currently in my third and final year of the Computer Science Tripos [Cambridge undergraduate course or examinations] and wish to continue with a Masters’ degree at Cambridge.
The main image is of me at the Computer Laboratory (CS department) wearing the Google Glass one of my colleagues was using while developing an application for the Group Project in second year.