Químio-Informática - Machine Learning. QSAR e QSPR. Árvores de Decisão Flashcards
Um problema que tem sido a ser solucionado ao longo dos anos é a capacidade…
…de que um computador “aprenda” química (inteligência artificial), ou seja, a partir de uma dada estrutura, conseguir prever propriedades como toxicidade, ou mesmo espetros, até mesmo prever como será o tipo de reação, por estes métodos de machine learning. Todas estas propriedades se encontram codificadas na estrutura molecular, ou seja, que átomos estão ligados e que tipo de elementos se encontram na mesma.
De que maneira um computador “aprende”?
De forma empírica, a partir de conjuntos de dados experimentais, é possível aplicar técnicas estatísticas (como regressões lineares) ou métodos de aprendizagem automática (como redes neuronais, árvores de decisão ou support vector machines) para estabelecer relações entre estrutura química e propriedade molecular (QSPR), ou entre estrutura química e atividade biológica (QSAR). Para tal, as estruturas químicas são representadas por um número fixo de parâmetros, denominados descritores moleculares.
As técnicas de Machine Learning são usadas para estabelecer relações de estrutura-propriedade, recorrendo a:
◦ QSPR - Relações Quantitativas Estrutura- Propriedade, tratando-se de um método mais geral, servindo para propriedades, como viscosidades.
◦ QSAR - Relações Estrutura-Atividade Quantitativas, encontrando-se especificado para propriedades biológicas (inibição, potência)
Os passos típicos dum estudo de QSPR ou QSAR são:
a) Definir os conjuntos de dados;
b) Selecionar os descritores moleculares;
c) Treinar o modelo;
d) Avaliar o modelo.
A partir dos dados disponíveis devem selecionar-se 3 conjuntos disjuntos:
◦ conjunto de treino para construir o modelo;
◦ conjunto de validação para otimizar parâmetros do treino;
◦ conjunto de previsão para testar o modelo final com objetos ainda não vistos pelo modelo.
É necessário garantir que não existem compostos simultaneamente no conjunto de treino e de previsão (relembrem a utilização de SMILES ou InChI). A divisão do conjunto inicial pode ser feita:
◦ De forma aleatória;
◦ Basear-se na distribuição da propriedade a prever;
◦ Basear-se na diversidade molecular do conjunto de dados, que permite selecionar um conjunto de treino que cubra o melhor possível o universo das estruturas disponíveis (há a possibilidade de definir semelhanças entre moléculas a partir de descritores moleculares, ou de hashed fingerprints, por exemplo).
Por exemplo, se sabemos que o ponto de fusão está relacionado com o tamanho e com a polaridade dos compostos, para modelar o ponto de fusão devemos incluir descritores que codifiquem o tamanho e a polaridade.
Outros critérios para selecionar descritores são a:
◦ Correlação entre descritores;
◦ Variância, ou seja, dois descritores muito correlacionados são redundantes enquanto que descritores com baixa variância são pobres em informação.
Por vezes também são usadas técnicas de análise multivariada como Análise de Componentes Principais (PCA) para transformar o conjunto de descritores num conjunto mais pequeno com maior densidade de informação.
Como é que as regressões linerares se relacionam com técnicas de machine learning?
As regressões lineares podem ser explicadas por um exemplo bastante simples de regressão linear é a previsão de concentrações a partir de absorvâncias pela lei de Lambert-Beer. De uma forma geral, a partir de um conjunto de pontos, para encontrar a reta, o algoritmo otimiza o declive (a) e a ordenada na origem (b), tal que a reta passe o mais possível pelos pontos todos, minimizando os quadrados das distâncias de cada ponto à reta.
Dá um exemplo bom para usar regressões linerares em machine learning.
Se tivermos um único descritor, podemos usar uma destas regressões lineares para, por exemplo, modular o ponto de ebulição a partir do peso molecular. Constrói-se uma regressão, onde teríamos as seguintes variáveis:
◦ Variável x (massa molecular);
◦ Variável y (ponto de ebulição).
Logo, o algoritmo iria encontrar a melhor equação que descrevesse melhor a relação linear entre x e y.
y = ax + b
Sendo o objetivo encontrar os melhores valores possíveis de a e b tal que essa equação permita prever y a partir de x. Logo, se tivermos um composto novo podemos prever o seu ponto de ebulição através da adição de variáveis x (valor de peso molecular).
Uma regressão simplesmente linear é bastante simples. Uma primeira ferramenta para construir modelos QSAR/QSPR é a…
regressão multilinear. Estas exprimem a propriedade a prever (y) como uma combinação linear de descritores moleculares x1, x2, … xn, ou seja:
◦ Variáveis x: x1, x2, x3, x4, …, xn (descritores)
◦ Variável y (propriedade)
Sendo o objetivo encontrar a melhor equação que descreva melhor a relação linear entre x1,.., xn e y:
y = a1 x1 + a2 x2 + a3 x3 +…+ an xn + b
Como funciona a regressão multilinear?
No contexto de QSAR/QSPR:
Você coleta uma série de moléculas;
Calcula descritores para cada uma;
Usa esses dados para “treinar” o modelo, ajustando os b’s para minimizar os erros (normalmente usando método dos mínimos quadrados);
Depois, com novos compostos, você pode prever propriedades usando essa equação.
O algoritmo dos mínimos quadrados minimiza a soma das distâncias ao quadrado dos pontos até à linha num espaço n dimensional. O que entendes por isto?
Quando você ouve que o método dos mínimos quadrados minimiza a soma das distâncias ao quadrado dos pontos até à linha (ou hiperplano, em várias dimensões), isso quer dizer:
Você tem um conjunto de dados: cada ponto é (X₁, X₂, …, Xₙ, Y).
O seu modelo tenta prever o valor de Y a partir dos X.
Para cada ponto real, existe uma diferença entre o valor real de Y e o valor previsto pelo modelo: essa diferença é chamada de resíduo.
O que o algoritmo faz é calcular o quadrado desse resíduo para cada ponto (assim, valores negativos não se anulam).
Depois soma todos esses quadrados.
E então ajusta os coeficientes b0, b1, …, bn para que essa soma seja o menor possível.
Por vezes, será necessário restringir determinado tipo de descritores caso não seja relevante para a propriedade e características que temos de resolver. Como por exemplo…
Por exemplo, o ponto de fusão está relacionado com o tamanho e polaridade dos compostos, logo, se quisermos modelar o ponto de fusão devemos usar descritores moleculares que codifiquem tamanho e polaridade.
Exemplo de aplicação com regressões multilineares:
Prever a constante de velocidade de reação de um composto como radical OH, que acontece na atmosfera e serve para prever o destino de compostos na mesma. Deste modo, selecionaram-se descritores e montou-se uma descrição multilinear e selecionaram-se os descritores com a seguinte equação:
Onde:
HOMO: Energia da orbital molecular ocupada de maior energia
nX: Número de átomos de halogéneos
ClC0: índice de conteúdo de informações complementares. É topológico que codifica o conteúdo de informação dentro da sup. molecular
nCaH: Número de C aromáticos não substituídos (sp2)
Quando analisamos a representação gráfica do training set como devemos avaliá-la? É a melhor maneira de avaliar o modelo?
Ao analisar o training set, observamos alguma dispersão à volta da linha azul. Concluímos que esta característica é razoável e que a equação parece ser capaz de produzir o conjunto de treino, com base em 4 descritores. No entanto, o gráfico em si não é uma boa forma de avaliar se o modelo é bom ou não, porque fazer previsões com base nestas equações experimentais pode não servir para serem aplicados em situações novas. Só porque o modelo ficou bom para o conjunto de treino não significa que ele é confiável para fazer previsões de novos compostos.
O modelo pode ter simplesmente “decorado” (overfitting) os dados de treino — ou seja, ajustado demais aos exemplos conhecidos, sem entender o padrão real. Logo temos de ver de que maneira é que os novos são capazes de apresentar estas previsões.
Quando analisamos a representação gráfica do test set como devemos avaliá-la? É a melhor maneira de avaliar o modelo?
Passando para o test set, na linha vermelha temos outros compostos e vemos que o modelo continua bom, tendo em conta que são compostos novos. Podemos dizer que, mais uma vez, não é possível concluir sobre a dispersão apresentada, porque teríamos de comparar com outros compostos. Como não temos casos extremos, globalmente, é capaz de distinguir bem compostos com constantes de velocidade nesta gama. Outra conclusão que tiramos é que, se tivermos compostos com k muito parecidos, já seria difícil usar o modelo, visto que há muitos casos com valores experimentais próximos, que apresentam valores previstos quase sobrepostos, e noutros casos muito longe uns dos outros. Logo, depende do contexto das aplicações.
Que softwares usamos para fazer regressões multilineares?
◦ Excel;
◦ Serviço web wessa.net;
◦ Weka
As regressões multilineares apresentam a vantagem de ser um modelo completamente transparente. Ou seja, eles:
◦ Mostram os descritores e as funções usadas;
◦ Mostram o contributo de determinado descritor para sinal positivo ou negativo;
◦ Existem parâmetros que dão a descrição do descritor, ou seja, sabemos logo a profundidade dos mesmos.
Exemplos cotidianos de árvores de decisão podem ser?
Já se conhecem exemplos de árvores de decisão, para classificação, como as chaves dicotómicas em Biologia, para classificar organismos a partir das suas características, ou num call center, em que escolhemos um número para nos reencaminhar a chamada a um especialista do nosso problema.
Define o conceito de árvores de decisão.
Uma árvore de decisão consiste numa hierarquia de regras baseadas em valores dos descritores para os objetos do conjunto de treino. Cada regra consiste num teste lógico normalmente definido com base num descritor. Estas são outro algoritmo de aprendizagem automática e podem dividir-se em:
◦ Árvores de classificação, para problemas de classificação;
◦ Árvores de regressão, para problemas de regressão.
São intuitivas, tratando-se de conjuntos de regras hierárquicas onde, a partir dos descritores, vão classificar os objetos.
No âmbito desta cadeira, o objetivo de árvores de decisão é…
…inferir regras que permitam classificar estrutura moleculares, de acordo com os descritores definidos.
Temos então um conjunto de treino em árvores de decisão, onde os objetos são:
◦ Descritores: x1, x2, x3, x4, …, xn
◦ Classes: A, B, C, … (outpus)
As árvores de decisão procuram regras…
…para classificar objetos (moléculas), com base nos descritores x1 a xn, sendo estas, inferidas a partir dos objetos do conjunto de treino. Após o treino, as árvores podem ser aplicadas a novos objetos para a sua classificação.
Descreve características das árvores de decisão. Podes até dizer um problemas delas.
◦ As árvores são formadas por um conjunto de regras baseadas em valores de atributos (variáveis) no conjunto de dados de treino.
◦ Trata-se de uma técnica não paramétrica que produz árvores de classificação ou regressão, dependendo se a variável dependente é categórica ou numérica, respetivamente. O objetivo é ter um output com um número real.
◦ Os problemas consistem em atribuir a classificação a um objeto.