Lições aprendidas com modelos de aprendizado de máquina na AWS Lambda

0

Agatha Carriello | Dezembro 03, 2018

Aprendizado de máquina (Machine Learning) é uma das áreas que mais tem gerado discussões entre os clientes e o time de Inovação da Daitan. Apesar dos grandes avanços recentes em algoritmos e infraestrutura de processamento, ainda existem alguns problemas em aberto que muitas empresas ainda irão enfrentar em seu caminho rumo à adoção dessa tecnologia.

Para explorar melhor alguns desses desafios e auxiliar os clientes na tomada de decisões mais acertadas, a Daitan criou um grupo de pesquisa dedicado. O primeiro objetivo dos profissionais envolvidos está sendo estudar as opções para mover modelos de aprendizado de máquina para ambientes de produção em larga escala.

Embora muitas empresas estejam dedicando um grande esforço na solução deste problema, ainda existem diversos requisitos não endereçados de forma padrão.

Alguns dos desafios que estão sendo avaliados:

  • Versionamento de modelos;
  • Re-treinamento em bases de dados atualizadas;
  • Pré-processamento de dados para inferência.

Como primeiro passo, foi criado um baseline próprio: um cenário em que todo o processo é feito manualmente foi desenhado, do treinamento até a colocação em produção e foi verificado o desempenho com auto-escalabilidade. Com isso, foram coletados subsídios para avaliar melhor os benefícios e malefícios em se utilizar uma plataforma pronta para fazer o mesmo trabalho.

O resultado dessa experiência está em um artigo que explica como servir modelos de aprendizado de máquina em uma infraestrutura “comum” - nesse caso, AWS Lambda, com um desempenho interessante (e ainda mais escalável se necessário) de 40 predições por segundo, com tempo médio de resposta de 200ms para o modelo treinado.

O trabalho, desenvolvido em parceria pelas áreas de Inovação e Operações da Daitan, está disponível na plataforma Medium. O material apresenta os resultados alcançados com escalabilidade, boas práticas de implementação, impacto da escolha de linguagem de programação, entre outras conclusões.

Acesse o artigo e saiba mais!