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
Arrow up icon
GO TO TOP
Hands-On Artificial Intelligence for IoT

You're reading from   Hands-On Artificial Intelligence for IoT Expert machine learning and deep learning techniques for developing smarter IoT systems

Arrow left icon
Product type Paperback
Published in Jan 2019
Publisher Packt
ISBN-13 9781788836067
Length 390 pages
Edition 2nd Edition
Languages
Arrow right icon
Author (1):
Arrow left icon
Dr. Amita Kapoor Dr. Amita Kapoor
Author Profile Icon Dr. Amita Kapoor
Dr. Amita Kapoor
Arrow right icon
View More author details
Toc

Table of Contents (14) Chapters Close

Preface 1. Principles and Foundations of IoT and AI 2. Data Access and Distributed Processing for IoT FREE CHAPTER 3. Machine Learning for IoT 4. Deep Learning for IoT 5. Genetic Algorithms for IoT 6. Reinforcement Learning for IoT 7. Generative Models for IoT 8. Distributed AI for IoT 9. Personal and Home IoT 10. AI for the Industrial IoT 11. AI for Smart Cities IoT 12. Combining It All Together 13. Other Books You May Enjoy

Infusion of AI – data science in IoT

A very popular phrase among data scientists and machine learning engineers is "AI is the new electricity" said by Prof Andrew Ng in NIPS 2017, we can expand it as follows: If AI is the new electricity, data is the new coal, and IoT the new coal-mine.

IoT generates an enormous amount of data; presently, 90% of the data generated isn't even captured, and out of the 10% that is captured, most is time-dependent and loses its value within milliseconds. Manually monitoring this data continuously is both cumbersome and expensive. This necessitates a way to intelligently analyze and gain insight from this data; the tools and models of AI provide us with a way to do exactly this with minimum human intervention. The major focus of this book will be on understanding the various AI models and techniques that can be applied to IoT data. We'll be using both machine learning (ML) and DL algorithms. The following screenshot explains the relationship between Artificial Intelligence, Machine Learning, and Deep Learning:

AI, ML, and DL

By observing the behavior of multiple things, IoT (with the help of big data and AI) aims to gain insight into the data and optimize underlying processes. This involves multiple challenges:

  • Storing real-time generated events
  • Running analytical queries over stored events
  • Performing analytics using AI/ML/DL techniques over the data to gain insights and make predictions

Cross-industry standard process for data mining

For IoT problems, the most used data management (DM) methodology is cross-industry standard process for data mining (CRISP-DM) proposed by Chapman et al. It's a process model that states the tasks that need to be carried out for successfully completing DM. It's a vendor-independent methodology divided into these six different phases:

  1. Business understanding
  2. Data understanding
  3. Data preparation
  4. Modelling
  5. Evaluation
  6. Deployment

Following diagram shows the different stages:

Different stages in CRISP-DM

As we can see, it's a continuous process model with data science and AI playing important roles in steps 2–5.

The details about CRISP-DM and all its phases can be read in the following:
Marbán, Óscar, Gonzalo Mariscal, and Javier Segovia. A data mining & knowledge discovery process model. Data Mining and Knowledge Discovery in Real Life Applications. InTech, 2009.

AI platforms and IoT platforms

A large number of cloud platforms with both AI and IoT capabilities are available today. These platforms provide the capability to integrate the sensors and devices and perform analytics on the cloud. There exist more than 30 cloud platforms in the global market, each targeting different IoT verticals and services. The following screenshot lists the various services that AI/IoT platforms support:

Services that different AI/IoT platforms support

Let's briefly find out about some popular cloud platforms. In Chapter 12, Combining it all together, we'll learn how to use the most popular ones. The following is a list of some of the popular Cloud platforms:

  • IBM Watson IoT Platform: Hosted by IBM, the platform provides device management; it uses the MQTT protocol to connect with IoT devices and applications. It provides real-time scalable connectivity. The data can be stored for a period and accessed in real time. IBM Watson also provides Bluemix Platform-as-a-Service (PaaS) for analytics and visualizations. We can write code to build and manage applications that interact with the data and connected devices. It supports Python along with C#, Java, and Node.js.
  • Microsoft IoT-Azure IoT suite: It provides a collection of preconfigured solutions built on Azure PaaS. It enables a reliable and secure bidirectional communication between IoT devices and cloud. The preconfigured solutions include data visualization, remote monitoring, and configuring rules and alarms over live IoT telemetry. It also provides Azure Stream Analytics to process the data in real time. The Azure Stream Analytics allows us to use Visual Studio. It supports Python, Node.js, C, and Arduino, depending upon the IoT devices.
  • Google Cloud IoT: The Google Cloud IoT provides a fully managed service for securely connecting and managing IoT devices. It supports both MQTT and HTTP protocols. It also provides bidirectional communication between IoT devices and the cloud. It provides support for Go, PHP, Ruby, JS, .NET, Java, Objective-C, and Python. It also has BigQuery, which allows users to perform data analytics and visualization.
  • Amazon AWS IoT: The Amazon AWS IoT allows IoT devices to communicate via MQTT, HTTP, and WebSockets. It provides secure, bi-directional communication between IoT devices and the cloud. It also has a rules engine that can be used to integrate data with other AWS services and transform the data. Rules can be defined that trigger the execution of user code in Java, Python, or Node.js. AWS Lambda allows us to use our own custom trained models.

lock icon The rest of the chapter is locked
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.
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 $19.99/month. Cancel anytime
Banner background image