Six Questions for Kim Falk, author of Practical Recommender Systems

By Frances Lefkowitz

Kim Falk is a Copenhagen-based data scientist who works with machine learning and recommender systems. Keep up with him @kimfalk on Twitter.


Jump into any page of the book from the table of contents on liveBook!

Take 39% off Practical Recommender Systems by entering code intfalk into the discount code box at checkout at manning.com.



Do all the big sites use the same basic approach to recommendations, whether they are suggesting books or restaurants or dates? 
It is very hard to say what, exactly, different sites use, as it’s not something businesses want to reveal in detail. But there are two basic paradigms. The first one is collaborative filtering, which uses behavioral data–the ratings a user gives to content, or data about simply what is viewed and bought on the website. The other method is to use the descriptions you have of the content. These can be short descriptions as well as an attribute that can help describe the content. If it is articles, the metadata could be the actual article; if it’s a restaurant, it would be the type of food. And for a date, I guess it could be anything from shoe size to whether the person is vegan or not. The two paradigms can be implemented in many different ways. In my book, I go into detail with these paradigms–and how to combine them.
Is it just the individual algorithms that change?
Again, it’s hard to say. Each dataset is different, so there is definitely no one best algorithm that fits all. My book describes a good selection of algorithms and provides a foundation so you can understand a lot of the different flavors of algorithms out there. Besides the algorithm, there are many other considerations regarding the ecosystem around the recommender. Things like what data you use, and how you calculate the final recommendations, can be very different based on the configuration of the system.
What are some of the less obvious uses for these systems?
I have seen recommenders being used in many different scenarios, from helping patients to get the correct medicine, to selecting which people should be put in a police line-up. A recommender can help whenever there is more content that the user can overview. However, if, for example, you want to select one from five different types of mortgage loans offered by the same bank, you should probably look for a classification algorithm rather than a recommender algorithm.
Is your book for data scientists or for developers?
The book is intended for developers who are interested in recommenders and machine learning. Though it could also be a good introduction for new data scientists, as many of the data considerations are common for all machine learning algorithms. It can also work for experienced data scientists who want to work with recommenders.
What is the “practical” part of your book?
Most descriptions of recommender systems starts out with a dataset, to show how to run it successfully using a library. Surprisingly that is only very small part of implementing a recommender system. Collecting data, understanding data, and tuning the algorithms are some of the exercises that will probably cause more headaches. These topics are also handled in my book.
Recommender systems seem so modern and high tech, but you’ve pointed out that they are quite old and quite human. What are the older recommenders?  
Recommender systems are high tech and a bleeding-edge research topic, but they were first implemented to solve the simple problem of too much choice. It seems surprising that anybody back in 1992 thought that was a problem! But that was when the first recommender system was implemented publicly. A recommender system is really an attempt to automate the advice you’d get from a group of trusted like-minded people. Before these automated recommenders, you’d ask people you knew, with similar taste to yours, what movies to watch or where to eat.