Cargando…

Scala for Machine Learning - Second Edition.

Leverage Scala and Machine Learning to study and construct systems that can learn from data About This Book Explore a broad variety of data processing, machine learning, and genetic algorithms through diagrams, mathematical formulation, and updated source code in Scala Take your expertise in Scala p...

Descripción completa

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Nicolas, Patrick R.
Formato: Electrónico eBook
Idioma:Inglés
Publicado: Birmingham : Packt Publishing, 2017.
Edición:2nd ed.
Temas:
Acceso en línea:Texto completo
Tabla de Contenidos:
  • Cover ; Copyright; Credits; About the Author; About the Reviewers; www.PacktPub.com; Customer Feedback; Table of Contents; Preface; Chapter 1: Getting Started ; Mathematical notations for the curious; Why machine learning?; Classification; Prediction; Optimization; Regression; Why Scala?; Scala as a functional language; Abstraction; Higher kinded types; Functors; Monads; Scala as an object oriented language; Scala as a scalable language; Model categorization; Taxonomy of machine learning algorithms; Unsupervised learning; Clustering; Dimension reduction; Supervised learning; Generative models.
  • Discriminative modelsSemi-supervised learning; Reinforcement learning; Leveraging Java libraries; Tools and frameworks; Java; Scala; Eclipse Scala IDE; IntelliJ IDEA Scala plugin; Simple build tool; Apache Commons Math; Description; Licensing; Installation; JFreeChart; Description; Licensing; Installation; Other libraries and frameworks; Source code; Convention; Context bounds; Presentation; Primitives and implicits; Immutability; Let's kick the tires; Writing a simple workflow; Step 1
  • scoping the problem; Step 2
  • loading data; Step 3
  • preprocessing data; Step 4
  • discovering patterns.
  • Step 5
  • implementing the classifierStep 6
  • evaluating the model; Summary; Chapter 2: Data Pipelines ; Modeling; What is a model?; Model versus design; Selecting features; Extracting features; Defining a methodology; Monadic data transformation; Error handling; Monads to the rescue; mplicit models; Explicit models; Workflow computational model; Supporting mathematical abstractions; Step 1
  • variable declaration; Step 2
  • model definition; Step 3
  • instantiation; Composing mixins to build workflow; Understanding the problem; Defining modules; Instantiating the workflow; Modularizing.
  • Profiling dataImmutable statistics; Z-score and Gauss; Assessing a model; Validation; Key quality metrics; F-score for binomial classification; F-score for multinomial classification; Area under the curves; Area under PRC; Area under ROC; Cross-validation; One-fold cross-validation; K-fold cross-validation; Bias-variance decomposition; Overfitting; Summary; Chapter 3: Data Preprocessing ; Time series in Scala; Context bounds; Types and operations; Transpose operator; Differential operator; Lazy views; Moving averages; Simple moving average; Weighted moving average; Exponential moving average.
  • Fourier analysisDiscrete Fourier transform (DFT); DFT-based filtering; Detection of market cycles; The discrete Kalman filter; The state space estimation; The transition equation; The measurement equation; The recursive algorithm; Prediction; Correction; Kalman smoothing; Fixed lag smoothing; Experimentation; Benefits and drawbacks; Alternative preprocessing techniques; Summary; Chapter 4: Unsupervised Learning ; K-mean clustering; K-means; Measuring similarity; Defining the algorithm; Step 1
  • Clusters configuration; Step 2
  • Clusters assignment; Step 3
  • Reconstruction error minimization.
  • Step 4
  • Classification.