From Spam Filters to Dating App: Understanding Attraction through Machine Learning

Food for Thought

In finding the love of your life, it is tempting to think you can filter candidates by certain criteria, such as a sense of humor, education, career, hobbies, music preferences, or movie choices. However, using the concept of machine learning, I will explain why this method of dating doesn’t work.

Many problems in the world can be solved intuitively by humans but not by computers. For instance, detecting spam is something we can do in a fraction of a second, but how would you programmatically flag it? You could look for certain keywords like “mortgage” and flag an email as spam if it contains them, but sometimes these words are used for legitimate reasons. You could send all emails from unknown senders to the spam folder, but some of those emails are legitimate. Early versions of spam filters didn’t work well because of these issues.

Machine learning (ML) was developed by reconstructing the physical structure of our brains in computers, known as neural networks. The inventors weren’t trying to solve these specific classification problems; they just wanted to recreate the structure to see what would happen. Essentially, it turned out to be a pattern recognition system.

They fed thousands of examples of spam emails to the artificial neural networks, labeling them as “spam.” They also fed an equal number of non-spam emails, labeled as “not spam.” They compiled the result as a “model” and tested it by feeding it unlabeled emails to see if it could correctly classify them. It worked.

What is interesting is that when you open the model file, you don’t learn anything. It can perform the task correctly, but we don’t know how it does it. This is exactly like our brains; we have no idea how we can classify spam emails so quickly. As explained above, there are no definable criteria for “spam.”

Now, back to dating.

You intuitively sense a pattern to the type of people you are attracted to, but if you try to define the criteria, you will ultimately fail. If given hundreds of examples, you will have to admit that there are too many exceptions. In other words, the problem you are trying to solve is not one that you can define. There are countless problems like this in life. For instance, you cannot find songs you like by defining tempo, harmony, key, instruments, duration, etc.

Machine learning could potentially solve the problem of finding songs you like if you listen to enough songs and flag them as “like” or “dislike.” It would require thousands of samples, but it’s doable. I am currently assisting a fine artist with training an ML model to automatically generate pieces of digital art and have the model approve or disapprove them based on his personal taste. So far, it is capable of doing so with 80% accuracy. It required tens of thousands of samples.

The problem with dating is not likely to be solved with ML anytime soon because it’s practically impossible to collect thousands of samples of your particular taste. So, the only option for the near term is to trust your instincts. Predefining match criteria will likely hinder this process because you will end up eliminating qualified candidates like the old spam filters. But this is what all dating apps do; their premise is fundamentally flawed. Dating apps do use large datasets to match people based on patterns observed in broader populations, but they do not model your specific preferences. So, they give you a false sense of control by letting you predefine the type of people you like.

A typical pattern in Hollywood romcom movies is that two people meet by accident, initially dislike each other, but eventually fall in love. This format is appealing because we intuitively know it reflects how love works in real life. Love often defies the rational part of our brains. Although it is not completely random, the pattern eludes our cognitive understanding. If we had control over it, we wouldn’t describe love as something we “fall” into.