Um estudo publicado pelo Gartner sobre as principais tendências estratégicas de tecnologia para 2021 destaca áreas de oportunidade para as organizações se diferenciarem dos concorrentes e para que possam operar e impulsionar o crescimento. Foram explorados três pilares nesse estudo: centricidade/foco nas pessoas, independência de localização/hospedagem e entrega/delivery resiliente.
Dentro do pilar entrega resiliente, me chamou a atenção o tema Engenharia de Inteligência Artificial, que salienta que até 2023, pelo menos 50% das organizações terão um grande esforço para promover seus projetos de IA que estão em fase de prototipação e testes para o próximo nível de maturidade: a produção. No Brasil, a IA está em alta, como mostra outro estudo, feito pela IBM e pela Morning Consult, no qual quase metade dos profissionais de TI do Brasil (49%) entrevistados relatam que suas organizações planejam investir em aplicativos de IA prontos para uso nos próximos 12 meses.
Engenharia de dados
Mas por que será que a engenharia de IA teria um papel tão importante nos nossos modelos de inteligência artificial? Não basta apenas termos cientistas de dados e construir modelos? A resposta não é tão simples, vamos entender os aspectos e papeis envolvidos.
A engenharia de IA/dados deve estar envolvida nos seguintes conceitos dentro do ciclo de vida de um projeto de IA:
DataOps:
É a orquestração de pessoas, processos e tecnologias com o intuito de disponibilizar dados de maneira rápida e confiável, para que sejam entregues aos responsáveis pelo projeto de IA que irão construir os modelos.
ModelOps:
É o centro da estratégia corporativa de IA, responsável por orquestrar o ciclo de vida dos modelos em produção, desde a sua promoção para produção até a medição dos KPIs (Key Performance Indicator) técnicos e de negócio. Dentro do ModelOps (ML), está MLOps, que é a prática de colaboração entre os cientistas de dados e os profissionais de operações para gerenciar o ciclo de vida de ML.
DevOps:
É a integração entre as equipes de desenvolvimento e operações (infraestrutura). Como os projetos de IA experimentam alterações dinâmicas no código, modelos e principalmente nos dados, este é o responsável por reagir a essas mudanças rapidamente.
Dados os conceitos, um projeto de inteligência artificial bem sucedido deve tratar a engenharia de IA desde a concepção do projeto, por mais simples que possa parecer, até a sua experimentação e medição dos resultados, seja de um MVP (Minimum Viable Product) ou de um projeto mais robusto.
Desde o nascimento do dado, para que possa ser identificada qual a melhor fonte, se será necessário adquirir ou tratar fontes externas, qualidade do dado, termos de negócio a serem usados (DataOps), passando então para a operacionalização do modelo de IA (ModelOps) e então para a validação contínua dos resultados em produção pelo time de operações, retroalimentando com seu feedback a área de negócios, que irá tratar melhorias com a engenharia de IA.
Os cientistas de dados são os nossos maestros dentro do ModelOps, mas eles precisam de dados, de boa qualidade e relevantes, por isso o envolvimento do engenheiro de dados ser tão crucial. Tudo deve estar interligado. As organizações devem aplicar os princípios do DevOps em todo o pipeline de dados para DataOps e no pipeline de modelo de aprendizado de máquina para MLOps para colher os benefícios da engenharia de IA.
E a grande máxima se repete também em inteligência artificial: independência e isolamento não proporcionam flexibilidade e escalabilidade para os modelos. Devemos realizar pequenos experimentos independentes, sim, mas para escalar, é preciso criar um roadmap alinhado com a estratégia de IA da organização e buscar o envolvimento também da engenharia de IA desde o início do projeto.