Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Automating recommendation

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest. →

Automating recommendation

Replacing a hand-built decision tree with a robust machine learner for a website backend

Avatar for Joshua Dempster

Joshua Dempster

June 29, 2016

Other Decks in Technology

Transcript

  1. Company runs web-app recommender for various products/services Consider a fictional

    health care recommender: Medicare supplement silver plan
  2. Company runs web-app recommender for various products/services Consider a fictional

    health care recommender: Currently uses hand-built rules Medicare supplement silver plan
  3. Company runs web-app recommender for various products/services Consider a fictional

    health care recommender: Currently uses hand-built rules
  4. Company runs web-app recommender for various products/services Consider a fictional

    health care recommender: HypochondriacTM Unlimited Checkups Blue Cross Blue Shield Currently uses hand-built rules
  5. Company runs web-app recommender for various products/services Consider a fictional

    health care recommender: HypochondriacTM Unlimited Checkups Blue Cross Blue Shield NOT SCALABLE Currently uses hand-built rules
  6. HypochondriacTM Unlimited Checkups Blue Cross Blue Shield MLP (6 layers,

    57 node default) Solution: self-maintaining machine learner
  7. No data available on what plan previous users chose Solution:

    use old recommender to supervise new recommender Training
  8. No data available on what plan previous users chose Solution:

    use old recommender to supervise new recommender New Recommender: how likely is it that this plan is ranked first by old recommender? old recommender rank 1-N new recommender score 0-1 Training
  9. Pipeline Design {f1: ‘like’, f2: 6, f3: ‘blue’, lines: [{l1:

    ‘big’, l2: 12, l3: False} {l1: ‘small’, l2: 1, l3: True} {l1: ‘small’, l2: 0, l3: False} ] } 0.5 0.3 -.5 0 0.12 1.0 -0.4 translate to ML vector
  10. Pipeline Design User request (website) request vector translate to ML

    vector request vector plan1 vector request vector plan2 vector request vector plan3 vector SQL plan data
  11. Pipeline Design User request (website) request vector translate to ML

    vector request vector plan1 vector request vector plan2 vector request vector plan3 vector SQL plan data plan1 score plan2 score plan3 score Score each request-plan line with machine learner Return results sorted by score
  12. Pipeline Design User request (website) request vector translate to ML

    vector request vector plan1 vector request vector plan2 vector request vector plan3 vector SQL plan data plan1 score plan2 score plan3 score Score each request-plan line with machine learner Return results sorted by score Retrain on user selection
  13. Delivered: 1. Self-contained, scalable Python module to replace recommender 2.

    Built-in method for changing feature space 3. Retraining method to learn from user feedback
  14. Josh Dempster Computational physics Northwestern University PhD candidate Monte Carlo

    algorithms to design new active materials and nano- devices