Sunteți pe pagina 1din 7

Ps-Graduao em Engenharia Eltrica e de Computao - PPGEEC

Disciplina: Reconhecimento de Padres


Prof. Dr. Jarbas Joaci de Mesquita S Junior
Universidade Federal do Cear UFC/Sobral
Lus Bruno Pereira do Nascimento
Relatrio 3 Trabalho

1 INTRODUO
O presente relatrio apresenta os resultados do terceiro trabalho da disciplina de
Reconhecimento de Padres, o qual especifica detalhes da implementao de dois modelos de
regresso para a base de dados Aerogerador e do classificador por Mnimos Quadrados
aplicado base de dados Dermatology, assim como de duas estratgias de validao cruzada
para esse classificador, no caso, Leave-One-Out e K-Fold.
O software foi implementado em linguagem Matlab, verso R2012 plataforma UNIX
64bits. Ele possui os aquivos Trab3_LBruno.m, Trab3_Lbruno.fig, aerogerador.dat e
dermatology.data (Com amostras incompletas j removidas).
2 IMPLEMENTAO
Esta seo apresenta alguns detalhes referentes implementao do classificador, dos
modelos de regresso e das estratgias de validao.
2.1 Regresso Linear
A Regresso Linear um modelo matemtico capaz de estimar valores atravs de uma
funo linear.
Baseada no mtodo dos mnimos quadrados, necessrio obter os valores dos
parmetros alpha e beta que minimizem a soma dos quadrados dos erros. Esses valores so
dados por:
a= y x

(1)

Tal que:
(2)

Para avaliar a qualidade do modelo gerado utilizado o coeficiente de determinao


(R) que indica a quantidade de variabilidade que o modelo de regresso capaz de explicar.
O R dado pela frmula:
(3)

2.2 Regresso Linear Mltipla


Regresso Mltipla visa utilizar modelos polinomiais de graus superiores a 1. A
equao matricial que rege essa tcnica :
(4)
Em que X uma matriz dada por:

(5)
Para avaliar a qualidade do modelo gerado utilizado o coeficiente de determinao
(R) que indica a quantidade de de variabilidade que o modelo de regresso capaz de explicar.
O R para modelos polinomiais de grau maior que 1, ou seja, o coeficiente de
determinao ajustado dado pela frmula:

(6)
Em que k = p + 1
2.3 Modelo Sigmoidal
Sigmoide uma funo matemtica cuja plotagem possui formato de um 'S'. O modelo
sigmoidal se aplica aos dados do aerogerador por conta do formato gerado pelos dados de
potncia gerada.
Ela definida como:
f ( x)=

1
a( xc)

1+e

(7)

Em que 'a' e 'c' so os parmetros que definem o grau de inclinao da curva (slope) e
posio em reao ao eixo x.
Para determinar o melhor valor de slope para o modelo, foi criado um pequeno
algoritmo que busca esse valor, como pode ser observado no quadro 1.
Quadro1Trechodageraodomodelosigmoidal
...
1slp=0;
2pos=9.2;
3while(slp<=1)%Percorrendode0a1
4y2=600./(1+exp(slp*(xpos)));
5r2=1(sum((yy2).^2)/sum((ymean(y)).^2));
6slp=slp+0.1;
7if(r2>0.96)%baseadonoRdomodelopolinomial
8break;

9end
10end

O Coeficiente de determinao para o modelo sigmoidal dado pela formula (3).


2.4 Classificao da base 'Dermatology'
A base 'dermatology' foi classificada atravs do mtodo dos mnimos quadrados.
Inicialmente foram removidas 8 amostras da base que continham dados no-conhecidos. Foi
criada uma funo para organizar os dados de forma a obter uma melhor facilidade na
classificao.
Atravs da transformao linear y = Ax foi possvel gerar um vetor contendo um
diagnstico da patologia correspondente, em que y o vetor-cdigo (que contm o
diagnostico), A uma matriz que contm o modelo matemtico e x um vetor de amostra.
A matriz A de transformao dada por A=YX T ( XX T )1 em que X a matriz que
contm as amostras das patologias e Y contm os cdigos em formato binrio das patologias.
A transformao linear y = A*x gera um vetor com 6 elementos, onde a maior de suas
componentes denota a posio da classe, ou seja, a patologia que o paciente codificado como 'x'
apresenta.
2.4.1 Validao Leave-One-Out
A implementao da validao cruzada leave-one-out para o classificador por mnimos
quadrados est presente no quadro 2.
Quadro 2 Leave-One-Out
1...
2len=numel(base(:,1));
3cont=0;
4fori=1:len
5Y1=Y;%VariveisAuxiliares
6X1=X;%VariveisAuxiliares
7Y1(:,i)=[];%Removendoovalordamatrizdepatologias
8X1(:,i)=[];%Removendoaamostra
9A=(Y1*X1')*(X1*X1')^1;%Gerandoomodelo
10[vpos]=max(A*X(:,i));%ValorePosio
11if(pos==base(i,end))
12cont=cont+100;%Acertou
13end
14end

Nas linhas 6 e 7 pode-se observar que o elemento da posio atual est sendo
removido, respeitando definio da estratgia leave-one-out.
Como mencionado acima, o maior valor da multiplicao A*x (linha 10) gera um vetor
e o maior elemento representa mostra a classe da patologia. A condio na linha 11 mostra se o
teste est correto.
A acurcia do modelo dada pelo nmero de acertos dividido pelo nmero de
amostras da base (cont/ len).

2.4.2 Validao K-Fold


A implementao da validao cruzada K-Fold para o classificador por mnimos
quadrados est presente no quadro 3.
Quadro 3 Implementao do K-Fold
1...
2len=numel(base(:,1));%Nmerodeelementos
3nAmostras=ones(1,k)*fix(len/k);%Parteinteiradadivisao
4resto=mod(len,k);%Elementosquerestaram
5fori=1:resto
6nAmostras(i)=nAmostras(i)+1;%Distribuiodoselementos
7end
8acertos=[];
9inter=0;
10fori=1:k
11cont=0;
12X1=X;
13Y1=Y;
14inter=inter(end)+1:inter(end)+nAmostras(i);%Intervalos
16xTeste=base(inter,:);
17X1(:,inter)=[];
18Y1(:,inter)=[];
19forj=1:nAmostras(i)
20A=(Y1*X1')*(X1*X1')^1;
21[vpos]=max(A*xTeste(j,1:end1)');%ValorePosicao
22if(pos==xTeste(j,end))
23cont=cont+100;%Acertou
24end
25end
26acertos=[acertoscont/nAmostras(i)];
27inter=sum(nAmostras(1:i));
28end

A varivel 'k' que define o nmero 'K' de subgrupos passado como parmetro nessa
funo.
Segundo definio, os dados so divididos e 'k' grupos. Os dados que restaram da
diviso so distribudos entre os grupos (linhas 3-7).
Na linha 14 gerado um range com valores referentes aos k intervalos de nAmostras
elementos
A varivel cont (linha 23) um conta os acertos do modelo. A acurcia dada pela
mdia do vetor de acertos (linha 26). mean(acertos)

3 RESULTADOS E DISCUSSO
Esta seo apresenta alguns resultados obtidos com a implementao dos modelos
polinomiais e sigmoidal e dos mtodos de validao cruzada para o classificador por Mnimos
Quadrados aplicados na base Dermatology. A figura 1 apresenta o software implementado.

Figura 1 Software implementado

Atravs da interface grfica, tornou-se simples o manuseio do software. No painel


Modelos Polinomiais possvel gerar modelos de regresso sob a base da dados
aerogerador.dat. possvel escolher o grau do polinmio em que o modelo gerado.
No painel Classificao da base Dermatology, possvel classificar a base atravs
dos mnimos quadrados e aplicar os mtodos de validao cruzada leave-one-out e k-fold,
onde k pode variar em 5, 6 e 10.
3.1 Modelos Polinomiais
Atravs da implementao dos modelos de regresso com polinmios de graus 1 a 6
foi possvel observar a variao da qualidade do modelo pelo coeficiente R. A figura 2 mostra
um grfico que relaciona o coeficiente de determinao com o nmero de parmetros do
modelo (1 a 9) para fins de visualizao do comportamento.
Figura 2 Parmetros do polinmio X R

notrio que de acordo com o aumento do grau do polinmio o coeficiente de


determinao aumenta, entretanto, em um determinado nmero de parmetro, no h mais um
aumento na qualidade do modelo, ou seja, o polinmio de 4 grau melhor define o modelo.
Para o modelo sigmoidal, foi realizada uma busca exaustiva com uma variao do
parmetro 'slope' da funo sigmoide.
Figura 2 Modelo Sigmoidal

Para as variaes no 'slope' presentes na figura 3, foram gerados os seguintes valores


de R = [ -2.3977e-04 0.4241 0.7093 0.8772 0.9558 0.9690], sendo o ltimo o valor
referente sigmoide vermelha.
3.2 Classificao da base Dermatology
Utilizando o mtodo dos mnimos quadrados, a base foi classificada. O classificador
obteve bons nveis de acertos, medidos pelos mtodos leave-one-out e k-fold.
Utilizando o primeiro mtodo de validao cruzada, o classificador obteve uma
acurcia de 97.21% de acertos. Aplicando uma normalizao nos dados por Z-Score a taxa de
acertos cai para 96.64%.
Aplicando o mtodo K-fold, com k = [5 6 10], o classificador obteve resultados
similares ao apresentado pelo leave-one-out, em mdia 96%. Com Z-score, os valores no
sofreram uma mudana considervel.
Pelo fato dos dados serem permutados a cada execuo, no possvel determinar uma
taxa fixa de acertos, mas com K=5, 5 execues seguidas mostraram acurcias: 96.373, 96.643,
95.806, 96.365, 97.480.

3.3 Matriz de Confuso


Considerando a tabela 1 que mostra o nmero de amostras por patologia, as tabelas 2 e
3 apresentam matrizes de confuso contendo a distribuio dos acertos em cada uma das
estratgias de validao, com a base de dados normalizada.
Tabela 1 Patologias
Patologias (Nmero de Pacientes)
Psorase
(111)

Dermatite
Seborrica (60)

Lquen plano
(71)

Pitirase rsea
(48)

Dermatite
Crnica (48)

Pitirase rubra
pilar (20)

Tabela 2 Matriz de Confuso Leave-one-Out


Psorase Dermatite
Lquen
Pitirase
Dermatite
Seborrica
plano
rsea
Crnica

Pitirase
rubra pilar

Psorase

98,20%

1,8018%

0%

0%

0%

0%

Dermatite
Seborrica

0%

90%

0%

10%

0%

0%

Lquen plano

0%

0%

98,59%

0%

1.4085%

0%

Pitirase rsea

0%

6,25%

0%

93,75%

Dermatite
Crnica

0%

0%

0%

0%

100%

0%

Pitirase rubra
pilar

0%

0%

0%

0%

0%

100%

0%

Tabela 3 Matriz de Confuso 5-Fold (Acurcia de 96.921%)


Psorase
Dermatite
Lquen
Pitirase
Dermatite
Seborrica
plano
rsea
Crnica

Pitirase
rubra pilar

Psorase

99,1%

0,9%

0%

0%

0%

0%

Dermatite
Seborrica

1,66%

93,33%

0%

5%

0%

0%

Lquen plano

0%

0%

98,59%

0%

1,408%

0%

Pitirase rsea

0%

10,416%

0%

89,58%

0%

0%

Dermatite
Crnica

0%

0%

0%

0%

100%

0%

Pitirase rubra
pilar

0%

0%

0%

0%

0%

100%

A partir da matriz de confuso pode-se observar que a classificao foi satisfatria


devido aos valores da diagonal principal serem prximos de 100% em ambas as estratgias de
classificao.

S-ar putea să vă placă și