Академический Документы
Профессиональный Документы
Культура Документы
Herculano Manuel
ISPTEC – Instituto Superior Politécnico De Tecnologias e Ciências, Departamento de Engenharias
e Tecnologias
leta541@gmail.com
Resumo
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
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
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?
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.
6. Metas que descrevem classes de estados cuja realização maximiza a utilidade do agente.
• 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.
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.
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.
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
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:
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
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.
Exemplo 1:
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
Exemplo 3:
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.
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.
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.
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 .
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.
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
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.
podem trabalhar com dados, quando a dimensionalide é conhecida a priori. Talvez, uma
das aplicações mais conhecidads das RNN é a tradução automática.
Gerador de x Sistema y
Exemplos a
s
a
a
x
Máquina de
Aprendizado 𝑑
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.
6 Conclusão
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