"The greater promise of Big Data lies not in doing old things in slightly new ways. Instead, it lies in doing new things that were previously not possible. One major class of new things is adding intelligence to large-scale systems. In this session I will present a survey of how machine learning can be applied to real-life situations without having to get a PhD in advanced mathematics. These systems can be built today from open source components to increase business revenues by understanding what customers need and want. I will provide real world examples of best practices and pitfalls in machine learning including practical ways to build maintainable, high performance systems." - Ted Dunning
2. Agenda
• Intelligence – Artificial or Reflected
• Quick survey of machine learning
– without a PhD
– not all of it
• Available components
• What do customers really want
5. Reflected Intelligence!
• Society is not just a million individuals
• A web service with a million users is not the
same as a million users each with a computer
• Social computing emerges
6. What is Machine Learning?
• Statistics, but …
• New focus on prediction rather than
hypothesis testing
• Prediction means held-out data, not just the
future (now-casting)
7. The Classics
• Unsupervised
– AKA clustering (but not what you think that is)
– Mixture models, Markov models and more
– Learn from unlabeled data, describe it predictively
• Supervised
– AKA classification
– Learn from labeled data, guess labels for new data
• Also semi-supervised and hundreds of variants
8. Recent Insurgents
• Collaborative learning
– models that learn about you based on others
• Meta-modeling
– models that learn to reason about what other
models say
• Interactive systems
– systems that pick what to learn from
9. Techniques
• Surprise and coincidence
• Anomalous indicators
• Non-textual search using textual tools
• Dithering
• Meta-learning
11. A vice president of South Carolina Bank and Trust in
Bamberg, Maxwell has served as a tireless champion for
economic development in Bamberg County since
1999, welcoming industrial prospects to the county and working
with existing industries in their expansion efforts. Maxwell
served for many years as the president of the Bamberg County
Chamber of Commerce and remains an active member today.
12. The goal of learning is prediction. Learning falls into many
categories, including supervised learning, unsupervised
learning, online learning, and reinforcement learning. From the
perspective of statistical learning theory, supervised learning is
best understood.
13. Surprise and Coincidence
• Which words stand out in these examples?
• Which are just there because these are in
English?
• The words “the” and “Bamberg” both occur 3
times in the second article
– which is the more interesting statistic? Why?
14. More Surprise
• Anomalous indicators
– Events that occur before other events
– But occur anomalously often
• Indicators are not causes
• Nor certain
15. Example #1- Auto Insurance
• Predict probability of attrition and loss for
auto insurance customers
• Transactional variables include
– Claim history
– Traffic violation history
– Geographical code of residence(s)
– Vehicles owned
• Observed attrition and loss define past
behavior
16. Derived Variables
• Split training data according to observable
classes
• Define LLR variables for each class/variable
combination
• These 2 m v derived variables can be used
for clustering (spectral, k-means, neural gas
...)
• Proximity in LLR space to clusters are the
new modeling variables
17. Example #2 – Fraud Detection
• Predict probability that an account is likely
to result in charge-off due to fraud
• Transactional variables include
– Zip code
– Recent payments and charges
– Recent non-monetary transactions
• Bad payments, charge-off, delinquency are
observable behavioral outcomes
18. Derived Variables
• Split training data according to observable
classes
• Define LLR variables for each class/variable
combination
• These 2 m v derived variables can be used
directly as model variables
19. Search Abuse
• Non-textual search using textual tools
– A document can contain non-word tokens
– These might be anomalous indicators of an event
• SolR and similar engines can search for
indicators
– If we have a history of recent indicators, search
finds possible follow-on events
20. Introducing Noise
• Dithering
– add noise
– less for high ranks, more for low ranks
• Softens page boundary effects
• Introduces more exploration
22. Available components
• Mahout
– LLR test for anomaly
– Coocurrence computations
– Baseline components of Bayesian Bandits
• SolR
– Ready to roll for search
26. Input Data
• User transactions
– user id, merchant id
– SIC code, amount
• Offer transactions
– user id, offer id
– vendor id, merchant id’s,
– offers, views, accepts
27. Input Data
• User transactions
– user id, merchant id
– SIC code, amount
• Offer transactions
– user id, offer id
– vendor id, merchant id’s,
– offers, views, accepts
• Derived user data
– merchant id’s
– SIC codes
– offer & vendor id’s
• Derived merchant data
– local top40
– SIC code
– vendor code
– amount distribution
28. Cross-recommendation
• Per merchant indicators
– merchant id’s
– chain id’s
– SIC codes
– offer vendor id’s
• Computed by finding anomalous (indicator =>
merchant) rates
34. Objective Results
• At a very large credit card company
• History is all transactions, all web interaction
• Processing time cut from 20 hours per day to 3
• Recommendation engine load time decreased
from 8 hours to 3 minutes
35. Platform Needs
• Need to root web services and search system on the
cluster
– Copying negates unification
• Legacy indexers are extremely fast … but they assume
conventional file access
• High performance search engines need high
performance file I/O
• Need coordinated process management
36. Additional Opportunities
• Cross recommend from search queries to
documents
• Result is semantic search engine
• Uses reflected intelligence instead of artificial
intelligence
38. Another Example
• Users enter queries (A)
– (actor = user, item=query)
• Users view videos (B)
– (actor = user, item=video)
• A’A gives query recommendation
– “did you mean to ask for”
• B’B gives video recommendation
– “you might like these videos”
39. The punch-line
• B’A recommends videos in response to a
query
– (isn’t that a search engine?)
– (not quite, it doesn’t look at content or meta-
data)
40. Real-life example
• Query: “Paco de Lucia”
• Conventional meta-data search results:
– “hombres del paco” times 400
– not much else
• Recommendation based search:
– Flamenco guitar and dancers
– Spanish and classical guitar
– Van Halen doing a classical/flamenco riff
42. Hypothetical Example
• Want a navigational ontology?
• Just put labels on a web page with traffic
– This gives A = users x label clicks
• Remember viewing history
– This gives B = users x items
• Cross recommend
– B’A = label to item mapping
• After several users click, results are whatever
users think they should be
43. Next Steps
• That is up to you
• But I can help
– platforms (Solr, MapR)
– techniques (Mahout, math)
tdunning@maprtech.com
@ted_dunning
@ApacheMahout