I must be a something of a data scientist and not know it.
Over 20 years ago, I entered into a relationship with my partner following a failed marriage. This time around I did things differently.
Jude and I had been on and off friends for some time before things got 'serious' at which point I said: "If this thing is to go any further then I want each of us to compile a written list of the things we don't want in a relationship." I figured that if the lists were vaguely comparable then there was a fair chance that the things we did want in a relationship would likely fall into place. More to the point, I was looking to hedge my chances of not failing a second time.
To our mutual surprise, the lists were almost identical. And...as they say...life was never quite the same. I still remember that list though it has long gone. Fast forward to 2012. Now we have computers and algorithms to help us with the thorny problem of dating with the goal of finding the love of our lives.
Meet mathematician Christopher MacKinlay who applied an algorithmic approach to dating. His attempts at using OKCupid were failing miserably. He couldn't seem to find any matches that looked even vaguely interesting. As a maths PhD with a bent for programming, he deduced there must be a way of figuring out how to discover the right profile patterns for potential partners and then matching those to hos profile.
Wired describes his approach as one of hacking OKCupid. That's over egging it.
Instead, what he did was to mine OKCupid for patterns to determine the right kinds of question that would score heavily in finding a match and then answering those questions honestly.
After a period of what might be termed data discovery, he applied his pattern matching equations to two groups of potential dates: classic A/B testing, to determine which group would provide the best matches. Along the way, he had to overcome bot sniffers operated by OKCupid and needed to refine his algorithm to ensure he was determining the right patterns. How did it work out?
Incredibly well. He had to go on a total of 88 dates - discarding one of the A/B groups along the way - before he found the one person with whom he genuinely felt a spark. His approach seems to have worked out.
According to Wired:
“I think that what I did is just a slightly more algorithmic, large-scale, and machine-learning-based version of what everyone does on the site,” McKinlay says. Everyone tries to create an optimal profile—he just had the data to engineer one.
It’s one year after their first date, and McKinlay and [Christine] Tien Wang have met me at the Westwood sushi bar where their relationship began. McKinlay has his PhD; he’s teaching math and is now working on a postgraduate degree in music. Tien Wang was accepted into a one-year art fellowship in Qatar. She’s in California to visit McKinlay. They’ve been staying connected on Skype, and she has returned for a couple of visits.
He recently proposed via Skype and Tien Wang accepted.
Now I'm sure there are plenty in the cheap seats thinking that MacKinlay gamed the system to provide him with a better chance of finding the right mate. True. Also, since he needed to go on 88 dates to 'get it right' one might also deduce that dating sites still don't work that well, even if you're giving yourself a head start. And of course he needed a large dataset against which to test his calculations.
But...you have to wonder whether this might represent the kernel in the search for the ultimate in applied data science to one of the oldest problems faced by man (and woman.) More prosaically, I am wondering whether it is possible to refine MacKinlay's approach, slap on a nice UI and make it available to anyone.
Now there's a thought. But in the meantime, if you can't wait for someone to productize the algorithms, here's MacKinlay's book on the topic.
Featured image: © Edelweiss - Fotolia.com