Why I Started Exploring Recommender System Since 2020


December 3, 2021

Background

I worked on speech recognition and computer vision research during undergraduate and graduate days separately, and later on accelerating these models for online serving.

In fact, I was far more interested in making something faster than trying to beat another model by encoding kind of prior into it when current optimizers are not satisfying enough.

Detailed sequential model evaluation based on ranking methods were my favorites and later I became extremely interested in deep learning based recommender systems in late 2019 partially as I really like to recommend stuff to friends…

The interest drived me to temporally leave the position which was with lots of fun by making something faster, and did one year research in http://claws.cc.gatech.edu/.

Gradually, I found out that one do not need a Phd to do RecSys research as working in industry is the best way for it said by Alex Smola, so I leave school with my 2nd Master Degree and started working in industry.

Findings

Deep learning got widely used in RecSys in recent 5 years, people were working on algorithms like FTRL before the trend, although some research papers may not tell the story well, DL really suits RecSys as:

  1. For most applications, overfitting could be a problem for deploying the models to provide reliable services, but for industrial RecSys, the need for personalization could even encourages overfitting sometimes.
  2. Many models are data hungry, RecSys as a web services are the richest to feed data for deep learning models, and due to the volume of whole dataset, almost no one can overfitting a useless model in practice.
  3. RecSys is naturally related to graphs which I am also deeply interested, it do not require very deep models(seems easier to design), instead, it needs elegant design to effectively learning from data.
  4. Once connected with deep learning, we can try different layers created for other applications and feed multi-modal features into RecSys for more interesting experiments.
  5. People are paying a lot of attention to sequential models in RecSys research and engineering recently, for which I know quite a lot based on former speech and computer vision research.
  6. Each application, each scenario may need a different recommender system due to data and attributes variants, which provides great opportunity to fine-tune a customized one, everyone in the team could find the role in such process, no need to outperform others like in computer vision and natural language processing.
  7. RecSys based applications create kind of like Metaverse stuff in which deep reinforcement learning could be widely adopted for handling exploration-exploitation tradeoff.
  8. Fault-tolerance, for most recommender systems, errors(wrong recommendations) would not lead to major mistakes, so easier to explore compared to medical imaging etc. for someone prefer not to be under too much stress.
  9. RecSys can be evil sometimes, by just trying to keep users entertained, that would kill productivity, wisdom and creativity(interestingly, it is the opposite of developing and using Search Engine which targets at saving our time on finding required doc), which need to be corrected by future recommender system research taking care of content generation.

RecSys research and engineering can help developing the expertise in building and maintaining hyper-scale internet services, help company growing and making money(as an important component for online advertising system).

Also, it seems there are sometime fundamental wrong inside some RecSys research papers for pholosophical considerations, I will talk about these in future posts, still tons of stuff to do for RecSys in research and production, enjoyable :)