Serviços de IA e ML na AWS

Empresas de diversos setores têm direcionado suas atenções para Machine Learning (ou Aprendizado de Máquina), principalmente pela sua capacidade de proporcionar automação de tarefas tediosas e capacidade preditiva, convertidas em vantagens e diferenciais de negócio. Contudo, a adoção destas tecnologias traz consigo diversos desafios a serem superados para que estes benefícios sejam contemplados. 

Seguindo a sua missão de “colocar Machine Learning nas mãos de qualquer desenvolvedor ou cientista de dados”, a Amazon Web Services (AWS) oferece diversos serviços para ajudar empresas aplicar Machine Learning de forma rápida e efetiva. O catálogo da Amazon Machine Learning (Amazon ML) engloba serviços em vários níveis de complexidade e customização de soluções, dependendo dos recursos humanos e da maturidade na adoção de ML que a empresa possuí, desde soluções inteiramente desenvolvidas e gerenciadas pela AWS, até ambientes que permitem o desenvolvimento de modelos customizados de ponta-a-ponta. 

A seguir, será apresentado os principais serviços disponibilizados pela AWS, discutiremos qual deles oferecerá o maior benefício ao seu negócio. 

Amazon Rekognition 

Rekognition utiliza-se de técnicas de Deep Learning altamente dimensionável desenvolvida pelos cientistas da Amazon, com a capacidade de analisar diariamente bilhões de imagens e vídeos sem a necessidade de conhecimentos em ML para ser usado. Este serviço é capaz de identificar objetos (Figura 1), reconhecimento facial, até mesmo com análise de sentimento de pessoas (Figura 2), e detectar letras e palavras em uma imagem (Figura 3). 

 

Figura 1: Através de uma imagem de alta qualidade o Rekognition é capaz de identificar objetos apresentados nela, apresentando o quão confiante o serviço está em cada rótulo retornado,

 

Figura 2: O Rekognition retorna uma lista de afirmações juntamente com a confiança de cada uma delas. Como pode ser observado, uma face é analisada de cada vez, neste caso ele foi capaz de identificar que se trata de um homem, com idade de 22 a 34 anos, sorrindo, que não está utilizando de óculos.

 

Figura 3: Nos resultados é apresentado alguns conjuntos de letras que foram identificados C | J389 | NLT. Sendo a primeira letra de uma placa que está ao fundo da imagem, perdendo a qualidade da identificação. A utilização evidente desta ferramenta é para identificação de placas de veículos em um estacionamento ou mesmo na estrada.

Amazon Polly 

Amazon Polly é um serviço de conversão de textos em fala, disponibilizando dezenas de vozes realistas em vários idiomas, incluindo o português do Brasil. Este serviço permite reproduções ilimitadas das falas geradas, sem taxas adicionais. Assim, é possível armazenar as falas geradas em arquivos MP3 e OGG na nuvem, podendo serem consumidos diretamente por aplicações ou enviados para dispositivos para reprodução offline. Mas se é desejado uma conversão em tempo real, ele também é capaz de fazer, sempre tendo em mente que os serviços da AWS são cobrados conforme o uso, sendo o segundo modelo relativamente mais caro. 

Amazon Transcribe 

Transcribe reconhece a fala e transcreve em texto, sendo capaz de formatar, pontuar, identificar oradores, além de ter a funcionalidade de vocabulário customizado. Através da API é possível analisar arquivos de áudio armazenados no Amazon S3 e obter um arquivo de texto com a transcrição da fala. Também é possível realizar streaming de áudio ao vivo ao Amazon Transcribe e receber um streaming de transcrições em tempo real. Todas as transcrições possuem um timestamp, habilitando a possibilidade da localização da fala no vídeo e geração de legendas de forma automática. 

Amazon Comprehend 

Amazon Comprehend é um serviço de processamento de linguagem natural, capaz de encontrar padrões e relações semânticas dentro de um documento de texto. Contendo análise de sentimentos, entidades, frases-chave, idiomas, modelagem de tópicos, sintaxe. 

Amazon lançou um módulo especialista em extrair condições médicas, o Amazon Comprehend Medical (apresentado na Figura 4). O serviço pode identificar informações como condições médicas, medicamentos, dosagens, potências e frequências. Este serviço é totalmente gerenciado, sem a necessidade de criar, treinar ou implantar nenhum tipo de modelo. Infelizmente, até este momento este serviço apenas possui suporte para a língua inglesa, sendo necessário traduzir os textos para seu uso em outros idiomas. 

 

Figura 4: Este é o exemplo de uso disponibilizado pela Amazon, onde pode-se observar a dosagem dos medicamentos, assim como a frequência. Além de apresentar a relação de uma pessoa com o paciente, neste caso, apresentando que a acompanhante era mãe dele, com 40 anos e professora do colégio

Amazon Translate 

Translate é um serviço simples e direto, ele realiza traduções de diversas linguagens em tempo real. Ele escala facilmente para acompanhar o crescimento das necessidades de tradução, de algumas palavras a grandes volumes de texto. O serviço oferece traduções com rapidez e confiabilidade uniformes, independentemente do volume de solicitações de tradução efetuado. 

Amazon Textract 

Serviço de Optical Character Recognition (OCR++) utilizado para extrair dados de qualquer documento. Este serviço é normalmente utilizado para extração de dados em textos (Figura 5), tabelas e formulários (Figura 6). Hoje, muitas empresas extraem dados de documentos e formulários de forma manual, lenta e com alto custo. Com o Textract, é possível automatizar rapidamente fluxos de trabalho de documentos, o que permite processar milhões de páginas de documentos em algumas horas. 

Figura 5: Neste exemplo foi requisitado para o Textract a extração de todas as palavras presentes no texto de entrada, de forma não estruturada.

 

Figura 6: Foi requisitado ao Textract a extração de informações de formulário, assim, ele foi capaz de identificar o formulário presente no texto, assim como título e valor de cada campo.

 

Amazon Personalize 

Amazon Personalize é utilizado para aplicação de sistemas de recomendações em tempo-real. Realiza recomendações baseada em contexto, aprendizado contínuo para aprimoramento do modelo, tendo todo o processo de ML de forma automatizada. Timing é tudo, o Personlize é capaz de identificar o perfil de navegação de usuários com alguns cliques em sua página já computando uma recomendação adequada de produto, serviços ou qualquer outro tipo de conteúdo oferecido pela aplicação para aquele momento. 

Amazon Forecast 

O Forecast calcula previsões precisas de séries temporais. Pode-se agendar as predições, assim como o retreino do modelo, capaz de calcular múltiplas séries temporais simultaneamente, também possui o processo de ML automatizado, sendo um serviço totalmente gerenciado, possuindo uma avaliação da precisão do modelo. Este serviço pode ser utilizado para descobrir automaticamente como os dados de séries temporais e outras variáveis, como recursos de produtos e locais de lojas, afetam uns aos outros. Tendo estas relações em mãos, pode-se direcionar os esforços para os próximos meses. 

Amazon SageMaker 

Fornece aos desenvolvedores ou cientistas de dados a habilidade de criar, treinar, e implantar rapidamente modelos de ML. Diferentemente dos serviços anteriores. O SageMaker disponibiliza ferramentas para facilitar o fluxo de desenvolvimento de ML de ponta-a-ponta, sendo o usuário responsável por controlar todo o processo. O usuário implementa a melhor forma de pré-processamento de dados, podendo escolher algoritmos já implementados, treinar modelos, ajustá-los e otimizá-los para implantação. Assim os modelos serão treinados de forma rápida e com baixo custo. 

Conclusão 

A adoção de Machine Learning tem sido fundamental para o desenvolvimento de empresas, impactando na redução de custos com automação e otimização de recursos, fidelização de clientes através de serviços personalizados e melhoria na experiência do usuário, além de proporcionar capacidade preditiva ao negócio, permitindo tomadas de decisão antecipadas e ação preventiva à problemas, ao invés de reativas. É importante ressaltar que a implantação da cultura de Machine Learning é uma jornada contínua, e que soluções avançadas exigem tempo e experiência para serem atingidas. 

A AWS tem contribuído para que empresas comecem a sua jornada em Machine Learning através de serviços inteiramente gerenciados que não exigem conhecimentos aprofundado na área, reduzindo o tempo e o custo da adoção destas técnicas e acelerando a agregação de valor ao negócio. Em contrapartida, junto com o crescimento do nível de maturidade da empresa em relação à Machine Learning, eleva-se também a complexidade dos desafios e a necessidade de modelos customizados, onde os serviços gerenciados não mais são capazes de suprir as demandas. Para este fim, o Amazon SageMaker oferece artifícios para suportar este tipo de projeto do início ao fim. 

Cada um dos serviços aqui apresentados pede um artigo específico, destrinchando as suas capacidades e possibilidades de aplicações em problemas reais. Seguiremos com a nossa série de artigos para elucidar o desenvolvimento de Machine Learning dentro da AWS.