Open PhD and Postdoc positions

My supervisor is leading a new European project called MASH, which stands for “Massive Sets of Heuristics”. There are open positions here in Switzerland, as well as in France, Germany and Czech Republic.
The goal is to solve complex vision and goal planning problems in a collaborative way. It will be tested in 3D video games and also in a real robotic arm. Collaborators will submit pieces of code (heuristics) that can help the machine solving the problem at hand. In the background, machine learning algorithms will be running to choose the best heuristics.
If you are interested in: probabilities, applied statistics, information theory, signal processing, optimization, algorithms and C++ programming, you might consider applying!

Gmail Machine Learning

I just quickly tried the new Gmail Labs feature “Got the wrong Bob”? and it actually works quite nicely! I put some email addresses of family members, followed by the address of an old professor, who has the same first name of one of my cousins, and… Gmail found it! :) It suggested right way to change to the correct person, based on context!

The other new feature, called “Don’t forget Bob”, is probably simpler, but quite useful as well. As I typed names of some close friends, I got more suggestions of friends I often email jointly with the previous ones.
I wonder if the models to run this feature are very complicated. Probably they are not. I guess one just has to estimate the probability of each email address in our contacts to appear in the “To:” field, given the addresses we have already typed. To estimate these, you just have to use a frequentist approach and count how many times this happened in the past. With this in hands, “Got the wrong Bob?” will notice unlikely email addresses and “Don’t forget Bob” will suggest likely ones that are missing.

I think it’s a really cool idea, in the same spirit of “Forgotten Attachement Detector”. A bit of machine learning helping daily life!

OpenCV 2.0 and Boost library in Snow Leopard

Since I installed Snow Leopard on my macbook I started having compilation problems. The reason is that my code depends on a couple of external libraries, namely OpenCV and Boost serialization, and these were broken.

Today, I finally managed to solve the problems, by following some hints I found in different websites.
First, I installed OpenCV 2.0 (which should be quite cool because it has cleaner and compact notation for matrix computations, among other things). For this I basically followed the recommendations at:
For the small programs that only depended on OpenCV, things started to work again. But other pieces of code I am writing also use Boost serialization library, in order to save and load complex objects to disk.
Compilation was working, but linking was failing. Basically, the problem was that the libraries had been compiled for different architectures. My OpenCV library was built for “i686″, whereas my Boost library was built for x84_64 architectures. I had installed Boost using macports, which for Mac OS X 10.6, builds using x86_64 if the CPU supports it, or i386 otherwise.
You can change this at the macports.conf file by uncommenting the line:
#build_arch i386
In my case, I actually changed it to i686, because I don’t care too much about compatibility with older platforms.
build_arch i686
After that:

Schools kill creativity

My good friend Miguel called my attention to a TED talk that you might also find interesting:

Ken Robinson argues that “schools kill creativity”, because kids are not given the chance to discover their interests and talents. Since very soon, students get a negative reward for making mistakes, which makes them too risk averse. He goes further, saying that the educational system is built to create university professors, leaving the majority of the students behing along the way. More space should be given to other forms of expressing intelligence, such as the arts or sports.
I strongly recommend this video. Besides the interest of the subject, the presentation is actually quite funny, it somehow resembles a British-style stand-up comedy!

(My) ideal society

Each individual is respected as such and has the freedom and the means to pursue its own interests without having to harm the others.

Don’t know how it looks like. It’s a pretty simple (non-constructive) definition, however.
I’m sure mathematicians like it! LOL

Personal productivity, happiness and optimization algorithms

I spend lots of time wondering about the best ways to be both more productive and happy. Curiously, I’m coming to the conclusion that this is exactly what I should not do.

Being productive, like being happy, requires living the present moment, not thinking about it.

If you want to complete a task, the best strategy is just doing it! You might start by setting up a plan, a sequence of smaller actions that lead you to your goal, but once you have this, just do it. Spending too much energy re-planning and judging yourself along the way is just counter-productive.

Curiously, this is not easy! Our brain seems to have some bad habits hard-wired. Want it or not, we start thinking about the past or making predictions about the future. Worse, we start multi-tasking (as you read this blog, you might also be listening to music, doing some work, or chatting with your friends in facebook)
Perhaps the only solution is to re-train our neuron connections. One way to do it would be meditating or repeatedly performing a task that requires one to be focused on the present. Feeling, not thinking. After enough practicing, the brain should start rewiring.

I recently came across this famous Hemingway sentence:

“Happiness in intelligent people is the rarest thing I know.”

Perhaps intelligent people have the tendency to plan too much? Planning involves predicting the reward associated with a set of possible actions and choosing the best ones. What if the reward function is not easily predictable? Perhaps the best optimization algorithm in this case is a greedy one. Don’t plan to be happy only next year or next month or even tomorrow. You are dealing with a real-time multi-agent system, you have only partial and noisy data about the world, the system is recursive, and finding the optimal reward is probably NP-hard-as-it-can-be!

Increasing the scope

In the past it happened that I didn’t publish some potentially interesting thoughts in this blog, just because they didn’t exactly fit the “about intelligence” topic.
I’m fed up of this self-imposed censorship. In the future the scope will be broader.

Machine Learning artwork

Today I tried out a great site to generate tag clouds, it is called I rendered some images just by copy-pasting the text from wikipedia about machine learning.

The results were pretty cool and I guess one could print awesome t-shirts with them. What do you say?

One could also use them as wallpapers:

Update [2013] : due to an issue migrating images from blogspot, I kept only two images here.

ACM Paris Kanellakis Theory and Practice Award 2008

The 2008 ACM Paris Kanellakis Theory and Practice Award was awarded to Corinna Cortes and Vladimir Vapnikfor the development of Support Vector Machines, a highly effective algorithm for classification and related machine learning problems“.

It’s not the first time this award is given to Machine Learning people. In 2004 it was awarded to Yoav Freund and Robert Schapirefor the development of the theory and practice of boosting and its applications to machine learning.”

I found a bit weird that they left Bernhard Boser and Isabelle Guyon out of the prize, because they were Vapnik’s co-authors in the 1992 paper “A training algorithm for optimal margin classifiers“, which I guess is considered to be the first paper on Support Vector Machines…

Anyway, congratulation to the winners. These are indeed elegant algorithms with sound theoretical foundations and numerous sucessful applications to vision, speech, natural language and robotics, to name just a few.


Thanks to my cousin Rui for the link to this news.

Related post:

Vapnik’s picture explained.