adding machine learning to a web app

Post on 05-Jul-2015

6.856 Views

Category:

Technology

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

A walk-through of how we approached adding tag suggestions to addsharedo.com

TRANSCRIPT

Adding machine learning to a web app

Richard Dallaway @d6y

It’s easy, right?1. Get some data

2. Find magic stats & algorithms

3. Predict the future!

It’s easy, right?1. Get some data

2. Find magic stats & algorithms

3. Predict the future!

that helps solve the problem

frame the problem explore the data

pilotwhat’s success?

does this help users?UI impact?

behaviour changes?

Make it easier for users to #tag todos

tag

Can we suggest tags as a task is typed in?

Can we suggest tags as a task is typed in?

useful

Where to start?

from “Algorithms of the Intelligent Web”

“Google uses Bayesian filtering the way

Microsoft uses the if statement"

as told to Joel Spolsky

A contrived example#home 40% #work 60%

“windows”50%

“fix”50%

“windows”16.6%

“fix”83.4%

p(#home | “fix”, “windows”) ?

A contrived example#home 40% #work 60%

“windows”50%

“fix”50%

“windows”16.6%

“fix”83.4%

p(#home | “fix”) = 40% x 50%(40% x 50%) + (83.4% x 60%)

= about 28%

A contrived example#home 28% #work 72%

“windows”50%

“fix”50%

“windows”16.6%

“fix”83.4%

p(#home | “fix”, “windows”) = 28% x 50%(28% x 50%) + (16.6% x 72%)

= about 55%

p(#home | “fix”)

p(C | e) = P(C) x P(e | C) P(e)

p(C | e) = P(C) x P(e | C) P(e)

“the estimation of P(e | C) can be viewed as the central issue in designing learning systems. ”

— Weiss & Kulikowski “Computer Systems that Learn”

results of running the model

It’s easy, right?1. Explore the data

2. Frame your problem

3. Measure the performance honestly

Write it yourself?Find a library?Ask Google to do it for you?

How to build?

...but pilot with offline data first.

www.manning.com40% off with bathcamp40

until August 10th

Questions?or later: @d6y richard@SpiralArm.com

top related