You are previewing Clojure for Machine Learning.
O'Reilly logo
Clojure for Machine Learning

Book Description

In this compelling introduction to machine learning techniques and algorithms, you’ll learn how to use your knowledge of Clojure. From building systems to using machine learning techniques in cloud architecture, it’s the complete guide.

In Detail

Clojure for Machine Learning is an introduction to machine learning techniques and algorithms. This book demonstrates how you can apply these techniques to real-world problems using the Clojure programming language.

It explores many machine learning techniques and also describes how to use Clojure to build machine learning systems. This book starts off by introducing the simple machine learning problems of regression and classification. It also describes how you can implement these machine learning techniques in Clojure. The book also demonstrates several Clojure libraries, which can be useful in solving machine learning problems.

Clojure for Machine Learning familiarizes you with several pragmatic machine learning techniques. By the end of this book, you will be fully aware of the Clojure libraries that can be used to solve a given machine learning problem.

What You Will Learn

  • Build systems that use machine learning techniques in Clojure
  • Understand machine learning problems such as regression, classifi cation, and clustering
  • Discover the data structures used in machine learning techniques such as artifi cial neural networks and support vector machines
  • Implement machine learning algorithms in Clojure
  • Learn more about Clojure libraries to build machine learning systems
  • Discover techniques to improve and debug solutions built on machine learning techniques
  • Use machine learning techniques in a cloud architecture for the modern Web
  • Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at If you purchased this book elsewhere, you can visit and register to have the files e-mailed directly to you.

    Table of Contents

    1. Clojure for Machine Learning
      1. Table of Contents
      2. Clojure for Machine Learning
      3. Credits
      4. About the Author
      5. About the Reviewers
        1. Support files, eBooks, discount offers and more
          1. Why Subscribe?
          2. Free Access for Packt account holders
      7. Preface
        1. What this book covers
        2. What you need for this book
        3. Who this book is for
        4. Conventions
        5. Reader feedback
        6. Customer support
          1. Downloading the example code
          2. Downloading the color images of this book
          3. Errata
          4. Piracy
          5. Questions
      8. 1. Working with Matrices
        1. Introducing Leiningen
        2. Representing matrices
        3. Generating matrices
        4. Adding matrices
        5. Multiplying matrices
        6. Transposing and inverting matrices
        7. Interpolating using matrices
        8. Summary
      9. 2. Understanding Linear Regression
        1. Understanding single-variable linear regression
        2. Understanding gradient descent
        3. Understanding multivariable linear regression
          1. Gradient descent with multiple variables
        4. Understanding Ordinary Least Squares
        5. Using linear regression for prediction
        6. Understanding regularization
        7. Summary
      10. 3. Categorizing Data
        1. Understanding the binary and multiclass classification
        2. Understanding the Bayesian classification
        3. Using the k-nearest neighbors algorithm
        4. Using decision trees
        5. Summary
      11. 4. Building Neural Networks
        1. Understanding nonlinear regression
        2. Representing neural networks
        3. Understanding multilayer perceptron ANNs
        4. Understanding the backpropagation algorithm
        5. Understanding recurrent neural networks
        6. Building SOMs
        7. Summary
      12. 5. Selecting and Evaluating Data
        1. Understanding underfitting and overfitting
          1. Evaluating a model
          2. Understanding feature selection
        2. Varying the regularization parameter
        3. Understanding learning curves
        4. Improving a model
        5. Using cross-validation
        6. Building a spam classifier
        7. Summary
      13. 6. Building Support Vector Machines
        1. Understanding large margin classification
          1. Alternative forms of SVMs
        2. Linear classification using SVMs
        3. Using kernel SVMs
          1. Sequential minimal optimization
          2. Using kernel functions
        4. Summary
      14. 7. Clustering Data
        1. Using K-means clustering
          1. Clustering data using clj-ml
        2. Using hierarchical clustering
        3. Using Expectation-Maximization
        4. Using SOMs
        5. Reducing dimensions in the data
        6. Summary
      15. 8. Anomaly Detection and Recommendation
        1. Detecting anomalies
        2. Building recommendation systems
        3. Content-based filtering
        4. Collaborative filtering
        5. Using the Slope One algorithm
        6. Summary
      16. 9. Large-scale Machine Learning
        1. Using MapReduce
        2. Querying and storing datasets
        3. Machine learning in the cloud
        4. Summary
      17. A. References
        1. Chapter 1
        2. Chapter 2
        3. Chapter 3
        4. Chapter 4
        5. Chapter 5
        6. Chapter 6
        7. Chapter 7
        8. Chapter 8
        9. Chapter 9
      18. Index