Artificial Intelligence with Python
A Comprehensive Guide to Building Intelligent Apps for Python Beginners and Developers
Artificial intelligence is the intelligence demonstrated by machines, in contrast to the intelligence displayed by humans.
This tutorial covers the basic concepts of various fields of artificial intelligence like Artificial Neural Networks, Natural Language Processing, Machine Learning, Deep Learning, Genetic algorithms etc., and its implementation in Python.
Is Python used in AI?
Python is a more popular language over C++ for AI and leads with a 57% vote among developers. That is because Python is easy to learn and implement. With its many libraries, they can also be used for data analysis.
About the Author
Prateek Joshi is an artificial intelligence researcher, published author of five books, and TEDx
speaker. He is the founder of Pluto AI, a venture-funded Silicon Valley startup building an analytics
platform for smart water management powered by deep learning. His work in this field has led to
patents, tech demos, and research papers at major IEEE conferences. He has been an invited speaker
at technology and entrepreneurship conferences including TEDx, AT&T Foundry, Silicon Valley Deep
Learning, and Open Silicon Valley. Prateek has also been featured as a guest author in prominent tech
magazines.
His tech blog (www.prateekjoshi.com) has received more than 1.2 million page views from 200 over
countries and has over 6,600+ followers. He frequently writes on topics such as artificial
intelligence, Python programming, and abstract mathematics. He is an avid coder and has won many
hackathons utilizing a wide variety of technologies. He graduated from University of Southern
California with a master’s degree specializing in artificial intelligence. He has worked at companies
such as Nvidia and Microsoft Research. You can learn more about him on his personal website at www.
prateekj.com.
About the Reviewer
Richard Marsden has over 20 years of professional software development experience. After starting
in the field of geophysical surveying for the oil industry, he has spent the last ten years running the
Winwaed Software Technology LLC independent software vendor. Winwaed specializes in
geospatial tools and applications including web applications, and operates the http://www.mapping-tools.
com website for tools and add-ins for geospatial applications such as Caliper Maptitude and
Microsoft MapPoint.
Richard was also a technical reviewer of the following Packt publications: Python Geospatial
Development and Python Geospatial Analysis Essentials, both by Erik Westra; Python Geospatial
Analysis Cookbook by Michael Diener; Mastering Python Forensics by Drs Michael
Spreitzenbarth and Dr Johann Uhrmann; and Ef ective Python Penetration Testing by Rejah Rehim.
Preface
Artificial intelligence is becoming increasingly relevant in the modern world where everything is
driven by data and automation. It is used extensively across many fields such as image recognition,
robotics, search engines, and self-driving cars. In this book, we will explore various real-world
scenarios. We will understand what algorithms to use in a given context and write functional code
using this exciting book.
We will start by talking about various realms of artificial intelligence. We’ll then move on to discuss
more complex algorithms, such as Extremely Random Forests, Hidden Markov Models, Genetic
Algorithms, Artificial Neural Networks, and Convolutional Neural Networks, and so on. This book is
for Python programmers looking to use artificial intelligence algorithms to create real-world
applications. This book is friendly to Python beginners, but familiarity with Python programming
would certainly be helpful so you can play around with the code. It is also useful to experienced
Python programmers who are looking to implement artificial intelligence techniques.
You will learn how to make informed decisions about the type of algorithms you need to use and how
to implement those algorithms to get the best possible results. If you want to build versatile
applications that can make sense of images, text, speech, or some other form of data, this book on
artificial intelligence will definitely come to your rescue
What this book covers
Chapter 1- Introduction to Artificial Intelligence, teaches you various introductory concepts in
artificial intelligence. It talks about applications, branches, and modeling of Artificial Intelligence. It
walks the reader through the installation of necessary Python packages.
Chapter 2- Classification and Regression Using Supervised Learning, covers various supervised
learning techniques for classification and regression. You will learn how to analyze income data and
predict housing prices.
Chapter 3- Predictive Analytics with Ensemble Learning, explains predictive modeling techniques
using Ensemble Learning, particularly focused on Random Forests. We will learn how to apply these
techniques to predict traffic on the roads near sports stadiums.
Chapter 4- Detecting Patterns with Unsupervised Learning, covers unsupervised learning algorithms
including K-means and Mean Shift Clustering. We will learn how to apply these algorithms to stock
market data and customer segmentation.
Chapter 5- Building Recommender Systems, illustrates algorithms used to build recommendation
engines. You will learn how to apply these algorithms to collaborative filtering and movie
recommendations.
Chapter 6- Logic Programming, covers the building blocks of logic programming. We will see various
applications, including expression matching, parsing family trees, and solving puzzles.
Chapter 7- Heuristic Search Techniques, shows heuristic search techniques that are used to search the
solution space. We will learn about various applications such as simulated annealing, region
coloring, and maze solving.
Chapter 8-Genetic Algorithms, covers evolutionary algorithms and genetic programming. We will
learn about various concepts such as crossover, mutation, and fitness functions. We will then use these
concepts to solve the symbol regression problem and build an intelligent robot controller.
Chapter 9- Building Games with Artificial Intelligence, teaches you how to build games with artificial
intelligence. We will learn how to build various games including Tic Tac Toe, Connect Four, and
Hexapawn.
Chapter 10- Natural Language Processing, covers techniques used to analyze text data including
tokenization, stemming, bag of words, and so on. We will learn how to use these techniques to do
sentiment analysis and topic modeling.
Chapter 11- Probabilistic Reasoning for Sequential Data, shows you techniques used to analyze time
series and sequential data including Hidden Markov models and Conditional Random Fields. We will
learn how to apply these techniques to text sequence analysis and stock market predictions.
Chapter 12- Building A Speech Recognizer, demonstrates algorithms used to analyze speech data. We
will learn how to build speech recognition systems.
Chapter 13- Object Detection and Tracking, It covers algorithms related to object detection and
tracking in live video. We will learn about various techniques including optical flow, face tracking,
and eye tracking.
Chapter 14- Artificial Neural Networks, covers algorithms used to build neural networks. We will learn
how to build an Optical Character Recognition system using neural networks.
Chapter 15- Reinforcement Learning, teaches the techniques used to build reinforcement learning
systems. We will learn how to build learning agents that can learn from interacting with the
environment.
Chapter 16- Deep Learning with Convolutional Neural Networks, covers algorithms used to build
deep learning systems using Convolutional Neural Networks. We will learn how to use TensorFlow
to build neural networks. We will then use it to build an image classifier using convolutional neural
networks.
Prateek Joshi
BIRMINGHAM - MUMBAI
First published: January 2017
Production reference: 1230117
Published by Packt Publishing Ltd,
Livery Place 35 Livery Street Birmingham B3 2PB,
UK.
ISBN 978-1-78646-439-2
Comments
Post a Comment