TY - BOOK AU - Ansari,Saleem TI - Building a recommendation engine with Scala: learn to use Scala to build a recommendation engine from scratch and empower your website users T2 - Community experience distilled SN - 9781785282980 AV - QA76.73.S28 U1 - 005.114 23 PY - 2016/// CY - Birmingham, UK PB - Packt Publishing KW - Scala (Computer program language) KW - Functional programming languages KW - Machine learning KW - Scala (Langage de programmation) KW - Langages de programmation fonctionnels KW - Apprentissage automatique KW - COMPUTERS KW - Programming Languages KW - General KW - bisacsh KW - fast KW - Electronic books N1 - Includes index; Cover; Copyright; Credits; About the Author; About the Reviewers; www.PacktPub.com; Table of Contents; Preface; Chapter 1: Introduction to Scala and Machine Learning; Setting up Scala, SBT, and Apache Spark; A quick introduction to Scala; Case classes; Tuples; Scala REPL; SBT -- Scala Build Tool; Apache Spark; Setting up a standalone Apache Spark cluster; Apache Spark -- MLLib; Machine learning and recommendation engines; Summary; Chapter 2: Data Processing Pipeline Using Scala; Entree -- a sample dataset for recommendation systems; Data analysis of the Entree dataset; ETL -- extract transform loadExtract; Transform; Load; Extraction and transformation for machine learning; Types of data; Discrete; Continuous; Categorical; Cleaning the data; Missing data; Normalization; Standardization; Setting up MongoDB and Apache Kafka; Setting up MongoDB; Setting up Apache Kafka; Data processing pipeline for Entree; How does it relate to information retrieval?; Summary; Chapter 3: Conceptualizing an E-Commerce Store; Importance of recommender systems in e-commerce; Converting browsers into buyers; Making cross-sell happen; Increased loyalty time; Types of recommendation methodsFrequently bought together; An example of frequent patterns; People to people correlation; Customer reviews and ratings; People who were also interested in other similar items; Recommendation from others' views; Example of similar items; Manual; Automatic; Ephemeral; Persistent; The architecture of the project; Batch versus online; Summary; Chapter 4: Machine Learning Algorithms; Hands on with Spark/MLlib; Data types; Vector; Matrix; Labeled point; Statistics; Summary statistics; Correlation; Sampling; Hypothesis testing; Random data generation; Feature extraction and transformationTerm frequency-inverted document frequency (TF-IDF); Word2Vec; StandardScaler; Normalizer; Feature selection; Dimensionality reduction; Classification/regression; Linear methods; Naive Bayes; Decision trees; Ensembles; Clustering; K-Means; Expectation-maximization; Power iteration clustering; Latent Dirichlet Allocation; LDA example; Association analysis; Frequent pattern mining (FPGrowth); Summary; Chapter 5: Recommendation Engines and Where They Fit in?; Populating the Amazon dataset; Creating a web app with user/product pages; Creating a Play framework applicationThe home page; Product Groups; Product view; Customer views; Adding recommendation pages; The Top Rated view; The Most Popular view; The Monthly Trends view; Summary; Chapter 6: Collaborative Filtering versus Content-Based Recommendation Engines; Content-based recommendation; Similarity measures; Pearson correlation; Euclidean distance; Cosine measure; Spearman correlation; Tanimoto coefficient; Log likelihood test; Content-based recommendation steps; Clustering for performance; Collaborative filtering based recommendation; What is ALS? N2 - Learn to use Scala to build a recommendation engine from scratch and empower your website usersAbout This Book Learn the basics of a recommendation engine and its application in e-commerce Discover the tools and machine learning methods required to build a recommendation engine Explore different kinds of recommendation engines using Scala libraries such as MLib and SparkWho This Book Is ForThis book is written for those who want to learn the different tools in the Scala ecosystem to build a recommendation engine. No prior knowledge of Scala or recommendation engines is assumed. What You Will Learn Discover the tools in the Scala ecosystem Understand the challenges faced in e-commerce systems and learn how you can solve those challenges with a recommendation engine Familiarise yourself with machine learning algorithms provided by the Apache Spark framework Build different versions of recommendation engines from practical code examples Enhance the user experience by learning from user feedback Dive into the various techniques of recommender systems such as collaborative, content-based, and cross-recommendationsIn DetailWith an increase of data in online e-commerce systems, the challenges in assisting users with narrowing down their search have grown dramatically. The various tools available in the Scala ecosystem enable developers to build a processing pipeline to meet those challenges and create a recommendation system to accelerate business growth and leverage brand advocacy for your clients. This book provides you with the Scala knowledge you need to build a recommendation engine. You'll be introduced to Scala and other related tools to set the stage for the project and familiarise yourself with the different stages in the data processing pipeline, including at which stages you can leverage the power of Scala and related tools. You'll also discover different machine learning algorithms using MLLib. As the book progresses, you will gain detailed knowledge of what constitutes a collaborative filtering based recommendation and explore different methods to improve users' recommendation. Style and approachA step-by-step guide full of real-world, hands-on examples of Scala recommendation engines. Each example is placed in context with explanation and visuals UR - https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=1136526 ER -