Welcome to NVIDIA's AI podcast, where we discuss all things related to artificial intelligence, machine learning, and deep learning.
To help us do that today, we have Will Ramey, who is the Director of Developer Marketing here at NVIDIA.
Will, welcome. Thanks for having me. Okay, AI is everywhere.
Wherever you look, read, listen... Artificial intelligence seems to be having a huge moment, and yet I thought this was something that was about 50 years old.
So, Will, I want to... to know why today?
Why is there everyone so excited about AI?
Well, there are a couple of things that maybe six or seven years ago really started coming together.
And the first of those was some new algorithms for doing EA.
But even before that, maybe it makes sense to talk about where we came from.
Right. Yeah, because artificial intelligence was one of those things that it sounded cool, but there was a period where it didn't really work so well, huh?
Yeah, exactly. So 50, 60 years ago, artificial intelligence was a research topic.
It was something that people in academia and maybe a few industry and government organizations were kind of looking into to see if they could create machines that were able to perform tasks at human levels of accuracy.
And some of the dreams from that period of time of – androids and robots and machines that could function as well as or maybe even better than humans, they generated a lot of scary movies. and interesting sci-fi books, but they didn't really come to pass.
And there were a number of reasons for that.
In part because we probably just didn't have a good understanding of how humans think and reason. at least not well enough to boil it down into practice in a machine.
But also it turns out that there are some really tremendously complex processes computational tasks or thinking tasks that are necessary to do that kind of work.
Was the original research, was it truly to develop this sort of brain in a box, you know, was it to recreate the human intelligence or was it something different?
And how did people talk about it back when it was sort of forming?
Well, you know, a lot of that research is older than I am, but my understanding is that some people had that as the vision, as the eventual goal.
But as with most things in science, they had to start with baby steps.
They had to start with incremental approaches to how could we figure out how this kind of thing could actually work.
The first examples of artificial intelligence being used were based on trying to solve games, What are some of the simplest logic-based rule set type applications that we could do?
And so you saw people who were training machines and eventually computers to play checkers and and tic-tac-toe, even before checkers, tic-tac-toe and simple games like that.
You saw people trying to create machines that would fool humans into thinking that they were humans, things like the ELIZA chatbot.
I don't know if you had any experience with that.
But in the early days, you could type something to Eliza and she would write back things like, how does that make you feel? all in an effort to pass what is now known as the Turing Test, proposed by Alan Turing. one of the godfathers of computer science.
And the Turing test goes something like, If you can create a machine that is able to fool a human into thinking that it is a human, then you have achieved some measure of artificial intelligence.
Let's fast forward then. You mentioned that there's all this hope and vision and excitement 50 years ago, but you bump up against some real problems. problems in terms of computation and how the heck are you going to actually get this stuff done.
Right. It turns out that human levels of perception and cognition are actually really complicated.
These are challenging tasks that when you try to implement them in a machine, in a computer, require tremendous amounts of math, tremendous amounts of computation that at the time just weren't practically available, right?
It would take say longer than a human being's lifetime, to be able to perform a very simple task.
Win a game of checkers or something. Exactly, you know, have two computers play a game of checkers and if it takes them, you three to five minutes per move, several minutes per move, then that's not really a practical and certainly not an entertaining prospect.
But now we have, with some advances in artificial intelligence technology, new approaches that weren't available.
50 or 60 years ago, you have computers being able to not only play very, very complicated games, not just chess but games like Go, at levels that can actually win games and matches against the best human players ever born.
So let's get into that. I know that there was this really—it was last summer, I believe, where—
A grandmaster was defeated by an AI system in the game of Go, which is far more complex than chess.
But... It gets us to this question of there's artificial intelligence, and then we also hear about machine learning and deep learning.
And oftentimes it seems like they're used almost interchangeably, but they're not the same thing.
So I know, for example, that You know, it was a deep learning program that trained this system, artificial intelligence system, to win at Go, but what's the difference?
When Google's AlphaGo system went up against Lee Sedol, the grandmaster of the game of Go, they used this technology called deep learning.
And deep learning is a technology. It's a relatively new technology that falls within the realm of machine learning. where machine learning is one approach to implementing artificial intelligence.
There have been many different paths towards artificial intelligence that have been explored by scientists over the years.
And this machine learning approach is one that really back in the 1980s happened. started to show a lot of promise.
You may have experienced this personally in your email spam filter, for example.
And the idea was, instead of trying to hard code all the logic and the rules and the decision trees, that were used in earlier approaches to artificial intelligence.
The sort of if this, then that approach.
Exactly. Those kinds of logic rules of which you can just imagine there's infinite number of them, right?
Yeah. For all the different types of decisions that you need to make.
The idea was to try to teach computers how to make those decisions, how to perceive, understand, and make sense of the world in the same way that human beings... would do.
And so in the case of the early applications of machine learning to things like an email spam filter and many other applications, The idea was to show the computer, use examples of email that was spam or that was appreciated by the recipient... and an email that they said they didn't want and marketed as spam.
And you can imagine that In some absolute terms, there's email that's absolutely spam.
Anything with like Viagra spelled any way you could spell Viagra. or anything from a Nigerian prince or trying to get a princess out of a third world country is spam. and teaching a computer how to recognize those things, not based on logic rules, but based on giving it examples and having it learn from those examples over time was the fundamental sort of new approach that machine learning introduced to the field of artificial intelligence.
So in that context, of spam, it's keywords and kind of context, right?
It's keywords in relationship to each other and or maybe I like Nigerian princesses what I think about it too, right?
Right, and you know, some of it you can be, in the case of an email spam filter, sometimes the decision is absolute, like this is absolutely spam, and sometimes it's relative to how the person who is receiving it actually whether they want it or not.
So that's an example of machine learning.
How does that get us then to deep learning?
So machine learning is great for what it did and what it does, but there are some limitations in terms of the huge amounts of data and the variety of tasks that we were successful in figuring out how to teach it how to do.
There was a group of researchers at the University of Montreal and New York University and other universities institutions that continued pushing on one particular technique, one technology within machine learning that was using what they called neural networks.
It's basically a structure of algorithms and connections between those algorithms that can learn different features and characteristics over time. and use those to basically characterize or make predictions or things like that.
And this group of researchers that was working on this technology decided to push their research further than anyone had gone before in terms of building larger, deeper structures of neural networks.
And let me just ask you this. When you say neural networks, it sounds like you're talking about a brain, right?
Neurons, neurons. Is that the way we should picture it?
Like synapses connecting or... Yeah, that's a good sort of starting point to think about it.
You know, the human brain is, in some ways, you could think of it as a biological network.
And so it has kind of all of that... sort of messiness of biology and millions of years of evolution where things sort of get more complicated over time The neural networks that these researchers were working with were much, much simpler and much, much better ordered.
So for example, inside your biological brain, you have your neurons and your synapses that send signals back and forth to each other.
And we understand a little bit about how they work, at least enough to be inspired by that type of design.
And the artificial neural networks, if you will, that are used in computational machine learning and deep learning. are more structured in that the individual neurons, or nodes as they're called, are organized into layers.
And so each layer receives their information, their inputs, performs some kind of computation, some calculation on it, and then has some outputs that they push forward to the next layer, and so on and so forth.
And so when we talk about a deep neural network, we're talking about neural networks that have many, many layers deep. for the data and the computation to flow through as they flow from one end to the other.
And there are all sorts of different shapes and sizes and what we call topologies of neural networks where sometimes... a deeper layer will have a feedback into a higher up layer and things like that.
But in the simplest case, it's really layers of these nodes, you could think of them as neurons, and connections between each node in one layer two nodes in the next layer feeding information forward.
These researchers were using these deep neural nets and making them deeper and deeper, how did they, what kinds of answers were they getting?
And again, what kinds of issues were they bumping up against?
So they were actually having some really interesting results from from applying these deep neural networks to challenges like image classification.
So say, for example, you show show a computer an image it's never seen before, and what can it tell you about that image?
What can it perceive? Is it a picture of a person or an animal or a forest?
Or maybe it's a composite picture of people in a forest next to a river, et cetera.
And that was some of the initial work they were doing in what's called image classification.
And the simplest examples of that would be to just show it a picture of, well, something that we've probably all experienced today on a service like Facebook When you upload pictures, it automatically detects the names of the people in the photographs.
It's using facial recognition. And in order to do that, it first has to look at your picture and figure out what areas of the picture are actually a face or a human face.
And then for each face, it has to figure out who is that person based on information you've told it before about these are examples of people I've already seen.
So it learned it, I helped it learn my friends is what you're saying.
Absolutely. I don't know if you remember this, but in the early days of Facebook, every time you had a picture of a friend, you had to click on it Like they could say this is a face of a person, but they didn't know who it was.
You had to go in and type in who it was.
Now you've done that enough times and they've done that enough times and everybody else who knows that person has done it enough times that they're able to recognize who that person is.
That's the training aspect or learning aspect of these neural nets.
Yeah. And you can do it a little bit by little bit over time or a much more powerful way to do that if you have all the data in one place. is to put together a collection of examples for which you already know the answer.
Use those examples to train the neural network, and when it makes correct... classifications, you reward the neural network.
And when it makes an incorrect classification, then you don't exactly punish it, but you sort of weaken You weakened the parts of the neural network that made the wrong guess. if you will.
And so over time, it can develop a very high level of accuracy.
It's kind of like, well, you have kids, right?
Yes, I do. And you have a car? Yeah. I do, yes.
At least for now, right? Yeah, right. Last I checked.
You may relate to this. When my son was young, he was fascinated by any kind of vehicle on the road.
Cars, trucks, buses, motorcycles, you know, anything with wheels.
He absolutely loved it. And, you know, he's a pretty young guy and he's looking at it and he points and he goes...
Look, that's a truck. Actually, he was little.
He'd say, tuck, tuck, daddy, tuck. And sometimes it was a truck.
And I'd say, yeah, it's a truck. Good job, buddy.
And other times it would be a car. I'd say, well, actually, that's a car.
Or, actually, you know what, that's a dump truck.
And he was pretty sure a motorcycle wasn't a truck at that point.
He's like, truck? You know, he'd ask. And I'd say, no, that's a motorcycle, right?
And so over time, pretty quickly, like within the period of a month or two, he... completely mastered the names of all the vehicles that he would see driving down the road.
He was super proud of himself at the time, but now, if we wanted to train a deep neural network how to perform that same image classification task, We would collect a group of images for which we knew the answer, cars, trucks, buses, motorcycles.
And we would show each of those images to a deep neural network.
It would perform some math that sort of transformed that image into the characteristics and the features and sort of a basic understanding of it.
And the output from the neural network would be a list of what's called a confidence vector. which is basically just a prioritized list of, I'm 90% sure this is a car.
I'm 5% sure this is a truck. I'm 2% sure that this is a bus, et cetera.
And that's all the neural network really needs to do, because then the rest of the software application can look at that and say, well, if the neural network is more than 90% confident or 90% or more confident, then I'm going to go with it and say, that's a car.
A neural network can sort of solve a problem, recognize something, or...
I don't know. Make a prediction. Analyze sentiment.
There's lots of different applications. So what does it need to get the job done?
So clearly, data has to come in. Somebody needs to engineer or design the network, I guess.
What are the parts that come together to develop these neural networks?
And why are we able to do it now still? Like why is it not stuck in some lab in a university?
That's a really important question. The reason that we're seeing all of this excitement and the rapid adoption of this deep learning approach to artificial intelligence is because we finally had a few years ago, the three key ingredients that have made deep learning practical, that have made the technology practical.
The first was that we just had to have enough data.
You've heard of big data? We had to have enough collections of big data. and have that available in order to train the neural networks.
Because if you don't have examples to teach the neural network in the same way that if there were no cars on the road, I couldn't teach no examples to teach my son the difference between a car, a truck, and a bus.
Yeah, that is a truck. Yeah, that's a track.
Exactly. If you don't have enough examples, there's nothing to learn from.
So the first was we had to have the big data.
The second was this fundamental pioneering research. that was performed to parallelize the algorithms.
Instead of trying to train the neural network in a very serial, sequential process.
Being able to do it in parallel so that you could do many parts of the training all at the same time was a fundamental breakthrough.
And running that parallel computational workload on a CPU alone, even if the CPU had four cores or eight cores or even up to maybe a couple dozen cores, was fast. but it still wasn't quite good enough to make the technology practical.
And so around about the same time, as this was happening, NVIDIA invented the CUDA programming model that made thousands of cores inside a GPU that are designed for parallel processing from the very beginning. available to C and C++ programmers rather than only through graphics APIs.
And that allowed the researchers to take their collections of big data, their parallelized algorithms, and run them on a GPU at orders of magnitude faster than they ever thought was possible.
Some of this technology wouldn't have been possible for them to do during their careers, and now they're able to do the work of the lifetime. actually within their lifetime.
How are we starting to see then deep learning get applied in various realms?
I know one of them is driverless cars, but where else are we starting to see it? a lot of headlines.
It's something that I think affects all of us.
But another area that affects all of us is in medicine. in medical imaging, in drug discovery, in genomics, proteomics, and metabolomics research where we're understanding. beginning to be able to fix and even design some of the most fundamental building blocks of our biology.
If you take medical imaging just as an example, we have lots of really good ways of taking pictures of what's going on inside our body.
There are medical imaging modalities they're called, whether it's ultrasound or x-ray or MRI or CAT scan, things like that.
And today we have mostly human beings, technicians, radiologists, doctors. who are looking at the results of those images and trying to make sense of them.
And they're looking at images. Well, here's an example.
There's a condition that many diabetics can experience called diabetic retinopathy.
It's where in the retina of their eye, there begins to be some problems that will eventually cause them to go blind.
And there is a medicine to treat this condition and prevent them from going blind, but it's only really effective at the very, very early stages of the disease when it is most dangerous. difficult to detect.
And so there was, again, a group of researchers who heard about this deep learning technology and the ability for it to do image classification. they assembled a collection of images of people's eyes both healthy non-diabetics as well as diabetics who eventually suffered from this disease. but they had pictures from the history of those patients from very, very early on in the disease before they knew they had it, when they were going in for tests, but human beings still couldn't quite detect or be confident that this condition was happening.
They use this collection of examples, this training set, to train a deep neural network to be able to very accurately detect this disease at its very earliest stages with high confidence so that they could apply basically prescribe the medicine to the people who really needed it before they even started to lose their vision.
So that's just one example. And it's very similar technology to use it for finding tumors.
A lot of times you can have sort of dense tissue. masses, a lump.
It's hard to detect. And then you don't know, is it a tumor or not?
And then you don't know what stage of tumor is it.
This then implies that And at least at this stage, these deep neural nets are good at what kinds of things?
Like what are they really better at than we are, for example?
Well, there's two metrics that you use for measuring the accuracy of neural networks.
In some situations, you're able to measure the performance the accuracy of a neural network against some absolute truth.
In other cases, you're able to measure them against the performance of human beings or the performance of average human beings on the same type of task.
For example, if you showed me a picture of 100 dogs and asked me, which of them has a little bit of wolf?
And the dog. I'd be kind of hard. I could probably guess.
You know, the ones that look a little more husky-ish probably have more.
But it'd be hard for me to guess. Well, it turns out that's a thing where you might, even if you know the absolute truth, it might... be valuable to compare the performance of the neural network against the average human level of performance. perhaps against the expert human level of performance and also against the sort of the absolute truth because the value of neural networks comes into play when they're able to give us better results. but also in many cases if they're able to more rapidly process data.
So maybe they could be used as a first pass filter on information and then only pass on the subset of that information that a human being expert really needs to look at.
So it can be used as a tool to help human beings really deal with this huge amount of big data that's accumulating in the world, and highlighting, for example, PayPal is now using deep neural networks to help them detect fraud in their system.
I don't know exactly how the fraud is performed and maybe I don't want to, but they have hundreds and hundreds of different characteristics and how long it takes people to click and how long – money is being transferred from where to where and things like that that they monitor all the time.
It's a huge amount of data. And they have some computers looking at it and some humans looking at it.
And it's really valuable to them to have a high accuracy machine using deep learning and other technologies to identify the possible instances of fraud for then a human being, an investigator, a professional expert, to go look at it and validate whether it's actually fraud or not.
And over time, as they're able to confirm exactly which cases are are problematic, they'll be able to put more automation in place to automatically detect and hopefully prevent that kind of behavior from happening in the first place.
And the human beings will still be able to perform a supervisory role and to continue to make the observations that make the automation even more effective.
Do you see a time where deep learning and machine learning, and I guess Facebook's a good example already, which is we use it every day and we may not know it, but does... it get applied as it becomes, I suppose, maybe this is the wrong word, easier and easier, and as more and more data is available,
Does it get applied to sort of most things?
Is it applied to the food that gets served on my table and how I prepare it or how I get it?
Is everything going to get imbued with it, whether it's from a systems perspective or just a small slice?
Well, we've seen examples of people using this deep learning technology to do everything from, you mentioned food, so increasing crop yields.
And in that particular case that I'm thinking of, they put little cameras on on the back of the tractors that were going through the fields spraying pesticide.
And instead of spraying a thin layer of pesticide across everything, they use the cameras to very quickly do deep neural network powered image classification and distinguish the difference between the good plants and the weeds And then deliver targeted micro doses of pesticide only to the weeds that were competing for the resources that the food plants. needed to grow more food for us.
So that's a case of deep learning helping us with food.
There are other examples, maybe the far other end of the spectrum, of helping us with retail and digital marketing.
Understanding, if you go to an online store, And it knows what you've purchased previously.
And it might know a little bit about where you live, like what the weather is there and things like that. based on where you've had your product shipped, it could make a recommendation.
The store's motivation is to sell more product, but they only get to sell more product if they... actually make a helpful and useful recommendation.
And so using this technology to make more effective or basically recommend products that I actually want is something that should be a win-win for both the consumer and the retailer.
How can more people, if they want to get their feet wet or their neural nets wet, How can they get involved or how can they learn more?
Great question. So one of the things that is really exciting about this new technology is that A lot of universities and commercial organizations and governments have now heard of it, realize its importance, and are investing in the training and education programs to help people learn how to use it and apply it in powerful ways.
At NVIDIA, we have created what we call the Deep Learning Institute.
Last year we delivered over 16,000 hours of hands-on training to people in the field of deep learning. and we're on track to do more than double that this year.
We've also announced partnerships with online education services like Udacity, Coursera, Microsoft, and are exploring other partnerships with organizations that want to be involved in teaching more people how to take advantage of deep learning.
So if you want to understand more, if you want to go out and figure out how to build your own neural net, that's one way to go.
Absolutely. We have the training and the tools are available via our website.
As I understand it, then deep learning is this task-based... approach to this problem or computer science and these systems.
But is there a more generalized approach to AI?
I know it sort of The field of AI began with this kind of broad idea about Let's create artificial intelligence.
So where is that more broad application these days?
You know, that's a great question. There's...
There's always been... in the field of artificial intelligence, this idea that we might reach what's called full general artificial intelligence, that is, creating a machine intelligence that has the same level of capabilities of a human being in all respects,
And likely, if you can achieve that same level, then even far beyond exceeding human levels of intelligence.
And so there is that idea in the world so far.
This type of deep learning and machine learning approach to artificial intelligence shows no sign of... of reaching that kind of application.
It's really very task based. So specific things like classifying different types of images, detecting an object within an image, predicting what's going to happen next based on a series of previous events, like what you purchased, what you'd like to buy next. analyzing the sentiment or some characteristic of a tweet or of a video or of an email or something like that.
These are all very, very specific tasks.
And the other thing to keep in mind is that just because I have a deep neural network that's been trained to, say, tell the difference between... different kinds of vehicles on the road.
That's very specific to classifying vehicles on the road.
You can't turn that around and say, tell me the difference between all these different breeds of dog.
Totally different thing. And in fact, you can't even take a neural network that's been trained to tell me all the different breeds of dog and have it tell me the difference between a dog, a cat, and a raccoon.
So very specific tasks. There is some really interesting work.
In fact, this is Baidu. is doing some really interesting work in speech recognition, both in English and in Chinese, which is, as you know, it's a tonal language, so it's very complicated for us English learners. speakers to make sense of.
But they've done some really, really interesting work in speech recognition.
And part of that is also if you just have someone talking and you don't know what language they're speaking yet, you might need to determine which language they're speaking first before you can figure out what they're actually saying.
And so there's an example where you can take a deep neural network that is trained to distinguish the difference between English, Japanese, Chinese, Korean, German, etc., And then based on the result of that first neural network, feed the same audio, the same speaking, into another neural network that's been designed for that specific language.
You pass it on to the next thing I see. Exactly.
So you could imagine... like chaining these neural networks together, connecting them together to perform more sophisticated tasks.
But then you're back to the old sort of pre-machine learning artificial intelligence approach of building these logic trees and connecting everything together.
You just have... more powerful decision points and so that that also doesn't seem to be So general purpose AI, I see it.
You can see the progression where let's say you get into a driverless car and you want to take a ride and you speak Mandarin.
So it translates to Mandarin to know where you want to go, and then it translates to the car, and okay, then you're on the way.
So it passes from the to the translation, to the, okay, now drive me there.
Right, and I think, you know, for people who take the time to understand this technology, it's going to be just a very fascinating and interesting time to live as a lot of these applications come to market.
For people who don't take the time to understand the technology, it's going to feel like a more magical world.
You're going to have systems that anticipate your needs.
You're going to have systems that can automatically tell the difference between different types of things.
You're going to have systems that can probably determine your mood.
There's a really exciting project I saw where the researchers put a camera behind the mirror in the bathroom, And it was using a neural network that's been trained in the early detection of skin cancer.
So you basically have like a home diagnostic tool that says, hey, you better go have that checked out.
Right. I was afraid it was going to say, hey, you have a meeting, you better shave.
I might need one of those myself. Well, Will, Ramey, thank you so much for joining us.
Thanks for having me. PostScript here. If you are listening to this podcast on iTunes, Google Play Music, or whatever your favorite podcast player is, do us a favor and leave us a review.
Thanks for listening.