Book Image

Practical Artificial Intelligence and Blockchain

By : Ganesh Prasad Kumble
Book Image

Practical Artificial Intelligence and Blockchain

By: Ganesh Prasad Kumble

Overview of this book

AI and blockchain are two emerging technologies catalyzing the pace of enterprise innovation. With this book, you’ll understand both technologies and converge them to solve real-world challenges. This AI blockchain book is divided into three sections. The first section covers the fundamentals of blockchain, AI, and affiliated technologies, where you’ll learn to differentiate between the various implementations of blockchains and AI with the help of examples. The second section takes you through domain-specific applications of AI and blockchain. You’ll understand the basics of decentralized databases and file systems and connect the dots between AI and blockchain before exploring products and solutions that use them together. You’ll then discover applications of AI techniques in crypto trading. In the third section, you’ll be introduced to the DIApp design pattern and compare it with the DApp design pattern. The book also highlights unique aspects of SDLC (software development lifecycle) when building a DIApp, shows you how to implement a sample contact tracing application, and delves into the future of AI with blockchain. By the end of this book, you’ll have developed the skills you need to converge AI and blockchain technologies to build smart solutions using the DIApp design pattern.
Table of Contents (15 chapters)
1
Section 1: Overview of Blockchain Technology
4
Section 2: Blockchain and Artificial Intelligence
9
Section 3: Developing Blockchain Products

To get the most out of this book

Although we don't expect you to be thoroughly acquainted with the basics of blockchain and AI, it would be helpful to be familiar with these technologies. Also, one of the learning outcomes for the book is to see how to build a DIApp, which combines the best of blockchain and AI. If you are interested in learning how to build a DIApp, you should be familiar with the basics of Solidity smart contracts, machine learning, and Python.

Software/hardware covered in the book

OS requirements

Developing a DIApp that can help track COVID-19 infections in animals and objects requires the following:

  • Python 3.7
  • Node.js 12
  • Firefox or a Chromium-based browser with access to the internet
  • macOS Mojave or higher
  • Ubuntu 18.04 LTS or higher

If you are using the digital version of this book, we advise you to type the code yourself or access the code via the GitHub repository (link available in the next section). Doing so will help you avoid any potential errors related to the copying and pasting of code.

Download the example code files

You can download the example code files for this book from your account at www.packt.com. If you purchased this book elsewhere, you can visit www.packtpub.com/support and register to have the files emailed directly to you.

You can download the code files by following these steps:

  1. Log in or register at www.packt.com.
  2. Select the Support tab.
  3. Click on Code Downloads.
  4. Enter the name of the book in the Search box and follow the onscreen instructions.

Once the file is downloaded, please make sure that you unzip or extract the folder using the latest version of:

  • WinRAR/7-Zip for Windows
  • Zipeg/iZip/UnRarX for Mac
  • 7-Zip/PeaZip for Linux

The code bundle for the book is also hosted on GitHub at https://github.com/PacktPublishing/Hands-On-Artificial-Intelligence-for-Blockchain. In case there's an update to the code, it will be updated on the existing GitHub repository.

We also have other code bundles from our rich catalog of books and videos available at https://github.com/PacktPublishing/. Check them out!

Download the color images

We also provide a PDF file that has color images of the screenshots/diagrams used in this book. You can download it here: https://static.packt-cdn.com/downloads/9781838822293_ColorImages.pdf.

Conventions used

There are a number of text conventions used throughout this book.

CodeInText: Indicates code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an example: "Mount the downloaded WebStorm-10*.dmg disk image file as another disk in your system."

A block of code is set as follows:

modifier onlyBy(address _account) {
require(
msg.sender == _account,
"Sender not authorized to update this mapping!"
);
_; // The "_;"! will be replaced by the actual function body when the modifier is used.
}

Any command-line input or output is written as follows:

just run-server

Bold: Indicates a new term, an important word, or words that you see onscreen. For example, words in menus or dialog boxes appear in the text like this. Here is an example: "The rules of creating blocks and the acceptance of blocks are specified by consensus algorithms called PoW or Proof of Stake (PoS)."

Warnings or important notes appear like this.
Tips and tricks appear like this.