Machine Learning – CS50 Podcast, Ep. 6

Machine Learning – CS50 Podcast, Ep. 6

SPEAKER: This is CS50. [MUSIC PLAYING] DAVID MALAN: Hello world. This is the CS50 podcast. My name is David Malan. And I’m here with CS50’s
own Colton, no Brian Yu. BRIAN YU: Hi everyone. DAVID MALAN: So Colton could
no longer be here today. He’s headed out west. But I’m so thrilled that
CS50’s own Brian Yu’s, indeed, now with us for our discussion
today of machine learning. This was the most asked about
topic in a recent Facebook poll that CS50 conducted. So let’s dive right in. Machine learning is certainly all
over the place these days in terms of the media and so forth. But I’m not sure I’ve really
wrapped my own mind around what machine learning is and what its
relationship to artificial intelligence is. Brian, our resident expert, would you
mind bring me and everyone up to speed? BRIAN YU: Yeah, of course. Machine learning is
sometimes a difficult topic to really wrap your
head around, because it comes in so many different
forms and different shapes. But, in general, when I think
about machine learning, the way I think about it is how a
computer is performing a task. And usually when we’re programming
a computer to be able to do a task, we’re giving it very explicit
instructions– do this. And if this is true, then do
that or do this some number of times using a for loop, for example. But in machine learning, what we do
is, instead of giving the computer explicit instructions
for how to do something, we, instead, give the
computer instructions for how to learn to do something on its own. So instead of giving it instructions
for how to perform a task, we’re teaching computer
how to learn for itself and how to figure out how to
perform some kind of task on it. DAVID MALAN: And I do feel like
I hear about machine learning and AI, artificial intelligence,
almost always in the same breath. But is there a distinction
between the two? BRIAN YU: Yeah, there is. So artificial intelligence or AI
is usually a little bit broader. It used to describe any situation
where a computer is acting rationally or intelligently. Machine learning is a
way of getting computers to act rationally or intelligently
by learning from patterns and learning from data and being
able to learn from experiences. But there are certainly forms of AI
of being able to act intelligently that don’t require the computer to
actually be able to learn, for example. DAVID MALAN: OK. And I feel like I’ve certainly heard
about artificial intelligence, AI, especially for at least 20 years, if
not 30 or 40, especially in the movies or anytime there’s some
sort of robotic device. Like, artificial intelligence has
certainly been with us for some time. But I feel like there’s
quite the buzz around machine learning, specifically these days. So what is it that has changed in
recent months, recent years that put this at the top of this poll,
even among CS50’s own students? BRIAN YU: Yeah, so a couple of
things have changed, certainly. One has definitely been just an
increase in the amount of data that we have access to– the big
companies that have a lot of data from people on the internet that are
using devices and going on websites, for instance. There’s a lot of data that
companies have access to. And as we talk about
machine learning, you’ll soon see that a lot of the way that
these machine learning algorithms work is that they depend upon
having a lot of data from which to draw understanding
from and to try and analyze in order to make predictions or
draw conclusions, for example. DAVID MALAN: So, then,
is it fair to say, because I have more familiarity
myself with networking and hardware and so forth that because we just have
so much more disk space available to us now and such higher CPU rates at which
machines can operate that that’s partly what’s driven this that we now
have the computational abilities to answer these questions? BRIAN YU: Yeah, absolutely. I would say that’s a
big contributing factor. DAVID MALAN: So if we
go down that road, like, at what point are the algorithms
really getting fundamentally smarter or better, as opposed to
the computers just getting so darn fast that they can just
think so many steps ahead and just come up with a compelling
answer to some current problem quicker than, say, a human? BRIAN YU: Yeah, it’s a good question. And the algorithms that we have
right now tend to be pretty good. But there’s a lot of
research that’s happening in machine learning
right now about like, trying to make these algorithms better. Right now, they’re pretty accurate. Can we make them even more accurate,
given the same amount of data? Or even given less data–
can we make our algorithms able to be able to perform tasks
effectively just as effectively? DAVID MALAN: OK, all right. Well, so I feel like the
type of AI or machine learning that I grew up with
or knew about or heard about was always related to, like, games. Like, chess was a big one. I knew Google made a big splash
with Go some years ago– the game, not the language– and then
video games more generally. Like, if you ever wanted to play
back in the ’80s against the “CPU,” quote, unquote, I’m pretty sure it
was mostly just random at the time. But there’s certainly
been some games that are ever more sophisticated
where it’s actually really hard to beat the computer or
really easy to beat the computer, depending on the settings you choose. So how are those kinds
of games implemented when there’s a computer playing the human? BRIAN YU: Yeah, so this an
area, a very development in the last couple of decades that 30
years ago was unimaginable probably that a computer could beat a
human at chess, for example. But now, the best computers can
easily beat the best humans. No question about it. And one of the ways that you do this
is via form of machine learning known as reinforcement learning. And the idea of this is just letting
a computer learn from experience. So if you want to train a
computer to be good at chess, you could try and give
it instructions about you thinking of strategies yourself as
the human and telling the computer. But then the computer can only
ever be as good as you are. But in reinforcement
learning, what we do is, you let the computer play
a bunch of chess games. And when the computer loses, it’s
able to learn from that experience, figure out what to do and then in
the future, know to do less of that. And if the computer wins, then whatever
it did to get to that position, it can do more of that. And so you imagine just having
a computer play millions and millions and millions of games. And eventually, it starts to build
up this intelligence, so to speak, of knowing what worked
and what didn’t work. And so in the future of being
able to get better and a better at playing this game. DAVID MALAN: So is this all that
different from even the human and the animal world
where, like, if humans have tried to domesticate animals
or pets where you sort of reinforce good behavior positively and negatively
reinforce, like, bad behavior? I mean, is that essentially what
we’re doing with our computers? BRIAN YU: Yeah, it’s
inspired by the same idea. And when a computer does something
right or does something in the works, you give the computer a reward, so to
speak, is what people actually call it. And then there’s the penalty if the
computer isn’t able to perform as well. And so you just train the computer
algorithm to maximize that reward, whether that reward is the result of
like winning a game of chess or a robot being able to move a
certain number of paces. And the result is that
with enough training, you end up with a computer that
can actually perform the task. DAVID MALAN: Fascinating. So I feel like another
buzzword these days is, like, smart city where somehow, cities
are using computer science and using software more sophisticatedly. And I gather that you can even
use this kind of reinforcement learning for, like, traffic
lights, even in our human world? BRIAN YU: Yeah. So traffic lights traditionally
are just controlled by a timer that after a certain number of
seconds, the traffic light switches. But recently, there’s been growth in,
like, AI-controlled traffic lights where you have traffic lights that
are connected to radar and cameras. And that can actually
see, like, when the cars are approaching in different places– what times of day they tend to approach. And so you can begin to,
like, train an AI traffic light to be able to predict,
all right, when should I be switching lights and maybe even
having traffic lights coordinated across multiple intersections
across the city to try and figure out what’s the best
way to flip the lights in order to make sure that people are able to
get through those intersections quickly. DAVID MALAN: So that’s
pretty compelling, because I’m definitely in
Cambridge, been, like, in a car and stopped at a traffic light. And there’s, like, no one around. And you wish it would just
notice either via sensor or timer or whatever that, like, this is
clearly not the most efficient use of, like, anyone’s time. So that’s pretty amazing that it could
adapt sort of seamlessly like that. Though, what is the
relationship between AI and the buttons that the
humans pushed across the street that according to
various things I’ve read are actually placebos and don’t
actually do anything and in some cases, aren’t even connected to wires. BRIAN YU: I’m not actually sure. I’ve also heard that
they may be placebos. I’ve also heard that, like, the
elevator close button is also a placebo that you press that. And it sometimes doesn’t actually work. DAVID MALAN: Yes, I’ve read
it even, which not necessarily authoritative source. There is, like, a photo
where someone showed a door close button had fallen off. But there was nothing behind it. Now, could have been photoshop. But I think there’s evidence
of this, nonetheless. BRIAN YU: It might be the case. I don’t think there’s
any AI happening there. But I think it’s more just psychology
of the people and trying to make people feel better by giving
them a button to press. DAVID MALAN: Do you push the button
when you run across the street? BRIAN YU: I do usually push the button
when I want to cross the street. DAVID MALAN: This is such a big scam,
though, on all of us it would seem. BRIAN YU: Do not push the button? DAVID MALAN: No, I do,
because just, what if? And actually it’s so
gratifying, because there’s a couple places in
Cambridge, Massachusetts where the button legitimately works. When you want to cross the
street, you hit the button. Within half a second, it
has changed the light. It’s the most, like,
empowering feeling in the world because that never happens. Even in an elevator, half the time
you push it, like, nothing happens, or eventually it does and is
very good positive reinforcement to see the traffic lights changing. I’m very well behaved– the
traffic lights as a result. OK, so more recently,
I feel like, computers have gotten way better at some
technologies that kind of sort of existed when I was a kid,
like, handwriting recognition. There was the palm
pilot early on, which is like a popular PDA or personal digital
assistant, which has now been replaced with Androids and iPhones and so forth. But handwriting recognition is a
biggie for machine learning, right? BRIAN YU: Yeah, definitely. And this is an area that’s
gotten very, very good. I mean, I recently have
just started using an iPad. And it’s amazing that I can
be taking handwritten notes. But then my app will let me,
like, search for them by text that it will look at my
handwriting, convert it to text so that I can search through it all. It’s very, very powerful. And the way that this
is often working now is just by having
access to a lot of data. So, for example, if you
wanted to train a computer to be able to recognize handwritten
digits, like, digits on a check that you could deposit
virtually now, like, my banking app can
deposit checks digitally. What you can do is give the
machine learning algorithm a whole bunch of data, basically
a whole bunch of pictures of handwritten numbers
that people have drawn and labels for them associated
with what number it actually is. And so the computer can learn from
a whole bunch of examples of here are some handwritten ones, and
here are some handwritten twos, and here’s some handwritten threes. And so when a new handwritten
digit comes along, the computer just learns from
that previous data and says, does this look kind of like the ones,
or does it look more like the twos? And it can make an assessment
as a result of that. DAVID MALAN: So how can
we humans are sometimes filling out those little captchas– the little challenges on websites
where they’re asking us, the humans, to tell them what something says? BRIAN YU: Yeah. Part of the ideas that the captchas
are trying to prove to the computer that you are, in fact, human. They’re asking you to
prove that you’re a human. And so they’re trying to give you a
task that a computer might struggle to do, for instance, like, identify
which of these images happened to have, like, traffic lights
in them, for example. Although nowadays, computers
are getting pretty good at that that they using machine
learning techniques they can tell which of
them are traffic lights. DAVID MALAN: Yeah, exactly. I would think so. BRIAN YU: And I’ve also
heard people talk about it. I don’t don’t, action,
if this is true that you can use the results of these captchas
to actually train machine learning algorithms that when you are
choosing which of the images have traffic lights in them,
you’re training the algorithms that are powering, like,
self-driving cars, for instance, to be able to better assess whether
there are traffic lights in an image, because you’re giving
more and more of this data that computers are able to draw from. So we’ve heard that too. DAVID MALAN: It’s interesting
how these algorithms are so similar to presumably
how humans work, because, like, when you and I learned how to
write text, whether it was in print or cursive, like, the teacher just shows
us, like, one canonical letter A or B or C. And yet, obviously,
like, every kid in the room is probably drawing that A or B
or C a little bit differently. And yet, somehow, we humans just kind
of know that that’s close enough. So is it fair to say, like, computers
really are just kind of doing that? They are just being
taught what something is and then tolerating variations, thereof? BRIAN YU: Yeah, that’s
probably about it. One of the inspirations
for machine learning really is that the types of
things that computers are good at and the types of things
that people are good at tend to be very, very different. But, like, computers can very easily
do complex calculations, no problem, when we might struggle with it. But a problem, like,
identifying that in a picture, is there a bird in the
sky or not, for example? That’s something that for a long time,
computers really struggled to do, whereas, it’s easy for a child to be
able to look in the sky and tell you if there’s a bird there. DAVID MALAN: Oh, I was just going
to say, I could do that probably. OK. So if this is supervised learning,
and handwriting recognition’s one, like, what other types of
applications fall under this umbrella? BRIAN YU: Yeah, so
handwriting recognition counts as supervised learning,
because it’s supervised in the sense that when we’re providing
data to the algorithm, like the handwritten numbers, we’re also
providing labels for that data, like, saying, this is the number
one– this is the number two. That way, the computer is
able to learn from that. But this shows up all over the place. So, for instance, like,
your email spam filter that detects automatically
which emails are spam and puts them in the spam mailbox,
it’s trained the same way. You basically give the computer a
whole bunch of emails– some of which you tell the computer these are
real emails that are good emails. And here, these are some other
emails that are spam emails. And the computer tries to learn the
characteristics and the traits of spam email so that when a
new email comes about, the computer is able to
make a judgment call about, do I think this is a nonspam,
or do I think it’s a spam email? And so you could get it to
classify it in that way. So this kind of classification
problem is a big area and supervised. DAVID MALAN: And is that what
is happening if you use gmail, and you click on an email
and report it as spam, like, you’re training gmail to
get better at distinguishing? BRIAN YU: Yes. You can think of that as a form of
reinforcement learning of the computer learning from experience. DAVID MALAN: Good boy. BRIAN YU: You tell the
computer that it got it wrong. And it’s now going to try and
learn to be better in the future to be able to more accurately
predict which emails are spam or not spam based on what you tell it. And gmail has so many
users and so many emails that are coming to the inbox every
day that you do this enough times. And the algorithm gets pretty good at
figuring out whether an email’s spam or not. DAVID MALAN: It’s a little creepy that
my inbox is becoming sentient somehow. OK, so if there’s supervised
learning, I presume there’s also unsupervised learning. Is there? BRIAN YU: Yeah, there absolutely is. So supervised learning
requires labels on the data. But sometimes, their data
doesn’t always have labels. But you still want to be able to take
a data set, give it to a computer and get the computer to tell you
something interesting about it. And so one common example of this is
for when you’re doing consumer analysis, like, when Amazon is trying to
understand its customers, for instance, Amazon might not know all the
different categories of customers that there might be. So it might not be able to
give them labels already. But you could feed a whole bunch
of customer data to an algorithm. And the algorithm could group customers
into similar groups, potentially, based on the types of products
they’re likely to buy, for example. And you might not know in
advance how many groups there are or even what the groups are. But the algorithm can get
pretty good at clustering people into different groups. So clustering is a big example
of unsupervised learning. That’s pretty common. DAVID MALAN: So how different is that
from just, like, exhaustive search if you sort of label every customer
with certain attributes– what they’ve bought, what time they’ve bought
it, how frequently they’ve bought it and so forth? Like, isn’t this really just
some kind of quadratic problem where you compare every customer’s
habits against every other customers habits, and you can,
therefore, exhaustively figure out what the commonalities are? Like, why is this so intelligent? BRIAN YU: So you could
come up with an algorithm to say, like, OK, how close together are
two particular customers, for instance, in terms of how many things that
they’ve bought in common, for instance, or when they’re buying
particular products? But if you’ve got a
lot of different users that all have slightly different habits,
and maybe some groups of people share things in common with other groups but
then don’t share other characteristics in common, it can be tricky to be
able to group an entire user base into a whole bunch of different
clusters that are meaningful. And so the unsupervised
learning algorithms are pretty good at trying to
figure out how you would actually cluster those people. DAVID MALAN: Interesting. OK. And so this is true for things I know in
radiology, especially these days, like, computers can actually not only
read film, so x-rays and other types of images of human bodies. They can actually identify
things, like, tumors now, without necessarily knowing what
kind of tumor they’re looking for. BRIAN YU: Yeah. So one application of unsupervised
learning is, like a anomaly detection, given a set of data, which
things stand out as anomalous. And so that has a lot
of medical applications where if you’ve got a whole bunch of
medical scans or images, for instance, you could have a computer
just look at all that data and try and figure out which are the
ones that don’t quite look right. And that might be worth
doctors taking another look, because potentially, there
might be a health concern there. You see the exact same type of
technology and finance a lot when you’re trying to detect,
like, which transactions might be fraudulent transactions, for instance. Out of tons of transactions,
can you find the anomalies? The things that sort of stand
out is not quite like the others. And these unsupervised
learning algorithms can be pretty good at picking out
those anomalies out of a data set. DAVID MALAN: So what kind of
algorithm triggers a fraud alert? Almost every time, I tried to
use my credit cards for work. BRIAN YU: That one is, I don’t really
know what’s going on with that. I know the credit card will often
trigger an alert if you’re outside of an area where you normally are. But the details of how those
algorithms are working– I couldn’t really tell you. DAVID MALAN: Interesting. Common frustration when we
do travel here for work. OK, so it’s funny, as you
described unsupervised learning, it occurs to me that,
like, 10, 15 years ago when I was actually doing my
dissertation work for my PhD, which was, long story short, about
security and specifically, how you could with software detect
sudden outbreaks of internet worms, so malicious software that can
spread from one computer to another. The approach we took at the
time was to actually look at the system calls–
the low-level functions that software was
executing on Windows PCs and look for common patterns of
those system calls across systems. And it only occurs to me, like, all
these years later that arguably, what we were doing in
our team to do this was really a form of machine learning. I just think it wasn’t very
buzz worthy at the time to say what we were doing
was machine learning. But I kind of think I know
machine learning in retrospect. BRIAN YU: Yeah, maybe. I mean, it’s become so common nowadays
just to take anything and just tack on machine learning to it to
make it sound fancier or sound cooler than it actually is. DAVID MALAN: Yes. That, and I gather statistics is now
called data science, essentially, perhaps, overstating though. So certainly all the rage,
though, speaking of trends is, like, self-driving cars. In fact, if I can cite another
authoritative Reddit photo– and this one I think actually
made the national news. What is it about AI that’s suddenly
enabling people to literally sleep behind the wheel of a car? BRIAN YU: Well, I don’t think people
should be doing that quite yet but– DAVID MALAN: But you do eventually. BRIAN YU: Well. So self-driving technology is
hopefully going to get better. But right now, we’re in sort
of a dangerous middle ground that cars are able to do more
and more things autonomously. They can change lanes on their own. They can maintain their
lane on their own. They can parallel park by
themselves, for example. The consumer ones, at least,
are certainly not at the place where you could just ignore
the wheel entirely and just let them go on their own. But a lot of people are almost
treating cars as if they can do that. And so it’s a dangerous time, certainly,
for these semi-autonomous vehicles. DAVID MALAN: And it’s funny
you mentioned parallel parking. In a contest between you and a computer,
who could parallel park better, do you think? BRIAN YU: The computer would
definitely beat me at parallel parking. So I got my driver’s
license in California. And learning to parallel park is
not on the California driving test. So I was not tested on it. I’ve done it maybe a couple times
with the assistance of my parents but definitely not something
I feel very comfortable doing. DAVID MALAN: But I feel like when I
go to California and San Francisco in very hilly cities, it’s
certainly common to park diagonally against the curb so not parallel, per
se, partly just for the physics of it so that there’s less risk of cars
presumably rolling down the hill. But I feel like in other
flatter areas of California, I have absolutely when
traveling, parallel park. So, like, how is this not a thing? [LAUGHS] I mean, it’s definitely common. People do parallel park. It’s just not required on the test. And so people invariably
learn when they need to. But pretty soon after I
got my driver’s license, I ended up moving across the country
to Massachusetts for college. And so once I got to
college, I never really had occasion to drive a whole lot. So I just never really
did a lot of driving. DAVID MALAN: I will say,
I’ve gotten very comfortable certainly over the
years, parallel parking, when I’m parking on the
right-hand side of the road, because, of course, in the
US, we drive on the left. But it does throw me if
it’s like a one-way street, and I need to park on the left-hand
side, because all of my optics are a little off. So I can appreciate that. So a self-driving car, like a Tesla, is
like the off cited example these days. Like, what are the inputs to that
problem and like, the outputs, the decisions that are being made by
the car just to make this more concrete? BRIAN YU: Yeah. So I guess the inputs are probably
at least two broad categories– one input being all of the
sensory information around the car that these cars have so many
sensors and cameras that are trying to detect what
items and objects are around it and trying to figure all of that out. And the second input being presumably
a human-entered destination where the user probably is typing into
some device on the computer in the car where it is that they
actually want to go. And the output, hopefully is
that the computers or the car is able to make all of the decisions
about when to step on the gas, when to turn the wheel,
and all of those actions that it needs to take to get you
from point A to point B. I mean, that’s the goal of these technologies. DAVID MALAN: Fascinating. It would just really frighten
me to see someone on the road not holding the wheel of the car. This is maybe a little
more of a California thing. Though, other states are
certainly experimenting with this. Or companies in various states are. So my car is old enough that I don’t
so much have a screen in the car. It’s really just me and
a bunch of glass mirrors. And it still blows my
mind in 2019 when I get into a rental car or friend’s
car that even just has the LCD screen with a camera in the back that
shows you, like, the green, yellow, and red markings. And it beeps when you’re
getting too close to the car. So is that machine learning when it’s
detecting something and beeping at you when you’re trying to
park, for instance? Well, I guess you wouldn’t know. BRIAN YU: [LAUGHS] My guess is
that’s probably not machine learning. It’s probably just a
pretty simple logic of, like, try and detect what the
distance is via some sensor. And if the distance is
less than a certain amount, then, beep or something like that. You could try and do it
using machine learning. But probably, simple heuristics are
good enough for that type of thing– would be my guess. DAVID MALAN: So how should people
think about the line between software just being ifs and
else ifs and conditions and loops, versus,
like, machine learning, which kind of takes things up a notch? BRIAN YU: Yeah. So I guess the line comes when it would
be difficult to formally articulate exactly what the steps should be. And driving is a complicated enough
task that trying to formally describe exactly what the steps should be
for every particular circumstance is going to be extraordinarily
difficult, if not impossible. And so then you really
need to start to rely on machine learning to be able
to answer questions, like, is there a traffic light ahead of me? And is the traffic light green or red? And how many cars are ahead
of me, and where are they? Because those are questions
that it’s harder to just program a definitive answer to
just given, like, all the pixels of what the sensor of
the front of the car is seeing. DAVID MALAN: So is that also true
with this other technology that’s in vogue these days of these
always listening devices, so like Siri and hey, Google and Alexa? Like, I presume it’s
relatively easy for companies to support well-defined commands, so
a finite set of words or sentences that the tools just to understand. But does AI come into play or
machine learning coming into play when you want to support
an infinite language, like English or any
other spoken language? BRIAN YU: Yes. So certainly when it comes to
natural language processing, given the words that I have spoken, can
you figure out what it is that I mean? And that’s a problem
that you’ll often use machine learning to be able to try and
get at some sense of the meaning for. But even with those
predefined commands, if you imagine a computer that only supported
a very limited number of fixed commands, we’re still giving those
commands via voice. And so the computer still needs to
be able to translate the sounds that are just being produced in the air
that the microphone is picking up on into the actual words that they are. And there’s usually machine
learning involved there too, because it’s not simple to be
able to just take the sounds and convert them to words,
because different people speak at different paces or have
slightly different accents or will speak in
slightly different ways. They might mispronounce something. And so being able to train
a computer to listen to that and figure out what the words
are, that can be tricky too. DAVID MALAN: So that’s pretty similar,
though, to handwriting recognition? Is that fair to say? BRIAN YU: Probably. You could do it a similar way where
you train a computer by giving it a whole bunch of sounds and what they
correspond to in getting the computer to learn from all of that data. DAVID MALAN: And so why is it
that every time I talk to Google, it doesn’t know what
song I wanted to play. BRIAN YU: [LAUGHS] Well, this technology
is definitely still in progress. There is definitely a lot of room
for these technologies to get better. DAVID MALAN: Those are diplomatic. BRIAN YU: [LAUGHS] I mean,
Siri on my phone half the time. It doesn’t pick up on exactly
what I’m trying to ask it. DAVID MALAN: Oh, for me, it
feels even worse than that. Like, I can confidently set timers,
like set timer for three minutes if I’m boiling some water or something. But I pretty much don’t use it
for anything else besides that. BRIAN YU: Yeah, I think timers I can do. I used to try to, like, if I
needed to send, like, a quick text message to someone, I
used to try and say, like, text my mom that I’ll be at
the airport in 10 minutes. But even then, it’s very hit or miss. DAVID MALAN: Well, even
with you the other day, I sent you a text message verbally. But I just let the audio
go out, because I just have too little confidence in
the transcription capabilities of these devices these days. BRIAN YU: Yeah. Like, the iPhone, now, we’ll try to,
like, transcribe voicemails for you. Or, at least, it’ll make an
attempt to so that you can just tap on the voicemail and see
a transcription of what’s contained in the voicemail. And I really haven’t
found it very helpful. But it can get like a couple of words. And maybe I’ll get a general sense. But it’s not good enough for me to
really get any meaning out of it. That’s tough to listen to voicemail. DAVID MALAN: See, I don’t know. I think that’s actually use case where
it’s useful enough usually for me if I can glean who it’s from,
or what the gist of the messages so then I don’t have to actually
listen to it in real time. But the problem for me when
sending outbound messages is, I want to look like an idiot. They were completely incoherent,
because Siri or whatever technology is not transcribing me correctly. OK. But the dream I have, at
least– one of my favorite books ever was Douglas Adams’
Hitchhiker’s Guide to the Galaxy, where the most amazing
technology in that book is called The Babel fish, where it’s a
little fish that you put in your ear. And it somehow translates
all spoken words that you’re hearing into your
own native language, essentially. So how close are we to being able
to talk to another human being who does not speak the same language but
seamlessly chat with that person? BRIAN YU: I think we’re
pretty far away from it. I think Skype, I think, has
this feature or, at least, it’s a feature that they’ve been
developing where they can try to approximate a real-time translation. And I think I saw a video– DAVID MALAN: I can’t even talk
successfully to someone in English on Skype. BRIAN YU: Yeah. So I think the demo is pretty good. But I don’t think it’s, like,
commercially available yet. But translation technology
has gotten better. But it’s certainly still not good. One of my favorite types of YouTube
videos that I watch sometimes are people that will, like, take a
song and their lyrics of the song and translate it into another language
and translate back into English. And the lyrics just
get totally messed up, because this translation technology
is, it can approximate meaning. But it’s certainly far from perfect. DAVID MALAN: That’s kind of like
playing operator in English where you tell someone something, and
they tell someone something, and they tell someone– someone. And by the time you
go around the circle, it is not at all what
you originally said. BRIAN YU: Yeah, I think I played
that game when I was younger. I think we called it telephone. We call it operator? DAVID MALAN: Yeah. No, actually we probably
called it telephone too. Was there an operator involved? Maybe you call operator
if you need a hint. Or maybe– BRIAN YU: I don’t think you
got hints when I was playing. DAVID MALAN: No, I think we had a
hint feature where you say, operator. And maybe the person next to you
has to tell you again or something. Maybe it’s been a long time
since I played this too. Fascinating. Well, thank you so much
for explaining to me and everyone out there a little
bit more about machine learning. If folks want to learn more about ML,
what would you suggest they google? BRIAN YU: Yeah. So you can look up basically any of the
keywords that we talked about today. You could just look up machine learning. But if you wanted to
be more specific, you could look up reinforcement learning
or supervised learning or unsupervised learning. If there’s any of the
particular technologies, you could look those up specifically,
like handwriting recognition or self-driving cars. There are a lot of resources
available of people that are talking about
these technologies and how they work for sure. DAVID MALAN: Awesome. Well, thanks so much. This was Machine Learning
on the CS50 podcast. If you have other ideas for topics that
you’d love for Brian and I and the team to discuss and explore, do just drop us
an email at [email protected] My name is David Malan. BRIAN YU: I’m Brian Yu. DAVID MALAN: And this
was the CS50 Podcast.

12 thoughts on “Machine Learning – CS50 Podcast, Ep. 6

  1. Hi, guys! Are you gonna stream new lecture about ML (TensorFlowJS or Python) in the nearest future? Best regards!

  2. I feel your confidence level with machince learning seems little less than what it is. Definitely would say to give latest innovation a change.

  3. Hello David, Hi Brian! This podcast was very insightful. I have a suggestion, please introduce a little bit of machine learning in cs50 lectures so that students also have an idea of this upcoming field and they can later pursue it as a career.

  4. You can start a new lecture series (like cs50 beyond by Brian Yu) about machine learning basics. You are probably the best people to introduce such a topic of great potential to the beginners of computer science. AI is the new electricity and you guys have the batteries and wires required to make it reach us. I hope my suggestions get considered constructively.

  5. Loving this podcast and excited to see Brian join in! Out of curiosity, does this mean Colton is no longer on staff? Will we see him continue with the Twitch streams or another semester of GD50? I wasn't quite sure what was meant by "headed out West". Thanks!

  6. Hey guys, appreciate this one very much! can you please talk about FaceApp in next podcast, they must be using some kind of ML in the app & privacy concern of such app.

Leave a Reply

Your email address will not be published. Required fields are marked *