Code Monkey home page Code Monkey logo

scala-for-machine-learning-second-edition's Introduction

Scala for Machine Learning - Second Edition

This is the code repository for Scala for Machine Learning - Second Edition, published by Packt. It contains all the supporting project files necessary to work through the book from start to finish.

About the Book

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 Naïve 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.

Instructions and Navigation

All chapter contains code files.

For breif instructions, visit authors GitHub repository by using the following link:

https://github.com/prnicolas/ScalaML_2nd_Edition#run

The code will look like the following:

[default]
val lsp = builder.model(lrJacobian)
.weight(wMatrix)
.target(labels)

A decent command of the Scala programming language is a prerequisite. Reading through a mathematical formulation, conveniently defied in an information box, is optional. However, some basic knowledge of mathematics and statistics might be helpful to understand the inner workings of some algorithms. The book uses the following libraries:

  • Scala 2.11.8 or higher
  • Java 1.8.0_25
  • SBT 0.13 or higher
  • JFreeChart 1.0.17
  • Apache Commons Math library 3.5 (Chapter 3, Data Pre-processing, Chapter 4, Unsupervised Learning, and Chapter 9, Regression and Regularization)
  • Indian Institute of Technology Bombay CRF 0.2 (Chapter 7, Sequential Data Models)
  • LIBSVM 0.1.6 (Chapter 8, Kernel Models and Support Vector Machines)
  • Akka 2.3.8 or higher (or Typesafe activator 1.2.10 or higher) (Chapter 16, Parallelism in Scala and Akka)
  • Apache Spark 2.1.0 or higher (Chapter 17, Apache Spark MLlib)

Related Products

Suggestions and Feedback

Click here if you have any feedback or suggestions.

scala-for-machine-learning-second-edition's People

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.