- Broschiertes Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
This new edition expands and revises the book throughout, with new material added to existing chapters, including short case studies, as well as adding new chapters on explainable AI, and big data.
Andere Kunden interessierten sich auch für
- Artificial Intelligence Applications in Battery Management Systems and Routing Problems in Electric Vehicles212,99 €
- Applications of Artificial Intelligence in Electrical Engineering223,99 €
- Donald TveterPattern Recognition Basis Artificial Intelligence146,99 €
- Ying TanAnti-Spam Techniques Based on Artificial Immune System78,99 €
- Edward A BenderMathematical Methods in Artificial Intelligence130,99 €
- John B. SmithCollective Intelligence in Computer-Based Collaboration67,99 €
- Advances in Applications of Computational Intelligence and the Internet of Things111,99 €
-
-
-
This new edition expands and revises the book throughout, with new material added to existing chapters, including short case studies, as well as adding new chapters on explainable AI, and big data.
Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
Produktdetails
- Produktdetails
- Verlag: Taylor & Francis Ltd
- Seitenzahl: 704
- Erscheinungstermin: 31. März 2025
- Englisch
- Abmessung: 280mm x 210mm
- ISBN-13: 9780367515980
- ISBN-10: 0367515989
- Artikelnr.: 71708962
- Herstellerkennzeichnung
- Libri GmbH
- Europaallee 1
- 36244 Bad Hersfeld
- 06621 890
- Verlag: Taylor & Francis Ltd
- Seitenzahl: 704
- Erscheinungstermin: 31. März 2025
- Englisch
- Abmessung: 280mm x 210mm
- ISBN-13: 9780367515980
- ISBN-10: 0367515989
- Artikelnr.: 71708962
- Herstellerkennzeichnung
- Libri GmbH
- Europaallee 1
- 36244 Bad Hersfeld
- 06621 890
Alan Dix is Director of the Computational Foundry at Swansea University, a 30 million pound initiative to boost computational research in Wales with a strong focus on creating social and economic benefit. Previously Alan has worked in a mix of academic, commercial and government roles. Alan is principally known for his work in human-computer interaction, and is the author of one of the major international textbooks on HCI as well as of over 450 research publications from formal methods to intelligent interfaces and design creativity. Technically, he works equally happily with AI and machine learning alongside traditional mathematical and statistical techniques. He has a broad understanding of mathematical, computational and human issues, and he authored some of the earliest papers on gender and ethnic bias in black box-algorithms.
List of Figures xxv Preface xxxv Author Bio xxxvii Chapter 1
Introduction 1 1.1 WHAT IS ARTIFICIAL INTELLIGENCE? 1 1.1.1 How much like a human: strong vs. weak AI 1 1.1.2 Top-down or bottom-up: symbolic vs. sub-symbolic 2 1.1.3 A working definition 3 1.1.4 Human intelligence 3 1.1.5 Bottom up and top down 4 1.2 HUMANS AT THE HEART 4 1.3 A SHORT HISTORY OF ARTIFICIAL INTELLIGENCE 5 1.3.1 The development of AI 6 1.3.2 The physical symbol system hypothesis 8 1.3.3 Sub-symbolic spring 9 1.3.4 AI Renaissance 10 1.3.5 Moving onwards 11 1.4 STRUCTURE OF THIS BOOK - A LANDSCAPE OF AI 11 Section I Knowledge-Rich AI Chapter 2
Knowledge in AI 15 2.1 OVERVIEW 15 2.2 INTRODUCTION 15 2.3 REPRESENTING KNOWLEDGE 16 2.4 METRICS FOR ASSESSING KNOWLEDGE REPRESENTATION SCHEMES 19 2.5 LOGIC REPRESENTATIONS 20 2.6 PROCEDURAL REPRESENTATION 23 vii viii
Contents 2.6.1 The database 23 2.6.2 The production rules 23 2.6.3 The interpreter 24 2.6.4 An example production system: making a loan 24 2.7 NETWORK REPRESENTATIONS 26 2.8 STRUCTURED REPRESENTATIONS 28 2.8.1 Frames 29 2.8.2 Scripts 29 2.9 GENERAL KNOWLEDGE 31 2.10 THE FRAME PROBLEM 32 2.11 KNOWLEDGE ELICITATION 33 2.12 SUMMARY 33 Chapter 3
Reasoning 37 3.1 OVERVIEW 37 3.2 WHAT IS REASONING? 37 3.3 FORWARD AND BACKWARD REASONING 39 3.4 REASONING WITH UNCERTAINTY 40 3.4.1 Non-monotonic reasoning 40 3.4.2 Probabilistic reasoning 41 3.4.3 Certainty factors 43 3.4.4 Fuzzy reasoning 45 3.4.5 Reasoning by analogy 46 3.4.6 Case-based reasoning 46 3.5 REASONING OVER NETWORKS 48 3.6 CHANGING REPRESENTATIONS 51 3.7 SUMMARY 51 Chapter 4
Search 53 4.1 INTRODUCTION 53 4.1.1 Types of problem 53 4.1.2 Structuring the search space 57 4.2 EXHAUSTIVE SEARCH AND SIMPLE PRUNING 63 4.2.1 Depth and breadth first search 63 4.2.2 Comparing depth and breadth first searches 65 4.2.3 Programming and space costs 67 4.2.4 Iterative deepening and broadening 68 Contents
ix 4.2.5 Finding the best solution - branch and bound 69 4.2.6 Graph search 70 4.3 HEURISTIC SEARCH 70 4.3.1 Hill climbing andbest first - goal-directed search 72 4.3.2 Finding the best solution - the A
algorithm 72 4.3.3 Inexact search 75 4.4 KNOWLEDGE-RICH SEARCH 77 4.4.1 Constraint satisfaction 78 4.5 SUMMARY 80 Section II Data and Learning Chapter 5
Machine learning 85 5.1 OVERVIEW 85 5.2 WHY DO WE WANT MACHINE LEARNING? 85 5.3 HOW MACHINES LEARN 87 5.3.1 Phases of machine learning 87 5.3.2 Rote learning and the importance of generalization 89 5.3.3 Inputs to training 90 5.3.4 Outputs of training 91 5.3.5 The training process 92 5.4 DEDUCTIVE LEARNING 93 5.5 INDUCTIVE LEARNING 94 5.5.1 Version spaces 95 5.5.2 Decision trees 99 5.5.2.1 Building a binary tree 99 5.5.2.2 More complex trees 102 5.5.3 Rule induction and credit assignment 103 5.6 EXPLANATION-BASED LEARNING 104 5.7 EXAMPLE: QUERY-BY-BROWSING 105 5.7.1 What the user sees 105 5.7.2 How it works 105 5.7.3 Problems 107 5.8 SUMMARY 107 Chapter 6
Neural Networks 109 6.1 OVERVIEW 109 x
Contents 6.2 WHY USE NEURAL NETWORKS? 109 6.3 THE PERCEPTRON 110 6.3.1 The XOR problem 112 6.4 THE MULTI-LAYER PERCEPTRON 113 6.5 BACKPROPAGATION 114 6.5.1 Basic principle 115 6.5.2 Backprop for a single layer network 116 6.5.3 Backprop for hidden layers 117 6.6 ASSOCIATIVE MEMORIES 117 6.6.1 Boltzmann Machines 119 6.6.2 Kohonen self-organizing networks 121 6.7 LOWER-LEVEL MODELS 122 6.7.1 Cortical layers 122 6.7.2 Inhibition 123 6.7.3 Spiking neural networks 123 6.8 HYBRID ARCHITECTURES 124 6.8.1 Hybrid layers 124 6.8.2 Neurosymbolic AI 125 6.9 SUMMARY 126 Chapter 7
Statistical and Numerical Techniques 129 7.1 OVERVIEW 129 7.2 LINEAR REGRESSION 129 7.3 VECTORS AND MATRICES 132 7.4 EIGENVALUES AND PRINCIPAL COMPONENTS 134 7.5 CLUSTERING AND K-MEANS 136 7.6 RANDOMNESS 138 7.6.1 Simple statistics 138 7.6.2 Distributions and long-tail data 140 7.6.3 Least squares 142 7.6.4 Monte Carlo techniques 142 7.7 NON-LINEAR FUNCTIONS FOR MACHINE LEARNING 144 7.7.1 Support Vector Machines 144 7.7.2 Reservoir Computing 145 7.7.3 Kolmogorov-Arnold Networks 146 7.8 SUMMARY 147 Contents
xi Chapter 8
Going Large: deep learning and big data 151 8.1 OVERVIEW 151 8.2 DEEP LEARNING 152 8.2.1 Why are many layers so difficult? 153 8.2.2 Architecture of the layers 153 8.3 GROWING THE DATA 156 8.3.1 Modifying real data 157 8.3.2 Virtual worlds 157 8.3.3 Self learning 157 8.4 DATA REDUCTION 158 8.4.1 Dimension reduction 159 8.4.1.1 Vector space techniques 159 8.4.1.2 Non-numeric features 160 8.4.2 Reduce total number of data items 161 8.4.2.1 Sampling 161 8.4.2.2 Aggregation 161 8.4.3 Segmentation 162 8.4.3.1 Class segmentation 162 8.4.3.2 Result recombination 162 8.4.3.3 Weakly-communicating partial analysis 163 8.5 PROCESSING BIG DATA 164 8.5.1 Why it is hard - distributed storage and computation 164 8.5.2 Principles behind MapReduce 165 8.5.3 MapReduce for the cloud 166 8.5.4 If it can go wrong - resilience for big processing 167 8.6 DATA AND ALGORITHMS AT SCALE 169 8.6.1 Big graphs 169 8.6.2 Time series and event streams 170 8.6.2.1 Multi-scale with mega-windows 170 8.6.2.2 Untangling streams 171 8.6.2.3 Real-time processing 171 8.7 SUMMARY 171 Chapter 9
Making Sense of Machine Learning 175 9.1 OVERVIEW 175 9.2 THE MACHINE LEARNING PROCESS 175 xii
Contents 9.2.1 Training phase 176 9.2.2 Application phase 177 9.2.3 Validation phase 177 9.3 EVALUATION 178 9.3.1 Measures of effectiveness 178 9.3.2 Precision-recall trade-off 180 9.3.3 Data for evaluation 182 9.3.4 Multi-stage evaluation 182 9.4 THE FITNESS LANDSCAPE 183 9.4.1 Hill-climbing and gradient descent / ascent 183 9.4.2 Local maxima and minima 184 9.4.3 Plateau and ridge effects 185 9.4.4 Local structure 186 9.4.5 Approximating the landscape 186 9.4.6 Forms of fitness function 187 9.5 DEALING WITH COMPLEXITY 188 9.5.1 Degrees of freedom and dimension reduction 188 9.5.2 Constraints and dependent features 189 9.5.3 Continuity and learning 191 9.5.4 Multi-objective optimisation 193 9.5.5 Partially labelled data 194 9.6 SUMMARY 196 Chapter 10
Data Preparation 199 10.1 OVERVIEW 199 10.2 STAGES OF DATA PREPARATION 199 10.3 CREATING A DATASET 200 10.3.1 Extraction and gathering of data 200 10.3.2 Entity reconciliation and linking 201 10.3.3 Exception sets 202 10.4 MANIPULATION AND TRANSFORMATION OF DATA 202 10.4.1 Types of data value 203 10.4.2 Transforming to the right kind of data 204 10.5 NUMERICAL TRANSFORMATIONS 205 10.5.1 Information 205 10.5.2 Normalising data 207 Contents
xiii 10.5.3 Missing values - filling the gaps 207 10.5.4 Outliers - dealing with extremes 209 10.6 NON-NUMERIC TRANSFORMATIONS 211 10.6.1 Media data 211 10.6.2 Text 212 10.6.3 Structure transformation 214 10.7 AUTOMATION AND DOCUMENTATION 214 10.8 SUMMARY 216 Section III Specialised Areas Chapter 11
Game playing 221 11.1 OVERVIEW 221 11.2 INTRODUCTION 221 11.3 CHARACTERISTICS OF GAME PLAYING 223 11.4 STANDARD GAMES 225 11.4.1 A simple game tree 225 11.4.2 Heuristics and minimax search 225 11.4.3 Horizon problems 227 11.4.4 Alpha-beta pruning 228 11.4.5 The imperfect opponent 229 11.5 NON-ZERO-SUM GAMES AND SIMULTANEOUS PLAY 229 11.5.1 The prisoner's dilemma 230 11.5.2 Searching the game tree 230 11.5.3 No alpha-beta pruning 232 11.5.4 Pareto-optimality 232 11.5.5 Multi-party competition and co-operation 233 11.6 THE ADVERSARY IS LIFE! 233 11.7 PROBABILITY 235 11.8 NEURAL NETWORKS FOR GAMES 236 11.8.1 Where to use a neural network 236 11.8.2 Training data and self play 238 11.9 SUMMARY 238 Chapter 12
Computer vision 243 12.1 OVERVIEW 243 12.2 INTRODUCTION 243 xiv
Contents 12.2.1 Why computer vision is difficult 243 12.2.2 Phases of computer vision 244 12.3 DIGITIZATION AND SIGNAL PROCESSING 245 12.3.1 Digitizing images 245 12.3.2 Thresholding 246 12.3.3 Digital filters 248 12.3.3.1 Linear filters 249 12.3.3.2 Smoothing 249 12.3.3.3 Gaussian filters 251 12.3.3.4 Practical considerations 252 12.4 EDGE DETECTION 252 12.4.1 Identifying edge pixels 253 12.4.1.1 Gradient operators 253 12.4.1.2 Robert's operator 253 12.4.1.3 Sobel's operator 256 12.4.1.4 Laplacian operator 257 12.4.1.5 Successive refinement and Marr's primal sketch 258 12.4.2 Edge following 259 12.5 REGION DETECTION 260 12.5.1 Region growing 261 12.5.2 The problem of texture 261 12.5.3 Representing regions - quadtrees 262 12.5.4 Computational problems 263 12.6 RECONSTRUCTING OBJECTS 263 12.6.1 Inferring three-dimensional features 263 12.6.1.1 Problems with labelling 266 12.6.2 Using properties of regions 267 12.7 IDENTIFYING OBJECTS 269 12.7.1 Using bitmaps 269 12.7.2 Using summary statistics 270 12.7.3 Using outlines 271 12.7.4 Using paths 272 12.8 FACIAL AND BODY RECOGNITION 273 12.9 NEURAL NETWORKS FOR IMAGES 276 12.9.1 Convolutional neural networks 276 12.9.2 Autoencoders 277 Contents
xv 12.10 GENERATIVE ADVERSARIAL NETWORKS 279 12.10.1 Generated data 279 12.10.2 Diffusion models 280 12.10.3 Bottom-up and top-down processing 281 12.11 MULTIPLE IMAGES 281 12.11.1 Stereo vision 282 12.11.2 Moving pictures 284 12.12 SUMMARY 285 Chapter 13
Natural language understanding 289 13.1 OVERVIEW 289 13.2 WHAT IS NATURAL LANGUAGE UNDERSTANDING? 289 13.3 WHY DO WE NEED NATURAL LANGUAGE UNDERSTANDING? 290 13.4 WHY IS NATURAL LANGUAGE UNDERSTANDING DIFFICULT? 290 13.5 AN EARLY ATTEMPT AT NATURAL LANGUAGE UNDERSTANDING: SHRDLU 292 13.6 HOW DOES NATURAL LANGUAGE UNDERSTANDING WORK? 293 13.7 SYNTACTIC ANALYSIS 295 13.7.1 Grammars 296 13.7.2 An example: generating a grammar fragment 297 13.7.3 Transition networks 299 13.7.4 Context-sensitive grammars 302 13.7.5 Feature sets 303 13.7.6 Augmented transition networks 304 13.7.7 Taggers 304 13.8 SEMANTIC ANALYSIS 305 13.8.1 Semantic grammars 306 13.8.1.1 An example: a database query interpreter revisited 306 13.8.2 Case grammars 307 13.9 PRAGMATIC ANALYSIS 310 13.9.1 Speech acts 311 13.10 GRAMMAR-FREE APPROACHES 311 13.10.1 Template matching 311 13.10.2 Keyword matching 312 13.10.3 Predictive methods 312 13.10.4 Statistical methods 313 13.11 SUMMARY 314 xvi
Contents 13.12 SOLUTION TO SHRDLU PROBLEM 315 Chapter 14
Time Series and Sequential Data 317 14.1 OVERVIEW 317 14.2 GENERAL PROPERTIES 317 14.2.1 Kinds of temporal and sequential data 317 14.2.2 Looking through time 318 14.2.3 Processing temporal data 320 14.2.3.1 Windowing 320 14.2.3.2 Hidden state 321 14.2.3.3 Non-time domain transformations 321 14.3 PROBABILITY MODELS 322 14.3.1 Markov Model 323 14.3.2 Higher-order Markov Model 324 14.3.3 Hidden Markov Model 326 14.4 GRAMMAR AND PATTERN-BASED APPROACHES 327 14.4.1 Regular expressions 327 14.4.2 More complex grammars 328 14.5 NEURAL NETWORKS 329 14.5.1 Window-based methods 329 14.5.2 Recurrent Neural Networks 331 14.5.3 Long-term short-term memory networks 332 14.5.4 Transformer models 332 14.6 STATISTICAL AND NUMERICAL TECHNIQUES 332 14.6.1 Simple data cleaning techniques 333 14.6.2 Logarithmic transformations and exponential growth 334 14.6.3 ARMA models 335 14.6.4 Mixed statistics/ML models 336 14.7 MULTI-STAGE/SCALE 337 14.8 SUMMARY 339 Chapter 15
Planning and robotics 343 15.1 OVERVIEW 343 15.2 INTRODUCTION 343 15.2.1 Friend or foe? 343 15.2.2 Different kinds of robots 344 15.3 GLOBAL PLANNING 345 Contents
xvii 15.3.1 Planning actions - means-ends analysis 345 15.3.2 Planning routes - configuration spaces 348 15.4 LOCAL PLANNING 350 15.4.1 Local planning and obstacle avoidance 350 15.4.2 Finding out about the world 353 15.5 LIMBS, LEGS AND EYES 356 15.5.1 Limb control 356 15.5.2 Walking - on one, two or more legs 359 15.5.3 Active vision 361 15.6 PRACTICAL ROBOTICS 363 15.6.1 Controlling the environment 363 15.6.2 Safety and hierarchical control 364 15.7 SUMMARY 365 Chapter 16
Agents 369 16.1 OVERVIEW 369 16.2 SOFTWARE AGENTS 369 16.2.1 The rise of the agent 370 16.2.2 Triggering actions 371 16.2.3 Watching and learning 372 16.2.4 Searching for information 374 16.3 REINFORCEMENT LEARNING 376 16.3.1 Single step learning 376 16.3.2 Choices during learning 378 16.3.3 Intermittent rewards and credit assignment 379 16.4 COOPERATING AGENTS AND DISTRIBUTED AI 379 16.4.1 Blackboard architectures 380 16.4.2 Distributed control 382 16.5 LARGER COLLECTIVES 383 16.5.1 Emergent behaviour 383 16.5.2 Cellular automata 384 16.5.3 Artificial life 384 16.5.4 Swarm computing 385 16.5.5 Ensemble methods 386 16.6 SUMMARY 388 Chapter 17
Web scale reasoning 391 xviii
Contents 17.1 OVERVIEW 391 17.2 THE SEMANTIC WEB 391 17.2.1 Representing knowledge - RDF and triples 392 17.2.2 Ontologies 394 17.2.3 Asking questions - SPARQL 395 17.2.4 Talking about RDF - reification, named graphs and provenance 396 17.2.5 Linked data - connecting the Semantic Web 398 17.3 MINING THE WEB: SEARCH AND SEMANTICS 402 17.3.1 Search words and links 402 17.3.2 Explicit markup 403 17.3.3 External semantics 405 17.4 USING WEB DATA 408 17.4.1 Knowledge-rich applications 408 17.4.2 The surprising power of big data 409 17.5 THE HUMAN WEB 412 17.5.1 Recommender systems 412 17.5.2 Crowdsourcing and human computation 414 17.5.3 Social media as data 416 17.6 SUMMARY 417 Section IV Humans at the Heart Chapter 18
Expert and decision support systems 421 18.1 OVERVIEW 421 18.2 INTRODUCTION - EXPERTS IN THE LOOP 421 18.3 EXPERT SYSTEMS 422 18.3.1 Uses of expert systems 423 18.3.2 Architecture of an expert system 425 18.3.3 Explanation facility 425 18.3.4 Dialogue and UI component 427 18.3.5 Examples of four expert systems 428 18.3.5.1 Example 1: MYCIN 428 18.3.5.2 Example 2: PROSPECTOR 429 18.3.5.3 Example 3: DENDRAL 429 18.3.5.4 Example 4: XCON 430 18.3.6 Building an expert system 430 Contents
xix 18.3.7 Limitations of expert systems 431 18.4 KNOWLEDGE ACQUISITION 431 18.4.1 Knowledge elicitation 432 18.4.1.1 Unstructured interviews. 432 18.4.1.2 Structured interviews. 433 18.4.1.3 Focused discussions. 433 18.4.1.4 Role reversal. 433 18.4.1.5 Think-aloud. 433 18.4.2 Knowledge Representation 434 18.4.2.1 Expert system shells 434 18.4.2.2 High-level programming languages 434 18.4.2.3 Ontologies 434 18.4.2.4 Selecting a tool 435 18.5 EXPERTS AND MACHINE LEARNING 436 18.5.1 Knowledge elicitation for ML 438 18.5.1.1 Acquiring tacit knowledge 438 18.5.1.2 Feature selection 438 18.5.1.3 Expert labelling 438 18.5.1.4 Iteration and interaction 439 18.5.2 Algorithmic choice, validation and explanation 439 18.6 DECISION SUPPORT SYSTEMS. 441 18.6.1 Visualisation 442 18.6.2 Data management and analysis 443 18.6.3 Visual Analytics 444 18.6.3.1 Visualisation in VA 445 18.6.3.2 Data management and analysis for VA 446 18.7 STEPPING BACK 447 18.7.1 Who is it about? 447 18.7.2 Why are we doing it? 447 18.7.3 Wider context 449 18.7.4 Cost-benefit balance 450 18.8 SUMMARY 451 Chapter 19
AI working with and for humans 455 19.1 OVERVIEW 455 19.2 INTRODUCTION 455 xx
Contents 19.3 LEVELS AND TYPES OF HUMAN CONTACT 457 19.3.1 Social scale 457 19.3.2 Visibility and embodiment 458 19.3.3 Intentionality 458 19.3.4 Who is in control 459 19.3.5 Levels of automation 460 19.4 ON A DEVICE - INTELLIGENT USER INTERFACES 462 19.4.1 Low-level input 462 19.4.2 Conversational user interfaces 462 19.4.3 Predicting what next 464 19.4.4 Finding and managing information 464 19.4.5 Helping with tasks 466 19.4.6 Adaptation and personalisation 467 19.4.7 Going small 468 19.5 IN THE WORLD - SMART ENVIRONMENTS 469 19.5.1 Configuration 470 19.5.2 Sensor fusion 470 19.5.3 Context and activity 472 19.5.4 Designing for uncertainty in sensor-rich smart environments 473 19.5.5 Dealing with hiddenness - a central heating controller 474 19.6 DESIGNING FOR AI-HUMAN INTERACTION 476 19.6.1 Appropriate intelligence - soft failure 476 19.6.2 Feedback - error detection and repair 477 19.6.3 Decisions and suggestions 478 19.6.4 Case study: OnCue - appropriate intelligence by design 480 19.7 TOWARDS HUMAN-MACHINE SYNERGY 481 19.7.1 Tuning AI algorithms for interaction 481 19.7.2 Tuning interaction for AI 482 19.8 SUMMARY 483 Chapter 20
When things go wrong 487 20.1 OVERVIEW 487 20.2 INTRODUCTION 487 20.3 WRONG ON PURPOSE? 488 20.3.1 Intentional bad use 488 20.3.2 Unintentional problems 489 Contents
xxi 20.4 GENERAL STRATEGIES 490 20.4.1 Transparency and trust 490 20.4.2 Algorithmic accountability 491 20.4.3 Levels of opacity 492 20.5 SOURCES OF ALGORITHMIC BIAS 493 20.5.1 What is bias? 493 20.5.2 Stages in machine learning 494 20.5.3 Bias in the training data 494 20.5.4 Bias in the objective function 497 20.5.5 Bias in the accurate result 498 20.5.6 Proxy measures 499 20.5.7 Input feature choice 500 20.5.8 Bias and human reasoning 500 20.5.9 Avoiding bias 501 20.6 PRIVACY 502 20.6.1 Anonymisation 502 20.6.2 Obfuscation 503 20.6.3 Aggregation 503 20.6.4 Adversarial privacy 504 20.6.5 Federated learning 504 20.7 COMMUNICATION, INFORMATION AND MISINFORMATION 505 20.7.1 Social media 505 20.7.2 Deliberate misinformation 506 20.7.3 Filter bubbles 507 20.7.4 Poor information 507 20.8 SUMMARY 508 Chapter 21
Explainable AI 513 21.1 OVERVIEW 513 21.2 INTRODUCTION 513 21.2.1 Why we need explainable AI 514 21.2.2 Is explainable AI possible? 515 21.3 AN EXAMPLE - QUERY-BY-BROWSING 515 21.3.1 The problem 516 21.3.2 A solution 516 21.3.3 How it works 517 xxii
Contents 21.4 HUMAN EXPLANATION - SUFFICIENT REASON 518 21.5 LOCAL AND GLOBAL EXPLANATIONS 519 21.5.1 Decision trees - easier explanations 519 21.5.2 Black-box - sensitivity and perturbations 520 21.6 HEURISTICS FOR EXPLANATION 522 21.6.1 White-box techniques 523 21.6.2 Black-box techniques 524 21.6.3 Grey-box techniques 526 21.7 SUMMARY 529 Chapter 22
Models of the mind - Human-Like Computing 533 22.1 OVERVIEW 533 22.2 INTRODUCTION 533 22.3 WHAT IS THE HUMAN MIND? 534 22.4 RATIONALITY 535 22.4.1 ACTR 536 22.4.2 SOAR 537 22.5 SUBCONSCIOUS AND INTUITION 538 22.5.1 Heuristics and imagination 539 22.5.2 Attention, salience and boredom 539 22.5.3 Rapid serial switching 540 22.5.4 Disambiguation 541 22.5.5 Boredom 542 22.5.6 Dreaming 542 22.6 EMOTION 543 22.6.1 Empathy and theory of mind 544 22.6.2 Regret 546 22.6.3 Feeling 548 22.7 SUMMARY 549 Chapter 23
Philosophical, ethical and social issues 553 23.1 OVERVIEW 553 23.2 THE LIMITS OF AI 553 23.2.1 Intelligent machines or engineering tools? 554 23.2.2 What is intelligence? 554 23.2.3 Computational argument vs. Searle's Chinese Room 555 23.3 CREATIVITY 556 Contents
xxiii 23.3.1 The creative process 557 23.3.2 Generate and filter 557 23.3.3 The critical edge 558 23.3.4 Impact on creative professionals 558 23.4 CONSCIOUSNESS 559 23.4.1 Defining consciousness 559 23.4.2 Dualism and materialism 560 23.4.3 The hard problem of consciousness 561 23.5 MORALITY OF THE ARTIFICIAL 561 23.5.1 Morally neutral 561 23.5.2 Who is responsible? 563 23.5.3 Life or death decisions 563 23.5.4 The special ethics of AI 565 23.6 SOCIETY AND WORK 565 23.6.1 Humanising AI or dehumanising people 566 23.6.2 Top-down: algorithms grading students 566 23.6.3 Bottom-up: when AI ruled France 568 23.6.4 AI and work 569 23.7 MONEY AND POWER 570 23.7.1 Finance and markets 571 23.7.2 Advertising and runaway AI 572 23.7.3 Big AI: the environment and social impact 573 23.8 SUMMARY 575 Section V Looking Forward Chapter 24
Epilogue: what next? 581 24.1 OVERVIEW 581 24.2 CRYSTAL BALL 581 24.3 WHAT NEXT: AI TECHNOLOGY 582 24.3.1 Bigger and Better 582 24.3.2 Smaller and Smarter 582 24.3.3 Mix and Match 584 24.3.4 Partners with People 584 24.4 WHAT NEXT: AI IN THE WORLD 585 24.4.1 Friend or Foe? 585 24.4.2 Boom then Bust 586 xxiv
Contents 24.4.3 Everywhere and nowhere 586 24.5 SUMMARY - FROM HYPE TO HOPE 586 Bibliography 589 Index
Introduction 1 1.1 WHAT IS ARTIFICIAL INTELLIGENCE? 1 1.1.1 How much like a human: strong vs. weak AI 1 1.1.2 Top-down or bottom-up: symbolic vs. sub-symbolic 2 1.1.3 A working definition 3 1.1.4 Human intelligence 3 1.1.5 Bottom up and top down 4 1.2 HUMANS AT THE HEART 4 1.3 A SHORT HISTORY OF ARTIFICIAL INTELLIGENCE 5 1.3.1 The development of AI 6 1.3.2 The physical symbol system hypothesis 8 1.3.3 Sub-symbolic spring 9 1.3.4 AI Renaissance 10 1.3.5 Moving onwards 11 1.4 STRUCTURE OF THIS BOOK - A LANDSCAPE OF AI 11 Section I Knowledge-Rich AI Chapter 2
Knowledge in AI 15 2.1 OVERVIEW 15 2.2 INTRODUCTION 15 2.3 REPRESENTING KNOWLEDGE 16 2.4 METRICS FOR ASSESSING KNOWLEDGE REPRESENTATION SCHEMES 19 2.5 LOGIC REPRESENTATIONS 20 2.6 PROCEDURAL REPRESENTATION 23 vii viii
Contents 2.6.1 The database 23 2.6.2 The production rules 23 2.6.3 The interpreter 24 2.6.4 An example production system: making a loan 24 2.7 NETWORK REPRESENTATIONS 26 2.8 STRUCTURED REPRESENTATIONS 28 2.8.1 Frames 29 2.8.2 Scripts 29 2.9 GENERAL KNOWLEDGE 31 2.10 THE FRAME PROBLEM 32 2.11 KNOWLEDGE ELICITATION 33 2.12 SUMMARY 33 Chapter 3
Reasoning 37 3.1 OVERVIEW 37 3.2 WHAT IS REASONING? 37 3.3 FORWARD AND BACKWARD REASONING 39 3.4 REASONING WITH UNCERTAINTY 40 3.4.1 Non-monotonic reasoning 40 3.4.2 Probabilistic reasoning 41 3.4.3 Certainty factors 43 3.4.4 Fuzzy reasoning 45 3.4.5 Reasoning by analogy 46 3.4.6 Case-based reasoning 46 3.5 REASONING OVER NETWORKS 48 3.6 CHANGING REPRESENTATIONS 51 3.7 SUMMARY 51 Chapter 4
Search 53 4.1 INTRODUCTION 53 4.1.1 Types of problem 53 4.1.2 Structuring the search space 57 4.2 EXHAUSTIVE SEARCH AND SIMPLE PRUNING 63 4.2.1 Depth and breadth first search 63 4.2.2 Comparing depth and breadth first searches 65 4.2.3 Programming and space costs 67 4.2.4 Iterative deepening and broadening 68 Contents
ix 4.2.5 Finding the best solution - branch and bound 69 4.2.6 Graph search 70 4.3 HEURISTIC SEARCH 70 4.3.1 Hill climbing andbest first - goal-directed search 72 4.3.2 Finding the best solution - the A
algorithm 72 4.3.3 Inexact search 75 4.4 KNOWLEDGE-RICH SEARCH 77 4.4.1 Constraint satisfaction 78 4.5 SUMMARY 80 Section II Data and Learning Chapter 5
Machine learning 85 5.1 OVERVIEW 85 5.2 WHY DO WE WANT MACHINE LEARNING? 85 5.3 HOW MACHINES LEARN 87 5.3.1 Phases of machine learning 87 5.3.2 Rote learning and the importance of generalization 89 5.3.3 Inputs to training 90 5.3.4 Outputs of training 91 5.3.5 The training process 92 5.4 DEDUCTIVE LEARNING 93 5.5 INDUCTIVE LEARNING 94 5.5.1 Version spaces 95 5.5.2 Decision trees 99 5.5.2.1 Building a binary tree 99 5.5.2.2 More complex trees 102 5.5.3 Rule induction and credit assignment 103 5.6 EXPLANATION-BASED LEARNING 104 5.7 EXAMPLE: QUERY-BY-BROWSING 105 5.7.1 What the user sees 105 5.7.2 How it works 105 5.7.3 Problems 107 5.8 SUMMARY 107 Chapter 6
Neural Networks 109 6.1 OVERVIEW 109 x
Contents 6.2 WHY USE NEURAL NETWORKS? 109 6.3 THE PERCEPTRON 110 6.3.1 The XOR problem 112 6.4 THE MULTI-LAYER PERCEPTRON 113 6.5 BACKPROPAGATION 114 6.5.1 Basic principle 115 6.5.2 Backprop for a single layer network 116 6.5.3 Backprop for hidden layers 117 6.6 ASSOCIATIVE MEMORIES 117 6.6.1 Boltzmann Machines 119 6.6.2 Kohonen self-organizing networks 121 6.7 LOWER-LEVEL MODELS 122 6.7.1 Cortical layers 122 6.7.2 Inhibition 123 6.7.3 Spiking neural networks 123 6.8 HYBRID ARCHITECTURES 124 6.8.1 Hybrid layers 124 6.8.2 Neurosymbolic AI 125 6.9 SUMMARY 126 Chapter 7
Statistical and Numerical Techniques 129 7.1 OVERVIEW 129 7.2 LINEAR REGRESSION 129 7.3 VECTORS AND MATRICES 132 7.4 EIGENVALUES AND PRINCIPAL COMPONENTS 134 7.5 CLUSTERING AND K-MEANS 136 7.6 RANDOMNESS 138 7.6.1 Simple statistics 138 7.6.2 Distributions and long-tail data 140 7.6.3 Least squares 142 7.6.4 Monte Carlo techniques 142 7.7 NON-LINEAR FUNCTIONS FOR MACHINE LEARNING 144 7.7.1 Support Vector Machines 144 7.7.2 Reservoir Computing 145 7.7.3 Kolmogorov-Arnold Networks 146 7.8 SUMMARY 147 Contents
xi Chapter 8
Going Large: deep learning and big data 151 8.1 OVERVIEW 151 8.2 DEEP LEARNING 152 8.2.1 Why are many layers so difficult? 153 8.2.2 Architecture of the layers 153 8.3 GROWING THE DATA 156 8.3.1 Modifying real data 157 8.3.2 Virtual worlds 157 8.3.3 Self learning 157 8.4 DATA REDUCTION 158 8.4.1 Dimension reduction 159 8.4.1.1 Vector space techniques 159 8.4.1.2 Non-numeric features 160 8.4.2 Reduce total number of data items 161 8.4.2.1 Sampling 161 8.4.2.2 Aggregation 161 8.4.3 Segmentation 162 8.4.3.1 Class segmentation 162 8.4.3.2 Result recombination 162 8.4.3.3 Weakly-communicating partial analysis 163 8.5 PROCESSING BIG DATA 164 8.5.1 Why it is hard - distributed storage and computation 164 8.5.2 Principles behind MapReduce 165 8.5.3 MapReduce for the cloud 166 8.5.4 If it can go wrong - resilience for big processing 167 8.6 DATA AND ALGORITHMS AT SCALE 169 8.6.1 Big graphs 169 8.6.2 Time series and event streams 170 8.6.2.1 Multi-scale with mega-windows 170 8.6.2.2 Untangling streams 171 8.6.2.3 Real-time processing 171 8.7 SUMMARY 171 Chapter 9
Making Sense of Machine Learning 175 9.1 OVERVIEW 175 9.2 THE MACHINE LEARNING PROCESS 175 xii
Contents 9.2.1 Training phase 176 9.2.2 Application phase 177 9.2.3 Validation phase 177 9.3 EVALUATION 178 9.3.1 Measures of effectiveness 178 9.3.2 Precision-recall trade-off 180 9.3.3 Data for evaluation 182 9.3.4 Multi-stage evaluation 182 9.4 THE FITNESS LANDSCAPE 183 9.4.1 Hill-climbing and gradient descent / ascent 183 9.4.2 Local maxima and minima 184 9.4.3 Plateau and ridge effects 185 9.4.4 Local structure 186 9.4.5 Approximating the landscape 186 9.4.6 Forms of fitness function 187 9.5 DEALING WITH COMPLEXITY 188 9.5.1 Degrees of freedom and dimension reduction 188 9.5.2 Constraints and dependent features 189 9.5.3 Continuity and learning 191 9.5.4 Multi-objective optimisation 193 9.5.5 Partially labelled data 194 9.6 SUMMARY 196 Chapter 10
Data Preparation 199 10.1 OVERVIEW 199 10.2 STAGES OF DATA PREPARATION 199 10.3 CREATING A DATASET 200 10.3.1 Extraction and gathering of data 200 10.3.2 Entity reconciliation and linking 201 10.3.3 Exception sets 202 10.4 MANIPULATION AND TRANSFORMATION OF DATA 202 10.4.1 Types of data value 203 10.4.2 Transforming to the right kind of data 204 10.5 NUMERICAL TRANSFORMATIONS 205 10.5.1 Information 205 10.5.2 Normalising data 207 Contents
xiii 10.5.3 Missing values - filling the gaps 207 10.5.4 Outliers - dealing with extremes 209 10.6 NON-NUMERIC TRANSFORMATIONS 211 10.6.1 Media data 211 10.6.2 Text 212 10.6.3 Structure transformation 214 10.7 AUTOMATION AND DOCUMENTATION 214 10.8 SUMMARY 216 Section III Specialised Areas Chapter 11
Game playing 221 11.1 OVERVIEW 221 11.2 INTRODUCTION 221 11.3 CHARACTERISTICS OF GAME PLAYING 223 11.4 STANDARD GAMES 225 11.4.1 A simple game tree 225 11.4.2 Heuristics and minimax search 225 11.4.3 Horizon problems 227 11.4.4 Alpha-beta pruning 228 11.4.5 The imperfect opponent 229 11.5 NON-ZERO-SUM GAMES AND SIMULTANEOUS PLAY 229 11.5.1 The prisoner's dilemma 230 11.5.2 Searching the game tree 230 11.5.3 No alpha-beta pruning 232 11.5.4 Pareto-optimality 232 11.5.5 Multi-party competition and co-operation 233 11.6 THE ADVERSARY IS LIFE! 233 11.7 PROBABILITY 235 11.8 NEURAL NETWORKS FOR GAMES 236 11.8.1 Where to use a neural network 236 11.8.2 Training data and self play 238 11.9 SUMMARY 238 Chapter 12
Computer vision 243 12.1 OVERVIEW 243 12.2 INTRODUCTION 243 xiv
Contents 12.2.1 Why computer vision is difficult 243 12.2.2 Phases of computer vision 244 12.3 DIGITIZATION AND SIGNAL PROCESSING 245 12.3.1 Digitizing images 245 12.3.2 Thresholding 246 12.3.3 Digital filters 248 12.3.3.1 Linear filters 249 12.3.3.2 Smoothing 249 12.3.3.3 Gaussian filters 251 12.3.3.4 Practical considerations 252 12.4 EDGE DETECTION 252 12.4.1 Identifying edge pixels 253 12.4.1.1 Gradient operators 253 12.4.1.2 Robert's operator 253 12.4.1.3 Sobel's operator 256 12.4.1.4 Laplacian operator 257 12.4.1.5 Successive refinement and Marr's primal sketch 258 12.4.2 Edge following 259 12.5 REGION DETECTION 260 12.5.1 Region growing 261 12.5.2 The problem of texture 261 12.5.3 Representing regions - quadtrees 262 12.5.4 Computational problems 263 12.6 RECONSTRUCTING OBJECTS 263 12.6.1 Inferring three-dimensional features 263 12.6.1.1 Problems with labelling 266 12.6.2 Using properties of regions 267 12.7 IDENTIFYING OBJECTS 269 12.7.1 Using bitmaps 269 12.7.2 Using summary statistics 270 12.7.3 Using outlines 271 12.7.4 Using paths 272 12.8 FACIAL AND BODY RECOGNITION 273 12.9 NEURAL NETWORKS FOR IMAGES 276 12.9.1 Convolutional neural networks 276 12.9.2 Autoencoders 277 Contents
xv 12.10 GENERATIVE ADVERSARIAL NETWORKS 279 12.10.1 Generated data 279 12.10.2 Diffusion models 280 12.10.3 Bottom-up and top-down processing 281 12.11 MULTIPLE IMAGES 281 12.11.1 Stereo vision 282 12.11.2 Moving pictures 284 12.12 SUMMARY 285 Chapter 13
Natural language understanding 289 13.1 OVERVIEW 289 13.2 WHAT IS NATURAL LANGUAGE UNDERSTANDING? 289 13.3 WHY DO WE NEED NATURAL LANGUAGE UNDERSTANDING? 290 13.4 WHY IS NATURAL LANGUAGE UNDERSTANDING DIFFICULT? 290 13.5 AN EARLY ATTEMPT AT NATURAL LANGUAGE UNDERSTANDING: SHRDLU 292 13.6 HOW DOES NATURAL LANGUAGE UNDERSTANDING WORK? 293 13.7 SYNTACTIC ANALYSIS 295 13.7.1 Grammars 296 13.7.2 An example: generating a grammar fragment 297 13.7.3 Transition networks 299 13.7.4 Context-sensitive grammars 302 13.7.5 Feature sets 303 13.7.6 Augmented transition networks 304 13.7.7 Taggers 304 13.8 SEMANTIC ANALYSIS 305 13.8.1 Semantic grammars 306 13.8.1.1 An example: a database query interpreter revisited 306 13.8.2 Case grammars 307 13.9 PRAGMATIC ANALYSIS 310 13.9.1 Speech acts 311 13.10 GRAMMAR-FREE APPROACHES 311 13.10.1 Template matching 311 13.10.2 Keyword matching 312 13.10.3 Predictive methods 312 13.10.4 Statistical methods 313 13.11 SUMMARY 314 xvi
Contents 13.12 SOLUTION TO SHRDLU PROBLEM 315 Chapter 14
Time Series and Sequential Data 317 14.1 OVERVIEW 317 14.2 GENERAL PROPERTIES 317 14.2.1 Kinds of temporal and sequential data 317 14.2.2 Looking through time 318 14.2.3 Processing temporal data 320 14.2.3.1 Windowing 320 14.2.3.2 Hidden state 321 14.2.3.3 Non-time domain transformations 321 14.3 PROBABILITY MODELS 322 14.3.1 Markov Model 323 14.3.2 Higher-order Markov Model 324 14.3.3 Hidden Markov Model 326 14.4 GRAMMAR AND PATTERN-BASED APPROACHES 327 14.4.1 Regular expressions 327 14.4.2 More complex grammars 328 14.5 NEURAL NETWORKS 329 14.5.1 Window-based methods 329 14.5.2 Recurrent Neural Networks 331 14.5.3 Long-term short-term memory networks 332 14.5.4 Transformer models 332 14.6 STATISTICAL AND NUMERICAL TECHNIQUES 332 14.6.1 Simple data cleaning techniques 333 14.6.2 Logarithmic transformations and exponential growth 334 14.6.3 ARMA models 335 14.6.4 Mixed statistics/ML models 336 14.7 MULTI-STAGE/SCALE 337 14.8 SUMMARY 339 Chapter 15
Planning and robotics 343 15.1 OVERVIEW 343 15.2 INTRODUCTION 343 15.2.1 Friend or foe? 343 15.2.2 Different kinds of robots 344 15.3 GLOBAL PLANNING 345 Contents
xvii 15.3.1 Planning actions - means-ends analysis 345 15.3.2 Planning routes - configuration spaces 348 15.4 LOCAL PLANNING 350 15.4.1 Local planning and obstacle avoidance 350 15.4.2 Finding out about the world 353 15.5 LIMBS, LEGS AND EYES 356 15.5.1 Limb control 356 15.5.2 Walking - on one, two or more legs 359 15.5.3 Active vision 361 15.6 PRACTICAL ROBOTICS 363 15.6.1 Controlling the environment 363 15.6.2 Safety and hierarchical control 364 15.7 SUMMARY 365 Chapter 16
Agents 369 16.1 OVERVIEW 369 16.2 SOFTWARE AGENTS 369 16.2.1 The rise of the agent 370 16.2.2 Triggering actions 371 16.2.3 Watching and learning 372 16.2.4 Searching for information 374 16.3 REINFORCEMENT LEARNING 376 16.3.1 Single step learning 376 16.3.2 Choices during learning 378 16.3.3 Intermittent rewards and credit assignment 379 16.4 COOPERATING AGENTS AND DISTRIBUTED AI 379 16.4.1 Blackboard architectures 380 16.4.2 Distributed control 382 16.5 LARGER COLLECTIVES 383 16.5.1 Emergent behaviour 383 16.5.2 Cellular automata 384 16.5.3 Artificial life 384 16.5.4 Swarm computing 385 16.5.5 Ensemble methods 386 16.6 SUMMARY 388 Chapter 17
Web scale reasoning 391 xviii
Contents 17.1 OVERVIEW 391 17.2 THE SEMANTIC WEB 391 17.2.1 Representing knowledge - RDF and triples 392 17.2.2 Ontologies 394 17.2.3 Asking questions - SPARQL 395 17.2.4 Talking about RDF - reification, named graphs and provenance 396 17.2.5 Linked data - connecting the Semantic Web 398 17.3 MINING THE WEB: SEARCH AND SEMANTICS 402 17.3.1 Search words and links 402 17.3.2 Explicit markup 403 17.3.3 External semantics 405 17.4 USING WEB DATA 408 17.4.1 Knowledge-rich applications 408 17.4.2 The surprising power of big data 409 17.5 THE HUMAN WEB 412 17.5.1 Recommender systems 412 17.5.2 Crowdsourcing and human computation 414 17.5.3 Social media as data 416 17.6 SUMMARY 417 Section IV Humans at the Heart Chapter 18
Expert and decision support systems 421 18.1 OVERVIEW 421 18.2 INTRODUCTION - EXPERTS IN THE LOOP 421 18.3 EXPERT SYSTEMS 422 18.3.1 Uses of expert systems 423 18.3.2 Architecture of an expert system 425 18.3.3 Explanation facility 425 18.3.4 Dialogue and UI component 427 18.3.5 Examples of four expert systems 428 18.3.5.1 Example 1: MYCIN 428 18.3.5.2 Example 2: PROSPECTOR 429 18.3.5.3 Example 3: DENDRAL 429 18.3.5.4 Example 4: XCON 430 18.3.6 Building an expert system 430 Contents
xix 18.3.7 Limitations of expert systems 431 18.4 KNOWLEDGE ACQUISITION 431 18.4.1 Knowledge elicitation 432 18.4.1.1 Unstructured interviews. 432 18.4.1.2 Structured interviews. 433 18.4.1.3 Focused discussions. 433 18.4.1.4 Role reversal. 433 18.4.1.5 Think-aloud. 433 18.4.2 Knowledge Representation 434 18.4.2.1 Expert system shells 434 18.4.2.2 High-level programming languages 434 18.4.2.3 Ontologies 434 18.4.2.4 Selecting a tool 435 18.5 EXPERTS AND MACHINE LEARNING 436 18.5.1 Knowledge elicitation for ML 438 18.5.1.1 Acquiring tacit knowledge 438 18.5.1.2 Feature selection 438 18.5.1.3 Expert labelling 438 18.5.1.4 Iteration and interaction 439 18.5.2 Algorithmic choice, validation and explanation 439 18.6 DECISION SUPPORT SYSTEMS. 441 18.6.1 Visualisation 442 18.6.2 Data management and analysis 443 18.6.3 Visual Analytics 444 18.6.3.1 Visualisation in VA 445 18.6.3.2 Data management and analysis for VA 446 18.7 STEPPING BACK 447 18.7.1 Who is it about? 447 18.7.2 Why are we doing it? 447 18.7.3 Wider context 449 18.7.4 Cost-benefit balance 450 18.8 SUMMARY 451 Chapter 19
AI working with and for humans 455 19.1 OVERVIEW 455 19.2 INTRODUCTION 455 xx
Contents 19.3 LEVELS AND TYPES OF HUMAN CONTACT 457 19.3.1 Social scale 457 19.3.2 Visibility and embodiment 458 19.3.3 Intentionality 458 19.3.4 Who is in control 459 19.3.5 Levels of automation 460 19.4 ON A DEVICE - INTELLIGENT USER INTERFACES 462 19.4.1 Low-level input 462 19.4.2 Conversational user interfaces 462 19.4.3 Predicting what next 464 19.4.4 Finding and managing information 464 19.4.5 Helping with tasks 466 19.4.6 Adaptation and personalisation 467 19.4.7 Going small 468 19.5 IN THE WORLD - SMART ENVIRONMENTS 469 19.5.1 Configuration 470 19.5.2 Sensor fusion 470 19.5.3 Context and activity 472 19.5.4 Designing for uncertainty in sensor-rich smart environments 473 19.5.5 Dealing with hiddenness - a central heating controller 474 19.6 DESIGNING FOR AI-HUMAN INTERACTION 476 19.6.1 Appropriate intelligence - soft failure 476 19.6.2 Feedback - error detection and repair 477 19.6.3 Decisions and suggestions 478 19.6.4 Case study: OnCue - appropriate intelligence by design 480 19.7 TOWARDS HUMAN-MACHINE SYNERGY 481 19.7.1 Tuning AI algorithms for interaction 481 19.7.2 Tuning interaction for AI 482 19.8 SUMMARY 483 Chapter 20
When things go wrong 487 20.1 OVERVIEW 487 20.2 INTRODUCTION 487 20.3 WRONG ON PURPOSE? 488 20.3.1 Intentional bad use 488 20.3.2 Unintentional problems 489 Contents
xxi 20.4 GENERAL STRATEGIES 490 20.4.1 Transparency and trust 490 20.4.2 Algorithmic accountability 491 20.4.3 Levels of opacity 492 20.5 SOURCES OF ALGORITHMIC BIAS 493 20.5.1 What is bias? 493 20.5.2 Stages in machine learning 494 20.5.3 Bias in the training data 494 20.5.4 Bias in the objective function 497 20.5.5 Bias in the accurate result 498 20.5.6 Proxy measures 499 20.5.7 Input feature choice 500 20.5.8 Bias and human reasoning 500 20.5.9 Avoiding bias 501 20.6 PRIVACY 502 20.6.1 Anonymisation 502 20.6.2 Obfuscation 503 20.6.3 Aggregation 503 20.6.4 Adversarial privacy 504 20.6.5 Federated learning 504 20.7 COMMUNICATION, INFORMATION AND MISINFORMATION 505 20.7.1 Social media 505 20.7.2 Deliberate misinformation 506 20.7.3 Filter bubbles 507 20.7.4 Poor information 507 20.8 SUMMARY 508 Chapter 21
Explainable AI 513 21.1 OVERVIEW 513 21.2 INTRODUCTION 513 21.2.1 Why we need explainable AI 514 21.2.2 Is explainable AI possible? 515 21.3 AN EXAMPLE - QUERY-BY-BROWSING 515 21.3.1 The problem 516 21.3.2 A solution 516 21.3.3 How it works 517 xxii
Contents 21.4 HUMAN EXPLANATION - SUFFICIENT REASON 518 21.5 LOCAL AND GLOBAL EXPLANATIONS 519 21.5.1 Decision trees - easier explanations 519 21.5.2 Black-box - sensitivity and perturbations 520 21.6 HEURISTICS FOR EXPLANATION 522 21.6.1 White-box techniques 523 21.6.2 Black-box techniques 524 21.6.3 Grey-box techniques 526 21.7 SUMMARY 529 Chapter 22
Models of the mind - Human-Like Computing 533 22.1 OVERVIEW 533 22.2 INTRODUCTION 533 22.3 WHAT IS THE HUMAN MIND? 534 22.4 RATIONALITY 535 22.4.1 ACTR 536 22.4.2 SOAR 537 22.5 SUBCONSCIOUS AND INTUITION 538 22.5.1 Heuristics and imagination 539 22.5.2 Attention, salience and boredom 539 22.5.3 Rapid serial switching 540 22.5.4 Disambiguation 541 22.5.5 Boredom 542 22.5.6 Dreaming 542 22.6 EMOTION 543 22.6.1 Empathy and theory of mind 544 22.6.2 Regret 546 22.6.3 Feeling 548 22.7 SUMMARY 549 Chapter 23
Philosophical, ethical and social issues 553 23.1 OVERVIEW 553 23.2 THE LIMITS OF AI 553 23.2.1 Intelligent machines or engineering tools? 554 23.2.2 What is intelligence? 554 23.2.3 Computational argument vs. Searle's Chinese Room 555 23.3 CREATIVITY 556 Contents
xxiii 23.3.1 The creative process 557 23.3.2 Generate and filter 557 23.3.3 The critical edge 558 23.3.4 Impact on creative professionals 558 23.4 CONSCIOUSNESS 559 23.4.1 Defining consciousness 559 23.4.2 Dualism and materialism 560 23.4.3 The hard problem of consciousness 561 23.5 MORALITY OF THE ARTIFICIAL 561 23.5.1 Morally neutral 561 23.5.2 Who is responsible? 563 23.5.3 Life or death decisions 563 23.5.4 The special ethics of AI 565 23.6 SOCIETY AND WORK 565 23.6.1 Humanising AI or dehumanising people 566 23.6.2 Top-down: algorithms grading students 566 23.6.3 Bottom-up: when AI ruled France 568 23.6.4 AI and work 569 23.7 MONEY AND POWER 570 23.7.1 Finance and markets 571 23.7.2 Advertising and runaway AI 572 23.7.3 Big AI: the environment and social impact 573 23.8 SUMMARY 575 Section V Looking Forward Chapter 24
Epilogue: what next? 581 24.1 OVERVIEW 581 24.2 CRYSTAL BALL 581 24.3 WHAT NEXT: AI TECHNOLOGY 582 24.3.1 Bigger and Better 582 24.3.2 Smaller and Smarter 582 24.3.3 Mix and Match 584 24.3.4 Partners with People 584 24.4 WHAT NEXT: AI IN THE WORLD 585 24.4.1 Friend or Foe? 585 24.4.2 Boom then Bust 586 xxiv
Contents 24.4.3 Everywhere and nowhere 586 24.5 SUMMARY - FROM HYPE TO HOPE 586 Bibliography 589 Index
List of Figures xxv Preface xxxv Author Bio xxxvii Chapter 1
Introduction 1 1.1 WHAT IS ARTIFICIAL INTELLIGENCE? 1 1.1.1 How much like a human: strong vs. weak AI 1 1.1.2 Top-down or bottom-up: symbolic vs. sub-symbolic 2 1.1.3 A working definition 3 1.1.4 Human intelligence 3 1.1.5 Bottom up and top down 4 1.2 HUMANS AT THE HEART 4 1.3 A SHORT HISTORY OF ARTIFICIAL INTELLIGENCE 5 1.3.1 The development of AI 6 1.3.2 The physical symbol system hypothesis 8 1.3.3 Sub-symbolic spring 9 1.3.4 AI Renaissance 10 1.3.5 Moving onwards 11 1.4 STRUCTURE OF THIS BOOK - A LANDSCAPE OF AI 11 Section I Knowledge-Rich AI Chapter 2
Knowledge in AI 15 2.1 OVERVIEW 15 2.2 INTRODUCTION 15 2.3 REPRESENTING KNOWLEDGE 16 2.4 METRICS FOR ASSESSING KNOWLEDGE REPRESENTATION SCHEMES 19 2.5 LOGIC REPRESENTATIONS 20 2.6 PROCEDURAL REPRESENTATION 23 vii viii
Contents 2.6.1 The database 23 2.6.2 The production rules 23 2.6.3 The interpreter 24 2.6.4 An example production system: making a loan 24 2.7 NETWORK REPRESENTATIONS 26 2.8 STRUCTURED REPRESENTATIONS 28 2.8.1 Frames 29 2.8.2 Scripts 29 2.9 GENERAL KNOWLEDGE 31 2.10 THE FRAME PROBLEM 32 2.11 KNOWLEDGE ELICITATION 33 2.12 SUMMARY 33 Chapter 3
Reasoning 37 3.1 OVERVIEW 37 3.2 WHAT IS REASONING? 37 3.3 FORWARD AND BACKWARD REASONING 39 3.4 REASONING WITH UNCERTAINTY 40 3.4.1 Non-monotonic reasoning 40 3.4.2 Probabilistic reasoning 41 3.4.3 Certainty factors 43 3.4.4 Fuzzy reasoning 45 3.4.5 Reasoning by analogy 46 3.4.6 Case-based reasoning 46 3.5 REASONING OVER NETWORKS 48 3.6 CHANGING REPRESENTATIONS 51 3.7 SUMMARY 51 Chapter 4
Search 53 4.1 INTRODUCTION 53 4.1.1 Types of problem 53 4.1.2 Structuring the search space 57 4.2 EXHAUSTIVE SEARCH AND SIMPLE PRUNING 63 4.2.1 Depth and breadth first search 63 4.2.2 Comparing depth and breadth first searches 65 4.2.3 Programming and space costs 67 4.2.4 Iterative deepening and broadening 68 Contents
ix 4.2.5 Finding the best solution - branch and bound 69 4.2.6 Graph search 70 4.3 HEURISTIC SEARCH 70 4.3.1 Hill climbing andbest first - goal-directed search 72 4.3.2 Finding the best solution - the A
algorithm 72 4.3.3 Inexact search 75 4.4 KNOWLEDGE-RICH SEARCH 77 4.4.1 Constraint satisfaction 78 4.5 SUMMARY 80 Section II Data and Learning Chapter 5
Machine learning 85 5.1 OVERVIEW 85 5.2 WHY DO WE WANT MACHINE LEARNING? 85 5.3 HOW MACHINES LEARN 87 5.3.1 Phases of machine learning 87 5.3.2 Rote learning and the importance of generalization 89 5.3.3 Inputs to training 90 5.3.4 Outputs of training 91 5.3.5 The training process 92 5.4 DEDUCTIVE LEARNING 93 5.5 INDUCTIVE LEARNING 94 5.5.1 Version spaces 95 5.5.2 Decision trees 99 5.5.2.1 Building a binary tree 99 5.5.2.2 More complex trees 102 5.5.3 Rule induction and credit assignment 103 5.6 EXPLANATION-BASED LEARNING 104 5.7 EXAMPLE: QUERY-BY-BROWSING 105 5.7.1 What the user sees 105 5.7.2 How it works 105 5.7.3 Problems 107 5.8 SUMMARY 107 Chapter 6
Neural Networks 109 6.1 OVERVIEW 109 x
Contents 6.2 WHY USE NEURAL NETWORKS? 109 6.3 THE PERCEPTRON 110 6.3.1 The XOR problem 112 6.4 THE MULTI-LAYER PERCEPTRON 113 6.5 BACKPROPAGATION 114 6.5.1 Basic principle 115 6.5.2 Backprop for a single layer network 116 6.5.3 Backprop for hidden layers 117 6.6 ASSOCIATIVE MEMORIES 117 6.6.1 Boltzmann Machines 119 6.6.2 Kohonen self-organizing networks 121 6.7 LOWER-LEVEL MODELS 122 6.7.1 Cortical layers 122 6.7.2 Inhibition 123 6.7.3 Spiking neural networks 123 6.8 HYBRID ARCHITECTURES 124 6.8.1 Hybrid layers 124 6.8.2 Neurosymbolic AI 125 6.9 SUMMARY 126 Chapter 7
Statistical and Numerical Techniques 129 7.1 OVERVIEW 129 7.2 LINEAR REGRESSION 129 7.3 VECTORS AND MATRICES 132 7.4 EIGENVALUES AND PRINCIPAL COMPONENTS 134 7.5 CLUSTERING AND K-MEANS 136 7.6 RANDOMNESS 138 7.6.1 Simple statistics 138 7.6.2 Distributions and long-tail data 140 7.6.3 Least squares 142 7.6.4 Monte Carlo techniques 142 7.7 NON-LINEAR FUNCTIONS FOR MACHINE LEARNING 144 7.7.1 Support Vector Machines 144 7.7.2 Reservoir Computing 145 7.7.3 Kolmogorov-Arnold Networks 146 7.8 SUMMARY 147 Contents
xi Chapter 8
Going Large: deep learning and big data 151 8.1 OVERVIEW 151 8.2 DEEP LEARNING 152 8.2.1 Why are many layers so difficult? 153 8.2.2 Architecture of the layers 153 8.3 GROWING THE DATA 156 8.3.1 Modifying real data 157 8.3.2 Virtual worlds 157 8.3.3 Self learning 157 8.4 DATA REDUCTION 158 8.4.1 Dimension reduction 159 8.4.1.1 Vector space techniques 159 8.4.1.2 Non-numeric features 160 8.4.2 Reduce total number of data items 161 8.4.2.1 Sampling 161 8.4.2.2 Aggregation 161 8.4.3 Segmentation 162 8.4.3.1 Class segmentation 162 8.4.3.2 Result recombination 162 8.4.3.3 Weakly-communicating partial analysis 163 8.5 PROCESSING BIG DATA 164 8.5.1 Why it is hard - distributed storage and computation 164 8.5.2 Principles behind MapReduce 165 8.5.3 MapReduce for the cloud 166 8.5.4 If it can go wrong - resilience for big processing 167 8.6 DATA AND ALGORITHMS AT SCALE 169 8.6.1 Big graphs 169 8.6.2 Time series and event streams 170 8.6.2.1 Multi-scale with mega-windows 170 8.6.2.2 Untangling streams 171 8.6.2.3 Real-time processing 171 8.7 SUMMARY 171 Chapter 9
Making Sense of Machine Learning 175 9.1 OVERVIEW 175 9.2 THE MACHINE LEARNING PROCESS 175 xii
Contents 9.2.1 Training phase 176 9.2.2 Application phase 177 9.2.3 Validation phase 177 9.3 EVALUATION 178 9.3.1 Measures of effectiveness 178 9.3.2 Precision-recall trade-off 180 9.3.3 Data for evaluation 182 9.3.4 Multi-stage evaluation 182 9.4 THE FITNESS LANDSCAPE 183 9.4.1 Hill-climbing and gradient descent / ascent 183 9.4.2 Local maxima and minima 184 9.4.3 Plateau and ridge effects 185 9.4.4 Local structure 186 9.4.5 Approximating the landscape 186 9.4.6 Forms of fitness function 187 9.5 DEALING WITH COMPLEXITY 188 9.5.1 Degrees of freedom and dimension reduction 188 9.5.2 Constraints and dependent features 189 9.5.3 Continuity and learning 191 9.5.4 Multi-objective optimisation 193 9.5.5 Partially labelled data 194 9.6 SUMMARY 196 Chapter 10
Data Preparation 199 10.1 OVERVIEW 199 10.2 STAGES OF DATA PREPARATION 199 10.3 CREATING A DATASET 200 10.3.1 Extraction and gathering of data 200 10.3.2 Entity reconciliation and linking 201 10.3.3 Exception sets 202 10.4 MANIPULATION AND TRANSFORMATION OF DATA 202 10.4.1 Types of data value 203 10.4.2 Transforming to the right kind of data 204 10.5 NUMERICAL TRANSFORMATIONS 205 10.5.1 Information 205 10.5.2 Normalising data 207 Contents
xiii 10.5.3 Missing values - filling the gaps 207 10.5.4 Outliers - dealing with extremes 209 10.6 NON-NUMERIC TRANSFORMATIONS 211 10.6.1 Media data 211 10.6.2 Text 212 10.6.3 Structure transformation 214 10.7 AUTOMATION AND DOCUMENTATION 214 10.8 SUMMARY 216 Section III Specialised Areas Chapter 11
Game playing 221 11.1 OVERVIEW 221 11.2 INTRODUCTION 221 11.3 CHARACTERISTICS OF GAME PLAYING 223 11.4 STANDARD GAMES 225 11.4.1 A simple game tree 225 11.4.2 Heuristics and minimax search 225 11.4.3 Horizon problems 227 11.4.4 Alpha-beta pruning 228 11.4.5 The imperfect opponent 229 11.5 NON-ZERO-SUM GAMES AND SIMULTANEOUS PLAY 229 11.5.1 The prisoner's dilemma 230 11.5.2 Searching the game tree 230 11.5.3 No alpha-beta pruning 232 11.5.4 Pareto-optimality 232 11.5.5 Multi-party competition and co-operation 233 11.6 THE ADVERSARY IS LIFE! 233 11.7 PROBABILITY 235 11.8 NEURAL NETWORKS FOR GAMES 236 11.8.1 Where to use a neural network 236 11.8.2 Training data and self play 238 11.9 SUMMARY 238 Chapter 12
Computer vision 243 12.1 OVERVIEW 243 12.2 INTRODUCTION 243 xiv
Contents 12.2.1 Why computer vision is difficult 243 12.2.2 Phases of computer vision 244 12.3 DIGITIZATION AND SIGNAL PROCESSING 245 12.3.1 Digitizing images 245 12.3.2 Thresholding 246 12.3.3 Digital filters 248 12.3.3.1 Linear filters 249 12.3.3.2 Smoothing 249 12.3.3.3 Gaussian filters 251 12.3.3.4 Practical considerations 252 12.4 EDGE DETECTION 252 12.4.1 Identifying edge pixels 253 12.4.1.1 Gradient operators 253 12.4.1.2 Robert's operator 253 12.4.1.3 Sobel's operator 256 12.4.1.4 Laplacian operator 257 12.4.1.5 Successive refinement and Marr's primal sketch 258 12.4.2 Edge following 259 12.5 REGION DETECTION 260 12.5.1 Region growing 261 12.5.2 The problem of texture 261 12.5.3 Representing regions - quadtrees 262 12.5.4 Computational problems 263 12.6 RECONSTRUCTING OBJECTS 263 12.6.1 Inferring three-dimensional features 263 12.6.1.1 Problems with labelling 266 12.6.2 Using properties of regions 267 12.7 IDENTIFYING OBJECTS 269 12.7.1 Using bitmaps 269 12.7.2 Using summary statistics 270 12.7.3 Using outlines 271 12.7.4 Using paths 272 12.8 FACIAL AND BODY RECOGNITION 273 12.9 NEURAL NETWORKS FOR IMAGES 276 12.9.1 Convolutional neural networks 276 12.9.2 Autoencoders 277 Contents
xv 12.10 GENERATIVE ADVERSARIAL NETWORKS 279 12.10.1 Generated data 279 12.10.2 Diffusion models 280 12.10.3 Bottom-up and top-down processing 281 12.11 MULTIPLE IMAGES 281 12.11.1 Stereo vision 282 12.11.2 Moving pictures 284 12.12 SUMMARY 285 Chapter 13
Natural language understanding 289 13.1 OVERVIEW 289 13.2 WHAT IS NATURAL LANGUAGE UNDERSTANDING? 289 13.3 WHY DO WE NEED NATURAL LANGUAGE UNDERSTANDING? 290 13.4 WHY IS NATURAL LANGUAGE UNDERSTANDING DIFFICULT? 290 13.5 AN EARLY ATTEMPT AT NATURAL LANGUAGE UNDERSTANDING: SHRDLU 292 13.6 HOW DOES NATURAL LANGUAGE UNDERSTANDING WORK? 293 13.7 SYNTACTIC ANALYSIS 295 13.7.1 Grammars 296 13.7.2 An example: generating a grammar fragment 297 13.7.3 Transition networks 299 13.7.4 Context-sensitive grammars 302 13.7.5 Feature sets 303 13.7.6 Augmented transition networks 304 13.7.7 Taggers 304 13.8 SEMANTIC ANALYSIS 305 13.8.1 Semantic grammars 306 13.8.1.1 An example: a database query interpreter revisited 306 13.8.2 Case grammars 307 13.9 PRAGMATIC ANALYSIS 310 13.9.1 Speech acts 311 13.10 GRAMMAR-FREE APPROACHES 311 13.10.1 Template matching 311 13.10.2 Keyword matching 312 13.10.3 Predictive methods 312 13.10.4 Statistical methods 313 13.11 SUMMARY 314 xvi
Contents 13.12 SOLUTION TO SHRDLU PROBLEM 315 Chapter 14
Time Series and Sequential Data 317 14.1 OVERVIEW 317 14.2 GENERAL PROPERTIES 317 14.2.1 Kinds of temporal and sequential data 317 14.2.2 Looking through time 318 14.2.3 Processing temporal data 320 14.2.3.1 Windowing 320 14.2.3.2 Hidden state 321 14.2.3.3 Non-time domain transformations 321 14.3 PROBABILITY MODELS 322 14.3.1 Markov Model 323 14.3.2 Higher-order Markov Model 324 14.3.3 Hidden Markov Model 326 14.4 GRAMMAR AND PATTERN-BASED APPROACHES 327 14.4.1 Regular expressions 327 14.4.2 More complex grammars 328 14.5 NEURAL NETWORKS 329 14.5.1 Window-based methods 329 14.5.2 Recurrent Neural Networks 331 14.5.3 Long-term short-term memory networks 332 14.5.4 Transformer models 332 14.6 STATISTICAL AND NUMERICAL TECHNIQUES 332 14.6.1 Simple data cleaning techniques 333 14.6.2 Logarithmic transformations and exponential growth 334 14.6.3 ARMA models 335 14.6.4 Mixed statistics/ML models 336 14.7 MULTI-STAGE/SCALE 337 14.8 SUMMARY 339 Chapter 15
Planning and robotics 343 15.1 OVERVIEW 343 15.2 INTRODUCTION 343 15.2.1 Friend or foe? 343 15.2.2 Different kinds of robots 344 15.3 GLOBAL PLANNING 345 Contents
xvii 15.3.1 Planning actions - means-ends analysis 345 15.3.2 Planning routes - configuration spaces 348 15.4 LOCAL PLANNING 350 15.4.1 Local planning and obstacle avoidance 350 15.4.2 Finding out about the world 353 15.5 LIMBS, LEGS AND EYES 356 15.5.1 Limb control 356 15.5.2 Walking - on one, two or more legs 359 15.5.3 Active vision 361 15.6 PRACTICAL ROBOTICS 363 15.6.1 Controlling the environment 363 15.6.2 Safety and hierarchical control 364 15.7 SUMMARY 365 Chapter 16
Agents 369 16.1 OVERVIEW 369 16.2 SOFTWARE AGENTS 369 16.2.1 The rise of the agent 370 16.2.2 Triggering actions 371 16.2.3 Watching and learning 372 16.2.4 Searching for information 374 16.3 REINFORCEMENT LEARNING 376 16.3.1 Single step learning 376 16.3.2 Choices during learning 378 16.3.3 Intermittent rewards and credit assignment 379 16.4 COOPERATING AGENTS AND DISTRIBUTED AI 379 16.4.1 Blackboard architectures 380 16.4.2 Distributed control 382 16.5 LARGER COLLECTIVES 383 16.5.1 Emergent behaviour 383 16.5.2 Cellular automata 384 16.5.3 Artificial life 384 16.5.4 Swarm computing 385 16.5.5 Ensemble methods 386 16.6 SUMMARY 388 Chapter 17
Web scale reasoning 391 xviii
Contents 17.1 OVERVIEW 391 17.2 THE SEMANTIC WEB 391 17.2.1 Representing knowledge - RDF and triples 392 17.2.2 Ontologies 394 17.2.3 Asking questions - SPARQL 395 17.2.4 Talking about RDF - reification, named graphs and provenance 396 17.2.5 Linked data - connecting the Semantic Web 398 17.3 MINING THE WEB: SEARCH AND SEMANTICS 402 17.3.1 Search words and links 402 17.3.2 Explicit markup 403 17.3.3 External semantics 405 17.4 USING WEB DATA 408 17.4.1 Knowledge-rich applications 408 17.4.2 The surprising power of big data 409 17.5 THE HUMAN WEB 412 17.5.1 Recommender systems 412 17.5.2 Crowdsourcing and human computation 414 17.5.3 Social media as data 416 17.6 SUMMARY 417 Section IV Humans at the Heart Chapter 18
Expert and decision support systems 421 18.1 OVERVIEW 421 18.2 INTRODUCTION - EXPERTS IN THE LOOP 421 18.3 EXPERT SYSTEMS 422 18.3.1 Uses of expert systems 423 18.3.2 Architecture of an expert system 425 18.3.3 Explanation facility 425 18.3.4 Dialogue and UI component 427 18.3.5 Examples of four expert systems 428 18.3.5.1 Example 1: MYCIN 428 18.3.5.2 Example 2: PROSPECTOR 429 18.3.5.3 Example 3: DENDRAL 429 18.3.5.4 Example 4: XCON 430 18.3.6 Building an expert system 430 Contents
xix 18.3.7 Limitations of expert systems 431 18.4 KNOWLEDGE ACQUISITION 431 18.4.1 Knowledge elicitation 432 18.4.1.1 Unstructured interviews. 432 18.4.1.2 Structured interviews. 433 18.4.1.3 Focused discussions. 433 18.4.1.4 Role reversal. 433 18.4.1.5 Think-aloud. 433 18.4.2 Knowledge Representation 434 18.4.2.1 Expert system shells 434 18.4.2.2 High-level programming languages 434 18.4.2.3 Ontologies 434 18.4.2.4 Selecting a tool 435 18.5 EXPERTS AND MACHINE LEARNING 436 18.5.1 Knowledge elicitation for ML 438 18.5.1.1 Acquiring tacit knowledge 438 18.5.1.2 Feature selection 438 18.5.1.3 Expert labelling 438 18.5.1.4 Iteration and interaction 439 18.5.2 Algorithmic choice, validation and explanation 439 18.6 DECISION SUPPORT SYSTEMS. 441 18.6.1 Visualisation 442 18.6.2 Data management and analysis 443 18.6.3 Visual Analytics 444 18.6.3.1 Visualisation in VA 445 18.6.3.2 Data management and analysis for VA 446 18.7 STEPPING BACK 447 18.7.1 Who is it about? 447 18.7.2 Why are we doing it? 447 18.7.3 Wider context 449 18.7.4 Cost-benefit balance 450 18.8 SUMMARY 451 Chapter 19
AI working with and for humans 455 19.1 OVERVIEW 455 19.2 INTRODUCTION 455 xx
Contents 19.3 LEVELS AND TYPES OF HUMAN CONTACT 457 19.3.1 Social scale 457 19.3.2 Visibility and embodiment 458 19.3.3 Intentionality 458 19.3.4 Who is in control 459 19.3.5 Levels of automation 460 19.4 ON A DEVICE - INTELLIGENT USER INTERFACES 462 19.4.1 Low-level input 462 19.4.2 Conversational user interfaces 462 19.4.3 Predicting what next 464 19.4.4 Finding and managing information 464 19.4.5 Helping with tasks 466 19.4.6 Adaptation and personalisation 467 19.4.7 Going small 468 19.5 IN THE WORLD - SMART ENVIRONMENTS 469 19.5.1 Configuration 470 19.5.2 Sensor fusion 470 19.5.3 Context and activity 472 19.5.4 Designing for uncertainty in sensor-rich smart environments 473 19.5.5 Dealing with hiddenness - a central heating controller 474 19.6 DESIGNING FOR AI-HUMAN INTERACTION 476 19.6.1 Appropriate intelligence - soft failure 476 19.6.2 Feedback - error detection and repair 477 19.6.3 Decisions and suggestions 478 19.6.4 Case study: OnCue - appropriate intelligence by design 480 19.7 TOWARDS HUMAN-MACHINE SYNERGY 481 19.7.1 Tuning AI algorithms for interaction 481 19.7.2 Tuning interaction for AI 482 19.8 SUMMARY 483 Chapter 20
When things go wrong 487 20.1 OVERVIEW 487 20.2 INTRODUCTION 487 20.3 WRONG ON PURPOSE? 488 20.3.1 Intentional bad use 488 20.3.2 Unintentional problems 489 Contents
xxi 20.4 GENERAL STRATEGIES 490 20.4.1 Transparency and trust 490 20.4.2 Algorithmic accountability 491 20.4.3 Levels of opacity 492 20.5 SOURCES OF ALGORITHMIC BIAS 493 20.5.1 What is bias? 493 20.5.2 Stages in machine learning 494 20.5.3 Bias in the training data 494 20.5.4 Bias in the objective function 497 20.5.5 Bias in the accurate result 498 20.5.6 Proxy measures 499 20.5.7 Input feature choice 500 20.5.8 Bias and human reasoning 500 20.5.9 Avoiding bias 501 20.6 PRIVACY 502 20.6.1 Anonymisation 502 20.6.2 Obfuscation 503 20.6.3 Aggregation 503 20.6.4 Adversarial privacy 504 20.6.5 Federated learning 504 20.7 COMMUNICATION, INFORMATION AND MISINFORMATION 505 20.7.1 Social media 505 20.7.2 Deliberate misinformation 506 20.7.3 Filter bubbles 507 20.7.4 Poor information 507 20.8 SUMMARY 508 Chapter 21
Explainable AI 513 21.1 OVERVIEW 513 21.2 INTRODUCTION 513 21.2.1 Why we need explainable AI 514 21.2.2 Is explainable AI possible? 515 21.3 AN EXAMPLE - QUERY-BY-BROWSING 515 21.3.1 The problem 516 21.3.2 A solution 516 21.3.3 How it works 517 xxii
Contents 21.4 HUMAN EXPLANATION - SUFFICIENT REASON 518 21.5 LOCAL AND GLOBAL EXPLANATIONS 519 21.5.1 Decision trees - easier explanations 519 21.5.2 Black-box - sensitivity and perturbations 520 21.6 HEURISTICS FOR EXPLANATION 522 21.6.1 White-box techniques 523 21.6.2 Black-box techniques 524 21.6.3 Grey-box techniques 526 21.7 SUMMARY 529 Chapter 22
Models of the mind - Human-Like Computing 533 22.1 OVERVIEW 533 22.2 INTRODUCTION 533 22.3 WHAT IS THE HUMAN MIND? 534 22.4 RATIONALITY 535 22.4.1 ACTR 536 22.4.2 SOAR 537 22.5 SUBCONSCIOUS AND INTUITION 538 22.5.1 Heuristics and imagination 539 22.5.2 Attention, salience and boredom 539 22.5.3 Rapid serial switching 540 22.5.4 Disambiguation 541 22.5.5 Boredom 542 22.5.6 Dreaming 542 22.6 EMOTION 543 22.6.1 Empathy and theory of mind 544 22.6.2 Regret 546 22.6.3 Feeling 548 22.7 SUMMARY 549 Chapter 23
Philosophical, ethical and social issues 553 23.1 OVERVIEW 553 23.2 THE LIMITS OF AI 553 23.2.1 Intelligent machines or engineering tools? 554 23.2.2 What is intelligence? 554 23.2.3 Computational argument vs. Searle's Chinese Room 555 23.3 CREATIVITY 556 Contents
xxiii 23.3.1 The creative process 557 23.3.2 Generate and filter 557 23.3.3 The critical edge 558 23.3.4 Impact on creative professionals 558 23.4 CONSCIOUSNESS 559 23.4.1 Defining consciousness 559 23.4.2 Dualism and materialism 560 23.4.3 The hard problem of consciousness 561 23.5 MORALITY OF THE ARTIFICIAL 561 23.5.1 Morally neutral 561 23.5.2 Who is responsible? 563 23.5.3 Life or death decisions 563 23.5.4 The special ethics of AI 565 23.6 SOCIETY AND WORK 565 23.6.1 Humanising AI or dehumanising people 566 23.6.2 Top-down: algorithms grading students 566 23.6.3 Bottom-up: when AI ruled France 568 23.6.4 AI and work 569 23.7 MONEY AND POWER 570 23.7.1 Finance and markets 571 23.7.2 Advertising and runaway AI 572 23.7.3 Big AI: the environment and social impact 573 23.8 SUMMARY 575 Section V Looking Forward Chapter 24
Epilogue: what next? 581 24.1 OVERVIEW 581 24.2 CRYSTAL BALL 581 24.3 WHAT NEXT: AI TECHNOLOGY 582 24.3.1 Bigger and Better 582 24.3.2 Smaller and Smarter 582 24.3.3 Mix and Match 584 24.3.4 Partners with People 584 24.4 WHAT NEXT: AI IN THE WORLD 585 24.4.1 Friend or Foe? 585 24.4.2 Boom then Bust 586 xxiv
Contents 24.4.3 Everywhere and nowhere 586 24.5 SUMMARY - FROM HYPE TO HOPE 586 Bibliography 589 Index
Introduction 1 1.1 WHAT IS ARTIFICIAL INTELLIGENCE? 1 1.1.1 How much like a human: strong vs. weak AI 1 1.1.2 Top-down or bottom-up: symbolic vs. sub-symbolic 2 1.1.3 A working definition 3 1.1.4 Human intelligence 3 1.1.5 Bottom up and top down 4 1.2 HUMANS AT THE HEART 4 1.3 A SHORT HISTORY OF ARTIFICIAL INTELLIGENCE 5 1.3.1 The development of AI 6 1.3.2 The physical symbol system hypothesis 8 1.3.3 Sub-symbolic spring 9 1.3.4 AI Renaissance 10 1.3.5 Moving onwards 11 1.4 STRUCTURE OF THIS BOOK - A LANDSCAPE OF AI 11 Section I Knowledge-Rich AI Chapter 2
Knowledge in AI 15 2.1 OVERVIEW 15 2.2 INTRODUCTION 15 2.3 REPRESENTING KNOWLEDGE 16 2.4 METRICS FOR ASSESSING KNOWLEDGE REPRESENTATION SCHEMES 19 2.5 LOGIC REPRESENTATIONS 20 2.6 PROCEDURAL REPRESENTATION 23 vii viii
Contents 2.6.1 The database 23 2.6.2 The production rules 23 2.6.3 The interpreter 24 2.6.4 An example production system: making a loan 24 2.7 NETWORK REPRESENTATIONS 26 2.8 STRUCTURED REPRESENTATIONS 28 2.8.1 Frames 29 2.8.2 Scripts 29 2.9 GENERAL KNOWLEDGE 31 2.10 THE FRAME PROBLEM 32 2.11 KNOWLEDGE ELICITATION 33 2.12 SUMMARY 33 Chapter 3
Reasoning 37 3.1 OVERVIEW 37 3.2 WHAT IS REASONING? 37 3.3 FORWARD AND BACKWARD REASONING 39 3.4 REASONING WITH UNCERTAINTY 40 3.4.1 Non-monotonic reasoning 40 3.4.2 Probabilistic reasoning 41 3.4.3 Certainty factors 43 3.4.4 Fuzzy reasoning 45 3.4.5 Reasoning by analogy 46 3.4.6 Case-based reasoning 46 3.5 REASONING OVER NETWORKS 48 3.6 CHANGING REPRESENTATIONS 51 3.7 SUMMARY 51 Chapter 4
Search 53 4.1 INTRODUCTION 53 4.1.1 Types of problem 53 4.1.2 Structuring the search space 57 4.2 EXHAUSTIVE SEARCH AND SIMPLE PRUNING 63 4.2.1 Depth and breadth first search 63 4.2.2 Comparing depth and breadth first searches 65 4.2.3 Programming and space costs 67 4.2.4 Iterative deepening and broadening 68 Contents
ix 4.2.5 Finding the best solution - branch and bound 69 4.2.6 Graph search 70 4.3 HEURISTIC SEARCH 70 4.3.1 Hill climbing andbest first - goal-directed search 72 4.3.2 Finding the best solution - the A
algorithm 72 4.3.3 Inexact search 75 4.4 KNOWLEDGE-RICH SEARCH 77 4.4.1 Constraint satisfaction 78 4.5 SUMMARY 80 Section II Data and Learning Chapter 5
Machine learning 85 5.1 OVERVIEW 85 5.2 WHY DO WE WANT MACHINE LEARNING? 85 5.3 HOW MACHINES LEARN 87 5.3.1 Phases of machine learning 87 5.3.2 Rote learning and the importance of generalization 89 5.3.3 Inputs to training 90 5.3.4 Outputs of training 91 5.3.5 The training process 92 5.4 DEDUCTIVE LEARNING 93 5.5 INDUCTIVE LEARNING 94 5.5.1 Version spaces 95 5.5.2 Decision trees 99 5.5.2.1 Building a binary tree 99 5.5.2.2 More complex trees 102 5.5.3 Rule induction and credit assignment 103 5.6 EXPLANATION-BASED LEARNING 104 5.7 EXAMPLE: QUERY-BY-BROWSING 105 5.7.1 What the user sees 105 5.7.2 How it works 105 5.7.3 Problems 107 5.8 SUMMARY 107 Chapter 6
Neural Networks 109 6.1 OVERVIEW 109 x
Contents 6.2 WHY USE NEURAL NETWORKS? 109 6.3 THE PERCEPTRON 110 6.3.1 The XOR problem 112 6.4 THE MULTI-LAYER PERCEPTRON 113 6.5 BACKPROPAGATION 114 6.5.1 Basic principle 115 6.5.2 Backprop for a single layer network 116 6.5.3 Backprop for hidden layers 117 6.6 ASSOCIATIVE MEMORIES 117 6.6.1 Boltzmann Machines 119 6.6.2 Kohonen self-organizing networks 121 6.7 LOWER-LEVEL MODELS 122 6.7.1 Cortical layers 122 6.7.2 Inhibition 123 6.7.3 Spiking neural networks 123 6.8 HYBRID ARCHITECTURES 124 6.8.1 Hybrid layers 124 6.8.2 Neurosymbolic AI 125 6.9 SUMMARY 126 Chapter 7
Statistical and Numerical Techniques 129 7.1 OVERVIEW 129 7.2 LINEAR REGRESSION 129 7.3 VECTORS AND MATRICES 132 7.4 EIGENVALUES AND PRINCIPAL COMPONENTS 134 7.5 CLUSTERING AND K-MEANS 136 7.6 RANDOMNESS 138 7.6.1 Simple statistics 138 7.6.2 Distributions and long-tail data 140 7.6.3 Least squares 142 7.6.4 Monte Carlo techniques 142 7.7 NON-LINEAR FUNCTIONS FOR MACHINE LEARNING 144 7.7.1 Support Vector Machines 144 7.7.2 Reservoir Computing 145 7.7.3 Kolmogorov-Arnold Networks 146 7.8 SUMMARY 147 Contents
xi Chapter 8
Going Large: deep learning and big data 151 8.1 OVERVIEW 151 8.2 DEEP LEARNING 152 8.2.1 Why are many layers so difficult? 153 8.2.2 Architecture of the layers 153 8.3 GROWING THE DATA 156 8.3.1 Modifying real data 157 8.3.2 Virtual worlds 157 8.3.3 Self learning 157 8.4 DATA REDUCTION 158 8.4.1 Dimension reduction 159 8.4.1.1 Vector space techniques 159 8.4.1.2 Non-numeric features 160 8.4.2 Reduce total number of data items 161 8.4.2.1 Sampling 161 8.4.2.2 Aggregation 161 8.4.3 Segmentation 162 8.4.3.1 Class segmentation 162 8.4.3.2 Result recombination 162 8.4.3.3 Weakly-communicating partial analysis 163 8.5 PROCESSING BIG DATA 164 8.5.1 Why it is hard - distributed storage and computation 164 8.5.2 Principles behind MapReduce 165 8.5.3 MapReduce for the cloud 166 8.5.4 If it can go wrong - resilience for big processing 167 8.6 DATA AND ALGORITHMS AT SCALE 169 8.6.1 Big graphs 169 8.6.2 Time series and event streams 170 8.6.2.1 Multi-scale with mega-windows 170 8.6.2.2 Untangling streams 171 8.6.2.3 Real-time processing 171 8.7 SUMMARY 171 Chapter 9
Making Sense of Machine Learning 175 9.1 OVERVIEW 175 9.2 THE MACHINE LEARNING PROCESS 175 xii
Contents 9.2.1 Training phase 176 9.2.2 Application phase 177 9.2.3 Validation phase 177 9.3 EVALUATION 178 9.3.1 Measures of effectiveness 178 9.3.2 Precision-recall trade-off 180 9.3.3 Data for evaluation 182 9.3.4 Multi-stage evaluation 182 9.4 THE FITNESS LANDSCAPE 183 9.4.1 Hill-climbing and gradient descent / ascent 183 9.4.2 Local maxima and minima 184 9.4.3 Plateau and ridge effects 185 9.4.4 Local structure 186 9.4.5 Approximating the landscape 186 9.4.6 Forms of fitness function 187 9.5 DEALING WITH COMPLEXITY 188 9.5.1 Degrees of freedom and dimension reduction 188 9.5.2 Constraints and dependent features 189 9.5.3 Continuity and learning 191 9.5.4 Multi-objective optimisation 193 9.5.5 Partially labelled data 194 9.6 SUMMARY 196 Chapter 10
Data Preparation 199 10.1 OVERVIEW 199 10.2 STAGES OF DATA PREPARATION 199 10.3 CREATING A DATASET 200 10.3.1 Extraction and gathering of data 200 10.3.2 Entity reconciliation and linking 201 10.3.3 Exception sets 202 10.4 MANIPULATION AND TRANSFORMATION OF DATA 202 10.4.1 Types of data value 203 10.4.2 Transforming to the right kind of data 204 10.5 NUMERICAL TRANSFORMATIONS 205 10.5.1 Information 205 10.5.2 Normalising data 207 Contents
xiii 10.5.3 Missing values - filling the gaps 207 10.5.4 Outliers - dealing with extremes 209 10.6 NON-NUMERIC TRANSFORMATIONS 211 10.6.1 Media data 211 10.6.2 Text 212 10.6.3 Structure transformation 214 10.7 AUTOMATION AND DOCUMENTATION 214 10.8 SUMMARY 216 Section III Specialised Areas Chapter 11
Game playing 221 11.1 OVERVIEW 221 11.2 INTRODUCTION 221 11.3 CHARACTERISTICS OF GAME PLAYING 223 11.4 STANDARD GAMES 225 11.4.1 A simple game tree 225 11.4.2 Heuristics and minimax search 225 11.4.3 Horizon problems 227 11.4.4 Alpha-beta pruning 228 11.4.5 The imperfect opponent 229 11.5 NON-ZERO-SUM GAMES AND SIMULTANEOUS PLAY 229 11.5.1 The prisoner's dilemma 230 11.5.2 Searching the game tree 230 11.5.3 No alpha-beta pruning 232 11.5.4 Pareto-optimality 232 11.5.5 Multi-party competition and co-operation 233 11.6 THE ADVERSARY IS LIFE! 233 11.7 PROBABILITY 235 11.8 NEURAL NETWORKS FOR GAMES 236 11.8.1 Where to use a neural network 236 11.8.2 Training data and self play 238 11.9 SUMMARY 238 Chapter 12
Computer vision 243 12.1 OVERVIEW 243 12.2 INTRODUCTION 243 xiv
Contents 12.2.1 Why computer vision is difficult 243 12.2.2 Phases of computer vision 244 12.3 DIGITIZATION AND SIGNAL PROCESSING 245 12.3.1 Digitizing images 245 12.3.2 Thresholding 246 12.3.3 Digital filters 248 12.3.3.1 Linear filters 249 12.3.3.2 Smoothing 249 12.3.3.3 Gaussian filters 251 12.3.3.4 Practical considerations 252 12.4 EDGE DETECTION 252 12.4.1 Identifying edge pixels 253 12.4.1.1 Gradient operators 253 12.4.1.2 Robert's operator 253 12.4.1.3 Sobel's operator 256 12.4.1.4 Laplacian operator 257 12.4.1.5 Successive refinement and Marr's primal sketch 258 12.4.2 Edge following 259 12.5 REGION DETECTION 260 12.5.1 Region growing 261 12.5.2 The problem of texture 261 12.5.3 Representing regions - quadtrees 262 12.5.4 Computational problems 263 12.6 RECONSTRUCTING OBJECTS 263 12.6.1 Inferring three-dimensional features 263 12.6.1.1 Problems with labelling 266 12.6.2 Using properties of regions 267 12.7 IDENTIFYING OBJECTS 269 12.7.1 Using bitmaps 269 12.7.2 Using summary statistics 270 12.7.3 Using outlines 271 12.7.4 Using paths 272 12.8 FACIAL AND BODY RECOGNITION 273 12.9 NEURAL NETWORKS FOR IMAGES 276 12.9.1 Convolutional neural networks 276 12.9.2 Autoencoders 277 Contents
xv 12.10 GENERATIVE ADVERSARIAL NETWORKS 279 12.10.1 Generated data 279 12.10.2 Diffusion models 280 12.10.3 Bottom-up and top-down processing 281 12.11 MULTIPLE IMAGES 281 12.11.1 Stereo vision 282 12.11.2 Moving pictures 284 12.12 SUMMARY 285 Chapter 13
Natural language understanding 289 13.1 OVERVIEW 289 13.2 WHAT IS NATURAL LANGUAGE UNDERSTANDING? 289 13.3 WHY DO WE NEED NATURAL LANGUAGE UNDERSTANDING? 290 13.4 WHY IS NATURAL LANGUAGE UNDERSTANDING DIFFICULT? 290 13.5 AN EARLY ATTEMPT AT NATURAL LANGUAGE UNDERSTANDING: SHRDLU 292 13.6 HOW DOES NATURAL LANGUAGE UNDERSTANDING WORK? 293 13.7 SYNTACTIC ANALYSIS 295 13.7.1 Grammars 296 13.7.2 An example: generating a grammar fragment 297 13.7.3 Transition networks 299 13.7.4 Context-sensitive grammars 302 13.7.5 Feature sets 303 13.7.6 Augmented transition networks 304 13.7.7 Taggers 304 13.8 SEMANTIC ANALYSIS 305 13.8.1 Semantic grammars 306 13.8.1.1 An example: a database query interpreter revisited 306 13.8.2 Case grammars 307 13.9 PRAGMATIC ANALYSIS 310 13.9.1 Speech acts 311 13.10 GRAMMAR-FREE APPROACHES 311 13.10.1 Template matching 311 13.10.2 Keyword matching 312 13.10.3 Predictive methods 312 13.10.4 Statistical methods 313 13.11 SUMMARY 314 xvi
Contents 13.12 SOLUTION TO SHRDLU PROBLEM 315 Chapter 14
Time Series and Sequential Data 317 14.1 OVERVIEW 317 14.2 GENERAL PROPERTIES 317 14.2.1 Kinds of temporal and sequential data 317 14.2.2 Looking through time 318 14.2.3 Processing temporal data 320 14.2.3.1 Windowing 320 14.2.3.2 Hidden state 321 14.2.3.3 Non-time domain transformations 321 14.3 PROBABILITY MODELS 322 14.3.1 Markov Model 323 14.3.2 Higher-order Markov Model 324 14.3.3 Hidden Markov Model 326 14.4 GRAMMAR AND PATTERN-BASED APPROACHES 327 14.4.1 Regular expressions 327 14.4.2 More complex grammars 328 14.5 NEURAL NETWORKS 329 14.5.1 Window-based methods 329 14.5.2 Recurrent Neural Networks 331 14.5.3 Long-term short-term memory networks 332 14.5.4 Transformer models 332 14.6 STATISTICAL AND NUMERICAL TECHNIQUES 332 14.6.1 Simple data cleaning techniques 333 14.6.2 Logarithmic transformations and exponential growth 334 14.6.3 ARMA models 335 14.6.4 Mixed statistics/ML models 336 14.7 MULTI-STAGE/SCALE 337 14.8 SUMMARY 339 Chapter 15
Planning and robotics 343 15.1 OVERVIEW 343 15.2 INTRODUCTION 343 15.2.1 Friend or foe? 343 15.2.2 Different kinds of robots 344 15.3 GLOBAL PLANNING 345 Contents
xvii 15.3.1 Planning actions - means-ends analysis 345 15.3.2 Planning routes - configuration spaces 348 15.4 LOCAL PLANNING 350 15.4.1 Local planning and obstacle avoidance 350 15.4.2 Finding out about the world 353 15.5 LIMBS, LEGS AND EYES 356 15.5.1 Limb control 356 15.5.2 Walking - on one, two or more legs 359 15.5.3 Active vision 361 15.6 PRACTICAL ROBOTICS 363 15.6.1 Controlling the environment 363 15.6.2 Safety and hierarchical control 364 15.7 SUMMARY 365 Chapter 16
Agents 369 16.1 OVERVIEW 369 16.2 SOFTWARE AGENTS 369 16.2.1 The rise of the agent 370 16.2.2 Triggering actions 371 16.2.3 Watching and learning 372 16.2.4 Searching for information 374 16.3 REINFORCEMENT LEARNING 376 16.3.1 Single step learning 376 16.3.2 Choices during learning 378 16.3.3 Intermittent rewards and credit assignment 379 16.4 COOPERATING AGENTS AND DISTRIBUTED AI 379 16.4.1 Blackboard architectures 380 16.4.2 Distributed control 382 16.5 LARGER COLLECTIVES 383 16.5.1 Emergent behaviour 383 16.5.2 Cellular automata 384 16.5.3 Artificial life 384 16.5.4 Swarm computing 385 16.5.5 Ensemble methods 386 16.6 SUMMARY 388 Chapter 17
Web scale reasoning 391 xviii
Contents 17.1 OVERVIEW 391 17.2 THE SEMANTIC WEB 391 17.2.1 Representing knowledge - RDF and triples 392 17.2.2 Ontologies 394 17.2.3 Asking questions - SPARQL 395 17.2.4 Talking about RDF - reification, named graphs and provenance 396 17.2.5 Linked data - connecting the Semantic Web 398 17.3 MINING THE WEB: SEARCH AND SEMANTICS 402 17.3.1 Search words and links 402 17.3.2 Explicit markup 403 17.3.3 External semantics 405 17.4 USING WEB DATA 408 17.4.1 Knowledge-rich applications 408 17.4.2 The surprising power of big data 409 17.5 THE HUMAN WEB 412 17.5.1 Recommender systems 412 17.5.2 Crowdsourcing and human computation 414 17.5.3 Social media as data 416 17.6 SUMMARY 417 Section IV Humans at the Heart Chapter 18
Expert and decision support systems 421 18.1 OVERVIEW 421 18.2 INTRODUCTION - EXPERTS IN THE LOOP 421 18.3 EXPERT SYSTEMS 422 18.3.1 Uses of expert systems 423 18.3.2 Architecture of an expert system 425 18.3.3 Explanation facility 425 18.3.4 Dialogue and UI component 427 18.3.5 Examples of four expert systems 428 18.3.5.1 Example 1: MYCIN 428 18.3.5.2 Example 2: PROSPECTOR 429 18.3.5.3 Example 3: DENDRAL 429 18.3.5.4 Example 4: XCON 430 18.3.6 Building an expert system 430 Contents
xix 18.3.7 Limitations of expert systems 431 18.4 KNOWLEDGE ACQUISITION 431 18.4.1 Knowledge elicitation 432 18.4.1.1 Unstructured interviews. 432 18.4.1.2 Structured interviews. 433 18.4.1.3 Focused discussions. 433 18.4.1.4 Role reversal. 433 18.4.1.5 Think-aloud. 433 18.4.2 Knowledge Representation 434 18.4.2.1 Expert system shells 434 18.4.2.2 High-level programming languages 434 18.4.2.3 Ontologies 434 18.4.2.4 Selecting a tool 435 18.5 EXPERTS AND MACHINE LEARNING 436 18.5.1 Knowledge elicitation for ML 438 18.5.1.1 Acquiring tacit knowledge 438 18.5.1.2 Feature selection 438 18.5.1.3 Expert labelling 438 18.5.1.4 Iteration and interaction 439 18.5.2 Algorithmic choice, validation and explanation 439 18.6 DECISION SUPPORT SYSTEMS. 441 18.6.1 Visualisation 442 18.6.2 Data management and analysis 443 18.6.3 Visual Analytics 444 18.6.3.1 Visualisation in VA 445 18.6.3.2 Data management and analysis for VA 446 18.7 STEPPING BACK 447 18.7.1 Who is it about? 447 18.7.2 Why are we doing it? 447 18.7.3 Wider context 449 18.7.4 Cost-benefit balance 450 18.8 SUMMARY 451 Chapter 19
AI working with and for humans 455 19.1 OVERVIEW 455 19.2 INTRODUCTION 455 xx
Contents 19.3 LEVELS AND TYPES OF HUMAN CONTACT 457 19.3.1 Social scale 457 19.3.2 Visibility and embodiment 458 19.3.3 Intentionality 458 19.3.4 Who is in control 459 19.3.5 Levels of automation 460 19.4 ON A DEVICE - INTELLIGENT USER INTERFACES 462 19.4.1 Low-level input 462 19.4.2 Conversational user interfaces 462 19.4.3 Predicting what next 464 19.4.4 Finding and managing information 464 19.4.5 Helping with tasks 466 19.4.6 Adaptation and personalisation 467 19.4.7 Going small 468 19.5 IN THE WORLD - SMART ENVIRONMENTS 469 19.5.1 Configuration 470 19.5.2 Sensor fusion 470 19.5.3 Context and activity 472 19.5.4 Designing for uncertainty in sensor-rich smart environments 473 19.5.5 Dealing with hiddenness - a central heating controller 474 19.6 DESIGNING FOR AI-HUMAN INTERACTION 476 19.6.1 Appropriate intelligence - soft failure 476 19.6.2 Feedback - error detection and repair 477 19.6.3 Decisions and suggestions 478 19.6.4 Case study: OnCue - appropriate intelligence by design 480 19.7 TOWARDS HUMAN-MACHINE SYNERGY 481 19.7.1 Tuning AI algorithms for interaction 481 19.7.2 Tuning interaction for AI 482 19.8 SUMMARY 483 Chapter 20
When things go wrong 487 20.1 OVERVIEW 487 20.2 INTRODUCTION 487 20.3 WRONG ON PURPOSE? 488 20.3.1 Intentional bad use 488 20.3.2 Unintentional problems 489 Contents
xxi 20.4 GENERAL STRATEGIES 490 20.4.1 Transparency and trust 490 20.4.2 Algorithmic accountability 491 20.4.3 Levels of opacity 492 20.5 SOURCES OF ALGORITHMIC BIAS 493 20.5.1 What is bias? 493 20.5.2 Stages in machine learning 494 20.5.3 Bias in the training data 494 20.5.4 Bias in the objective function 497 20.5.5 Bias in the accurate result 498 20.5.6 Proxy measures 499 20.5.7 Input feature choice 500 20.5.8 Bias and human reasoning 500 20.5.9 Avoiding bias 501 20.6 PRIVACY 502 20.6.1 Anonymisation 502 20.6.2 Obfuscation 503 20.6.3 Aggregation 503 20.6.4 Adversarial privacy 504 20.6.5 Federated learning 504 20.7 COMMUNICATION, INFORMATION AND MISINFORMATION 505 20.7.1 Social media 505 20.7.2 Deliberate misinformation 506 20.7.3 Filter bubbles 507 20.7.4 Poor information 507 20.8 SUMMARY 508 Chapter 21
Explainable AI 513 21.1 OVERVIEW 513 21.2 INTRODUCTION 513 21.2.1 Why we need explainable AI 514 21.2.2 Is explainable AI possible? 515 21.3 AN EXAMPLE - QUERY-BY-BROWSING 515 21.3.1 The problem 516 21.3.2 A solution 516 21.3.3 How it works 517 xxii
Contents 21.4 HUMAN EXPLANATION - SUFFICIENT REASON 518 21.5 LOCAL AND GLOBAL EXPLANATIONS 519 21.5.1 Decision trees - easier explanations 519 21.5.2 Black-box - sensitivity and perturbations 520 21.6 HEURISTICS FOR EXPLANATION 522 21.6.1 White-box techniques 523 21.6.2 Black-box techniques 524 21.6.3 Grey-box techniques 526 21.7 SUMMARY 529 Chapter 22
Models of the mind - Human-Like Computing 533 22.1 OVERVIEW 533 22.2 INTRODUCTION 533 22.3 WHAT IS THE HUMAN MIND? 534 22.4 RATIONALITY 535 22.4.1 ACTR 536 22.4.2 SOAR 537 22.5 SUBCONSCIOUS AND INTUITION 538 22.5.1 Heuristics and imagination 539 22.5.2 Attention, salience and boredom 539 22.5.3 Rapid serial switching 540 22.5.4 Disambiguation 541 22.5.5 Boredom 542 22.5.6 Dreaming 542 22.6 EMOTION 543 22.6.1 Empathy and theory of mind 544 22.6.2 Regret 546 22.6.3 Feeling 548 22.7 SUMMARY 549 Chapter 23
Philosophical, ethical and social issues 553 23.1 OVERVIEW 553 23.2 THE LIMITS OF AI 553 23.2.1 Intelligent machines or engineering tools? 554 23.2.2 What is intelligence? 554 23.2.3 Computational argument vs. Searle's Chinese Room 555 23.3 CREATIVITY 556 Contents
xxiii 23.3.1 The creative process 557 23.3.2 Generate and filter 557 23.3.3 The critical edge 558 23.3.4 Impact on creative professionals 558 23.4 CONSCIOUSNESS 559 23.4.1 Defining consciousness 559 23.4.2 Dualism and materialism 560 23.4.3 The hard problem of consciousness 561 23.5 MORALITY OF THE ARTIFICIAL 561 23.5.1 Morally neutral 561 23.5.2 Who is responsible? 563 23.5.3 Life or death decisions 563 23.5.4 The special ethics of AI 565 23.6 SOCIETY AND WORK 565 23.6.1 Humanising AI or dehumanising people 566 23.6.2 Top-down: algorithms grading students 566 23.6.3 Bottom-up: when AI ruled France 568 23.6.4 AI and work 569 23.7 MONEY AND POWER 570 23.7.1 Finance and markets 571 23.7.2 Advertising and runaway AI 572 23.7.3 Big AI: the environment and social impact 573 23.8 SUMMARY 575 Section V Looking Forward Chapter 24
Epilogue: what next? 581 24.1 OVERVIEW 581 24.2 CRYSTAL BALL 581 24.3 WHAT NEXT: AI TECHNOLOGY 582 24.3.1 Bigger and Better 582 24.3.2 Smaller and Smarter 582 24.3.3 Mix and Match 584 24.3.4 Partners with People 584 24.4 WHAT NEXT: AI IN THE WORLD 585 24.4.1 Friend or Foe? 585 24.4.2 Boom then Bust 586 xxiv
Contents 24.4.3 Everywhere and nowhere 586 24.5 SUMMARY - FROM HYPE TO HOPE 586 Bibliography 589 Index