0
$\begingroup$

Not sure if this is the right place, but I guess it is better than Reddit and I couldn't find any discussion.

I was wondering why Apple include a neural network "processor" and can't help but feel that is a waste as a prospective ML Engineer, so it is very likely that I am missing / in ignorance of something so wanted to ask what it is.

Two reasons come to my mind:

  1. Apple will allow a distributed cloud computing on its products (Feels expensive if that is the only reason.).

  2. Improved security. All personal bio-data (fingertip, face, speech) will be stored locally, while processing will be done on wholly local or quasi-local with some calculation going to servers safely.

Does anyone have any idea?

$\endgroup$
4
  • 2
    $\begingroup$ This has nothing to do with computer science. $\endgroup$ – orlp Nov 15 '20 at 16:31
  • $\begingroup$ It has, because it directly relates to my question about "what is the purpose of this technology", from security to distributed computing or other areas that I don't know of, for example if this is viable from Computer Architecture perspective. I really can't help but think it is a waste of transistors and maybe a computer architecture person would explain it to me why it isn't. $\endgroup$ – demonoga Nov 15 '20 at 16:35
  • $\begingroup$ For example, if you have a camera installed at your front door, would you want all the images of that camera be sent to a server, or would you prefer them being processed on your device? Which feels more secure? Which is more likely to respect your privacy? $\endgroup$ – gnasher729 Nov 15 '20 at 22:57
  • $\begingroup$ I agree that this is not a computer science question, and it has an obvious non-computer-science answer: Apple already knows what software they want to deploy that uses it. Improved text-to-speech and video compression that optimises for human faces are obvious ones. $\endgroup$ – Pseudonym Nov 15 '20 at 23:27
1
$\begingroup$

Having a powerful machine learning chip in your device allows you to do things that you probably have not thought of. Things like improving the images that your camera is taking. Cutting out the background and replacing it with a boring beige background, very valuable if you are in a video conference and want to show your face to people but not your home.

Or a nice one: Most people in a video conference look at the screen, not at the camera, so when their image is transmitted, it seems that you can't look in the other persons eyes. Very nice if you have an ML chip how can change the image as if you were looking straight into the camera, without taxing your battery.

Something not done (yet) would be improving sound quality, for example removing background noise and filling in gaps when sound transmission fails, and totally cool would be removing people's accents, so that I can understand someone with a strong Scottish or Indian accent without problems.

You are about in the same situation as someone in the early 1980's asking what the advantages of a graphical user interface would be.

$\endgroup$
5
  • $\begingroup$ ">You are about in the same situation as someone in the early 1980's asking what the advantages of a graphical user interface would be." What does this even mean? There really hasn't "consumer available ML products" and it is a valid question to ask whether "personalizing" is the way to go except for security. Your ad hominem feels so out of place and rude. $\endgroup$ – demonoga Nov 16 '20 at 18:11
  • $\begingroup$ By "consumer available products" I mean local ones and except for security again. $\endgroup$ – demonoga Nov 16 '20 at 18:18
  • 2
    $\begingroup$ Instead of looking for "ad hominems" you could try to understand what I said. $\endgroup$ – gnasher729 Nov 16 '20 at 23:05
  • $\begingroup$ Yes, according to you it is given I am not. How toxic. $\endgroup$ – demonoga Nov 19 '20 at 16:23
  • $\begingroup$ "Most people in a video conference look at the screen, not at the camera, so when their image is transmitted, it seems that you can't look in the other persons eyes" – Nvidia has a video codec that does that very thing, using neural networks running on GPGPU. $\endgroup$ – Jörg W Mittag Nov 22 '20 at 20:50
1
$\begingroup$

It is used for:

  • Image analysis, and specially face recognition and search photos library.
  • Language detection, text recognition and analysis ( to identify concepts in a text ). Used for advanced search in text
  • Speech recognition
  • Sound analysis, for efficient filtering and removal of noise in conversations and sound recognition ( Be able to differentiate musical instruments, or sounds like a crowd applauding or a baby crying ).

I also found interesting to read, in the developer documentation, that neural network engine was also used for - apparently - simple usage pattern detection. Not that this could not be done another way, but neural network is naturally good at it. To detect at what time/day you use an application, or listen our podcasts, in which order, and many others little habits on we have on our phone to try to make it behave as expected at the right time and place.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.