• Aucun résultat trouvé

Consequence of Wang-Zhu’s theory

Dans le document K¨ ahler-Einstein metrics and K-stability (Page 85-91)

O m´odulo Classifica¸c˜ao executa segundo o modo de opera¸c˜ao. Em Modo de Treinamento, o m´odulo treina o modelo classificador, de forma a habilit´a-lo a classificar corretamente vetores que representam e-mails ham e vetores que representam e-mails spam. Em Modo de Classifica¸c˜ao, o m´odulo classifica, nas classes spam e ham, vetores que representam e-mails novos, enviados pelo Postfix.

O m´odulo ´e capaz de igualar a quantidade de vetores spam e ham sempre que o treinamento do modelo classificador assim o exigir. Para igualar a quantidade de vetores em ambas as classes, o m´odulo duplica, aleatoriamente, vetores na classe que possua a menor quantidade de vetores.

Para o modelo classificador, um modelo de machine learning, os vetores s˜ao padr˜oes. No Modo de Treinamento, s˜ao acrescidas, ao final dos padr˜oes, mais duas dimens˜oes, contendo dois valores que os identificam como spam ou ham. Nos padr˜oes ham, os dois valores s˜ao 0 e 1. Nos padr˜oes spam, s˜ao 1 e 0.

´

E importante notar que s˜ao utilizadas duas unidades para identificar a classe do e-mail. Desta forma, produz-se um resultado com maior grau de certeza na classifica¸c˜ao. Por exemplo, caso o modelo classificador apresente o resultado 0,3999 e 0,8, pode-se dizer que o resultado ´e, de fato, 0 e 1, ou seja, ham.

A figura 16apresenta o padr˜ao da figura12, caso este seja um padr˜ao ham.

Figura 16 – Padr˜ao de classe ham

Ao final do Modo de Treinamento, os valores iniciais e finais dos parˆametros do modelo classificador s˜ao salvos em dois arquivos. No Modo de Classifica¸c˜ao, os

valores finais dos parˆametros s˜ao recuperados do respectivo arquivo, de modo a tornar o modelo apto a classificar corretamente os novos e-mails, enviados pelo Postfix.

Quando o modelo n˜ao consegue classificar um novo e-mail, sua classe ´e definida como sendo ham. Isto ´e feito para evitar que um poss´ıvel e-mail leg´ıtimo seja classificado como spam.

O m´odulo Classificador implementa dois modelos de machine learning — Multi- Layer Perceptron (MLP) e Random Forest (RF). Os dois modelos s˜ao descritos nas duas subse¸c˜oes a seguir.

4.5.1

MODELO MLP

Multi-Layer Perceptron (MLP) ´e um modelo matem´atico inspirado na estrutura neuronal do c´erebro humano. No c´erebro humano, cada neurˆonio ´e ativado por outros neurˆonios atrav´es de conex˜oes, conhecidas como sinapses. Quando um neurˆonio recebe ativa¸c˜ao de outros neurˆonios e esta supera seu limiar, ele transmite uma nova ativa¸c˜ao aos neurˆonios seguintes. De forma an´aloga, no MLP, cada unidade em uma camada l recebe ativa¸c˜ao das unidades da camada l-1 e transmite uma nova ativa¸c˜ao `as unidades da camada l+1.

A figura 17apresenta uma arquitetura t´ıpica do MLP. Possui quatro camadas — entrada, escondida 1, escondida 2 e sa´ıda — de unidades. As unidades s˜ao representadas por c´ırculos na figura. As unidades de uma camada conectam-se `as unidades da camada seguinte por meio de conex˜oes, representadas por setas na figura.

Figura 17 – Arquitetura do MLP

As ativa¸c˜oes das unidades da camada de entrada s˜ao os valores dos vetores produzidos pelo m´odulo vetoriza¸c˜ao (se¸c˜ao 4.4). Cada unidade das camadas seguintes recebe uma ativa¸c˜ao neti que consiste na combina¸c˜ao linear ponderada

das ativa¸c˜oes das unidades da camada anterior. Portanto, a ativa¸c˜ao recebida neti

por uma unidade i de quaisquer das trˆes ´ultimas camadas ´e dada pela equa¸c˜ao 4.3.

neti =

X

j

wijaj + biasi (4.3)

onde wij ´e o peso da unidade j para a unidade i, aj ´e a ativa¸c˜ao da unidade j e

biasi ´e um peso especial que ajusta os valores de neti.

Como o MLP ´e um modelo matem´atico n˜ao-linear, a ativa¸c˜ao ai que a unidade

i transmite para as unidades da camada seguinte ´e dada pela equa¸c˜ao 4.4.

ai = f (neti) (4.4)

onde f (x) ´e uma fun¸c˜ao n˜ao-linear diferenci´avel. Em geral, s˜ao usadas as fun¸c˜oes sigm´oide (LogSig) e tangente sigm´oide (TanSig).

Os pesos das conex˜oes s˜ao ajustados durante o treinamento do MLP. O treina- mento do MLP bem como t´ecnicas para agiliz´a-lo est˜ao bem descritos na literatura (HAYKIN, 2009).

O SASCA faz uso da biblioteca WEKA (HALL et al.,2009) para implementar o modelo MLP. WEKA ´e uma biblioteca amplamente conhecida, que implementa muitos modelos de machine learning. Tal como o SASCA, possui c´odigo aberto.

4.5.2

MODELO RANDOM FOREST

Random Forest (RF) ´e um modelo de machine learning que consiste em um conjunto (ensemble) de modelos com arquitetura de ´arvore de decis˜ao (BREIMAN,

2001). Assim, o modelo RF comp˜oe-se de um conjunto de v´arios modelos individuais combinados, de forma a produzir um modelo agregado mais poderoso do que qualquer um de seus modelos individuais.

Diferentes modelos podem alcan¸car um bom desempenho individual. No en- tanto, tendem a produzir diferentes valores de erros sobre o conjunto de dados. Tipicamente, isso acontece porque cada modelo individual pode se ajustar melhor a uma parte diferente dos dados. Ao combinar diferentes modelos individuais em um conjunto, pode-se balancear seus erros individuais, de forma a reduzir o risco de ajuste parcial sobre os dados.

RFs s˜ao amplamente utilizadas na pr´atica e conseguem bons resultados em uma variedade de problemas em v´arias ´areas, tais como (POLAMURI, 2017):

• Com´ercio banc´ario: por exemplo, para encontrar os clientes leais e fraudulen- tos;

• Medicina: por exemplo, para identificar a combina¸c˜ao correta dos componen- tes para validar um medicamento ou para identificar uma doen¸ca com base na an´alise dos prontu´arios do paciente;

• Mercado de a¸c˜oes: por exemplo, para identificar o comportamento das a¸c˜oes, bem como a perda esperada ou o lucro, comprando um ativo em particular; • Com´ercio eletrˆonico: por exemplo, para identificar a probabilidade de um cliente gostar dos produtos recomendados com base em tipos similares de clientes.

O treinamento das RFs consiste em sucessivas sele¸c˜oes de caracter´ısticas e na cria¸c˜ao de ´arvores de decis˜ao, como mostra o pseudoc´odigo a seguir.

1. Selecionar aleatoriamente K, de um total de M caracter´ısticas, onde K << M .

2. Dentre as K caracter´ısticas, calcular o n´o D, usando o melhor ponto de divis˜ao.

3. Dividir o n´o em n´os filhos, usando a melhor divis˜ao.

4. Repetir as etapas 1 a 3, at´e que haja um n´umero pr´e-determinado L de n´os. 5. Repetir N vezes as etapas 1 a 4 para criar uma floresta com N ´arvores.

RFs classificam amostras por meio de sucessivos testes, contagem de votos e elei¸c˜ao da classe mais votada. O pseudoc´odigo a seguir e a figura 18 descrevem o processo de classifica¸c˜ao das RFs.

1. Para cada amostra, percorrer as N ´arvore de decis˜ao, de forma a obter N valores de sa´ıda.

2. Calcular os votos para cada valor de sa´ıda.

3. Considerar a sa´ıda mais votada como sendo a sa´ıda final, produzida pela RF.

Dans le document K¨ ahler-Einstein metrics and K-stability (Page 85-91)