4 Novembro 2024
Explainable AI: Como ter modelos de Machine Learning mais compreensíveis

E se pudéssemos interpretar os resultados de um modelo de Machine Learning (ML) de forma simples e com o contexto de cada problema?
Os algoritmos de ML são conhecidos como “caixas negras” ou “caixas brancas”. As “caixas negras” representam modelos muito complexos e difíceis de interpretar, mesmo por especialistas na área. Já as “caixas brancas” representam modelos mais simples e que podem ser interpretados por data scientists (state, n.d.). No entanto, nenhum destes tipos de modelos é de fácil compreensão para pessoas que não trabalham na área e torna-se difícil para os diferentes stakeholders dos projetos compreenderem e confiarem nas decisões dos modelos.
Para combater esta lacuna, surgiu a área de Explainable AI, que pretende ajudar a compreender as decisões dos modelos e torná-las transparentes, de modo a aumentar a confiança e a segurança ao usar modelos de ML em áreas críticas. (IBM, n.d.)
Existem cada vez mais bibliotecas Python que nos ajudam a interpretar os modelos. As mais utilizadas, neste momento, são: SHAP, LIME e ELI5. Apesar de já existirem estas bibliotecas Python que nos permitem perceber a importância de cada variável para as previsões feitas, é difícil interpretar o significado de cada contribuição (valor positivo vs. negativo, valores altos vs. baixos) e o que significam no contexto de cada problema/ negócio.
A proposta passa por aliar um Large Language Model (LLM) à biblioteca LIME, o que vai permitir perceber as decisões tomadas pelo modelo de ML e explicar cada decisão no contexto do seu problema.
Um LLM é um modelo que utiliza algoritmos avançados de processamento de linguagem natural (NLP) para compreender e gerar texto. Estes modelos são treinados com grandes volumes de dados textuais, como livros e artigos da web, para aprender como a linguagem é estruturada e como as palavras e frases se relacionam entre si. Um exemplo famoso de LLM é o GPT (Generative Pre-trained Transformer). (Souza, 2023)
Se aliarmos a contextualização do problema que estamos a resolver aos resultados obtidos através da biblioteca LIME, e alimentarmos a prompt de um LLM com esta informação, conseguimos transformar contribuições (números difíceis de interpretar) em linguagem natural com explicações simples e ajustadas ao contexto de cada problema/negócio.
Para perceber um pouco melhor como funciona esta proposta será utilizado um exemplo: Um problema de classificação para prever se um doente vai ou não desenvolver diabetes com base em variáveis clínicas como glucose, insulina, IMC, diabetes pedigree function (função com a probabilidade de desenvolver diabetes com base no histórico familiar), idade, número de gravidezes, tensão arterial e grossura da pele.
Analise-se este indivíduo em particular:
Porque é que o modelo de ML antecipou que este individuo não ia ter diabetes?
A biblioteca LIME justifica da forma apresentada acima. Facilmente conseguimos perceber que o modelo prevê que este indivíduo tem 63% de probabilidade de não vir a desenvolver diabetes. Mas o que significa a glucose menor que 96 ter uma contribuição de 0.19? Apenas com estes valores torna-se difícil interpretar os resultados.
Usando um LLM da OpenAI, com o modelo GPT-3.5, e dando o contexto teórico do problema conseguimos obter um relatório com a interpretação do modelo de ML. Neste caso foi indicado ao LLM que este era um problema de classificação para prever predisposição para diabetes e que o objetivo seria dar uma interpretação dos resultados obtidos. O relatório obtido foi o seguinte:
“A interpretação do modelo destes fatores é a seguinte:
– Glicose <= 96,00: Esta variável tem a maior contribuição negativa de -0,193, indicando que níveis de glicose abaixo de 96 mg/dL estão associados a um menor risco de desenvolver diabetes.
– 111,25 < Insulina <= 125,00: Níveis de insulina entre 111,25 e 125,00 têm uma contribuição positiva de 0,073, sugerindo que níveis mais elevados de insulina aumentam o risco de desenvolver diabetes.
– IMC > 37,52: Um IMC superior a 37,52 tem uma contribuição positiva de 0,067, indicando que a obesidade é um fator de risco para a diabetes.
– Diabetes Pedigree Function <= 0,25: Uma Diabetes Pedigree Function mais baixa, com uma contribuição de -0,061, sugere uma menor predisposição genética para a diabetes.
– Idade entre 23,00 e 31,00: Esta faixa etária tem uma contribuição negativa de -0,041, indicando que uma idade mais jovem está associada a um menor risco de desenvolver diabetes.
– Gravidezes entre 3,00 e 6,75: Este intervalo tem uma contribuição negativa de -0,014, sugerindo que ter tido entre 3 e 6,75 gravidezes está associado a um menor risco de desenvolver diabetes.
– 72,41 < Pressão Sanguínea <= 80,00: Níveis de pressão sanguínea entre 72,41 e 80,00 têm uma pequena contribuição positiva de 0,004, indicando que uma pressão sanguínea mais elevada pode ser um fator de risco para a diabetes.
– Espessura da Pele entre 29,00 e 29,15: Este intervalo tem uma contribuição muito pequena e negativa de -0,001, sugerindo que a espessura da pele nesta faixa não é um fator de risco significativo para a diabetes.
No geral, o modelo sugere que este paciente tem um risco moderado de desenvolver diabetes, sendo os fatores de risco mais significativos níveis elevados de glicose, níveis elevados de insulina e obesidade. No entanto, a idade mais jovem do paciente, menor predisposição genética e menor número de gravidezes podem ser fatores de proteção. É importante notar que estas são correlações estatísticas e devem ser validadas com aconselhamento médico. No entanto, as contribuições do modelo fornecem insights valiosos sobre os fatores que podem ser relevantes para prever o risco de diabetes neste paciente.”
Com a resposta do LLM, os stakeholders conseguem entender o que motivou o modelo a considerar que este paciente não iria ter diabetes e perceber se esta previsão fará sentido clinicamente.
Esta simplificação na explicação dos resultados vem eliminar o conceito de “caixas negras” dando lugar à transparência e à responsabilidade no uso de modelos preditivos permitindo a todos os stakeholders compreenderem os resultados e fazerem uso dos mesmos sem receios associados.
A biblioteca LIME pode ser usada em problemas de vários tipos, nomeadamente problemas de regressão e de classificação e com classificadores de imagens, o que alarga o número de problemas em que esta solução pode ser aplicada.
Num mundo em que a Inteligência Artificial e o Machine Learning são cada vez mais soluções de destaque, a possibilidade de decifrar as “caixas negras” ajuda a dar passos no caminho das práticas morais e responsáveis e no seu bom uso ao serviço da Humanidade.
A BI4ALL pretende estar na vanguarda deste caminho. Se estiver interessado em potenciar as capacidades de Data Science e Inteligência Artificial para o seu negócio, estamos disponíveis para conhecer o seu projeto.
IBM. (n.d.). Retrieved from https://www.ibm.com/topics/explainable-ai
Souza, A. (2023, julho). Medium. Retrieved from https://medium.com/blog-do-zouza/tudo-o-que-voc%C3%AA-precisa-saber-sobre-llm-large-language-model-a36be85bbf8f
state, A. (n.d.). Retrieved from https://www.activestate.com/blog/white-box-vs-black-box-algorithms-in-machine-learning/