Book Image

Scala Machine Learning Projects

Book Image

Scala Machine Learning Projects

Overview of this book

Machine learning has had a huge impact on academia and industry by turning data into actionable information. Scala has seen a steady rise in adoption over the past few years, especially in the fields of data science and analytics. This book is for data scientists, data engineers, and deep learning enthusiasts who have a background in complex numerical computing and want to know more hands-on machine learning application development. If you're well versed in machine learning concepts and want to expand your knowledge by delving into the practical implementation of these concepts using the power of Scala, then this book is what you need! Through 11 end-to-end projects, you will be acquainted with popular machine learning libraries such as Spark ML, H2O, DeepLearning4j, and MXNet. At the end, you will be able to use numerical computing and functional programming to carry out complex numerical tasks to develop, build, and deploy research or commercial projects in a production-ready environment.
Table of Contents (17 chapters)
Title Page
Packt Upsell
Contributors
Preface
Index

Summary


In this chapter, we have used a dataset having more than 284,807 instances of credit card use and for each transaction where only 0.172% transactions are fraudulent. We have seen how we can use autoencoders to pre-train a classification model and how to apply anomaly detection techniques to predict possible fraudulent transactions from highly imbalanced data—that is, we expected our fraudulent cases to be anomalies within the whole dataset.

Our final model now correctly identified 83% of fraudulent cases and almost 100% of non-fraudulent cases. Nevertheless, we have seen how to use anomaly detection using outliers, some ways of hyperparameter tuning, and, most importantly, feature selection.

A recurrent neural network (RNN) is a class of artificial neural network where connections between units form a directed cycle. RNNs make use of information from the past. That way, they can make predictions in data with high temporal dependencies. This creates an internal state of the network...