Você está na página 1de 19

CLASSIFICAÇÃO DE ARRITMIAS CARDÍACAS A PARTIR DAANÁLISE DE

SINAIS DE ELETROCARDIOGRAMA

Dayana Silva dos Santos Vieira

Relatório proposto na disciplina Deep Learning COC


891 em Engenharia Biomédica para a obtenção da nota
parcial do segundo período do ano letivo de 2021.

Professor: Alexandre Evsukoff

Rio de Janeiro

2021
1. INTRODUÇÃO
A doença cardiovascular (DCV) é o maior desafio global para a saúde, com alta
mortalidade e morbidade. De acordo com as Estimativas Globais de Saúde da OMS para 2015,
as DCV são causa de aproximadamente 17.689 mil mortes, com taxa bruta de mortalidade de
240,9 mortes por cem mil habitantes. Em 2030, uma estimativa conservadora de mortes devido
a doenças cardiovasculares deve ser superior a 23,3 milhões por ano.
O eletrocardiograma (ECG) permite a representação da atividade elétrica do coração,
mostrando a contração e o relaxamento regulares do músculo cardíaco. A análise da forma de
onda do ECG é utilizada para diagnosticar diversas anormalidades cardíacas. Algumas técnicas
são usadas no processamento de sinal de ECG, que consistem na atenuação de ruído, correção
de linha de base, extração de características e a detecção de arritmia. A avaliação
eletrocardiográfica (ECG) dos ritmos cardíacos é amplamente utilizada e uma importante
modalidade não invasiva de diagnóstico e monitoramento. A interpretação do ECG é uma etapa
crucial no diagnóstico dos pacientes, principalmente em caso de evento agudo. A interpretação
incorreta do achado de ECG pode não apenas resultar em triagem inadequada do paciente, mas
também perder a oportunidade de detectar a candidatura do paciente para reperfusão aguda,
salvamento de vidas, terapias. Alguns estudos recentes relataram habilidades de interpretação
de ECG abaixo do ideal dos prestadores de cuidados de saúde de emergência com baixa
precisão na maioria dos diagnósticos críticos baseados em ECG. Portanto, um sistema de
classificações de ECG automatizado confiável será útil para marginalizar o fardo da má
interpretação do ECG.
Métodos de classificação automática de batimentos cardíacos, normais e anormais, são
de grande importância, uma vez que os resultados da classificação podem fornecer informações
valiosas para o diagnóstico de risco de arritmias ou morte súbita. Várias tentativas foram feitas
no passado para automatizar a detecção de arritmia de ECG usando algoritmos computacionais
avançados, como mapas de auto-organização (SOM), Perceptron multicamadas (MLP),
máquinas de vetor de suporte (SVM), sistemas fuzzy, modelos de Markov, etc.
Sendo assim, este trabalho propõe a classificação de batimentos cardíacos em
batimento normal, batimento supraventricular prematuro, contração ventricular prematura,
fusão de ventrículo e batimento inclassificável, utilizando inicialmente uma modelagem de rede
cnn e depois uma MLP e verificando o desempenho de ambas.

1.1.Eletrocardiografia e ECG
O reconhecimento precoce de uma doença cardíaca é muito importante, uma vez que
a doença cardíaca pode levar a morte instantânea. O eletrocardiograma (ECG) é um teste
detalhado e não invasivo contendo informações poderosas úteis para encontrar tratamentos para
doenças cardíacas. O eletrocardiografia é um método de monitorar as diferenças de potencial
na pele humana que são causada pela despolarização e repolarização dos músculos do coração.
Geralmente, dados de ECG é adquirido por meio de terminais. Os cabos são usados para medir
a atividade elétrica em corpo humano. O pacote de informações resultante é chamado de ECG.
O registro de ECG é uma forma de onda composta por muitos picos e ondas diferentes. Um
registro de ECG normal contém uma onda P, seção QRS e uma onda T seguido por uma
sequência cardíaca. A figura mostra um ciclo cardíaco normal.

Figura 1 - Onda ECG

Um complexo QRS é o foco dos registros de ECG e qualquer atividade cardíaca


anormal pode ser notado pela observação da estrutura do segmento de ECG contendo o
complexo QRS. Sequência irregular de QRS e suas ondas circundantes refletem a presença de
atividade cardíaca denominada arritmias.
Algumas das arritmias comuns que podem ser encontradas em alguns registros de ECG
junto com (a) Ritmo sinusal normal (NSR) são (b) Fibrilação atrial (AF), (c) Fibrilação
ventricular (VF), (d) Contrações ventriculares prematuras (PVCs), (e) Bloqueio de ramo direito
(RBBB), (f) Bloqueio de ramo esquerdo (LBBB), (g) contrações atriais prematuras (PAC) e (h)
Taquicardia ventricular (VT), como mostrado na figura abaixo.
Figura 2 - Anormalidades no ECG

1.2.Pré-processamento de dados

Normalmente, um sinal de ECG adquirido contém muitas informações extras na forma


de ruído. Este ruído pode ser de diferentes tipos. A figura abaixo mostra a presença de diferentes
sinais de ruído em uma faixa de dados de ECG. Esta informação extra no sinal de ECG é
geralmente inútil durante a interpretação dos ciclos cardíacos. O pré-processamento adequado
dos sinais de ECG é necessário antes de prosseguir para os exames mais detalhados das
estruturas das ondas. Filtros adaptativos e de média são alguns dos exemplos de métodos de
pré-processamento usados para a remoção de ruído de uma faixa de dados de ECG.
Figura 3 - Ruídos no ECG

1.3.Classificação

Após o pré-processamento, os dados do ECG podem ser examinados para observar as


atividades cardíacas normais e irregulares. Para detectar automaticamente a arritmia com
precisão, diferentes métodos estão sendo usados nas últimas quatro décadas. Esses métodos
podem ser categorizados como técnicas de aprendizado supervisionado e não supervisionado.
Algumas dessas técnicas são transformada wavelet discreta, modelo de aprendizado de máquina
, correlação espectral e máquinas de vetor de suporte, abordagem de parametrização, Empirical
Mode Decomposition, Spectrogram and Convolutional Neural Network (CNN) e 1- D CNN.

É perceptível que a maioria das abordagens para detecção de arritmia utiliza


metodologias de inclinação de máquina. Os algoritmos de aprendizado de máquina são
categorizados principalmente como métodos de aprendizado supervisionado e não
supervisionado. Os métodos de aprendizado de máquina exigem a extração de recursos dos
dados para fazer a classificação e detecção adequadas. Uma abordagem modificada de
aprendizado de máquina é o aprendizado profundo, em que a etapa intermediária da extração
de recursos assistida por humanos é ignorada. Em vez disso, o algoritmo de inclinação aprende
os recursos automaticamente a partir dos dados originais. A figura a seguir apresenta a diferença
entre o aprendizado de máquina e as metodologias de aprendizado profundo.
Figura 4 - Machine Learning vs Deep Learning

1.4.Rede Neural

Uma rede neural simples usada para treinar dados de entrada para classificar os valores
de saída é apresentada na figura a seguir. As redes neurais têm três tipos de camadas. Uma
camada de entrada que recebe os valores de entrada, camadas ocultas que aplicam os pesos das
camadas aos dados de entrada usando uma função de ativação para decidir sobre os valores de
saída e uma camada de saída que gera os resultados.

Aqui, I1, I2, I3 são os valores de entrada de um conjunto de dados. W11, W12… .W33,
Wxy são os pesos (valores de magnitude) das conexões entre os nós das camadas ef representa
as funções de ativação que geram os resultados na camada oculta (aqui H1, H2) e na camada
de saída (aqui R) usando um critério. Os pesos determinam a força de uma ligação entre os nós.
Se os pesos forem maiores do que a entrada conectada a ela, haverá um impacto maior na saída.
Um valor inferior mais próximo de zero significa que a entrada não terá muito efeito nos nós
de saída; b representa o viés na rede para um neurônio. Bias é um valor constante que é usado
para ajustar a saída para a soma ponderada das entradas. Quando uma saída é gerada na direção
do movimento para frente, geralmente falta precisão na primeira iteração. A resposta de saída
é então propagada de volta para ajustar os pesos a fim de melhorar o processo de aprendizado,
obtendo a saída correta nas próximas iterações diretas. Na prática, as propriedades dos dados
de treinamento, como valores e tipos, podem variar em um conjunto de dados. Portanto, a
entrada para redes neurais é geralmente normalizada em uma escala fixa na camada de entrada.
Por exemplo, Idade e altura em um conjunto de dados de população estão originalmente em
duas escalas diferentes devido à sua distribuição de valor natural, mas após a normalização em
uma escala padrão entre 0 e 1, os valores sempre estarão entre 0 e 1. Os recursos de entrada
normalizados aumentam a taxa de aprendizagem da rede neural.

Figura 5 - Estrutura da rede neural

1.5.Redes neurais de convolução

Este trabalho baseia-se na classificação de várias categorias de dados por meio de


treinamento e aprendizagem de redes neurais. Modelos de classificação baseados em CNN
foram usados no estudo atual para fins de classificação. Em geral, as CNNs consistem em
estágios de convolução e agrupamento que ajudam a obter os recursos significativos dos mapas
de imagem. Um modelo CNN usa a entrada na forma de um tensor tridimensional, ou seja, uma
imagem com suas informações de largura e altura e um valor RGB (canais vermelho, verde e
azul). Essa imagem de entrada prossegue então com os estágios de processamento adicional na
rede neural. Essas etapas são chamadas de camadas da rede. O processo de convolução começa
colocando um kernel (geralmente uma matriz 2 x 2 ou 3 x 3 como filtro) sobre uma região no
mapa de imagem. Normalmente, essa região é o primeiro pixel na parte superior esquerda da
matriz da imagem que se ajusta ao tamanho do kernel. A multiplicação de pares de valores de
imagem e pixel do kernel é somada para um valor final no mapa de recursos (uma versão
modificada da matriz de imagem). A Figura a seguir mostra o cálculo do valor do primeiro pixel
no mapa de feições da imagem de entrada de 6 x 6 e um tamanho de kernel de 3 x 3. Da mesma
forma, todos os valores são calculados como o novo conjunto de valores de feições.

Figura 6 - Identificação de características na CNN

Este kernel é movido nos dados da imagem da esquerda para a direita em incrementos
de etapa de 1. Esses incrementos de etapa são chamados de passadas. O valor da passada para
esta convolução é 1. A convolução F de um kernel e dados de imagem é representada pela
seguinte equação (Skalski, P., 2019).

𝐹(𝑖, 𝑗) = ∑𝑚 ∑𝑛 𝐾(𝑚, 𝑛) ⋅ 𝐼(𝑖 − 𝑚, 𝑗 − 𝑛)

Onde I é a imagem de entrada com dimensões iej, K é o kernel de tamanho m x n e F


(i, j) é a matriz de convolução de saída. Na prática, a maioria dos modelos CNN contém funções
de ativação, camadas de pooling, camadas totalmente conectadas, dropout, nivelamento e
camadas de saída.

1.6.Função de ativação

Cada camada de convolução no modelo CNN é geralmente seguida por uma função
de ativação. Uma escolha comum para a maioria dos modelos CNN é a função ReLu (Unidade
Linear Retificada). ReLu define os valores negativos da matriz de recursos de entrada como
zero. CNNs são usados principalmente para processamento de informações do mundo real e,
portanto, a não linearidade no modelo de aprendizagem é necessária, pois a própria convolução
está no grupo de operações lineares Matematicamente ReLu é definido como

𝑓(𝑥) = 𝑚𝑎𝑥 (0, 𝑥)


A equação acima calcula ReLu, f (x) para gerar valores de saída zero para todas as
entradas negativas de entrada x e identidade caso contrário. A figura a seguir mostra a função
de ativação ReLu.

Figura 7 - Função de Ativação Relu

1.7.Camadas de agrupamento

Adicionar camadas de agrupamento em CNN após camadas de convolução diminui as


dimensões espaciais dos mapas de recursos, ou seja, a matriz resultante tem menos dimensões
com recursos mais significativos. A Figura a seguir mostra como uma matriz 4 x 4 é convertida
em um conjunto de valores de recursos de 2 x 2. As camadas de pooling ajudam a reduzir o
número de parâmetros na rede e, portanto, ajudam a evitar problemas de superajuste. O
overfitting em modelos baseados em CNN ocorre quando a rede neural é treinada em detalhes
originais, bem como em informações de ruído, levando a um efeito negativo na classificação.
Mesmo que as camadas de pool reduzam o tamanho dos mapas de características, elas podem
manter a maior parte das informações de significação para processamento posterior de dados
na rede. Para a tese atual, trabalho Max pooling a operação é selecionada para etapas de
agrupamento, onde uma janela 2 x 2 é usada de maneira semelhante, conforme mostrado na
figura abaixo. Aqui, o máximo de cada conjunto é selecionado como uma entrada de recurso
para o conjunto de valores de recurso.
Figura 8 - Camada de agrupamento

1.8.Camada totalmente conectada e ativação do Softmax

O mapa de recursos com as informações mais significativas extraídas das camadas de


convolução e agrupamento são usados em camadas totalmente conectadas, onde cada nó
(neurônios na rede neural) nas camadas adjacentes são conectados aos neurônios nas camadas
seguintes. As camadas totalmente conectadas às vezes são chamadas de camadas densas.
Camadas totalmente conectadas usam os recursos extraídos de camadas anteriores para realizar
a classificação inicial nos dados de entrada. A figura abaixo mostra as camadas totalmente
conectadas e softmax na arquitetura do CNN. A camada de ativação Softmax é usada para
finalmente classificar as classes de dados de treinamento.

1.9.Camadas de exclusão e nivelamento

Camadas de exclusão são usadas para liberar algumas informações em alguns dos
neurônios na rede para evitar problemas de super ajuste, enquanto camadas planas são usadas
antes da camada de saída para converter a saída multidimensional em um vetor. Esta etapa é
necessária para obter a forma de saída de acordo com o número de turmas treinadas e previstas.
Por exemplo, se estiver treinando em uma CNN, os dados de entrada consistem em duas
categorias, então a camada plana é necessária para reduzir o resultado da camada totalmente

Figura 9 - Camadas da CNN


conectada a um vetor de 2 valores. Um para cada categoria. Da mesma forma, um vetor maior
é gerado para classificação de informações mais categóricas na camada de saída.

1.10. Backpropagation e gradiente descedente

Em princípio, um modelo CNN pega dados de imagem e os transporta através de


etapas de propagação direta de camadas de convolução para camadas totalmente conectadas.
Os valores de saída são calculados para as classes de dados de treinamento. Durante a primeira
iteração, os pesos são dados aleatoriamente, portanto os valores de saída também são aleatórios.
Nesse estágio, o erro é calculado e retropropagado calculando seus gradientes usando pesos em
camadas anteriores da rede CNN. Os parâmetros dos modelos CNN são então atualizados por
gradiente descendente. O gradiente descendente é um método de minimizar alguns valores de
função movendo-se em direção ao valor mínimo local.

Durante o processo de classificação, as previsões são feitas quando os dados de


entrada são treinados via rede neural. A precisão de uma previsão de rede pode ser
representada por pe uma precisão desejada por y. Assim, para Sset de predições, se o valor de
rede de predição for p e os valores de destino desejados forem, então o erro pode ser
calculado como

𝐸 = 2 ∑s(𝑦 − 𝑝)

Usando o backpropagation, esses valores de erro são reduzidos alterando os pesos de


forma que os valores p e y fiquem próximos uns dos outros. Na retropropagação, isso é obtido
alterando os valores dos pesos em relação aos métodos de descida do gradiente. Usando esses
métodos, as derivadas parciais dos valores de peso (W) são calculadas em relação aos valores
de erro (E) como segue.

𝜕𝐸
∂Wx, y

2. DADOS
Neste estudo foi utilizado o dataset disponibilizado pela physionet,o banco de dados
de arritmia do MIT-BIH contém 48 trechos de meia hora de registros de ECG ambulatorial de
dois canais, obtidos de 47 indivíduos estudados pelo Laboratório de arritmia BIH entre 1975 e
1979. Vinte e três registros foram escolhidos aleatoriamente de um conjunto de 4000 24-
registros de ECG ambulatorial de uma hora coletados de uma população mista de pacientes
internados (cerca de 60%) e ambulatoriais (cerca de 40%) no Hospital Beth Israel de Boston;
as 25 gravações restantes foram selecionadas do mesmo conjunto para incluir arritmias menos
comuns, mas clinicamente significativas, que não estariam bem representadas em uma pequena
amostra aleatória. As gravações foram digitalizadas em 360 amostras por segundo por canal
com resolução de 11 bits em uma faixa de 10 mV. No total, o banco de dados disponibiliza 5
categorias de anoralidades no ECG ('N': 0, 'S': 1, 'V': 2, 'F': 3, 'Q': 4), sendo estas batimento
normal, batimento supraventricular prematuro, contração ventricular prematura, fusão de
ventrículo, batimento inclassificável.
O banco de dados foi dividido em treinamento, validação e teste. Para o treinamento,
utilizou-se 70% dos dados (76613 batimentos) e os 30% restantes (32834 batimentos) foram
utilizados para a validação e o teste.

3. METODOLOGIA

Neste estudo, as redes CNNs foram usadas para classificar fragmentos de sinal de ECG
de longa duração (10 s). O sistema classificador projetado tem uma estrutura ponta a ponta
completa, sem nenhum recurso de extração dos sinais nem seleção de recursos em qualquer
estágio. Para este efeito, foi projetada uma estrutura de rede inicialmente de 9 camadas,
incluindo camadas CNN padrão. A entrada deste estrutura de rede é composta por 109446
amostras de sinais de ECG. Na saída do classificador será realizada a previsão das classes às
quais pertencem os sinais, sendo que foram consideradas 5 categorias ('N': 0, 'S': 1, 'V': 2, 'F':
3, 'Q': 4), sendo estas batimento normal, batimento supraventricular prematuro, contração
ventricular prematura, fusão de ventrículo, batimento inclassificável. Diferente das técnicas
padrão, nenhuma detecção e segmentação do QRS foi realizada nos sinais de ECG.

Desta forma, podemos resumir que as principais características desta metodologia


foram:

- Análise de fragmentos de 10 s de sinal de ECG (em oposição a complexos QRS


únicos);

- Sem filtragem de sinal;

- Sem detecção e segmentação de complexos QRS;

- Estrutura ponta a ponta na qual as etapas de classificação e extração de


características e seleção foram combinadas;
3.1. Modelo de Classificação 1D-CNN proposto

Uma rede convolucional de 16 camadas de profundidade foi projetada para a


classificação de sinais de ECG de acordo com a arritmia cardíaca. Este modelo de rede profunda
fornece classificação automática de fragmentos de entrada por meio de uma estrutura ponta a
ponta, sem a necessidade de qualquer recurso de extração ou seleção. A estrutura do modelo de
rede profunda consiste das camadas clássicas da CNN. Na camada de convolução 1D, mapas
de recursos que são representações de fragmentos de ECG estão sujeitos a convolução com
pesos de vários tamanhos. O modelo 1D-CNN de 9 camadas de profundidade projetado no
estudo é mostrado na figura. Neste primeiro modelo foi utilizado um otimizador Adam, 10
épocas e batch_size = 10.

Figura 10 - Estrutura básica da rede CNN implementada

Na primeira camada do modelo, a convolução 1D é realizada com 32 vetores de peso


no sinais de entrada de ECG. Na segunda e na terceira camadas, a convolução é repetida com
64 e 128 vetores respectivamente. Na camada 1D max pooling, novos mapas de recursos são
gerados tomando os valores máximos na região especificada nos mapas de recursos obtidos a
partir do camadas anteriores. Esta camada reduz o tamanho dos mapas da camada anterior de
acordo para o tamanho da região. A redução do tamanho do mapa de recursos é uma etapa
importante na redução do custo computacional de estruturas de aprendizagem profunda. Para
este efeito, diferentes métodos, como os valores médios são usados em vez dos valores máximos
na camada 1D Max.

A rede profunda proposta tem uma camada flatten na 6ª camada para que os mapas
obtidos a partir da 5ª camada seja transformado para o tamanho apropriado como uma entrada
para as camadas subsequentes da rede. Esta camada transforma vetores de recursos de entrada
multidimensionais em dados de saída unidimensionais. Os recursos obtidos a partir da camada
flatten alimentam as camadas de rede neural densas conectadas de 256 e 512 unidades. Na
última camada da rede, existe um camada de softmax que tem o número das classes de saída.
Usando a camada softmax, fazemos a previsão à qual pertencem os dados de entrada. Além de
tudo isso, a quinta camada tem a função dropout para evitar o sobreajuste durante a fase de
aprendizagem. Após o desenvolvimento do modelo, os números da camada, tipos e parâmetros
do algoritmo foram alterados manualmente e os desempenhos dos conjuntos de validação são
observados.

Um segundo modelo foi implementado, alterando o número de épocas para 2, o batch


size para 50 e o otimizador para SGD.

De forma a verificar o desempenho de uma CNN menor para este dataset,


implementamos uma rede neural de 7 camadas, com 1 época, batch size de 100 e otimizador
Adam.
3.2. Configuração de rede neural

Para implementar modelos baseados em CNN, bibliotecas Python keras foram usadas
para treinamento e classificação usando camadas de modelo de rede neural. Alguns parâmetros
de implementações de rede neural e suas breves explicações são fornecidas abaixo.

• Forma de entrada: esta é a forma dos dados que são fornecidos à rede neural

• Tamanho do lote: refere-se à quantidade de amostras que estão em processamento


antes que a rede neural seja atualizada

• Épocas: refere-se a uma transmissão completa dos dados sendo treinados em redes
neurais. Por exemplo, se uma entrada de 1000 amostras é fornecida à rede, então uma época é
concluída quando um certo número de vezes todas as 1000 amostras são usadas uma vez.

• Perda: refere-se ao valor de erro que o modelo tenta reduzir durante o treinamento.
Uma diminuição no valor da perda significa que o modelo está convergindo para mais precisão.
Alguns exemplos de funções de cálculo de perda incluem (entropia cruzada binária e entropia
cruzada categórica)

• Otimizadores: referem-se a métodos que alteram os valores de diferentes parâmetros


do modelo, como pesos, para reduzir o valor de perda. Alguns exemplos incluem (otimizadores
RMSprop e Adam)

• Normalização em lote: Assim como na normalização de dados de entrada na camada


de entrada, a normalização em lote normaliza as informações em camadas ocultas para
aumentar a capacidade de aprendizado do CNN.

• Camada densa: camadas totalmente conectadas na CNN.


3.3 Implementação da Rede MLP

Para classificar os batimentos cardíacos do banco de dados nas 5 classes consideradas,


utilizou-se talém da rede CNN, mais um tipo de rede neural como classificador, a MLP
(Multilayer Perceptron), que é capaz de classificar um conjunto de dados em categorias.

Inicialmente, os dados foram normalizados para terem média 0 e variância 1 e, posterior-


mente, foram embaralhados aleatoriamente.Para isso, utilizou-se a função randperm do
Matlab®, que permuta as linhas e/ou colunas dos dados (nesse caso, as linhas), de maneira
aleatória. Toda a etapa de pré-processamento e extraçao de característica não será inclusa neste
trabalho, no entanto, os resultados obtidos servirão como base de comparação.

4. RESULTADOS

Para a primeira rede CNN, foi obtido uma acurácia de 0.9922, na figura abaixo
podemos verificar como ficou a modelagem da rede.

Figura 11 - Estrutura da CNN 1

Neste primeiro modelo como citado anteriormente, foi utilizado o otimizador adam
que é o mais utilizado e que apresenta melhores resultados na classificação do ECG. Vemos
que apesar de utilizarmos um número de épocas de 10, obtemos um resultado muito satisfatório
com a rede CNN.
Para o segundo modelo, fizemos apenas pequenas alterações no número de épocas e
no otimizador. Foram utilizados 2 épocas e o otimizador SGD (descida gradiente estocástica) e
a estrutura do modelo da CNN pode ser visto na figura abaixo, onde foi obtido uma acurácia de
0.9447.

Figura 12 - Estrutura da CNN 1

Vemos que para apesar de utilizarmos uma quantidade de épocas pequenas o valor da
acurácia não alterou muito, desda forma, foi realizado o teste com mais uma rede CNN com
menos camadas.

Reduzimos duas das camadas de convulão, obtendo assim uma CNN de 7 camadas,
utilizando o otimizador Adam, 1 época e batch size de 100. O desempenho obtido foi de uma
acurácia de 0.9678.
Figura 13 - Estrutura da CNN 3

Para a rede MLP, separou-se 70% dos dados para treinamento, 15% para validação e
15% para teste. Considerou-se como critério de parada o erro desejado de 0,01. A rede foi
configuradas com três camadas escondidas com, respectivamente, 3, 6 e 4 neurônios. O melhor
desempenho para a MLP foi de 96,22.

Figura 14 - Etapa de Validação MLP


5. CONCLUSÃO E DISCUSSÕES

As redes CNN e a MLP desempenharam resultados satisfatórios. Verificou-se que as


acurácias estão todas acima de 0.95, o que demonstra um desempenho acima da média. A rede
CNN com 5 épocas utilizando o otimizador Adam teve o melhor desempenho, sendo a acurácia
obtida de 0.9922, no entanto o tempo gasto (aproximadamento 25 minutos por época) para o
treinamento do modelo é alto quando comparado com a MLP, em contrapartida as redes CNNs
dispensam a etapa de extração de características que é enfadonha em muitos casos. Para uma
rede simples, a MLP apresentou um desempenho muito interessante e que seria muito mais
viável quando já temos as características extraídas. Considerando a simplicidade de aplicação,
o tempo de treinamento e teste e o desempenho obtido, a rede MLP seria a rede que melhor
classificaria batimentos cardíacos, ressaltando sua aplicabilidade para essa finalidade.

REFERÊNCIAS

CHUN-CHENG, L.; CHUN-MIN, Y. Heartbeat classification using normalized RR intervals


and wavelet features. 2014 International Symposium on Computer, Consumer and Control.
IEEE, 2014.
MARK, R.; MOODY, G. MIT-BIH Arrhythmia Database, 997. Disponível em:
<http://ecg.mit.edu/dbinfo.html>.
RAI, H. M.; TRIVEDI, A.; SHUKLA, S. ECG signal processing for abnormalities detection
using multi resolution wavelet transform and Artificial Neural Network classifier. Measure-
ment, v. 46, n. 9, p 3238 – 3246, 2013.

Você também pode gostar