GithubHelp home page GithubHelp logo

ruthraiahthulasi / metarank Goto Github PK

View Code? Open in Web Editor NEW

This project forked from metarank/metarank

0.0 0.0 0.0 451 KB

A low code Machine Learning tool that personalizes product listings, articles, recommendations, and search results in order to boost sales. A friendly Learn-to-Rank engine

Home Page: https://metarank.ai

License: Apache License 2.0

Scala 99.49% Shell 0.51%

metarank's Introduction

CI Status License: Apache 2 Last commit Last release Join our slack

Metarank (or METAdata RANKer) makes it easy to personalize any listing: recommendations, articles, and search results. Developers make one reranking API call, and Metarank takes care about ML feature updates, model training, and improving target goal like CTR/conversion.

Why Metarank?

Building personalized ranking systems is not an easy task even for a team of experienced data scientists and it can take months to setup data pipelines, storages and model training. Metarank automates the most common tasks that are required to add personalization to your product listings, articles and any other type of content. Instead of months, it will take days or even a few hours to create and deploy a personalized model to get benefit from personalization and concentrate on improving the model.

You don't even need to have Machine Learning experts in the team to integrate Metarank with your application!

Here's a high level overview of Metarank integration:

  • define your features with simple YAML configuration file
  • send historical events and metadata via a JSON API
  • run Metarank to train the model
  • send real-time events to a running instance of Metarank
  • use pre-trained model to personalize your listings in real-time

High-level Metarank features overview

  • Built-in feature store to compute features used for online and offline training
  • YAML configuration to define the structure of your data and features that can include:
    • simple scalar features (e.g. number of clicks)
    • scoped features (e.g. item CTR for a specific query)
    • relative features (e.g. percentage of clicks per item over the total number of clicks)
    • user-specific features (e.g. user agent parser, geoip)
  • REST API or Kafka connector to receive events and metadata updates
  • Offline and online (real-time personalization) operation modes
  • Explain mode to understand how final ranking is computed
  • Local mode to run Metarank locally without deploying to a cluster
  • Cloud native: deploy Metarank to Kubernetes or AWS

Who should be using Metarank?

Metarank is industry-agnostic and can be used in any place of your application where some content is displayed. Metarank will suit teams that are only starting to introduce Machine Learning and those that already have discovery teams that work on personalization and recommendations. For experienced teams, Metarank will simplify their Learn-To-Rank stack for data collection, backtesting and model serving.

Why do you need personalization?

Machine Learning now is not just a tool for geeks and scientists - it solves real business problems, be it anti-fraud systems in the banks or recommendation widgets in your favourite online store. Content personalization can open new opportunities for your business in improving sales and customer satisfaction by providing relevant items to each user.

Demo

We have a built a Demo which showcases how you can use Metarank in the wild. The Demo utilizes Ranklens dataset that we have built using Toloka service to gather user interactions. Application code can be found here and you can see how easy it is to query Metarank installation to get real-time personalization.

Metarank configuration of the demo application is available here. You can see how easy it is to define features and can previiew the pre-built model based on the Ranklens dataset.

Tutorial

You can check out our tutorial and play with Metarank locally!

In-depth Docs

Current state

Metarank is an Alpha: it's early days of development. It is well-covered with tests and runs in production several systems serving real traffic, although we don't recommend yet to run it without developer support.

Licence

This project is released under the Apache 2.0 license, as specified in the LICENSE file. This application is neither endorsed by, nor affiliated with, Findify AB.

metarank's People

Contributors

i10416 avatar romangrebennikov avatar scala-steward avatar shuttie avatar vgoloviznin avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.