Reader small image

You're reading from  Codeless Deep Learning with KNIME

Product typeBook
Published inNov 2020
Reading LevelIntermediate
PublisherPackt
ISBN-139781800566613
Edition1st Edition
Languages
Tools
Right arrow
Authors (3):
Kathrin Melcher
Kathrin Melcher
author image
Kathrin Melcher

Kathrin Melcher is a data scientist at KNIME. She holds a master's degree in mathematics from the University of Konstanz, Germany. She joined the evangelism team at KNIME in 2017 and has a strong interest in data science and machine learning algorithms. She enjoys teaching and sharing her data science knowledge with the community, for example, in the book From Excel to KNIME, as well as on various blog posts and at training courses, workshops, and conference presentations.
Read more about Kathrin Melcher

Rosaria Silipo
Rosaria Silipo
author image
Rosaria Silipo

Rosaria Silipo, Ph.D., now head of data science evangelism at KNIME, has spent 25+ years in applied AI, predictive analytics, and machine learning at Siemens, Viseca, Nuance Communications, and private consulting. Sharing her practical experience in a broad range of industries and deployments, including IoT, customer intelligence, financial services, social media, and cybersecurity, Rosaria has authored 50+ technical publications, including her recent books Guide to Intelligent Data Science (Springer) and Codeless Deep Learning with KNIME (Packt).
Read more about Rosaria Silipo

View More author details
Right arrow

Chapter 11: Best Practices and Other Deployment Options

In Chapter 10, Deploying a Deep Learning Network, we introduced the concept of deployment and we showed how to build a workflow to apply a network to new data. In this chapter, we will focus on two more deployment options using the KNIME software.

In the first section of this chapter, you will learn how to deploy a deep learning model as a web application so that end users can execute, interact with, and control the application via a web browser. In order to implement a web application, we need to introduce the KNIME WebPortal, a feature of KNIME Server. Components play a central role in the development of web applications since they are used to implement the interaction points according to the Guided Analytics feature of the KNIME software. In this chapter, you will also learn more about components.

Another deployment option to consume a deep learning model is a web service, through a REST interface. Web services have become...

Building a Web Application

In this section, we will show you the few steps needed to build a web application using the KNIME software.

After a short introduction to KNIME WebPortal, we will show how to create composite views, how to include them to create interaction points, and how to structure the application into a sequence of web pages as interaction points, following the Guided Analytics principles.

As an example, we will apply what we have learned to build a web application around the deployment workflow of the case study on cancer cell classification described in Chapter 9, Convolutional Neural Networks for Image Classification.

Introduction to KNIME WebPortal

The first step in building a web application is to design and implement the sequence of web-based interaction points within the workflow. In a case study on the classification of cancer cells, our data scientist could build a deployment workflow with two interaction points: one to allow the end user to upload...

Building a Web Service with the REST Interface

In this section, you will learn how to build REST services using the KNIME software. As a practical example, we will walk through the deployment workflow of the sentiment analysis example of Chapter 7, Implementing NLP Applications.

The KNIME Server REST API offers an interface for non-KNIME applications to communicate with KNIME Server via simple HTTP requests. The main benefit of RESTful web services is the ease of integration of the application into the company IT landscape. Self-contained and isolated applications can call each other and exchange data via the REST interface. In this way, it becomes easier to add new applications to the ecosystem.

Any workflow uploaded on KNIME Server is automatically available via the REST API. This allows you to seamlessly deploy KNIME workflows as web services via the REST API and integrate them into the infrastructure of your data science lab.

In the sentiment analysis example, we want...

KNIME Tips and Tricks

Throughout the book, we covered many case studies, implemented using KNIME Analytics Platform. In the KNIME Hub space of this book, you can find these workflows and you can use them as a starting point for your deep learning projects: https://hub.knime.com/kathrin/spaces/Codeless%20Deep%20Learning%20with%20KNIME/latest/. In this last section, we want to share some tips and tricks to work with deep learning in KNIME Analytics Platform.

Let's start with data shuffling for training.

Shuffling Data during Training

When training neural networks, for faster convergence of the training process and to avoid overfitting, it is recommended to shuffle the training data before each epoch.

To do that, make sure you activate the Shuffle training data before each epoch checkbox in the Advanced tab in the configuration window of the Keras Network Learner node.

Using Batch Normalization

Batch normalization is a technique that standardizes the data in each...

Summary

In this chapter, you learned about two more options to deploy your trained deep learning networks: web applications and REST services. We finished the chapter – and the book – with some tips and tricks to successfully work with deep learning in KNIME Analytics Platform.

In the first section of this chapter, you learned how to build web applications using KNIME WebPortal of KNIME Server so that end users can execute their workflows and interact with the web pages comfortably from a web browser.

Next, you learned how to build, deploy, and call REST services using KNIME Server to integrate your deep learning networks into the company's IT infrastructure. You learned about the many options to define the input and output data structure of the REST service, how to inspect the REST API using the open source Swagger tool, and how to trigger the execution of a REST service from within KNIME Analytics Platform.

In the last section, we collated some tips and...

Questions and Exercises

  1. Which kind of nodes can you use to add input fields to a composite view?

    a) Configuration nodes

    b) Widget nodes

    c) View nodes

    d) Container input nodes

  2. How can you create a composite view?

    a) By selecting some nodes, right-clicking, and selecting Create Metanode

    b) By selecting some view or widget nodes, right-clicking, and selecting Create Metanode

    c) By selecting some view or widget nodes, right-clicking, and selecting Create Component

    d) By right-clicking anywhere in the workflow and selecting Create Component

  3. How can you define the layout of a composite view?

    a) Right-click on a component and select Component | Layout.

    b) Double-click on a component and go to the Layout tab in the configuration window.

    c) Go inside a component and click on the Layout button in the toolbar.

    d) Right-click on a component and select Layout.

  4. Which node can be used to define the input and output of a REST service?

    a) Configuration nodes

    b) Widget nodes

    c) View nodes

    d) Container...

lock icon
The rest of the chapter is locked
You have been reading a chapter from
Codeless Deep Learning with KNIME
Published in: Nov 2020Publisher: PacktISBN-13: 9781800566613
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
undefined
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime

Authors (3)

author image
Kathrin Melcher

Kathrin Melcher is a data scientist at KNIME. She holds a master's degree in mathematics from the University of Konstanz, Germany. She joined the evangelism team at KNIME in 2017 and has a strong interest in data science and machine learning algorithms. She enjoys teaching and sharing her data science knowledge with the community, for example, in the book From Excel to KNIME, as well as on various blog posts and at training courses, workshops, and conference presentations.
Read more about Kathrin Melcher

author image
Rosaria Silipo

Rosaria Silipo, Ph.D., now head of data science evangelism at KNIME, has spent 25+ years in applied AI, predictive analytics, and machine learning at Siemens, Viseca, Nuance Communications, and private consulting. Sharing her practical experience in a broad range of industries and deployments, including IoT, customer intelligence, financial services, social media, and cybersecurity, Rosaria has authored 50+ technical publications, including her recent books Guide to Intelligent Data Science (Springer) and Codeless Deep Learning with KNIME (Packt).
Read more about Rosaria Silipo