Oliver Cameron (CEO, Voyage) - MIT Self-Driving Cars

Alright, welcome back to 6.094, Deep Learning for Self-Driving Cars. Today we have Oliver Cameron. He's the co-founder and the CEO of Voyage. Before that, he was the lead of the Udacity Self-Driving Car Program that made ideas in autonomous vehicle research and development accessible to the entire world. He has a passion for the topic and a genuine open nature that makes him one of my favorite people in general and one of my favorite people working in this space and I think thousands of people agree with that. So please give Oliver a warm welcome. Thank you very much, Lex, and thank you all for having me here today. Super excited to speak all about Voyage. But in reality, the kind of thing I want to share today is kind of like this title says, how to start a self-driving car startup. Rarely do you kind of get an inside scoop of how a startup is formed. You kind of hear all the PR, all the kind of very lovey-dovey press releases out there. I want to share kind of the inside of how at least Voyage came to be, which was a little unconventional compared to your average self-driving car startup. They always tell you that the path to a startup, getting to the goal you want, is kind of a zigzag. Ours was kind of an insane zigzag. So we'll go through all of that stuff. Let's talk about my background. Also a little unconventional. I'm not very good at learning in a classroom. For me, I found learning by doing, by building, has always been the thing that's worked best for me. So going all the way back to when I was a teenager, software just in general was my passion. This idea that you can make something out of absolutely nothing, and then all of a sudden, millions, and in Facebook's case, billions of people can be using that thing. And after building lots of crazy stuff and perhaps not being too popular in high school because that's all I did, I started a company. I won't bore you with all the details, but learned a lot during the experience, and went through Y Combinator, which I believe started right here in Cambridge, which is very cool. And then this very pivotal moment happened to me. I heard about this online class which was generating a whole bunch of scandal and lots of controversy, and it was from this guy called Sebastian Thrun. He'd taken this Stanford class he taught in artificial intelligence and just said, screw it, we're going to put the whole thing online. And back then, and this was around 2011, this was a very controversial thing to do. Today, MIT and many others do this all the time, but back then there was a hell of a lot of controversy around doing something like this. But this learning format really just appealed to me. Being able to sit in front of my laptop, learn at my own pace, build, build, build, was something that really resonated with me. And I took this class in 2013, Artificial Intelligence for Robotics, and this again was just this pivotal moment. My head exploded, all the enthusiasm I'd had for software kind of transferred to artificial intelligence and robotics, and just became addicted to the format of what are now called MOOCs, Massively Open Online Courses. And I loved them so much that I decided, hey, I want to go do this and help others learn this stuff, so hey, let's go join Udacity and build more classes like this. So I did that for four years, led our machine learning, robotics, and eventually our self-driving car curriculum, which was a lot of fun. And I got to learn directly from two great company builders, like truly great company builders. One was Vishal Makkajani. He was the operator extraordinaire at Udacity, understood how to build a company, how to build a culture, how to incentivize, and how to do all those things that we don't often talk about. And Sebastian Thrun. He, of course, founded the Google Self-Driving Car Project in its early days, and right now I believe he's building flying cars. Just in general, I learned so much from him, but this idea that you are literally in control of your destiny, you can build absolutely anything if you put your mind to it, was always pretty inspirational. Today, of course, I build self-driving cars at Voyage, and we'll talk more about what makes us special compared to the other self-driving car companies you may have heard of in this class and beyond. Let's talk about Udacity. Can you raise your hand if you've heard of Udacity? Very curious. There you go. That's most of the room. Udacity, like I said, was founded by Sebastian Thrun. He took this class online and it all just exploded, and he built a company around it. Udacity's real focus is on increasing the world's GDP, this idea that talent is everywhere, that it isn't now just constrained to the best schools in the world, that because of this proliferation of content, there are talented students all over the world, and all they need is the content in which to be able to build crazy cool world-changing things. What I see as my job today is to go out into the world and find these ridiculously talented people and then put them to work on the hardest problems that exist. Udacity, to me, felt like the perfect place to do this. As a kind of prelude to this, about three years into Udacity, we had this real focus, like I said, on machine learning and robotics, but we really wanted to take it to the next step. We came up with this kind of concept internally that we called Only at Udacity. What if we taught the things that other places weren't teaching? What if people all around the world could come learn from what may appear to be niche topics but were just being taught at the right time because that industry is about to blow up? The first one we did of this, and we've done some after, including Flying Cars, a much more in-depth curriculum on artificial intelligence, was Self-Driving Cars. This is a quick video that introduces it, and this is, of course, Sebastian Thrun, robotics legend. Let's see if this plays. With a lean self-driving car has been the dream of my life. And I've dedicated more than 10 years to it. If we can build a safer car, we'll save a lot of lives. But on top of it, it's transformational. Just imagine, instead of owning a car, you have a little phone in your stomach compartment, and an empty car comes to you, you jump in, and it lets you go somewhere, and when you don't need it anymore, it disappears. There is an enormous market for self-driving car engineers. Lots and lots of companies that you wouldn't suspect have entered that field and are massively high-end. I challenge everybody to be a part of this. We're launching at the university another degree program called Self-Driving Cars so that everyone in the world can become a self-driving car engineer. And why did we want to do this? What was our goal? It was to accelerate the deployment of self-driving cars. Like Sebastian says in that video, there's a number of reasons why self-driving cars are transformational. At the time, this was around 2016, it felt like self-driving cars were just taking a little bit too long. We rewind to that particular spot in time. Google was really the only main effort going on, and what we believed is that it needed to happen faster, and that one of the reasons it wasn't happening fast enough is because there wasn't enough talent in the space. So what we decided to do is, like I said, build something quite special. We wanted to pair up a world-class curriculum, an actual self-driving car, which we'll talk about more, and what we called our open-source challenges. And all of that would come together to build this quite special curriculum. So let's start with the curriculum. One of our beliefs was that partnering with industry was the right way to go. That was because it felt, and I believe this, that the knowledge of how to build a self-driving car was not necessarily trapped in academia, it was trapped in industry. So we had to go straight to industry, work with engineers that were already challenging themselves with these problems, and get them on camera, have them teach the concepts that they know and build day in, day out, and have that be transplanted to thousands of minds around the world. So these are just some of those partners. There were many, many more, but we had a real focus on finding these engineers, wherever they may be, and getting those folks on camera. We also built an incredibly talented team. This is just a small snippet of the curriculum team, but of course, Sebastian Thrun was a big part of this curriculum. When I told folks that I'd gotten a chance to work with him on specifically self-driving cars, he likened it to getting basketball lessons from Michael Jordan, which I thought was pretty fun, and they were probably just as entertaining. But some really, truly great folks working on this curriculum and still doing that to this day, who deserve all of the credit, frankly. Here's a quick photo of our first lecture recordings with eventual Voyage co-founders, Eric and Mac. Eric, who's on the left, hates this picture, and here's why. There you go. He still isn't at Mac's height, but he still has that box on his desk. And we built a whole 12-month curriculum to take an intermediate software engineer, who may be in consumer software or just some other part of the software world, and take them into self-driving cars. We wanted to cover perception, prediction, planning, localization, controls even, just the whole breadth of the industry. And the reason we wanted to do that is because we saw the best fit for a Udacity student not necessarily being a specialist in a niche, for example, just perception, although there's been a whole bunch of folks doing that as well, but that the skills of a Udacity student tend to pair themselves well with being a generalist, someone that can contribute all across the stack. So we tried to give these folks that breadth of knowledge. So here's another quick video of just the curriculum that we built with some previews. In the first term, you'll build projects on deep learning and computer vision. For example, you'll build a behavioral cloning project where you drive a car yourself in a simulator, kind of like in a video game, and then you use data from your own driving in the simulator to train a neural network to drive that car for you. This is the type of project the cutting-edge Silicon Valley startups are working on right now, and it puts you at the forefront of the deep learning and autonomous vehicle industry. You'll also build a project to detect and track vehicles in a video stream, just like real autonomous vehicles have to do out on the highway. In term two, you'll learn about sensor fusion, localization, and control. This is hardcore robotics that every self-driving car engineer needs to know in order to actuate and move the vehicle through space. In the localization module, you'll build a kidnap vehicle project, which takes a vehicle that's lost and figures out where it is in the world with the help of sensor readings and a map. This is exactly what real self-driving cars have to do every time they turn on in order to figure out where they are in the world. In the control module, you'll build a model predictive controller, which is a really advanced type of controller that's actually how most self-driving cars move through the world and use the steering wheel, throttle, and brake to follow a set of waypoints or a trajectory to get from one point to the next. In term three, you'll learn about path planning, you'll have an elective month, and you'll learn about system integration. Path planning is really the brains of a self-driving car. It's how the car figures out how to get from one point to another, as well as how to react when you meet obstacles in terms of seating. I'm going to give you a sneak preview of how path planning works, and this is something that nobody's ever seen before, so get ready. Path planning involves three parts. There's prediction, which is figuring out what the other vehicles are going to do around us. There's behavior, which is figuring out what we want to do. This goes on for a while, so we'll pause it there. The impact of this curriculum was bigger than we thought it would be. When we pitched as a small team this idea to Sebastian and to Vish at Udacity, there was a lot of skepticism that something like this was going to be successful. And the reason that there was that skepticism is that one of the kind of formulas that Udacity looked at to determine the impact of building a certain type of content was the number of open jobs available. If there was, for example, in web development, mobile development, all that good stuff, there was millions of jobs open, so it felt like there was a massive opportunity to impact the area. But if you were to, in 2016, search for self-driving car engineers or the different disciplines that exist within, it was kind of just Google. So it was very interesting just to see the instantaneous reaction that we had to launching this curriculum. Today, over 14,000 successful students from all around the world, as you can see. Probably the most exciting thing is to see what students have done with this sort of curriculum. For example, I learned recently that a set of our students here are building a self-driving truck startup in India. Another set of students in South Korea are building a perception engine for self-driving cars. Just a whole bunch of folks building truly amazing things. And not only that, they've gotten jobs at Cruise, Zoox, Waymo, Argo, all the big names, and are actively impacting those companies today. Now, for the fun stuff. We also decided to make that curriculum extra special. And we decided to do that by building an actual self-driving car. And whenever I talked about this internally at Udacity, people asked me why. Why do we need to do this? Isn't the curriculum just enough? Why go to the length of building an actual self-driving car? And selfishly, some of it was just a personal want to build a self-driving car. But the reasoning that I use is that what better way to prove to these students that are putting their faith in us that we know what we're doing than to build our own self-driving car. And also, what better way to collaborate with these students on an area that is really infantile than, again, by having this platform that students could actually run code on a car. So, we decided to buy a car, and we'll talk more about that in a second, but we set ourselves a milestone for our self-driving car. It was to drive from Mountain View to San Francisco, 32 miles of driving with zero disengagements. It should be repeatable. It won't be zero disengagements every single time, because otherwise we've got an actual self-driving car. But in a short period of time, how much progress can we make towards this stated goal? Raise your hand if you've been on El Camino Real in that sort of region. So, you probably understand it's got a lot of traffic lights. In fact, in our route, about 130 traffic lights. It's multi-lane, three lanes, speed limit of about 40, 45, something like that. So, it's fairly complex, but it's also got some constraining factors, which is what we're looking for, too. So, it focused our tech efforts. This is the car we bought. You're probably very familiar, if you follow self-driving cars, with the Lincoln MKZs of the world. They're everywhere, and there's a reason for that in terms of the drive-by-wire nature of the vehicle and other stuff. And we outfitted a whole bunch of sensors, some cameras, some LIDARs, all that good stuff. We also tried to build our own mount. We affectionately called this the Periscope. I don't know why it's in slow motion, but this was not our final design. We built all this from parts at Home Depot. Truly an MVP. And then we got to work. The goal was to accomplish that milestone within six months. So, we of course had to work fast, assembled a dream team of folks that I'd worked with on different projects at Udacity, that also wanted to come dabble in this, folks that worked on the machine learning curriculum, robotics curriculum, etc. So, this was one of our first days testing. And we did this at the Shoreline Amphitheater parking lot, which actually now is a very popular place to test self-driving cars in the Bay Area, because Google used to do it in the past. We saw a lot of weird stuff. For example, you'll see here. We saw what I believe to be a motorcycle gang. And we made progress. We kept iterating, kept building, and it started to come together. In fact, some stuff that we thought wouldn't work, surprisingly, just started to work. This is on El Camino Real. I'm in the back seat here. So, Mac discovered that we shouldn't have stopped at that traffic light. But we did. We resolved the mystery later. Let's go to the next video. And of course, we learned a lot by going in this route, the different behaviors of drivers. One of the things that we were worried about is vehicles cutting us off. And when we say cutting us off, it means a vehicle pulling out in front of us, even a few hundred feet in front. You'll see here. We drove a little slow. 25. It turned out it was fine. And pretty soon it got quite boring. The car was doing very well driving itself. We built some cool algorithms to change lanes when necessary. Similar to what you see with Tesla Autopilot these days. We collaborated with some students on a traffic light classifier, which was integrated into ROS there. And yeah, pretty boring stuff. So you can tell Eric was surprised that it was just fine. And we also had a penchant for building, for recording themed videos, like you saw maybe from Elon Musk and the Tesla team with Paint It Black. We've got our own version of that. Eventually, we became pretty confident, but we always wanted to test most of the day just to get the most learnings out of everything. This video was made at 2.30am, driving from Mountain View to San Francisco, all 32 miles. This is a backing track. This is a backing track. Maybe I want to turn it down. So it's easier because there's less traffic, right? This is kind of cheating and didn't count as the milestone, just to be clear. You'll see that we eventually hit the 32 miles. And Matt, who's in the driver's seat, is pretty excited about that. Still pretty good. And they hit it. But of course, that didn't count because it's in the middle of the night and that's not going to be a very useful route. But it was an awesome accomplishment just to even make it 32 miles with no disengagements when this traffic lights lane changes, all that good stuff. But after four months, this is in the daytime, this began I believe at like 6, sorry 7am, we accomplished it. That small team had come together and built something pretty cool that could handle again multi-lane roadways, varying speed limits, traffic lights, objects, all that good stuff. And the thing that really brought this home to me is that the industry was now ready, right? And I think this feeling I had in software where someone in their bedroom can go and build something and launch it almost feeling overnight could now, not quite the same, but close to the same, happen in self-driving cars. But we'll talk more about what this led to in a little bit. Let's talk about open source challenges. We also got the same question, why do this? And it was clear to me that for something like self-driving cars, which was so formative, we had to collaborate with students to figure out the best stuff. Because even the folks that were at Udacity were not necessarily the world's leading experts in these topics. So we wanted to use this hive mind of activity from around the world to teach the best stuff. So just through a period of a year, these are all the different challenges we launched. There was prizes and leaderboards and all this sort of fun stuff. The one that I'll focus most on today is using deep learning to predict steering angles. And the challenge was clear. It was that given a single camera frame, you have to predict the appropriate steering angle of the vehicle. If anyone had read NVIDIA's end-to-end papers in 2016, this stuff was all the rage. And it felt like one of those areas that was just begging for more exploration. And again, let's use all these students from around the world to do it. And we did have students from all around the world. There was over 100 teams, people self-organized into these little groups to go and build this. And over the course of about four months, we had a whole bunch of submissions all taking incredibly different approaches to the problem. We released data sets, validation sets, all that good stuff. Here you'll see our V-winning model. And I later found out that the author of this model actually went on to lead the self-driving car team at Yandex, which if you've been following CES is doing some pretty cool stuff in self-driving cars today. But you'll see this is on a route from the Bay Area to Half Moon Bay, a very windy road. And you'll see that the prediction matches pretty closely to the actual, which is nice. And if you read his description of his solution, it's a pretty cool solution. And I think the most exciting thing was just the number of different approaches to the problem all resulting in some awesome stuff. And again, in true Voyage fashion, we recorded a video of what this model performed like on our car. It wasn't perfect as any first model, and just the general approach of camera-only driving had its faults. One of the main ones that we realized after trying all this stuff out is that, of course, a car, when steered by such an input, performs differently in a car than it does on your desk in a simulator or through pre-recorded camera frames. So adjusting for those corrections that might need to be made is something that students after the fact added, which was pretty cool. So after all of these things, building that curriculum, building a self-driving car, launching these challenges, it felt like it was time for something new. It was awesome to go and collaborate with all these students, and it felt like I had to go build something. So gathered that same team that had built this curriculum, and we said, we're going to go build a self-driving car. This is from my pitch at Coastal Ventures. You can kind of see the pitch deck there a little bit. Voyage is a new kind of taxi service. Our pitch has changed somewhat through time, but that's still pretty accurate. We started what is now called Voyage. Our goal really was that we wanted to, again, build a self-driving car, but we wanted to do it differently. We didn't want to follow the same formula that we felt we'd seen from some of the other folks in the field. The reason is that those folks have real advantages. When you think about Google's project, of which I'm a big fan, they have this massive engineering pipeline of folks that want to go build a self-driving car at today Waymo, but they also have a cash-bank balance of billions of dollars that is hard to match. They also have the brand recognition of getting to work with Google and all that good stuff. So we just knew we had to think about this problem quite differently. What motivated me is that today, as we all know, we have this incredibly broken transportation system. You step outside onto the roads today, and I don't know about you guys, but I don't feel particularly safe when I jump into my car. We all know the stats. Over one million people suffer fatalities on the roads today. It doesn't include folks that break necks, that injure, break bones, all that horrific stuff. It's also incredibly inefficient. We've, again, all observed this as we go about our day. Perhaps the number of lanes that exist on a road today to account for peak traffic, the number of vehicles which have enough room for eight people, have usually one person in that front seat. I read a stat recently that only 7% of the average vehicle's energy usage is going towards moving the things that are actually in the car. The rest is waste. So an incredibly inefficient system. It's also expensive. The reason we see a lot of old cars on the road today is because that's, at least today, the most optimal and affordable way for lots of folks to get around, and inaccessible. And you'll see why this matters to us in particular. Our goal is to introduce a new way to explore our communities. This is a video of one of our cars at a particularly cool place, which we'll talk more about. And this is kind of our mission. And why now? Why is it possible to build a self-driving car now? A number of factors that we learned during that Udacity experience, but some new as well. It feels, from everything we see, that sensors are now in this position, which these sensors are now capable of level four self-driving cars. The resolution, the range, the reliability, all those things that were necessary for an L4 self-driving car are today ready. That didn't used to be the case. If you rewind to 2007 and look at the cars that were participating in the DARPA challenges, you'll see a lot of single channel lasers. You'll see the relic of the Velodyne HTL64, the spinning bucket, as it's called today. And no one would have claimed those sensors already. But today, you've got this enormous breadth of sensors that can take you that way. Deep is there, when we think about the recent rise in GPUs and whatnot. Finally, being able to have enough performance in the back of a car with the power constraints that you have, it's there. And talent. Again, this is not just Google today. You've got all of these great minds from all around the world building this technology. So you're able to recruit those folks, put them to work on the problems they've solved in many cases beforehand. The reason I have yellow for computer vision, which is not a knock against computer vision, is because it's not quite there yet for a fully driverless self-driving car. If you, again, rewound three, four, five years, this would have been a red. But today, with all the community and whatnot around computer vision, this is steadily getting to a green state. So pretty soon, that will be green. And of course, then you'll have that perfect formula for level four driving. What we run after is ride sharing. We believe that the optimal way for people to move around is to be able to summon a car. But the thing that's suboptimal today is that you have to have a human driving you whenever you want to move around. Prevents the cost from being lower, prevents some safety issues, prevents some quality issues. And we think solving that will mean these next generation way of moving around will come to fruition. But what we also see is that if you, let's say we never remove the driver from the car, that a ride-hailing network always had a human driver, you are inherently limited by the number of miles you can drive, which means that it'll never replace personal car ownership, will never fix that fatality number I talked about, all of those things we must solve. So we think by having a self-driving car that these next generation transportation networks will come to fruition. Our lead VC is a guy called Vinod Khosla, the founder of Khosla Ventures, an awesome guy who's done some truly world-changing things. He has this quote, which I'm a big fan of. Your market entry strategy is often different from your market disruption. Start where you find a gap in the market and push your way through. And this better communicated what I mentioned at the very beginning, which is that we should build a self-driving car, but do it in a different way. Because if we don't do that, we're going to fall into the same traps as many of the others that have died along the way. We have to find a way to do something different that we own and that we are really, really good at. And for us, that was retirement communities. Hands up if you've ever visited a retirement community. Way less. There you go. Surprise, Lex. You're the one. But these are just amazing places. And the reasons we choose retirement communities first to deploy our self-driving technology in is for these four reasons. They are slower. The speed limits in these communities tend to be far slower than you'd see on public road. Much calmer roadway. When you visit these locations, I liken it to listening to a podcast at 0.75x. It's very constrained, very slow, and a little boring from time to time. But you've also got these heartfelt transportation challenges. We hear from these residents all the time about how transportation is a pain point and that their only option is a personally owned vehicle. These folks know in many cases they shouldn't be driving, but because they don't have an alternative, they still drive. We hear from folks that put off much needed surgeries, hip replacements, things like that, because they don't have a friend in town who's going to be able to move them around. We hear from folks with vision degeneration that they just don't see a way that they'll be able to move around and keep that quality of life that they've been able to have. Folks gripping steering wheels for extended period of times. All these challenges that felt like the best first place for a self-driving car to begin. And a clear path to customers. We see that on the roads today, ride sharing on public cities and whatnot is a particularly brutal battle. A race to the bottom in terms of cost. If we owned every retirement community in the country, meaning the transportation networks there, that would in and of itself be a very valuable business. One of my favorite passengers is Anahid. She came to visit us recently and gave this quick speech about why self-driving cars matter to her and her community. Let's talk about our first community. This is The Villages. Whenever I show this slide, people are astounded by the number of residents in a community like this. Over 125,000 and growing. Over 750 miles of road. And what we have in this location is an exclusive license to operate an autonomous vehicle service. This is one of our other beliefs, which is that by partnering very deeply with the community, it means that we're able to deliver a better service and that we're able to grow a more reliable business. We won't have entrants and competitors from all of the other self-driving car companies in our communities. What we actually do in exchange for that exclusive license is grant these communities equity. Because if we win, it's probably, in fact, highly likely as a result of those communities. And the addressable market of transportation in these regions is massive. These residents tend to be, as a lot of seniors tend to be, quite affluent, which means that they have some disposable income when it comes to being able to pay for ride-sharing services and other things like that. So we find that that recipe is absolutely perfect here. And we're launching and have launched passenger services to these residents. I've gotten a lot of awesome feedback, learned a lot about the needs of providing ride-sharing for senior citizens. Just some quick stats. This is from my Series X fundraising deck. Just about the size of the senior market. Again, this is the first place we go, but you can get a feel for just how large this transportation market is. Today there are 47 million seniors. That's growing by 2060 to over 100 million seniors in the US. The total addressable market for just seniors is incredibly large. 2,500 plus communities, all that good stuff. And this is how we see the world, the landscape of potential deployments. You've kind of got a lot of the big guys focusing on that bottom left quadrant. They're focusing on large cities. And it makes sense because it's playing to their unique strengths. It's playing to their ability to deploy thousands of cars, tens of thousands of cars. It plays to the strength that they have at least some patience or ability to have more extended timelines when it comes to building this technology. But for a startup like us that fights for survival every single day, it means that we have to do things differently. So we focus on that top right quadrant there. What we've kind of coined as self-contained communities. These places are simpler, slower, but they also have this ability for us to have that exclusivity that I talked about. And there's some others, of course, that we play in, whether it's the senior market or maybe even small cities and things like that. Let's talk about autonomous technology. So just to reiterate, why do we deploy in retirement communities? Slower speed, simpler roadway. There is a central authority. These places tend to be run by private companies, which makes for a quite unique relationship in a very positive way. It means we can deploy faster. It means we have the potential to have more impact in these regions. It also turns out that retirement communities tend to be located where there's ideal weather for self-driving cars. Think about Arizona, Florida, et cetera. We have a world-class team building this at Voyage from all the major programs out there, and that makes our lives infinitely easier. One thing that also makes our lives easier is the sensor configuration of our car. We've intentionally made this decision that we're not going to focus on optimizing for cost today, but to optimize for performance. We want to get to truly driverless sooner than most, and one of the easiest ways you can again make your life easier is by optimizing for high-resolution sensors. At the very top of the vehicle, we have the VLS-128, which is a 128-channel LiDAR that's capable of seeing 300 meters in 360 degrees. Many of the different LiDARs on the vehicle to cover different certain blind spots, all together we process 12.6 million points per second, and that just looks incredibly high-resolution. You'll see our car at the bottom there, and that's the raw point cloud output that we see in the world. We run towards level four, and for us what that means is that if you're building a demo self-driving car, kind of like we did at the Udacity project, you may focus on just the top four items, that top row. You may focus on perception, prediction, planning, and controls. It turns out you can build a very impressive demo quite quickly by just focusing on those things. But, of course, those things fall apart whenever edge cases are introduced, which happen all the time. So we've spent a ton of time on all the items here, because again, our goal is to build not a demo, but a truly driverless vehicle. We also have an emphasis on partnerships, because what we've noticed in the self-driving ecosystem is that there's not just more self-driving car companies building the full stack. There's now folks getting into simulation, to mapping, to middlewares, to teleoperations, to routing, to sensors, of course, and a ton more. So we make our lives, again, easier by partnering with companies like this, so that we don't have to spin up a simulation team, or we don't have to spin up an operations team to go map the world. We can just work with these very cool companies. Let's talk about one unsolved problem, which fascinates me. It's to do with perception. And you probably won't be able to notice this unsolved problem from just this picture, but maybe if I add some annotations, you might. Foliage, trees, bushes, whatever you want to call them. You may have seen some quotes in the media about some popular AV programs struggling with such foliage. For example, cruise cars sometimes slow down or stop if they see a bush on the side of a street or a lane dividing pole, that was in the information. This one, Uber's self-driving car software has routinely been fooled by the shadows of tree branches, which it would sometimes mistake for real objects, insiders say, that's Business Insider, and even Voyage. There's only one hard stop on the way, the culprit is a bush two feet high that protrudes into a lane from a street median, which Voyage considers a possible threat, Voyage may trim it. That's a joke. But we don't think that's scalable, and maybe it is, I don't know. But we, at the beginning of 2018, decided to solve this problem. So of course, all of this resides in the world of perception, an area of particular fascination for me. We're sharing these slides, but these are just some of the papers and research that we see going on that intends to solve those sorts of issues. One of the reasons you've seen those programs, including ours, be particularly sensitive to foliage is because, from a perception perspective, one of the most well-known ways to detect objects is to utilize the map. If you have this map, and you effectively, it's simplifying to a certain extent, but subtract objects that aren't in the map, and then use that as a way to understand what's in and around you that's dynamic, then of course you'll end up with decent representations of cars and pedestrians and whatnot. But if foliage grows, which it does, trees, then that's going to extend out from the map and mean that that particular bush is now an object in your path. These networks here, of which these are all neural networks, don't use that same technique. They don't use the map as a prior. Instead, what they do is take, of course, this 3D scan of the world, and then take a more learned approach to the problem. You'll have tens of thousands, hundreds of thousands of labels of cars, humans, et cetera, and then these next networks will be able to pick these ones out. We're particularly fascinated by Picsor, which came from some great research at Uber ATG. VoxelNet came from Apple SPG. I've heard our engineers talking a lot about Fast and Furious recently, which merges together perception, prediction, and tracking into a single network, which is pretty cool. And PointPillars, which I think came from the Neutronomy team recently. I think Carl is speaking soon, right? So just in general, we see a whole bunch of work going out there to solve these issues. The other one that these sorts of networks solve, which I also find particularly fascinating, is that if you use traditional clustering algorithms, what you might see is that if two people are stood next to each other, a traditional algorithm will cluster as one object, which when you're trying to move away from those edge cases and build a truly self-driving car, that's a non-starter, right? Because pedestrians are the most important thing you can probably detect, and detecting two things as one thing is not going to cut it. And of course, it does that because it's a dumb algorithm. It's not trained on any sort of information. But these networks, again, are very, very good at understanding the features and perspectives of humans, even if they are in crowds and whatnot. And that then helps all your stack downstream, because if you have accurate perception information about objects in and around you, your predictions are much better, your tracking is much better, and ultimately how you navigate the world is much safer. I'm also particularly fascinated by reinforcement learning, which I know Lex is as well. If you've read Waymo's recent work on imitation learning, I think that's particularly cool. Another company we track quite closely, just because they do amazing stuff, is Wave, trying to build an entirely self-driving car powered by reinforcement learning. Think about disengagements as rewards and things like that, to be able to tune that to better performance. Also just areas of learned behavior planning, ultimately fusing rules of the road with more learned behaviors. The ecosystem, I think it's this area that is thriving today, seeing just how many folks are diving into not just the full stack, but building tools and building other really important parts of the stack. The maturation of sensors, not just higher resolution LiDAR, but things like 3D radar. We get pitched all the time from these companies, and it's clear to see there's been a rise in volume from all these great efforts. Lessons learned. Now that I've been building Voyage for two years, and prior to that, four years at Udacity, what things have I personally learned that are not technical in nature? So many things. These all may look like cliches, but I promise you they all came from lessons which were really, really painful in the moment. Don't be intimidated. The thing that I feel happens a lot in self-driving cars is that because it started in this very academic sense, meaning Stanford, Carnegie Mellon, and whatnot, that it felt like to break into the industry, you had to also go through that same path. You had to get a PhD in something and really go the path that was well-trodden. I think that only takes the industry so far. I think it's really important that we get folks from all different backgrounds, all different industries to come contribute to this field, because if we don't, there is no driverless. It can't happen in that isolated bubble. It needs to be extended out. So don't be intimidated by those things. Understand your limitations. This is perhaps more of a CEO lesson for myself, but I think when you're building out a company from one person or five people to today we're 44 folks, you cannot do everything. It's really important that you build a team around you that is able to do what you used to do, but do it 10 times better. I probably didn't spend enough time building out that team until we had some challenges our way when it comes to that stuff. Be proactive versus reactive. I think it's really crucial, again, when you're building a company to try and predict what's going to happen next, because if you're reactive you're constantly two steps behind what other folks are doing. Get out of the way. I think a lot of folks, again, perhaps overstay their welcome in certain areas of the company. When they should just say, okay, I've got experts now, I can just step aside and let those folks do what they do best. And speaking of which, hire the best. It's really easy when all this pressure's on when you're building a company to sacrifice when it comes to your culture, when it comes to hiring. It's really crucial that you find folks that are not just the best in their field, but are the best match for your company. And always be curious. I think it's always one of the things we believe in at Voyage is that it's important that knowledge is not isolated to just one person, that that knowledge should be spread throughout the company. Because even though it may feel like oversharing or overcommunicating, what that knowledge may mean for someone that has a particularly unique background is they may do something incredibly cool with it. They may build something that totally transforms our company. So that's about it. Jump to questions if that's helpful. That was great. Please give a big hand. How did you identify retired communities as the target market to prioritize? Yes. So retirement communities for us was actually, there's a really long story, but I'll trim it down a little bit. So when we were starting Voyage, Sebastian Thrum was very helpful in helping us start this company. And of course, as kind of naive founders of a company, we were like, let's just take this El Camino thing and put it on everywhere else that looks like El Camino and just do that over and over again. But he cautioned against that. And very wisely so, because again, you're nothing special compared to the other self-driving car companies out there by doing so. And in 2009, he had really advocated to Google leadership, et cetera, Larry Page, that retirement communities for self-driving cars might just be the best way for Google to go about deploying their self-driving cars. But and I can understand why, I think the Google folks were Google, right? We're not just about retirement communities, we're about the world, like level five or nothing, right? So he got some pushback, but he did some research in that process, met some folks. So when we were starting, he was like, you got to check out these retirement communities. So we did, we went to visit and eventually we got there. So we wouldn't have got to that point without Sebastian pushing for that. Just to follow up on the question of retirement communities, the question is, do you ever think about the other collateral issues, especially the retirement community would have to get into a car? And how exactly would they interface, like somebody wants to make a call to have a car come to their, wherever they are, and they have to move from A, point A to point B. So how did you ever think about all these issues that are very germane? It's not just a vehicle moving on its own, but these are all collateral issues. How do you plan to address this? It's a good question. So the way we think about this is that today we've intentionally focused it on a segment of the market, which is called the active adult communities. These folks tend to be able to go into their own cars or into a taxi, open the door, sit down without the need for any assistance when it comes to that. But they may have vision issues, they may have other issues that prevent them from driving perhaps. For example, we hear a lot that folks feel really uncomfortable driving in the evenings. They feel comfortable driving in the daytime because their vision supports it, but when it comes to the evening time, they have this mad rush to get home. But there is that other market which you're talking about, right, which is folks that just need that helping hand towards getting to the car. And one of our beliefs as a company is that the senior market like I had in that slide is surprisingly large. And what that means to us is that we think we can own it. We think we can be that company that any senior citizen in that situation thinks, oh, I should call Voyage because I need to get from point A to point B, instead of thinking I should call Waymo or Cruise or any of the folks that are going to go after the general big market, they'll think about Voyage. And the reason they'll think about it is because we'll deliver a product to them that is meant for those folks, that is designed for their use cases. It may be that actually if they're going on a long trip, let's say they're traveling 50 miles, the first mile of that trip and the last mile of that trip may involve a human, like helping them into the car and then dropping that human off somewhere else to go do that all over again. It may involve crazy robots that help people from their cars. We've heard from folks at Toyota that are building these bag-carrying robots and other things that may assist seniors from getting to the cars and whatnot. So I think that's why that market for us is particularly exciting, because it feels like you can deliver these tailored products that would enable us to be the market leader. But today we focus on active adult, but who knows where you go next. Can you talk a little bit about how you determined your final sensor suite? Yeah. So the truth is it's never final. So we think about generations of vehicles. So we have our first generation vehicle, which was a Ford Fusion, had a single Validyne HDL-64 in it, a bunch of cameras, radar, and we set some milestones based on that vehicle and we accomplished those milestones. And then once we reached the max in which we're able to take that vehicle, we then say, oh, we need to bring on our G2 vehicle, our second generation vehicle. So we did that and we said, okay, we have these certain goals in mind, which are pretty lofty and pretty ambitious. We need incredible range, incredible resolution for these things. And actually what we've discovered is that in our particular communities going at the speeds that we're going at, radar isn't particularly useful. So we don't have radar on our second generation vehicle, for example. But I'm sure that when we go to that third generation vehicle, there'll be other driving factors that we work backwards from the milestone to say, what do we need on this vehicle? It may be cost in the third generation vehicle, right? We may say that, hey, we need a more affordable sensor suite than what exists in our second generation vehicle. But they're driven by technical requirements and that means that we are able to really marry the two with the vehicle. I was curious, when you showed the student-led content, or when you showed one of the students in your first practice car had developed a traffic light sensor, and then you showed later on that you were getting student input for deep learning models for steering wheel turns. I was wondering what your system architecture looks like in terms of the kinds of perception that you take in, how modular it is, and to what extent deep learning algorithms have played a part in those different parts of that ecosystem? Yeah, that's a good question. So I really encourage folks to get familiar with ROS. So ROS has always been this kind of playground for roboticists of all different types of robots, to be able to try things out on robots. And ROS 1 is particularly notorious for kind of hacky and hobbyist types of projects, but it's not meant for production. ROS 2, though, which is in kind of an alpha release state, is definitely meant for more production-oriented things. And the reason I mention ROS is because it has this awesome architecture which lets you plug and play what they call nodes and be able to experiment with different approaches to the problem. So for example, what was running that deep learning model, predicting steering angles, effectively replaced our more rules-based planner and perception engine. And we just plugged the output of that, of the steering angle, straight to our controller to just actuate the vehicle. And ROS is particularly good at those sorts of architectures. And it's all open source, so you can do some cool stuff with it. Can you tell how you handle the liability insurance for passengers for your vehicles also? How we handle insurance? Is that a question? So we have a pretty cool deal with a company called Intact Insurance. And the idea is that insurance in the autonomous age is going to be very different than insurance today for human drivers because there's different risk assessments and whatnot. And one of the ways that we're able to prove to these insurers that we're good at what we do is actually sending them data. We send them data from our cars as we drive, showing that as we move through the world, we accurately detected things and planned around things and all that good stuff. And then they use that data to inform our rates of insurance. I think that the future actually of insurance will be on a similar lines, but perhaps more extreme where, for example, the rates will change depending on the complexity of the environment. If we're just driving down a straight road, completely straight, and there's zero vehicles around us, our insurance rate should be super low. But if we enter a city center and there's thousands of people and cars and all that crazy stuff, our insurance rate should just rise almost instantaneously. So we're partnering with someone today that insures the passenger, the car, sensors, all that stuff. But I think there's a lot of room for innovation there too. Did you have any problems onboarding the retired people initially? When they're skeptical, scared? And then the other question is, what are the major missing pieces in terms of computer vision to achieve L4? What was that last? Missing pieces between computer vision? In computer vision to achieve L4 self-driving. Gotcha. So one of the more interesting insights I think we had about retirees is that, again, in my kind of naive state back in 2016, my general feeling was retirement communities might not be the first to adopt this technology, right? Because they may be slower to adopt new technology, might be scared of the technology, all those sorts of things. And to kind of validate that, I went to talk to some senior citizens because I talked to my own grandma. She hates self-driving cars. I was like, that's not a good sign. But went to talk to these folks in these sorts of locations. And the really interesting thing we learned is that traditional consumer software or devices, yes, there is definitely a lag in adoption with senior citizens. And that's proven in many studies, many stats, that senior citizens are slower to adopt the Facebooks of the world or the Instagrams or the WhatsApps, all those sorts of things. Cryptocurrency, I don't know. But that's because they have these very well-defined processes that they've had for most of their lives, right? Instead of using Facebook, they call someone up and they have a conversation with someone about their day or stuff that's going on. Or they don't share a picture on Instagram, they physically mail a picture or something like that. So to change that behavior is tough, right? Because that's a behavior that is fundamentally different than what they're used to. They have to log onto a computer, go to this weird Facebook thing and share pictures with thousands of people, that's weird. But the difference between that and a self-driving car is that our experience is no different than the car they're used to. It just turns out it's being driven differently, right? Like they see a car, it's the same, similar form factor to what they're used to. They open the door, they sit in the back seat. Okay, there is a button I have to press to say go, but it's pretty similar to what I'm used to in my past. I don't have to learn a new behavior, I don't have to change something that I'm used to. So that was our first learning. And then also, they actually really don't care too much that it's autonomous. They are very, when I'm in the car, I'm quite curious and enthusiastic about the technology and want to tell them about, I don't know, LiDAR and deep learning and perception and they just don't want to hear any of that stuff. And it kind of dawned on me that the reason that is is because what they, senior citizens, have witnessed over their lifetimes is far more dramatic than I have, right? Our oldest passenger was 93 and she told me a story about how when she was very young, she remembers literally moving on an almost daily basis in a horse and cart. So when you talk about self-driving cars to those folks, they couldn't care less because between that period and today, they've seen the birth of flight planes everywhere, they've seen car proliferation, they've seen scooters now, they've seen all of this crazy subway systems. So a self-driving car to them is like, oh, that's cool. I just want it to move me. That's our biggest learning there. The question was computer vision, what needs to happen between now and level four? So I think the holy grail, right? So if you had perfect perception, self-driving cars are solved. If we knew every object that was on the road, in and around us, within a reasonable distance, self-driving cars are solved. False positives are accepted today, which I think is good, but you really want to minimize false negatives, right? You want zero false negatives in the world. And I think that's why we still have a tiny bit of work to do. Because when you think about the reason for a test driver being in the vehicle, well, perception feeds everything downstream, right? So if you miss an object, misidentify an object, any of that sort of stuff, then that effect causes the whole stack downstream to become quite chaotic. That's why I'm excited about all those networks that I talked about. One of the other things we believe that helps us minimize false negatives to non-existent kind of status for us is that we band together multiple networks. So we don't just rely on a single layer of perception. We say different networks have different strengths. For example, VoxelNet is particularly good at pedestrians, but Pixar is not so great at pedestrians because it's from a bird's eye view, where pedestrians are quite thin and whatnot. So let's band those two networks together, and let's also band together some more traditional computer vision algorithms that may not be processed on the entire 360 scan, but may be processed on a small sample, maybe at the front of the vehicle, for example. So there's just lots of little bits and pieces like that to go through to minimize the worst-case scenario, which is a false negative. But it's clear when you see Waymo and whatnot that they feel very, very, very close to that sort of state. You mentioned that weather was one of the main reasons this was a great place to start. Can you talk about hurricanes? Yes. It was funny. I got a question recently from Alex Roy, me and Lex were just talking about, okay, in the event of a hurricane, right, let's not talk about the technology second, but in the event of a hurricane, we've all seen those pictures of people getting on the freeways and trying to get out of the path of the hurricane, right? How is that going to work in a world where self-driving cars are everywhere and personally driven vehicles are maybe more of the smaller size? I don't quite have an answer to that yet, but I think it's an interesting kind of thought problem. From a technology perspective, the really important part of weather for us is remote operation. So inside every one of our, sorry, all of our vehicles have a cellular connection, right? And each of those vehicles is connected to a remote operator that's sat in somewhat close proximity to that vehicle. And that remote operator has a few jobs. One is to just ensure the safe operation of the vehicle, make sure that vehicle is doing as it's intended to do, all those good things. But another is to make sure that the operational domain that we are currently operating in is the one that it's designed for. So all these different camera feeds are being live streamed to this remote operator. And if there is sudden downpour of rain, that remote operator has the ability to bring that vehicle to a safe stop until that rain shower disappears or whatever, or hurricane, whatever it may be. But there are companies, I was pitched recently by a company that's building weather forecasting on a scale that is not really used today, but really microclimate. So thinking about just like this small subsection of the villages, predicting and understanding exact weather within those regions and then having web hooks to tell you as Voyage that that's about to happen. So there's a lot of cool stuff happening there. But remote operators currently are kind of the eyes and ears of our cars to prevent that sort of issue. So please give Oliver a big hand. Thank you very much. Thank you guys.


Andrew Ng: Advice on Getting Started in Deep Learning | AI Podcast Clips

So let's perhaps talk about each of these areas first. Deep learning.AI. How the basic question, how does a person interested in deep learning get started in the field? Deep learning.AI is working to create causes to help people break into AI. So my machine learning course that I taught through Stanford remains one of the most popular causes on Coursera. To this day, it's probably one of the courses, sort of, if I ask somebody, how did you get into machine learning or how did you fall in love with machine learning or what gets you interested, it always goes back to Andrew Yang at some point. The amount of people you influence is ridiculous. So for that, I'm sure I speak for a lot of people, say big thank you. No, yeah, thank you. You know, I was once reading a news article, I think it was tech review and I'm going to mess up the statistic, but I remember reading an article that said something like one third of our programmers are self-taught. I may have the number one third wrong, it was two thirds. But when I read that article, I thought, this doesn't make sense. Everyone is self-taught. So because you teach yourself, I don't teach people. That's well put. So, yeah, so how does one get started in deep learning and where does deeplearning.ai fit into that? So the deep learning specialization offered by deeplearning.ai is, I think, was Coursera's top specialization. It might still be. So it's a very popular way for people to take that specialization, to learn about everything from neural networks to how to tune a neural network, to what does a conf net do, what is a RNN or a sequence model, or what is an attention model. And so the deep learning specialization steps everyone through those algorithms so you deeply understand it and can implement it and use it for whatever applications. From the very beginning? So what would you say are the prerequisites for somebody to take the deep learning specialization in terms of maybe math or programming background? Yeah, you need to understand basic programming since there are programming exercises in Python. And the math prereq is quite basic. So no calculus is needed. If you know calculus, it's great. You get better intuitions. But deliberately try to teach that specialization without requiring calculus. So I think high school math would be sufficient. If you know how to multiply two matrices, I think that's great. So a little basic linear algebra is great. Basic linear algebra, even very, very basic linear algebra in some programming. I think that people that have done the machine learning course will find the deep learning specialization a bit easier. But it's also possible to jump into the deep learning specialization directly, but it will be a little bit harder since we tend to go over faster concepts like how does gradient descent work and what is the objective function, which is covered more slowly in the machine learning course. Could you briefly mention some of the key concepts in deep learning that students should learn that you envision them learning in the first few months, in the first year or so? So if you take the deep learning specialization, you learn the foundations of what is a neural network, how do you build up a neural network from a single logistic unit to a stack of layers to different activation functions. You learn how to train the neural networks. One thing I'm very proud of in that specialization is we go through a lot of practical know-how of how to actually make these things work. So what are the differences between different optimization algorithms? What do you do if the algorithm overfits? So how do you tell if the algorithm is overfitting, when do you collect more data, when should you not bother to collect more data? I find that even today, unfortunately, there are engineers that will spend six months trying to pursue a particular direction, such as collect more data because we heard more data is valuable. But sometimes you could run some tests and could have figured out six months earlier that for this particular problem, collecting more data isn't going to cut it. So just don't spend six months collecting more data, spend your time modifying the architecture or trying something else. So it goes through a lot of the practical know-how so that when someone, when you take the deep learning specialization, you have those skills to be very efficient in how you build these networks. So dive right in to play with the network, to train it, to do the inference on a particular data set, to build the intuition about it without building it up too big to where you spend like you said, six months learning, building up your big project without building any intuition of a small aspect of the data that could already tell you everything you need to know about that data. Yes. And also the systematic frameworks of thinking for how to go about building practical machine learning. Maybe to make an analogy, when we learn to code, we have to learn the syntax of some programming language, right, be it Python or C++ or Octave or whatever, but that equally important, or maybe even more important part of coding is to understand how to string together these lines of code into coherent things. So when should you put something in a function column? When should you not? How do you think about abstraction? So those frameworks are what makes a programmer efficient, even more than understanding the syntax. I remember when I was an undergrad at Carnegie Mellon, one of my friends would debug their code by first trying to compile it, and then it was C++ code. And then every line that has syntax error, they want to get rid of the syntax errors as quickly as possible. So how do you do that? Well, they would delete every single line of code with a syntax error. So really efficient for getting rid of syntax errors, but horrible debugging service. So we learn how to debug. And I think in machine learning, the way you debug, a machine learning program is very different than the way you do binary search or whatever, or use a debugger, trace through the code in traditional software engineering. So it's an evolving discipline, but I find that the people that are really good at debugging machine learning algorithms are easily 10x, maybe 100x faster at getting something to work. And the basic process of debugging is, so the bug in this case, why isn't this thing learning improving, sort of going into the questions of overfitting and all those kinds of things. So that's the logical space that the debugging is happening in with neural network. Yeah. Often the question is, why doesn't it work yet? Can I expect this to eventually work? And what are the things I could try? Change the architecture, more data, more regularization, different optimization algorithm, different types of data. So to answer those questions systematically, so you don't spend six months heading down the blind alley before someone comes and says, why should you spend six months doing this? What concepts in deep learning do you think students struggle the most with? Or sort of is the biggest challenge for them was to get over that hill. It hooks them and it inspires them and they really get it. Similar to learning mathematics, I think one of the challenges of deep learning is that there are a lot of concepts that build on top of each other. If you ask me what's hard about mathematics, I have a hard time pinpointing one thing. Is it addition, subtraction? Is it a carry? Is it multiplication? There's just a lot of stuff. I think one of the challenges of learning math and of learning certain technical fields is that there are a lot of concepts and if you miss a concept, then you're kind of missing the prerequisite for something that comes later. So in the deep learning specialization, try to break down the concepts to maximize the odds of each component being understandable. So when you move on to the more advanced thing, we learn confinates. Hopefully you have enough intuitions from the earlier sections to then understand why we structure confinates in a certain way and then eventually why we build RNNs and LSTMs or attention models in a certain way, building on top of the earlier concepts. Actually, I'm curious, you do a lot of teaching as well. Do you have a favorite, this is the hard concept moment in your teaching? Well, I don't think anyone's ever turned the interview on me. I'm glad to be first. I think that's a really good question. Yeah, it's really hard to capture the moment when they struggle. I think you put it really eloquently. I do think there's moments that are like aha moments that really inspire people. I think for some reason reinforcement learning, especially deep reinforcement learning, is a really great way to really inspire people and get what the use of neural networks can do. Even though neural networks really are just a part of the deep RL framework, but it's a really nice way to paint the entirety of the picture of a neural network being able to learn from scratch, knowing nothing and explore the world and pick up lessons. I find that a lot of the aha moments happen when you use deep RL to teach people about neural networks, which is counterintuitive. I find a lot of the inspired fire in people's passion, people's eyes, comes from the RL world. Do you find reinforcement learning to be a useful part of the teaching process or no? I still teach reinforcement learning in one of my Stanford classes, and my PhD thesis was on reinforcement learning, so I clearly love the field. I find that if I'm trying to teach students the most useful techniques for them to use today, I end up shrinking the amount of time I talk about reinforcement learning. It's not what's working today. Now our world changes so fast, maybe it'll be totally different in a couple of years. I think we need a couple more things for reinforcement learning to get there. One of my teams is looking to reinforcement learning for some robotic control tasks, so I see the applications. If you look at it as a percentage of all of the impact of the types of things we do, at least today, outside of playing video games and a few other games, the scope... Actually, at NeurIPS, a bunch of us were standing around saying, hey, what's your best example of an actual deploy reinforcement learning application among senior machine learning researchers? Again, there are some emerging ones, but there are not that many great examples. I think you're absolutely right. The sad thing is there hasn't been a big application, impactful real-world application of reinforcement learning. I think its biggest impact to me has been in the toy domain, in the game domain, in the small example. That's what I mean for educational purpose. It seems to be a fun thing to explore neural networks with. But I think from your perspective, and I think that might be the best perspective, is if you're trying to educate with a simple example in order to illustrate how this can actually be grown to scale and have a real-world impact, then perhaps focusing on the fundamentals of supervised learning in the context of a simple dataset, even like an MNIST dataset is the right way, is the right path to take. The amount of fun I've seen people have with reinforcement learning has been great, but not in the applied impact on the real-world setting. It's a trade-off, how much impact you want to have versus how much fun you want to have. That's really cool. I feel like the world actually needs all sorts. Even within machine learning, I feel like deep learning is so exciting, but the AI team shouldn't just use deep learning. I find that my teams use a portfolio of tools. Maybe that's not the exciting thing to say, but some days we use a neural net, some days we use a PCA. Actually, the other day I was sitting down with my team looking at PCA residuals, trying to figure out what's going on with PCA applied to a manufacturing problem. Some days we use a probabilistic graphical model, some days we use a knowledge draft, which is one of the things that has tremendous industry impact, but the amount of chatter about knowledge drafts in academia is really thin compared to the actual real-world impact. I think reinforcement learning should be in that portfolio, and it's about balancing how much we teach all of these things. The world should have diverse skills. It'd be sad if everyone just learned one narrow thing. Yeah, the diverse skills help you discover the right tool for the job. If we could return to maybe talk quickly about the specifics of deeplearning.ai, the deep learning specialization, perhaps. How long does it take to complete the course, would you say? The official length of the deep learning specialization is, I think, 16 weeks, so about four months, but it's go at your own pace. So if you subscribe to the deep learning specialization, there are people that finish it in less than a month by working more intensely and studying more intensely. So it really depends on the individual. When we created the deep learning specialization, we wanted to make it very accessible and very affordable. And with Coursera and deeplearning.ai's education mission, one of the things that's really important to me is that if there's someone for whom paying anything is a financial hardship, then just apply for financial aid and get it for free. If you were to recommend a daily schedule for people in learning, whether it's through the deeplearning.ai specialization or just learning in the world of deep learning, what would you recommend? How do they go about day to day, sort of specific advice about learning, about their journey in the world of deep learning, machine learning? I think getting the habit of learning is key and that means regularity. So for example, we send out our weekly newsletter, The Batch, every Wednesday. So people know it's coming Wednesday, you can spend a little bit of time on Wednesday catching up on the latest news through The Batch on Wednesday. And for myself, I've picked up a habit of spending some time every Saturday and every Sunday reading or studying. So I don't wake up on a Saturday and have to make a decision, do I feel like reading or studying today or not? It's just what I do. The fact it's a habit makes it easier. So I think if someone can get into that habit, it's like we brush our teeth every morning. I don't think about it. If I thought about it, it's a little bit annoying to have to spend two minutes doing that. But it's a habit that it takes no cognitive load, but this would be so much harder if we have to make a decision every morning. So and actually that's the reason why I wear the same thing every day as well. It's just one less decision. I just get up and wear my blue shirt. So I think if you can get that habit, that consistency of studying, then it actually feels easier. So yeah, it's kind of amazing. In my own life, I play guitar every day for, I force myself to at least for five minutes play guitar. It's a ridiculously short period of time. But because I've gotten into that habit, it's incredible what you can accomplish in a period of a year or two years. You can become exceptionally good at certain aspects of a thing by just doing it every day for a very short period of time. It's kind of a miracle that that's how it works. It adds up over time. Yeah. And I think it's often not about the burst of sustained effort and the all-nighters, because you could only do that a limited number of times. It's the sustained effort over a long time. I think reading two research papers is a nice thing to do, but the power is not reading two research papers. It's reading two research papers a week for a year. Then you've read a hundred papers and you actually learn a lot when you read a hundred papers. So regularity and making learning a habit. Do you have general other study tips for particularly deep learning that people should, in their process of learning, is there some kind of recommendations or tips you have as they learn? One thing I still do when I'm trying to study something really deeply is take handwritten notes. It varies. I know there are a lot of people that take the deep learning courses during commutes or something where it may be more awkward to take notes. So I know it may not work for everyone, but when I'm taking courses on Coursera, and I still take some every now and then, the most recent one I took was a course on clinical trials, because I was interested in that. I got out my little Moleskine notebook and I was sitting at my desk just taking down notes of what the instructor was saying. We know that that act of taking notes, preferably handwritten notes, increases retention. So as you're watching the video, just kind of pausing maybe and then taking the basic insights down on paper? So there have been a few studies, if you search online, you find some of these studies that taking handwritten notes, because handwriting is slower, as we were saying just now, it causes you to recode the knowledge in your own words more, and that process of recoding promotes long-term retention. This is as opposed to typing, which is fine. Again, typing is better than nothing, and taking a class and not taking notes is better than not taking any class at all. But comparing handwritten notes and typing, you can usually type faster. For a lot of people, you can handwrite notes, and so when people type, they're more likely to just transcribe verbatim what they heard, and that reduces the amount of recoding, and that actually results in less long-term retention. I don't know what the psychological effect there is, but it's so true. There's something fundamentally different about writing, handwriting. I wonder what that is. I wonder if it is as simple as just the time it takes to write is slower. Yeah, and because you can't write as many words, you have to take what they said and summarize it into fewer words, and that summarization process requires deeper processing of the meaning, which then results in better retention. That's fascinating. Oh, and I've spent, I think, because of Coursera, I've spent so much time studying pedagogy. It's actually one of my passions. I really love learning how to more efficiently help others learn. One of the things I do both when creating videos or when we write the batch is I try to think, is one minute spent with us going to be a more efficient learning experience than one minute spent anywhere else? And we really try to make it time efficient for the learners because everyone's busy. So when we're editing, I often tell my teams, every word needs to fight for its life, and if you can delete a word, let's just delete it and let's not waste the learner's time. So it's so amazing that you think that way because there is millions of people that are impacted by your teaching, and sort of that one minute spent has a ripple effect, right, through years of time, which is fascinating to think about. How does one make a career out of an interest in deep learning? Do you have advice for people? We just talked about sort of the beginning, early steps, but if you want to make it an entire life's journey, or at least a journey of a decade or two, how do you do it? So most important thing is to get started. And I think in the early parts of a career, coursework, like the deep learning specialization, is a very efficient way to master this material. So because instructors, be it me or someone else, or Lawrence Moroney, who teaches our TensorFlow specialization, and other things we're working on, spend effort to try to make it time efficient for you to learn a new concept. So coursework is actually a very efficient way for people to learn concepts in the beginning parts of breaking into a new field. In fact, one thing I see at Stanford, some of my PhD students want to jump into research right away, and I actually tend to say, look, in your first couple of years as a PhD student, spend time taking courses because it lays the foundation. It's fine if you're less productive in your first couple of years. You'll be better off in the long term. Beyond a certain point, there's materials that doesn't exist in courses because it's too cutting edge, the course hasn't been created yet, there's some practical experience that we're not yet that good at teaching in a course. And I think after exhausting the efficient coursework, then most people need to go on to either ideally work on projects, and then maybe also continue their learning by reading blog posts and research papers and things like that. Learning process is really important. And again, I think it's important to start small and just do something. Today you read about deep learning, it feels like, oh, all these people are doing such exciting things. What if I'm not building a neural network that changes the world? Then what's the point? Well, the point is sometimes building that tiny neural network, be it MNIST or upgrade to a fashion MNIST, to whatever, doing your own fun hobby project. That's how you gain the skills to let you do bigger and bigger projects. I find this to be true at the individual level and also at the organizational level. For a company to become good at machine learning, sometimes the right thing to do is not to tackle the giant project, is instead to do the small project that lets the organization learn and then build up from there. But this is true both for individuals and for companies. Taking the first step and then taking small steps is the key. Should students pursue a PhD, do you think? You can do so much. That's one of the fascinating things in machine learning. You can have so much impact without ever getting a PhD. So what are your thoughts? Should people go to grad school? Should people get a PhD? I think that there are multiple good options of which doing a PhD could be one of them. I think that if someone's admitted to a top PhD program at MIT, Stanford, top schools, I think that's a very good experience. Or if someone gets a job at a top organization, at a top AI team, I think that's also a very good experience. There are some things you still need a PhD to do. If someone's aspiration is to be a professor at the top academic university, you just need a PhD to do that. But if it goes to start a company, build a company, do great technical work, I think a PhD is a good experience. But I would look at the different options available to someone. Where are the places where you can get a job? Where are the places where you can get a PhD program and weigh the pros and cons of those? So just to linger on that for a little bit longer, what final dreams and goals do you think people should have? What options should they explore? So you can work in industry, so for a large company, like Google, Facebook, Baidu, all these large companies that already have huge teams of machine learning engineers. You can also do within industry, more research groups, like Google Research, Google Brain. You can also do, like we said, a professor in academia. And what else? Oh, you can build your own company. You can do a startup. Is there anything that stands out between those options? Are they all beautiful, different journeys that people should consider? I think the thing that affects your experience more is less, are you in this company versus that company or academia versus industry? I think the thing that affects your experience most is who are the people you're interacting with in a daily basis. So even if you look at some of the large companies, the experience of individuals in different teams is very different. And what matters most is not the logo above the door when you walk into the giant building every day. What matters the most is who are the 10 people, who are the 30 people you interact with every day? So I actually tend to advise people, if you get a job from a company, ask who is your manager, who are your peers, who are you actually going to talk to? We're all social creatures. We tend to become more like the people around us. And if you're working with great people, you will learn faster. Or if you get admitted, if you get a job at a great company or a great university, maybe the logo you walk in is great, but you're actually stuck in some team doing really work that doesn't excite you, and then that's actually a really bad experience. So this is true both for universities and for large companies. For small companies, you can kind of figure out who you'll be working with quite quickly. And I tend to advise people, if a company refuses to tell you who you will work with, someone will say, oh, join us. There's a rotation system. We'll figure it out. I think that that's a worrying answer because it means you may not get sent to, you may not actually get to a team with great peers and great people to work with. It's actually a really profound advice that we kind of sometimes sweep. We don't consider too rigorously or carefully. The people around you are really often, especially when you accomplish great things, it seems the great things are accomplished because of the people around you. So it's not about whether you learn this thing or that thing, or like you said, the logo that hangs up top. It's the people. It's fascinating. And it's such a hard search process of finding, just like finding the right friends and somebody to get married with and that kind of thing. It's a very hard search. It's a people search problem. Yeah. But I think when someone interviews at a university or the research lab or the large corporation, it's good to insist on just asking who are the people, who is my manager? And if you refuse to tell me, I'm going to think, well, maybe that's because you don't have a good answer. It may not be someone I like. And if you don't particularly connect or something feels off with the people, then don't stick to it. That's a really important signal to consider. And actually, in my Stanford class, CS230, as well as an ACM talk, I think I gave like an hour-long talk on career advice, including on the job search process and some of these. So you can find those videos online. Awesome. I'll point people to them. Beautiful.