Peter Norvig: Artificial Intelligence: A Modern Approach | Lex Fridman Podcast #42

Peter Norvig, director of research at Google, talks with Lex Fridman about how AI has evolved since his textbook Artificial Intelligence: A Modern Approach became the field's standard. They discuss what the book got right, what changed, and how AI education shapes the next generation of researchers.
Chapters
The following is a conversation with Peter Norvig. He's the Director of Research at Google and the co author with Stuart Russell of the book Artificial Intelligence A Modern Approach that educated and inspired a whole generation of researchers, including myself, to get into the field of artificial intelligence. This is the Artificial Intelligence podcast. If you enjoy it, subscribe on YouTube, give it five stars on iTunes, subscribe support on Patreon or simply connect with me on Twitter lexfriedman, spelled F R I D M A N. And now here's my conversation with Peter Norvig.
Most researchers in the AI community, including myself, own all three editions, red, Green and Blue, of the Artificial Intelligence A Modern Approach. It's a field defining textbook as many people are aware that you wrote with Stuart Russell. How has the book changed and how have you changed in relation to it from the first edition to the second to the third and now fourth edition as you work on it?
Yeah, so it's been a lot of years, a lot of changes. One of the things changing from the first to maybe the second or third was just the rise of computing power. Right. So I think in the first edition we said here's predicate logic, but that only goes so far because pretty soon you have millions of short little predicate expressions and they couldn't possibly fit in memory. So we're going to use first order logic that's more concise. And then we quickly realized, oh, predicate logic is pretty nice because there are really fast sat solvers and other things. And look, there's only millions of expressions and that fits easily into memory or maybe even billions fit into memory now. So that was a change of the type of technology we needed. Just because the hardware expanded even to.
The second edition, the resource constraints were loosened significantly from the second and that was early 2000s, second edition.
Right. So 95 was the first and then 2000, 2001 or so, and then moving on from there. I think we're starting to see that again with the GPUs and then more specific type of machinery like the TPUs and using custom ASICs and so on for deep learning. So we're seeing another advance in terms of the hardware then. I think another thing that we especially notice this time around is in all three of the first editions we kind of said, well, we're going to find AI as maximizing expected utility and you tell me your utility function. And now we've got 27 chapters worth of cool techniques for how to optimize that. I think in this edition we're saying more you know what, maybe that optimization part is the easy part, and the hard part is deciding what is my utility function, what do I want? And if I'm a collection of agents or a society, what do we want as a whole?
So you touch that topic in this edition, you get a little bit more into utility. Yeah, that's really interesting. On a technical level, we're almost pushing the philosophical.
I guess it is philosophical, right? So we've always had a philosophy chapter, which I was glad that we were supporting. And now it's less kind of the Chinese room type argument and more of these ethical and societal type issues. So we get into issues of fairness and bias and just the issue of aggregating utilities.
So how do you encode human values into a utility function? Is this something that you can do purely through data in a learned way, or is there some systematic. Obviously there's no good answers yet. There's just beginnings to this, to even opening the doors easily.
So there is no one answer. Yes, there are techniques to try to learn that. So we talk about inverse reinforcement learning, right? So reinforcement learning, you take some actions, you get some rewards, and you figure out what actions you should take. And inverse reinforcement learning, you observe somebody taking actions and you figure out, well, this must be what they were trying to do. If they did this action, it must be because they wanted it. Of course, there's restrictions to that. So lots of people take actions that are self destructive or they're suboptimal in certain ways. So you don't want to learn that. You want to somehow learn the perfect actions rather than the ones they actually take. So. So that's a challenge for that field. Then another big part of it is just kind of theoretical of saying, what can we accomplish? And so you look at like this work on the programs to predict recidivism and decide who should get parole or who should get bail or whatever. And how are you going to evaluate that? And one of the big issues is fairness across protected classes. Protected classes being things like sex and race and so on. And so two things you want is you want to say, well, if I get a score of, say 6 out of 10, then I want that to mean the same whether, no matter what race I'm on.
Yes, right.
So I want to have a 60% chance of reoccurring regardless. One of the makers of a commercial program to do that says, that's what we're trying to optimize. And look, we achieved that, we've reached that kind of balance. And then on the other Side, you also want to say, well, if it makes mistakes, I want that to affect both sides of the protected class equally. And it turns out they don't do that. Right. So they're twice as likely to make a mistake that would harm a black person over a white person. So that seems unfair. So you'd like to say, well, I want to achieve both those goals. And then it turns out you do the analysis and it's theoretically impossible to achieve both those goals, so you have to trade them off one against the other. So that analysis is really helpful to know what you can aim for and how much you can get. You can't have everything. But the analysis certainly can't tell you where should we make that trade off point.
But nevertheless, then we can, as humans, deliberate where that trade off should be.
Yeah. So at least we now we're arguing in an informed way. We're not asking for something impossible. We're saying here's where we are and here's what we aim for. And this strategy is better than that strategy.
So that's, I would argue, is a really powerful and really important first step, but it's a doable one, sort of removing undesirable degrees of bias in systems in terms of protected classes. And then there's something, I listened to your commencement speech or there's some fuzzier things like you mentioned, Angry Birds. Do you want to create systems that feed the dopamine enjoyment, that feed, that optimize for you returning to the system, enjoying the moment of playing the game, of getting likes or whatever, this kind of thing or some kind of long term improvement? Are you even thinking about that? That's really going to the philosophical area.
I think that's a really important issue too. Certainly thinking about that. I don't think about that as an AI issue as much. But, but as you say, the point is we've built this society and this infrastructure where we say we have a marketplace for attention. And we've decided as a society that we like things that are free. And so we want all apps on our phone to be free. And that means they're all competing for your attention. And then eventually they make some money some way through ads or in game sales or whatever. But they can only win by defeating all the other apps, by stealing your attention.
And.
We build a marketplace where it seems like they're working against you rather than working with you. And I'd like to find a way where we can change the playing field so you feel more like, well, these things are on my side. Yes, they're letting me have some fun in the short term, but they're also helping me in the long term rather than competing against me.
And those aren't necessarily conflicting objectives, they're just the incentives. The direct current incentives, as we try to figure out this whole new world, seem to be on the easier part of that, which is feeding the dopamine, the rush.
Right.
So maybe take a quick step back at the beginning of the artificial intelligence, the modern approach book of writing. So, so here you are in the 90s when you first sat down with Stuart to write the book to cover an entire field, which is one of the only books that successfully done that for AI. And actually in a lot of other computer science fields it's a huge undertaking. So it must have been quite daunting. What was that process like? Did you envision that you would be trying to cover the entire field? Was there a systematic approach to it that was more step by step? How did it feel?
So I guess it came about. I'd go to lunch with the other AI faculty at Berkeley and we'd say, the field is changing. Seems like the current books are a little bit behind. Nobody's come out with a new book recently. We should do that. And everybody said, yeah, yeah, that's a great thing to do. And we never did anything. And then I ended up heading off to industry. I went to Sun Lab. So I thought, well, that's the end of the year, my possible academic publishing career. But I met Stuart again at a conference like a year later and said, you know that book we were always talking about, you guys must be half done with it by now, right? And he said, well, we keep talking, we never do anything. So I said, well, you know, we should do it. And I think the reason is that we all felt it was a time where the field was changing and that was in two ways. So the good old fashioned AI was based primarily on Boolean logic, and you had a few tricks to deal with uncertainty. And it was based primarily on knowledge engineering. That the way you got something done is you went out, you interviewed an expert and you wrote down by hand everything they knew. And we saw in 95 that the field was changing in, in two ways. One, we're moving more towards probability rather than Boolean logic, and we were moving more towards machine learning rather than knowledge engineering. And the other books hadn't caught that wave. They were still more in the old school, although certainly they had part of that on the way. But we said, if we start now completely taking that point of view we can have a different kind of book. And we were able to put that together.
And what was literally the process, if you remember, did you start writing a chapter? Did you outline.
Yeah, I guess we did an outline and then we sort of assigned chapters to each person. At the time I had moved to Boston and Stuart was in Berkeley. So basically we did it over the Internet. And you know, that wasn't the same as doing it today. It meant, you know, dial up lines and telnetting in and you know, you telnet it into one shell and you type cat file name and you hoped it was captured at the other end.
And certainly you're not sending images and figures back and forth. Right, right.
That didn't work.
But did you anticipate where the field would go from that day? From the 90s, did you see the growth into learning based methods, into data driven methods that followed in the future decades?
We certainly thought that learning was important. I guess we missed it as being as important as it should as it is today. We missed this idea of big data. We missed that the idea of deep learning hadn't been invented yet. We could have taken the book from a complete machine learning point of view right from the start. We chose to do it more from a point of view of we're going to first develop different types of representations and we're going to talk about different types of environments, of is it fully observable or partially observable and is it deterministic or stochastic and so on. And we made it more complex along those axes rather than focusing on the machine learning axis first.
Do you think there's some sense in which the deep learning craze is extremely successful for a particular set of problems and eventually it's going to, in the general case, hit challenges. So in terms of the difference between perception systems and robots that have to act in the world, do you think we're going to return to AI modern approach, type breadth in addition 5 and 6 in future decades, do you think deep learning will take its place as a chapter in this bigger view of AI?
Yeah, I think we don't know yet how it's all going to play out. So in the new edition we have a chapter on deep learning. We got Ian Goodfellow to be the guest author for that chapter. So he said he could condense his whole deep learning book into one chapter. I think he did a great job. We were also encouraged that he, we gave him the old neural net chapter and said have fun with it, modernize that. And he Said, you know, half of that was okay, that certainly there's lots of new things that have been developed, but some of the core was still the same. So I think we'll gain a better understanding of what you can do there. I think we'll need to incorporate all the things we can do with the other technologies.
Right.
So deep learning started out convolutional networks and very close to perception and has since moved to be able to do more with actions and some degree of longer term planning. But we need to do a better job with representation and reasoning and one shot learning and so on. And I think we don't know yet how that's going to play out.
So do you think looking at the some success, but certainly eventual demise, a partial demise of experts to symbolic Systems in the 80s, do you think there is kernels of wisdom in the work that was done there with logic and reasoning and so on that will rise again in your view?
So certainly I think the idea of representation and reasoning is crucial that sometimes you just don't have enough data about the world to learn de novo. So you've got to have some idea of representation, whether that was programmed in or told or whatever, and then be able to take steps of reasoning. I think the problem with the good old fashioned AI was one, we tried to base everything on these symbols that were atomic. And that's great if you're like trying to define the properties of a triangle because they have necessary and sufficient conditions, but things in the real world don't. The real world is messy and doesn't have sharp edges and atomic symbols do. So that was a poor match. And then the other aspect was that the reasoning was universal and applied anywhere, which in some sense is good, but it also means there's no guidance as to where to apply. And so you started getting these paradoxes like, well, if I have a mountain and I remove one grain of sand, then it's still a mountain, but if I do that repeatedly at some point, it's not right. And with logic there's nothing to stop you from applying things repeatedly. But maybe with something like deep learning, and I don't really know what the right name for it is, we could separate out those ideas. So one, we could say mountain isn't just an atomic notion, it's some sort of something like word embedding that has a more complex representation. Yeah, and secondly, we could somehow learn, yeah, there's this rule that you can remove one grain of sand, you can do that a bunch of times, but you can't do it a near infinite amount of times. But on the other hand, when you're doing induction on the integer, sure, then it's fine to do it an infinite number of times. And if we could, somehow we have to learn when these strategies are applicable rather than having the strategies be completely neutral and available everywhere.
Anytime you use neural networks, anytime you learn from data, form representation from data in an automated way, it's not very explainable as to, or it's not introspective to us humans in terms of how this neural network sees the world, where why does it succeed so brilliantly in so many cases and fail so miserably in surprising ways in small. So what do you think is the future? There can simply more data, better data, more organized data solve that problem, or is there elements of symbolic systems that need to be brought in which are a little bit more explainable?
Yeah, so I prefer to talk about trust and validation and verification rather than just about explainability. And then I think explanations are one tool that you use towards those goals. And I think it is an important issue that we don't want to use these systems unless we trust them. And we want to understand where they work and where they don't work. And an explanation can be part of that. So I apply for a loan and I get denied. I want some explanation of why.
In.
Europe we have the GDPR that says you're required to be able to get that. But on the other hand, an explanation alone is not enough. Right. So we are used to dealing with people and with organizations and corporations and so on, and they can give you an explanation, and you have no guarantee that that explanation relates to reality. Right. So the bank can tell me, well, you didn't get the loan because you didn't have enough collateral, and that may be true, or it may be true that they just didn't like my religion or something else. I can't tell from the explanation, and that's true, whether the decision was made by a computer or by a person. So I want more. I do want to have the explanations and I want to be able to have a conversation to go back and forth and said, well, you gave this explanation, but what about this? And what would have happened if this had happened and what would I need to change that? So I think a conversation is a better way to think about it than just an explanation as a single output. And I think we need testing of various kinds. Right. So in order to know, was the decision really based on my collateral or was it based on my religion or skin Color or whatever. I can't tell if I'm only looking at my case, but if I look across all the cases, then I can detect the pattern. So you want to have that kind of capability. You want to have these adversarial testing. So we thought we were doing pretty good at object recognition in images. We said, look, we're at sort of pretty close to human level performance on imagenet and so on. And then you start seeing these adversarial images and you say, wait a minute, that part is nothing like human performance.
You can mess with it really easily.
You can mess with it really easily. Right, right. And yeah, you could do that to humans too. Right.
In a different way perhaps.
Right. Humans don't know what color the dress was.
Right.
And so they're vulnerable to certain attacks that are different than the attacks on the machines. But the attacks on the machines are so striking, they really change the way you think about what we've done. Right. And the way I think about it is, I think part of the problem is we're seduced by our low dimensional metaphors. Right? Yeah, I like that phrase. You look in a textbook and you say, okay, now we've mapped out the space and cat is here and dog is here and maybe there's a tiny little spot in the middle where you can't tell the difference. But mostly we've got it all covered. And if you believe that metaphor, then you say, well, we're nearly there and there's only going to be a couple adversarial images. But I think that's the wrong metaphor. And what you should really say is it's not a 2D flat space that we've got mostly covered. It's a million dimension space. And cat is this string that goes out in this crazy bath. And if you step a little bit off the path in any direction, you're in nowhere's land and you don't know what's going to happen. And so I think that's where we are. And now we've got to deal with that. So it wasn't so much an explanation, but it was an understanding of what the models are and what they're doing. And now we can start exploring how do you fix that.
Yeah. Validating the robustness of the system, so on. But take it back to this word trust. Do you think we're a little too hard on our robots in terms of the standards we apply? So you know of. There's a dance, there's a, there's a, there's a dance in Non verbal and verbal communication between humans. You know, if we apply the same kind of standard in terms of humans, you know, we trust each other pretty quickly. You know, you and I haven't met before and there's some degree of trust, right. That nothing's going to go crazy. Wrong. And yet to AI, when we look at AI systems where we seem to approach through skepticism, always, always. And it's like they have to prove through a lot of hard work that they're even worthy of even inkling of our trust. What do you think about that? How do we break that barrier, close that gap?
I think that's right. I think that's a big issue. Just listening. My friend Mark Moffat is a naturalist and he says the most amazing thing about humans is that you can walk into a coffee shop or a busy street in a and there's lots of people around you that you've never met before and you don't kill each other. Yeah. He says chimpanzees cannot do that.
Yeah, right, right.
If a chimpanzee's in a situation where here's some that aren't from my tribe, bad things happen, especially in a coffee shop.
There's delicious food around, you never know.
Yeah, yeah. But we humans have figured that out. Right. And you know, for the most part, for the most part we still go to war, we still do terrible things, but for the most part we've learned to trust each other and live together. So that's going to be important for our AI systems as well. And also, I think a lot of the emphasis is on AI, but in many cases AI is part of the technology, but isn't really the main thing. So a lot of what we've seen is, is more due to communications technology than AI technology. Yeah, you want to make these good decisions, but the reason we're able to have any kind of system at all is we've got the communication so that we're collecting the data and so that we can reach lots of people around the world. I think that's a bigger change that we're dealing with.
Speaking of reaching a lot of people around the world on the side of education, you've one of the many things in terms of education you've done. You taught the Intro to Artificial Intelligence course that signed up 100,000, 160,000 students is one of the first successful example of a massive. Of a mooc massive open online course. What did you learn from that experience? What do you think is the future of MOOCs of education online?
Yeah, it was A great fun doing it, particularly being right at the start, just because it was exciting and new. But it also meant that we had less competition. One of the things you hear about, well, the problem with MOOCs is the completion rates are so low, so it must be a failure. And I got to admit, I'm a prime contributor. I probably started 50 different courses that I haven't finished, but I got exactly what I wanted out of them because I had never intended to finish them. I just wanted to dabble in a little bit, either to see the topic matter or just to see the pedagogy of how are they doing this class. So I guess the main thing I learned is when I came in, I thought the challenge was information, saying if I'm just take the stuff I want you to know and I'm very clear and explain it well, then my job is done and good things are going to happen. And then in doing the course, I learned, well, yeah, you got to have the information, but really the motivation is the most important thing, that if students don't stick with it, it doesn't matter how good the content is. And I think being one of the first classes, we were helped by sort of exterior motivation. So we tried to do a good job of making it enticing and setting up ways for the community to work with each other to make it more motivating. But really a lot of it was, hey, this is a new thing, and I'm really excited to be part of a new thing. And so the students brought their own motivation. And so I think this is great because there's lots of people around the world who have never had this before. You know, would never have the opportunity to go to Stanford and take a class or go to MIT or go to one of the other schools. But now we can bring that to them. And if they bring their own motivation, they can be successful in a way they couldn't before. But that's really just the top tier of people that are ready to do that. The rest of the people just don't see or don't have the motivation and don't see how if they push through and were able to do it, what advantage that would get them. So I think we got a long way to go before we're able to do that. And I think it'll be some of it is based on technology, but more of it's based on the idea of community. You got to actually get people together. Some of the getting together can be done online. I think some of it really has to be done in person in order to build that type of community and trust.
You know, there's an intentional mechanism that we've developed a short attention span, especially younger people, because sort of shorter and shorter videos online, there's a. Whatever the. The way the brain is developing now with people that have grown up with the Internet, they have quite a short attention span. So. And I would say I had the same when I was growing up too, probably for different reasons. So I probably wouldn't have learn as much as I have if I wasn't forced to sit in a physical classroom, sort of bored, sometimes falling asleep, but sort of forcing myself through that process to sometimes extremely difficult computer science courses. What's the difference, in your view, between in person education experience, which you first of all yourself had and you yourself taught, and online education? And how do we close that gap, if it's even possible?
Yeah, so I think there's two issues. One is whether it's in person or online. So it's sort of the physical location, and then the other is kind of the affiliation. Right. So you stuck with it in part because you were in the classroom and you saw everybody else was suffering the same way you were, but also because you were enrolled, you had paid tuition, sort of everybody was expecting you to stick with it.
Society, parents, peers.
And so those are two separate things. I mean, you could certainly imagine I pay a huge amount of tuition and everybody signed up and says, yes, you're doing this, but then I'm in my room and my classmates are in different rooms. Right. We could have things set up that way. So it's not just the online versus offline. I think what's more important is the commitment that you've made. And certainly it is important to have that kind of informal. You know, I meet people outside of class, we talk together because we're all in it together. I think that's really important both in keeping your motivation and also that's where some of the most important learning goes on. So you want to have that. Maybe especially now we start getting into higher bandwidths and augmented reality and virtual reality. You might be able to get that without being in the same physical place.
Do you think it's possible we'll see a course at Stanford, for example, that for students, enrolled students is only online in the near future, where literally it's part of the curriculum and there is no.
Yeah, so you're starting to see that. I know Georgia Tech has a master's that's done that way.
Oftentimes it's sort of they're creeping in in terms of a master's program or sort of further education, considering the constraints of students and so on. But I mean, literally, is it possible that we, you know, Stanford, mit, Berkeley, all these places go online only in, in the next few decades?
Yeah, probably not. Because, you know, they've got a big commitment to a physical campus.
Sure.
There's a momentum that's both financial and cultural.
Right. And then there are certain things that just hard to do virtually. Right. So, you know, we're in a field where if you have your own computer and your own paper and so on, you can do the work anywhere. But if you're in a biology lab or something, you know, you don't have all the right stuff at home.
Right. So our field programming, you've also done a lot of, you've done a lot of programming yourself. In 2001, you wrote a great article about programming called Teach yourself programming in 10 years. Sort of response to all the books that say teach yourself programming in 21 days. So if you were giving advice to someone getting into programming today, this is a few years since you've written that article. What's the best way to undertake that journey?
I think there's lots of different ways and I think programming means more things now. And I guess when I wrote that article, I was thinking more about becoming a professional software engineer. And I thought that's sort of a career, long field of study. But I think there's lots of things now that people can do where programming is a part of solving what they want to solve without achieving that professional level status. So I'm not going to be going and writing a million lines of code. But I'm a biologist or a physicist or something, or even a historian, and I've got some data and I want to ask a question of that data. I think for that you don't need 10 years. So there are many shortcuts to being able to answer those kinds of questions. You see today a lot of emphasis on learning to code, teaching kids how to code. I think that's great, but I wish they would change the message a little bit. I think code isn't the main thing. I don't really care if you know the syntax of JavaScript or if you can connect these blocks together in this visual language. But what I do care about is that you can analyze a problem, you can think of a solution you can carry out, make a model, run that model, test the model, see the results, verify that they're reasonable, ask questions and answer them. So it's more modeling and problem solving, and you use coding in order to do that. But it's not just learning coding for.
Its own sake that's really interesting. So it's actually almost, in many cases, it's learning to work with data, to extract something useful out of data. So when you say problem solving, you really mean taking some kind of, maybe collecting some kind of data set, cleaning it up and saying something interesting about it, which is useful in all kinds of domains and.










