Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Loading in …3
×
1 of 29

Introduction to Machine Learning

9

Share

Download to read offline

Machine Learning is all the rage today with many different options and paradigms. This session will walk through the basics of Machine Learning and show how to get started with the open source Spark ML framework. Through Scala code examples you will learn how to build and deploy learning systems like recommendation engines.

More Related Content

You Might Also Like

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Introduction to Machine Learning

  1. 1. James Ward Platform Evangelist jamesward.com @_JamesWard Introduction to Machine Learning
  2. 2. Machine Learning • Deep Learning • Predictive Analytics • NLP • Smart Data Discovery AI in the Salesforce Platform Salesforce Einstein Introducing World’s smartest CRM Empowering Sales, Service, Marketing & IT Everyone can build AI-powered apps fast
  3. 3. How Humans Learn Observe world Compare to expectations Analyze differences Refine model
  4. 4. How Machines Learn Data to Model Evaluate model Feedback signals Refine model
  5. 5. What is Machine Learning? Decision if (a == “foo”) { if (b == “bar”) { if (c == “baz”) { Data Ask Model Prediction Categorization Apply Algorithm Create Model Data Pattern Recognition via Zeros & Ones
  6. 6. Machine Learning
  7. 7. Machine Learning Spectrum Use Cases • Search Relevance • Collaborative Filtering • Decision Support • Time Series Forecasting Core Methods • Compression • Classification • Regression • Reinforcement Frameworks • Neural Networks • Support Vector Machines • Decision Trees • Bayesian Models • K-Nearest Neighbor • Logistic Regression
  8. 8. Use Cases o Rate leads with how likely they are to close o Categorize this text as offensive or not o Recommend products based on what I’ve liked o Detect anomalies in credit card purchase behavior
  9. 9. ML Core Methods • Compression – Determine the pattern • Classification – Determine if “thing” is an x or y • Regression – Determine the correct output for an input • Reinforcement – Determine what action yields an award
  10. 10. Product Recommendation User Likes Prediction Collaborative Filtering
  11. 11. Demo! https://dreamhouseapp.io/pio
  12. 12. Prediction IO = Open Source Machine Learning Server Heroku = Cloud platform to deliver, scale, and monitor apps built in any technology Heroku Postgres = Relational database in the cloud, managed by Heroku Heroku Connect = Data sync between Salesforce and Heroku Postgres Apache Spark = Big Data Framework Spark ML = Machine Learning libraries built on Apache Spark Pieces of the Puzzle
  13. 13. Product Recommendation User 1 User 2 User 3 User 4 User 5 Property 1 ✔ Property 2 ✔ ✔ Property 3 ✔ ✔ ✔ Property 4 ✔ ✔ Property 5 ✔ Human Intelligence First ★ ★ ★ ★ ★   
  14. 14. Product Recommendation 4 Bedroom Near Park Good School Views New Build Property 1 ✔ ✔ Property 2 ✔ ✔ Property 3 ✔ ✔ Property 4 ✔ Property 5 ✔ ✔ Features 4 Bedroom Near Park Good School Views New Build User 1 ✔ ✔ User 2 ✔ ✔ User 3 ✔ ✔ User 4 ✔ ✔ User 5 ✔ ✔
  15. 15. Product Recommendation Deriving Features from Favorites 4 Bedroom Near Park Good School Views New Build Property 1 ✔ ✔ Property 2 ✔ ✔ Property 3 ✔ ✔ Property 4 ✔ Property 5 ✔ ✔ × 4 Bedroom Near Park Good School Views New Build User 1 ✔ ✔ User 2 ✔ ✔ User 3 ✔ ✔ User 4 ✔ ✔ User 5 ✔ ✔ Property Features User FeaturesFavorites = User 1 User 2 User 3 User 4 User 5 Property 1 ✔ Property 2 ✔ ✔ Property 3 ✔ ✔ ✔ Property 4 ✔ ✔ Property 5 ✔ 4 Bedroom Near Park Good School Views New Build Property 1 ✔ ✔ Property 2 ✔ ✔ Property 3 ✔ ✔ Property 4 ✔ Property 5 ✔ ✔ × 4 Bedroom Near Park Good School Views New Build User 1 ✔ ✔ User 2 ✔ ✔ User 3 ✔ ✔ User 4 ✔ ✔ User 5 ✔ ✔ Property FeaturesUser FeaturesFavorites = User 1 User 2 User 3 User 4 User 5 Property 1 ✔ Property 2 ✔ ✔ Property 3 ✔ ✔ ✔ Property 4 ✔ ✔ Property 5 ✔
  16. 16. Product Recommendation Deriving Recommendations from Features 4 Bedroom Near Park Good School Views New Build Property 1 ✔ ✔ Property 2 ✔ ✔ Property 3 ✔ ✔ Property 4 ✔ Property 5 ✔ ✔ × 4 Bedroom Near Park Good School Views New Build User 1 ✔ ✔ User 2 ✔ ✔ User 3 ✔ ✔ User 4 ✔ ✔ User 5 ✔ ✔ Property Features User Features Recommendations = User 1 User 2 User 3 User 4 User 5 Property 1 ✔ ★ Property 2 ✔ ✔ ★ ★ Property 3 ✔ ✔ ✔ Property 4 ★ ✔ ✔ Property 5 ✔ Favorites User 1 User 2 User 3 User 4 User 5 Property 1 ✔ Property 2 ✔ ✔ Property 3 ✔ ✔ ✔ Property 4 ✔ ✔ Property 5 ✔ ? 4 Bedroom Near Park Good School Views New Build Property 1 ✔ ✔ Property 2 ✔ ✔ Property 3 ✔ ✔ Property 4 ✔ Property 5 ✔ ✔ & 4 Bedroom Near Park Good School Views New Build User 1 ✔ ✔ User 2 ✔ ✔ User 3 ✔ ✔ User 4 ✔ ✔ User 5 ✔ ✔ Property Features User Features
  17. 17. Alternating Least Squares 4 Bedroom Near Park Good School Views New Build User 1 ✔ ✔ User 2 ✔ ✔ User 3 ✔ User 4 ✔ ✔ User 5 ✔ 1. Generate Random User Feature Data 4 Bedroom Near Park Good School Views New Build Property 1 ✔ ✔ Property 2 ✔ ✔ Property 3 ✔ Property 4 ✔ Property 5 ✔ 2. Using Favorites, Compute Optimal Property Features User 1 User 2 User 3 User 4 User 5 Property 1 ✔ Property 2 ✔ ✔ Property 3 ✔ ✔ ✔ Property 4 ✔ ✔ Property 5 ✔ × = 3. Using Property Features and Favorites, Compute Optimal User Features User 1 User 2 User 3 User 4 User 5 Property 1 ✔ Property 2 ✔ ✔ Property 3 ✔ ✔ ✔ Property 4 ✔ ✔ Property 5 ✔ 4 Bedroom Near Park Good School Views New Build Property 1 ✔ ✔ Property 2 ✔ ✔ Property 3 ✔ Property 4 ✔ Property 5 ✔ × 4 Bedroom Near Park Good School Views New Build User 1 ✔ User 2 ✔ ✔ ✔ User 3 ✔ User 4 ✔ ✔ User 5 ✔ ✔ = 4. Repeat The User Features & Property Features converge to a model that fits the training data
  18. 18. Latent Features Feature 1 Feature 2 Feature 3 Feature 4 Feature N Property 1 ✔ ✔ Property 2 ✔ ✔ Property 3 ✔ ✔ Property 4 ✔ Property 5 ✔ ✔ Feature 1 Feature 2 Feature 3 Feature 4 Feature N User 1 ✔ ✔ User 2 ✔ ✔ User 3 ✔ ✔ User 4 ✔ ✔ User 5 ✔ ✔
  19. 19. Data -> Model -> Prediction Recommendations User 1 User 2 User 3 User 4 User 5 Property 1 ✔ ★ Property 2 ✔ ✔ ★ ★ Property 3 ✔ ✔ ✔ Property 4 ★ ✔ ✔ Property 5 ✔ Favorites User 1 User 2 User 3 User 4 User 5 Property 1 ✔ Property 2 ✔ ✔ Property 3 ✔ ✔ ✔ Property 4 ✔ ✔ Property 5 ✔ 4 Bedroom Near Park Good School Views New Build Property 1 ✔ ✔ Property 2 ✔ ✔ Property 3 ✔ ✔ Property 4 ✔ Property 5 ✔ ✔ 4 Bedroom Near Park Good School Views New Build User 1 ✔ ✔ User 2 ✔ ✔ User 3 ✔ ✔ User 4 ✔ ✔ User 5 ✔ ✔ Property Features User Features
  20. 20. Dot Product Calculating Predictions Feature 1 Feature 2 Feature 3 Feature 4 Feature N Property 1 ✔ ✔ Feature 1 Feature 2 Feature 3 Feature 4 Feature N User 1 ✔ ✔ 0 × 0 ++ ++ 1 × 1 1 × 0 0 × 1 0 × 0
  21. 21. Recommendations Matrix Factorization Model User 1 User 2 User 3 User 4 User 5 Property 1 9 7 5 5 0 Property 2 9 9 7 7 0 Property 3 7 9 9 9 0 Property 4 5 9 9 9 0 Property 5 0 0 0 0 9
  22. 22. ALS Storage Efficiency User 1 User 2 User 3 User 4 User 5 User6 User7 User8 User9 User10 Propert y 1 9 7 5 5 0 9 7 5 5 0 Propert y 2 9 9 7 7 0 9 9 7 7 0 Propert y 3 7 9 9 9 0 7 9 9 9 0 Propert y 4 5 9 9 9 0 5 9 9 9 0 Propert y 5 0 0 0 0 9 0 0 0 0 9 Propert y6 9 7 5 5 0 9 7 5 5 0 Propert y7 9 9 7 7 0 9 9 7 7 0 Propert y8 7 9 9 9 0 7 9 9 9 0 Propert y9 5 9 9 9 0 5 9 9 9 0 Propert y10 0 0 0 0 9 0 0 0 0 9 User 1 User 2 User 3 User 4 User 5 User 6 User 7 User 8 User 9 User 10 Featu re1 9 7 5 5 0 9 7 5 5 0 Featu re2 9 9 7 7 0 9 9 7 7 0 Featu re3 7 9 9 9 0 7 9 9 9 0 Users x Properties 10 x 10 Feature1 Feature2 Feature3 Property 1 9 7 5 Property 2 9 9 7 Property 3 7 9 9 Property 4 5 9 9 Property 5 0 0 0 Property 6 9 7 5 Property 7 9 9 7 Property 8 7 9 9 Property 9 5 9 9 Property 10 0 0 0 Features x Properties 3 x 10 + Users x Features 10 x 3
  23. 23. Alternating Least Squares val favorites: Seq[Favorite] = ... val ratings = favorites.map(fav => Rating(fav.user, fav.prop, 1)) val (userFeatures, propertyFeatures) = ALS.train(ratings = ratings, rank = 5) val predictions = userFeatures * propertyFeatures val predictionsForUser = predictions.filter(_.userId == userId) Spark ML Makes it Easy
  24. 24. Code! https://github.com/jamesward/dreamhouse-sparkml
  25. 25. Deployment • Deploy it on Heroku • Run on a Spark Cluster • When to train? • Where to put the model?
  26. 26. PredictionIO • Template Gallery • Event Server • Model Persistence • Engine Tuning & Versioning • REST Endpoint for Predictions Open Source Machine Learning Server
  27. 27. Introducing: Predictive Vision & Sentiment Services ` Leverage existing and train your own deep learning models to recognize and classify images Access deep learning models to classify the sentiment of text Predictive Vision Service Predictive Sentiment Service Predictive Sentiment Service Get started today! metamind.io Introducing: Predictive Vision & Sentiment Services
  28. 28. Predictive Services
  29. 29. Thank Y u

Editor's Notes

  • Talk track
    And today we are excited to announce Salesforce Einstein. Einstein is bringing AI to Everyone.
    First, it makes the World’s #1 CRM the World’s Smartest CRM
    Second, Einstein empowers all our users - Sales, Service, Marketing, and IT - to be their best and be smarter about their customers.
    And finally, we went beyond the apps and extended Einstein to our platform so everyone can build AI Powered apps.
    ### more copy ###
    The power of Einstein comes from combining our leadership in cloud technology with this comprehensive set of technologies that we acquired or built - machine learning, deep learning, smart discovery and NLP.
    When applied to customer data and a deep understanding of the customer experience we will make our apps smarter, and have Intelligence built into Salesforce.
    Namely:
    • Sales users can prospect better, improve forecasting, and automate routine tasks
    • Service users can leverage IoT, intelligent communities, and aided case recommendations to deliver new levels of service
    • Marketing users can personalize campaigns so every customer receives the right content on the right channel at the right time

  • ×