A maioria das tarefas de Machine Learning (ML), como o reconhecimento de voz ou imagens, sĂŁo em grande parte efetuadas na cloud. O smartphone envia dados para a nuvem e os mesmos sĂŁo processados e enviados novamente para o dispositivo. No entanto existe uma tendĂȘncia para que estas operaçÔes comecem a ser efetuadas localmente nos smartphones. Isto Ă© aliĂĄs algo que a Huawei faz no seu Huawei Mate 10 Pro.
Para ajudar os programadores a aproveitarem ao måximo esta tecnologia, a Qualcomm lançou uma nova marca que vai estar apenas focada no machine learning.
O Qualcomm Artificial Intelligence (AI) Engine consiste em vĂĄrios componentes de hardware e software que podem ser utilizados por quem desenvolve aplicaçÔes para disponibilizar experiĂȘncias de utilização compatĂveis com inteligĂȘncia artificial, existindo ou nĂŁo ligação Ă Internet.
Machine Learning: Duas fases distintas
O machine learning ou se preferirem a aprendizagem de mĂĄquina consiste em duas fases distintas: o treino e a inferĂȘncia que Ă© como quem diz a dedução.
Na fase de treino o algoritmo de Machine Learning (provavelmente uma Rede Neural) é alimentado por muitos exemplos (fotos, voz, entre outros), juntamente com a classificação correspondente.Quando o processo de treino chega ao fim, a Rede Neural é utilizada para classificar novos dados.
Vamos a um exemplo prĂĄtico. Imagine que apresentamos milhares de fotos de cĂŁes ao sistema de aprendizagem de mĂĄquina. O sistema vai recolher todas as fotografias e aprender com elas. Se mais tarde mostrar a imagem de um cĂŁo ao dispositivo em questĂŁo, mesmo que seja diferente de todas as outras que ele viu, ele irĂĄ reconhecer Ă mesma que se trata de um animal.
Esta etapa da inferĂȘncia, da dedução ou da conclusĂŁo, funciona em quase qualquer tipo de unidade de processamento, incluindo CPUs, GPUs, DSPs e motores de inferĂȘncia dedicados, como a Unidade Neural de Processamento (NPU) da Huawei ou o Processador de Aprendizagem de MĂĄquina recentemente anunciado pela ARM. A principal diferença entre estas unidades de processamento Ă© a rapidez com que eles podem realizar a inferĂȘncia e a quantidade de energia utilizada para o fazerem.
O Qualcomm AI Engine dispensa as redes neurais de processamento e utiliza o CPU, GPU e DSP encontrados em alguns dos principais processadores Snapdragon (845, 835, 820 e 660). O componente-chave nestes processadores é a inclusão do Hexagon DSP com as Hexagon Vector eXtensions (HVX).
Do lado do software, o Qualcomm AI Engine disponibiliza trĂȘs componentes:
- Framework por software do Snapdragon Neural Processing Engine (NPE) – Uma biblioteca heterogĂ©nea de nĂvel superior que suporta as estruturas Tensorflow, Caffe e Caffe2, alĂ©m do formato de partilha Open Neural Network Exchange (ONNX). A ideia principal Ă© que o NPE escolha o componente certo (CPU, GPU, DSP) para qualquer tarefa.
- Android Oreo Neural Networks API – O suporte para as redes neurais do Android vai aparecer primeiro no Snapdragon 845.
- Biblioteca da Rede Neural Hexagonal (NN) – Funciona exclusivamente com o Hexagon Vector Processor.
Muitos parceiros que utilizam os processadores da Qualcomm nos seus equipamentos jĂĄ estĂŁo a utilizar as principais componentes do motor de inteligĂȘncia artificial. Nesta lista incluem-se a Xiaomi, OnePlus, Motorola, Asus e ZTE.
Ao nĂvel das empresas que desenvolvem software, a Qualcomm estĂĄ a trabalhar com diversos parceiros diferentes. Por exemplo, o SenseTime e o Face ++ oferecem uma grande variedade de redes neurais prĂ©-treinadas para funcionalidades relacionadas com imagem e cĂąmara, incluindo o modo bokeh com apenas uma cĂąmara, desbloqueio de rosto e deteção de cenas. JĂĄ a Uncanny Vision, por outro lado, fornece modelos otimizados para deteção e reconhecimento de pessoas, veĂculos e placas.
Apesar do sistema de inteligĂȘncia artificial da Qualcomm ser de facto funcional, muitos podem achar que se trata de branding e de uma forma de dar resposta ao projeto Trillium anunciado pela ARM na semana passada.
Receba as notĂcias Leak no seu e-mail. Carregue aqui para se registar. Ă grĂĄtis!