Home > Tendências

Como resolver a crise de reprodutibilidade da Inteligência Artificial

A sociedade nunca confiará totalmente nas ações da Inteligência Artificial, a menos que seja possível demonstrar resultados razoavelmente reproduzíveis

James Kobielus, Infoworld/EUA

06/10/2018 às 13h23

IA_601671761.jpg
Foto:

A reprodutibilidade é frequentemente deixada
para trás na corrida da IA ​​por  resultados rápidos. E o movimento
para metodologias ágeis pode apenas
exacerbar esse cenário. Sem
reprodutibilidade, não é possível saber realmente o que seu sistema de IA está
fazendo ou fará, e isso é um grande risco quando você usa Inteligência Artificial
para qualquer trabalho crítico, desde diagnosticar condições médicas até
dirigir caminhões, passando por ameaças de segurança.

A
tendência natural dos cientistas de dados é ser econômico na documentação para
ganhar velocidade ao desenvolver, treinar e iterar modelos de Machine e  Deep Learning. Mas a reprodutibilidade
depende do conhecimento da sequência de etapas que produz um modelo, processo
ou decisão de IA.

A
reprodutibilidade desmorona quando os cientistas de dados que construíram um
modelo de IA falham em seguir uma abordagem repetível para o seu trabalho
ou em documentar o que realmente fizeram com detalhes precisos. Nesses
cenários, nem os desenvolvedores originais de um modelo de IA, nem ninguém,
pode ter certeza de que o que encontraram pode ser reproduzido em uma data
posterior por eles mesmos ou por qualquer outra pessoa.

Os
problemas de reprodutibilidade se multiplicam à medida que as plataformas de
pipeline de IA subjacentes - incluindo estruturas de modelagem, aceleradores de
hardware e data lakes distribuídos - evoluem em todos os níveis, reduzindo a
possibilidade de se posicionar uma réplica precisa da plataforma original para
qualquer validação cruzada posterior .

Plataformas DevOps compartilhadas podem garantir a
reprodutibilidade
Para
garantir que a reprodutibilidade não seja prejudicada por métodos ágeis, as
equipes de ciência de dados devem realizar todo o seu trabalho em plataformas
de DevOps compartilhadas. Essas plataformas - que agora são oferecidas por
dezenas de fornecedores - permitem que as equipes de desenvolvimento de IA
mantenham registros de auditoria confiáveis ​​dos processos específicos usados
​​pelos profissionais de ciência de dados para desenvolver suas soluções de
Inteligência Artificial. As ferramentas DevOps de ciência de dados usam
repositórios ricos de metadados associados e um registro de como os dados,
modelos, metadados, códigos e outros artefatos específicos são executados no
contexto de um determinado processo ou decisão. Eles também automatizam as
seguintes funções do pipeline da IA:

· Registro de todas as
etapas do processo de aquisição, manipulação, modelagem e implantação de
análise orientada por dados.

· Versão de todos os dados,
modelos, hiper parâmetros, metadados e outros artefatos em todos os estágios do
pipeline de desenvolvimento.

· Retenção de cópias de
arquivamento de todos os conjuntos de dados, gráficos, scripts, ferramentas e
outros artefatos usados ​​em cada iteração do processo de modelagem.

· Geração de narrativas
detalhadas que explicitam como cada passo contribuiu para os resultados
analíticos alcançados em cada iteração.

· Acessibilidade e
introspecção no nível do projeto por partes independentes de cada script,
execução e resultado.

E
mesmo que se adote rigorosamente plataformas e práticas de DevOps em seu
trabalho, os cientistas de dados podem inadvertidamente comprometer a
reprodutibilidade dos resultados de uma execução para outra. Mesmo quando
dois cientistas de dados estão trabalhando com os mesmos dados de treinamento e
versões de modelo de Machine Learning, os desenvolvedores podem
inadvertidamente introduzir a variabilidade de execução para execução - e
comprometer a reprodutibilidade - através das seguintes práticas de modelagem de redes neurais .

· Inicialização : Os modelos se
aproximam de um resultado útil quando suas saídas convergem em um valor específico. A
aceleração desse processo geralmente exige que os valores iniciais do modelo
sejam definidos por amostragem. Isso geralmente aumenta a velocidade de
convergência ao definir os pesos iniciais como zero. Mas também introduz
aleatoriedade na inicialização de cada execução. O resultado é que os
pesquisadores podem se desviar inadvertidamente da reprodutibilidade estrita
quando tentam verificar as descobertas de outra pessoa.

· Ordenação : A capacidade dos
modelos de aprender os padrões subjacentes em um conjunto de dados pode ser
degradada pela ordem das observações às quais eles são expostos durante o
treinamento. Assim, os cientistas de dados aprenderam que geralmente é uma
boa prática embaralhar aleatoriamente um conjunto de dados antes de cada
treinamento. Mas essa prática também se desvia da reprodutibilidade
estrita das descobertas entre as execuções.

· Camadas : Os modelos podem
incluir camadas e nós que possuem aleatoriedade inerente, como desistências, que reduzem o
overfitting excluindo alguns nós de entrada da rede neural, ocultos e visíveis,
de qualquer execução de treinamento específica. Isso normalmente resulta
na mesma amostra de entrada produzindo diferentes ativações de camada de
execução para execução, o que se desvia da reprodutibilidade estrita.

· Migração : As bibliotecas de
modelos podem ter comportamentos sutilmente diferentes de versão para versão,
mesmo que a API de front-end e o conjunto de dados de treinamento permaneçam
inalterados ao migrar um modelo de uma estrutura para outra. Isso pode
comprometer a reprodutibilidade se os desenvolvedores subsequentes não puderem recorrer
a estruturas de modelagem de back-end usadas para gerar um resultado
específico.

· Execução : O código do modelo pode não produzir cálculos consistentes
nas execuções, se não executado nas mesmas versões e configurações de
aceleradores de hardware de back-end, como GPUs, devido a alterações nas
implementações de hardware. Isso pode prejudicar a reprodutibilidade. Os
profissionais subsequentes precisam estar cientes dessas dependências de
hardware e, portanto, não podem desativar as operações alteradas sem
comprometer o escopo de seus testes.

IA

Não economize na trilha de auditoria
Se os
cientistas de dados garantirem que o trabalho atenda a padrões consistentes de
transparência, auditabilidade e acessibilidade, eles facilitarão a
identificação desses problemas de reprodutibilidade por outras pessoas. Por
todas essas razões, os cientistas de dados devem sempre garantir que os métodos
ágeis deixem uma trilha de auditoria suficiente para a verificação
independente.

No
entanto, como acabei de dizer, alguns desses problemas podem ser causados ​​por
nuances misteriosas de modelagem, treinamento, portabilidade de estrutura
cruzada e dependência de hardware de back-end. Como resultado, eles podem
não ser facilmente localizados em avaliações
feitas por outros cientistas de dados, a menos que essas revisões incluam os
algoritmos, frameworks e os especialistas em hardware necessários. 

 A reprodutibilidade continuará sendo um
desafio para os profissionais de IA. Mas continuará a ressurgir e a
crescer em importância para todos os interessados ​​em IA, porque a sociedade
nunca confiará totalmente nas ações automatizadas tomadas por esses ativos
inteligentes incorporados, a menos que possam mostrar resultados razoavelmente
repetíveis, de acordo com o que seus desenvolvedores definiram.

Junte-se a nós e receba nossas melhores histórias de tecnologia. Newsletter Newsletter por e-mail