Incremental Learning in the Ally Container

back

Premise

We know we need to introduce incremental learning to Ally. We won’t be able to achieve our vision for a turn-key product without it. It is also a feature of the product customers expect given it is an AI product not to mention it will be a critical component to delivering Ally for Intel.

All of that said, adding incremental learning to classifiers that are largely deterministic is not a straightforward process. The core idea is that instead of turning all of the classifiers into statistical models, we train the severity scores for what is classified as well as the policy that determines whether a given set of classifications qualify for moderation. For models that include statistical components, the incremental learning should tune these components.

Questions That Need To Be Addressed

  • How do we handle being told a message was a false negative?
  • How do we train all levels of the severity scores?
  • How do we make all of the classifiers probabilistic?
  • How do we handle failing fragments?
  • How do we synchronise updates across container instances?
  • How do we extend blacklists?
  • How do we extend whitelists?
  • What engineered features could we add beyond “Actor Temperature”?
  • How do we determine what the learning rate should be?
  • How do we add new classifiers?
  • How many messages do we need for the policy to converge?
  • How do we define the policy?
  • Do we return an opinion about what should be moderated?
  • How do we incorporate clustering and handle shifts in language?

The Ensemble Approach

Severity Scores

Engineered Features

Failing Fragments

Adding a Policy

Introducing Incremental Learning

Handling False Positives

Handling False Negatives

Testing and Validation


© 2019. All rights reserved.