MobileNet é uma simplificação de redes neurais para possibilitar o seu uso em aplicações web, com isso podemos criar rapidamente uma aplicação de reconhecimento de imagens. Inicialmente com um propósito mobile-first MobileNet foi utilizada pelo tensorflow.js e ml5.js
Em mais detalhes, MobileNets são uma classe de convolução de redes neurais projetadas por pesquisadores do Google. Eles foram inicialmente projetados para facilitar o uso de recursos do seu aparelho móvel aonde parte da informação é processada na nuvem assim economizando recursos computacionais do seu celular.
Convolução?
Na convolução as imagens em pixels são convertidas em dados numéricos, por exemplo, a imagine que você possui 512 por 512 pixels abaixo:
Nós seres humanos classificamos da seguinte forma:
- Homem feio
- Barba falha
- Camisa listrada
- Sentado numa cadeira preta
Como mobilenet trabalha?
No exemplo acima fazemos a convolução da imagem de 512×512 em 4 dados. Da mesma forma com Machine Learning essa imagem será divida em pequenos recortes e esses recortes serão analisados por um grupo de pequenas rede neurais, após esse processo as imagens serão traduzidas em números (lista de arrays
) que classificam essa imagem.
O nível de precisão de uma MobileNet é menor que as redes neurais tradicionais, para agilizar o tempo de processamento. Isso é compensado pela quantidade de amostras que a MobileNet possui na nuvem.
Por padrão MobileNet utilizar o dataset
ImageNet com mais de 1500.000 de imagens divididas em 1.000 categorias. Mas Google fez o código-fonte MobileNet aberto com 16 pontos de verificação, com isso podemos treinar o nosso próprio modelo reutilizando a estrutura da mobileNet.
Processo de identificação com ml5.js, por exemplo, é bem simples, podemos passar o dataset a partir de uma webcam e as imagens pode ser para infinitas finalidades:
- Objetos
- Expressões faciais
- Cores
- Letras
- Posições de um corpo humano
Para o modelo não importa a finalidade os objetos serão classificados em números. Assim precisamos das imagens e as labels
para classificação dessas imagens.
Após o treinamento podemos dizer através de uma porcentagem o que a imagem se trata.
No próximo post falaremos mais sobre como utilizar o nosso próprio dataset
com ml5.js, se ainda não conferiu o post sobre ml5.js aqui vai o link:
https://blog.fellyph.com.br/javascript/introducao-ao-ml5-js/
Deixe um comentário