Book Image

Artificial Intelligence and Machine Learning Fundamentals

By : Zsolt Nagy
Book Image

Artificial Intelligence and Machine Learning Fundamentals

By: Zsolt Nagy

Overview of this book

Machine learning and neural networks are pillars on which you can build intelligent applications. Artificial Intelligence and Machine Learning Fundamentals begins by introducing you to Python and discussing AI search algorithms. You will cover in-depth mathematical topics, such as regression and classification, illustrated by Python examples. As you make your way through the book, you will progress to advanced AI techniques and concepts, and work on real-life datasets to form decision trees and clusters. You will be introduced to neural networks, a powerful tool based on Moore's law. By the end of this book, you will be confident when it comes to building your own AI applications with your newly acquired skills!
Table of Contents (10 chapters)
Artificial Intelligence and Machine Learning Fundamentals
Preface

Preface

Note

About

This section briefly introduces the author, what the course covers, the technical skills you'll need to get started, and the hardware and software requirements required to complete all of the included activities and exercises.

About the Course

Machine learning and neural networks are fast becoming pillars on which you can build intelligent applications. The course begins by introducing you to Python and discussing the use of AI search algorithms. You will learn math-heavy topics, such as regression and classification, illustrated by Python examples.

You will then progress on to advanced AI techniques and concepts, and work on real-life datasets to form decision trees and clusters. You will be introduced to neural networks, which are a powerful tool benefiting from Moore's law being applied to 21st-century computing power. By the end of this course, you will feel confident and will look forward to building your own AI applications with your newly-acquired skills!

About the Author

Zsolt Nagy is an engineering manager in an ad tech company heavy on data science. After acquiring his Master's in inference on ontologies, he mainly used AI to analyze online poker strategies to aid professional poker players in decision-making. After the poker boom ended, he put his efforts into building a T-shaped profile in leadership and software engineering. Zsolt has two blogs: zsoltnagy.eu is on maintainable web applications, and devcareermastery.com is on finding fulfillment in your career as a developer using emotional intelligence.

Objectives

  • Understand the importance, principles, and fields of AI

  • Learn how to use Python to implement basic artificial intelligence for pathfinding and beating games

  • Implement regression and classification exercises in Python applied to real-world problems

  • Perform predictive analysis in Python using decision trees and random forests

  • Perform clustering in Python using the k-means and mean shift algorithms

  • Understand the fundamentals of deep learning via practical examples

Audience

Software developers who think that their future is more lucrative as a data scientist or who want to use machine learning to enrich their current personal or professional projects. Prior experience of AI is not needed, however, knowledge of at least one programming language (preferably Python) and high school-level math is required. Although this is a beginner-level course on AI, intermediate students will benefit from improving their Python by implementing practical applications, using and refreshing their fundamental AI knowledge.

Approach

This course takes a hands-on approach to teaching you about artificial intelligence and machine learning with Python. It contains multiple activities that use real-life scenarios for you to practice and apply your new skills in a highly relevant context.

Minimum Hardware Requirements

For the optimal student experience, we recommend the following hardware configuration:

  • Processor: Intel Core i5 or equivalent

  • Memory: 8 GB RAM

  • Storage: 35 GB available space

Software Requirements

You'll also need the following software installed in advance:

  • OS: Windows 7 SP1 64-bit, Windows 8.1 64-bit or Windows 10 64-bit, Ubuntu Linux, or the latest version of macOS

  • Browser: Google Chrome (latest version)

  • Anaconda (latest version)

  • IPython (latest version)

Conventions

Code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles are shown as follows: "The most common activation functions are sigmoid and tanh (the hyperbolic tangent function)"

A block of code is set as follows:

from sklearn.metrics.pairwise import euclidean_distances
points = [[2,3], [3,7], [1,6]]
euclidean_distances([[4,4]], points)

New terms and important words are shown in bold. Words that you see on the screen, for example, in menus or dialog boxes, appear in the text like this: "The optimal separator found by the support vector machines is called the best separating hyperplane."

Installation and Setup

Before you start this course, you will need to have Python 3.6 and Anaconda installed. You will find the steps to install them here:

Installing Python

Install Python 3.6 following the instructions at this link: https://realpython.com/installing-python/.

Installing a Virtual Environment

Install the Anaconda version from the following link. Anaconda is essential to avoid conflicting packages, saving you time/energy by avoiding frustrating errors.

To install Anaconda, click on the following link: https://www.anaconda.com/download/.

Choose your operating system and select the latest version of Python. Once your package is downloaded, run it.

After clicking Next, you will see a license agreement. Upon clicking I Agree, you can choose whether you want to install Anaconda for yourself or for all users of the computer. The latter requires administrator rights. Select Just Me.

Then, you must select the folder where you would like to install Anaconda. Make sure there are no spaces or long Unicode characters in the folder name. Make sure you have at least 3 GB of space on your computer, and that you have an internet connection fast enough to download the file.

On the next screen, you can select whether you want to add Anaconda to the PATH environment variable. Don't select this option, as you will be able to launch Anaconda from the Start menu.

Click Install. It will take a few minutes to install Anaconda on your computer. After the installation is complete, you can choose to learn more about Anaconda Cloud and Anaconda Support, or you can untick those boxes and finish the installation.

Starting Anaconda

You can find the installed Anaconda in the Start menu. If you have already installed Anaconda before starting this course, you may choose to upgrade it to Python 3. The cleanest way to do this is to uninstall and reinstall it.

The Anaconda Navigator gives you access to most of the tools you need for this course. Launch IPython by selecting the top-right option.

The Jupyter Notebook is where you will execute the Python code for this course.

Additional Resources

The code bundle for this course is also hosted on GitHub at: https://github.com/TrainingByPackt/Artificial-Intelligence-and-Machine-Learning-Fundamentals.

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