Skip to content

Davidelvis/ML_project

Repository files navigation

Product design and development in machine learning

Developing a machine learning product

Overview

There have been a lot of articles, videos, research papers, etc. from the machine learning community on MadewithML platform lately and I want to be able to organize all of it. I want to be able to attach relevant (explicit and implicit) tags to the content so that the users can discover them when they need it.

Relevance

Core business values One of the core business values of the platform is to provide the curation that the users are not able to find anywhere else. Therefore, it’s a top priority to ensure that the platform meet this core value.

Engagement When the users are able to discover the precise resources for their needs, this drives engagement on the platform and improves perceived value. If they had addressed the search related complaints over the last X months, it would have increased engagement by X% leading to Y% increase in sponsorship fees.

Background

The current search capabilities involve basic text matching with search queries. Unfortunately, many of the terms that the users are searching for involve queries that are not explicit in the content (ex. natural language processing). I need to be able to tag these implicit tags to all the content so that the users can discover them.

Q: Why do we even need tags?

  • Tags represent core concepts that may be implicit.
  • Keywords in a project's title or description may not be a core concept → noisy search results.
  • Objectives

  • Identify the relevant tags for a given content with 70% recall.
  • Reduce week-to-week tickets based on search errors by 20%
  • Solutions

    • Current solutions → simple text matching based search (noisy and incomplete).

    • Identify tags for a given content → use available signals from content.

    • Measure engagement on platform → track engagement after discovery of content. image

    • Alternatives considered

      • Currently, the tagging process involves adding tags into an input box but what if we could separate the process into sections like frameworks, tasks, algorithms, etc. to guide the user to add relevant tags. This is a very simple solution that should be A/B tested on and could even complement more sophisticated solutions.

    Feasibility

    What are the signals?

  • title, description and other relevant metadata from the content [DATA]
  • are the tokens in the content metadata enough signal to identify explicit and implicit tags [EXPLORE]
  • Constraints

    • maintain low latency (>100ms) when providing our generated tags. [Latency]
    • only recommend tags from our list of approved tags. [Security]
    • avoid overwhelming the author with too many predicted tags. [UI/UX]

    About

    Simulation of creativity in Machines

    Resources

    Stars

    Watchers

    Forks

    Releases

    No releases published

    Packages

    No packages published