Criar modelos de IA personalizados com o Azure Machine Learning

Concluído

A disponibilidade de modelos sofisticados de IA pode ajudar as organizações a reduzir significativamente a quantidade intimidante de recursos que um projeto de ciência de dados pode exigir. Vamos ver como as organizações podem enfrentar desafios e operações de aprendizado de máquina com o Azure Machine Learning.

Desafios de aprendizado de máquina e necessidade de operações de aprendizado de máquina

A manutenção de soluções de IA normalmente requer o gerenciamento do ciclo de vida do aprendizado de máquina para documentar e gerenciar dados, código, ambientes de modelo e os próprios modelos de aprendizado de máquina. Você precisa estabelecer processos para desenvolver, empacotar e implantar modelos, bem como monitorar seu desempenho e, ocasionalmente, reciclá-los. E a maioria das organizações está gerenciando vários modelos em produção ao mesmo tempo, aumentando a complexidade.

Para lidar eficazmente com esta complexidade, são necessárias algumas boas práticas. Eles se concentram na colaboração entre equipes, automatizando e padronizando processos e garantindo que os modelos possam ser facilmente auditados, explicados e reutilizados. Para fazer isso, as equipes de ciência de dados contam com a abordagem de operações de aprendizado de máquina. Esta metodologia é inspirada no DevOps (desenvolvimento e operações), o padrão da indústria para gerenciar operações para um ciclo de desenvolvimento de aplicativos, já que as lutas de desenvolvedores e cientistas de dados são semelhantes.

Azure Machine Learning

Os cientistas de dados podem gerenciar e executar DevOps de aprendizado de máquina do Azure Machine Learning, uma plataforma da Microsoft para facilitar o gerenciamento do ciclo de vida do aprendizado de máquina e as práticas de operações. Essas ferramentas ajudam as equipes a colaborar em um ambiente compartilhado, auditável e seguro, onde muitos processos podem ser otimizados por meio da automação.

Captura de tela da página inicial do azure Machine Learning Studio.

Gestão do ciclo de vida de machine learning

O Azure Machine Learning dá suporte ao gerenciamento completo do ciclo de vida do aprendizado de máquina de modelos pré-treinados e personalizados. O ciclo de vida típico inclui as seguintes etapas: preparação de dados, treinamento de modelos, empacotamento de modelos, validação de modelos, implantação de modelos, monitoramento e retreinamento de modelos.

Diagrama mostrando o ciclo de vida do ML: preparar dados, treinar modelo, modelo de pacote, validar modelo, modo de implantação, monitorar modelo e treinar novamente o modelo.

A abordagem clássica abrange todas as etapas usuais de um projeto de ciência de dados.

  1. Prepare o conjunto de dados. A IA começa nos dados. Primeiro, os cientistas de dados precisam preparar dados com os quais treinar o modelo. A preparação de dados é muitas vezes o maior compromisso de tempo no ciclo de vida. Essa tarefa envolve encontrar ou construir seu próprio conjunto de dados e limpá-lo para que seja facilmente legível pelas máquinas. Você quer ter certeza de que os dados são uma amostra representativa, que suas variáveis são pertinentes para seu objetivo e assim por diante.
  2. Treine e teste. Em seguida, os cientistas de dados aplicam algoritmos aos dados para treinar um modelo de aprendizado de máquina. Em seguida, eles testam com novos dados para ver quão precisas são suas previsões.
  3. Pacote. Um modelo não pode ser colocado diretamente em um aplicativo. Ele precisa ser conteinerizado, para que possa ser executado com todas as ferramentas e estruturas em que foi construído.
  4. Validar. Neste ponto, a equipe avalia como o desempenho do modelo se compara aos seus objetivos de negócios. Os testes podem retornar métricas boas o suficiente, mas ainda assim o modelo pode não funcionar como esperado quando usado em um cenário de negócios real.
    • Repita os passos 1 a 4. Pode levar centenas de horas de treinamento para encontrar um modelo satisfatório. A equipe de desenvolvimento pode treinar muitas versões do modelo ajustando dados de treinamento, ajustando hiperparâmetros de algoritmo ou tentando algoritmos diferentes. O ideal é que o modelo melhore a cada rodada de ajuste. Em última análise, é papel da equipe de desenvolvimento determinar qual versão do modelo melhor se adapta ao caso de uso comercial.
  5. Implementar. Finalmente, eles implantam o modelo. As opções de implantação incluem: na nuvem, em um servidor local e em dispositivos como câmeras, gateways de IoT ou máquinas.
  6. Monitorizar e reciclar. Mesmo que um modelo funcione bem no início, ele precisa ser continuamente monitorado e retreinado para permanecer relevante e preciso.

Nota

Integrar modelos pré-treinados e adaptá-los às suas necessidades de negócios requer um fluxo de trabalho diferente que integre modelos personalizados. Usando o Azure Machine Learning, você pode usar modelos pré-treinados ou criar seus próprios modelos. A escolha de uma abordagem em detrimento de outra depende do cenário. Trabalhar com modelos pré-treinados tem a vantagem de exigir menos recursos e entregar resultados mais rapidamente. No entanto, os modelos pré-construídos são treinados para resolver uma ampla gama de casos de uso, por isso podem ter dificuldades para atender a necessidades muito específicas. Nestes casos, um modelo personalizado completo pode ser uma ideia melhor. Uma combinação flexível de ambas as abordagens é muitas vezes preferível e ajuda a escalar. As equipes de IA podem economizar recursos usando modelos pré-treinados para os casos de uso mais fáceis, enquanto investem esses recursos na criação de modelos de IA personalizados para os cenários mais difíceis. Outras iterações podem melhorar os modelos pré-construídos, reciclando-os.

Operações de machine learning

As operações de aprendizado de máquina (MLOps) aplicam a metodologia de DevOps (desenvolvimento e operações) para gerenciar o ciclo de vida do aprendizado de máquina de forma mais eficiente. Ele permite uma colaboração mais ágil e produtiva em equipes de IA entre todas as partes interessadas. Essas colaborações envolvem cientistas de dados, engenheiros de IA, desenvolvedores de aplicativos e outras equipes de TI.

Os processos e ferramentas MLOps ajudam essas equipes a colaborar e fornecer visibilidade por meio de documentação compartilhada e auditável. As tecnologias MLOps permitem que os usuários salvem e rastreiem alterações em todos os recursos, como dados, código, modelos e outras ferramentas. Essas tecnologias também podem criar eficiências e acelerar o ciclo de vida com automação, fluxos de trabalho repetíveis e ativos reutilizáveis. Todas essas práticas tornam os projetos de IA mais ágeis e eficientes.

O Azure Machine Learning dá suporte às seguintes práticas de MLOps:

  • Reprodutibilidade do modelo: significa que diferentes membros da equipe podem executar modelos no mesmo conjunto de dados e obter resultados semelhantes. A reprodutibilidade é fundamental para tornar os resultados dos modelos em produção confiáveis. O Azure Machine Learning dá suporte à reprodutibilidade de modelos com gerenciamento centralizado de ativos como ambientes, código, conjuntos de dados, modelos e pipelines de aprendizado de máquina.

  • Validação de modelo: antes de um modelo ser implantado, é fundamental validar suas métricas de desempenho. Você pode ter várias métricas que são usadas para indicar o "melhor" modelo. Validar métricas de desempenho de maneiras relevantes para o caso de uso do negócio é fundamental. O Azure Machine Learning dá suporte à validação de modelo com muitas ferramentas para avaliar métricas de modelo, como funções de perda e matrizes de confusão.

  • Implantação de modelo: quando um modelo é implantado, é importante que cientistas de dados e engenheiros de IA trabalhem juntos para determinar a melhor opção de implantação. Essas opções incluem, nuvem, no local e dispositivos de borda (câmeras, drones, máquinas).

  • Retreinamento de modelos: os modelos precisam ser monitorados e periodicamente retreinados para corrigir problemas de desempenho e aproveitar os dados de treinamento mais recentes. O Azure Machine Learning dá suporte a um processo sistemático e iterativo para refinar continuamente e garantir a precisão do modelo.

Gorjeta

Fotografia que mostra um profissional de saúde a aceder ao Azure Machine Learning num tablet.
História do cliente: uma organização de cuidados de saúde utiliza o Azure Machine Learning para treinar modelos de aprendizagem automática personalizados que preveem a probabilidade de complicações durante procedimentos cirúrgicos. Os modelos são treinados em grandes volumes de dados, incluindo fatores como idade, etnia, histórico de tabagismo, índice de massa corporal e contagem de plaquetas sanguíneas. O uso desses modelos permite que os profissionais médicos avaliem melhor o risco e determinem opções de cirurgia ou recomendações de mudança de estilo de vida para pacientes individuais. O painel de IA responsável no Azure Machine Learning ajuda a explicar os fatores preditivos e a mitigar o enviesamento de fatores demográficos. Em última análise, a solução de modelagem preditiva ajuda a reduzir o risco e a incerteza e a melhorar os resultados cirúrgicos. Leia a história completa do cliente aqui: https://aka.ms/azure-ml-customer-story.

Gorjeta

Reserve um momento para considerar como sua organização pode aproveitar a ciência de dados e a experiência em aprendizado de máquina para criar modelos personalizados.
Fotografia que mostra pessoas a trabalhar e a falar à volta de uma mesa.

Em seguida, vamos encerrar tudo com uma verificação de conhecimento.