Grokking artificial intelligence algorithms

Grokking Artificial Intelligence Algorithms uses illustrations, exercises, and jargon-free explanations to teach fundamental AI concepts. All you need is the algebra you remember from high school math class. Explore coding challenges like detect­ing bank fraud, creating artistic masterpieces, and se...

Descripción completa

Detalles Bibliográficos
Otros Autores: Hurbans, Rishal, author (author)
Formato: Libro electrónico
Idioma:Inglés
Publicado: Shelter Island, New York : Manning [2020]
Edición:1st edition
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009630903806719
Tabla de Contenidos:
  • Intro
  • Copyright
  • contents
  • dedication
  • preface
  • Our obsession with technology and automation
  • Ethics, legal matters, and our responsibility
  • Intention and impact: Understanding your vision and goals
  • Unintended use: Protecting against malicious use
  • Unintended bias: Building solutions for everyone
  • The law, privacy, and consent: Knowing the importance of core values
  • Singularity: Exploring the unknown
  • acknowledgments
  • about this book
  • Who should read this book
  • How this book is organized: A roadmap
  • About the Code
  • liveBook discussion forum
  • Other online resources
  • about the author
  • 1 Intuition of artificial intelligence
  • What is artificial intelligence?
  • Defining AI
  • Understanding that data is core to AI algorithms
  • Viewing algorithms as instructions in recipes
  • A brief history of artificial intelligence
  • Problem types and problem-solving paradigms
  • Search problems: Find a path to a solution
  • Optimization problems: Find a good solution
  • Prediction and classification problems: Learn from patterns in data
  • Clustering problems: Identify patterns in data
  • Deterministic models: Same result each time it's calculated
  • Stochastic/probabilistic models: Potentially different result each time it's calculated
  • Intuition of artificial intelligence concepts
  • Narrow intelligence: Specific-purpose solutions
  • General intelligence: Humanlike solutions
  • Super intelligence: The great unknown
  • Old AI and new AI
  • Search algorithms
  • Biology-inspired algorithms
  • Machine learning algorithms
  • Deep learning algorithms
  • Uses for artificial intelligence algorithms
  • Agriculture: Optimal plant growth
  • Banking: Fraud detection
  • Cybersecurity: Attack detection and handling
  • Health care: Diagnosis of patients
  • Logistics: Routing and optimization
  • Telecoms: Optimizing networks.
  • Games: Creating AI agents
  • Art: Creating masterpieces
  • Summary of Intuition of artificial intelligence
  • 2 Search fundamentals
  • What are planning and searching?
  • Cost of computation: The reason for smart algorithms
  • Problems applicable to searching algorithms
  • Representing state: Creating a framework to represent problem spaces and solutions
  • Graphs: Representing search problems and solutions
  • Representing a graph as a concrete data structure
  • Exercise: Represent a Graph as a Matrix
  • Solution: Represent a Graph as a Matrix
  • Trees: The concrete structures used to represent search solutions
  • Uninformed search: Looking blindly for solutions
  • Breadth-first search: Looking wide before looking deep
  • Exercise: Determine the path to the solution
  • Solution: Determine the path to the solution
  • Depth-first search: Looking deep before looking wide
  • Exercise: Determine the path to the solution
  • Solution: Determine the path to the solution
  • Use cases for uninformed search algorithms
  • Optional: More about graph categories
  • Optional: More ways to represent graphs
  • Incidence matrix
  • Adjacency list
  • Summary of search fundamentals
  • 3 Intelligent search
  • Defining heuristics: Designing educated guesses
  • Thought Experiment: Given the following scenario, what heuristic can you imagine?
  • Thought Experiment: Possible solution
  • Informed search: Looking for solutions with guidance
  • A* search
  • Use cases for informed search algorithms
  • Adversarial search: Looking for solutions in a changing environment
  • A simple adversarial problem
  • Min-max search: Simulate actions and choose the best future
  • Heuristics
  • Exercise: What values would propagate in the following Min-max tree?
  • Solution: What values would propagate in the following Min-max tree?.
  • Alpha-beta pruning: Optimize by exploring the sensible paths only
  • Use cases for adversarial search algorithms
  • Summary of Intelligent search
  • 4 Evolutionary algorithms
  • What is evolution?
  • Problems applicable to evolutionary algorithms
  • Genetic algorithm: Life cycle
  • Encoding the solution spaces
  • Binary encoding: Representing possible solutions with zeros and ones
  • Exercise: What is a possible encoding for the following problem?
  • Solution: What is a possible encoding for the following problem?
  • Creating a population of solutions
  • Measuring fitness of individuals in a population
  • Selecting parents based on their fitness
  • Steady state: Replacing a portion of the population each generation
  • Generational: Replacing the entire population each generation
  • Roulette wheel: Selecting parents and surviving individuals
  • Reproducing individuals from parents
  • Single-point crossover: Inheriting one part from each parent
  • Two-point crossover: Inheriting more parts from each parent
  • Uniform crossover: Inheriting many parts from each parent
  • Exercise: What outcome would uniform crossover generate for these chromosomes?
  • Solution: What outcome would uniform crossover generate for these chromosomes?
  • Bit-string mutation for binary encoding
  • Flip-bit mutation for binary encoding
  • Populating the next generation
  • Exploration vs. exploitation
  • Stopping conditions
  • Configuring the parameters of a genetic algorithm
  • Use cases for evolutionary algorithms
  • Summary of evolutionary algorithms
  • 5 Advanced evolutionary approaches
  • Evolutionary algorithm life cycle
  • Alternative selection strategies
  • Rank selection: Even the playing field
  • Tournament selection: Let them fight
  • Elitism selection: Choose only the best
  • Real-value encoding: Working with real numbers
  • Real-value encoding at its core.
  • Arithmetic crossover: Reproduce with math
  • Boundary mutation
  • Arithmetic mutation
  • Order encoding: Working with sequences
  • Importance of the fitness function
  • Order encoding at its core
  • Order mutation: Order/permutation encoding
  • Tree encoding: Working with hierarchies
  • Tree encoding at its core
  • Tree crossover: Inheriting portions of a tree
  • Change node mutation: Changing the value of a node
  • Common types of evolutionary algorithms
  • Genetic programming
  • Evolutionary programming
  • Glossary of evolutionary algorithm terms
  • More use cases for evolutionary algorithms
  • Summary of advanced evolutionary approaches
  • 6 Swarm intelligence: Ants
  • What is swarm intelligence?
  • Problems applicable to ant colony optimization
  • Exercise: Find the shortest path in this carnival configuration by hand
  • Solution: Find the shortest path in this carnival configuration by hand
  • Representing state: What do paths and ants look like?
  • The ant colony optimization algorithm life cycle
  • Initialize the pheromone trails
  • Set up the population of ants
  • Choose the next visit for each ant
  • The stochastic nature of ants
  • Selecting destination based on a heuristic
  • Exercise: Determine the probabilities of visiting the attractions with the following information
  • Solution: Determine the probabilities of visiting the attractions with the following information
  • Update the pheromone trails
  • Updating pheromones due to evaporation
  • Updating pheromones based on ant tours
  • Exercise: Calculate the pheromone update given the following scenario
  • Solution: Calculate the pheromone update given the following scenario
  • Update the best solution
  • Determine the stopping criteria
  • Use cases for ant colony optimization algorithms
  • Summary of ant colony optimization
  • 7 Swarm intelligence: Particles.
  • What is particle swarm optimization?
  • Optimization problems: A slightly more technical perspective
  • Exercise: How many dimensions will the search space for the following scenario be?
  • Solution: How many dimensions will the search space for the following scenario be?
  • Problems applicable to particle swarm optimization
  • Representing state: What do particles look like?
  • Particle swarm optimization life cycle
  • Initialize the population of particles
  • Calculate the fitness of each particle
  • Exercise: What would the fitness be for the following inputs given the drone fitness function?
  • Solution: What would the fitness be for the following inputs given the drone fitness function?
  • Update the position of each particle
  • The components of updating velocity
  • Updating velocity
  • Position update
  • Exercise: Calculate the new velocity and position for particle 1 given the following information about the particles
  • Solution: Calculate the new velocity and position for particle 1 given the following information about the particles
  • Determine the stopping criteria
  • Use cases for particle swarm optimization algorithms
  • Summary of particle swarm optimization
  • 8 Machine learning
  • What is machine learning?
  • Problems applicable to machine learning
  • Supervised learning
  • Unsupervised learning
  • Reinforcement learning
  • A machine learning workflow
  • Collecting and understanding data: Know your context
  • Preparing data: Clean and wrangle
  • Missing data
  • Ambiguous values
  • Encoding categorical data
  • Exercise: Identify and fix the problem data in this example
  • Solution: Identify and fix the problem data in this example
  • Testing and training data
  • Training a model: Predict with linear regression
  • Fitting a line to the data
  • Finding the mean of the features
  • Finding regression lines with the least-squares method.
  • Exercise: Calculate a regression line using the least-squares method.