AI for Smarties is a three-part book. The first section (Part A) is an overview of the history of Artificial Intelligence, with an emphasis on the differences between “Old AI” based on logic programming and “New AI” (or “Modern AI”) based on machine learning. The second part (Part B) is a deep dive into the technical parts of the algorithms within the training and execution of these "neural nets" for Classifiers and Large Language Models. The final part (Part C) is an exploration of current "uses and abuses" of AI technology.
New AI is based on a relatively simple concept: Train a big and complicated math box to generate “close to correct answers” for a large enough training set - then use the same math box for new inputs. The design of the math box is a large multi-stage array of processing elements, and at every stage, the processing elements perform three operations – “a linear transformation on vectors to produce a new vector” followed by “adding a constant vector to the result” followed by “performing a chosen simple non-linear function.”
Chapter 4 describes the overall model. In the multi-stage array, the computation performed at each stage is NL(W * X + B).
Chapters 7 through 9 explain many of the mathematical details of the neural network computation, and chapters 11 and 12 explain the mathematics of the training process.
Chapter 2 sets up the context by explaining two examples. The first example uses a Large Language Model to answer a yes-or-no question (is an email message spam?). The second example is a machine translation problem (French poetry to English). We see that the model works reasonably well and produces useful output, but there are some flaws in the output as well. The errors are often a combination of training data issues (incorrect or missing training) plus the inherent statistical properties of the neural network process.
Modern AI is amazingly powerful technology. There are problems, but he warns that we should not dismiss its capabilities because of myths or partial information about AI failures. This is the main message of Chapter 1.
Almost everything in an AI neural network system is a “learned” parameter. Billions of parameters in huge computational matrices are "learned” through the persistent processing of training data. No one “designs” any part of the computation by hand. No one performs careful analysis of a problem domain. Meyer says Modern AI always uses Machine Learning. He refers to this practices as “the triumph of empiricism” – because by using machine learning, the result will be a better overall model than any manual programming. This is the main theme of Chapter 3.
Meyer cites Rick Sutton to explain why human-crafted models are not used in Modern AI: “Machines learn better if we do not teach them.” It is a hard lesson for humans.
Section 5.7 explains why the shift happened. Logic-based programming worked fine on small lab examples, but it was difficult to scale. Statistical approaches started to be applied in the 2010s to developing new strategies for games like Go.
It is necessary to include some non-linear functions in neural nets. Linear functions, even with millions or billions of dimensions, is inadequate for “matching values in the training set.” Modern AI approaches use one of a small number of very simple non-linear functions in each stage of the neural nets. (There are some simple mathematical reasons for this. Linear functions can “expand, shrink, reflect, and rotate” but we also need non-linear functions that can perform thresholding and non-linear amplification.)
The most common non-linear functions are ReLU (linear on a subrange, zero elsewhere) and three different variations of exponential functions (positive or negative exponential functions). Each is used for different kinds of filtering. See section 9.3 for details.
“Training” is the process to fill in all of the billions of “parameters” in W and B in the neural network. It is an iterative process. Training uses small batches of examples selected from a training set – run a batch, compare the outputs to the “correct” outputs, adjust the parameters. The algorithm to adjust the parameters is based on a standard multivariate analysis iteration technique: gradient search. The parameters are moved a small step in a direction that might “decrease” the error (or if it doesn’t, move a small step the other way).
The computational complexity to determine each tuning step is quite large, and most training systems take a shortcut – they only compute the “gradient” for a random small subset of dimensions in each training cycle. This seems to work, although the convergence to a minimum error might take many more steps. (See Meyer’s reference to “stochastic gradient descent” in section 10.3.)
Meyer outlines some of the techniques for converting text inputs to vectors of tokens in section 11.3. Some tokens are words, some are “word stems,” some are prefixes and suffixes. AI systems create a large semantic model to record the “similarity” between tokens. The entire conversion model (the choices of tokens and the semantic model) are created by machine learning by a training process using enormous bodies of text.
Chapter 11 gives a cursory introduction to “attention” – which is a concept used to handle language complexity and ambiguity using a simple statistical approach.
In the third part (Part C) of the book, Bertrand explores the “good and bad uses” of AI. Chapter 12 is a list of constructive uses of AI as a tool to support text authoring, pattern recognition, idea generation, and software development. But Meyer also gives a short list of “characteristics of tasks” that make the tasks not suitable for AI.
These are identified as “wrong tasks” for AI.
Chapter 13 covers a broader set of AI Risks – hallucination, data poisoning, AI slop, intellectual property violations, and prompt injection. Meyer also explains two important rules:
It is important to use your “critical mindset” to look for potential problems.
Chapters 14 and 15 are related to education, and in particular the proper role for AI tools to assist learners and instructors.
Can LLM-based technology be used for self-study? Can independent learners use it as an automated “educational assistant?” Many people have used LLMs to generate short tutorials and to engage in the sort of interactive discussion that they might have with a human tutor. In Chapter 14, Meyer starts with a humble assertion – no one has published any convincing statistically verified studies that show a positive impact on learning performance. But he then proceeds to offer some practical guidance for individuals who might use LLMs to help explore topics.
Meyer thinks that for individuals engaging in focused exploratory learning, LLMs can excel as “a mentor and sidekick.” An independent learner can ask questions to the LLM, and the learner can also ask the LLM to create examples and exercises. Meyer suggests learning prompts like this:
Instructors/teachers might also make use of LLMs to generate examples and exercises, or even customized tutorials.
Chapter 15 is a long essay on the pitfalls of students using AI in school courses. Meyer is a lot more negative about student use of AI in conventional classroom learning. Meyer’s key point: “The injunctions to reinvent schools through AI are based on faith, not facts.”
It is easy for students to fall into several traps. “Cheating” on exams and homework is being reported everywhere, and it is worst among high school and college students. Take-home exams are now impossible, and it is impractical to use homework for assessing students.
Even non-graded homework is tricky. Students think they can use AI to become more efficient at performing learning activities. But learning shouldn’t be free of mental struggles. Meyer notes, “Education at the K-12 and early university levels teaches topics, but it most importantly teaches thinking, including learning.” When students use AI, it interferes with the learning process. When students use AI to skip some of the learning steps for a new topic, they never master the topic in depth, and they may quickly forget what they have learned.
Chapter 16 presents Meyer’s observations about the use of AI to develop software applications.
Meyer has a 3-level model of “application criticality”: A (Acute) – mission-critical systems; B (Business) – normal business enterprise software; C (Casual) – smaller business and personal applications. Category A applications need to be written by people, because we can’t trust the correctness of AI-generated applications code. Category B applications may benefit from having humans working in tandem with AI-based tools, to improve productivity and quality. For Category C applications, AI-based development will “make its strongest mark.”
In particular, in Categories A and B, software development requires a lot more than just writing code. Meyer cites a number of studies that report on how poorly AI-generated application code can be in terms of quality (absence of defects) and security vulnerabilities. And if no person understands the code, the software will be more difficult to extend and change over time.
Meyer hopes that we will use AI tools in the requirements process to build up solid application requirements as well as “contracts” that can be checked with tests and formal verification.
The final chapter, Chapter 17, is Meyer’s career advice. How do we stay employed when AI may cut back jobs in so many fields? Meyer thinks we should “learn the AI tools in our field.” Be prepared to be an “AI dispatcher” or “AI checker.” (Dispatcher – decide which subtasks should be done by a human, which by AI. Checker – evaluate AI’s output and look for potential mistakes.) Meyer also thinks that knowledge/experience in computer science and software engineering will continue to be valuable, because sophisticated software like AI applications will still require our skills.
On the whole, Bertrand Meyers’s book is excellent and educational. The middle chapters are challenging, because they are explaining the technical details of the computational neural networks. Anyone who has studied “linear algebra” will see a lot of familiar concepts. The chapters on training and embedding are not as clear and simple, but they are intended to take some of the mystery out of the way a new neural network is trained.
The early chapters and examples are designed to provide a good overview of the AI computation process – even if you can’t read the rest of the book. I think that Chapters 1 through 6 can be a useful introduction to managers who want to understand some of the moving parts in an AI system.
Finally, Chapters 12 through 17 on the “use” of AI will be tricky for many readers to understand. The writing is excellent. But the concepts are complex. AI is being used in many different contexts, and Meyer is writing very carefully to explain when we can see that there are well-understood benefits and risks.
Meyer is ready to give advice based on his personal views and experiences – and labels it clearly. He reports on some of the industry hype as well (quotes from executives in the Big AI business).
I think the best advice in the book is the combination of Chapters 14 and 15 about “human” education… he explains where AI can be a “sidekick” and he warns where AI can actually hinder learning. I think that many people could benefit from reading a shorter essay summarizing Meyer’s main points in these two chapters.
