Java Deep Learning Essentials

Book description

Dive into the future of data science and learn how to build the sophisticated algorithms that are fundamental to deep learning and AI with Java

About This Book

  • Go beyond the theory and put Deep Learning into practice with Java
  • Find out how to build a range of Deep Learning algorithms using a range of leading frameworks including DL4J, Theano and Caffe
  • Whether you're a data scientist or Java developer, dive in and find out how to tackle Deep Learning

Who This Book Is For

This book is intended for data scientists and Java developers who want to dive into the exciting world of deep learning. It would also be good for machine learning users who intend to leverage deep learning in their projects, working within a big data environment.

What You Will Learn

  • Get a practical deep dive into machine learning and deep learning algorithms
  • Implement machine learning algorithms related to deep learning
  • Explore neural networks using some of the most popular Deep Learning frameworks
  • Dive into Deep Belief Nets and Stacked Denoising Autoencoders algorithms
  • Discover more deep learning algorithms with Dropout and Convolutional Neural Networks
  • Gain an insight into the deep learning library DL4J and its practical uses
  • Get to know device strategies to use deep learning algorithms and libraries in the real world
  • Explore deep learning further with Theano and Caffe

In Detail

AI and Deep Learning are transforming the way we understand software, making computers more intelligent than we could even imagine just a decade ago. Deep Learning algorithms are being used across a broad range of industries ? as the fundamental driver of AI, being able to tackle Deep Learning is going to a vital and valuable skill not only within the tech world but also for the wider global economy that depends upon knowledge and insight for growth and success. It's something that's moving beyond the realm of data science ? if you're a Java developer, this book gives you a great opportunity to expand your skillset.

Starting with an introduction to basic machine learning algorithms, to give you a solid foundation, Deep Learning with Java takes you further into this vital world of stunning predictive insights and remarkable machine intelligence. Once you've got to grips with the fundamental mathematical principles, you'll start exploring neural networks and identify how to tackle challenges in large networks using advanced algorithms. You will learn how to use the DL4J library and apply Deep Learning to a range of real-world use cases. Featuring further guidance and insights to help you solve challenging problems in image processing, speech recognition, language modeling, this book will make you rethink what you can do with Java, showing you how to use it for truly cutting-edge predictive insights. As a bonus, you'll also be able to get to grips with Theano and Caffe, two of the most important tools in Deep Learning today.

By the end of the book, you'll be ready to tackle Deep Learning with Java. Wherever you've come from ? whether you're a data scientist or Java developer ? you will become a part of the Deep Learning revolution!

Style and approach

This is a step-by-step, practical tutorial that discusses key concepts. This book offers a hands-on approach to key algorithms to help you develop a greater understanding of deep learning. It is packed with implementations from scratch, with detailed explanation that make the concepts easy to understand and follow.

Table of contents

  1. Java Deep Learning Essentials
    1. Table of Contents
    2. Java Deep Learning Essentials
    3. Credits
    4. About the Author
    5. About the Reviewers
    6. www.PacktPub.com
      1. eBooks, discount offers, and more
        1. Why subscribe?
    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. Errata
        3. Piracy
        4. Questions
    8. 1. Deep Learning Overview
      1. Transition of AI
        1. Definition of AI
        2. AI booms in the past
        3. Machine learning evolves
        4. What even machine learning cannot do
      2. Things dividing a machine and human
      3. AI and deep learning
      4. Summary
    9. 2. Algorithms for Machine Learning – Preparing for Deep Learning
      1. Getting started
      2. The need for training in machine learning
      3. Supervised and unsupervised learning
        1. Support Vector Machine (SVM)
        2. Hidden Markov Model (HMM)
        3. Neural networks
        4. Logistic regression
        5. Reinforcement learning
      4. Machine learning application flow
      5. Theories and algorithms of neural networks
        1. Perceptrons (single-layer neural networks)
        2. Logistic regression
        3. Multi-class logistic regression
        4. Multi-layer perceptrons (multi-layer neural networks)
      6. Summary
    10. 3. Deep Belief Nets and Stacked Denoising Autoencoders
      1. Neural networks fall
      2. Neural networks' revenge
        1. Deep learning's evolution – what was the breakthrough?
        2. Deep learning with pre-training
      3. Deep learning algorithms
        1. Restricted Boltzmann machines
        2. Deep Belief Nets (DBNs)
        3. Denoising Autoencoders
        4. Stacked Denoising Autoencoders (SDA)
      4. Summary
    11. 4. Dropout and Convolutional Neural Networks
      1. Deep learning algorithms without pre-training
      2. Dropout
      3. Convolutional neural networks
        1. Convolution
        2. Pooling
        3. Equations and implementations
      4. Summary
    12. 5. Exploring Java Deep Learning Libraries – DL4J, ND4J, and More
      1. Implementing from scratch versus a library/framework
      2. Introducing DL4J and ND4J
      3. Implementations with ND4J
      4. Implementations with DL4J
        1. Setup
        2. Build
          1. DBNIrisExample.java
          2. CSVExample.java
        3. CNNMnistExample.java/LenetMnistExample.java
        4. Learning rate optimization
      5. Summary
    13. 6. Approaches to Practical Applications – Recurrent Neural Networks and More
      1. Fields where deep learning is active
        1. Image recognition
        2. Natural language processing
          1. Feed-forward neural networks for NLP
          2. Deep learning for NLP
            1. Recurrent neural networks
            2. Long short term memory networks
      2. The difficulties of deep learning
      3. The approaches to maximizing deep learning possibilities and abilities
        1. Field-oriented approach
          1. Medicine
          2. Automobiles
          3. Advert technologies
          4. Profession or practice
          5. Sports
        2. Breakdown-oriented approach
        3. Output-oriented approach
      4. Summary
    14. 7. Other Important Deep Learning Libraries
      1. Theano
      2. TensorFlow
      3. Caffe
      4. Summary
    15. 8. What's Next?
      1. Breaking news about deep learning
      2. Expected next actions
      3. Useful news sources for deep learning
      4. Summary
    16. Index

Product information

  • Title: Java Deep Learning Essentials
  • Author(s): Yusuke Sugomori
  • Release date: May 2016
  • Publisher(s): Packt Publishing
  • ISBN: 9781785282195