Percy Liang: Stanford University Professor, Technologist, and Researcher in AI


I guess today's Percy Lag. Percy's an associate professor of computer science at Stanford University also one of the top technologists that semantic machines. His research goals are to make machine learning more robust fair and equitable and to make it easier to communicate with computers through natural language. He's a graduate of MIT and received his PhD from UC Berkeley. Hey Percy welcome. Show things have happened so we always start. These shows with me asking How you first got interested in technology. Were you a little kid when you realize that you're interested in this stuff? Yeah I think it was a round maybe and of elementary school or Middle School My Dad always had a computer so it was around but he didn't let me play with it. And what you do. He was a mechanical engineer. Gotcha and I remember maybe my first memories are In after school In middle school there was a computer lab and there was There is a hypercard which is multimedia program for the Macintosh back then and it got really fascinated and building these Militantly simple applications. But they had a scripting language so you could start to code a little bit and there's animation and all that so it was kind of fun to get into that I remember hypercard as well I I believe one of when the first programs I wrote I maybe a little bit older than you are But I do remember at one point writing a hypercard program that was Like a multimedia thing that animated a laser disc like you remember laserdisc gigantic precursors to DVD's Yeah this is really such a great tool. Yeah at that time. I also tried to learn see but that was kind of a disaster. What are pointers and all this stuff? This is sort of a formidable Formidable first language to attempt to learn I mean like one of the things like given that you are Your Computer Science Educator You know I. I'd be curious to hear how you think about that. Evolution of entry into computer science on some levels now. It seems like it's a lot easier to get started than when we were kids. Maybe but in other ways it's actually more challenging because so much of the computing environment like the low level. Details are just abstracted away and like the layering is very high. It's a lot to get through Yeah so somehow. Computer Science Thrives on abstraction right from the low level machine code to to see and we have python programming languages and At some level you just have graphical interfaces so picking the right entry point into that for someone as I think. There are multiple ways you can go probably wouldn't start with see if I were teaching intro programming class but more at kind of a conceptual level of here are the kind of computations that you want to perform And then separately. I think it's different class with talked to you about how this is actually realized because I think there is some value For A computer scientists to understand how goes all the way down to to to machine code but not all at once yet? It's I am still convinced that one of the one of the most useful things I had to learn as Like a programmer. Who LEARNED TO PROGRAM? The eighties was fairly quickly. I had to learn assembly language. Like you had to know what the low level details where the machine now granted the machines were more or less complicated back than they are now but like just sort of at that atomic level knowing how the actual machine works Just made everything else that came after it. Less intimidating yeah. It's Kinda satisfying. It's kind of rounded playing with blocks. So you you started with hypercard And like where did things go from there? Yeah so for a while. I was I I think I also learned basic. I'm just kind of tinkering around There was and Like today as many resources as you can imagine for just. No kids interested in Programming so a of it was kind of on on my own I think maybe a turning point happened at the beginning of highschool where I started participating this Usa Computing Olympiad. Which is a programming contest? You can think about is the programming contest. But I really think about as kind of algorithm problem solving contest so the the problems that they give you are It's kind of like a puzzle and you have to write a program to solve it But much of the the work is actually kind of coming up with insight of how to what algorithm to do kind of efficiently so an example might be How many ways are there to make change for Two dollars museums certain set of coins and it would be kind of Rica moment when you found. That's how you can do it. And then you have to code it up so I think that competition really got me to And a value this type of Kind of rigor and attention to detail but also a kind of creative aspect of computing. Because you have to come up with on news types of solutions that's awesome and so what was What was the most interesting problem you had to solve? In one of these competitions oh That's a really good question I think it's been a while so I don't remember all the problems but one. I think One memorable maybe class of problems is Around the idea of dynamic program and so this idea that you can write a program and if you do it smartly you can make something that would otherwise run in years millennia in a matter of seconds and I remember having to it was always these problems and you have to really figure out. What was the recurrence relation to make it all all work and a lot of problems. Were centered around. Yeah was it one of the amazing things about the dynamic programming technique is it really does teach you and it might be one of those foundational things when you're getting your head wrapped around how to think. Algorithm Mickley about problem decomposition. Yeah because like I. It's one of those magical things. Where if you break the problem down in just the right way. All of a sudden A solution to the problem becomes Possible when it was intractable before. Yeah Yeah I think I liked it because it was an that you had to memorize a bunch of things or you learn if you learn these ten algorithms and ub set but it was kind of a much more open ended way to think about Problems yeah that's awesome and so You go to. Mit As a undergraduate student. How soon did you know exactly the thing inside a computer science that you wanted to do that? I think took a little bit of evolution so coming out of high school. I was much more interested in his algorithm IQ questions and got interested in computer science theory because that was kind of a natural segue So it was and I started doing research in this area and it wasn't until towards the end of my undergrad where I Sir. Transitioning INTO MACHINE. Learning or AI. When was this what year this was around? Two Thousand Four. Okay Yeah says still like machine? Learning was people didn't use the word back. Yeah Yeah Yeah I mean I remember like right around that time was when I joined Google and I've been a compiler guy when I was in academic insult like I'd never done I never done at all and like I didn't know what machine learning was when I started and yet you know three months after I joined Google I was tasked with doing a machine learning thing. You know reading this giant stack of papers and formidable textbooks Trying to trying to get myself grounded but it means a very interesting time like two thousand four and like you know you sort of picked a great time to learn annoy idea that it would be the feel that it is today and why. Why was that interesting so I can sort of get? Why the theory was interesting. Love these problems and the challenge of what was interesting about machine learning. I mean I think there's definitely this Background would be kind of mystical aspect of intelligence that I think I'm not unique and can be drawn to so When there was an opportunity to connect the things that I was actually doing with a theory with some element that I took opportunity to kind of get into that and they say that Mit for my masters which was on Machine learning natural language processing So then that kind of Roy cemented kind of direction that I really started

Coming up next