Lightricks: ML recommendation models at scale

Qwak was brought onboard to enhance Lightricks' existing machine learning operations. Their MLOps was originally concentrated around image analysis with a focus on enabling fast delivery of complex tabular models.

About Lightricks

Lightricks develops video and image editing mobile apps, known particularly for its selfie-editing app, Facetune.

Industry

Consumer Apps, Photo Editing, Content and Social Networks

Use Case

Recommendation Engine

Model Frameworks

Pytorch

From the get go, it was clear that Qwak understood our needs and requirements. The simplicity of the implementation was impressive.

Lightricks
CT/CD

Continuous Training & Continuous Deployment

0

Engineering Dependency

Full

Model Analytics & Monitoring

Challenges

Developing recommendations engine models required intensive engineering support and building new infrastructure layers

  • Lightricks ML traditionally revolves around image analysis. The team needed to build ML models based on tabular and dynamic data which requires daily training on fresh data.
  • The platform's flexibility was crucial. Lightricks did not want to be locked down to a specific model structure and also needed a centralized way to train, deploy and access models at scale.
  • Lightricks knew that building Infrastructure requires a lot of effort, experience, and time.
  • Other vendors could not address the requirements of ease of use, speed of onboarding, continuous training & deployment and feature store support.

Implementation

Solutions

Model Training: Provides an easy way to train the models on fresh data from the feature store and keep each model version metrics in a centralized repository for tracking and review.

Model Serving: Provides simple deployment of real-time & batch models with the ability for gradual deployment (canary deployment).

Feature Store: Provides a simple API  for feature extraction retrieval of features for training. This allows the data science team to work autonomously and modify model inputs without the need to make backend modifications. It also provides the ability to share feature sets between different models and train multiple models at scale.

Model Monitoring: Provides immediate identification of potential issues and alerts which is critical for real time production platforms and allows reviewing the model predictions data and creating dashboards on top of real time data.