Do Phones Need a NPU to Benefit from Machine Learning? - Gary Explains
Do Phones Need a NPU to Benefit from Machine Learning? - Gary Explains
2017-11-10
hello there i'm gary sims from andrew
authority now we've seen some phones
release recently that have kind of
neural processing hardware built into
the phone you think about the ki-rin 917
which is in the main 10 and you think
about some of the new i fold with their
neural engines there seems to be this
new wave of devices that have Hardware
dedicated to doing machine learning so
the question before us a day is this do
you need to have dedicated hardware and
NPU inside of your smartphone to
experience the benefits of machine
learning well let me explain so let's
start with the basics what is machine
learning while learning of course is the
process that by experience you modify
your behavior now when we come to the
idea of machine learning really today
we're talking about recognition pattern
recognition voice recognition image
recognition and so on and so when we're
talking about machine learning we're
really thinking about the fact that
Google assistant can understand the word
we're saying we're thinking about that
if you show a picture to a smartphone
you can tell you that it's a dog or a
cat or a horse or a landscape and that
can be used for things like changing the
photo settings accordingly now there is
a difference between artificial
intelligence and machine learning
machine learning as I say is that part
about recognition whereas the important
part of artificial intelligence is the
word intelligence which of course
includes concepts like abstract thinking
and planning and of course then we get
into a whole bunch of other areas like
freewill and you know this kind of stuff
that really is a whole separate idea now
I do have two videos on this channel one
that talks about machine learning in
detail how it works I have another one
that talks about artificial intelligence
in detail and what that might mean for
the future of mankind so please do go
and check out those two videos now when
we're talking about machine learning
today we're basically looking at Earth's
smart phones are doing recognition of
things like our voices but most of that
recognition happens in the cloud and
what that means I speak to Google system
I ask it a question
and there is some pre-processing that
goes on on the phone but
then the results of that pre-processing
go up to the cloud where the final bit
of processing is done and then also the
response comes if I say you know will it
rain tomorrow basically those words are
kind of digitized they're kind of
divided up on the phone already and then
they go up onto Google's cloud where it
will then work out what that question
meant and then try to reply with the
relevant information now computing kind
of goes in cycles now way back like 50
years ago and maybe even 20 years ago
there was really this phenomenon that
all computing power was centralized and
everything at the remote side was dumb
so way back you had kind of mainframes
and mini-computers and they were just
dumb terminals or even dumb workstations
but all the work was done on a central
computer and then we had kind of the PC
era which brought all that computing
power back to the desk so now what I
wanted to do things I didn't rely on a
central computer it was happening on my
own private machine and now since the
beginning of the internet and the cloud
and mobile computing we've kind of got
this hybrid situation where a lot of
things I do on my mobile device whether
there be a laptop or whether that be a
smartphone but a lot of it is also done
in the cloud and as I said machine
learning at the moment is really a
cloud-based kind of technology now as
with we went from dumb terminals to kind
of pcs also now we're coming to the
stage where we need to bring some of
that machine learning back down to our
local devices not realized so heavily on
the cloud now to do that you're going to
need some processing power in your
actual device whether that is a laptop
or a smartphone or a Chromebook or
something like that
now there are several different ways of
doing this at the heart of all this
machine learning you need to run a
neural network now I won't go into the
details of a neural network now but
basically the idea is is that a signal
is received into a neural network and
then it gives a result and you train the
neural network by presenting it with a
set of input whether it be an image
would there be voice or would there be
of something else and then you say this
is a particular thing and it makes the
neural network wreck
nice it strengthens the connections
between the neurons so that when it then
sees a similar but not exactly the same
data it can still produce the same
output so if I say the word yellow I
have my British accent and I say it in a
particular way but I can also understand
American accents which is why I can
watch films from Hollywood and likewise
Americans can watch British films Doctor
Who and Downton Abbey and so on and you
still understand our accent and that's
because our brains are capable of
recognizing a whole vast range of
different sounds and voices and accents
now a computer has to be taught to do
those things and at the moment it's
trained and that information stays
mainly in the cloud now to run a neural
network on your phone there are three or
four different ways that it can be done
it can be run on the CPU absolutely it
can it can also be run on the GPU
because GPUs are good at doing neural
network processing it can be run on
something like a DSP or what we would
traditionally call a DSP and of course
it can be run on these new neural
processing units now when Huawei showed
their curve the NPU working what they
actually did will show a demonstration
of how their NPU was faster at doing
image processing compared to a GPU and a
cpu but what it also showed us is that a
CPU and GPU can do these tasks it's just
that it's faster in the new NPU so
really we are now in the age of
heterogeneous computing which means when
you have a task the computer needs to
decide which part of its hardware is
actually best at doing that task now for
example arm have their compute library
which is a library designed specifically
for doing machine learning tasks and
depending on the platform that's or not
depending on the hardware that it has
around it it will perform exactly the
same functions but it will give it
either to the CPU or to the GPU or to
wherever it thinks it can do that tasks
the most efficiently and Qualcomm have a
similar idea with their hexagon DSP if
you use the SDK specifically for
Qualcomm processors then you can do a
lot of tasks specifically in the the
dias DSP and that'll also be true for
Huawei when they want develop
to building specifically for their
keyring 970 chipset there will be an SDK
that will say here is how you pass over
those tasks to the NP you so in this
cloud-based world that we live in at the
moment you don't particularly need any
special hardware in your phone to do
machine learning however the point is is
we would like to see live machine
learning which is where the phone is
actually learning not not using a preset
of trained images a preset of trained
words that are happening up there in the
cloud but it's happening locally and a
good example of that would be security
for example if you want to add extra
security using a neural network it's
actually quite a good idea arm recently
released their security manifesto which
talks about how we need security in an
end-to-end solution from the device all
the way through to the cloud and they
were talking about how a neural network
is one way to achieve that
so the phone can learn your patterns it
can learn where you do most of your
shopping it can learn where you normally
carry your phone in your pocket you can
learn at what speed you walk at and then
it can make decisions about whether
someone a star on your phone and run off
with it or whether someone's trying to
use your phone to make a payment in a
place that you don't normally go to
things like that and that requires
machine learning that happens locally on
the device and that's where things like
an NP you or a neural networking engine
come into play but today where things
stand of course it's just about speed so
we know that the while wane Kieran 970
is much faster maybe three times faster
at doing image recognition when it uses
its own dedicated hardware we know that
Apple have included the neural engine so
it can do the face ID processing and
that's an example of where it's learning
live because it's a different face for
every owner so we need to learn that
live and we know the pixel two has got
this image processing unit in it we
don't know much about it yet but again
that dedicated hardware that we'll be
doing something to do with machine
learning so what does all this mean for
the future what it means is we really
are in the infancy of this dedicated
hardware sort of push I remember way
back when I got my very first 3d
graphics card and plugged it into my PC
and I started to play
and it completely changed everything but
that that way of doing things now how
that graphics can achieve that is no
longer even a possibility today we've
moved on so we moved on from the
innovators to a kind of a standard way
of doing things and that's really where
we are now today with new processing
units we have the innovators now that
are trying these things out but I can
guarantee you that in three years time
the way we do this we're very different
to the way we're doing it today and the
key thing here is machinery is really
gonna become interesting when we start
doing live learning which means the
phone is able to use this new processing
hardware to learn something new today
not just relying on training that's
received elsewhere the problem with that
though is that with bad training you get
bad results so it's really gonna be
interesting to see how OMS and the
scientists and the researchers come
around to using NPU hardware in our
devices or as I said will we just keep
on using the CPU and GPU because this
problem of live training is actually too
hard to overcome
well my name's Gary Sims from Andhra
thority I do hope you enjoyed this video
if you did please do give it a thumbs up
also please don't forget to subscribe to
Angela college's YouTube channel please
follow us on social media and last but
not least do go over to Andrea Orta comm
because we are your source for all
things Android
We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.