Key Features
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 programming to the next level by creating and customizing AI applications
Experiment with different techniques and evaluate their benefits and limitations using real-world applications in a tutorial style
Book Description
The discovery of information through data clustering and classification is becoming a key differentiator for competitive organizations. Machine learning applications are everywhere, from self-driving cars, engineering design, logistics, manufacturing, and trading strategies, to detection of genetic anomalies.
The book is your one stop guide that introduces you to the functional capabilities of the Scala programming language that are critical to the creation of machine learning algorithms such as dependency injection and implicits. You start by learning data preprocessing and filtering techniques. Following this, you'll move on to unsupervised learning techniques such as clustering and dimension reduction, followed by probabilistic graphical models such as Naive Bayes, hidden Markov models and Monte Carlo inference. Further, it covers the discriminative algorithms such as linear, logistic regression with regularization, kernelization, support vector machines, neural networks, and deep learning. You'll move on to evolutionary computing, multibandit algorithms, and reinforcement learning.
Finally, the book includes a comprehensive overview of parallel computing in Scala and Akka followed by a description of Apache Spark and its ML library. With updated codes based on the latest version of Scala and comprehensive examples, this book will ensure that you have more than just a solid fundamental knowledge in machine learning with Scala.
What you will learn
Build dynamic workflows for scientific computing
Leverage open source libraries to extract patterns from time series
Write your own classification, clustering, or evolutionary algorithm
Perform relative performance tuning and evaluation of Spark
Master probabilistic models for sequential data
Experiment with advanced techniques such as regularization and kernelization
Dive into neural networks and some deep learning architecture
Apply some basic multiarm-bandit algorithms
Solve big data problems with Scala parallel collections, Akka actors, and Apache Spark clusters
Apply key learning strategies to a technical analysis of financial markets
About the Author
Patrick R. Nicolas
is the director of engineering at Agile SDE, California. He has more than 25 years of experience in software engineering and building applications in C++, Java, and more recently in Scala/Spark, and has held several managerial positions. His interests include real-time analytics, modeling, and the development of nonlinear models.
Table of Contents
Getting Started
Data pipeline
Data pre-processing
Clustering
Dimension reduction
Naive Bayes Classifiers
Sequential data models
Monte Carlo Inference
Regression and Regularization
Multi-layer perceptron
Deep learning
Kernel models & support vector machines
Evolutionary computing
Multi-arm bandits
Reinforcement learning
Parallelism in Scala and Akka
Apache Spark
Appendix Basic concepts
References
Також купити книгу Scala for Machine Learning, Second Edition 2nd ed. Edition, Patrick R Nicolas Ви можете по посиланню