Pesquisar aqui

terça-feira, 1 de dezembro de 2020

[IDS] Deep Learning for Chemistry: Optimizing the prediction of the pH of a solution during a titration

    Os grandes avanços na computação trouxeram e trazem ferramentas que ajudam no melhor estudo das diversas áreas. Uma boa forma de conciliar Matemática e computação com Química é através da obtenção, estudo e profunda análise de resultados laboratoriais. 
    No gráfico da Fig. 1 está representado o valor de pH  de uma solução durante o processo de titulação obtidos em laboratório.  
Figura 1: Resultados experimentais
    
    A atividade consistia em determinar para qual valor de volume de NaOH verificava-se uma alteração brusca no valor de pH da solução. Uma vez que é para este valor que há a maior variação do declive da reta, a reta tangente ao ponto desejado terá um declive de 0 para a primeira derivada (f′(x)) e portanto será o zero da segunda derivada (f”(x)). Porém para calcular analiticamente as derivadas, é preciso encontrar - por intermédio de uma técnica matemática - a função da reta que melhor se ajusta aos dados. Esse método pode ser o Método dos Mínimos Quadrados, uma técnica de otimização matemática que procura encontrar o melhor ajuste para um conjunto de dados tentando minimizar a soma dos quadrados das diferenças entre o valor estimado e os dados observados (tais diferenças são chamadas resíduos).     Assume-se que a curva mais bem ajustada seja a que minimiza a soma dos quadrados dos resíduos. Para a escolha do melhor modelo de regressão foi descartado o uso do R² e foi analisado o desvio padrão das regressões (onde menores valores correspondem a melhores modelos).
Figura 2: Regressão com base na Sigmóide de Boltzmann

    Infelizmente, cada parâmetro calculado a partir da regressão possuí um erro associado, e a média dos erros de todos os parâmetros é de 0,077, o que é bastante elevado (comparativamente aos resultados experimentais). Parte desse erro, advém da falta de pontos e a consequente incapacidade de ajuste por parte do programa utilizado.

    A solução pode ser utilizar um subcampo das redes neurais artificiais, chamado Deep Learning. Ao simular o comportamento dos neurónios do cérebro humano, possuem a capacidade de manter a aquisição e manutenção do conhecimento. Nos neurónios biológios, os sinais são recebidos pelos dentritos para posteriormente serem transmitidos para outro local (comunicação entre neurónios). Por outras palavras, os neurónios recebem algumas informações de entrada e respondem as mesmas, de forma a permitir ou não a retransmição da informação. O neurónio pode até alterar a informação de entrada antes que seja retransmitida.
Figura 3: Representação de uma rede neural com um neurónio (perceptron)

    O neurónio matemático recebe as entradas (parâmetros) que, após serem ponderadas, são passadas para uma função de agregação que é utilizada pela função de ativação. Essa função define como vai ser a saída do neurónio, que posteriormente pode ser o sinal de entrada de outro neurónio. Para criar um modelo capaz de fazer a previsão dos valores de pH consoante o volume de NaOH adicionado, foi criada uma rede neural com três gradientes, dois com 64 neurónios com a função de activação ReLU e um com 1 neurónio e a função de ativação Sigmóide. O optimizador escolhido foi o Adam (...the name Adam is derived from adaptive moment estimation) , pois não só requere menos memória como também é computacionalmente eficiente. Para o treino do modelo foram usados 80% da amostra, e o restante para a validação dos resultados. O treino promoveu 5000 iterações (é a quantidade de vezes que cada amostra vai poder atualizar os parâmetros internos do modelo) com um tamanho de lote (é a quantidade de samples processadas antes do modelo ser atualizado) de 1. Por outras palavras, cada iteração contará com 70 atualizações do modelo, ou seja, totalizando 280000 atualizações do modelo antes de sua utilização.
    O gráfico da Figura 4 apresenta a curva de aprendizagem do modelo e como os erros (calculados via o método dos mínimos quadrados) diminuem com o aumento das iterações (representando em azul o erro no treino e em laranja o erro na validação).
Figura 4: Curva de aprendizagem do modelo

    Uma vez que nas últimas iterações a perda é menor que 0,00, a previsão dos valores de pH pelo modelo são fidedignos, tal como ilustra o gráfico da Figura 5 (foram estimados 1 milhão de valores entre 4 e 35). 
Figura 5: Previsão do modelo e resultados experimentais
 
    Com o aumento significativo de pontos a regressão realizadam, a precisão na determinação dos parâmetros da função de ajuste teve um aumento de 128,4 vezes, isto é, a utilização de algorítmos de Deep Learning contribuíram para um aumento de aproximadamente 130 vezes da precisão dos resultados.
Figura 6: Derivadas da função obtida após o ajuste da curva

fonte: Marcelo, Guilherme L. Deep Learning for Chemistry: Optimizing the prediction of the pH of a solution during a titration. 2020 Mar 28 [cited 2020 Dec 1].

2 comentários:

Comente de forma construtiva...

Nota: só um membro deste blogue pode publicar um comentário.