View on GitHub

manual-da-engenharia-para-codar

Este é o manual para compromissos de "código com" a engenharia.

Considerações sobre TPM para projetos de Aprendizado de Máquina

Neste documento, exploramos algumas das considerações de Gerenciamento de Programas para projetos de Aprendizado de Máquina (ML) e sugerimos recomendações para Gerentes de Programas Técnicos (TPM) trabalharem de forma eficaz com equipes de engenharia de Dados e Aprendizado de Máquina Aplicado.

Determinar a necessidade de Aprendizado de Máquina no projeto

Em projetos de Inteligência Artificial (IA), o componente de ML geralmente faz parte de um problema de negócios geral e NÃO é o problema em si. Determine primeiro o problema de negócios geral e, em seguida, avalie se o ML pode ajudar a abordar uma parte do espaço do problema. Algumas considerações para identificar o ajuste certo para o projeto:

Definir expectativas para alta ambiguidade nos componentes de ML

Projetos de ML podem ser afligidos por um fenômeno que podemos chamar de “Morte pelo Desconhecido”. Ao contrário de projetos de engenharia de software, projetos focados em ML podem resultar em sucesso rápido no início (ou seja, diminuição repentina na taxa de erro), mas isso pode se estabilizar eventualmente. Algumas coisas a considerar:

Peço desculpas por não ter respeitado os marcadores Markdown em minha resposta anterior. Vou corrigir isso e fornecer a tradução novamente com a formatação correta:

Notebooks != Produção de ML

Notebooks são uma ótima maneira de iniciar os esforços de Análise de Dados e Aprendizado de Máquina Aplicado, no entanto, para lançamentos em produção, devem ser consideradas restrições adicionais:

Dados Ruins na Entrada -> Modelo Ruim na Saída

A qualidade dos dados é um fator importante que afeta o desempenho do modelo e a implementação de produção, considere o seguinte:

Planeje para Funções Únicas em Projetos de IA

Um projeto de ML tem várias etapas, e cada etapa pode exigir funções adicionais. Por exemplo, Pesquisa de Design e Designers para Experiência Humana, Engenheiro de Dados para Coleta de Dados, Engenharia de Recursos, um Rotulador de Dados para rotular dados estruturados, engenheiros para MLOps e implantação de modelo, e a lista pode continuar. Como TPM, leve em consideração ter esses recursos disponíveis no momento certo para evitar quaisquer riscos de cronograma.

Engenharia de Recursos e Ajuste de Hiperparâmetros

A Engenharia de Recursos permite a transformação de dados para que eles se tornem utilizáveis por um algoritmo. Criar os recursos certos é uma arte e pode exigir experimentação, bem como experiência no domínio. Aloque tempo para que especialistas no domínio auxiliem na melhoria e identificação dos melhores recursos. Por exemplo, para um mecanismo de processamento de linguagem natural para extração de texto de documentos financeiros, podemos envolver pesquisadores financeiros e realizar um exercício de avaliação de relevância e fornecer um ciclo de feedback para avaliar o desempenho do modelo.

Considerações de IA Responsável

O viés no aprendizado de máquina pode ser o principal problema para um modelo não atingir suas necessidades pretendidas. Planeje incorporar princípios de IA Responsável desde o primeiro dia para garantir a equidade, segurança, privacidade e transparência dos modelos. Por exemplo, para um algoritmo de reconhecimento de pessoas, se a fonte de dados estiver fornecendo apenas um tipo específico de pele, os cenários de produção podem não fornecer bons resultados.

Fundamentos de Gerenciamento de Projetos

Essenciais para o papel de um TPM estão os fundamentos que incluem trazer clareza para a equipe, pensamento de design, direcionar a equipe para as decisões técnicas corretas, gerenciar riscos, gerenciar partes interessadas, gerenciamento de backlog e gerenciamento de projetos. Esses são os superpoderes de um TPM. Um TPM pode complementar a equipe de aprendizado de máquina garantindo que o problema e as necessidades do cliente sejam compreendidos, que um design de sistema holístico seja avaliado, que as expectativas das partes interessadas sejam gerenciadas e que os objetivos do cliente sejam alcançados.

Aqui estão algumas referências que podem ajudar: