
Conceitos, Visão geral sobre IA e utilizações na área da Saúde
UFPE
Pense na pessoa mais inteligente que você conhece!!!
A Inteligência, mais especificamente inteligência humana é um termo interessante de discutir, ela envolve (Sternberg, 2000):
o cérebro humano, que é o órgão mais complexo do corpo humano;
a mente, sendo esta relacionada a capacidade de pensar, raciocinar, lembrar, entender e sentir;
o pensamento lógico, que é a capacidade de raciocinar e resolver problemas;
a compreensão, associado a capacidade de entender e interpretar informações;
a aplicabilidade, que vai de encontro a capacidade de aplicar conhecimentos e habilidade em sua maioria sendo em situações práticas;
Em geral, a inteligência pode ser bem definida como a capacidade de um indivíduo realizar tarefas efetivamente usando seu próprio conhecimento, interpretação e perspicácia.

Teste de Turing.O conceito básico deste jogo é descobrir se o participante é humano ou um computador.
O cenário 1 do teste consiste em três jogadores, onde o primeiro jogador é um “homem”, o segundo jogador é uma “mulher” e o terceiro jogador é o “interrogador”, que pode ser tanto um homem quanto uma mulher. Os dois primeiros jogadores estarão em salas diferentes, e o interrogador não sabe quem são os jogadores. Agora, o desafio do interrogador é descobrir o gênero dos dois primeiros jogadores com base nas respostas escritas dadas por eles para as perguntas feitas pelo interrogador. Outro desafio será criado fazendo com que o primeiro jogador dê intencionalmente respostas incorretas às perguntas, o que pode induzir o interrogador a inferir que o primeiro jogador é uma “mulher” em vez de um “homem”. A Figure 1 mostra o cenário do teste de imitação.
Turing tentou projetar este jogo com uma pequena alteração, na qual substituiu um dos dois primeiros jogadores por um computador no cenário de teste 2.
Ele analisou se a máquina tinha a capacidade de agir como um jogador humano aplicando sua própria inteligência.
Ele provou através do teste que o computador tem uma melhor capacidade de confundir o interrogador com sua inteligência, de modo que o interrogador tem a possibilidade de interpretar erroneamente o primeiro jogador como humano em vez de computador.
A inteligência da máquina foi comprovada através do teste de Alan Turing e amplamente aceita pela comunidade de pesquisa na época.
Timeline 1 da IA.(fonte:Weijermars, et.al. )
Timeline 2 da IA.(fonte: Momentum Works report – The future by ChatGPT)
(fonte: AI Experience - Google)
Existem três abordagens da Inteligência Artificial:
é uma escola de pensamento que diz que a inteligência depende da percepção e da ação. Assim, o comportamento da inteligência só pode ser demonstrado no mundo real através da constante interação com o meio.
tenta replicar a inteligência humana, como a capacidade de resolver problemas através de regras e lógica. Por meio de símbolos, como palavras e conceitos, uma estrutura lógica é organizada que permite ao sistema de IA realizar as tarefas.
é baseada na simulação dos componentes do cérebro (modelagem da inteligência humana), como neurônios e sinapses. Aqui as soluções são baseadas em padrões e aprendizado de máquina, tentando imitar o funcionamento do cérebro humano.



A Inteligência Artificial é dividida em duas partes:
é quando uma máquina realmente entende o que está acontecendo. Podem existir emoções e criatividade. Na maior parte, é o que vemo em filmes de ficção científica.
é quando uma máquina realiza a correspondência entre padrões, e está relacionada a tarefas específicas, e as capacidades não são facilmente transferíveis para outros sistemas.
O ambiente de inteligência artificial consiste em cinco componentes principais:
O ambiente de inteligência artificial consiste em cinco componentes principais:
Machine Leaning (ML) ou Aprendizado de máquina (AM) é um subcampo da Inteligência Artificial que estuda, desenvolve e analisa os algoritmos de aprendizado. Através de utilização dos métodos de AM, modelos baseado em dados podem ser criados para solucionar um determinado tipo de problema específico que de IA, dentre eles, aprendizados supervisionados, não supervisionados e aprendizagem por reforço.

Inicialmente, as aplicações que eram consideradas de AM eram apenas as desenvolvidas estritamente pela comunidade da computação, contudo, no final dos anos 90, as aplicações de AM começaram a ter intersecções com as de estatística.
Atualmente, a comunidade de AM é bastante interdisciplinar, sendo a estatística uma das áreas. Enquanto que até os anos 90, métodos criados pela estatística começavam a ser incorporados em AM, atualmente a direção oposta está cada vez mais comum: métodos desenvolvidos por AM começaram a ser usados em estatística.
Dessa forma, hoje os algoritmos existentes em Machine Learning e Inteligência Artificial possuem como base em sua maioria conceitos da Estatística e Computação.
Muitas vezes só consideramos aplicações de Inteligência Artificial quando conseguimos visualizar a solução pronta e funcionando, mas o processo de desenvolvimento de um modelo de IA é muito mais complexo e envolve diversas etapas.
Uma dessas áreas é:
GEMINI é um modelo de IA desenvolvido pelo Google que pode entender e gerar texto, através de próprios textos, imagens e áudio. O modelo é capaz de responder a perguntas, criar histórias e até mesmo compor músicas.
SORA é um modelo de IA desenvolvido pela OpenAI que pode transformar texto em vídeo. O modelo é capaz de criar vídeos de alta qualidade a partir de descrições de texto.
GPT-4o da OpenAI, modelo multimodal que consegue interpretar áudio, visão e texto em tempo real.
GPT-o1 da OpenAI, é uma solução que “tem fortes capacidades de raciocínio e amplo conhecimento do mundo”.

É um perfil no Instagram que publica imagens de possíveis enfermidadese pede o diagnóstico aos seguidores. Cada imagem apresenta inúmeros diagnósticos.
A Survey of Large Language Models in Medicine: Progress, Application, and Challenge1

Quais são os objetivos de LLM para saúde?
Quais são os objetivos de LLM para saúde?


O Med-PaLM é um modelo de linguagem grande (LLM) projetado para fornecer respostas de alta qualidade a perguntas médicas, baseado no modelo de linguagem PaLM 2, uma nova iteração do modelo de linguagem da Google que trouxe melhorias significativas em várias tarefas de benchmark para grandes modelos de linguagem (LLMs).
O Med-PaLM 2 foi o primeiro a atingir o nível de especialista humano em responder perguntas no estilo USMLE1.
Como forma de melhorar o modelo com novas informações (novos datasets), foi utilizado o treinamento via Finetuning;
As bases de dados utilizados foram:
Que são consideradas bases de dados médicas que cobrem amplamente o conhecimento clínico e incluem.

Você pode me descrever uma análise sobre Raio-X?
Achados:
Impressão: Nenhuma doença ativa observada no tórax.
A tokenização é o processo de pegar o texto e transformar as sequências de entrada para números.

Apesar da referẽncia, palavras grandes podem ser divididas em subtokens menores, sendo assim, em 1.000 tokens de palavras em português correspondem aproximadamente a 700 a 750 palavras do nosso idioma.
Essa contagem de palavras em um texto pode variar bastante dependendo da linguagem, do tamanho das palavras e do uso de pontuações.

Embeddings são vetores numéricos obtidos dos tokens e representam palavras, frases ou documentos.
Os embeddings é o processo de transformar o mapeamento do vetor de texto de entrada na matriz de embeddings1.
Os embeddings faz uma representação mais rica do relacionamento entre os tokens (pode limitar o tamanho e pode ser aprendida).
Os embeddings conseguem capturar a estrutura semântica das palavras ou frases e suas relações no texto.
Atualmente, elas são criadas usando técnicas de machine learning, como Word2Vec ou GloVe e deep learning, como BERT, GPT-3, e os modelos mais atuais de LLMs.
As word embeddings transformam os valores inteiros únicos obtidos a partir do tokenizador em um array \(n\)-dimensional.
Por exemplo, a palavra ‘gato’ pode ter o valor ‘20’ a partir do tokenizador, mas a camada de embedding utilizará todas as palavras no seu vocabulário associadas a ‘gato’ para construir o vetor de embeddings. Ela encontra “dimensões” ou características, como “ser vivo”, “felino”, “humano”, “gênero”, etc.
Assim, a palavra ‘gato’ terá valores diferentes para cada dimensão/característica.

Detalhes importantes:
Similaridade do Cosseno (\(Sim_{cos}\)):
Distância do Cosseno (\(D_{cos} = 1 - Sim_{cos}\)):

Alguns conceitos importantes quando se trabalha com algoritmos de LLMs, são:
Tokenização: Os dados de entrada são divididos em tokens, focando em texto, é a associação de número inteiro único para cada palavra ou sub-palavra;
Embedding: cada token é transformado em um vetor denso (embedding);
Camadas de Encoder: são responsáveis por processar e refinar os embeddings;
Self-Attention Mechanism: Cada token na sequência avalia a importância de todos os outros tokens, permitindo a incorporação de contexto global em cada embedding.
Saída do Encoder: O resultado das camadas de encoder é um conjunto de embeddings contextuais, onde cada token embedding contém informações sobre todo o contexto da sequência.

Alguns conceitos importantes quando se trabalha com algoritmos de LLMs, são:
Preparação da Entrada do Decoder: A entrada do decoder é preparada os embeddings contextuais do encoder;
Camada de Self-Attention do Decoder: Semelhante ao encoder, o decoder usa múltiplas cabeças de atenção para capturar diferentes aspectos da relação entre tokens, mas respeitando a ordem causal;
Camada de Atenção Encoder-Decoder: A camada de atenção encoder-decoder permite que o decoder se concentre em diferentes partes da entrada do encoder, dependendo do token que está sendo gerado.
Saída do Decoder: O resultado do decoder é um conjunto de embeddings contextuais finais, que são usados para prever o próximo token na sequência de saída.
Predição do Próximo Token: O modelo prediz o próximo token na sequência de saída com base nos embeddings contextuais finais.

Os modelos possuem alguns hiperparâmetros ajustáveis para inferência dos retornos.
Entretanto, vamos falar primeiramente definições de Top-k e Top-p e depois detalharemos sobre a Temperatura.
O top-k proporciona uma aleatoriedade controlada ao considerar um número fixo de tokens mais prováveis, enquanto o top-p permite um controle dinâmico sobre o número de tokens considerados, resultando em diferentes níveis de diversidade no texto gerado.
A probabilidade cumulativa refere-se ao somatório das probabilidades de um conjunto de eventos ou opções, somadas em ordem decrescente de probabilidade até que um certo limite seja atingido
Suponha que o modelo tenha os seguintes tokens candidatos, com suas probabilidades associadas:
| Token | Probabilidade |
|---|---|
| Token A | 0,40 |
| Token B | 0,30 |
| Token C | 0,15 |
| Token D | 0,10 |
| Token E | 0,05 |
Agora, se você definir top-p = 0,85, o modelo irá selecionar tokens até que a probabilidade cumulativa atinja 0,85.
Assim, apenas os tokens A, B e C serão considerados, pois a soma de suas probabilidades atinge 0,85. Tokens com probabilidade mais baixa (como D e E) serão excluídos da escolha, a menos que top-p seja aumentado.

O parâmetro de temperatura é aplicado diretamente à função softmax.

Efeito da Temperatura
À medida que a temperatura se aproxima de 0, as probabilidades de saída se tornam mais “agudas”. Uma das probabilidades ficará próxima de 1.
Conforme a temperatura aumenta, as probabilidades de saída se tornam mais “planas” ou “uniformes”, reduzindo a diferença entre as probabilidades dos diferentes elementos.
O intervalo do parâmetro de temperatura é definido entre 0 e 1 na documentação da OpenAI. No contexto da Cohere, os valores de temperatura estão dentro do intervalo de 0 a 5.
Código em python para analisar-mos a temperatura1:

Em termos práticos, alguns problemas que temos com LLMs (SLMs) são:
Duas alternativas para mitigar esses problemas são:
Fine-Tuning: ajustar o modelo para um conjunto de dados específico, para que ele possa aprender a tarefa desejada;
RAG (Retrieve and Generate): que é um modelo que combina a capacidade de recuperar informações de um grande banco de dados com a capacidade de gerar texto de um modelo de linguagem.

Reid, Machel, et al. (2024). Gemini 1.5: Unlocking multimodal understanding across millions of tokens of context. arXiv preprint arXiv:2403.05530 .
Vaswani, A., N. Shazeer, N. Parmar, J. Uszkoreit, L. Jones, A. N. Gomez, L. Kaiser, and I. Polosukhin (2017). Attention is all you need. Advances in neural information processing systems 30.
Devlin, J., M.-W. Chang, K. Lee, and K. Toutanova (2018). Bert: Pre-training of deep bidirectional transformers for language understanding. arXiv preprint arXiv:1810.04805.
Hirschberg, J. and C. D. Manning (2015). Advances in natural language processing. Sci- ence 349 (6245), 261–266.
Zhou, H., Liu, F., Gu, B., Zou, X., Huang, J., Wu, J., … & Clifton, D. A. (2023). A survey of large language models in medicine: Progress, application, and challenge. arXiv preprint arXiv:2311.05112.
Singhal, Karan, et al. (2023). Large language models encode clinical knowledge. Nature, 620(7972), 172-180.
https://github.com/AI-in-Health/MedLLMsPracticalGuide
https://sites.research.google/med-palm/
Fontes das imagens utilizadas:
https://iaexpert.academy/2017/03/23/ia-simbolica-x-ia-conexionista/
https://www.zendesk.com.br/blog/inteligencia-artificial-simbolica-e-conexionista/
https://bleedaiacademy.com/overview-of-the-field-artificial-intelligence-part-4/
https://www.researchgate.net/publication/ 221053431_Application_of_Mixture_of_Experts_to_Construct_Real_Estate_Appraisal_Models
https://lena-voita.github.io/nlp_course/word_embeddings.html
OBRIGADO!
Slide produzido com quarto
Lattes: http://lattes.cnpq.br/4617170601890026
LinkedIn: jodavidferreira
Site Pessoal: https://jodavid.github.io/
e-mail: jodavid.ferreira@ufpe.br

Inteligência Artificial na Saúde - Jodavid Ferreira