• Nenhum resultado encontrado

PEDRO VITOR BAPTISTA DE MOURA RECONHECIMENTO DE GESTOS REAIS E IMAGINÁRIOS A PARTIR DE SINAIS ELETROENCEFALOGRÁFICOS UTILIZANDO METACLASSIFICADORES

N/A
N/A
Protected

Academic year: 2022

Share "PEDRO VITOR BAPTISTA DE MOURA RECONHECIMENTO DE GESTOS REAIS E IMAGINÁRIOS A PARTIR DE SINAIS ELETROENCEFALOGRÁFICOS UTILIZANDO METACLASSIFICADORES"

Copied!
72
0
0

Texto

(1)

UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA

CURSO DE BACHARELADO EM ENGENHARIA DA COMPUTAÇÃO

PEDRO VITOR BAPTISTA DE MOURA

RECONHECIMENTO DE GESTOS REAIS E IMAGINÁRIOS A PARTIR DE SINAIS ELETROENCEFALOGRÁFICOS UTILIZANDO

METACLASSIFICADORES

RECIFE 2019

(2)

UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA

CURSO DE BACHARELADO EM ENGENHARIA DA COMPUTAÇÃO

PEDRO VITOR BAPTISTA DE MOURA

RECONHECIMENTO DE GESTOS REAIS E IMAGINÁRIOS A PARTIR DE SINAIS ELETROENCEFALOGRÁFICOS UTILIZANDO

METACLASSIFICADORES

(3)
(4)

AGRADECIMENTOS

Agradeço a esta universidade pela oportunidade de estudar e me proporcionar um ambiente de crescimento não só intelectual, mas como pessoal.

Ao professor Wellington Pinheiro dos Santos pela atenção, dedicação, além de uma extrema competência no que faz, e como meu orientador. Por ter tido paciência e me guiado por todo o processo, fazendo com que o período não fosse estressante.

Agradeço aos meus amigos Fernando Castelo Branco, Antônio Padilha e Gabriella Caldas por me aguentarem por todos esses anos, e estarem sempre a disposição para qualquer problema.

À Ingrid Nunes, que fez parte da minha vida durante bons e maus momentos, que mesmo após o fim do nosso relacionamento esteve me ajudando a me tornar uma pessoa melhor. Também agradeço por ter me apresentado ao professor Wellington, pois caso contrário este trabalho não teria sido realizado.

Por fim, agradeço a minha família, pois sem o apoio e amor incondicional deles, eu não estaria mais vivo para poder finalizar este capítulo da minha jornada. Em especial minha mãe, por ter me guiado e puxado meu pé quando necessário para eu não perder o foco, além de me ensinar o valor da palavra sacrifício.

(5)

RESUMO

Interfaces cérebro-máquina vêm sendo cada vez mais utilizadas para tratamentos de reabilitação de movimentos perdidos parciais, e totais, como uma alternativa para a fisioterapia. Algoritmos de aprendizagem de máquina são utilizados para garantir uma classificação do sinal de uma forma simples e elegante. Neste trabalho de graduação serão investigados e implementados diferentes formas de classificadores como árvores de decisão, utilizando de comitês, stacking e bagging para reconhecimento de sinais eletroencefalográficos.

Palavras-chave​: Interfaces cérebro-máquina, eletroencefalograma, redes neurais, florestas aleatórias, metaclassificadores.

(6)

Sumário

1. Introdução 9

1.1. Motivação 9

1.2. Estado da Arte 10

1.3 Objetivos 11

2. Conceitos Básicos 12

2.1. Sinal Eletroencefalográfico 12

2.2 Aprendizagem de Máquina 19

3. Metodologia 28

3.1 Banco de Dados 28

3.2 Experimento 30

3.3 Ambiente 45

4. Resultados 46

4.1 Acurácia 46

4.2 Tempo de Execução 50

4.3 Kappa 58

4.4 Raiz-Quadrada do Erro Médio e Número de Falsos Positivos 63

5. Conclusão 68

5.1 Trabalhos Futuros 68

6. Referências Bibliográficas 70

(7)

Lista de Figuras

Figura 2.1: Exemplos de diferentes ritmos de atividade elétrica cerebral. 18 Figura 2.2: EEG de um adulto com olhos abertos e depois fechados. 18 Figura 2.3: Diferentes EEG mostrando anormalidades nas suas formas de ondas em adultos com

diferentes tipos de epilepsia. 19

Figura 2.4: O sistema recomendado pela Federação Internacional das Sociedades EEG. 20

Figura 2.5: Desenho de um perceptron. 21

Figura 2.6: Exemplo de MLP. 22

Figura 2.7: Exemplo de SVM. 23

Figura 2.8: Exemplo de uma árvore de decisão. 25

Figura 2.9: Grafo representando a rede do ladrão 27

Figura 3.1: Representação da saída de um EEG. 30

Figura 3.2: Configuração de uma MLP utilizando o WEKA. 31

Figura 3.3: Planilha resultado da classificação através de um MLP com 50 neurônios. 33

Figura 3.4: Exemplo das configurações de uma SVM no WEKA. 34

Figura 3.5: Saídas geradas por uma SVM Linear no WEKA. 35

Figura 3.6: Configuração de uma Random Tree no WEKA. 36

Figura 3.7: Planilha contendo as saídas da árvore aleatória no WEKA. 37

Figura 3.8: Configurações de uma floresta aleatória no WEKA. 38

Figura 3.9: Planilha com algumas saídas de uma Random Forest com 10 árvores no WEKA. 39 Figura 3.10: Configurações aplicada a uma Rede Bayesiana no WEKA. 40 Figura 3.11: Planilha contendo os resultados de uma Rede Bayesiana no WEKA. 41

Figura 3.12: Configurações do Bagging no WEKA. 42

Figura 3.13: Configurações do Stacking no WEKA. 43

Figura 3.14: Configurações do Voting no WEKA. 44

Figura 3.15: Exemplo do ambiente experimental do WEKA. 45

Figura 4.1: Resultados gráficos da acurácia das SVMs. 47

Figura 4.2: Diagramas de caixa das florestas aleatórias de 10 a 50 árvores. 48 Figura 4.3: Diagrama de caixa das florestas aleatórias de 60 a 100 árvores. 48 Figura 4.4: Representação gráfica das MLPs e da rede bayesiana. 49 Figura 4.5: Resultados da árvore aleatória e dos metaclassificadores aplicados. 50 Figura 4.6: Diagrama de caixas para florestas aleatórias com 10 a 50 árvores. 52 Figura 4.7: Diagrama de caixas para florestas aleatórias com 60 a 100 árvores. 53 Figura 4.8: Diagrama de caixas para SVMs de grau 3 e RBF, rede bayesiana e árvore aleatória. 54 Figura 4.9: Diagrama de caixas das MLPs e SVMs de grau 2 e linear. 56

Figura 4.10: Diagrama de caixas dos metaclassificadores. 57

Figura 4.11: Diagrama de caixas dos kappas das SVMs. 58

Figura 4.12: Diagrama de caixas dos kappas das florestas aleatórias com 10 a 50 árvores. 59 Figura 4.13: Diagrama de caixas dos kappas das florestas aleatórias com 60 a 100 árvores. 59 Figura 4.14: Diagrama de caixas dos kappas das MLPs e rede bayesiana. 60 Figura 4.15: Diagrama de caixas dos kappas dos metaclassificadores e da árvore aleatória. 61

(8)

LISTA DE TABELAS

Tabela 1 - Valores dos RMSEs dos metaclassifcadores e árvore aleatória 62

Tabela 2 - Valores dos RMSEs das MLPs e rede bayesiana 62

Tabela 3 - Valores dos RMSEs das SVMs. 62

Tabela 4 - Valores dos RMSEs das florestas aleatórias de 10 a 50 árvores. 63 Tabela 5 - Valores dos RMSEs das florestas aleatórias de 60 a 100 árvores. 63 Tabela 6 - Número de falsos positivos dos metaclassificadores e árvore aleatória. 64 Tabela 7 - Número de falsos positivos das MLPs e rede bayesiana. 64

Tabela 8 - Número de falsos positivos das SVMs. 64

Tabela 9 - Número de falsos positivos das florestas aleatórias de 10 a 50 árvores. 65 Tabela 10 - Número de falsos positivos das florestas aleatórias de 60 a 100 árvores. 65

(9)

TABELA DE SIGLAS

Sigla Significado Página

ICM Interface cérebro-máquina 11

AM Aprendizagem de Máquina 11

EEG Eletroencefalograma 12

LDA Linear Discriminant Analysis 12

SMU Unidade Motora Singular 15

EMG Eletromiograma 15

ECG Eletrocardiograma 15

EOG Eletrooculograma 16

AI Inteligência Artificial 20

MLP Multilayer Perceptron 20

SVM Máquina de Vetor Suporte 23

RBF Função de Base Radial 24

(10)

1. Introdução

1.1. Motivação

Um problema constante e atual, é a perda de movimentos, tanto parciais, vítimas de derrames por exemplo, ou totais, como pacientes com membros amputados, paraplégicos e tetraplégicos.

Para a maioria dos casos de perda de movimentos, o tratamento recomendado é ainda a fisioterapia, porém por se tratar de um trabalho repetitivo, onde o paciente precisa participar de várias sessões e o resultado vem de forma lenta, causando desestímulo por parte dos pacientes a continuar pois acreditam que não irão progredir [1]. Com o desenvolvimento de tecnologias, surge um novo ramo para reabilitação de pacientes que sofrem com perda de movimentos que são as interfaces cérebro-máquina (ICM).

Nos últimos anos as aplicações voltadas para as interfaces cérebro-máquina se expandiram [2] e dentre as possíveis aplicações, o comando de próteses, de exoesqueletos e de jogos digitais, possuem um papel importante. Para jogos digitais, é uma realidade que irá se expandir em breve com o desenvolvimento de headsets capazes de realizar a leitura, o que muda completamente a visão de lazer de hoje [3]. O comando de próteses e exoesqueletos, permite aos pacientes que sofreram algum tipo de perda de movimento uma alternativa para fisioterapia, com isso eles conseguem obter a reabilitação do movimento perdido sem a exaustão causada pelo tratamento fisioterápico.

Como a proposta de uma ICM é fazer a transmissão dos sinais cerebrais à máquina, o desempenho é diretamente ligado a uma boa captura e reconhecimento da atividade cerebral, especialmente o eletroencefalograma (EEG), onde os eletrodos têm função de captar a atividade e transmitir o sinal. Para garantir um melhor desempenho, algoritmos são usados para interpretação dos sinais capturados, e uma maneira que vem sendo bastante utilizada é aprendizagem de máquina (AM) [4]. A vantagem de utilizar AM é poder utilizar de conjuntos de testes e treinamento para as amostras provenientes do EEG, e utilizar de métodos classificatórios para poder determinar o valor da informação medida.

(11)

O número de algoritmos de AM que podem ser utilizados para o reconhecimento de sinais eletroencefalográficos é cada vez maior, e cada um possui suas particularidades; como tempo de execução, taxa de acerto, por exemplo. No meio de tantas abordagens diferentes, achar um método ideal para aplicar a uma ICM, deve ser prioridade.

1.2. Estado da Arte

Para este problema, muitos autores decidiram propor uma solução ideal para o treinamento e captura do sinal. Os trabalhos têm como foco, apontar melhorias criadas pela proposta dos mesmos.

Sagee (Sagee, e Hema, 2017), comenta da correlação entre as diferentes áreas do cérebro, e leva em consideração essa premissa para realização do seu experimento. Para isso, ele realiza o treinamento e classificação das amostras utilizando rede bayesiana e redes neurais artificiais (RNA).[5] O problema dessa abordagem é o escopo limitado de algoritmos utilizados para classificação dos sinais, outro ponto é que os autores levam em consideração a acurácia como um ponto de melhoria e não analisa outros parâmetros chaves para determinar uma melhor abordagem.

O trabalho de Nicolas-Alonso (Nicolas-Alonso, Corralejo, Gómez-Pilar, Álvarez, e Hornero, 2014), cita a problemática em classificar sinais provenientes de um eletroencefalograma e propõe um ​framework ​de classificação utilizando um modelo de aprendizagem ​ensemble​, modelo este, que garante uma melhoria no ​kappa em 0.04, superando a classificação por análise de discriminantes lineares (LDA).[6] Apesar da melhoria do resultado comparado à outro classificador, por se tratar de uma classificação utilizando metaclassificadores não há uma base de informações grande o suficiente para garantir que é o melhor resultado, além disso, o parâmetro foco pelo trabalho foi o ​kappa​, deixando de lado parâmetros como tempo de execução.

Também proposta por Nicolas-Alonso (Nicolas-Alonso, Corralejo, Gómez-Pilar, Álvarez, e Hornero, 2015), um novo algoritmo chamado de ​stacked regularized linear discriminant analysis ​(SRLDA), que garante uma melhora da classificação por LDA.[7]

Apesar dos bons resultados, este trabalho sofre dos mesmos problemas do anterior.

(12)

A proposta de Rahimi (Rahimi, Zarei, Nazerfard, e Moradi, 2016), utiliza de metaclassificadores para uma melhoria da acurácia [8], e assim como Nicolas-Alonso, o trabalho utiliza de um número limitado de algoritmos para propor uma solução ideal, além de ter como foco apenas o parâmetro da acurácia.

Donovan (Donovan, e Yu, 2018), Wu (Wu, Liu, Chou, et al, 2016) e Herman (Herman, Prasad, e McGinnity, 2017), propuseram diferentes tipos de sistemas ​fuzzy​ para melhoria na classificação dos sinais. Donovan propõe utilizar transformada discreta nas formas de onda capturadas, em conjunto com sistema ​fuzzy​ tipo TSK (i.e.

Tagaki-Sugeno-Kang). [9] A proposta do trabalho é lidar com inconsistências nas

informações medidas e apesar de satisfatórios, o trabalho não prever o melhor método. Já Wu, utiliza de análise de discriminantes lineares múltipla (MLDA) em conjunto com o sistema fuzzy ​que utiliza inteligência de enxame para optimização, com isso obtendo uma melhoria na área sob a curva ROC. [10] Como outros trabalhos citados nesta seção, o método proposto foca na melhoria em apenas um parâmetro, não avaliando outros parâmetros de mesma

importância. Finalmente, o trabalho de Herman propõe um sistema tipo-2 ​fuzzy​, e assim como o modelo de Donovan, garante lidar com inconsistências provenientes do sinal

eletroencefalográfico, além disso, cita uma melhoria quando comparado à utilização de uma LDA. [11]

1.3. Objetivos

O objetivo deste trabalho é fazer o reconhecimento de gestos provenientes de sinais eletroencefalográficos e classificar, utilizando diferentes abordagens, com o propósito de realizar uma comparação estatística e obter uma melhor abordagem. Os métodos escolhidos foram: máquinas de vetor suporte, ​multilayer perceptrons​, florestas aleatórias, árvore aleatória, rede bayesiana, além dos metaclassificadores, ​bagging​, ​stacking​ e ​voting​. 1.3.1. Objetivos Específicos

● Realizar o treinamento da máquina utilizando os algoritmos citados acima.

● Analisar os resultados através de diagramas de caixa e tabelas para quantificar a melhor solução.

(13)

2. Conceitos Básicos

Neste capítulo, são introduzidos alguns termos e conceitos utilizados ao longo deste trabalho. Na Seção 2.1, será descrito o tipo de sinal utilizado, assim como o aparelho utilizado para captura e geração dos dados do banco. A Seção 2.2 traz os conceitos relacionados à aprendizagem de máquina, redes neurais e outros classificadores, além de conceitos relacionados aos metaclassificadores.

2.1. Sinal Eletroencefalográfico

2.1.1 Sinal Biológico

Para entender o que é um sinal eletroencefalográfico e como este pode ser capturado, é necessário uma discussão sobre o que são sinais biológicos. Sinais biológicos, ou biosinais, são uma coleção de registros em função do espaço-tempo de um evento biológico [12] tal como o evento de piscar os olhos. As atividades elétricas, químicas e mecânicas que ocorrem durante esses eventos podem ser medidas e analisadas utilizando uma grande variedade de maneiras dependendo do tipo específico do sinal [12].

Os sinais biológicos podem ser categorizados de 6 formas: Sinais biomagnéticos, sinais biomecânicos, sinais bioquímicos, sinais bioacústicos, sinais bióticos e sinais bioelétricos. [12]

Sinal Biomagnético:​Alguns tipos de órgãos, como coração, cérebro e pulmão, conseguem produzir campos magnéticos de uma magnitude menor que a dos sinais elétricos produzidos pelos mesmos. O biomagnetismo é a medida desses sinais que são geralmente conectados com o campo elétrico de um determinado tecido ou órgão.

Sinal Biomecânico: ​São sinais que são gerados a partir de qualquer função mecânica de um sistema biológico. Movimento, tensão, pressão, força e fluxo

(14)

são exemplos dessas funções. Mudanças na pressão do sangue e da expansão do pulmão no ato de inspirar/expirar podem ser medidos e analisados.

Sinal Bioquímico: ​A informação contida com a mudança na concentração de íons como sódio e cálcio no sangue pode ser encontrada nos sinais bioquímicos. A mudança na pressão parcial do oxigênio no sistema respiratório também podem ser analisados através dos sinais. Em geral, os sinais bioquímicos contém informação sobre mudança na concentração de agentes químicos no corpo, e podem ser medidos e analisados para poder determinar níveis de glicose, lactose, colesterol em um corpo.

Sinal Bioacústico:​Envolve a produção sonora, a dispersão no meio ambiente e a recepção através de um sistema auditivo.

Sinal Biótico:​Sinais gerados a partir da indução de luz nos atributos óticos de um sistema biológico.

Sinal Bioelétrico: ​Mudanças eletroquímicas entre células resultam em produzir sinais bioelétricos. Células nervosas e musculares são tipos de células que produzem este tipo de sinal caso haja um estímulo forte o suficiente para atingir a janela necessária. Potencial de ação representa o fluxo de íons através de uma membrana celular e pode ser transmitido de uma célula para as suas adjacentes através seu axônio. Quando muitas células estão ativas é gerado um campo elétrico que é propagado por todo o tecido biológico.

2.1.2 Sinal Bioelétrico

Como visto na seção anterior, sinal bioelétrico é uma subdivisão dos sinais biológicos e são produzidos como resultado de atividades eletroquímicas em células excitáveis, que são componentes de tecidos nervoso, muscular ou glandular. Essas células produzem um potencial de repouso e, quando estimuladas, um potencial de ação.

No estado de repouso, é mantido uma diferença de potencial elétrico entre -40 e -90mV entre as regiões internas e externas. Para manter esse estado estável iônico entre as partes internas e externas, é necessário um transporte ativo contínuo de íons. Esse mecanismo de transporte pode ser encontrado na membrana.

O outro estado é o ativo, e este tem a habilidade de conduzir um potencial de ação quando propriamente estimulado. Para ser considerado adequado, o estímulo precisa causar

(15)

uma despolarização na membrana celular que seja o suficiente para exceder o seu potencial limite e assim criando o potencial de ação. O potencial viaja a uma velocidade constante por toda a membrana. No estado de repouso a membrana celular está polarizada, por causa do seu potencial de repouso estável, uma diminuição na magnitude da polarização é uma despolarização e um aumento é chamado de hiperpolarização. [13]

Um sinal bioelétrico pode ser dividido em categorias como: Eletromiográfico, eletrocardiográfico, eletrooculográfico e eletroencefalográfico.

Eletromiograma (EMG): ​É o estudo de uma atividade elétrica, seja essa normal ou anormal, do músculo. Exemplos são contrações musculares. Fibras musculares ativas de uma unidade motora singular (SMU) constitui em uma fonte elétrica distribuída localizada em um condutor que possui todas as outras fibras do músculo, sejam essas ativas ou inativas. O campo potencial criado por fibras ativas de um SMU tem uma variação de amplitude entre 20 e 2000​µV. O potencial de ação nervoso, que se propaga sobre o nervo motor e inervações do músculo, causa a ativação de um potencial de ação muscular, este causa a liberação de íons de cálcio na fibra muscular, que acarreta em um aumento do nível o que gera a contração.

Eletrocardiograma (ECG): ​O ECG consiste no monitoramento da atividade elétrica do coração relacionada aos seus movimentos de contração e relaxamento, ou sístole e diástole. O coração é um tipo especial de músculo que possui dois compartimentos superiores chamados de átrios, e dois inferiores chamados de ventrículos, e a comunicação entre eles impulsiona o sangue pelos vasos. O coração compreende diversos tipos diferentes de tecidos, células representativas de cada um desses tecidos diferem anatomicamente em um certo ponto e essas células são todas eletricamente excitáveis. Antes da excitação o potencial de repouso da célula é de aproximadamente -85mV, então vem a fase inicial de rápida despolarização que tem uma taxa de crescimento de 150V/s, seguido então da fase inicial de rápida repolarização, em um ciclo que dura aproximadamente entre 200 e 300ms. A repolarização restaura o potencial da membrana para o seu nível de repouso. A duração da forma de onda do potencial de ação é conhecido como sístole elétrica, enquanto que da fase de repouso é diástole elétrica. Doenças

(16)

cardiovasculares podem causar uma despolarização tardia do miocárdio e isso pode ser observado em um dos segmentos do ECG.

Eletrooculograma (EOG): ​Ao redor da órbita ocular existem pequenos músculos e os movimentos relativos às suas atividades criam um potencial elétrico e este pode ser medido através de pares de eletrodos localizados acima e abaixo a cada olho para movimentos verticais e nas laterais para movimentos horizontais. Os movimentos causam potenciais complementares formando um dipolo elétrico. Diferente dos outros sinais bioelétricos, o EOG necessita de um amplificador para poder ser medido, além disso ele sofre de falta de precisão nas extremidades. Algumas de suas aplicações são reconhecimento de fases do sono, auxilia no reconhecimento das fases através da relação com os movimentos oculares durante o sono, e movimentos para estabilizar a imagem na retina durante uma rotação da cabeça.

Eletroencefalograma (EEG):​O EEG é o registro da atividade elétrica criadas pelas células nervosas do cérebro. Ao posicionar eletrodos no escalpo e amplificando a atividade elétrica é possível medir o sinal. A variação de níveis elétricos são chamadas de ondas cerebrais. Quando em uma área pequena do córtex cerebral tem muita de suas células em atividade, gera o potencial elétrico. Quando os potenciais em muitos neurônios se modificam de forma síncrona, criam os ritmos do sinal. O ritmo alfa é o mais se destaca, foi o primeiro ritmo a ser descrito e tomou esse nome pelo seu observador Berger, geralmente varia entre 8 a 13Hz. Berger também observou ondas de baixa amplitude e tensão, onde as atividades são em torno de 13 e 30Hz, e foram chamadas de ondas Beta. Atividades cerebrais de frequência superiores a 30Hz são chamadas de ondas Gama. Já ondas com frequência de 4 a 8Hz são chamadas de ondas Teta. Atividades entre 0.5 e 4Hz, apesar de raras em adulto, podem ocorrer, e as ondas foram denominadas Delta por Walter e Dovey. Essa mudança de frequência está diretamente relacionado com a atividade cerebral, onde ondas Delta são frequentemente encontradas em pessoas que receberam anestesia cirúrgica, por exemplo. Em adultos saudáveis, mudanças nos sinais eletroencefalográficos ocorrem de maneira regular com os níveis de consciência. Exemplo disso é um adulto com olhos fechados,

(17)

relaxado e acordado, irá apresentar na sua maioria ondas Alfa, ao abrir os olhos, a amplitude do sinal deverá cair, e isso ocorre por causa da estimulação visual. Mais sobre o sinal eletroencefalográfico e como ele pode ser capturado irá ser discutido na próxima seção.

2.1.3 Sinal Eletroencefalográfico

Apesar da atividade elétrica cerebral ser descrita desde o século 19, foi só com Hans Berger que o termo eletroencefalograma foi introduzido. Há três tipos de eletrodos para a captura das variações de potenciais: escapular, cortical e intracranial, porém por ser menos invasivo o mais utilizado é o no escalpo. [13]

O sinal eletroencefalográfico representa a superposição dos campos potenciais produzidos pela a atividade neuronal. Como visto na seção anterior, os registros elétricos da superfície cerebral demonstram certos tipos de padrões de oscilação contínua na atividade elétrica, gerando assim certos ritmos que variam tanto na amplitude, como na frequência. Na Figura 2.1 pode observar que os diferentes padrões das ondas estão diretamente ligados ao estado de relaxamento do ser observado, onde um adulto saudável excitado vai ter uma predominância de ondas Gama, enquanto se estiver relaxado a maioria será Alfa, dormindo o adulto irá apresentar ondas Teta e quando está em sono profundo pode encontrar padrões de ondas Delta. Já na Figura 2.2 há uma comparação entre os padrões de atividades em um adulto saudável, apenas com o ato de abrir e fechar os olhos. A amplitude da onda muda instantaneamente com o fechar dos olhos e isso ocorre pela diminuição da intensidade da luz na retina. O EEG dentre suas aplicações, pode ser usado para diagnosticar certos tipos de enfermidades neurológicas, devido a alterações no comportamento das ondas, como é observado na Figura 2.3, onde ondas podem apresentar uma amplitude maior do que o normal 50µV, como também podem apresentar padrões diferentes no comportamento da frequência.

(18)

Figura 2.1:​ Exemplos de diferentes ritmos de atividade elétrica cerebral.

Fonte: Muse, acessado em Mai 2019, ​https://choosemuse.com/blog/a-deep-dive- into-brainwaves-brainwave-frequencies-explained-2/

Figura 2.2:​ EEG de um adulto com olhos abertos e depois fechados.

Fonte: Thinking Cap, acessado em Mai 2019, ​http://produceconsumerobot.com/thinkingcap/

(19)

Figura 2.3:​ Diferentes EEG mostrando anormalidades nas suas formas de ondas em adultos com diferentes tipos de epilepsia.

Fonte: A. C. Guyton, ​Structure and Function of the Nervous System ​, 2nd ed., Philadelphia:

W.B. Saunders, 1972.

Existem vários procedimentos para adquirir os sinais eletroencefalográficos, porém o mais utilizado é o escapular, pois não exige cirurgia para abrir a cabeça do paciente, apenas o posicionamento dos eletrodos ao redor do escalpo. Na Figura 2.4 demonstra o padrão recomendado para obter uma boa aquisição do EEG, porém o número de eletrodos posicionados ao redor do escalpo, pode variar para mais ou para menos, dependendo do intuito da medição. Mesmo o escapular há diferentes formas de aplicar os eletrodos, onde uma das formas é aplicando eletrodo por eletrodo nos pontos chave para obtenção do sinal, o que requer abrasão da pele para melhor condutividade do sinal, além de um maior tempo para dispor de todos os eletrodos conectados. Outra forma são tocas que já vêm com os eletrodos conectados e não requer tricotomia, que às vezes é necessária para a primeira forma.

(20)

Figura 2.4:​ O sistema recomendado pela Federação Internacional das Sociedades EEG.

Fonte: H. H. Jasper, “The ten-twenty electrode system of the International Federation in Electroencephalography and Clinical Neurophysiology.”​EEG Journal​, 1958, 10 (Appendix), 371-375.

2.2. Aprendizagem de Máquina

Para um melhor entendimento do experimento realizado, esta seção irá explicar sobre os algoritmos de inteligência artificial utilizados, categorizando em classificadores e metaclassificadores.

2.2.1 Multilayer Perceptrons

Para compreender sobre como funciona o modelo ​Multilayer Perceptrons (MLP), é necessário entender antes o que é um perceptron. Do mesmo jeito que o cérebro humano consiste em uma rede de neurônios, uma rede neural consiste em um conjunto de neurônios artificiais , onde um único neurônio é conhecido como Perceptron.

O perceptron é construído em cima de um neurônio não-linear, conhecido como neurônio de McCulloch-Pitts. A Figura 2.5 descreve o modelo de perceptron de Rosenblat, onde um conjunto de entradas combinadas aos seus respectivos pesos são classificadas em 1 ou 0, ou -1 e 1, dependendo da função de ativação que esteja usando. A fórmula 2.1 mostra a

(21)

equação de um perceptron levando em consideração o seu bias, enquanto na equação 2.2 mostra a função de ativação do neurônio.

Figura 2.5:​ Desenho de um perceptron.

Fonte: Towards Data Science, acessado em Mai 2019,

https://towardsdatascience.com/what-the-hell-is-perceptron-626217814f53

(2.1)

(2.2)

O problema desse modelo, é que ele é extremamente simples e com isso é limitado para resolver uma certa classe de problemas menos complexos. Para poder resolver problemas com um alto grau de complexidade, e da mesma forma que um cérebro humano é composto por bilhões de neurônios, existe um modelo que é composto por vários perceptrons, e este modelo é o MLP.

O MLP consiste em um conjunto de unidades sensoriais, essas que são uma camada de entrada, uma ou mais camadas intermediárias e uma camada de saída, cada camada pode

(22)

conter um ou mais perceptrons. O sinal de entrada se propaga pela rede indo em frente, baseando-se nas camadas. Por esse motivo, MLPs são consideradas redes neurais do tipo feedforward​.[14]

Diferente dos Perceptrons, ​Multilayer Perceptrons obtiveram sucesso em solucionar problemas difíceis do mundo real, utilizando de treinamento de maneira supervisionada e aplicando um algoritmo popular conhecido como gradiente descendente (​backpropagation​).

Este algoritmo é composto por duas fases, a primeira fase é a ida, onde o vetor de entrada é aplicado às unidades sensoriais e seu efeito se propaga pelas camadas até gerar o conjunto de saídas correspondente. Na ida os pesos sinápticos das redes são fixos, enquanto que na segunda fase, a volta, os pesos são ajustados de acordo com o erro da camada. O sinal de erro é propagado da camada de saída até a camada de entrada, ajustando os pesos de acordo, por isso é chamado de ​backpropagation​. [14]

A Figura 2.6 mostra um exemplo de MLP, com duas camadas intermediárias, uma com 4 e a outra com 3 neurônios, e a camada de saída com um neurônio.

Figura 2.6:​ Exemplo de MLP.

Fonte: Multilayer perceptron example, acessado Mai 2019, https://github.com/rcassani/mlp-example

(23)

2.2.2 Support Vector Machines

Support vector machines ​(SVM) são um tipo de rede ​feedforward​, proposta por Vapnik (Boser, Guyon, e Vapnik, 1992; Cortes e Vapnik, 1995; Vapnik, 1995, 1998), que assim como MLPs, servem para classificação de padrões e regressão não-linear.

Ao pegar certos tipos de padrões separáveis, por exemplo, a SVM age de forma que ela constrói um hiperplano como uma superfície de decisão de forma que a margem de separação entre positivo e negativo são maximizados. Pode se dizer que SVMs são uma implementação aproximada do método de minimização de risco estrutural. O princípio de indução é baseado no que a taxa de erro de um conjunto de teste é limitado pela taxa de erro de treinamento somado ao termo que depende da dimensão ​Vapnik-Chervonenkis​(VC), onde no caso de padrões separáveis a SVM retorna valor zero para o primeiro termo e minimiza o segundo termo.[14]

Na Figura 2.7 é ilustrada a idéia de um hiperplano ótimo para separar linearmente os padrões. No gráfico os vetores suporte cortam o plano para criar o hiperplano responsável para a separação.

Figura 2.7:​ Exemplo de SVM.

Fonte: S. Haykin, ​Neural Networks: A Comprehensive Foundation ​, 2nd ed., Prince Hall International, 1999.

(24)

SVMs podem ser classificadas de várias maneiras, essas maneiras são: SVMs Lineares, SVMs Polinomiais e SVMs Função de base radial (RBF). No próximo capítulo será detalhado mais a diferença entre os três tipos e a sua aplicação.

2.2.3 Árvores de Decisão

Árvores de decisão utilizam de classificação supervisionada. São construídas a partir da estrutura de dados árvore, onde um nó superior é chamado de raiz, que gera segmentações (i.e. ramos) conectando a nós intermediários, e desce até chegar aos nós sem filhos (i.e. nós que não possuem nenhum ramo de saída) que são as folhas. Um nó representa uma característica, enquanto que um ramo representa uma variedade de valores, essa variedade serve de ponto de partição para um determinado nó.

Uma árvore de decisão é composta de dados pré classificados, a divisão em diferentes classes é decidida pelas características que melhor dividem os dados. Dessa forma, os dados podem ser separados de acordo com as características para os nós filhos, onde o processo será repetido até que todos os nós possuam apenas dados da mesma classe.[15]

Inicialmente o nó raiz conterá todos os dados do conjunto de teste, cada um portando determinadas características, após a primeira separação, cada um dos nós filhos irá conter dados similares, após a n-ésima separação todas as folhas da árvore irão conter apenas elementos da mesma classe, assim como é visto na Figura 2.8.

(25)

Figura 2.8:​ Exemplo de uma árvore de decisão.

Fonte: ​What is a decision tree?​, acessado em Mai 2019,

https://www.displayr.com/how-is-splitting-decided-for-decision-trees/

Árvores de decisão podem ser categorizadas em diversas formas, para este trabalho, apenas duas categorias serão discutidas: ​Random Trees​ e ​Random Forest​.

Random Tree: ​Árvores aleatórias, como o nome diz, são construídas aleatoriamente a partir de um conjunto de possíveis árvores contendo um número ​X de características aleatórias para cada nó. Cada árvore no conjunto de possíveis respostas têm uma chance de ser escolhida igual às outras. Ou seja, possuem uma distribuição uniforme. A combinação de um conjunto grande de árvores aleatórias geralmente garante em modelos com uma alta acurácia.[15]

Random Forest: ​Foi desenvolvida por Leo Breiman [15]. Basicamente ao selecionar de maneira aleatória amostras do conjunto de dados de teste, se cria um grupo de árvores de regressão ou árvores de classificação sem podas.

Características aleatórias são selecionadas no processo indutivo, além disso, predição é feita na grande maioria através de voto para classificação. Floresta aleatória possui uma melhoria de performance comparado a classificadores de

(26)

árvores únicas e a taxa de erro é favorável contra outros algoritmos. Floresta aleatória cresce de tais formas: Primeiro, construindo a base de ​Namostras de maneira aleatória, e caso o tamanho do conjunto de treinamento seja ​Nporém possua uma substituição vinda dos dados originais, a amostra será usada como conjunto de treinamento para crescimento da árvore. Segundo, para ​M variáveis de entrada, uma variável ​m ​é selecionada de tal forma que ​m ​seja muito menor a ​M, m ​variáveis são selecionadas de maneira aleatória de ​M e a melhor divisão é usada para dividir o nó. Terceiro, cada árvore cresce até o maior tamanho possível, nenhuma poda é aplicada.[18]

2.2.4 Redes Bayesianas

As redes bayesianas são modelos que utilizam do Teorema de Bayes (Thomas Bayes, 1763) para solucionar problemas envolvendo conhecimento probabilístico.[16] Redes bayesianas são conhecidas também por gráficos de dependência probabilística, onde os nós representam as variáveis, sejam essas discretas ou contínuas, e as arestas representam as ligações entre os nós. Uma restrição importante para este modelo é que não pode haver ciclos (i.e. grafos acíclicos), pois precisam existir nós pais e nós filhos (i.e. nós que referenciam e nós que são referenciados).[17]

Para entender melhor como funciona, será apresentado o problema da rede do ladrão.

Você possui um novo alarme contra ladrões em casa. Este alarme é muito confiável na detecção de ladrões, entretanto, ele também pode disparar caso ocorra um terremoto. Você tem dois vizinhos, João e Maria, os quais prometeram telefonar-lhe no trabalho caso o alarme dispare. João sempre liga quando ouve o alarme, entretanto, algumas vezes confunde o alarme com o telefone e também liga nestes casos. Maria, por outro lado, gosta de ouvir música alta e às vezes não escuta o alarme. Condicionalmente podemos admitir que caso Maria tenha ligado, o alarme provavelmente tocou e com isso João provavelmente ligou, também caso tenha ladrão a probabilidade de ter tido um terremoto diminui, com isso pode ser criado o grafo visto na Figura 2.9.[19]

(27)

Figura 2.9:​ Grafo representando a rede do ladrão

Com o grafo pode-se aplicar o Teorema de Bayes para resolver uma série de questionamentos, como por exemplo, se João ligou, qual a probabilidade de ter um ladrão na casa ? A fórmula para cálculo das probabilidades é dada pelo produto sobre todos os nós do grafo, da distribuição condicionada às variáveis correspondentes aos pais de cada nó do grafo.

Para ​K​ nós, a probabilidade de junção é:

(2.3) Onde ​pa ​representa o conjunto de nós pais de ​x​.

2.2.5 Metaclassificadores

Os metaclassificadores utilizam da abordagem ​ensemble​para classificação de padrões.

Logo eles agem em cima de modelos de classificadores já existentes para determinar a classe

(28)

do elemento. Para este trabalho foram visto três tipos de metaclassficadores: ​Bagging​, Stacking​, ​Voting.

Bagging: ​O nome ​Bagging ​vem da abreviação para ​Bootstrap AGGregatING (Breinman, 1996), onde é composto por 2 etapas principais ​bootstrap ​e agregação. O algoritmo parte do princípio que por maior que seja o conjunto de treinamento, o número de amostras representativas produzidas será pequeno e não representará o ideal. Para obter o conjunto de amostras de treinamento, Bagging ​aplica ​bootstrapping ​(Efron e Tibshirani, 1993), já para a etapa de agregação das saídas é utilizada votação para classificação e média para regressão. A predição funciona de tal forma: Na classificação, o algoritmo alimenta os classificadores para colecionarem suas saídas e então vota para escolher um vencedor.[20]

Stacking:Stacking ​(Wolpert, 1992, Breinman, 1996b, Smyth and Wolpert, 1998) é um procedimento que combina amostras individuais de aprendizes para formar o aprendiz. A ideia é treinar os aprendizes individuais utilizando o conjunto original de treinamento para então gerar um novo conjunto de dados de treinamento, conhecido como meta-aprendizes. Os aprendizes individuais são gerados a partir de classificadores comuns, como árvores de decisão.

Apesar de poder construir abordagens de ​stacking ​homogêneas, geralmente elas serão heterogêneas.[20]

Voting:Voting ​(i.e. votação) é o método combinacional mais popular para saídas nominais, na sua grande maioria utiliza da abordagem de votação majoritária. A abordagem por majoritariedade é bem simples, dado um conjunto de classificadores, cada um irá votar em uma classe, a classe de saída final será aquela que receber mais da metade dos votos. Caso nenhuma classe receba mais da metade dos votos, o classificador combinado não fará nenhuma predição e uma opção de rejeição será dada. A acurácia desse modo aumenta ou decai de acordo com a probabilidade das amostras.[20]

(29)

3. Metodologia

Para este capítulo, serão abordadas as etapas necessárias para a execução do experimento, assim como toda fundamentação para o entendimento do mesmo. Na primeira parte do capítulo, será descrito o banco de dados utilizado, apresentando os dados coletados, assim como a construção. Na segunda parte haverá o detalhamento dos algoritmos utilizados para este experimento, detalhando a aplicação e as configurações utilizadas. Por fim será apresentado o ambiente utilizado para a execução.

3.1.Banco de Dados

O banco de dados foi construído a partir dos sinais eletroencefalográficos medidos pelo departamento de neurologia da Universidade Federal de Pernambuco (i.e. UFPE). O banco consiste em 300 amostras capturadas através de oito eletrodos em um paciente treinado para a tarefa.

Cada uma das amostras contêm 56 atributos numéricos e um atributo da classe em que ela se enquadra. Para os 56 atributos, pode-se dividir em 7 atributos numéricos para cada wavelet ​(i.e. forma de onda capturada por cada eletrodo), sendo esses o coeficiente da amostra, energia, entropia, a média, o alcance dela, a assimetria, para saber a curvatura, e por fim o desvio padrão. Para o conjunto das classes, a amostra pode se enquadrar em um dos três tipos: direita, esquerda e pé, que representam ações que o paciente pensou para executar.

Os dados foram construídos sequencialmente a partir das instruções passadas pela equipe do departamento, onde o piloto (i.e. paciente treinado para execução da tarefa) recebia comandos em que ele teria que focar, inicialmente foi dada a ele a tarefa de pensar em ir para a direita, depois de 100 amostras a tarefa passou ir para esquerda e, após um outro intervalo de 100 amostras, o comando passado foi pé, comando esse com o significado de parar.

Como a proposta do banco é classificar os gestos reais e imaginários a partir de sinais eletroencefalográficos, a ideia do departamento é enriquecer o banco com amostras gravadas por vários pacientes, alguns saudáveis, e alguns deficientes motores. Neste banco, as amostras foram gravadas a partir de um paciente saudável.

(30)

Um exemplo de sinal eletroencefalográfico pode ser visto na Figura 3.1, onde o sinal é construído a partir de 6 ​wavelets sendo cada uma representada em um canal para melhor visualização.

Figura 3.1:​ Representação da saída de um EEG.

Fonte: Sharmila Ashok,

https://www.researchgate.net/figure/Wavelet-output-for-normal-EEG-signal_fig3_304672140

(31)

3.2.Experimento

Para este experimento, foram utilizados 22 algoritmos para o treinamento e classificação das amostras provenientes do banco de dados. Os algoritmos podem ser classificados em três MLPs, variando o número de neurônios da camada intermediária; quatro tipos de SVMs, uma linear, duas polinomiais (grau 2 e grau 3) e uma RBF; dois tipos de árvores de decisão, random tree e random forest, onde esta última foram configuradas 10 tipos diferentes mudando a quantidade de árvores; por fim uma rede bayesiana também foi aplicada como classificador. Para os três algoritmos restantes, foi utilizada a abordagem ensemble com os metaclassificadores: ​bagging, stacking ​e ​voting​ aplicados a árvore aleatória.

Para todos os algoritmos a classificação foi feita utilizando validação cruzada com 10 folds e foram usadas 30 repetições. Os dados gerados foram exportados para um CSV e posteriormente convertido para XLS para uma melhor visualização da informação.

A seguir, os algoritmos citados acima, têm suas configurações específicas detalhadas, seguindo o mesmo roteiro do capítulo dois.

3.2.1 MLPs

Para a execução das MLPs, foram utilizadas as configurações padrões da ferramenta weka, apenas variando o parâmetro da quantidade de neurônios da camada intermediária. Os valores escolhidos para os outros parâmetros podem ser vistos na Figura 3.2.

(32)

Figura 3.2:​ Configuração de uma MLP utilizando o WEKA.

Fonte: Autor.

O parâmetro ​hiddenLayers ​determina a quantidade de neurônios da camada intermediária, e como mencionado acima, foram escolhidos os valores 50, 100 e 150. Para os outros parâmetros foram usados o da Figura 3.2. GUI False, pois para o propósito do experimento não havia a necessidade de uma interação com o usuário. ​AutoBuild​garante que os nós da camada intermediária sejam adicionados e conectados à rede neural. Para

(33)

treinamento da rede os parâmetros ​batchSize ​e​trainingTime ​são escolhidos como 100 e 500, para determinar o conjunto de dados em treino. ​Debug, decay ​e ​doNotCheckCapabilities foram escolhidos como false pois não há a necessidade de informações adicionais dos classificadores na saída, para não prejudicar a taxa de aprendizado e para poder checar as capacidades dos classificadores antes da classificação (afeta o tempo de execução). A taxa de aprendizado e o ​momentum foram escolhidas como 0.3 e 0.2 respectivamente, o termo momentum​é adicionado como uma constante que determina o efeito das mudanças nos pesos, com isso pode maximizar a taxa de aprendizado sem que haja oscilações e com isso a rede conseguir um aprendizado mais rápido. O parâmetro ​reset ​é verdadeiro para a rede poder recomeçar o treinamento em casos de divergência da resposta, ao ser recomeçado a rede tentará com uma taxa de aprendizado inferior à escolhida. Finalmente, ​validationThreshold é o número máximo de erros aceitáveis antes da terminação da validação de teste.

A Figura 3.3 contém as respostas dadas através da execução do algoritmo para 50 neurônios na camada intermediária.

Figura 3.3:​ Planilha resultado da classificação através de um MLP com 50 neurônios.

Fonte: Autor.

(34)

3.2.2 SVMs

Foram escolhidas quatro tipos de SVMs para este experimento, como citado na introdução deste capítulo. Os parâmetros foram utilizados igual aos padrões, mudando apenas o​kernelType responsável pela equação utilizada, variando em linear, polinomial e radial. E o parâmetro do grau, para quando o tipo da SVM for polinomial, variando de grau 2 e 3.

A Figura 3.4 pode avaliar os parâmetros possíveis de uma SVM, diferente dos outros tipos de algoritmos utilizados no experimento, foi necessário a instalação da biblioteca LibSVM para realização do experimento. [21]

Os parâmetros ​batchSize​, ​debug​, ​doNotCheckCapabilities, numDecimalPlaces, normalize ​ e ​seed​, são os mesmos para uma MLP.

(35)

Figura 3.4:​ Exemplo das configurações de uma SVM no WEKA.

Fonte: Autor.

O tipo da SVM é escolhido entre três opções para classificação e duas para regressão, para o experimento, nos quatro casos foram adotados o tipo C-SVC, que utiliza do custo para fazer a superfície de decisão do hiperplano. O custo é escolhido como 1, um valor menor suaviza a superfície, enquanto um maior permite que o modelo tenha liberdade para

(36)

selecionar mais amostras como vetores suporte. O ​coef0​é o coeficiente utilizado para SVMs polinomiais, onde a equação é dada através da fórmula:

p = (gamma*u*v+coef0)degree (3.1)

O gamma foi escolhido como 1 dividido pelo índice máximo, o valor dele afeta diretamente as SVMs polinomiais e radiais. O épsilon foi escolhido como 0.001 e reflete a tolerância para finalização. O parâmetro de perda e o nu não são utilizados, por fazerem parte de outros tipos de SVMs.

As outras fórmulas utilizadas foram linear:

l = *u v (3.2)

E radial:

r = e(−gamma*|u−v| )2 ​(3.3)

Exemplo de saída de uma SVM Linear pode ser visto na Figura 3.5.

Figura 3.5:​ Saídas geradas por uma SVM Linear no WEKA.

Fonte: Autor.

(37)

3.2.3 Árvores de Decisão

Como vistas no capítulo anterior, foram utilizadas dois modelos de árvores: árvore aleatória, e floresta aleatória. Por serem algoritmos diferentes, a explicação da configuração dos parâmetros será dada para um e depois ao outro.

Figura 3.6:​ Configuração de uma Random Tree no WEKA.

Fonte: Autor.

(38)

Os parâmetros em comum com os outros tipos de classificadores não serão citados.

KValue ​escolhe o número para atributos escolhidos aleatoriamente, para o padrão 0 o valor assumido é o logaritmo na base 2 do número previsto mais um. O ​allowUnclassifiedInstances determina se é pra permitir ou não instâncias que não foram classificadas, nesse caso não permite. Os parâmetros​minNum, maxDepth ​e ​minVarianceProp​são respectivamente: O peso mínimo para as instâncias de uma folha, a profundidade máxima da árvore, onde o valor 0 significa que não tem limite, e, o número mínimo de proporção das variâncias dos dados presentes em um nó para que haja a divisão em árvores filhos. Por fim, ​breakTiesRandomly divide a árvore aleatoriamente caso vários atributos estejam parecendo igualmente bons, para o experimento foi definido como falso.

Exemplo da planilha contendo as respostas é vista na Figura 3.7.

Figura 3.7:​ Planilha contendo as saídas da árvore aleatória no WEKA.

Fonte: Autor.

Foram executadas dez vezes o classificador floresta aleatória, para cada uma das vezes foi alterado o parâmetro ​numIterations ​que define a quantidade de árvores pertencentes à floresta, os números escolhidos foram 10, 20, 30, 40, 50, 60, 70, 80, 90 e 100. Esse parâmetro e outros, podem ser vistos na Figura 3.8.

(39)

Figura 3.8:​ Configurações de uma floresta aleatória no WEKA.

Fonte: Autor.

Em relação aos demais atributos:​calcOutOfBag ​é relacionado ao erro ​out-of-bag​, no experimento ele não será computado, assim como o atributo ​computeAttributeImportance​que utiliza do decremento das impurezas da média para calcular a importância do atributo. O

(40)

atributo​storeOutOfBagPredictions também será falso uma vez que o erro não será calculado,

não será possivel o armazenamento do mesmo, assim como

outputOutOfBagComplexityStatistics ​pois também é relacionado ao erro ​out-of-bag que não será calculado. O parâmetro ​numExecutionSlots ​é utilizado para o método ​ensemble​, logo é indiferente para este caso.

Igualmente aos outros classificadores, a planilha contendo algumas respostas pode ser observada abaixo.

Figura 3.9:​ Planilha com algumas saídas de uma Random Forest com 10 árvores no WEKA.

Fonte: Autor.

3.2.4 Rede Bayesiana

Diferente dos outros classificadores usados neste trabalho, o algoritmo de rede bayesiana foi o único que não teve variações das configurações, sendo aplicado uma única vez utilizando todas as configurações padrões vistas na Figura 3.10.

(41)

Figura 3.10:​ Configurações aplicada a uma Rede Bayesiana no WEKA.

Fonte: Autor

Por ser um classificador que possui uma complexidade menor, o número de parâmetros é inferior aos outros exemplos. Para os três atributos específicos desse classificador tem o ​estimator​, que seleciona o algoritmo de estimação para achar a probabilidade condicional da rede, por padrão é selecionado o estimador simples que possui um alfa responsável para estimar as tabelas de probabilidades e possui um valor padrão de 0.5. O parâmetro ​searchAlgorithm decide o algoritmo de busca das estruturas da rede, que é definido inicialmente como o K2, este algoritmo de busca usa o método Subida de Encosta para otimização dos pontos selecionados. Para finalizar, o ​useADTree​permite a possibilidade de usar árvores de decisão para auxiliar na criação da rede bayesiana, para o experimento é

(42)

escolhido não utilizar, isso faz com que o algoritmo possua um tempo de execução maior, porém evite problemas de memória, o que pode ocorrer caso opte por essa opção.

Figura 3.11:​ Planilha contendo os resultados de uma Rede Bayesiana no WEKA.

Fonte: Autor.

3.2.5 Metaclassificadores

O primeiro metaclassificador a ser analisado é o ​bagging​, onde seus parâmetros podem ser vistos na Figura 3.12.

Os parâmetros, como podem ser observados, são os mesmos que já foram apresentados antes, com exceção de um único: ​classifier​, este atributo é o que determina qual classificador o ​bagging usará o método ​ensemble​. Como padrão o classificador escolhido é uma árvore de decisão REP, entretanto para os três metaclassificadores mostrados nesta seção, será utilizado o classificador árvore aleatória.

(43)

Figura 3.12:​ Configurações do ​Bagging​ no WEKA.

Fonte: Autor.

O segundo metaclassificador a ser estudado é o ​stacking​, que assim como o algoritmo anterior, a maioria dos seus parâmetros já foi descrito neste capítulo. Para os atributos específicos deste algoritmo, o ​classifiers determina de onde é retirada a base de classificadores para escolha do método ​ensemble​. Como a ferramenta utilizada é o WEKA, assim como todos os classificadores fazem parte da ferramenta, essa opção aponta para o endereço da base. O ​numExecutionSlots define o número de ​threads para a construção do conjunto, neste caso é usado uma. O outro parâmetro é o ​metaClassifier​e este é o que decide qual classificador o ​stacking​será aplicado, que por padrão é escolhido o ZeroR, porém como falado anteriormente, neste experimento foi utilizado árvore aleatória.

(44)

A Figura 3.13 mostra os parâmetros comentado acima.

Figura 3.13:​ Configurações do ​Stacking ​no WEKA.

Fonte: Autor.

O terceiro e último metaclassificador analisado neste trabalho foi o ​voting​, que possui dois parâmetros específicos. O primeiro parâmetro é o mesmo do ​stacking​, o ​classifier​, porém este é utilizado para definir especificamente o algoritmo de classificação, e assim como o stacking o padrão é o ZeroR. O segundo parâmetro é o ​combinationRule que como o nome diz, representa a regra de combinação utilizada pelo algoritmo, é definida como a média das probabilidades, mas as outras opções seriam: produto das probabilidades, votação da maioria,

(45)

probabilidade mínima, probabilidade máxima e mediana. Para o experimento foi usada a média das probabilidades.

Estes atributos são vistos na Figura 3.14.

Figura 3.14:​ Configurações do ​Voting​ no WEKA.

Fonte: Autor.

(46)

3.3. Ambiente

O ambiente utilizado na execução dos experimentos foi: Windows 10 (64 bits), um CPU Intel Core I7 Haswell (3.6GHz), 32 GB de Memória RAM, e uma GPU NVIDIA GeForce GTX 980M. Para treinamento e classificação dos dados foi utilizado o ambiente para análise de conhecimento Waikato (WEKA), desenvolvido pela The University of Waikato, Hamilton, Nova Zelândia. O WEKA possui diferentes aplicações, a escolhida para este trabalho foi a parte experimental dela, como pode ser vista na Figura 3.15.

Figura 3.15:​ Exemplo do ambiente experimental do WEKA.

Fonte: Autor.

Com os dados exportados em CSVs e convertidos, foi usada a ferramenta SciDavis para geração dos diagramas de caixas para análise estatística, que serão discutidos no Capítulo 4.

(47)

4 Resultados

Para este capítulo, serão discutidos os resultados obtidos no experimento. Inicialmente serão discutidos os resultados dos algoritmos em termo da acurácia, próxima etapa será a análise dos tempos de treino e por último uma análise gráfica do kappa. A última seção será reservada para discutir outros parâmetros nas tabelas.

As três primeiras seções possui os gráficos divididos em cinco subconjuntos, e a discussão será feita primeiro nos algoritmos do subconjunto para então a conclusão de uma possível escolha melhor.

4.1 Acurácia

A Figura 4.1 contém os diagramas de caixa correspondentes às 300 amostras analisadas pelos algoritmos das SVMs. Os resultados mostram que apesar das SVMs de grau 3 e RBF possuírem uma menor variância, uma vez que suas caixas estão mais achatadas, elas apresentam valores baixos, em torno de 33% e 34% de acerto, logo não apresentaram bons resultados qualitativos. O limite superior das duas SVMs citadas estão alinhados com o primeiro quartil da SVM de grau 2, essa que tem a caixa com o primeiro quartil em 34% e o terceiro quartil em 50% com a mediana em 43%, logo essa apresenta resultados com uma melhor acurácia que as SVMs anteriores porém por ter a caixa mais larga, a variabilidade dos valores é maior, além disso como a mediana é superior à média, a maioria das amostras terão a acurácia entre o primeiro quartil e a mediana. Por último a SVM linear, esta possui a caixa com a área interquartil um pouco menor que a da SVM grau 2, onde o primeiro e terceiro quartil possuem os valores 46% e 60% respectivamente, logo apresenta uma variação de valores menor que a grau 2 porém maior que a RBF e grau 3, contudo compensa possuindo os valores da acurácia melhores, além disso a mediana se encontra nos 53% mostrando uma distribuição dos valores amostrados equivalentemente. Com a análise pôde afirmar que a SVM linear é a que apresenta os melhores resultados em termo de precisão.

A Figura 4.2 e a Figura 4.3 contêm os resultados da acurácia medidas pelos classificadores floresta aleatória com 10 a 50 árvores e 60 a 100 respectivamente. Diferente da análise feita nos gráficos das SVMs as florestas aleatórias possuem caixas com a mesma área interquartil, logo uma análise do primeiro e terceiro quartil e a mediana não dariam para

(48)

classificar os melhores resultados. Porém, estes algoritmos apresentam outros valores diferentes nas caixas. Primeiro são os limites inferiores, segundo a média das amostras e por último os ​outliers​. As médias variam de 98% a 98.8%, onde a floresta com 10 árvores apresenta a menor média e a com 100 árvores a maior, vale ressaltar que as médias atingiram 98.8% de acurácia a partir de 80 árvores, enquanto de 30 a 70 árvores a média foi de 98.7%, e 20 árvores apresentou uma média de 98.6%. Analisando os limites inferiores, diferente das médias eles não apresentaram melhorias com o aumento do número de árvores da floresta, 50, 70, 90 e 100 apresentaram valores menores e o 90 árvores apresentou o melhor resultado com o limite em 96.5% de acurácia. E por fim, os ​outliers foram ou 89.6% ou 86.6%. Com as informações, apesar de todos os desempenhos das florestas aleatórias tenham sido bons, 100 árvores apresentou um resultado estatístico geral melhor, pois possui uma maior média, logo possui mais valores próximos ao limite superior, possui um limite inferior pequeno, o que quer dizer que a dispersão não é muito grande e por fim seu ​outlier ​não apresentou uma discrepância muito grande com os resultados avaliados.

Figura 4.1: ​Resultados gráficos da acurácia das SVMs.

Fonte: Autor.

(49)

Figura 4.2:​ Diagramas de caixa das florestas aleatórias de 10 a 50 árvores.

Fonte: Autor.

Figura 4.3:​ Diagrama de caixa das florestas aleatórias de 60 a 100 árvores.

Fonte: Autor.

A Figura 4.4 mostra a comparação das acurácias entre as MLPs e a rede bayesiana. A rede bayesiana apresenta os piores resultados deste grupo, a caixa além de possuir uma área

(50)

interquartil maior que as das MLPs (terceiro quartil em 93.3% e primeiro quartil em 86.6%), possui a distribuição dos resultados com valores menores de acurácia, onde o limite superior é 96.7%. A rede bayesiana contudo, apresenta bons resultados se comparada às SVMs, porém inferior se comparada com as florestas aleatórias. A média da rede é de 90.7% enquanto a mediana é 90% com isso a distribuição será mais próxima ao limite superior, apresentando mais resultados com uma melhor acurácia. As três MLPs entretanto, apresentaram resultados muito superiores, mesmo comparado aos classificadores já discutidos nesta seção, pois as caixas apresentaram uma variabilidade pequena por serem achatadas, além de apresentarem altos valores de acurácia, além de médias em torno de 99%. Em geral não é possível determinar qual das MLPs possui o melhor resultado avaliando apenas a acurácia, pois as três apresentaram se não iguais, com uma variação insignificante.

Figura 4.4:​ Representação gráfica das MLPs e da rede bayesiana.

Fonte: Autor.

Por fim, temos o grupo 5 que constitui no classificador árvore aleatória e nos metaclassifcadores ​bagging, stacking ​e ​voting​, aplicados na árvore. A Figura 4.5 traz o diagrama de caixa da acurácia medida pelos mesmos.

Dos quatro, ​stacking apresentou os piores resultados, sendo inferior ao classificador puro, apesar de possuir a média superior a mediana. Já o ​votingnão apresentou uma melhora

(51)

significativa se comparado a árvore aleatória, ambos tiveram a média em 95%, mediana em 96.8% além da mesma área interquartil. Contudo o ​bagging ​dentre os quatro, possui os melhores resultados de acurácia. A caixa mostrou uma menor variabilidade, além de possuir uma média de 98.5% e mesmo o ​outlier​inferior apresentou uma porcentagem alta de acerto, sendo 89.7%.

Figura 4.5:​ Resultados da árvore aleatória e dos metaclassificadores aplicados.

Fonte: Autor.

Com a análise de todos os diagramas de caixa, pode se afirmar que as MLPs possuem as melhores taxas de acerto seguidas pelo ​bagging​, florestas aleatórias de 10 a 100, árvore aleatória e ​voting, stacking​, rede bayesiana e por fim as SVMs.

4.2 Tempo de Execução

O mesmo procedimento realizado na seção anterior é repetido para esta seção, onde todos os algoritmos utilizados são divididos em cinco grupos para a impressão dos diagramas de caixas, porém desta vez a variável a ser analisada é o tempo de execução.

(52)

A escala do tempo de execução é em milissegundos para todos os gráficos desta seção.

Ao contrário da seção anterior onde quanto maiores os valores, melhor o resultado, pois implica numa melhor taxa de acerto. Para esta variável, quanto menores os valores, melhor o resultado, uma vez que implica num algoritmo mais rápido.

A Figura 4.6 e 4.7 mostra os diagramas das florestas aleatórias de 10 a 100 árvores, assim como na seção anterior. A primeira diferença na Figura 4.6 é que a média dos diagramas cresce de maneira linear ao aumentar o número de árvores. Para 10 árvores a média é 4.8 ms, para 20 árvores a média aumenta para 9.5 ms, para 30, o valor vai para 13.2 ms, depois 18.6 ms e 22.9 ms para 40 e 50 árvores respectivamente. Outra diferença é o formato das caixas; para os diagramas com 10 e 20 árvores os limites superior e inferior são iguais ao terceiro e primeiro quartil respectivamente e com a mesma área interquartil, ao subir o número para 30 árvores a caixa é achatada no valor de 15.6 ms, o mesmo valor do limite superior para 10 e 20 árvores, e apenas possui o limite inferior em 0 ms. Para 40 este formato é invertido, a caixa continua com a área interquartil 0 pois possui os valores do primeiro e terceiro quartil iguais em 15.6 ms, mas ao invés de possui um limite inferior diferente, esta possui um limite superior em 31.2 ms, valor este do terceiro quartil para 50 árvores que volta a repetir o formato de 10 e 20 árvores. Na Figura 4.7 os valores da média continuam crescendo linearmente de acordo com o aumento da quantidade de árvores da floresta, variando em 28.2 ms, 31.8 ms, 36.5 ms, 41.4 ms, 46.2 ms para 60 a 100 árvores. O formato das caixas também seguem o mesmo padrão da Fig 4.6, onde para 60 árvores a área interquartil é 0 com os valores do primeiro e terceiro quartil em 31.2 ms e o limite inferior em 15.6 ms, para 70 a área permanece 0 e possui um ​outlier​inferior com o valor de 15.6 ms e um superior com o valor de 46.9 ms, valor este que é o do terceiro quartil para 80 e 90 árvores.

Em geral, apesar de possuir uma variabilidade maior do que o diagrama de uma floresta com 30 árvores, por exemplo, o classificador de uma floresta com 10 árvores apresenta o melhor resultado, pois uma vez que possui uma menor média, o algoritmo irá executar em um menor tempo.

(53)

Figura 4.6​: Diagrama de caixas para florestas aleatórias com 10 a 50 árvores.

Fonte: Autor.

(54)

Figura 4.7:​ Diagrama de caixas para florestas aleatórias com 60 a 100 árvores.

Fonte: Autor.

A Figura 4.8 apresenta os resultados dos classificadores: árvore aleatória, rede bayesiana, e SVMs de grau 3 e RBF. O pior algoritmo neste quesito, fica a SVM RBF que apresenta o primeiro e terceiro quartil com o valor de 46.9 ms e limite superior em 62.5 ms e inferior em 31.3 ms, com uma média de 48.5 ms, resultados estes superiores aos dos demais.

Os classificadores árvore aleatória e SVM grau 3 possuem a mesma área interquartil com o primeiro e terceiro quartil com valor 0 ms, porém SVM grau 3 possui um limite superior de valor 15.8 ms e um ​outlier ​31.5 ms, além da média 1.5 ms, enquanto árvore aleatória possui o ​outlier em 15.8 ms e média 0.8 ms. Por fim a rede bayesiana mostra uma variabilidade maior, pois destes algoritmos é a única que não apresenta uma área interquartil igual a zero. O primeiro quartil possui valor 0 ms e o terceiro 15.8 ms, com uma média 3.9

Referências

Documentos relacionados

A motivação para o desenvolvimento deste trabalho, referente à exposição ocupacional do frentista ao benzeno, decorreu da percepção de que os postos de

Desta forma, este estudo tem como objetivo relatar a experiência vivenciada, por acadêmicas do 5º período do Curso de Enfermagem da Universidade Federal de

(grifos nossos). b) Em observância ao princípio da impessoalidade, a Administração não pode atuar com vistas a prejudicar ou beneficiar pessoas determinadas, vez que é

nesta nossa modesta obra O sonho e os sonhos analisa- mos o sono e sua importância para o corpo e sobretudo para a alma que, nas horas de repouso da matéria, liberta-se parcialmente

Este trabalho buscou, através de pesquisa de campo, estudar o efeito de diferentes alternativas de adubações de cobertura, quanto ao tipo de adubo e época de

E ele funciona como um elo entre o time e os torcedores, com calçada da fama, uma série de brincadeiras para crianças e até área para pegar autógrafos dos jogadores.. O local

3.3 o Município tem caminhão da coleta seletiva, sendo orientado a providenciar a contratação direta da associação para o recolhimento dos resíduos recicláveis,

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam