Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir...

66
FACULDADE DE E NGENHARIA DA UNIVERSIDADE DO P ORTO Data Mining em Aplicações de Desenho Racional de Fármacos Daniela Cardeano DISSERTAÇÃO Mestrado Integrado em Engenharia Informática e Computação Orientador: Rui Camacho Co-orientador: Nuno Fonseca 31 de Julho de 2014

Transcript of Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir...

Page 1: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO

Data Mining em Aplicaccedilotildees de DesenhoRacional de Faacutermacos

Daniela Cardeano

DISSERTACcedilAtildeO

Mestrado Integrado em Engenharia Informaacutetica e Computaccedilatildeo

Orientador Rui Camacho

Co-orientador Nuno Fonseca

31 de Julho de 2014

Data Mining em Aplicaccedilotildees de Desenho Racional deFaacutermacos

Daniela Cardeano

Mestrado Integrado em Engenharia Informaacutetica e Computaccedilatildeo

31 de Julho de 2014

Resumo

Os faacutermacos satildeo uma mais valia para a sauacutede de toda a populaccedilatildeo Uma das formas de umfaacutermaco atuar eacute a seguinte ligar-se a uma biomoleacutecula do nosso organismo conseguindo aumen-tar ou diminuir a sua funccedilatildeo e desencadear assim um efeito terapecircutico Para sintetizar um novofaacutermaco a induacutestria farmacecircutica tem de percorrer um longo e moroso processo Um dos grandesproblemas da concepccedilatildeo de faacutermacos estaacute no tempo gasto no seu desenvolvimento e por conse-guinte os elevadiacutessimos custos

Eacute preciso identificar a origem da doenccedila preferencialmente uma moleacutecula alvo Como a pro-teiacutena por exemplo causadora ou com forte influecircncia na ocorrecircncia de doenccedilas Eacute necessaacuteriodepois determinar como se consegue neutralizar essa origem (por exemplo obstruindoum siacutetioativo de um potencial) A parte de concepccedilatildeo de um faacutermaco comeccedila por procurar em grandesbases de dados moleacuteculas que possam neutralizaro alvo (este passo denomina-se screening) es-colher os candidatos mais promissores resultantes dessa pesquisa sintetizar algumas das novasmoleacuteculas testaacute-las em animais e no final requer ainda um longo periacuteodo de ensaios cliacutenicos emhumanos Um dos pontos que o Data Mining pode contribuir eacute no passo em que as novas moleacute-culas mais promissoras satildeo testadas em animais Com base em resultados de testes anteriores oData Mining pode ser usado para prever quais das novas moleacuteculas daratildeo melhores resultados Ostestes efetuados com as novas moleacuteculas satildeo cinco absorccedilatildeo distribuiccedilatildeo metabolismo excreccedilatildeoe toxicidade Satildeo conhecidos como testes ADMET

A proposta desta tese eacute desenvolver uma ferramenta que utiliza teacutecnicas de Data Mining deforma transparente para o utilizador (bioquiacutemico) que preveja os resultados dos testes ADMETdiminuindo o tempo gasto na concepccedilatildeo de um novo faacutermaco permitindo ao quiacutemico interagircom esta ferramenta e conceber novas moleacuteculas A ferramenta criada utiliza informaccedilatildeo sobremoleacuteculas existentes e usadas em testes reais para construir modelos que auxiliam o investigadorna construccedilatildeo de um protoacutetipo que tenha a atividade bioloacutegica pretendida

i

ii

Abstract

Drugs are an asset to the health of the entire population One form of a drug is to act as fol-lows to bind to a biomolecule of our organism achieving increase or decrease its function andthereby trigger a therapeutic effect To synthesize a new drug the pharmaceutical industry has along and lengthy process A major problem of drug design is the time spent in its developmentand therefore the high costs

You need to identify the origin of the disease preferably one target molecule As the proteinfor example or causes a strong influence on the occurrence of diseases You must then determinehow they can neutralize such an origin (for example blockingan active site of a potential) Partof designing the drug begins by searching in large databases molecules that can neutralizethetarget (this step is called screening) select the most promising candidates resulting from this re-search synthesize some of the new molecules test them in animals and in the end still requires along period of clinical trials in humans One of the points that the Data Mining can contribute isthe step where the most promising new molecules are tested on animals Based on the results ofprevious data mining tests can be used to predict which new molecules will give better results Thetests performed with the new molecules are five absorption distribution metabolism excretionand toxicity These are known as ADMET testing

The proposal of this thesis is to develop a tool that uses data mining techniques transparentlyto the user (biochemist) which provides the results of ADMET testing decreasing the time spentin the design of a new drug allowing the biochemist to interact with this tool and designing newmolecules The tool set uses information on existing molecules and used in actual tests to buildmodels that assist the researcher in building a prototype that has the desired biological activity

iii

iv

Agradecimentos

A quem de forma direta ou indireta contribuiram para que o meu percurso pela Faculdade deEngenharia da Universidade do Porto fosse bastante enriquecedor tanto a niacutevel intelectual como aniacutevel emocional

Mas um especial agradecimento aos meus Pais que sempre quiseram o melhor para mim eviveram de forma tatildeo ou mais fervorosa esta experiecircncia comigo

Daniela Cardeano

v

vi

ldquoIn any given moment we have two optionsto step forward into growthor to step back into safetyrdquo

Abraham Maslow

vii

viii

Conteuacutedo

1 Introduccedilatildeo 111 Projeto e Objetivos 112 Motivaccedilatildeo 213 Estrutura da Dissertaccedilatildeo 2

2 Estado da Arte 521 Processo de Desenho de Faacutermacos 522 A aplicaccedilatildeo iLogChem 823 Ferramentas informaacuteticas para Desenho de Faacutermacos 11

231 Descritores Moleculares 11232 Ferramentas para caacutelculo de Descritores Moleculares 12

24 Data Mining 13241 Algoritmos a utilizar 15242 Ferramentas de Data Mining 18

3 Descriccedilatildeo da Ferramenta 2331 Estrutura de diretoacuterios 2432 Detalhes da implementaccedilatildeo 2433 Utilizaccedilatildeo do sistema ALEPH 2534 WEKA 2835 Interface com o utilizador 2936 Tecnologias Utilizadas 31

4 Avaliaccedilatildeo Testes e Resultados 3341 Qualitativa 3342 Quantitativa 3343 Casos de Estudo 35

5 Conclusotildees 43501 Trabalho futuro 44

Referecircncias 47

ix

CONTEUacuteDO

x

Lista de Figuras

21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos 722 Estrutura da aplicaccedilatildeo iLogChem 1023 Origem dos descritores Retirado de httpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1224 Tipos de descritores moleculares 1325 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1426 Exemplo de aacutervore de decisatildeo 1627 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retirado de http

enwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg 17

28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng 19

31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos 2532 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb

para os literais do corpo) e de determinaccedilatildeo (determination) 2633 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-

wledge 2734 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge 2735 Pseudo-coacutedigo do funcionamento do wrapper 3036 Interface graacutefica - descritores moleculares 31

41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares 3442 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste 3543 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA 3644 Training set 3945 Training set model 40

xi

LISTA DE FIGURAS

xii

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 2: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Data Mining em Aplicaccedilotildees de Desenho Racional deFaacutermacos

Daniela Cardeano

Mestrado Integrado em Engenharia Informaacutetica e Computaccedilatildeo

31 de Julho de 2014

Resumo

Os faacutermacos satildeo uma mais valia para a sauacutede de toda a populaccedilatildeo Uma das formas de umfaacutermaco atuar eacute a seguinte ligar-se a uma biomoleacutecula do nosso organismo conseguindo aumen-tar ou diminuir a sua funccedilatildeo e desencadear assim um efeito terapecircutico Para sintetizar um novofaacutermaco a induacutestria farmacecircutica tem de percorrer um longo e moroso processo Um dos grandesproblemas da concepccedilatildeo de faacutermacos estaacute no tempo gasto no seu desenvolvimento e por conse-guinte os elevadiacutessimos custos

Eacute preciso identificar a origem da doenccedila preferencialmente uma moleacutecula alvo Como a pro-teiacutena por exemplo causadora ou com forte influecircncia na ocorrecircncia de doenccedilas Eacute necessaacuteriodepois determinar como se consegue neutralizar essa origem (por exemplo obstruindoum siacutetioativo de um potencial) A parte de concepccedilatildeo de um faacutermaco comeccedila por procurar em grandesbases de dados moleacuteculas que possam neutralizaro alvo (este passo denomina-se screening) es-colher os candidatos mais promissores resultantes dessa pesquisa sintetizar algumas das novasmoleacuteculas testaacute-las em animais e no final requer ainda um longo periacuteodo de ensaios cliacutenicos emhumanos Um dos pontos que o Data Mining pode contribuir eacute no passo em que as novas moleacute-culas mais promissoras satildeo testadas em animais Com base em resultados de testes anteriores oData Mining pode ser usado para prever quais das novas moleacuteculas daratildeo melhores resultados Ostestes efetuados com as novas moleacuteculas satildeo cinco absorccedilatildeo distribuiccedilatildeo metabolismo excreccedilatildeoe toxicidade Satildeo conhecidos como testes ADMET

A proposta desta tese eacute desenvolver uma ferramenta que utiliza teacutecnicas de Data Mining deforma transparente para o utilizador (bioquiacutemico) que preveja os resultados dos testes ADMETdiminuindo o tempo gasto na concepccedilatildeo de um novo faacutermaco permitindo ao quiacutemico interagircom esta ferramenta e conceber novas moleacuteculas A ferramenta criada utiliza informaccedilatildeo sobremoleacuteculas existentes e usadas em testes reais para construir modelos que auxiliam o investigadorna construccedilatildeo de um protoacutetipo que tenha a atividade bioloacutegica pretendida

i

ii

Abstract

Drugs are an asset to the health of the entire population One form of a drug is to act as fol-lows to bind to a biomolecule of our organism achieving increase or decrease its function andthereby trigger a therapeutic effect To synthesize a new drug the pharmaceutical industry has along and lengthy process A major problem of drug design is the time spent in its developmentand therefore the high costs

You need to identify the origin of the disease preferably one target molecule As the proteinfor example or causes a strong influence on the occurrence of diseases You must then determinehow they can neutralize such an origin (for example blockingan active site of a potential) Partof designing the drug begins by searching in large databases molecules that can neutralizethetarget (this step is called screening) select the most promising candidates resulting from this re-search synthesize some of the new molecules test them in animals and in the end still requires along period of clinical trials in humans One of the points that the Data Mining can contribute isthe step where the most promising new molecules are tested on animals Based on the results ofprevious data mining tests can be used to predict which new molecules will give better results Thetests performed with the new molecules are five absorption distribution metabolism excretionand toxicity These are known as ADMET testing

The proposal of this thesis is to develop a tool that uses data mining techniques transparentlyto the user (biochemist) which provides the results of ADMET testing decreasing the time spentin the design of a new drug allowing the biochemist to interact with this tool and designing newmolecules The tool set uses information on existing molecules and used in actual tests to buildmodels that assist the researcher in building a prototype that has the desired biological activity

iii

iv

Agradecimentos

A quem de forma direta ou indireta contribuiram para que o meu percurso pela Faculdade deEngenharia da Universidade do Porto fosse bastante enriquecedor tanto a niacutevel intelectual como aniacutevel emocional

Mas um especial agradecimento aos meus Pais que sempre quiseram o melhor para mim eviveram de forma tatildeo ou mais fervorosa esta experiecircncia comigo

Daniela Cardeano

v

vi

ldquoIn any given moment we have two optionsto step forward into growthor to step back into safetyrdquo

Abraham Maslow

vii

viii

Conteuacutedo

1 Introduccedilatildeo 111 Projeto e Objetivos 112 Motivaccedilatildeo 213 Estrutura da Dissertaccedilatildeo 2

2 Estado da Arte 521 Processo de Desenho de Faacutermacos 522 A aplicaccedilatildeo iLogChem 823 Ferramentas informaacuteticas para Desenho de Faacutermacos 11

231 Descritores Moleculares 11232 Ferramentas para caacutelculo de Descritores Moleculares 12

24 Data Mining 13241 Algoritmos a utilizar 15242 Ferramentas de Data Mining 18

3 Descriccedilatildeo da Ferramenta 2331 Estrutura de diretoacuterios 2432 Detalhes da implementaccedilatildeo 2433 Utilizaccedilatildeo do sistema ALEPH 2534 WEKA 2835 Interface com o utilizador 2936 Tecnologias Utilizadas 31

4 Avaliaccedilatildeo Testes e Resultados 3341 Qualitativa 3342 Quantitativa 3343 Casos de Estudo 35

5 Conclusotildees 43501 Trabalho futuro 44

Referecircncias 47

ix

CONTEUacuteDO

x

Lista de Figuras

21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos 722 Estrutura da aplicaccedilatildeo iLogChem 1023 Origem dos descritores Retirado de httpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1224 Tipos de descritores moleculares 1325 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1426 Exemplo de aacutervore de decisatildeo 1627 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retirado de http

enwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg 17

28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng 19

31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos 2532 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb

para os literais do corpo) e de determinaccedilatildeo (determination) 2633 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-

wledge 2734 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge 2735 Pseudo-coacutedigo do funcionamento do wrapper 3036 Interface graacutefica - descritores moleculares 31

41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares 3442 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste 3543 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA 3644 Training set 3945 Training set model 40

xi

LISTA DE FIGURAS

xii

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 3: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Resumo

Os faacutermacos satildeo uma mais valia para a sauacutede de toda a populaccedilatildeo Uma das formas de umfaacutermaco atuar eacute a seguinte ligar-se a uma biomoleacutecula do nosso organismo conseguindo aumen-tar ou diminuir a sua funccedilatildeo e desencadear assim um efeito terapecircutico Para sintetizar um novofaacutermaco a induacutestria farmacecircutica tem de percorrer um longo e moroso processo Um dos grandesproblemas da concepccedilatildeo de faacutermacos estaacute no tempo gasto no seu desenvolvimento e por conse-guinte os elevadiacutessimos custos

Eacute preciso identificar a origem da doenccedila preferencialmente uma moleacutecula alvo Como a pro-teiacutena por exemplo causadora ou com forte influecircncia na ocorrecircncia de doenccedilas Eacute necessaacuteriodepois determinar como se consegue neutralizar essa origem (por exemplo obstruindoum siacutetioativo de um potencial) A parte de concepccedilatildeo de um faacutermaco comeccedila por procurar em grandesbases de dados moleacuteculas que possam neutralizaro alvo (este passo denomina-se screening) es-colher os candidatos mais promissores resultantes dessa pesquisa sintetizar algumas das novasmoleacuteculas testaacute-las em animais e no final requer ainda um longo periacuteodo de ensaios cliacutenicos emhumanos Um dos pontos que o Data Mining pode contribuir eacute no passo em que as novas moleacute-culas mais promissoras satildeo testadas em animais Com base em resultados de testes anteriores oData Mining pode ser usado para prever quais das novas moleacuteculas daratildeo melhores resultados Ostestes efetuados com as novas moleacuteculas satildeo cinco absorccedilatildeo distribuiccedilatildeo metabolismo excreccedilatildeoe toxicidade Satildeo conhecidos como testes ADMET

A proposta desta tese eacute desenvolver uma ferramenta que utiliza teacutecnicas de Data Mining deforma transparente para o utilizador (bioquiacutemico) que preveja os resultados dos testes ADMETdiminuindo o tempo gasto na concepccedilatildeo de um novo faacutermaco permitindo ao quiacutemico interagircom esta ferramenta e conceber novas moleacuteculas A ferramenta criada utiliza informaccedilatildeo sobremoleacuteculas existentes e usadas em testes reais para construir modelos que auxiliam o investigadorna construccedilatildeo de um protoacutetipo que tenha a atividade bioloacutegica pretendida

i

ii

Abstract

Drugs are an asset to the health of the entire population One form of a drug is to act as fol-lows to bind to a biomolecule of our organism achieving increase or decrease its function andthereby trigger a therapeutic effect To synthesize a new drug the pharmaceutical industry has along and lengthy process A major problem of drug design is the time spent in its developmentand therefore the high costs

You need to identify the origin of the disease preferably one target molecule As the proteinfor example or causes a strong influence on the occurrence of diseases You must then determinehow they can neutralize such an origin (for example blockingan active site of a potential) Partof designing the drug begins by searching in large databases molecules that can neutralizethetarget (this step is called screening) select the most promising candidates resulting from this re-search synthesize some of the new molecules test them in animals and in the end still requires along period of clinical trials in humans One of the points that the Data Mining can contribute isthe step where the most promising new molecules are tested on animals Based on the results ofprevious data mining tests can be used to predict which new molecules will give better results Thetests performed with the new molecules are five absorption distribution metabolism excretionand toxicity These are known as ADMET testing

The proposal of this thesis is to develop a tool that uses data mining techniques transparentlyto the user (biochemist) which provides the results of ADMET testing decreasing the time spentin the design of a new drug allowing the biochemist to interact with this tool and designing newmolecules The tool set uses information on existing molecules and used in actual tests to buildmodels that assist the researcher in building a prototype that has the desired biological activity

iii

iv

Agradecimentos

A quem de forma direta ou indireta contribuiram para que o meu percurso pela Faculdade deEngenharia da Universidade do Porto fosse bastante enriquecedor tanto a niacutevel intelectual como aniacutevel emocional

Mas um especial agradecimento aos meus Pais que sempre quiseram o melhor para mim eviveram de forma tatildeo ou mais fervorosa esta experiecircncia comigo

Daniela Cardeano

v

vi

ldquoIn any given moment we have two optionsto step forward into growthor to step back into safetyrdquo

Abraham Maslow

vii

viii

Conteuacutedo

1 Introduccedilatildeo 111 Projeto e Objetivos 112 Motivaccedilatildeo 213 Estrutura da Dissertaccedilatildeo 2

2 Estado da Arte 521 Processo de Desenho de Faacutermacos 522 A aplicaccedilatildeo iLogChem 823 Ferramentas informaacuteticas para Desenho de Faacutermacos 11

231 Descritores Moleculares 11232 Ferramentas para caacutelculo de Descritores Moleculares 12

24 Data Mining 13241 Algoritmos a utilizar 15242 Ferramentas de Data Mining 18

3 Descriccedilatildeo da Ferramenta 2331 Estrutura de diretoacuterios 2432 Detalhes da implementaccedilatildeo 2433 Utilizaccedilatildeo do sistema ALEPH 2534 WEKA 2835 Interface com o utilizador 2936 Tecnologias Utilizadas 31

4 Avaliaccedilatildeo Testes e Resultados 3341 Qualitativa 3342 Quantitativa 3343 Casos de Estudo 35

5 Conclusotildees 43501 Trabalho futuro 44

Referecircncias 47

ix

CONTEUacuteDO

x

Lista de Figuras

21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos 722 Estrutura da aplicaccedilatildeo iLogChem 1023 Origem dos descritores Retirado de httpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1224 Tipos de descritores moleculares 1325 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1426 Exemplo de aacutervore de decisatildeo 1627 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retirado de http

enwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg 17

28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng 19

31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos 2532 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb

para os literais do corpo) e de determinaccedilatildeo (determination) 2633 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-

wledge 2734 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge 2735 Pseudo-coacutedigo do funcionamento do wrapper 3036 Interface graacutefica - descritores moleculares 31

41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares 3442 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste 3543 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA 3644 Training set 3945 Training set model 40

xi

LISTA DE FIGURAS

xii

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 4: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

ii

Abstract

Drugs are an asset to the health of the entire population One form of a drug is to act as fol-lows to bind to a biomolecule of our organism achieving increase or decrease its function andthereby trigger a therapeutic effect To synthesize a new drug the pharmaceutical industry has along and lengthy process A major problem of drug design is the time spent in its developmentand therefore the high costs

You need to identify the origin of the disease preferably one target molecule As the proteinfor example or causes a strong influence on the occurrence of diseases You must then determinehow they can neutralize such an origin (for example blockingan active site of a potential) Partof designing the drug begins by searching in large databases molecules that can neutralizethetarget (this step is called screening) select the most promising candidates resulting from this re-search synthesize some of the new molecules test them in animals and in the end still requires along period of clinical trials in humans One of the points that the Data Mining can contribute isthe step where the most promising new molecules are tested on animals Based on the results ofprevious data mining tests can be used to predict which new molecules will give better results Thetests performed with the new molecules are five absorption distribution metabolism excretionand toxicity These are known as ADMET testing

The proposal of this thesis is to develop a tool that uses data mining techniques transparentlyto the user (biochemist) which provides the results of ADMET testing decreasing the time spentin the design of a new drug allowing the biochemist to interact with this tool and designing newmolecules The tool set uses information on existing molecules and used in actual tests to buildmodels that assist the researcher in building a prototype that has the desired biological activity

iii

iv

Agradecimentos

A quem de forma direta ou indireta contribuiram para que o meu percurso pela Faculdade deEngenharia da Universidade do Porto fosse bastante enriquecedor tanto a niacutevel intelectual como aniacutevel emocional

Mas um especial agradecimento aos meus Pais que sempre quiseram o melhor para mim eviveram de forma tatildeo ou mais fervorosa esta experiecircncia comigo

Daniela Cardeano

v

vi

ldquoIn any given moment we have two optionsto step forward into growthor to step back into safetyrdquo

Abraham Maslow

vii

viii

Conteuacutedo

1 Introduccedilatildeo 111 Projeto e Objetivos 112 Motivaccedilatildeo 213 Estrutura da Dissertaccedilatildeo 2

2 Estado da Arte 521 Processo de Desenho de Faacutermacos 522 A aplicaccedilatildeo iLogChem 823 Ferramentas informaacuteticas para Desenho de Faacutermacos 11

231 Descritores Moleculares 11232 Ferramentas para caacutelculo de Descritores Moleculares 12

24 Data Mining 13241 Algoritmos a utilizar 15242 Ferramentas de Data Mining 18

3 Descriccedilatildeo da Ferramenta 2331 Estrutura de diretoacuterios 2432 Detalhes da implementaccedilatildeo 2433 Utilizaccedilatildeo do sistema ALEPH 2534 WEKA 2835 Interface com o utilizador 2936 Tecnologias Utilizadas 31

4 Avaliaccedilatildeo Testes e Resultados 3341 Qualitativa 3342 Quantitativa 3343 Casos de Estudo 35

5 Conclusotildees 43501 Trabalho futuro 44

Referecircncias 47

ix

CONTEUacuteDO

x

Lista de Figuras

21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos 722 Estrutura da aplicaccedilatildeo iLogChem 1023 Origem dos descritores Retirado de httpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1224 Tipos de descritores moleculares 1325 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1426 Exemplo de aacutervore de decisatildeo 1627 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retirado de http

enwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg 17

28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng 19

31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos 2532 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb

para os literais do corpo) e de determinaccedilatildeo (determination) 2633 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-

wledge 2734 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge 2735 Pseudo-coacutedigo do funcionamento do wrapper 3036 Interface graacutefica - descritores moleculares 31

41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares 3442 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste 3543 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA 3644 Training set 3945 Training set model 40

xi

LISTA DE FIGURAS

xii

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 5: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Abstract

Drugs are an asset to the health of the entire population One form of a drug is to act as fol-lows to bind to a biomolecule of our organism achieving increase or decrease its function andthereby trigger a therapeutic effect To synthesize a new drug the pharmaceutical industry has along and lengthy process A major problem of drug design is the time spent in its developmentand therefore the high costs

You need to identify the origin of the disease preferably one target molecule As the proteinfor example or causes a strong influence on the occurrence of diseases You must then determinehow they can neutralize such an origin (for example blockingan active site of a potential) Partof designing the drug begins by searching in large databases molecules that can neutralizethetarget (this step is called screening) select the most promising candidates resulting from this re-search synthesize some of the new molecules test them in animals and in the end still requires along period of clinical trials in humans One of the points that the Data Mining can contribute isthe step where the most promising new molecules are tested on animals Based on the results ofprevious data mining tests can be used to predict which new molecules will give better results Thetests performed with the new molecules are five absorption distribution metabolism excretionand toxicity These are known as ADMET testing

The proposal of this thesis is to develop a tool that uses data mining techniques transparentlyto the user (biochemist) which provides the results of ADMET testing decreasing the time spentin the design of a new drug allowing the biochemist to interact with this tool and designing newmolecules The tool set uses information on existing molecules and used in actual tests to buildmodels that assist the researcher in building a prototype that has the desired biological activity

iii

iv

Agradecimentos

A quem de forma direta ou indireta contribuiram para que o meu percurso pela Faculdade deEngenharia da Universidade do Porto fosse bastante enriquecedor tanto a niacutevel intelectual como aniacutevel emocional

Mas um especial agradecimento aos meus Pais que sempre quiseram o melhor para mim eviveram de forma tatildeo ou mais fervorosa esta experiecircncia comigo

Daniela Cardeano

v

vi

ldquoIn any given moment we have two optionsto step forward into growthor to step back into safetyrdquo

Abraham Maslow

vii

viii

Conteuacutedo

1 Introduccedilatildeo 111 Projeto e Objetivos 112 Motivaccedilatildeo 213 Estrutura da Dissertaccedilatildeo 2

2 Estado da Arte 521 Processo de Desenho de Faacutermacos 522 A aplicaccedilatildeo iLogChem 823 Ferramentas informaacuteticas para Desenho de Faacutermacos 11

231 Descritores Moleculares 11232 Ferramentas para caacutelculo de Descritores Moleculares 12

24 Data Mining 13241 Algoritmos a utilizar 15242 Ferramentas de Data Mining 18

3 Descriccedilatildeo da Ferramenta 2331 Estrutura de diretoacuterios 2432 Detalhes da implementaccedilatildeo 2433 Utilizaccedilatildeo do sistema ALEPH 2534 WEKA 2835 Interface com o utilizador 2936 Tecnologias Utilizadas 31

4 Avaliaccedilatildeo Testes e Resultados 3341 Qualitativa 3342 Quantitativa 3343 Casos de Estudo 35

5 Conclusotildees 43501 Trabalho futuro 44

Referecircncias 47

ix

CONTEUacuteDO

x

Lista de Figuras

21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos 722 Estrutura da aplicaccedilatildeo iLogChem 1023 Origem dos descritores Retirado de httpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1224 Tipos de descritores moleculares 1325 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1426 Exemplo de aacutervore de decisatildeo 1627 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retirado de http

enwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg 17

28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng 19

31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos 2532 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb

para os literais do corpo) e de determinaccedilatildeo (determination) 2633 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-

wledge 2734 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge 2735 Pseudo-coacutedigo do funcionamento do wrapper 3036 Interface graacutefica - descritores moleculares 31

41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares 3442 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste 3543 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA 3644 Training set 3945 Training set model 40

xi

LISTA DE FIGURAS

xii

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 6: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

iv

Agradecimentos

A quem de forma direta ou indireta contribuiram para que o meu percurso pela Faculdade deEngenharia da Universidade do Porto fosse bastante enriquecedor tanto a niacutevel intelectual como aniacutevel emocional

Mas um especial agradecimento aos meus Pais que sempre quiseram o melhor para mim eviveram de forma tatildeo ou mais fervorosa esta experiecircncia comigo

Daniela Cardeano

v

vi

ldquoIn any given moment we have two optionsto step forward into growthor to step back into safetyrdquo

Abraham Maslow

vii

viii

Conteuacutedo

1 Introduccedilatildeo 111 Projeto e Objetivos 112 Motivaccedilatildeo 213 Estrutura da Dissertaccedilatildeo 2

2 Estado da Arte 521 Processo de Desenho de Faacutermacos 522 A aplicaccedilatildeo iLogChem 823 Ferramentas informaacuteticas para Desenho de Faacutermacos 11

231 Descritores Moleculares 11232 Ferramentas para caacutelculo de Descritores Moleculares 12

24 Data Mining 13241 Algoritmos a utilizar 15242 Ferramentas de Data Mining 18

3 Descriccedilatildeo da Ferramenta 2331 Estrutura de diretoacuterios 2432 Detalhes da implementaccedilatildeo 2433 Utilizaccedilatildeo do sistema ALEPH 2534 WEKA 2835 Interface com o utilizador 2936 Tecnologias Utilizadas 31

4 Avaliaccedilatildeo Testes e Resultados 3341 Qualitativa 3342 Quantitativa 3343 Casos de Estudo 35

5 Conclusotildees 43501 Trabalho futuro 44

Referecircncias 47

ix

CONTEUacuteDO

x

Lista de Figuras

21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos 722 Estrutura da aplicaccedilatildeo iLogChem 1023 Origem dos descritores Retirado de httpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1224 Tipos de descritores moleculares 1325 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1426 Exemplo de aacutervore de decisatildeo 1627 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retirado de http

enwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg 17

28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng 19

31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos 2532 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb

para os literais do corpo) e de determinaccedilatildeo (determination) 2633 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-

wledge 2734 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge 2735 Pseudo-coacutedigo do funcionamento do wrapper 3036 Interface graacutefica - descritores moleculares 31

41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares 3442 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste 3543 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA 3644 Training set 3945 Training set model 40

xi

LISTA DE FIGURAS

xii

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 7: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Agradecimentos

A quem de forma direta ou indireta contribuiram para que o meu percurso pela Faculdade deEngenharia da Universidade do Porto fosse bastante enriquecedor tanto a niacutevel intelectual como aniacutevel emocional

Mas um especial agradecimento aos meus Pais que sempre quiseram o melhor para mim eviveram de forma tatildeo ou mais fervorosa esta experiecircncia comigo

Daniela Cardeano

v

vi

ldquoIn any given moment we have two optionsto step forward into growthor to step back into safetyrdquo

Abraham Maslow

vii

viii

Conteuacutedo

1 Introduccedilatildeo 111 Projeto e Objetivos 112 Motivaccedilatildeo 213 Estrutura da Dissertaccedilatildeo 2

2 Estado da Arte 521 Processo de Desenho de Faacutermacos 522 A aplicaccedilatildeo iLogChem 823 Ferramentas informaacuteticas para Desenho de Faacutermacos 11

231 Descritores Moleculares 11232 Ferramentas para caacutelculo de Descritores Moleculares 12

24 Data Mining 13241 Algoritmos a utilizar 15242 Ferramentas de Data Mining 18

3 Descriccedilatildeo da Ferramenta 2331 Estrutura de diretoacuterios 2432 Detalhes da implementaccedilatildeo 2433 Utilizaccedilatildeo do sistema ALEPH 2534 WEKA 2835 Interface com o utilizador 2936 Tecnologias Utilizadas 31

4 Avaliaccedilatildeo Testes e Resultados 3341 Qualitativa 3342 Quantitativa 3343 Casos de Estudo 35

5 Conclusotildees 43501 Trabalho futuro 44

Referecircncias 47

ix

CONTEUacuteDO

x

Lista de Figuras

21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos 722 Estrutura da aplicaccedilatildeo iLogChem 1023 Origem dos descritores Retirado de httpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1224 Tipos de descritores moleculares 1325 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1426 Exemplo de aacutervore de decisatildeo 1627 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retirado de http

enwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg 17

28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng 19

31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos 2532 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb

para os literais do corpo) e de determinaccedilatildeo (determination) 2633 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-

wledge 2734 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge 2735 Pseudo-coacutedigo do funcionamento do wrapper 3036 Interface graacutefica - descritores moleculares 31

41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares 3442 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste 3543 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA 3644 Training set 3945 Training set model 40

xi

LISTA DE FIGURAS

xii

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 8: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

vi

ldquoIn any given moment we have two optionsto step forward into growthor to step back into safetyrdquo

Abraham Maslow

vii

viii

Conteuacutedo

1 Introduccedilatildeo 111 Projeto e Objetivos 112 Motivaccedilatildeo 213 Estrutura da Dissertaccedilatildeo 2

2 Estado da Arte 521 Processo de Desenho de Faacutermacos 522 A aplicaccedilatildeo iLogChem 823 Ferramentas informaacuteticas para Desenho de Faacutermacos 11

231 Descritores Moleculares 11232 Ferramentas para caacutelculo de Descritores Moleculares 12

24 Data Mining 13241 Algoritmos a utilizar 15242 Ferramentas de Data Mining 18

3 Descriccedilatildeo da Ferramenta 2331 Estrutura de diretoacuterios 2432 Detalhes da implementaccedilatildeo 2433 Utilizaccedilatildeo do sistema ALEPH 2534 WEKA 2835 Interface com o utilizador 2936 Tecnologias Utilizadas 31

4 Avaliaccedilatildeo Testes e Resultados 3341 Qualitativa 3342 Quantitativa 3343 Casos de Estudo 35

5 Conclusotildees 43501 Trabalho futuro 44

Referecircncias 47

ix

CONTEUacuteDO

x

Lista de Figuras

21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos 722 Estrutura da aplicaccedilatildeo iLogChem 1023 Origem dos descritores Retirado de httpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1224 Tipos de descritores moleculares 1325 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1426 Exemplo de aacutervore de decisatildeo 1627 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retirado de http

enwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg 17

28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng 19

31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos 2532 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb

para os literais do corpo) e de determinaccedilatildeo (determination) 2633 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-

wledge 2734 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge 2735 Pseudo-coacutedigo do funcionamento do wrapper 3036 Interface graacutefica - descritores moleculares 31

41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares 3442 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste 3543 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA 3644 Training set 3945 Training set model 40

xi

LISTA DE FIGURAS

xii

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 9: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

ldquoIn any given moment we have two optionsto step forward into growthor to step back into safetyrdquo

Abraham Maslow

vii

viii

Conteuacutedo

1 Introduccedilatildeo 111 Projeto e Objetivos 112 Motivaccedilatildeo 213 Estrutura da Dissertaccedilatildeo 2

2 Estado da Arte 521 Processo de Desenho de Faacutermacos 522 A aplicaccedilatildeo iLogChem 823 Ferramentas informaacuteticas para Desenho de Faacutermacos 11

231 Descritores Moleculares 11232 Ferramentas para caacutelculo de Descritores Moleculares 12

24 Data Mining 13241 Algoritmos a utilizar 15242 Ferramentas de Data Mining 18

3 Descriccedilatildeo da Ferramenta 2331 Estrutura de diretoacuterios 2432 Detalhes da implementaccedilatildeo 2433 Utilizaccedilatildeo do sistema ALEPH 2534 WEKA 2835 Interface com o utilizador 2936 Tecnologias Utilizadas 31

4 Avaliaccedilatildeo Testes e Resultados 3341 Qualitativa 3342 Quantitativa 3343 Casos de Estudo 35

5 Conclusotildees 43501 Trabalho futuro 44

Referecircncias 47

ix

CONTEUacuteDO

x

Lista de Figuras

21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos 722 Estrutura da aplicaccedilatildeo iLogChem 1023 Origem dos descritores Retirado de httpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1224 Tipos de descritores moleculares 1325 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1426 Exemplo de aacutervore de decisatildeo 1627 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retirado de http

enwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg 17

28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng 19

31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos 2532 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb

para os literais do corpo) e de determinaccedilatildeo (determination) 2633 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-

wledge 2734 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge 2735 Pseudo-coacutedigo do funcionamento do wrapper 3036 Interface graacutefica - descritores moleculares 31

41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares 3442 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste 3543 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA 3644 Training set 3945 Training set model 40

xi

LISTA DE FIGURAS

xii

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 10: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

viii

Conteuacutedo

1 Introduccedilatildeo 111 Projeto e Objetivos 112 Motivaccedilatildeo 213 Estrutura da Dissertaccedilatildeo 2

2 Estado da Arte 521 Processo de Desenho de Faacutermacos 522 A aplicaccedilatildeo iLogChem 823 Ferramentas informaacuteticas para Desenho de Faacutermacos 11

231 Descritores Moleculares 11232 Ferramentas para caacutelculo de Descritores Moleculares 12

24 Data Mining 13241 Algoritmos a utilizar 15242 Ferramentas de Data Mining 18

3 Descriccedilatildeo da Ferramenta 2331 Estrutura de diretoacuterios 2432 Detalhes da implementaccedilatildeo 2433 Utilizaccedilatildeo do sistema ALEPH 2534 WEKA 2835 Interface com o utilizador 2936 Tecnologias Utilizadas 31

4 Avaliaccedilatildeo Testes e Resultados 3341 Qualitativa 3342 Quantitativa 3343 Casos de Estudo 35

5 Conclusotildees 43501 Trabalho futuro 44

Referecircncias 47

ix

CONTEUacuteDO

x

Lista de Figuras

21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos 722 Estrutura da aplicaccedilatildeo iLogChem 1023 Origem dos descritores Retirado de httpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1224 Tipos de descritores moleculares 1325 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1426 Exemplo de aacutervore de decisatildeo 1627 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retirado de http

enwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg 17

28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng 19

31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos 2532 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb

para os literais do corpo) e de determinaccedilatildeo (determination) 2633 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-

wledge 2734 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge 2735 Pseudo-coacutedigo do funcionamento do wrapper 3036 Interface graacutefica - descritores moleculares 31

41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares 3442 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste 3543 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA 3644 Training set 3945 Training set model 40

xi

LISTA DE FIGURAS

xii

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 11: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Conteuacutedo

1 Introduccedilatildeo 111 Projeto e Objetivos 112 Motivaccedilatildeo 213 Estrutura da Dissertaccedilatildeo 2

2 Estado da Arte 521 Processo de Desenho de Faacutermacos 522 A aplicaccedilatildeo iLogChem 823 Ferramentas informaacuteticas para Desenho de Faacutermacos 11

231 Descritores Moleculares 11232 Ferramentas para caacutelculo de Descritores Moleculares 12

24 Data Mining 13241 Algoritmos a utilizar 15242 Ferramentas de Data Mining 18

3 Descriccedilatildeo da Ferramenta 2331 Estrutura de diretoacuterios 2432 Detalhes da implementaccedilatildeo 2433 Utilizaccedilatildeo do sistema ALEPH 2534 WEKA 2835 Interface com o utilizador 2936 Tecnologias Utilizadas 31

4 Avaliaccedilatildeo Testes e Resultados 3341 Qualitativa 3342 Quantitativa 3343 Casos de Estudo 35

5 Conclusotildees 43501 Trabalho futuro 44

Referecircncias 47

ix

CONTEUacuteDO

x

Lista de Figuras

21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos 722 Estrutura da aplicaccedilatildeo iLogChem 1023 Origem dos descritores Retirado de httpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1224 Tipos de descritores moleculares 1325 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1426 Exemplo de aacutervore de decisatildeo 1627 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retirado de http

enwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg 17

28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng 19

31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos 2532 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb

para os literais do corpo) e de determinaccedilatildeo (determination) 2633 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-

wledge 2734 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge 2735 Pseudo-coacutedigo do funcionamento do wrapper 3036 Interface graacutefica - descritores moleculares 31

41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares 3442 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste 3543 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA 3644 Training set 3945 Training set model 40

xi

LISTA DE FIGURAS

xii

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 12: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

CONTEUacuteDO

x

Lista de Figuras

21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos 722 Estrutura da aplicaccedilatildeo iLogChem 1023 Origem dos descritores Retirado de httpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1224 Tipos de descritores moleculares 1325 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1426 Exemplo de aacutervore de decisatildeo 1627 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retirado de http

enwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg 17

28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng 19

31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos 2532 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb

para os literais do corpo) e de determinaccedilatildeo (determination) 2633 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-

wledge 2734 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge 2735 Pseudo-coacutedigo do funcionamento do wrapper 3036 Interface graacutefica - descritores moleculares 31

41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares 3442 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste 3543 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA 3644 Training set 3945 Training set model 40

xi

LISTA DE FIGURAS

xii

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 13: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Lista de Figuras

21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos 722 Estrutura da aplicaccedilatildeo iLogChem 1023 Origem dos descritores Retirado de httpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1224 Tipos de descritores moleculares 1325 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptors

eututorialsT2_moleculardescriptors_chemompdf 1426 Exemplo de aacutervore de decisatildeo 1627 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retirado de http

enwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg 17

28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng 19

31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos 2532 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb

para os literais do corpo) e de determinaccedilatildeo (determination) 2633 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-

wledge 2734 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge 2735 Pseudo-coacutedigo do funcionamento do wrapper 3036 Interface graacutefica - descritores moleculares 31

41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares 3442 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste 3543 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA 3644 Training set 3945 Training set model 40

xi

LISTA DE FIGURAS

xii

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 14: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

LISTA DE FIGURAS

xii

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 15: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Abreviaturas e Siacutembolos

ADMET Absorption Distribution Metabolism Excretion ToxicityALEPH A Learning Engine for Proposing HypothesesAPI Application Programming InterfaceARFF Attribute-relation file formatCSV Comma-separated valuesDM Data MiningIDE Integrated development environmentILP Inductive logic programmingJVM Java Virtual MachineKNN K-nearest neighborsLIACC Laboratoacuterio de Inteligecircncia Artificial e Ciecircncia de ComputadoresOLAP On-line Analytical ProcessingPLI Programaccedilatildeo Loacutegica IndutivaRMN ressonacircncia magneacutetica nuclearSAR structure-activity relationSDF structure-data fileSMILES Simplified molecular-input line-entry systemSVM Support Vector MachineVMD Visual molecular dynamicsWEKA Waikato Environment for Knowledge AnalysisWWW World Wide WebYAP Yet Another Prolog

xiii

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 16: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Capiacutetulo 1

Introduccedilatildeo

Os faacutermacos satildeo uma biomoleacutecula que aquando introduzida no sistema humano se liga a uma

moleacutecula alvo e produz um efeito terapecircutico O primeiro passo passa por determinar qual eacute esse

alvo (que tem influecircncia na doenccedila) e em seguida encontrar um faacutermaco que se consiga ligar ao

alvo e neutralizaacute-lo Existem bancos de dados que possuem informaccedilatildeo acerca de moleacuteculas jaacute

estudadas e estes satildeo o ponto de partida para a pesquisa pelo faacuteramaco As moleacuteculas mais promis-

soras satildeo selecionadas e sintetizadas Mas ateacute agora eacute tudo muito teoacuterico e dedutivo e por isso

o proacuteximo passo passa por pocircr em praacutetica o faacutermaco testando-o em animais e posteriormente

fazer estudos cliacutenicos em humanos Os testes em animais satildeo cinco absorccedilatildeo distribuiccedilatildeo me-

tabolismo excreccedilatildeo e toxicidade Estes denominam-se testes ADMET e satildeo fundamentais para

garantir a seguranccedila e niacutevel de atividade do faacutermaco

Todo este processo eacute extramamente complexo as etapas satildeo compostas por vaacuterias iteraccedilotildees ateacute

que os resultados positivos apareccedilam arrastando custos elevadiacutessimos

Este trabalho tem como objetivo a utilizaccedilatildeo de algoritmos de Data Mining que prevejam os resul-

tados dos testes ADMET assim novas moleacuteculas natildeo precisaratildeo de ser testadas em animais ou

pelo menos haveraacute uma reduccedilatildeo nestes testes Os resultados das moleacuteculas jaacute testadas satildeo o ponto

de partida para estes algoritmos que constrotildeem modelos preditivos que auxiliam os especialis-

tas nesta fase O especialista aleacutem de visualizar os modelos criados pode ter uma interaccedilatildeo mais

profunda com o sistema aplicando restriccedilotildees etc O resultado final seraacute frutode vaacuterias iteraccedilotildees

sistema-especialista

11 Projeto e Objetivos

Este projeto consiste em desenvolver uma aplicaccedilatildeo de Data Mining que utiliza algoritmos de

Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos

testes ADMET Os testes ADMET satildeo feitos em animais e pretendem apurar a seguranccedila do novo

composto (verificar niacutevel de toxicidade recomendada etc) e ainda se este possui um conjunto de

1

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 17: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Introduccedilatildeo

carateriacutesticas que lhe permitam chegar ao alvo bioloacutegico dentro do sistema humano como capaci-

dade de solubilidade entre outras

Este projeto eacute uma extensatildeo da ferramenta iLogChem esta ferramenta constroacutei modelos recor-

rendo aos algoritmos de Data Mining que lhe permitem determinar se uma moleacutecula eacute ativa ou

natildeo As moleacuteculas jaacute testadas satildeo exploradas e satildeo encontrados padrotildees dentro delas que permi-

tam inferir acerca da sua atividade tanto as moleacuteculas como os padrotildees podem ser visualizados

graficamente eo especialista pode ainda introduzir restriccedilotildees agrave criaccedilatildeo de novas regras

Este trabalho permite que o dataset introduzido possa ter mais que um formato natildeo prevecirc somente

a atividade ou inatividade da moleacutecula os modelos criados pretendem prever os testes ADMET

e aleacutem do sistema PLI usado anteriormente pela iLogChem utiliza uma outra ferramenta de Data

Mining denominada WEKA que lhe permitiraacute inferir acerca dos descritores moleculares

12 Motivaccedilatildeo

A grande mais valia na introduccedilatildeo de ferramentas computacionais no desenvolvimento de faacuter-

macos estaacute no encurtamento do tempo necessaacuterio para construccedilatildeo dos mesmos Uma das etapas

deste longo processo satildeo os testes ADMET ao utilizar algoritmos de Machine Learning que pre-

vejam resultados obteacutem-se uma diminuiccedilatildeo dos testes necessaacuterios de fazer em animais Isto leva a

que aleacutem de menos tempo gasto nesta etapa haja menos custos inerentes a procedimentos feitos

em laboratoacuterio

Embora as ferramentas computacionais sejam extremamente uacuteteis em todo o processo de desen-

volvimento de faacutermacos a sua utilizaccedilatildeo requere por vezes e em problemas mais complexos a

manipulaccedilatildeo por especialistas informaacuteticos Um dos objetivos deste trabalho eacute tornar estas ferra-

mentas (Data Mining) utilizaacuteveis de modo transparente pelos especialistas bioquiacutemicos

13 Estrutura da Dissertaccedilatildeo

O resto da Tese tem a seguinte estrutura

O capiacutetulo 2 descreve todas as etapas envolvidas no desenvolvimento de um faacutermaco Eacute apre-

sentada a ferramenta iLogChem Satildeo explicados os descritores moleculares e a sua importacircncia

para sistemas de desenvolvimento de faacutermacos em seguida satildeo referidas as ferramentas que me-

lhoram o processo de desenho de faacutermacos A uacuteltima secccedilatildeo diz respeito ao Data Mining quais as

tarefas e teacutecnias existentes e ainda as ferramentas que odem ser utilizadas para implementar estas

teacutecninas

O capiacutetulo 3 descreve a ferramenta como foi desenvolvida e quais as tecnologias utilizadas

2

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 18: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Introduccedilatildeo

O capiacutetulo 4 explica como eacute feita a avaliaccedilatildeo do trabalho final ou seja como seratildeo testados os

resultados

No capiacutetulo 5 satildeo apresentadas as conclusotildees retiradas deste trabalho e quais as melhorias

futuras que podem ser feitas a esta aplicaccedilatildeo

3

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 19: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Introduccedilatildeo

4

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 20: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Capiacutetulo 2

Estado da Arte

21 Processo de Desenho de Faacutermacos

Um faacutermaco tem diferentes maneiras de atuar para resolveratenuar problemas de sauacutede Nesta

tese vamos explorar apenas faacutermacos desenvolvidos para interagir com uma moleacutecula bioloacutegica

uacutenica e responsaacutevel pelo problema de sauacutede

Apoacutes ser feito um estudo de mercado e se ter decidido qual a doenccedila a ser tratada a etapa se-

guinte passa pela identificaccedilatildeo do alvo bioloacutegico Para ter sucesso um faacutermaco tem de atuar numa

determinada biomoleacutecula dentro de um organismo biomoleacutecula essa que depois de ser estimulada

pela accedilatildeo do faacutermaco modifica a sua actividade diminuindo ou aumentando a sua funccedilatildeo Nor-

malmente estas biomoleacuteculas satildeo proteiacutenas ou aacutecidos nucleicos que depois de ligadas ao faacutermaco

desencadeiam uma seacuterie de processos bioquiacutemicos e levam a que seja atingido um determinado

efeito terapecircutico O conhecimento do alvo bioloacutegico eacute fundamental para a construccedilatildeo do novo

faacutermaco pois as moleacuteculas desenvolvidas tecircm de ter carateriacutesticas estruturais miacutenimas para se

ligarem agraves regiotildees ativas do alvo pretendido Outro fator importante eacute a sua localizaccedilatildeo celular

nomeadamente a localizaccedilatildeo ao niacutevel da membrana da ceacutelula ou intracelular O protoacutetipo inicial

eacute descoberto por uma de duas formas possiacuteveis com base no ligante ou com base na sua estru-

tura A primeira forma consiste num conhecimento preacutevio das moleacuteculas jaacute conhecidas que se

ligam ao alvo bioloacutegico pretendido esta moleacutecula eacute posteriormente modificada mas tendo sempre

como base essa carateriacutestica estrutural A segunda forma natildeo parte de nenhuma carateriacutestica jaacute

preacute-estabelecida ou seja atraveacutes de meacutetodos como cristalografia de raio-x ou espectroscopia de

RMN eacute conhecida a estrutura tridimensional do alvo[RoA07]

A estrutura do faacutermaco a produzir estaraacute entatildeo dependente do local onde pretende atuar por

isso o desenvolvimento desta comeccedila jaacute com certos requisitos estruturais Mas aleacutem de se con-

seguir ligar ao alvo bioloacutegico o faacutermaco tem de conseguir alteraacute-lo e eacute ai que comeccedila uma nova

5

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 21: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

etapa designada triagem Nesta fase vaacuterios produtos quiacutemicos satildeo testados ou bases de dados

de entidades quiacutemicas jaacute descobertas satildeo pesquisadas para encontrar um produto que tenha uma

estrutura que requere a capacidade de inibir ou estimular a moleacutecula desejada Esta etapa eacute vul-

garmente conhecida como screening

Apoacutes estes passos eacute normal encontrar um conjunto de moleacuteculas que tenham potencial para

se tornarem no futuro faacutermaco Poreacutem o processo natildeo acaba quando se encontra uma moleacutecula

que iraacute produzir uma determinada atividade eacute ainda necessaacuterio otimizaacute-la aumentando o seu grau

de atividade aumentando a sua seletividade e fazendo com que ela passe num conjunto de testes

designado ADMET Estes testes satildeo feitos com o intuito de conhecer as carateriacutesticas que tecircm

influecircncia sobre a disposiccedilatildeo do faacutermaco no organismo

Eacute de extrema importacircncia que um medicamento seja eficaz daiacute ter de se verificar o grau de

atividade da droga se ela realmente produz os efeitos pretendidos na proteiacutena ou aacutecido nucleico a

que se destina

Uma das grandes preocupaccedilotildees com a ingestatildeo de certos faacutermacos satildeo os seus efeitos secun-

daacuterios o que na realidade acontece eacute que determinado faacutermaco aleacutem de se conseguir ligar ao alvo

bioloacutegico a que se destina consegue ainda fazecirc-lo com outras moleacuteculas natildeo desejadas e dai de-

sencadear certos processos quiacutemicos que natildeo interessam no tratamento de uma patologia e que

ateacute podem acarretar outros problemas Entatildeo eacute importante conseguir chegar a um protoacutetipo com

elevada seletividade ou seja que tenha reduzida atividade noutras moleacuteculas que natildeo a pretendida

Por fim este protoacutetipo teraacute de passar nos testes ADMET esta eacute uma abreviatura para Absor-

ccedilatildeo Distribuiccedilatildeo Metabolismo Excreccedilatildeo e Toxicologia O nosso organismo dispotildee de diversos

mecanismos de defesa que lhe permitem expulsar corpos estranhos e assim nos defender de certos

viacuterus infeccedilotildees etc Muitas das defesas que permitem ao nosso corpo resistir a substacircncias toacutexicas

e outras que prejudiquem a nossa sauacutede levam a que uma determinada droga natildeo consiga chegar

ao seu alvo ou que natildeo chegue laacute na quantidade desejada Existem ainda certas exigecircncias re-

gulamentares em relaccedilatildeo agrave toxicidade de um composto que precisam de ser cumpridas para que

ele possa ser disponibilizado Estas cinco carateriacutesticas dos testes ADMET tecircm de ser bem com-

preendidas para o desenvolvimento de um faacutermaco com sucesso A absorccedilatildeo eacute uma carateriacutestica

que determina a capacidade de um composto ultrapassar determinados obstaacuteculos do nosso corpo

e chegar ao tecido ou orgatildeo pretendido por exemplo caso seja administrado por via oral ele teraacute

de transpor as paredes do nosso intestino A forma como o faacutermaco seraacute administrado depende

da sua biodisponibilidade (fraccedilatildeo absorvida) A distribuiccedilatildeo eacute feita na maioria das vezes atraveacutes

da corrente sanguiacutenea e muitas vezes o efeito do faacutermaco no seu alvo correlaciona-se com a sua

concentraccedilatildeo plasmaacutetica aleacutem de que a maioria os orgatildeos e tecidos natildeo tecircm a mesma capacidade

de absorver os compostos e nem dispotildeem da mesma proporccedilatildeo de fluxo sanguiacuteneo por isso eacute

que a distribuiccedilatildeo estaacute intrinsecamente relacionada com a quantidade de faacutermaco administrada

6

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 22: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

O metabolismo consiste nas reaccedilotildees enzimaacuteticas a que os compostos estatildeo sujeitos por parte de

certos orgatildeos quando entram no nosso organismo estas podem ser reaccedilotildees de oxidaccedilatildeoreduccedilatildeo

que iratildeo modificar a estrutura quiacutemica do composto ou reaccedilotildees de hidroacutelise que iratildeo inativar o

composto ou tornaacute-o mais soluacutevel (mais faacutecil de ser expulso do nosso corpo ) ao juntaacute-lo com uma

moleacutecula polar O que acontece eacute que as moleacuteculas mal entram no nosso organismo comeccedilam a

quebrar e convertem-se em metaboacutelitos A excreccedilao iraacute eliminar do nosso corpo esses metaboacutelitos

atraveacutes da urina transpiraccedilatildeo ou fezes A toxicidade eacute o grau de danificaccedilatildeo que um medicamento

pode causar no nosso organismo Estas cinco carateriacutesticas satildeo validadas atraveacutes de meacutetodos test

in vitro (ceacutelulas isoladas) ou em animais

Estes protoacutetipos para serem otimizados satildeo sujeitos a rearranjos moleculares satildeo trocados grupos

funcionais por outros por forma a manter a sua atividade bioloacutegica

A uacuteltima parte deste desenvolvimento eacute a fase cliacutenica que diz respeito ao teste em humanos

para reforccedilar os resultados quanto agrave seguranccedila do medicamento agrave dosagem aconselhada e ainda a

sua eficaacutecia Eacute uma etapa de melhoria e de reforccedilo dos resultados

A Figura 21 resume o que foi escrito acerca de desenho de faacutermacos

Figura 21 Diferentes etapas a realizar no desenvolvimento de novos faacutermacos

7

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 23: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

Todas as etapas deste processo de desenho de faacutermacos geram muita informaccedilatildeo que a maior

parte das vezes natildeo eacute aproveitada O Data Mining utilizando alguns desses dados pode contruir

modelos que prevejam comportamentos A existecircncia de bases de dados com compostos conhe-

cidos e jaacute estudados pode ser um ponto de partida para os algoritmos de machine learning que

ao detectarem estes compostos dentro de uma moleacutecula podem inferir acerca da sua atividade O

mesmo acontece em relaccedilatildeo aos testes ADMET estes testes satildeo feitos em animais uma moleacutecula

eacute criada e depois eacute testada essa mesma moleacutecula eacute redesenhada (satildeo modificadas algumas liga-

ccedilotildees) e volta a ter de passar por esses testes o Data Mining pode utilizar esta informaccedilatildeo para

prever futuros resultados

22 A aplicaccedilatildeo iLogChem

Os compostos que possuem semelhanccedilas estruturais regra geral apresentam a mesma ativi-

dade farmacoloacutegica A relaccedilotildees estruturais satildeo estudadas de forma a tornar o faacutermaco mais ativo

este estudo de denomina-se SAR (structure-activity relation) Pretende-se determinar as partes da

estrutura do composto que satildeo responsaacuteveis pela sua atividade bioloacutegica ou pelos efeitos secundaacute-

rios apresentados A ferramenta iLogChem contribui para este estudo o seu objetivo eacute prever uma

propriedade de interesse atraveacutes da informaccedilatildeo estrutural existente num conjunto de compostos ou

faacutermacos [ILP10]

O objetivo do iLogChem bem como o presente trabalho eacute disponibilizar a anaacutelise das moleacute-

culas com ferramentas de Data Mining de modo transparente para o utilizador

O iLogChem recebe um dataset contendo um conjunto de moleacuteculas previamente testadas

algumas das moleacuteculas que acusaram atividade nos testes em animais e outras que natildeo e apartir

desta informaccedilatildeo satildeo identificados um conjunto de padrotildees que satildeo carateriacutesticos das moleacuteculas

com atividade Tanto as moleacuteculas como os padrotildees encontrados nelas podem ser visualizados

graficamente As representaccedilotildees quiacutemicas das moleacuteculas satildeo inseridas no sistema atraveacutes de fi-

cheiros em formato MDL SDF A firma MDL Information Systems desenvolveu uma seacuterie de

ficheiros com diferentes formatos capazes de guardar informaccedilatildeo relativa a um conjunto de mo-

leacuteculas Um dos formatos eacute o SDF bastante popular que significa ficheiro de estrutura de dados e

como o proacuteprio nome indica foi concebido especialmente para guardar informaccedilatildeo estrutural que

pode ser utilizada na construccedilatildeo de modelos 3D

Estando os resultados da aplicaccedilatildeo intrinsecamente ligados agrave informaccedilatildeo que eacute introduzida

no sistema eacute importante fornecer a informaccedilatildeo molecular uacutetil e detalhada suficiente para produzir

boas soluccedilotildees A representaccedilatildeo das moleacuteculas inclui caraterizaccedilatildeo dos seus aacutetomos e as ligaccedilotildees

quiacutemicas entre eles Podem tambeacutem ser utilizados descritores moleculares e grupos funcionais

8

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 24: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

Estamos perante um problema de substrutura comum maacutexima (SCM) ou seja encontrar um

padratildeo com o maacuteximo nuacutemero de aacutetomos e ligaccedilotildees que esteja presente em vaacuterias moleacuteculas exis-

tentes no dataset isto eacute facilmente encaixado num processo de graph mining em que o objetivo

eacute encontrar padrotildees a partir de conjuntos de dados semi-estruturados A pesquisa pode ser me-

lhorada introduzindo informaccedilatildeo acerca dos aacutetomos e suas ligaccedilotildees Uma abordagem para este

problema eacute a Programaccedilatildeo Loacutegica Indutiva (PLI) [RC11] uma interseccedilatildeo entre machine leraning

e programaccedilatildeo loacutegica Esta teacutecnica por ser baseada em loacutegica de primeira ordem tem um grande

poder de representaccedilatildeo mas apresenta problemas de eficiecircncia especialmente quando se lida com

grandes datasets

Os padrotildees satildeo representados por regras que usam a descriccedilatildeo sucinta e que se adequa a esta

aplicaccedilatildeo o output do PLI eacute um conjunto de regras ou teoria Estas regras satildeo induzidas apartir de

exemplos (as moleacuteculas) e informaccedilatildeo adicional como a estrutura de cada moleacutecula descritores

moleculares que representam valores acerca de certas carateriacutesticas da moleacutecula e grupos funcio-

nais

Uma carateriacutestica importante do sistema iLogChem eacute a possibilidade de acrescentar informa-

ccedilatildeo extra que iraacute beneficiar este processo de busca de um modelo adequado O utilizador tem a

possibilidade de escolher quais as estruturas quiacutemicas grupos de carbono entre outras que quer

ver serem detectadas nas moleacuteculas e com isto aleacutem de ser mais faacutecil para ele compreender os

modelos pode tambeacutem tirar ilaccedilotildees acerca de certos efeitos da mesma pois estes efeitos podem

estar ligados agraves macros existentes E esta carateriacutestica eacute conseguida pela capacidade do PLI em

aceitar facilmente informaccedilatildeo extra (background knowledge) para descoberta de regras

Em vez de mostrar os modelos construiacutedos com as ferramentas de Data Mining (neste caso o

PLI) os modelos satildeo mostradosao utilizador duma forma que os bioquiacutemicos estatildeo habituados

uma visualizaccedilatildeo da moleacutecula e do padratildeo

Como jaacute foi referido a estrutura da moleacutecula eacute o que determina o seu efeito terapecircutico o que

por vezes acontece eacute que um faacutermaco apresenta a atividade pretendida mas natildeo com a intensidade

necessaacuteria ou entatildeo satildeo detetados efeitos secundaacuterios natildeo desejados Para resolver estas situa-

ccedilotildees o processo de desenvolvimento inicia-se com a moleacutecula que jaacute apresenta alguma atividade e

satildeo feitas pequenas modificaccedilotildees para melhoraacute-la Mas esta abordagem tem um contra o grande

conjunto de moleacuteculas semelhantes obtido O que o iLogChem faz para resolver este problema eacute

usar a distacircncia de Tanimoto para filtrar pares de moleacuteculas semelhantes apenas retendo as mais

representativas O utilizador pode especificar um valor limite para esta distacircncia usada na filtra-

gem

Todo este processo de procura de padrotildees em compostos quiacutemicos eacute controlado pelo utiliza-

dor que interage com a aplicaccedilatildeo atraveacutes da visualizaccedilatildeo das moleacuteculas e os padrotildees encontrados

nas mesmas usando a ferramenta VMD Depois de acionar o PLI e obter um primeiro modelo o

9

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 25: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

utilizador pode visualizar cada regra do modelo e fazer overlap agrave subestrutura da moleacutecula coberta

por essa regra

Apoacutes o PLI ter construiacutedo um modelo o bioquiacutemico pode fazer refinamentos a estas regras

induzidas Ele pode efetuar duas accedilotildees fazer uma pesquisa local e manualou especificar restri-

ccedilotildees no padratildeo visualizado e pedir ao PLI que construa um novo modelo

No primeiro caso o utilizador pode produzir de forma incremental alteraccedilotildees ao padratildeo (adi-

cionando ou excluindo aacutetomos e ou ligaccedilotildees) e depois pedir ao iLogChem para avaliar o padratildeo

mudado Sempre que uma avaliaccedilatildeo eacute feita o usuaacuterio pode ver a lista das moleacuteculas positivas e

negativas atingidaspor esta nova subestrutura

No segundo caso o utilizador pode interativamente (novamente adiccedilatildeo remoccedilatildeo de aacutetomos e liga-

ccedilotildees) definir um novo padratildeo Este novo modelo pode ser convertido numa regra e esta ser usada

como ponto de partida do espaccedilo de busca

A estrutura da ferramenta iLogChem estaacute representada na Figura 22

Figura 22 Estrutura da aplicaccedilatildeo iLogChem

10

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 26: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

23 Ferramentas informaacuteticas para Desenho de Faacutermacos

231 Descritores Moleculares

O processo de obter a informaccedilatildeo quiacutemica contida numa moleacutecula objeto real eacute sempre di-

fiacutecil pois as mediccedilotildees experimentais feitas soacute conseguem obter uma parte de toda a informaccedilatildeo

existente[CT]

As propriedades da moleacutecula natildeo dependem exclusivamente das propriedades dos seus aacutetomos

mas tambeacutem das suas ligaccedilotildees Por esta razatildeo as propriedades da moleacutecula natildeo resultam da soma

das propriedades dos seus componentes satildeo sim inerentes de toda a organizaccedilatildeo molecular Por

exemplo um composto molecular eacute caraterizado pelas ligaccedilotildees covalentes entre os seus aacutetomos e

por esta razatildeo este composto natildeo conduz corrente eleacutetrica em nenhum estado fiacutesico o fato de uma

moleacutecula conter este composto natildeo significa que apresentaraacute esta propriedade pois o re-arranjo

dos restantes aacutetomos tambeacutem iraacute influenciar o seu comportamento

Como consequecircncia desta complexidade a estrutura molecular natildeo pode ser representada

por um uacutenico modelo formal vaacuterias representaccedilotildees moleculares podem representar uma mesma

moleacutecula[Tod]

Um descritor molecular eacute a descriccedilatildeo numeacuterica de certa propriedade da moleacutecula estes nuacuteme-

ros representam partes da informaccedilatildeo quiacutemica contida em diferentes representaccedilotildees moleculares

Os descritores moleculares derivam de vaacuterias aproximaccedilotildees teoacutericas tais como quiacutemica orgacircnica

matemaacutetica discreta entre outras(Figura 23)

Tipos de descritores As representaccedilotildees 3D dependem de coordenadas internas ou orientaccedilatildeo

absoluta da moleacutecula 2D representam descritores de valor uacutenico caacutelculados apartir do grafo da

moleacutecula caraterizam as estruturas de acordo com o tamanho grau de ramificaccedilatildeo e a forma da

moleacutecula de maneira geral 0D e 1D satildeo raacutepidos de calcular por serem tatildeo gerais e por essa razatildeo

natildeo descrevem uma moleacutecula suficientemente podem representar o peso da moleacutecula o nuacutemero

de aacutetomos primaacuterios de carbono entre outros impressotildees digitais que satildeo representaccedilotildees vetori-

ais onde as frequecircncias de vaacuterios fragmentos moleculares satildeo armazenadas Estas representaccedilotildees

encontram-se mais discriminados na Figura 24

Os descritores moleculares satildeo importantes para que os algoritmos de aprendizagem consigam

construir modelos estes satildeo o input de um sistema de data mining O quiacutemico decide quais des-

critores pretende considerar para avaliar um faacutermaco e inclui-os na sua pesquisa

Os descritores moleculares surgiram porque para que sejam geradas boas anaacutelises eacute necessaacute-

rio haver bons dados Tecircm sido fundamentais para os estudos de novos faacutermacos entre outras

aacutereas a prova disso satildeo o nuacutemero de descritores jaacute propostos mais de 2000 Na Figura 25

11

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 27: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

Figura 23 Origem dos descritores Retirado de httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

podemos ver o ciclo de criaccedilatildeo e utilizaccedilatildeo dos descritores moleculares estes descritores satildeo cal-

culados a partir de moleacuteculas reais atraveacutes de vaacuterias teorias satildeo usados por estudos das relaccedilotildees

estrutura-atividade quantitativa com o objetivo de prever a atividade de uma moleacutecula ou entatildeo

as propriedades fiacutesico-quiacutemicas da mesma

232 Ferramentas para caacutelculo de Descritores Moleculares

As ferramentas de caacutelculo de descritores moleculares conseguem transformar informaccedilotildees

quiacutemicas codificadas dentro de uma representaccedilatildeo simboacutelica de uma moleacutecula num nuacutemero uacutetil

Estas aplicaccedilotildees recebem ficheiros que contecircm informaccedilatildeo quiacutemica acerca de moleacuteculas e caacutelcu-

lam uma seacuterie de descritores moleculares

Existem vaacuterias aplicaccedilotildees com esta funccedilatildeo umas open source outras para uso comercial apenas

diferindo em algumas carateriacutesticas

bull PaDEL-Descriptor Capaz de calcular 905 descritores moleculares (770 descritores 1D 2D

e 135 descritores 3D ) e 10 tipos de impressotildees digitais Possui interface graacutefica eacute uma

aplicaccedilatildeo desenvolvida em java E eacute possiacutevel ser usada atraveacutes de linha de comandos

12

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 28: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

Figura 24 Tipos de descritores moleculares

bull PowerMV suporta ficheiros no formato MDL SDF As propriedades das moleacuteculas podem

ser exportadas para Excel para gerar relatoacuterios personalizados

bull Joelib eacute uma boblioteca de quimioinformaacutetica que suporta procura de subestruturas SMART

caacutelculo de descritores conversatildeo de formatos eacute feita em Java e tem disponiacutevel interface com

programas externos

bull MODEL - Molecular Descriptor Lab Calcula propriedades estruturais e fiacutesico-quiacutemicas

das moleacuteculas a partir da sua estrutura 3D

Nesta lista apenas ferramentas open source constam que satildeo as que interessam ao desenvol-

vimento deste projeto Estatildeo referidas as ferramentas com maior destaque e para cada uma delas

estatildeo apenas referidas as carateriacutesticas de maior interesse

De todas as ferramentas referidas anteriormente o PaDEL-Descriptor eacute a que reune as fun-

cionalidades necessaacuterias para se enquadrar no iLogChem Eacute a uacutenica cuja interaccedilatildeo pode ser feita

atraveacutes da linha de comandos carateriacutestica esta que interessa agrave aplicaccedilatildeo iLogChem por ser desen-

volvida em Java bastando invocar a linha de comandos e chamar as ferramentas externas (neste

caso o PaDEL) PaDEL eacute uma feramenta de faacutecil interaccedilatildeo tanto atraveacutes da interface graacutefica como

atraveacutes da linha de comandos no segundo caso basta enviar o diretoacuterio contendo o ficheiro com a

informaccedilatildeo quiacutemica das moleacuteculas e o nome de um ficheiro destino (onde se pretende guardar os

resultados) O formato dos ficheiros mais comuns eacute MDL mol e SMILES Eacute capaz de calcular um

vasto conjunto de descritores e o utilizador pode selecionar aqueles que mais lhe convecircm

24 Data Mining

Nos dias de hoje somos definidos como a ldquosociedade da informaccedilatildeordquo apoacutes a Segunda Guerra

Mundial ocorreu uma revoluccedilatildeo tecnoloacutegica que veio mudar a vida de toda a populaccedilatildeo As em-

presas acolheram as tecnologias e ao longo destes anos tecircm vindo a coletar e armazenar de forma

13

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 29: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

Figura 25 Ciclo dos descritores moleculares Retirada dehttpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf

contiacutenua uma grande quantidade de dados Nos anos 90 comeccedilou a ser dada uma especial atenccedilatildeo

a esses dados armazenados percebeu-se que os dados estavam a ser subutilizados e que estes po-

deriam ser uma mais valia para o posicionamento estrateacutegico das empresas

Para o conhecimento ser atingido ou seja para que a informaccedilatildeo contida nas bases de dados

tenha significadoaplicaccedilatildeo praacutetica estes dados tecircm de passar por uma seacuterie de etapas As etapas

satildeo as seguintes

bull Definir o objetivo o primeiro passo eacute definir os requisitos do sistema

bull Seleccedilatildeo criar o conjunto de dados no qual a aplicaccedilatildeo iraacute trabalhar que seratildeo usados pelos

algoritmos de Data Mining para encontar padrotildees

bull Preacute-processamento teacutecnicas de preacute-processamento satildeo responsaacuteveis pela remoccedilatildeo de ruiacute-

dos (erros e exemplos fora do padratildeo)

bull Transformaccedilatildeo tem por objetivo localizar caracteriacutesticas uacuteteis para representar os dados

bull Aplicar os algoritmos aplicar as teacutecnicas de data mining para a construccedilatildeo de modelos

14

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 30: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

bull InterpretaccedilatildeoAvaliaccedilatildeo visualizar os padrotildees extraiacutedos e utilizaccedilatildeo de meacutetricas para ava-

liar os padrotildees extraiacutedos

Data mining surgiu pois os meacutetodos tradicionais (SQL planilhas investigaccedilatildeo manual) eram

inviaacuteveis Este processo utiliza algoritmos eficientes que exploram um conjunto de dados e daiacute

extraem padrotildees uacuteteis para a criaccedilatildeo de novo conhecimento

Dependendo do tipo de problema a ser resolvido pelo processo de Data Mining seraacute escolhida

a melhor tarefa Neste projeto estamos a lidar com bases de dados contendo moleacuteculas jaacute testa-

das ou seja existe um conjunto de objetos preacute-classificados e pretende-se construir um modelo

que seja capaz de classificar automaticamente novos objetos Por isso a tarefa a ser usada seraacute a

classificaccedilatildeo

A classificaccedilatildeo eacute um tarefa preditiva pois cria um modelo contendo objetos cuja classe eacute des-

conhecida a partir de atributos existentes em classes conhecidas designados atributos preditivos

Dentro de cada tarefa de Data Mining existe um conjunto de teacutecnicas associadas que dizem

respeito aos algoritmos que podem ser utilizados no caso da tarefa de classificaccedilatildeo os algoritmos

uacuteteis satildeo aacutervores de decisatildeo k-nearest redes neurais e SVM (support vector machine)

Existem ferramentas que disponibilizam estes algoritmos o seu utilizador ao utilizaacute-las tem

de conhecer e saber manipular os algoritmos por elas disponibilizados

Na proacutexima secccedilatildeo seratildeo explicados os algoritmos que foram referidos anteriormente como

uacuteteis para a tarefa de classificaccedilatildeo e em seguida seratildeo apresentadas as ferramentas de Data Mi-

ning

241 Algoritmos a utilizar

2411 Aacutervores de Decisatildeo

As aacutervores de decisatildeo permitem que grandes conjuntos de regras assimeacutetricas possam ser mais

faacuteceis de entender Estas aacutervores satildeo treinadas com um conjunto de treino (no nosso caso moleacute-

culas jaacute testadas) e depois outros exemplos satildeo classificados de acordo com essa mesma aacutervore

Eacute utilizada uma heuriacutestica para selecionar o atributo que melhor separa as amostras em classes

individuais esse torna-se o atributo de decisatildeo um ramo eacute criado para cada valor conhecido do

atributo de testes e as amostras satildeo divididas em conformidade O algoritmo usa o mesmo pro-

cesso de forma recursiva para formar uma aacutervore de decisotildees para as amostras de cada divisoacuteria

Por isso eacute que as aacutervores de decisatildeo se caraterizam por utilizarem a estrateacutegia de divisatildeo e con-

quista pois pegam num problema e dividem-no em problemas mais simples e vatildeo recursivamente

aplicar esta estrateacutegia a sub-problemas[Tri91]

15

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 31: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

Figura 26 Exemplo de aacutervore de decisatildeo

Vejamos o exemplo presente na Figura 26 temos um tabela onde estatildeo contidas vaacuterias moleacute-

culas e essas moleacuteculas contecircm trecircs atributos polaridade acidez e toxicidade [ZA10] Foi gerado

um modelo classificador atraveacutes desta tabela (aacutervore de decisatildeo) onde cada noacute especifica um de-

terminado atributo da instacircncia cada ramo descendente corresponde a um dos possiacuteveis valores

para o atributo em questatildeo Facilmente podemos concluir que Moleacutecula polar natildeo eacute toacutexica Moleacute-

cula natildeo polar e com acidez menor ou igual a 25 eacute toacutexica Moleacutecula natildeo polar e com acidez maior

a 25 natildeo eacute toacutexica Estas regras satildeo verdade para o conjunto de treino

Os atributos polaridade e acidez satildeo preditivos e e o atributo toxicidade eacute atributo classe e o

que se obteve foi um modelo que classifica uma moleacutecula como toacutexica ou natildeo de acordo com a

sua polaridade e acidez

2412 K-nearest neighbour

Este algoritmo eacute baseado na distacircncia aos vizinhos mais proacuteximos para classificar novos exem-

plos Ou seja ele baseia-se nas carateriacutesticas dos objetos mais proacuteximos a um objeto em questatildeo

e apartir daiacute classifica-o K-nearest neighbour funciona da seguinte forma [Pet09]

Para determinar a classe de um elemento que natildeo pertenccedila ao conjunto de treinamento o

classificador KNN procura K elementos do conjunto de treino que estejam mais proacuteximos deste

elemento desconhecido ou seja que tenham a menor distacircncia Estes K elementos satildeo chama-

dos de K-vizinhos mais proacuteximos Verifica-se quais satildeo as classes desses K vizinhos e a classe

mais frequente seraacute atribuiacuteda agrave classe do elemento desconhecido Existem vaacuterias meacutetricas para o

16

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 32: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

Figura 27 Exemplo de aplicaccedilatildeo do algoritmo K-nearest neighbour Retiradode httpenwikipediaorgwikiK-nearest_neighbors_algorithmmediaviewerFileKnnClassificationsvg

caacutelculo da distacircncia entre dois pontos (a moleacutecula que se pretende classificar e a moleacutecula preacute-

classificada) mas a meacutetrica mais comum eacute a distacircncia Euclidiana

Para perceber melhor o algoritmo vejamos um exemplo Na Figura 27 o elemento em estudo

estaacute representado pela bola verde e agrave sua volta estatildeo distribuiacutedos os seus vizinhos de acordo com

o caacutelculo da distacircncia entre eles (mais proacuteximos mais semelhantes) Caso k seja igual a trecircs o

nosso elemento pretenceria agrave classe dos triacircngulos pois existem dois triacircngulos e soacute um quadrado

Caso k seja considerado cinco a sua classificaccedilatildeo jaacute seraacute diferente ele pertenceraacute agrave classe dos

quadrados A escolha do valor k eacute muito importante pois como vimos variaccedilotildees no k poderatildeo

levar a diferentes classificaccedilotildees para o objeto que se pretende classificar Este caso eacute facilmente

transposto para o ldquouniversordquo das moleacuteculas onde o ciacuterculo verde eacute uma moleacutecula a ser classificada

que nunca foi testada em animais e os quadrados e triacircngulos agrave sua volta satildeo moleacuteculas jaacute testadas

De acordo com as suas carateriacutesticas estruturais e os seus descritores moleculares as moleacuteculas

testadas seratildeo distribuiacutedas ao redor do protoacutetipo a classificaccedilatildeo deste depende da classe dos seus

vizinhos que aparecer mais frequentemente

17

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 33: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

Um aspeto a ter em atenccedilatildeo eacute que classes com mais objetos podem por vezes a estar em

desvantagem em relaccedilatildeo a outras com menos como eacute o caso do exemplo anterior que quando k era

trecircs e apesar de existirem mais quadrados o objeto foi classificado como triacircngulo Para resolver

esta questatildeo puderaacute ser uacutetil o caacutelculo da meacutedia (nuacutemero de moleacuteculas daquele tipo existentes no

conjunto) ter algum peso sobre as distacircncias ao objeto em questatildeo

2413 Maacutequina de Suporte de Vetores (SVMs)

Eacute um meacutetodo de aprendizagem supervisionado A sua tarefa eacute separar duas classes atraveacutes de

uma funccedilatildeo que eacute induzida a partir das amostras de treino O objetivo eacute produzir um classificador

que apresenta um bom desempenho junto a amostras natildeo observadas na fase de treino Esse

classificador denomina-se hiperplano de separaccedilatildeo oacutetimo

Existem vaacuterios classificadores que podem separar os dados mas haacute apenas um que maximiza

a margem de separaccedilatildeo (maximiza a distacircncia entre o classificador e os pontos mais proacuteximos dos

dados de cada classe) Observando a Figura 28 podemos ver um hiperplano que maximiza a

margem da soluccedilatildeo[Gor04]

Os classificadores SVM satildeo bastante precisos mas quando se trata de processamento de um

grande volume de dados revelam-se lentos

242 Ferramentas de Data Mining

Os algoritmos referidos anteriormente satildeo indispensaacuteveis para o caacutelculo dos modelos de pre-

visatildeo mas natildeo teratildeo de ser desenvolvidos Existem ferramentas que possibilitam a aplicaccedilatildeo dos

mesmos sem ser necessaacuterio ter contacto com estes apesar de ser importante compreendecirc-los

2421 WEKA

A WEKA eacute a ferramenta mais popular entre todas as existentes eacute open source e desenvolvida

em Java Por ser escrita em Java o coacutedigo encontra-se apto para ser executado em diferentes

plataformas Grande parte dos seus recursos encontra-se disponiacutevel atraveacutes da sua interface graacute-

fica Consegue executar vaacuterias tarefas de data mining como regras de associaccedilatildeo clusters e

classificaccedilatildeo Sendo a uacuteltima tarefa a que interessa ao nosso projeto Dispotildee de diversas teacutecnicas

(algoritmos) dentro de cada tarefa

O primeiro passo para a utilizaccedilatildeo desta aplicaccedilatildeo eacute gerar uma versatildeo ARFF da base de dados

com que iremos trabalhar Neste formato temos a declaraccedilatildeo da relaccedilatildeo seguida do cabeccedilalho

(onde satildeo declarados os atributos) e depois os dados

Como jaacute foi referido dispotildee de uma grande variedade de algoritmos de aprendizagem Apoacutes

carregados os dados podemos selecionar um dos algoritmos e ver os seus resultados e ainda visu-

alizar graficamente o classificador gerado (ex aacutervores de decisatildeo) Eacute possiacutevel filtrar os atributos

e instacircncias da base de dados importada e obter informaccedilotildees quantitativas e estatiacutesticas sobre os

18

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 34: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

Figura 28 Hiperplano Retirado de httpdocsopencvorg_imagesoptimal-hyperplanepng

atributos[Gon]

Permite testar teacutecnicas diferentes de modo a compaacutera-las verificando qual a que apresenta

menor taxa de erro por exemplo

Para que seja possiacutevel determinar a precisatildeo dos algoritmos mediante determinados dados esta

permite a anaacutelise de resultados

Aleacutem do modo graacuteficoexite uma interface que permite a execuccedilatildeo direta de comandos do

WEKA Estes comandos podem ser invocados por outra aplicaccedilatildeo que fornece os dados ao

WEKA seleciona os algoritmos configura os valores destes algoritmos (limites) e recolhe os

resultados

19

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 35: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

2422 RapidMiner

RapidMiner eacute tambeacutem uma ferramenta open source onde o utilizador define o processo de

tratamento de dados Possui mais funcionalidades que a ferramenta apresentada anteriormente

Aleacutem das funcionalidades que a WEKA dispotildee possui ainda operadores OLAP validaccedilatildeo e poacutes-

processamento[kn09]

2423 KNIME

O KMINE eacute outra ferramenta de Data mining que tal como a WEKA e o RapidMiner trabalha

os dados aplicando determinados algoritmos e consegue encontrar padrotildees Tem sido apontada

como a ferramenta com mais desempenho e melhor interface graacutefica

2424 Sistema PLI

Programaccedilatildeo loacutegica indutiva (PLI) eacute um subcampo da aprendizagem de maacutequina que usa a

loacutegica de programaccedilatildeo como uma representaccedilatildeo uniforme para exemplos conhecimento de fundo

e hipoacuteteses Sendo fornecido um conjunto de exemplos e conhecimento de fundo um sistema de

PLI vai derivar um programa de loacutegica (uma hipoacutetese) que implica todos os exemplos positivos e

nenhum dos exemplos negativos

Esquema exemplos positivos + exemplos negativos + conhecimento de fundo =gt hipoacutetese

Resumidamente PLI eacute a interseccedilatildeo de aprendizagem de maacutequina e programaccedilatildeo loacutegica Herda

o objetivo de Machine Learning que passa por induzir hipoacuteteses a partir de exemplos e obter as-

sim conhecimento A loacutegica computacional surge nesta abordagem para superar as limitaccedilotildees de

Machine Learning formalismo na representaccedilatildeo de conhecimento (dados estatildeo representados na

forma atributo-valor) e dificuldades em usar conhecimento preacutevio substancial

A Programaccedilatildeo Loacutegica Indutiva deriva regras gerais a partir de exemplos por isso mesmo

esta abordagem tem sido aplicada a problemas de prediccedilatildeo e classificaccedilatildeo Esta carateriacutestica do

PLI vem da induccedilatildeo que eacute uma forma de inferecircncia loacutegica que permite obter conclusotildees gerais a

partir de um conjunto particular de exemplos

Existem vaacuterios sistemas de PLI o ALEPH seraacute o utilizado neste trabalho

ALEPH

O sistema ALEPH [Sri07] eacute escrito em Prolog e possui uma poderosa linguagem de repre-

sentaccedilatildeo que permite representar expressotildees complexas e incorporar novo conhecimento com fa-

cilidade Eacute escrito em Prolog e pode ser utilizado com o compilados Yap Prolog e SWi Prolog

sendo a primeira a opccedilatildeo mais aconselhada pois a utilizaccedilatildeo do SWI Prolog prejudica algumas

20

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 36: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

funcionalidades do sistema

Eacute possiacutevel emular funcionalidades de vaacuterios outros sistemas de PLI como Progol FOIL

etc[MF07]

O ALEPH utiliza informaccedilatildeo contida em trecircs ficheiros dois deles com os exemplos a serem

utilizados (casos jaacute testados) um com os exemplos positivos e outro com os exemplos negativos o

terceiro ficheiro conteacutem a informaccedilatildeo sobre o conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem restriccedilotildees de tipos e paracircmetros

De modo a criar bons modelos o sistema aceita um conjunto grande de paracircmetros Os mais

importantes satildeo os que geram a procura no espaccedilo de modelos e os que restrigem a linguagem dos

modelos

ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese iterativamente por meio do

algoritmo descrito a seguir

1 Seleciona um exemplo positivo do conjunto de exemplos de treino para ser generalizado

(tecircm de existir sempre dois tipos de exemplos o positivo e o negativo por exemplo uma

moleacutecula que passou num teste de toxicologia e outra que natildeo passou) Se natildeo existirem

mais exemplos positivos paacutera

2 Saturaccedilatildeo construccedilatildeo da claacuteusula bottom esta eacute a claacuteusula mais especiacutefica do exemplo

selecionado Eacute a partir desta claacuteusula que o ALEPH constroacutei as possiacuteveis hipoacuteteses

3 Reduccedilatildeo encontrar uma claacuteusula mais geral que a bottom (que cubra o maior nuacutemero de

exemplos positivos e o menor nuacutemero de exemplos negativos) Realiza-se uma busca por

uma boa claacuteusula entre a claacuteusula mais geral a bottom e uma claacuteusula vazia a boa qualidade

de cada claacuteusula encontrada eacute avaliada atraveacutes de uma funccedilatildeo de avaliaccedilatildeo

4 Adiciona a claacuteusula de melhor qualidade agrave teoria e remove todos os exemplos positivos

cobertos por ela

5 Repete ateacute que todos os exemplos positivos sejam cobertos

21

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 37: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Estado da Arte

22

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 38: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Capiacutetulo 3

Descriccedilatildeo da Ferramenta

A aplicaccedilatildeo de software desenvolvida tem por objetivo melhorar o processo de desenvolvi-

mento de faacutermacos Tendo como ponto de partida moleacuteculas jaacute testadas em animais estas satildeo

disponibilizadas atraveacutes de um dataset A aplicaccedilatildeo tem como objectivo facilitar a utilizaccedilatildeo de

ferramentas de Data Mining (DM) para prever os resultado de testes ADMET Como o processo

de utilizaccedilatildeo do DM eacute geralmente um processo iterativo a aplicaccedilatildeo disponibiliza a possibilidade

de realizar estas experiecircncias com o DM em projectos Tipicamente em cada projecto o utilizador

usa um data set e constroi vaacuterios modelos ateacute ficar satisfeito com o resultado O projecto guarda e

gere todos os passos realizados A aplicaccedilatildep permite ao utilizador criar abrir e apagar um projeto

Cada projeto possui um dataset associado o username do utilizador que o criou a descriccedilatildeo deste

projeto e um conjunto de experiecircncias Dentro de um mesmo projeto o utilizador pode fazer mais

que uma experiecircncia para cada uma delas ele teraacute de selecionar quais os descritores moleculares e

grupos funcionais que pretende considerar para a construccedilatildeo dos modelos atraveacutes das ferramentas

de DM e ainda escolher qual a ferramenta que pretende utilizar se o ALEPH o WEKA ou ambas

Estas ferramentas de DM constrotildeem modelos para previsatildeo de propriedades (como toxicidade) a

partir de informaccedilatildeo sobre moleacuteculas jaacute classificadas Um ponto importante destas tecnologias

de DM eacute que em muitos algoritmos os modelos construiacutedos satildeo inteligiacuteveis e podem por isso ser

usados como pistas para explicar a propriedade que prevecircm O utilizador pode utilizar essas re-

gras para verificar se uma nova moleacutecula se encaixa no grupo das que passaram positivamente nos

testes em animais ou nas que natildeo passaram

Atraveacutes de um programa de visualizaccedilatildeo como o VMD os padrotildees encontrados pelos algorit-

mos de DM podem ser explorados ou seja as moleacuteculas e seus padrotildees correspondentes podem

ser exibidos A pesquisa por substruturas pode ter vaacuterias iteraccedilotildees o utilizador se pretender pode

modificar os padrotildees e pedir uma nova avaliaccedilatildeo dos mesmos ou ateacute mesmo escolher defini-los

como uma regra que seraacute usada numa nova iteraccedilatildeo com as ferramentas de DM Esta facilidade de

visualizaccedilatildeo estaacute disponiacutevel unicamente na versatildeo anterior do iLogChem

Este projeto consistiu em refazer em Java o sistema iLogChem original desenvolver um

sistema de gestatildeo de experiecircncias de DM interface com o PaDEL para caacutelculo dos descritores

23

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 39: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Descriccedilatildeo da Ferramenta

moleculares inclusatildeo do WEKA desenvolvimento de um wrapper para tornar automaacutetica e trans-

parente a utilizaccedilatildeo do WEKA e utilizaccedilatildeo do WEKA como pre-processador do ALEPH

31 Estrutura de diretoacuterios

A possibiliadde de guardar e gerir sob a forma de projectos as experiecircncias de DM eacute uma

mais valia importante em relaccedilatildeo agrave versatildeo original do iLogChem Dentro do projeto iLogChem

existe uma pasta denominada LogChemProjetcs onde eacute guardada toda a informaccedilatildeo relativa aos

projetos e agraves experiecircncias feitas em cada um deles

Para cada projeto iniciado eacute criada uma pasta correspondente dentro dessa pasta eacute guardada

toda a informaccedilatildeo relativa ao projeto Os dados gerais do projeto como nome de utilizador des-

criccedilatildeo do projeto nome do dataset satildeo guardados num ficheiro txt dentro dessa pasta O ficheiro

Prolog resultante do dataset com a estrutura das moleacuteculas o diretoacuterio contendo o dataset origi-

nal e o ficheiro CSV contendo os descritores moleculares satildeo guardados dentro deste diretoacuterio

do projeto Dentro de cada pasta de projeto existe uma outra denominada Experiments onde satildeo

guardadas todas as experiecircncias feitas dentro desse mesmo projeto Cada experiecircncia teraacute o seu

diretoacuterio contendo um ficheiro txt com a informaccedilatildeo geral da experiecircncia o ficheiro ARFF um

ficheiro Prolog com os descritores moleculares e outro com os grupos funcionais diretoacuterio com

as vaacuterias versotildees dentro de cada experiecircncia As versotildees guardam os vaacuterios ficheiros que foram

sendo utilizados como dados de entrada das ferramentas de DM e os resultados obtidos Os fichei-

ros de entrada satildeo ficheiros Prolog se usados pelo ALEPH ou ARFF se usados pelo WEKA Para

cada experiecircncia existem variaacuteveis que permanecem estaacuteticas descritores moleculares e grupos

funcionais O utilizador define quais descritores e grupos funcionais pretende utilizar uma soacute vez

para cada experiecircncia

Esta estrutura de diretoacuterios tem um aspecto idecircntico a uma hierarquia de classes tal como

mostra a Figura 31 Por exemplo o diretoacuterio de cada experiecircncia herda os ficheiros do diretoacuterio

do projeto de que faz parte experiecircncias (mesmo niacutevel hieraacuterquico) natildeo partilham ficheiros que

se encontram dentro do seu diretoacuterio ou seja herdam os dados do ficheiro que lhes deu origem e

constrotildeem os seus proacuteprios

32 Detalhes da implementaccedilatildeo

A aplicaccedilatildeo original iLogChem foi primeiramente desenvolvida em TclTk esta eacute uma lin-

guagem de programaccedilatildeo para scripts bastante utilizada em programas com interface graacutefica Tal

como o Java eacute open source e pode ser executada em diferentes plataformas No trabalho desta

tese o iLogChem foi reescrito e extendido em Java tendo como base a versatildeo original recriando

as suas funcionalidades (descritas no Capiacutetulo 2) e acrescentando novas Neste capiacutetulo seratildeo

apresentados os detalhes da implementaccedilatildeo como eacute feita a ligaccedilatildeo com ferramentas externas a

24

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 40: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Descriccedilatildeo da Ferramenta

Figura 31 Estrutura de diectoacuterios que implementa a organizaccedilatildeo em projectos

transformaccedilatildeo sofrida pelos dados desde que satildeo inseridos pelo utilizador no sistema e como eacute

guardada a informaccedilatildeo

O ficheiro de input da aplicaccedilatildeo (dataset) pode ser em formato SDF ou SMILES dois dos

formatos mais populares Caso o formato de entrada natildeo seja SDF ele iraacute ser convertido para

esse formato A ferramenta responsaacutevel por esta conversatildeo eacute o OpenBabel o Java interage com a

linha de comandos usando o Runtime e executa assim a aplicaccedilatildeo externa o OpenBabel recebe o

ficheiro de entrada e seleciona o formato do ficheiro de saiacuteda (que seraacute sempre SDF) este uacuteltimo

ficheiro pode ser diretamente guardado na pasta pretendida dentro do projeto que estaacute a ser criado

O iLogChem utiliza duas ferramentas de DM para obter padrotildees o sistema PLI denominado

ALEPH e a WEKA O dataset teraacute de sofrer algumas modificaccedilotildees para que possa ser trans-

formado nos ficheiros de entrada necessaacuterios agraves duas aplicaccedilotildees de DM Existe um passo co-

mum agraves duas ferramentas o caacutelculo dos descritores moleculares estes satildeo calculados atraveacutes do

PaDEL-Descriptor O dataset original conteacutem apenas informaccedilatildeo acerca da estrutura das moleacutecu-

las Usando esta informaccedilatildeo estrutural satildeo calculados descritores que representam vaacuterias variaacuteveis

das moleacuteculas como o peso a orientaccedilatildeo etc Para caacutelculo destes descritores moleculares satildeo usa-

dos o PaDEL eou o OpenBabel executados atraveacutes da linha de comandos O diretoacuterio contendo

o ficheiro original o ficheiro para onde guardar os descritores e quais os grupos de descritores que

se pretende obter os valores satildeo os argmentos desta aplicaccedilatildeo Eacute criado um ficheiro no local de-

signado e com formato CSV a primeira linha corresponde aos atributos e as restantes aos valores

de cada moleacutecula para cada um deles O PaDEL eacute uma aplicaccedilatildeo sofisticada que permite calcular

os trecircs tipos de descritores moleculares 1D 2D e 3D e disponibiliza perto de mil descritores

33 Utilizaccedilatildeo do sistema ALEPH

Para construir um modelo o ALEPH utiliza trecircs ficheiros

25

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 41: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Descriccedilatildeo da Ferramenta

- modeh(1active(+drug))- modeb(atom(+drug-atomidelement))- determination(active1atom3)- modeb(atom_bond(+drug+atomid-atomidelementelementint))- determination(active1atom_bond6)

Figura 32 Declaraccedilotildees de modo (modeh para o predicado da cabeccedila da claacuteusula e modeb para osliterais do corpo) e de determinaccedilatildeo (determination)

bull Ficheiro b conteacutem a informaccedilatildeo sobre conhecimento do domiacutenio as restriccedilotildees de busca e

linguagem (declaraccedilotildees de modo) e paracircmetros

bull Ficheiro f exemplos positivos

bull Ficheiro n exemplos negativos

Para produzir estes ficheiros necessaacuterios ao ALEPH a informaccedilatildeo disponiacuteel sobre as moleacuteculas

do data set tem que ser convertida para Prolog Para tal foram criados scripts que convertem a des-

criccedilatildeo SDF da estrutura moleclar para Prolog e os descitores moleculares prodizidos pelo PaDEL

tambeacutem para Prolog Primeiramente o dataset eacute percorrido e os ids das moleacuteculas satildeo passados

ou para o ficheiro f ou para o n (dependendo se forem exemplos positivos ou negativos) O passo

seguinte eacute construir o ficheiro b este conteacutem as declaraccedilotildees de modo que descrevem as relaccedilotildees

entre os objetos de dados e tipos desses dados e as declaraccedilotildees de determination que declaram os

predicados que podem ser utilizados para construir o modelo

Observando o coacutedigo da Figura 32 podemos ver que se pretende criar uma definiccedilatildeo do pre-

dicado active usando atom e atom_bond A regra a construir definiraacute o que eacute preciso para uma

moleacutecula ser ativa vatildeo ser inferidas quais as ligaccedilotildees entre aacutetomos que levam a que esta moleacute-

cula tenha essa carateriacutestica Para que sejam inferidas eacute preciso por efetivamente informaccedilatildeo real

relativamente agraves moleacuteculas existentes nos ficheiros b e n como vemos no trecho de coacutedigo da

Figura 33

No trecho da Figura 33 podemos verificar que a moleacutecula com id 4-DBPCAN-v4b (este id

estaraacute no ficheiro f ou ficheiro n) conteacutem um aacutetomo O e dois aacutetomos C e que o O se encontra

ligado a um C e existe uma ligaccedilatildeo entre os aacutetomos C O coacutedigo apresentado eacute apenas referente

agrave estrutura (ligaccedilotildees dos aacutetomos) o mesmo eacute feito para os descritores moleculares e grupos fun-

cionais estes uacuteltimos representam macros utilizadas para ajudar na compreensatildeo dos modelos e

controlar o refinamento das regras A utilizaccedilatildeo destas variaacuteveis levaraacute a que as regras criadas

indiquem quais os descritores moleculares e grupos funcionais que contribuem para a carateriacutestica

da moleacutecula ou seja para o fato dela ser ativa ou natildeo Para cada uma seraacute criada uma funccedilatildeo de

modeb e esse predicado seraacute usado como segundo argumento na funccedilatildeo determination

26

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 42: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Descriccedilatildeo da Ferramenta

atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo-4797-135606011)atom(rsquo4_DBPCAN_v4brsquo1rsquoOrsquo)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo-4243-2444-00222)atom(rsquo4_DBPCAN_v4brsquo2rsquoCrsquo)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo-2831-2436-00122)atom(rsquo4_DBPCAN_v4brsquo3rsquoCrsquo)bond(rsquo4_DBPCAN_v4brsquo121)bond(rsquo4_DBPCAN_v4brsquo231)bond(rsquo4_DBPCAN_v4brsquo2122)bond(rsquo4_DBPCAN_v4brsquo342)

Figura 33 Descriccedilatildeo das moleacuteclas utilizadas nos exemplos e que eacute parte do background kno-wledge

- modeb(rsquoAldehydersquo(+drug+atomid-atomid-atomid))- determination(active1aldehyde4)

AldehydersquoAldehydersquo(DA1A2A3) -atom(DA1rsquoCrsquo)atom(DA2rsquoHrsquo)atom(DA3rsquoOrsquo)bond(DA1A21)bond(DA1A32)

Figura 34 Definiccedilatildeo do grupo funcional Aldeiacutedo e que eacute parte do background knowledge

27

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 43: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Descriccedilatildeo da Ferramenta

O exemplo da Figura 34 representa o Aldehyde um dos vaacuterios grupos funcionais e que se

carateriza por ter aacutetomos do tipo C H e O e que o aacutetomo C tem uma ligaccedilatildeo ao H e duas ao O

O resultado do ALEPH seraacute uma regra com cabeccedila active (id da droga) e predicados codificando

uma substrutura existente em vaacuterias moleacuteculas ou seja um conjunto de relaccedilotildees atom e bond

(a primeira diz respeito a um aacutetomo e a segunda a uma ligaccedilatildeo) O sistema ALEPH possibilita

que o utilizador insira restriccedilotildees estas restriccedilotildees funcionaratildeo como exemplos negativos Todas as

hipoacuteteses criadas pelo ALEPH que violem as descriccedilotildees especificadas pelo utilizador seratildeo des-

cartadas Esta funcionalidade eacute uacutetil especialmente na interaccedilatildeo do quiacutemico com o iLogChem

atraveacutes da visualizaccedilatildeo das moleacuteculas ele poderaacute definir uma restriccedilatildeo (como por exemplo um

padratildeo) que ele considera que natildeo deveraacute estar presente nas regras finais

Uma vez construiacutedos os ficheiros f (de moleacuteculas que exibem a propriedade que se quer es-

tudarprever) n (das moleacuteculas que natildeo exibem a propriedade) e o b contendo toda a infrmaccedilatildeo

que o especialista julga ser relevante para a construccedilatildeo do modelo o sistema ALEPH eacute executado

e o modelo construiacutedo

Uma das grandes vantagens do uso do ALEPH eacute que os modelos satildeo descritos por um conjunto

(geralmenet pequeno) de regras que satildeo facilmente interpretaacuteveis pelo especialista (bioquiacutemico

por exemplo) Esta interpretabilidade dos modelos pode ser uma enorme mais-valia neste domiacutenio

do desenho racional de faacutermacos

Uma das desvantagens da utiizaccedilatildeo do ALEPH eacute que o seu tempo de execuccedilatildeo aumenta dras-

ticamente com a quantidade de informaccedilatildeo que lhe eacute dada sobre o domiacutenio (o nuacutemero de predi-

cados usados para caracterizar as moleacuteculas) Se nos lembrarmos que o PaDEL pode gerar quase

mil descritores moleculares torna-se difiacutecil usar o ALEPH nestas circunstacircncias Uma contri-

buiccedilatildeo importante desta nova versatildeo do iLogChem eacute a inclusatildeo de algoritmos de Machine Lear-

ning proposicionais tais como os algoritmos disponibilizados pelo WEKA Embora os algoritmos

proposicionais tenham enorme dificudade em representar informaccedilatildeo relacional (como por exem-

plo descrever os grupos funcionais) satildeo extremamente mais eficientes (raacutepidos) que o Alpeh A

incorporaccedilatildeodo WEKA no iLogChem permite usar algoritmos raacutepidos para selcionar quais os

descritores moleculares mais interessantese dar ao ALEPH soacute esse conjunto de descritores po-

tencialmente mais relevates Tentando assim atenuar o uso dos descritores moelculares por parte

do ALEPH

34 WEKA

O WEKA eacute uma ferramenta que possui uma lista variada de algoritmos no caso desta apli-

caccedilatildeo soacute os algoritmos de classificaccedilatildeo interessam Os modelos satildeo criados recorrendo a aacutervores

de decisatildeo e k-nearest neighbour O WEKA necessita de um ficheiro de treino e outro de teste o

primeiro controacutei o modelo e o segundo usa outras moleacuteculas para determinar a precisatildeo do modelo

28

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 44: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Descriccedilatildeo da Ferramenta

criado

Os ficheiros de input do WEKA satildeo em formato ARFF ou CSV Apoacutes serem calculados os des-

critores moleculares atraveacutes do PaDEL estes estatildeo contidos num ficheirocsv Atraveacutes do WEKA

os atributos (colunas) satildeo filtrados consoante os descritores moleculares selecionados

Em seguida o conjunto de dados eacute dividido em duas partes conjunto de treino e conjunto de

teste O primeiro representa 70 das instacircncias (que correpondem agraves linhas se considerarmos uma

tabela atributo-valor) e o segundo os restantes 30 O modeloclassificador eacute construiacutedo atraveacutes

do conjunto de treino satildeo inferidas regras que depois seratildeo testadas atraveacutes do conjunto de teste

bull Zagreb le 10rarr Positiva

bull Zagreb gt 10rarr Negativa

Este eacute um problema de classificaccedilatildeo o que eacute pretendido eacute que o WEKA classifique a moleacute-

cula em positiva ou negativa utilizando o atributo Zagreb Um atributo pode natildeo estar contido

nas regras produzidas caso tenha valores iguais para moleacuteculas com atributo classe diferente pois

torna-se irrelevante

O desempenho dos modelos inferidos eacute medido de acordo com as moleacuteculas de teste a per-

centagem daquelas que se enquadram nas regras produzidas O desempenho do classificador eacute

mostrado ao utilizador sob a forma de diversas meacutetricas que lhe indicam qual o erro do resultado

final Satildeo usadas aacutervores de decisatildeo variando os pacircrametros C (confianccedila de poda) e M (nuacutemero

miacutenimo de instacircncias por folha da aacutervore) diferentes por forma a verificar qual a que apresenta

uma melhor performance O utilizador tem acesso a esta comparaccedilatildeo A aplicaccedilatildeo iLogChem

utiliza a ferramenta WEKA atraveacutes da sua API que foi introduzida no coacutedigo Java Para tal bastou

incluir no projeto iLogChem o ficheiro wekajar [Gar] Atraveacutes de um conjunto de funccedilotildees aces-

siacuteveis por programaccedilatildeo e integrando-as no coacutedigo desenvolvido foram requisitadas algumas das

suas funcionalidades

Tendo em vista que um dos objectivos principais do iLogChem eacute esconderdo utilizador o

uso dos algoritmos de DM foi codificado um warpperpara os algoritmos disponibilizados pelo

WEKA O wrapper permite que estes palgoritms sejam usados e sintonizados sem que o utilizador

se aperceba como Uma descriccedilatildeo sumaacuteria do wrapper pode ser vista na Figura 35

35 Interface com o utilizador

O utilizador seja ele um quiacutemico um farmacecircutico ou ateacute uma pessoa com poucos conheci-

mentos quiacutemicos que queira somente visualizar as moleacuteculas pode facilmente interagir com esta

29

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 45: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Descriccedilatildeo da Ferramenta

WrapperEntrada ALGORITMOS conjunto de algoritmos

conjunto de valores para os parametros dos algoritmos

Accuracy = 0MelhorAlg = rdquoMelhorComb = rdquoPara Alg em ALGORITMOS

Para Comb em todas as combinaccedilotildees de paracircmetros de AlgSe accuracy de Comb melhor que Accuracy ENTAtildeOAccuracy = accuracy(comb)MelhorComb = combMelhorAlg = Alg

Retorna Accuracy MelhorAlg e MelhorComb

Figura 35 Pseudo-coacutedigo do funcionamento do wrapper

ferramenta A interface graacutefica desta aplicaccedilatildeo eacute desenvolvida com Swing uma API java Esta eacute

uma API de alto niacutevel mais abstracta com menos aproximaccedilatildeo agraves APIs do sistema operacional

por essa razatildeo tem menos performance e consome mais memoacuteria RAM Por ser uma API java

pode ser utilizada em qualquer sistema operativo que suporte JVM A ferramenta iLogChem do

ponto de vista do utilizador final eacute bastante simples Existe uma interface Main onde se pode se-

lecionar qual a accedilatildeo que se prentende tomar criar projeto apagar projeto abrir projeto opccedilatildeo de

ajuda para entender melhor o funcionamento do sistema e ainda quem desenvolveu a ferramenta

Nos capiacutetulos anteriores jaacute foram explicados todos os passos a serem tomados pela aplicaccedilatildeo

apoacutes ser introduzido um dataset o contacto com ferramentas externas a conversatildeo de ficheiros

etc o utilizador natildeo se apercebe de nenhum destes procedimentos ele apenas seleciona quais os

dados a considerar qual a ferramenta de data mining quais os algoritmos e depois soacute visualiza o

resultado interagindo com a visualizaccedilatildeo 3D

A interface foi projetada para que fosse user-friendly sendo o mais intuitiva possiacutevel pois eacute

projetada para ser de faacutecil interaccedilatildeo para pessoas com poucos conhecimentos informaacuteticos Por

exemplo na Figura 36 encontra-se o painel onde se pode selecionar quais os descritores mole-

culares a serem considerados para uma determinada experiecircncia existem centenas de descritores

e estes dividem-se em trecircs grupos o utilizador pode selecionaacute-los um a um selecionar um grupo

completo ou selecionar aqueles que natildeo quer e depois fazer reverse e automaticamente seratildeo sele-

cionados todos os que natildeo estavam selecionados anteriormente e excluiacutedos os que foram seleciona-

dos anteriormente (hipoacutetese vaacutelida para quando quiser excluir um pequeno nuacutemero de descritores)

30

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 46: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Descriccedilatildeo da Ferramenta

Figura 36 Interface graacutefica - descritores moleculares

36 Tecnologias Utilizadas

Este projeto consistiu em aprimorar uma aplicaccedilatildeo jaacute existente desenvolvendo um sistema de

gestatildeo de experiecircncias de DM A aplicaccedilatildeo iLogChem foi inicialmente desenvolvida em TCL TK

esta eacute uma linguagem de programaccedilatildeo para scripts e bastante utilizada para a escrita de programas

com interface graacutefica onde geralmente se utiliza a sua extensatildeo Tk Toolkit Uma das primeiras

tarefas deste projeto foi desenvolver a iLogChem em Java linguagem de programaccedilatildeo orientada

a objetos Esta linguagem natildeo eacute compilada para coacutedigo nativo e sim para um bytecode que eacute

interpretado por Maacutequinas Virtuais Java (JVMs) Esta carateriacutestica aleacutem de tornar a tarefa de pro-

gramar mais praacutetica (natildeo tendo de estar sempre a clicar na opccedilatildeo compilar para detetar os erros

sintaacuteticos) torna possiacutevel que os programas Java sejam independentes de plataforma executando

em qualquer sistema que possua uma JVM

O NetBeans foi o ambiente de desenvolvimento integrado (IDE) escolhido eacute opensource e

pode ser executado em muitas plataformas Permite que a ediccedilatildeo de coacutedigo seja feita de forma

raacutepida realccedilando coacutedigos-fonte sintaacutetica e semanticamente e dando dicas de codificaccedilatildeo editor de

coacutedigo fonte integrado rico em recursos para aplicaccedilotildees visuais com Swing que eacute uma API (In-

terface de Programaccedilatildeo de Aplicativos) Java para interfaces graacuteficas os recursos do GUI Builder

facilitam a criaccedilatildeo de interfaces graacuteficas o NetBeans Debugger permite inserir pontos de interrup-

ccedilatildeo no coacutedigo-fonte avanccedilar pelo coacutedigo e executar meacutetodos levando a que a descoberta dos erros

seja mais raacutepida Para caacutelculo dos descritores moleculares que satildeo utilizados pelas ferramentas de

data mining foi utilizado um software opensource o PaDEL desenvolvido em Java Ele eacute capaz

de calcular 905 descritores sendo provenientes de quatro teorias 1D 2D 3D e impressotildees digi-

tais Pode ser usado atraveacutes da interface graacutefica que disponibiliza ou pela linha de comandos esta

31

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 47: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Descriccedilatildeo da Ferramenta

segunda forma de interaccedilatildeo foi a razatildeo principal pela escolha desta ferramenta em detrimento de

outras Para invocar esta ferramenta atraveacutes do coacutedigo Java basta acionar a linha de comandos e

chamar o PaDEL e enviar toda a informaccedilatildeo necessaacuteria para que ele consiga calcular os descritores

e guardar os resultados

A versatildeo anterior da iLogChem estava condicionada a um tipo de formato de ficheiros quiacutemi-

cos o MDL SDF o utilizador para introduzir os dados na aplicaccedilatildeo tinha de usar este formato O

OpenBabel eacute um software com uma variedade de funcionalidades dentro da quimioinformaacutetica

entre elas filtrar e procurar subestruturas usando SMARTS e outros meacutetodos caacutelculo de impres-

sotildees digitais (tal como o PaDEL) e escrita leitura e conversatildeo de mais de 110 formatos de ficheiros

quiacutemicos Esta uacuteltima funcionalidade foi a que levou a que o OpenBabel fosse utilizado pela iLog-

Chem permitindo que ficheiros SMILES (bastante populares) tambeacutem possam ser introduzidos

Foram escolhidas duas ferramentas de DM para a construccedilatildeo de modelos apartir das infor-

maccedilotildees quiacutemicas fornecidas WEKA e ALEPH A aplicaccedilatildeo WEKA tem agrave sua disposiccedilatildeo um

conjunto de algoritmos de diversas teacutecnicas de DM eacute um software livre implementado em Java

o que torna possiacutevel a sua utilizaccedilatildeo em diferentes sistemas operacionais A escolha desta ferra-

menta deveu-se ao fato de poder ser facilmente integrada no coacutedigo Java atraveacutes da sua API ao

contraacuterio das outras alternativas Possui uma interface graacutefica que natildeo seraacute usada neste projeto

O sistema ALEPH estaacute escrito em Prolog pode ser utilizado com o compilador Yap-Prolog ou

SWIProlog Mas certas experiecircncias mostraram que ao usar o SWIProlog certas funcionalidades

do sistema satildeo prejudicadas O ALEPH constroacutei incrementalmente as claacuteusulas de uma hipoacutetese

iterativamente por meio de um algoritmo

O input do sistema ALEPH eacute um ficheiro em formato b e dois ficheiros contendo moleacuteculas

escritos em Prolog Prolog eacute uma linguagem de programaccedilatildeo loacutegica e declarativa Loacutegica pois

emprega o estilo da loacutegica matemaacutetica agrave programaccedilatildeo os problemas satildeo expressos como teorias

A loacutegica proporciona uma maneira de demonstrar se uma questatildeo eacute verdadeira ou falsa ou seja

verifica se uma hipoacutetese eacute validada por uma teoria O compilador usado para correr os scripts

de Prolog foi o Yap pela razatildeo jaacute explicada anteriormente Yap foi desenvolvido no LIACC na

Universidade do Porto Eacute considerado um dos sistemas de Prolog mais raacutepidos e possui vaacuterias fun-

cionalidades entre elas suporta stream IO exceptions arrays threads excepccedilotildees etc Depois de

serem encontrados pelos algoritmos de DM os padrotildees existentes nos datasets o utilizador pode

visualizaacute-los assim como as moleacuteculas O programa que permite esta visualizaccedilatildeo eacute o VMD foi

desenvolvido principalmente para visualizaccedilatildeo e anaacutelise dos resultados de simulaccedilotildees de moleacutecu-

las Permite a anaacutelise de grandes sistemas biomoleculares atraveacutes do uso de graacuteficos 3D VMD

pode ser usados em vaacuterios sistemas operativos MacOS X Unix ou Windows

32

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 48: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Capiacutetulo 4

Avaliaccedilatildeo Testes e Resultados

A aplicaccedilatildeo desenvolvida tem dois objectivos principais i) escolder a utilizaccedilatildeo dos algorit-

mos de DM e construir modelos precisos e se possiacuteveis que ajudem na explicaccedilatildeo das propri-

edades dos faacutermacos O trabalho final eacute por isso avaliado de duas formas qualitativamente e

quantitativamente

41 Qualitativa

A aplicaccedilatildeo eacute facilmente explorada por um utilizador que natildeo tenha nenhum conhecimento

de software Este escolhe apenas o dataset contendo a informaccedilatildeo molecular que seraacute associada

a um projeto A loacutegica de criaccedilatildeo de projetos e das experiecircncias que lhes estatildeo associadas eacute a

mesma de criar pastas e de seguida criar outras pastas dentro destas Eacute por isso um conceito

faacutecil de interpretar por um utilizador que tenha conhecimentos baacutesicos de como interagir com um

computador Para cada experiecircncia a seleccedilatildeo dos descritores moleculares e grupos funcionais eacute

bastante intuitiva e raacutepida Os descritores podem ser selecionados por grupos em que cada grupo

pode ser selecionado totalmente apenas alguns ou selecionado totalmente e depois retirado(s)

aquele(s) descritor(es) que natildeo satildeo desejaacuteveis O facto de se usar um interface graacutefico com cai-

xas de escolha (check boxes) e bototildees torna a aplicaccedilatildeo faacutecil de usar Neste projecto natildeo houve

oportunidade de contar com a opiniatildeo de especialistas Os especialistas poderiam natildeo soacute avaliar a

facilidade de interacccedilatildeo mas tambeacutem a inteligibilidade dos modelos construiacutedos

42 Quantitativa

Eacute importante garantir que os resultados obtidos sejam fiaacuteveis e estatisticamente significativos

Os algoritmos de aprendizagem utilizam meacutetricas de validaccedilatildeo estatiacutestica que permitem detetar

possiacuteveis anomalias no modelo Utilizando um conjunto de dados diferente dos dados de treino

eacute avaliado o comportamento do modelo construiacutedo Para que o modelo seja fiaacutevel eacute necessaacuterio

que este gere o mesmo tipo de previsotildees ou localize padrotildees semelhantes A taxa de erro pode ser

calculada usando vaacuterios tipos de validaccedilatildeo validaccedilatildeo de sub-amostras aleatoacuterias repetidas onde

33

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 49: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Avaliaccedilatildeo Testes e Resultados

Figura 41 Resultado da avaliaccedilatildeo de um modelo criado atraveacutes de descritores moleculares

os dados satildeo divididos aleatoacuteriamente em dois conjuntos o de treino e o de validaccedilatildeo n fold

cross-validation onde os dados satildeo divididos em N subconjuntos para uma aprendizagem de N ite-

raccedilotildees ao longo do processo de treino satildeo utilizados N ndash 1 blocos e apenas um para teste sendo

este diferente a cada iteraccedilatildeo validaccedilatildeo leave-one-out semelhante ao anterior soacute que o tamanho

da amostra eacute de um elemento no conjunto de teste validaccedilatildeo hold-out percentage split o conjunto

de testes eacute escolhido de modo aleatoacuterio

A ferramenta WEKA utilizada pelo iLogChem utiliza os descritores moleculares calculados

pelo PaDEL para construir modelos preditivos Depois de ser construiacutedo um modeloclassificador

este eacute validado e os resultados desta avaliaccedilatildeo satildeo mostrados ao utilizador para que o especialista

saiba qual a eficaacutecia do modelo Nesta aplicaccedilatildeo o meacutetodo de avaliaccedilatildeo foi o percentage split

(hold-out method) os dados satildeo divididos em dois conjuntos o de treino e o de teste O conjunto

de treino eacute usado para construir o classificador e o de teste verifica quais das instacircncias que natildeo

foram usadas pelo conjunto de treino verificam o modelo jaacute previamente construiacutedo A percenta-

gem de instacircncias usadas para treino eacute de 70 e para teste as restantes (30)

Os dados satildeo testados usando aacutervores de decisatildeo e algoritmos k-nearest neighbour No pri-

meiro caso satildeo usadas vinte e cinco aacutervores de decisatildeo o que varia nestas vinte e cinco aacutervores

satildeo as variaacuteveis C que significa confianccedila de poda e M que significa o nuacutemero miacutenimo de instacircn-

cias por folha da aacutervore O utilizador pode ver qual a precisatildeo de cada aacutervore criada e comparar O

mesmo acontece com os algoritmos k-nearest neighbour satildeo criados vaacuterios modelos com valores

de K diferentes e a precisatildeo de cada um deles eacute mostrada ao utilizador De relembrar que este

K representa quantos vizinhos pretende considerar ou seja a moleacutecula eacute classificada segundo os

seus k vizinhos mais proacuteximos A Figura 41 contecircm a avaliaccedilatildeo de um classificador O utilizador

consegue saber atraveacutes desta avaliaccedilatildeo quantas instacircncias foram avaliadas quantas destas instacircn-

cias natildeo verificavam o modelo construiacutedo e as respectivas percentagens o erro meacutedio absoluto a

raiacutez do erro meacutedio quadrado entre outras meacutetricas

34

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 50: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Avaliaccedilatildeo Testes e Resultados

Figura 42 Resultado de utilizaccedilatildeo do modelo nas instacircncias de teste

O atributo classe eacute o atributo que se pretende inferir atraveacutes dos modelos criados neste caso

pretende-se saber qual o conjunto de valores atribuiacutedos aos descritores moleculares que permitem

que uma moleacutecula seja ativa (passe nos testes ADMET) ou natildeo ativa Neste projeto o atributo

classe soacute tem dois valores possiacuteveis positivo ou negativo Na Figura 42 podemos ver outra

informaccedilatildeo disponibilizada ao utilizador sobre as instacircncias de teste ele pode verificar quais as

instacircncias que natildeo foram verificadas pelo modelo eacute apresentado qual o seu valor para o atributo

classe e qual aquele que foi previsto Esta informaccedilatildeo seria ainda mais uacutetil caso o conjunto de atri-

butos classe fosse maior que dois pois poderiam ser achados alguns erros comuns (por exemplo

que as instacircncias erradas eram sempre relativas a um determinado atributo classe)

43 Casos de Estudo

Este caso de estudo refere-se a um dataset com 177 moleacuteculas tanto moleacuteculas que passaram

num dos testes ADMET como outras moleacuteculas que natildeo passaram Utilizando este dataset foram

feitos trecircs testes

1 WEKA para construir um modelo utilizando apenas descritores 1D 2D

2 WEKA para construir um modelo utilizando todos os descritores excepto os 3D

3 ALEPH para construir um modelo utilizando informaccedilatildeo estrutural das moleacuteculas descri-

tores (excepto 3D) e grupos funcionais

Os testes 1 e 2 foram feitos atraveacutes da mesma ferramenta o WEKA diferem nos atributos

A informaccedilatildeo molecular encontra-se num ficheiro csv e para cada uma das moleacuteculas existe um

valor que a carateriza para cada um dos descritores Em baixo satildeo apresentados os valores de

cada um dos testes para as diferentes ferramentas e utilizando diferentes algoritmos Os resulta-

dos apresentados em baixo para esses testes satildeo apenas os melhores ou seja aqueles com maior

percentagem de instacircncias classificadas corretamente Existem vaacuterias meacutetricas apresentadas para

representar a precisatildeo estas jaacute satildeo disponibilizadas pela API do WEKA

35

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 51: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Avaliaccedilatildeo Testes e Resultados

Figura 43 Modelo codificado como Aacutervore de Decisatildeo pelo algoritmo J48 do WEKA

No caso das aacutervores de decisatildeo os dados satildeo treinados com conjuntos de valores C e M dife-

rentes estes valores satildeo apresentados ao utilizador para que ele escolha o(s) modelos com mais

precisatildeo Os modelos criados atraveacutes deste algoritmo satildeo de faacutecil anaacutelise vejamos a Figura 43

(este foi o modelo construiacutedo no teste 2)

Os noacutes da aacutervore representam os atributos e os ramos os valores que estes devem apresentar

para seguiram para o noacute seguinte nas folhas encontra-se sempre o valor da classe positivo ou ne-

gativo Algumas das regras que podemos retirar desta aacutervore apresentada em cima satildeo

bull se nX menor ou igual que 0 kier1 menor ou igual a 7 nBondsM maior que 1rArr moleacutecula

passa no teste

bull se nX maior que 0 BCUTc-1h menor ou igual a 0057743rArr a moleacutecula natildeo passa no teste

Em relaccedilatildeo ao algoritmo k-nearest neighbour o que varia eacute o valor de k como podemos verifi-

car no teste 1 o melhor modelo eacute o aquele cujo valor valor de k eacute 5 e no teste 2 eacute aquele cujo valor

de k eacute 10 O que acontece muitas vezes eacute existirem modelos com variaacuteveis de C M e K diferentes

e que apresentam a mesma precisatildeo

Teste 1

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

36

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 52: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Avaliaccedilatildeo Testes e Resultados

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

C 05

M 20

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 50 - 943396

Incorrectly Classified Instances 3 - 56604

Kappa statistic 08807

Mean absolute error 00806

Root mean squared error 01844

Relative absolute error 16304

Root relative squared error 372498

Coverage of cases (095 level) 100

Mean rel region size (095 level) 632075

Total Number of Instances 53

K 5

Teste 2

Aacutervores de decisatildeo J48

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01465

Root mean squared error 02084

Relative absolute error 296375

Root relative squared error 420953

Coverage of cases (095 level) 100

Mean rel region size (095 level) 100

Total Number of Instances 53

37

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 53: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Avaliaccedilatildeo Testes e Resultados

C 20

M 50

Algoritmo k-nearest neighbour

Results

Correctly Classified Instances 51 - 962264

Incorrectly Classified Instances 2 - 37736

Kappa statistic 09198

Mean absolute error 01327

Root mean squared error 02121

Relative absolute error 268397

Root relative squared error 428411

Coverage of cases (095 level) 100

Mean rel region size (095 level) 783019

Total Number of Instances 53

K 10

Teste 3

Em seguida encontra-se o conjunto de regras gerado pelo ALEPH seguido pelo valor calcu-

lado para a precisatildeo do modelo e por uacuteltimo a matriz da confusatildeo

[theory]

[Rule 2] [Pos cover = 27 Neg cover = 1]

active(A) -

atom(ABrsquoBrrsquo) atombond(ABCprimeBrprimeprimeCprime1)

[Rule 5] [Pos cover = 30 Neg cover = 0]

active(A) -

ketone(ABC) atom(ADrsquoClrsquo) atombond(ADEprimeClprimeprimeCprime1)

[Rule 7] [Pos cover = 13 Neg cover = 2]

active(A) -

atom(ABrsquoClrsquo) atombond(ABCprimeClprimeprimeCprime1)atombond(ACDprimeCprimeprimeCprime2)

Accuracy = 0853932584269663

[Training set summary] [[5732395]]

[time taken] [159744]

38

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 54: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Avaliaccedilatildeo Testes e Resultados

[total clauses constructed] [849910]

Figura 44 Training set

39

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 55: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Avaliaccedilatildeo Testes e Resultados

Na Figura 44 encontra-se a matriz de confusatildeo que utiliza o conjunto de treino onde satildeo

apresentadas as regras e para cada regra satildeo apresentados os valores de Pos cover e Neg cover

que indicam respetivamente o nuacutemero de exemplos positivos e negativos cobertos pela regra

Figura 45 Training set model

40

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 56: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Avaliaccedilatildeo Testes e Resultados

A Figura 45 explica quais os valores apresentados na matriz em seguida eacute apresentada a

legenda

TP - verdadeiros positivos

FP - falsos positivos

TN - verdadeiros negativos

FN - falsos negativos

P - nuacutemero total de exemplos positivos (P = TP + FN)

N - nuacutemero total de exemplos negativos (N=FP+TN)

PP - nuacutemero de exemplos classificados como negativos (PN = FN+TN)

PN - nuacutemero de exemplos classificados como negativos (PN = FN + TN)

Total - nuacutemero total de exemplos (Total = PP + PN)

41

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 57: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Avaliaccedilatildeo Testes e Resultados

42

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 58: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Capiacutetulo 5

Conclusotildees

A induacutestria farmacecircutica estaacute em constante desenvolvimento estatildeo sempre a surgir novas do-

enccedilas e a criaccedilatildeo de novos produtos eacute indispensaacutevel para a preservaccedilatildeo da sauacutede puacuteblica O

problema desta induacutestria eacute o tempo gasto nas pesquisas e por isso se tem usado as tecnologias

para combater esta demora no desenvolvimento de novos faacutermacos

Com o constante crescimento da informaccedilatildeo relativa a compostos quiacutemicos que tecircm vindo a

ser descoberto ao longo dos anos era importante mudar a forma como a investigaccedilatildeo neste sector

estava a ser feita Data Mining eacute um processo de explorar grandes quantidades de dados e en-

contrar padrotildees e tem sido bastante popular na construccedilatildeo de ferramentas que auxiliem as vaacuterias

etapas do desenho de drogas

O utilizador final desta aplicaccedilatildeo natildeo precisa de ter conhecimentos de software apenas de

saber utilizar um computador A ferramenta foi projetada para ser bastante intuitiva e facilitar

o trabalho dos quiacutemicos ou qualquer outro profissional dentro da aacuterea da biologia molecular O

especialista apenas observa os resultados e explora os dados natildeo toma conhecimento de nenhum

dos algoritmos que satildeo utilizados pelo iLogChem nem a transformaccedilatildeo que os dados sofrem ao

longo do processo

O bioquiacutemico pode criar vaacuterios projetos um projeto para cada dataset diferente e dentro de

cada projeto pode ainda fazer diversas experiecircncias com os dados disponiacuteveis selecionando di-

ferentes conjuntos de descritores moleculares e grupos funcionais

Por utilizar moleacuteculas jaacute testadas para a construccedilatildeo de modelos preditivos que evitem o teste

de novos compostos em animais este eacute um problema de classificaccedilatildeo A soluccedilatildeo desenvolvida

dispotildee de duas ferramentas de DM para construir modelos o ALEPH e o WEKA

43

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 59: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Conclusotildees

O WEKA constroacutei os modelos apenas utilizando informaccedilatildeo relativa aos descritores molecu-

lares as regras criadas satildeo de faacutecil compreensatildeo O grande problema desta ferramenta esta na

informaccedilatildeo capaz de ser inserida no sistema O ficheiro ARFF pode ser facilmente comparado

a um ficheiro Excell onde os aributos representam colunas e as moleacuteculas linhas Ora introdu-

zir informaccedilatildeo relativa agrave estrutura das moleacuteculas torna-seuma tarefa bastante ineficaz apesar dos

descritores moleculares representarem uma grande variedade de carateriacutesticas da moleacutecula muitas

delas ateacute estruturais muita informaccedilatildeo eacute deixada para traacutes Ligaccedilotildees entre aacutetomos de vaacuterios tipos

deixam de ser consideradas etc

Esta ferramenta eacute uacutetil apresenta uma performance aceitaacutevel (quando medida a sua precisatildeo)

mas a sua utilizaccedilatildeo durante o desenvolvimento de um novo faacutermaco deve ser feita de forma au-

xiliar ao sistema PLI ou para a obtenccedilatildeo de ilaccedilotildees mais diretas como por exemplo o utilizador

pretender saber qual a influecircncia do peso molecular ter um valor x

O sistema PLI traz uma grande vantagem a toda a pesquisa a sua capacidade de inserir dados

no sistema que atraveacutes de algoritmos de aprendizagem proposicional (aacutervores de decisatildeo SVMs

etc) natildeo seria possiacutevel

Ao serem utilizadas as duas tecnologias o resultado final seraacute ainda mais preciso podem ser

verificados quais os descritores moleculares existentes no classificador produzido pelo WEKA

tambeacutem estatildeo presentes nas regras produzidas pelo sistema PLI

As regras criadas pelo ALEPH compostas por um conjunto de predicados permitem construir

padrotildees estes padrotildees consistem em substruturas moleculares Para um quiacutemico esta eacute uma mais

valia poder observar graficamente estes padrotildees dentro das moleacuteculas correspondentes torna o seu

trabalho mais facilitado

Cada projeto diz respeito a um dos testes ADMET dependendo do dataset introduzido cada

teste eacute explorado separadamente Os testes ADMET natildeo poderiam ser todos avaliados de uma

soacute vez pois uma moleacutecula pode ter passado num teste de toxicidade e natildeo num de absorccedilatildeo e o

ALEPH aceita apenas dois ficheiros aleacutem do ficheirob que conteacutem ainformaccedilatildeo estrutural um

com as moleacuteculas que passaram positivamente e outra em que natildeo passaram

501 Trabalho futuro

O trabalho futuro seria explorar as regras criadas pelo ALEPH estas regras satildeo constituiacutedas

tanto por ligaccedilotildees entre aacutetomos como por determinados valores para os descritores moleculares e

ainda a existecircncia de grupos funcionais Cada dataset inserido no sistema corresponde a um dos

cinco testes ADMET Uma melhoria na aplicaccedilatildeo iLogChem seria sobrepor as regras criadas para

44

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 60: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Conclusotildees

cada um dos testes e extrair quais as regras em comum para os vaacuterios testes

Outra melhoria bastante uacutetil seria uma maior exploraccedilatildeo da ferramenta VMD permitindo ao

utilizador interagir melhor com o sistema atraveacutes da mesma Pois a anaacutelise por parte do especi-

alista de cada regra criada pelo ALEPH eacute bastante difiacutecil tendo em conta que estes satildeo datasets

contendo um grande nuacutemero de moleacuteculas

45

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 61: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Conclusotildees

46

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 62: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

Referecircncias

[CT] Viviana Consonni e Roberto Todeschini What is a molecular descrip-tor Disponiacutevel em httpwwwmoleculardescriptorseututorialsT1_moleculardescriptors_what_ispdf acedido a uacuteltima vez em 12 de Marccedilo de2014

[Gon] Eduardo Correcirca Gonccedilalves Data mining com a ferramenta Disponiacutevel emhttpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf

[Gor04] Geoff Gordon Support vector machines and kernel methods 2004

[ILP10] ILP-Web-Service Interactive Discriminative Mining of Chemical Fragments LNAI6489 2010

[kn09] Rapidminer 44 Disponiacutevel em httpforumsoftwarelivrecombr2011arquivospalestrasDataMining__Wekapdf 2009

[MF07] Maria Carolina Monard Mariza Ferro Fabiana Esteves de Paiva Mariza ferro fabianaesteves de paiva maria carolina monard Technical report ICMC Junho 2007

[Pet09] Leif E Peterson K-nearest-neighbor Disponiacutevel em httpwwwscholarpediaorgarticleK-nearest_neighbor 2009

[RC11] Viacuteıtor Santos Costa Nuno A Fonseca Carlos Adriano1 Carlos J V Simotildees Rui MM Brito Rui Camacho1 Max Pereira1 A relational learning approach to structure-activity relationships in drug design toxicity studies Journal of Integrative Bioinforma-tics 8(3)182ndash201 2011

[RoA07] Pharmaceutical Research e Manufacturers of America Drug discovery and de-velopment Disponiacutevel em httpwwwinnovationorgdrug_discoveryobjectspdfRD_Brochurepdf acedido a uacuteltima vez em 12 de Marccedilo de 20142007

[Sri07] Ashwin Srinivasan The aleph manual Disponiacutevel em httpwwwcsoxacukactivitiesmachlearnAlephalephhtml 2007

[Tod] Roberto Todeschini Lorem ipsummolecular descriptors and chemometrics apowerful combined tool for pharmaceutical toxicological and environmental pro-blems Disponiacutevel em httpwwwmoleculardescriptorseututorialsT2_moleculardescriptors_chemompdf acedido a uacuteltima vez em 12 de Marccedilode 2014

[Tri91] Duarte Trigueiros As aacutervores de decisatildeo 1991

47

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias
Page 63: Data Mining em Aplicações de Desenho Racional de Fármacos · Machine Learning para construir modelos que ajudam a reduzir o tempo e os custos gastos nos testes ADMET. Os testes

REFEREcircNCIAS

[ZA10] Fernando J Von Zuben e Romis R F Attux Aacutervores de decisatildeo 2010

48

  • Paacutegina de Rosto
  • Conteuacutedo
  • Lista de Figuras
  • 1 Introduccedilatildeo
    • 11 Projeto e Objetivos
    • 12 Motivaccedilatildeo
    • 13 Estrutura da Dissertaccedilatildeo
      • 2 Estado da Arte
        • 21 Processo de Desenho de Faacutermacos
        • 22 A aplicaccedilatildeo iLogChem
        • 23 Ferramentas informaacuteticas para Desenho de Faacutermacos
          • 231 Descritores Moleculares
          • 232 Ferramentas para caacutelculo de Descritores Moleculares
            • 24 Data Mining
              • 241 Algoritmos a utilizar
              • 242 Ferramentas de Data Mining
                  • 3 Descriccedilatildeo da Ferramenta
                    • 31 Estrutura de diretoacuterios
                    • 32 Detalhes da implementaccedilatildeo
                    • 33 Utilizaccedilatildeo do sistema ALEPH
                    • 34 WEKA
                    • 35 Interface com o utilizador
                    • 36 Tecnologias Utilizadas
                      • 4 Avaliaccedilatildeo Testes e Resultados
                        • 41 Qualitativa
                        • 42 Quantitativa
                        • 43 Casos de Estudo
                          • 5 Conclusotildees
                            • 501 Trabalho futuro
                              • Referecircncias