Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Java Deep Learning Projects
Java Deep Learning Projects

Java Deep Learning Projects: Implement 10 real-world deep learning applications using Deeplearning4j and open source APIs

eBook
$29.99 $43.99
Paperback
$54.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Table of content icon View table of contents Preview book icon Preview Book

Java Deep Learning Projects

Cancer Types Prediction Using Recurrent Type Networks

Large-scale cancer genomics data often comes in multiplatform and heterogeneous forms. These datasets impose great challenges in terms of the bioinformatics approach and computational algorithms. Numerous researchers have proposed to utilize this data to overcome several challenges, using classical machine learning algorithms as either the primary subject or a supporting element for cancer diagnosis and prognosis.

In this chapter, we will use some deep learning architectures for cancer type classification from a very-high-dimensional dataset curated from The Cancer Genome Atlas (TCGA). First, we will describe the dataset and perform some preprocessing such that the dataset can be fed to our networks. We will then see how to prepare our programming environment, before moving on to coding with an open source, deep learning library...

Deep learning in cancer genomics

Biomedical informatics includes all techniques regarding the development of data analytics, mathematical modeling, and computational simulation for the study of biological systems. In recent years, we've witnessed huge leaps in biological computing that has resulted in large, information-rich resources being at our disposal. These cover domains such as anatomy, modeling (3D printers), genomics, and pharmacology, among others.

One of the most famous success stories of biomedical informatics is from the domain of genomics. The Human Genome Project (HGP) was an international research project with the objective of determining the full sequence of human DNA. This project has been one of the most important landmarks in computational biology and has been used as a base for other projects, including the Human Brain Project, which is determined to...

Cancer genomics dataset description

Genomics data covers all data related to DNA on living things. Although in this thesis we will also use other types of data like transcriptomic data (RNA and miRNA), for convenience purposes, all data will be termed as genomics data. Research on human genetics found a huge breakthrough in recent years due to the success of the HGP (1984-2000) on sequencing the full sequence of human DNA.

One of the areas that have been helped a lot due to this is the research of all diseases related to genetics, including cancer. Due to various biomedical analyses done on DNA, there exist various types of -omics or genomics data. Here are some types of -omics data that were crucial to cancer analysis:

  • Raw sequencing data: This corresponds to the DNA coding of whole chromosomes. In general, every human has 24 types of chromosomes in each cell of their body,...

Preparing programming environment

In this section, we will discuss how to configure DL4J, ND4s, Spark, and ND4J before getting started with the coding. The following are prerequisites when working with DL4J:

  • Java 1.8+ (64-bit only)
  • Apache Maven for automated build and dependency manager
  • IntelliJ IDEA or Eclipse IDE
  • Git for version control and CI/CD

The following libraries can be integrated with DJ4J to enhance your JVM experience while developing your ML applications:

  • DL4J: The core neural network framework, which comes up with many DL architectures and underlying functionalities.
  • ND4J: Can be considered as the NumPy of the JVM. It comes with some basic operations of linear algebra. Examples are matrix creation, addition, and multiplication.
  • DataVec: This library enables ETL operation while performing feature engineering.
  • JavaCPP: This library acts as the bridge between Java...

Cancer type prediction using an LSTM network

In the previous section, we have seen what our data (that is, features and labels) looks like. Now in this section, we try to classify those samples according to their labels. However, as we have seen, DL4J needs the data in a well-defined format so that it can be used to train the model. So let us perform the necessary preprocessing and feature engineering.

Dataset preparation for training

Since we do not have any unlabeled data, I would like to select some samples randomly for test. Well, one more thing is that features and labels come in two separate files. Therefore, we can perform the necessary preprocessing and then join them together so that our pre-processed data will have...

Frequently asked questions (FAQs)

Now that we have solved the Titanic survival prediction problem with an acceptable level of accuracy, there are other practical aspects of this problem and overall deep learning phenomena that need to be considered too. In this section, we will see some frequently asked questions that might be already in your mind. Answers to these questions can be found in Appendix A.

  1. Can't we use MLP to solve the cancer type prediction by handling this too high-dimensional data?
  2. Which activation and loss function can be used with RNN type nets?
  3. What is the best way of recurrent net weight initialization?
  4. Which updater and optimization algorithm should be used?
  5. In the Titanic survival prediction problem, we did not experience good accuracy. What could be possible reasons and how can we improve the accuracy?
  6. The predictive accuracy for cancer type prediction...

Summary

In this chapter, we saw how to classify cancer patients on the basis of tumor types from a very-high-dimensional gene expression dataset curated from TCGA. Our LSTM architecture managed to achieve 100% accuracy, which is outstanding. Nevertheless, we discussed many aspects of DL4J, which will be helpful in upcoming chapters. Finally, we saw answers to some frequent questions related to this project, LSTM network, and DL4J hyperparameters/nets tuning.

In the next chapter, we will see how to develop an end-to-end project for handling a multilabel (each entity can belong to multiple classes) image classification problem using CNN based on Scala and the DL4J framework on real Yelp image datasets. We will also discuss some theoretical aspects of CNNs before getting started. Nevertheless, we will discuss how to tune hyperparameters for better classification results.

...

Answers to questions

Answer to question 1: The answer is yes, but not very comfortably. That means a very deep feedforward network such as deep MLP or DBN can classify them with too many iterations.

However, also to speak frankly, MLP is the weakest deep architecture and is not ideal for very high dimensions like this. Moreover, DL4J has deprecated DBN since the DL4J 1.0.0-alpha release. Finally, I would still like to show an MLP network config just in case you want to try it:

// Create network configuration and conduct network training
MultiLayerConfiguration MLPconf = new NeuralNetConfiguration.Builder().seed(seed)
.optimizationAlgo(OptimizationAlgorithm.STOCHASTIC_GRADIENT_DESCENT)
.updater(new Adam(0.001)).weightInit(WeightInit.XAVIER).list()
.layer(0,new DenseLayer.Builder().nIn(numInputs).nOut(32)
.weightInit...
Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • Understand DL with Java by implementing real-world projects
  • Master implementations of various ANN models and build your own DL systems
  • Develop applications using NLP, image classification, RL, and GPU processing

Description

Java is one of the most widely used programming languages. With the rise of deep learning, it has become a popular choice of tool among data scientists and machine learning experts. Java Deep Learning Projects starts with an overview of deep learning concepts and then delves into advanced projects. You will see how to build several projects using different deep neural network architectures such as multilayer perceptrons, Deep Belief Networks, CNN, LSTM, and Factorization Machines. You will get acquainted with popular deep and machine learning libraries for Java such as Deeplearning4j, Spark ML, and RankSys and you’ll be able to use their features to build and deploy projects on distributed computing environments. You will then explore advanced domains such as transfer learning and deep reinforcement learning using the Java ecosystem, covering various real-world domains such as healthcare, NLP, image classification, and multimedia analytics with an easy-to-follow approach. Expert reviews and tips will follow every project to give you insights and hacks. By the end of this book, you will have stepped up your expertise when it comes to deep learning in Java, taking it beyond theory and be able to build your own advanced deep learning systems.

Who is this book for?

If you are a data scientist, machine learning professional, or deep learning practitioner keen to expand your knowledge by delving into the practical aspects of deep learning with Java, then this book is what you need! Get ready to build advanced deep learning models to carry out complex numerical computations. Some basic understanding of machine learning concepts and a working knowledge of Java are required.

What you will learn

  • Master deep learning and neural network architectures
  • Build real-life applications covering image classification, object detection, online trading, transfer learning, and multimedia analytics using DL4J and open-source APIs
  • Train ML agents to learn from data using deep reinforcement learning
  • Use factorization machines for advanced movie recommendations
  • Train DL models on distributed GPUs for faster deep learning with Spark and DL4J
  • Ease your learning experience through 69 FAQs

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Jun 29, 2018
Length: 436 pages
Edition : 1st
Language : English
ISBN-13 : 9781788996525
Category :
Languages :
Concepts :

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Product Details

Publication date : Jun 29, 2018
Length: 436 pages
Edition : 1st
Language : English
ISBN-13 : 9781788996525
Category :
Languages :
Concepts :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 124.97
Natural Language Processing with Java
$43.99
Java Deep Learning Projects
$54.99
Hands-On Artificial Intelligence with Java for Beginners
$25.99
Total $ 124.97 Stars icon
Banner background image

Table of Contents

12 Chapters
Getting Started with Deep Learning Chevron down icon Chevron up icon
Cancer Types Prediction Using Recurrent Type Networks Chevron down icon Chevron up icon
Multi-Label Image Classification Using Convolutional Neural Networks Chevron down icon Chevron up icon
Sentiment Analysis Using Word2Vec and LSTM Network Chevron down icon Chevron up icon
Transfer Learning for Image Classification Chevron down icon Chevron up icon
Real-Time Object Detection using YOLO, JavaCV, and DL4J Chevron down icon Chevron up icon
Stock Price Prediction Using LSTM Network Chevron down icon Chevron up icon
Distributed Deep Learning – Video Classification Using Convolutional LSTM Networks Chevron down icon Chevron up icon
Playing GridWorld Game Using Deep Reinforcement Learning Chevron down icon Chevron up icon
Developing Movie Recommendation Systems Using Factorization Machines Chevron down icon Chevron up icon
Discussion, Current Trends, and Outlook Chevron down icon Chevron up icon
Other Books You May Enjoy Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
(4 Ratings)
5 star 25%
4 star 50%
3 star 25%
2 star 0%
1 star 0%
Jeffrey DeLong Mar 10, 2019
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I am part way through this book and am learning a lot. In particular the examples are well thought out and real world. I have spent many hours going through them, as there is a lot to learn from them. I would recommend this book to anyone interested in deep learning with some experience with Java.
Amazon Verified review Amazon
Stefan Hildebrandt Jul 03, 2018
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
I've started using Java for DL projects and I had the opportunity to be one of the first readers of this book. A key insight for me was, that there are dozens of valuable examples and, considering that Java is usually not the first choice in this field, it's extremely helpful to have such a resource.
Amazon Verified review Amazon
大村 Jul 19, 2019
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
Deep Learning for Java (DL4J) を紹介している点では、啓発的な本です。ただ難点は、サンプルコードが少ない 点です。DL4J の環境設定や 使用例(サンプルコード)が あれば、良かったです。
Amazon Verified review Amazon
Amazon Customer Jan 09, 2020
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
I was hoping for much from this book but it is littered with spelling mistakes and throwaway confusing lines because no definition of what is being discussed is given, or is given paragraphs later. Some diagrams also do not make sense. It became increasingly irritating. This book needs a significant revision.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

How do I buy and download an eBook? Chevron down icon Chevron up icon

Where there is an eBook version of a title available, you can buy it from the book details for that title. Add either the standalone eBook or the eBook and print book bundle to your shopping cart. Your eBook will show in your cart as a product on its own. After completing checkout and payment in the normal way, you will receive your receipt on the screen containing a link to a personalised PDF download file. This link will remain active for 30 days. You can download backup copies of the file by logging in to your account at any time.

If you already have Adobe reader installed, then clicking on the link will download and open the PDF file directly. If you don't, then save the PDF file on your machine and download the Reader to view it.

Please Note: Packt eBooks are non-returnable and non-refundable.

Packt eBook and Licensing When you buy an eBook from Packt Publishing, completing your purchase means you accept the terms of our licence agreement. Please read the full text of the agreement. In it we have tried to balance the need for the ebook to be usable for you the reader with our needs to protect the rights of us as Publishers and of our authors. In summary, the agreement says:

  • You may make copies of your eBook for your own use onto any machine
  • You may not pass copies of the eBook on to anyone else
How can I make a purchase on your website? Chevron down icon Chevron up icon

If you want to purchase a video course, eBook or Bundle (Print+eBook) please follow below steps:

  1. Register on our website using your email address and the password.
  2. Search for the title by name or ISBN using the search option.
  3. Select the title you want to purchase.
  4. Choose the format you wish to purchase the title in; if you order the Print Book, you get a free eBook copy of the same title. 
  5. Proceed with the checkout process (payment to be made using Credit Card, Debit Cart, or PayPal)
Where can I access support around an eBook? Chevron down icon Chevron up icon
  • If you experience a problem with using or installing Adobe Reader, the contact Adobe directly.
  • To view the errata for the book, see www.packtpub.com/support and view the pages for the title you have.
  • To view your account details or to download a new copy of the book go to www.packtpub.com/account
  • To contact us directly if a problem is not resolved, use www.packtpub.com/contact-us
What eBook formats do Packt support? Chevron down icon Chevron up icon

Our eBooks are currently available in a variety of formats such as PDF and ePubs. In the future, this may well change with trends and development in technology, but please note that our PDFs are not Adobe eBook Reader format, which has greater restrictions on security.

You will need to use Adobe Reader v9 or later in order to read Packt's PDF eBooks.

What are the benefits of eBooks? Chevron down icon Chevron up icon
  • You can get the information you need immediately
  • You can easily take them with you on a laptop
  • You can download them an unlimited number of times
  • You can print them out
  • They are copy-paste enabled
  • They are searchable
  • There is no password protection
  • They are lower price than print
  • They save resources and space
What is an eBook? Chevron down icon Chevron up icon

Packt eBooks are a complete electronic version of the print edition, available in PDF and ePub formats. Every piece of content down to the page numbering is the same. Because we save the costs of printing and shipping the book to you, we are able to offer eBooks at a lower cost than print editions.

When you have purchased an eBook, simply login to your account and click on the link in Your Download Area. We recommend you saving the file to your hard drive before opening it.

For optimal viewing of our eBooks, we recommend you download and install the free Adobe Reader version 9.