Book Description
Create and unleash the power of neural networks by implementing professional Java code
About This Book
 Learn to build amazing projects using neural networks including forecasting the weather and pattern recognition
 Explore the Java multiplatform feature to run your personal neural networks everywhere
 This stepbystep guide will help you solve realworld problems and links neural network theory to their application
Who This Book Is For
This book is for Java developers who want to know how to develop smarter applications using the power of neural networks. Those who deal with a lot of complex data and want to use it efficiently in their daytoday apps will find this book quite useful. Some basic experience with statistical computations is expected.
What You Will Learn
 Develop an understanding of neural networks and how they can be fitted
 Explore the learning process of neural networks
 Build neural network applications with Java using handson examples
 Discover the power of neural network's unsupervised learning process to extract the intrinsic knowledge hidden behind the data
 Apply the code generated in practical examples, including weather forecasting and pattern recognition
 Understand how to make the best choice of learning parameters to ensure you have a more effective application
 Select and split data sets into training, test, and validation, and explore validation strategies
In Detail
Want to discover the current stateofart in the field of neural networks that will let you understand and design new strategies to apply to more complex problems? This book takes you on a complete walkthrough of the process of developing basic to advanced practical examples based on neural networks with Java, giving you everything you need to stand out.
You will first learn the basics of neural networks and their process of learning. We then focus on what Perceptrons are and their features. Next, you will implement selforganizing maps using practical examples. Further on, you will learn about some of the applications that are presented in this book such as weather forecasting, disease diagnosis, customer profiling, generalization, extreme machine learning, and characters recognition (OCR). Finally, you will learn methods to optimize and adapt neural networks in real time.
All the examples generated in the book are provided in the form of illustrative source code, which merges objectoriented programming (OOP) concepts and neural network features to enhance your learning experience.
Style and approach
This book takes you on a steady learning curve, teaching you the important concepts while being rich in examples. You'll be able to relate to the examples in the book while implementing neural networks in your daytoday applications.
Publisher Resources
Table of Contents

Neural Network Programming with Java Second Edition
 Table of Contents
 Neural Network Programming with Java Second Edition
 Credits
 About the Authors
 About the Reviewer
 www.PacktPub.com
 Customer Feedback
 Preface

1. Getting Started with Neural Networks
 Discovering neural networks

Why artificial neural networks?
 How neural networks are arranged
 The very basic element – artificial neuron
 Giving life to neurons – activation function
 The flexible values – weights
 An extra parameter – bias
 The parts forming the whole – layers
 Learning about neural network architectures
 Monolayer networks
 Multilayer networks
 Feedforward networks
 Feedback networks
 From ignorance to knowledge – learning process
 Let the coding begin! Neural networks in practice
 The neuron class
 The NeuralLayer class
 The ActivationFunction interface
 The neural network class
 Time to play!
 Summary
 2. Getting Neural Networks to Learn
 3. Perceptrons and Supervised Learning

4. SelfOrganizing Maps
 Neural networks unsupervised learning
 Unsupervised learning algorithms

Kohonen selforganizing maps
 Extending the neural network code to Kohonen
 Zerodimensional SOM
 Onedimensional SOM
 Twodimensional SOM
 2D competitive layer
 SOM learning algorithm
 Effect of neighboring neurons – the neighborhood function
 The learning rate
 A new class for competitive learning
 Visualizing the SOMs
 Plotting 2D training datasets and neuron weights
 Testing Kohonen learning
 Summary

5. Forecasting Weather
 Neural networks for regression problems
 Loading/selecting data
 Choosing input and output variables

Preprocessing
 Normalization
 Adapting NeuralDataSet to handle normalization
 Adapting the learning algorithm to normalization
 Java implementation of weather forecasting
 Collecting weather data
 Delaying variables
 Loading the data and beginning to play!
 Let's perform a correlation analysis
 Creating neural networks
 Training and test
 Viewing the neural network output
 Empirical design of neural networks
 Summary
 6. Classifying Disease Diagnosis
 7. Clustering Customer Profiles
 8. Text Recognition
 9. Optimizing and Adapting Neural Networks
 10. Current Trends in Neural Networks

A. References
 Chapter 1: Getting Started with Neural Networks
 Chapter 2: Getting Neural Networks to Learn
 Chapter 3: Perceptrons and Supervised Learning
 Chapter 4: SelfOrganizing Maps
 Chapter 5: Forecasting Weather
 Chapter 6: Classifying Disease Diagnosis
 Chapter 7: Clustering Customer Profiles
 Chapter 8: Text Recognition
 Chapter 9: Optimizing and Adapting Neural Networks
 Chapter 10: Current Trends in Neural Networks
 Index
Product Information
 Title: Neural Network Programming with Java  Second Edition
 Author(s):
 Release date: March 2017
 Publisher(s): Packt Publishing
 ISBN: 9781787126053