Вы находитесь на странице: 1из 19

APRENDIZAGEM POR MEIO DE EXEMPLOS

- APRENDIZAGEM SUPERVISIONADA E NÃO SUPERVISIONADA

Edanil José Renner Figueira


ISPTEC – Instituto Superior Politécnico De Tecnologias e Ciências, Departamento de Engenharias
e Tecnologias
edanilfigueira@gmail.com

Euqueny Eyovo Cândido Filho


ISPTEC – Instituto Superior Politécnico De Tecnologias e Ciências, Departamento de Engenharias
e Tecnologias
filhoeuqueny@gmail.com

Herculano Manuel
ISPTEC – Instituto Superior Politécnico De Tecnologias e Ciências, Departamento de Engenharias
e Tecnologias
leta541@gmail.com

Mauro Júlio Mouzinho João


ISPTEC – Instituto Superior Politécnico De Tecnologias e Ciências, Departamento de Engenharias
e Tecnologias
mauroholiday@gmail.com
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

Resumo

Este artigo se concentrou na aprendizagem


indutiva de funções determinísticas a partir de
exemplos. Dentre os principais pontos: A
aprendizagem assume muitas formas,
dependendo da natureza do agente, do
componente a ser aperfeiçoado e da
realimentação disponível. Se a realimentação
disponível fornece a resposta correta para o
exemplo de entrada, o problema de
aprendizagem será chamado aprendizagem
supervisionada. A tarefa é aprender uma função
y = h(x). A aprendizagem de uma função de
valores discretos é chamada de classificação; a
aprendizagem de uma função contínua é
chamada de regressão. A aprendizagem indutiva
envolve encontrar uma hipótese consistente que
concorde com os exemplos. A navalha de
Ockham sugere escolher a hipótese consistente
mais simples. A dificuldade dessa tarefa
depende da representação escolhida.

Palavras-chave: aprendizagem, hipótese,


regressão.

Abstrat
This article concentrated in the indutive
learning of deterministic functions from
exemplos. From the top points: learning
takes many shapes, depending of the
agent´s nature, from the component to be
upgraded and from the available feedback. If
the available feedback gives the correct
answer for the opening exemple, the
learning problema will be called
supervisioned learning. The task is to learn a
function y=h(x). A function learning of discret
values is called classification; learning of a
continuos function is called regression. The
indutive learning involves finding a
consistence hipotese that agrees with the
examples. The Ockham knife sugests to
choose the most simple and consistence
hipotese. The hardship of this task depends
of the choosed representation.
Key-words:learning,hipotes,regression.
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

1 Introdução

É difícil definir sucintamente o que é Inteligência Artificial (IA). No famoso livro


Inteligência Artificial, utilizado como bibliografia básica em vários institutos e universidades,
os autores gastam 30 páginas discutindo o assunto. Há diversas abordagens diferentes de
IA para solucionar uma grande variedade de problemas. Uma dessas abordagens é o
aprendizado a partir de exemplos, que de certa forma está associada ao aprendizado de
máquina, uma das áreas mais relevantes dentro da IA e que será analisada neste trabalho.

Um agente estará “aprendendo” se melhorar o seu desempenho nas tarefas futuras de


aprendizagem após fazer observações sobre o mundo. A aprendizagem pode variar do
corriqueiro, como anotar um número de telefone, até o profundo, como mostrado por Albert
Einstein, que inferiu uma nova teoria para o universo.

Neste artigo, vamos nos concentrar em uma classe de problema de aprendizagem, o que
parece restrito, mas na verdade tem ampla aplicabilidade: a partir de uma coleção de pares
de entrada e saída, aprender uma função que prevê a saída para novas entradas.
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

2 Aprendendo por meio de exemplos


Diante deste tema tão pertinente, nos deparamos com algumas questões como:

Por que iríamos querer um agente para aprender? Se o projeto do agente pode ser
melhorado, para começar, por que os projetistas não apenas programam essa melhoria?

Na verdade, existem três razões principais.

Primeiro, os projetistas não podem antecipar todas as situações possíveis em que o agente
possa se encontrar. Por exemplo, um robô projetado para navegar em labirintos tem de
aprender a configuração de cada novo labirinto que encontra. Em segundo lugar, os
projetistas não podem antecipar todas as mudanças ao longo do tempo; um programa
projetado para prever os preços do mercado de ações de amanhã deve aprender a se
adaptar quando as condições mudam do súbito crescimento ao fracasso. Terceiro, por
vezes, os programadores humanos não têm ideia de como programar uma solução por si
só. Por exemplo, a maioria das pessoas é boa em reconhecer o rosto dos membros da
família, mas mesmo os melhores programadores são incapazes de programar um
computador para realizar essa tarefa, exceto por meio de algoritmos de aprendizagem.

2.1 Formas de aprendizagem


Qualquer componente de um agente pode ser melhorado através da aprendizagem
a partir dos dados. As melhorias e as técnicas usadas para construí-los depende de quatro
fatores principais:

• Que componente deve ser melhorado.

• O conhecimento prévio que o agente já tem.

• Que representação é usada para os dados e para o componente.

• Que feedback está disponível para aprendizagem.

2.2 Componentes a serem aprendidos


Um agente é tudo o que pode ser considerado capaz de perceber seu ambiente por
meio de sensores e de agir sobre esse ambiente por intermédio de atuadores. Os
componentes desses agentes incluem:

1. Um mapeamento direto de condições no estado atual para ações.


I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

2. Um meio para deduzir propriedades relevantes do mundo a partir da sequência de


percepções.

3. Informações sobre o modo como o mundo evolui e sobre os resultados de ações


possíveis que o agente pode executar.

4. Informações de utilidade indicando a desejabilidade de estados do mundo.

5. Informações de valores de ações indicando a desejabilidade de ações.

6. Metas que descrevem classes de estados cuja realização maximiza a utilidade do agente.

3 Feedback para aprender


Quando se inicia um estudo na área de algoritmos de aprendizagem a partir de
exemplos, frequentemente se enfrenta o problema de escolher o algoritmo mais apropriado
para um problema específico. Geralmente, quando lê-se um artigo sobre algoritmos de
aprendizagem de máquina vê-se uma enxurrada de especificações detalhadas. O paradoxo
é que elas não facilitam a nosa escolha.
Existem quatro tipos de feedback que determinam os quatro principais tipos de
aprendizagem:

• Aprendizagem supervisionada
• Aprendizagem não-supervisionada
• Aprendizagem semi-supervisionada
• Aprendizagem por reforço

Para este artigo faremos apenas referência a dois tipos de aprendizagem, que são: a
aprendizagem supervisionada e a aprendizagem não supervisionada, que é um dos
principais focos deste trabalho.

Dessa forma, podemos dividir o aprendizado de máquina em supervisionado, que busca


responder um target, ou seja, há uma variável explícita a ser respondida; e não
supervisionado, em que busca-se identificar grupos ou padrões a partir dos dados, sem
um objetivo específico a ser alcançado. Nas seções que se seguem, abordaremos de forma
mais aprofundada este assunto.
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

3.1 Aprendizagem Supervisionada


Aprendizagem supervisionada é a tarefa de encontrar uma função a partir de dados
de treinamento rotulados. O objetivo é encontrar os parâmetros ótimos que ajustem um
modelo que possa prever rótulos desconhecidos em outros objetos (o conjunto de teste).

Por outras palavras, nos é dado um conjunto de dados rotulados que já sabemos qual é a
nossa saída correta e que deve ser semelhante ao conjunto, tendo a ideia de que existe
uma relação entre a entrada e a saída.

Nos modelos de aprendizagem de máquina supervisionada conseguimos dar pesos ou


calibrar o nível de assertividade e de precisão de um modelo. A maior parte dos modelos
de machine learning são supervisionados.

São dividos em:

Regressão: métodos de regressão buscam encontrar como uma variável evolui em


relação a outras. Estão entre os métodos mais comuns e mais ensinados nas aulas de
estatística nos institutos e universidades.

Classificação: são métodos que buscam explicar uma variável categórica, com duas
categorias (variável binária) ou mais.

Podem existir ainda modelos de aprendizado de máquina mistos, que podem utilizar
partes de regressão para fazer classfificação, ou o oposto.

De uma maneira mais aprofundada e explicativa, a tarefa de aprendizagem


supervisionada é a seguinte:

Dado um conjunto de treinamento de N pares de exemplos de entrada e saída


(x1, y1), (x2, y2),… (xn, yn), onde cada yj foi gerado por uma função desconhecida y=f(x),
descobrir uma função h que se aproxime da função verdadeira f.

Aqui x e y podem ter qualquer valor, não precisando ser números. A função h é uma
hipótese. Aprendizagem é uma busca através do espaço de hipóteses possíveis por
aquele que terá um bom desempenho, mesmo em novos exemplos além do conjunto de
treinamento. Para medir a precisão de uma hipótese, fornecemos um conjunto de testes
de exemplos que são distintos do conjunto de treinamento. Dizemos que uma hipótese
generaliza bem se prevê corretamente o valor de y para novos exemplos. Às vezes, a
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

função f é estocástica — não é estritamente uma função de x, e o que temos de aprender


é uma distribuição de probabilidade condicional, P(Y | x).

Quando a saída y for de um conjunto finito de valores (como ensolarado, nublado ou


chuvoso), o problema da aprendizagem será chamado de classificação, e será chamado
de classificação booleana ou binária se houver apenas dois valores. Quando y for um
número (como temperatura de amanhã), o problema de aprendizagem é chamado de
regressão (Tecnicamente, a solução de um problema de regressão é encontrar uma
expectativa condicional ou valor médio de y porque a probabilidade de acharmos
exatamente o número de valor real certo para y é 0).
A Figura 1.1 mostra um exemplo familiar: o ajuste de função de uma única variável a
alguns pontos de dados. Os exemplos são pontos no plano (x, y), onde y = f(x). Não
sabemos qual é o f, mas vamos aproximá-lo com uma função h selecionada a partir de
um espaço de hipótese, 𝐻, que para este exemplo vamos tomar como conjunto de
polinômios, tais como x5 + 3x2 + 2. A Figura 1.1(a) mostra alguns dados com um ajuste
exato por linha reta (o polinômio 0,4x + 3). A linha é chamada hipótese consistente
porque concorda com todos os dados. A Figura 1.1(b) mostra um polinômio de grau alto
que também é consistente com os mesmos dados. Isso ilustra o problema fundamental de
aprendizagem indutiva: como escolhemos entre várias hipóteses consistentes? Uma
resposta é preferir a hipótese consistente mais simples para os dados. Esse princípio é
chamado de navalha de Ockham, devido ao filósofo inglês do século XIV, Guilherme de
Ockham, que a usou para argumentar fortemente contra todos os tipos de complicações.
A definição de simplicidade não é fácil, mas parece claro que um polinômio de grau 1 é
mais simples do que um polinômio de grau 7 e, assim, (a) deve ser preferido a (b).

Figura 1.1 (a) Exemplo de pares (x, f(x)) e uma hipótese linear consistente. (b) Hipótese
de polinômio de grau 7 consistente para o mesmo conjunto de dados. (c) Conjunto de
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

dados diferente que admite um ajuste de polinômio de grau 6 exato ou um ajuste linear
aproximado. (d) Um simples ajuste senoidal exato para o mesmo conjunto de dados.

A Figura 1.1(c) mostra um segundo conjunto de dados. Não existe nenhuma linha reta
consistente para esse conjunto de dados; de fato, ele exige um polinômio de grau 6 (com
sete parâmetros) para um ajuste exato. Existem apenas sete pontos de dados e, assim, o
polinômio com sete parâmetros não parece encontrar qualquer padrão nos dados e não
esperamos que ele generalize bem. A linha reta que não é consistente com qualquer um
dos pontos de dados, mas pode generalizar muito bem para os valores invisíveis de x,
também é mostrada em (c). Em geral, há uma compensação entre as hipóteses
complexas que ajustam bem os dados de treinamento e as hipóteses mais simples que
podem generalizar melhor. Na Figura 1.1(d) expandimos o espaço de hipótese para
permitir polinômios sobre x e seno(x) e verificar que os dados em (c) podem ser ajustados
exatamente por uma função simples da forma ax + b + c seno(x). Isso mostra a
importância da escolha do espaço de hipóteses. Dizemos que um problema de
aprendizagem é realizável se o espaço de hipótese contiver a função verdadeira.
Infelizmente, nem sempre podemos dizer se um problema de aprendizagem dado é
realizável porque a função verdadeira não é conhecida. Em alguns casos, um analista, ao
verificar um problema, está querendo fazer distinções mais refinadas sobre o espaço de
hipótese mesmo sem antes ter visto todos os dados, o que não significa apenas que uma
hipótese é possível ou impossível, mas o quanto ela é provável. Pode-se fazer a
aprendizagem supervisionada escolhendo a hipótese h* que é mais provável, com os
dados:

Pela regra de Bayes isso é equivalente a

Então podemos dizer que a probabilidade prévia P(h) é alta para um polinômio de grau 1
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

ou 2, mas baixa para um polinômio de grau 7, e especialmente baixa para polinômios de


grau 7 com grandes pontas acentuadas como na Figura 1.1(b). Permitimos funções de
aparência incomum quando os dados informam que precisam delas realmente, mas a
desencorajamos, dando-lhes uma probabilidade baixa a priori.

Por que não deixar 𝐻 ser a classe de todos os programas em Java ou máquinas de
Turing? Afinal, cada função computável pode ser representada por alguma máquina de
Turing, e isso é o melhor que podemos fazer. Um problema com essa ideia é que ela não
leva em conta a complexidade computacional da aprendizagem. Há um compromisso
entre a expressividade de um espaço de hipótese e a complexidade de encontrar
uma boa hipótese dentro desse espaço. Por exemplo, a adaptação de uma linha reta
aos dados é um cálculo fácil, a adaptação de polinômios de grau alto é um pouco mais
difícil, e a adaptação de máquinas de Turing em geral é indecidível. Uma segunda razão
para preferir espaços de hipótese simples é que, presumivelmente, vamos querer usar h
depois de termos aprendido isso, e é garantido que o cálculo de h(x) quando h for uma
função linear é mais rápido, enquanto o cálculo em um programa arbitrário de máquina de
Turing nem sequer se garante que termine. Por essas razões, a maioria dos trabalhos
sobre aprendizagem tem se concentrado em representações simples.

3.1.1 Exemplos de aplicação do modelo de aprendizagem supervisionada

Exemplo 1:

Dado um conjunto de dados sobre o tamanho de casas no mercado imobiliário, tentar


prever o seu preço. Preço em função do tamanho é uma saída contínua, de modo que
este é um problema de regressão.

Poderíamos também transformar esse exemplo em um problema de classificação, e em


vez de fazer a nossa produção sobre se a casa “é vendida por mais ou menos do que o
preço pedido.” Aqui estamos classificando as casas com base no preço em duas
categorias distintas.

Exemplo 2:

(A) Regressão — Dada uma imagem de homem/mulher, temos de prever sua idade com
base em dados da imagem.
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

(B) Classificação — Dada um exemplo de tumor cancerígeno, temos de prever se ele é


benigno ou maligno através do seu tamanho e idade do paciente.

Exemplo 3:

Outro exemplo de Classificação muito utilizado pelos bancos é a decisão do aceite do


empréstimo para algum cliente com base no seu histórico de crédito.

Muitos algoritmos são utilizados para criar aprendizes supervisionadas, sendo os mais
comuns as Redes Neurais, Máquinas de Vetor de Suporte (SVMs), e Classificadores
Naive Bayes.

3.2 Aprendizagem Não Supervisionada

Na aprendizagem não-supervisionada temos menos informação sobre os objetos,


em particular, o conjunto de treinamento não é rotulado. O nosso objetivo, neste contexto,
é observar algumas similaridades entre os objetos e incluí-los em grupos apropriados.
Alguns objetos podem diferir largamente de todos os grupos e, deste modo, podemos
assumir que estes objetos são anomalias.

Para melhor compreensão, levemos a questão ao âmbito de negócios. Quando a pergunta


de negócio é algo do tipo “Quais os perfis de clientes que compram em uma loja?” estamos
falando de aprendizagem de máquina não supervisionado. Neste caso, portanto, não
temos uma variável específica a ser respondida, pois estamos apenas buscando encontrar
os indivíduos, itens ou elementos semelhantes.

Modelos não supervisionados são mais raros na prática, mas são muito úteis para guiar o
raciocínio do cientista de dados no processo de exploração dos dados para análises futuras.

3.2.1 Modelo de clusterização não supervisionado

A abordagem de clustering (uma particularidade do modelo não supervisionado) pode


tanto ser utilizada para classificação em métodos supervisionados – quando existe uma
variável categórica com labels conhecidas; quanto pode ser utilizada em um contexto não
supervisionado – quando não se conhece as possíveis categorias existentes.
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

Um exemplo para replicar um caso de clusterização não superivionado é gerar dados


aleatórios e fazer o clustering em cima destes dados.

3.2.2 Exemplos de aplicação do modelo de aprendizagem não


supervisionada

Exemplo 1:

Clustering: Dada uma coleção de 1000 pesquisas de uma universidade encontrar uma
maneira de agrupar automaticamente estas pesquisas em um grupos que são de alguma
forma semelhantes ou relacionadas por diferentes variáveis, tais como a frequência das
palavras, frases, contagem de páginas, etc.

Exemplo 2:

Outro, exemplo não Clustering, é o “Algoritmo Cocktail Party”, que pode encontrar em
uma estrutura de dados desorganizada como identificar as vozes individuais e música.

Abordagens comuns de aprendizagem não supervisionada incluem armazenamento em


Cluster K-Médio, Hierárquico, e Mapas Auto-organizadores.

4 ALGORITMOS DE APRENDIZAGEM DE MÁQUINA COMUMMENTE


UTILIZADOS

Agora que temos uma certa intuição sobre os tipos de tarefas de aprendizagem de máquina,
vamos explorar os algoritmos mais populares com suas aplicações no mundo real aplicado
a aprendizagem por meio de exemplos .

4.1 Regressão e Classificação Linear

Estes talvez sejam os algoritmos mais simples em aprendizagem de máquina. Você


dispõe de características (ou atributos) x1, x2, …, xn sobre objetos (matriz A) e os seus
rótulos (vetor b). O objetivo é encontrar um conjunto de pesos e viés ótimo para estas
características de acordo com alguma função de custo, como por exemplo MSE (mean
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

squared error) ou MAE (mean absolute error) para regressão. No caso de MSE há uma
equação matemática do método quadrados mínimos:

Na prática é mais fácil otimizar com o método da descida do gradiente (gradient descent),
que é muito mais eficiente computacionalmente. Apesar de sua simplicidade, este algoritmo
funciona muito bem quando se tem milhares de características, por exemplo, bag of words
ou n-grams em análise de texto. Algoritmos mais complexos sofrem de sobreajuste
(overfitting) quando se tem muitas características em conjuntos de dados pequenos, ao
passo que regressão linear provê qualidade razoável.

Para prevenir o sobreajuste, normalmente utilizamos técnicas de regularização, tais como


LASSO e Ridge. A ideia é adicionar a soma dos módulos dos pesos e soma dos quadrados
dos pesos, respectivamente, à função de custo. Leia um excelente tutorial sobre estes
algoritmos no final deste post.

4.2 Regressão Logistica

Apesar do seu nome, este é um algoritmo de classificação e não um método de


regressão. A regressão logística realiza classificação binária, portanto os rótulos de saída
são dicotômicos. Vamos definir P(y=1 | x ) como a probabilidade condicionada de que a
saida y é 1 quando dado como entrada um vetor de características x. Os coeficientes w são
os pesos do modelo que serão encontrados pelo algoritmo.
Este algoritmo calcula a probabilidade do objeto pertencer a cada classe. Por isso, a função
de custo pode ser a diferença entre a probabilidade predita e o rótulo 0 ou 1, e calcular a
média para todos os objetos como fizemos na regressão linear. Esta função de custo é
conhecida como média das entropias cruzadas (average of cross-entropies):
Não entre em pânico, vou explicar tudo. Seja y o vetor de resposta corretas, 0 ou 1, e y_pred
o vetor de respostas preditas. Se y é igual a 0, então o primeiro termo da soma é 0 e o
segundo termo representa a classe 0. Quanto mais próximo de zero, mais proximo de 1
será este termo devido ao logaritmo. O mesmo raciocínio se aplica quando y for igual a 1.
Por que a regressão logística é tão interessante? Ela recebe uma combinação linear de
características e aplica uma função não linear (sigmoid) a ela, de modo que é uma instância
bem pequena de uma rede neural!
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

4.3 Árvores de Decisão

Outro algoritmo popular e fácil de compreender é o Árvores de Decisão. O resultado


é fácil de visualizar e o seu processamento requer uma abordagem sistemática e bem
documentada.
A ideia deste algoritmo é simples. Em cada nodo escolhemos o melhor valor entre todas as
características e todos os pontos possíveis de corte (split). Cada corte é selecionado de tal
modo que maximize alguma função. Em árvores para classificação, utiliza-se entropia
cruzada (cross entropy) e Gini index. Em árvores para regressão minimiza-se a soma dos
erros quadrados entre a valor predito e o valor dos pontos que caem naquela região.
Este procedimento é definido recursivamente para cada nodo e encerra quando
encontramos um critério de parada, como por exemplo, número mínimo de folhas em um
nodo ou a altura máxima da árvore. Uma árvore sozinha é utilizada muito raramente, mas
em combinação com muitas outras elas formam algoritmos muito eficientes tais como
Florestas Aleatórias ou Gradient Tree Boosting

4.4 K-médias

Algumas vezes não se sabe os rótulos dos objetos e o nosso objetivo é atribuir rótulos
aos objetos. Esta tarefa é denominada análise de agrupamento (clustering).
Suponha que você deseja dividir todos os objetos em k grupos. Você pode selecionar k
pontos aleatóriamente do seu conjunto de dados e nomeá-los centros de grupos. Os grupos
de objetos são definidos por sua proximidade com algum centro de grupo. Então, os centros
dos grupos são atualizados e o processo se repete até que haja convergência.
K-médias é a técnica de agrupamento mais simples, mas também apresenta desvantagens.
Primeiro, você deve saber de antemão quantos grupos deve haver e geralmente é isto que
não sabemos. Segundo, os resultados dependem dos pontos inicialmente escolhidos e o
algoritmo não garante que iremos alcançar um mínimo global da função objetivo que o k-
médias tenta otimizar.
Há uma grande quantidade de métodos de agrupamento com vantagens e desvantagens.
Você pode aprender mais sobre eles na seção de leituras recomendadas.
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

4.5 Principal component analysis (PCA)

Você já se preparou para uma avaliação difícil em poucas horas? Você não tem como
lembrar de toda a informação, mas você quer maximizar a informação que você pode
lembrar no tempo disponível, como por exemplo, tentar aprender primeiro os teoremas que
são mais frequentes em avaliações anteriores.
Análise de Componentes Principais (principal component analysis, PCA) é baseado na
mesma ideia. Este algoritmo provê redução de dimensionalidade. Algumas vezes você tem
uma grande quantidade de características, provavelmente muito correlacionadas entre si,
e os modelos podem facilmente serem sobreajustados em um grande conjunto de dados.
Neste cenário, aplica-se PCA.
PCA calcula a projeção dos dados em algum vetor que maximize a variança dos dados e
perca a menor quantidade de informação possível. Surpreendentemente, estes vetores são
os autovetores da matriz de correlação das características de um conjunto de dados.
O algoritmo é definido pelos seguintes passos:
Calcule a matriz de correlação das colunas de características (atributos) e encontre os
autovetores desta matriz.
Calcule a projeção de todas as características nos autovetores encontrados no passo
anterior.
Novas características são coordenadas de uma projeção e seu número depende do número
de autovetores, com os quais você calcula a projeção.

4.6 Redes Neurais

O grupo mencionou redes neurais antes, quando falávamos sobre regressão


logística. Há uma grande variedade de arquiteturas que são mais adequadas para tarefas
específicas. Muito frequentemente, é uma sequencia de camadas ou componentes com
conexão linear entre eles seguidos de não linearidades.
Se você trabalha com imagens, redes neurais convolutivas profundas apresentam ótimos
resultados. As não-linearidades são representadas pelas camadas de convolução e
pooling, capazes de capturar as características mais marcantes das imagens.
Para quem trabalha com texto e sequências, recomenda-se que escolham redes neurais
recorrentes (recurrent neural networks, RNN). RNN incluem os módulos LSTM ou GRU e
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

podem trabalhar com dados, quando a dimensionalide é conhecida a priori. Talvez, uma
das aplicações mais conhecidads das RNN é a tradução automática.

MÁQUINA DE APRENDIZAGEM POR MEIO DE EXEMPLOS

A figura 2 que se segue reprsenta a técnica de aprendizado por exemplos (Chekassky


& Mulier, 2007).

A função do gerador de exemplos é produzir vetores randômicos x, independente e


identicamente distribuídos e acordo com uma função de distribuição de probabilidade
P(x,y). Estes vectores seguem para o sistema, onde uma saida y é produzida para todo
vector x de entrada de acordo a uma densidade condicional p(y | x). Então sempre são
gerados pares (x,y), onde x é um vector ∈ Rn e y é um númreo ∈ R. A máquina de
aprendizado baseia-se em m pares (x1, y1), (x2, y2),..., (xn, ym) para construir uma função
𝑓 ∈ 𝐹, onde 𝐹, é o conjuno de todas as funções (classificadores) que um determinado
algoritmo de Aprendizado de Máquina pode gerar. Esta função possui a forma 𝑑= 𝑓(x,∝),
onde o vector x não pertence ao conjunto inicial de treinamento, mas é originado da mesma
distribuição de probabilidade, e 𝑑 é o valor associado a ele. Por fim, ∝ é um conjunto de
parâmetros ajustáveis da função. Logo após o aprendizado, o conjunto de parâmetros do
estimador mantém-se constante, razão pela qual é comum substituir a notação 𝑓(x,∝) por
𝑓(x). Então, a função da máquina de aprendizado é seleccionar uma função (de um
conjunto de funções que ela suporta) que melhor aproxima a resposta do sistema. Vapnik
(Vapnik, 1998) considera que “O processo de aprendizado é um processo de escolher uma
função apropriada de um dado conjunto de funções”.

Gerador de x Sistema y
Exemplos a
s
a
a
x
Máquina de
Aprendizado 𝑑

Figura 2: Um modelo de máquina de aprendizado através de exemplos


Fonte: (Vapnik, 1998)
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

4.1 Capacidade de Generalização

Depois que a máquina de aprendizado é treinada, além de ter uma boa capacidade
de identificar a classe a que pertence cada instância, também deve ser capaz de classificar
correctamente outros conjuntos de objectos não vistos anteriormente. Esta é a definição de
capacidade de generalização. Conforme mostrado na secção passada, o processo de
aprendizagem supervisionada consiste em encontrar uma função, baseada nas instâncias
utilizadas para o treinamento, que busque a maximização da capacidade de generalização
do modelo gerado.

Caso existam ruídos no conjunto de treinamento, também chamados de outliers (exemplos


muito distintos dos demais presentes no conjunto de dados), a geração do modelo pode ser
prejudicada, levando ao aparecimento de um super-ajuste. O oposto de super-ajuste é sub-
ajuste (o classificador não é capaz de se ajustar até mesmo às instâncias utilizadas para
treinamento). Vejamos a seguir, uma ilustração destas situações nas figuras 2.1(a) e 2.1(b).
Um modelo que representa um compromisso entre as duas funções citadas, utilizando um
modelo de complexidade intermediária, com a qual selecciona a maioria dos pontos de
forma correcta, está ilustrado na figura 2.1(c).

Logo, deve-se evitar a geração de um modelo muito específico para o conjunto de


treinamento, pois os outlier podem ser levados em conta e, com isso, gerar o problema de
super ajuste.
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

5 Algumas aplicações da aprendizagem de máquina

O uso da aprendizagem de máquina abrangem desde jogos, passando pela detecção


de fraudes até a análise estatísticas da bolsa de valores. É utilizada para construir sistemas
como os do Netflix e Spotify que recomendam músicas e/ou vídeos aos usuários com base
no seu histórico de accesso, seus favoritos e outros dados, ou sistemas que encontram
todos os artigos de notícias similares em um determinado dia. Também pode ser usada
para categorizar páginas Web automaticamente conforme o gênero (desporto, economia,
política, bem-estar e por aí a diante) ou marcar mensagens de e-mail como spam. Os usos
da aprendizagem de máquina são mais números do que possamos abordar neste trabalho
e diversas abordagens de aprendizagem por máquina são utilizadas para solucionar os
mais diversos problemas.
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

6 Conclusão

As técnicas de aprendizado por meio de exemplos passaram por notáveis melhorias


nos últimos anos, mas o mais impressionante é como elas estão presentes de diversas
formas em nosso dia a dia. Pela flexibilidade desses algoritmos com funcionamento
baseado em informações estatísticas, eles estão sendo utilizados para muitas finalidades,
inclusive algumas menos óbvias que as citadas neste trabalho.
Para identificar qual tipo de abordagem de machine learning é mais adequada a cada
situação é preciso entender muito bem a pergunta que busca-se resolver e manter sempre
o foco em gerar valor com as análises.

O método não é o fim, mas sim um meio.

Questões filosóficas à parte, as tecnologias de IA me parecem muito limitadas no atual


estágio para que nos preocupemos com uma versão real de Matrix. Entretanto, isso não
significa que não devemos nos preocupar com a disseminação do aprendizado de máquina
por meio de exemplos e outras áreas da Inteligência Artificial. Mas esse é um assunto que
fica para os próximos textos.

Concluindo, apesar de ser tentador discutir a dominação pelas máquinas e aprendizado por
meio de exemplos, esse é um problema a longo prazo. Acho que estamos preocupados até
demais com ele e menos do que deveríamos com os mais imediatos. Hoje e a curto prazo,
os possíveis problemas trazidos pela IA são menos apocalípticos.
I Seminário do Programa de Inteligência Artificial - Aprendizagem por meio de exemplos:
Aprendigem supervisionada e não supervisionada

6 REFERÊNCIAS BIBLIOGRÁFICAS

Mitchell, T. M. (1997). Machine learning. New York: McGraw-Hill.


Introduction to Machine Learning with R: Rigorous Mathematical Analysis, O'Reilly Media.
2018.
Data Science for Business: What You Need to Know about Data Mining and Data-Analytic
Thinking, O'Reilly Media. 2013
GABRIEL, Arruda. Inteligência Artificial: O que é aprendizado de máquina?
Disponível em:
<https://manualdousuario.net/inteligencia-artificial-aprendizado-de-maquina>
Acessado em: 15/05/2019

PEDRO, Barros. Aprendizagem de Máquina: Supervisionada ou não supervisionada?


Disponível em:<https://medium.com/opensanca/aprendizagem-de-maquina-
supervisionada-ou-n%C3%A3o-supervisionada-7d01f78cd80a > Acessado em:
13/05/2019

PEDRO, Barros. Aprendizagem de Máquina: Supervisionada ou não supervisionada?


Disponível em:<https://medium.com/opensanca/aprendizagem-de-maquina-
supervisionada-ou-n%C3%A3o-supervisionada-7d01f78cd80a > Acessado em:
13/05/2019

PEDRO, Barros. Aprendizagem de Máquina: Supervisionada ou não supervisionada?


Disponível em:<https://medium.com/opensanca/aprendizagem-de-maquina-
supervisionada-ou-n%C3%A3o-supervisionada-7d01f78cd80a > Acessado em:
13/05/2019

JOSENILDO, Costa da Silva. Algoritmos de Aprendizagem de máquina: qual deles


escolher? – Um guia rápido sobre vários algoritmos em diferentes tarefas de aprendizagem
Disponível em:<https://medium.com/machina-sapiens/algoritmos-de-aprendizagem-de-
m%C3%A1quina-qual-deles-escolher-67040ad68737> Acessado em: 15/05/2019
HUGO, Leonardo Pereira Rufino. Algoritmo de Aprendizado Supervisionado – Baseado
em máquinas de Vectores de Suporte – Uma Contribuição Para o Reconhecimento de
Dados Desbalanceados. 2011
RUSSEL, Stuart; NORVIG, Peter. Inteligência Artificial- 2011

Вам также может понравиться