aprendizagem supervisionada i
TRANSCRIPT
Aprendizagem Automática
Mestrado em Engenharia Informática
13-04-2023 Aprendizagem Automática / Machine Learning
Sumário
Aprendizagem Supervisionada
2
13-04-2023 Aprendizagem Automática / Machine Learning
Tipos de Aprendizagem (revisão) Procura
Dado um espaço de soluções, procurar a melhor (ou uma aceitável)
Aprendizagem por Reforço
Interagir com um ambiente e descobrir qual a melhor acção para cada estado
Aprendizagem Não supervisionada
Dados vários padrões descobrir semelhanças entre eles, agrupá-los
Reduzir número de atributos considerados
Aprendizagem Supervisionada
Sabendo o que se passou no passado, prever o que se segue
Induzir uma regra dados exemplos
3
K-Nearest Neighbours (K-NN)
Descobrir os K padrões mais semelhantes ao que queremos classificar
Seleccionar uma classe de entre os padrões conhecidos (como? média? votação?)
Problemas: definir a distância, definir o modo de selecção, algumas dificuldades com problemas
não lineares
13-04-2023 Aprendizagem Automática / Machine Learning
Quantização Vectorial (Learning Vector Quantization)
Problema: Dada uma imagem representada com 16 milhões de cores, quais as melhores 256 cores a usar para perder o mínimo de qualidade?
Treino supervisionado para encontrar a melhor "capacidade de reconstrução de um conjunto específico de imagens"
Semelhante a online K-Means, ... mas o representante é aproximado se a classificação é correcta e afastado caso contrário)
Problemas: Definição de “semelhança” não é muito fiável quando há “ruído”
Usado com sucesso na compressão de dados e classificação de documentação.
5
13-04-2023 Aprendizagem Automática / Machine Learning
Aprendizagem Supervisionada Existe (no treino) o resultado esperado
para cada exemplo Ex: Dado um conjunto de letras escritas à
mão que foram identificadas por uma pessoa, criar um modelo para identificação de letras escritas à mão
Erro de classificação Quantas letras falhou no conjunto?
Erro médio As letras escolhidas por engano eram
"parecidas" com as desejadas?6
13-04-2023 Aprendizagem Automática / Machine Learning
ClassificaçãoConjunto positivo (geral)
1 < x
7
+
-
++
+ +
++
-
-
-
-
--
-
13-04-2023 Aprendizagem Automática / Machine Learning
Conjunto positivo (específico)
1 < x < 2 && 0 < y < 2
8
+
-
++
+ +
++
-
-
-
-
--
-
13-04-2023 Aprendizagem Automática / Machine Learning
Conjunto negativo
0 < x < 1 && 0 < y < 2
9
+
-
++
+ +
++
-
-
-
-
--
-
13-04-2023 Aprendizagem Automática / Machine Learning
Conjunto positivo
1 < x < 2 && 1 < y < 2 – mais específica
0.8 < x < 2.3 && 0.6 < y < 2.1 – mais geral
10
+-++
+++
+-
-
-
--
-
-
13-04-2023 Aprendizagem Automática / Machine Learning
Ruído?
Pode ser apenas um erro … ou não
11
+-++
+
+++
-
-
-
--
-
-
13-04-2023 Aprendizagem Automática / Machine Learning
Generalização e overfitting
Forma geral, … mas com erro
Forma sem erro, …mas muito
específica
12
+-++
+
+++
-
-
-
--
-
-
+-++
+
+++
-
-
-
--
-
-
Aprendizagem Supervisionada
Dado um conjunto de exemplos, será que é possível descobrir o padrão que os gera? Exemplo simples:
Exemplo Céu Temp. Humid Vento Mar Prev Sair?
1 Limpo Calor Normal Forte Quente Estável Sim
2 Limpo Calor Alta Forte Quente Estável Sim
3 Nublado Frio Alta Forte Quente Instável Não
4 Limpo Calor Alta Forte Frio Instável Sim
5 Chuva Frio Alta Forte Quente Instável ?
Valores
Valores possíveis, por atributo
Céu Temp Húmid. Vento Mar Prev
Limpo Calor Normal Forte Quente Estável
Nublado Frio Alta Fraco Frio Instável
Chuva
Pre-processamento
Discretizar, quantificar, normalizar …
Exemplo Céu Temp. Humid Vento Mar Prev Sair?
1 Limpo / 1 Calor / 1
Normal / 0
Forte / 1 Quente / 1
Estável / 1
Sim / 1
2 Limpo / 1 Calor / 1
Alta / 1 Forte / 1 Quente / 1
Estável / 1
Sim / 1
3 Nublado / 0.5 ? 2
Frio / 0 Alta / 1 Forte / 1 Quente / 1
Instável / 0
Não / 0
4 Limpo / 1 Calor / 1
Alta / 1 Forte / 1 Frio / 0 Instável / 0
Sim / 1
5 Chuva / 0 Frio / 0 Alta / 1 Forte / 1 Quente / 1
Instável / 0
?
Aprendizagem Supervisionada
Exemplo Céu Temp. Humid Vento Mar Prev Sair?
1 Limpo Calor Normal Forte Quente Estável Sim
2 Limpo Calor Normal Forte Quente Estável Sim
3 Nublado Frio Alta Forte Quente Instável Sim
4 Limpo Calor Alta Forte Frio Instável Não
5 Chuva Frio Alta Forte Quente Instável Não
6 Chuva Frio Alta Fraco Quente Instável Sim
Sair = (Previsão == Limpo E Humidade == Normal) OU (Previsão == Nublado) OU (Previsão == Chuva E Vento == Fraco)
Solução representável por uma condição lógica
Árvores de Decisão(Decision Trees)
Céu
Humidade
Vento
Limpo Nublado Chuva
Normal AltaForte Fraco
Sim
SimNãoSim Não
Sair = (Previsão == Limpo E Humidade == Normal) OU (Previsão == Nublado) OU (Previsão == Chuva E Vento == Fraco)
A cada nó está associado, durante o treino, o conjunto de exemplos que é classificado por este nó
Árvores de Decisão(Decision Trees)
Céu
Humidade
Vento
Limpo Nublado Chuva
Normal AltaForte Fraco
SimNãoSim Não
Vento
Forte Fraco
Sim Não
Decision Trees: Construção
Qual o atributo que melhor separa as instâncias numa decisão booleana?
Entropia(S) = - p+ log2 (p+) - p- log2 (p-)
S : Conjunto de exemplos de um conceito
p+ : Percentagem de exemplos positivos
p- : Percentagem de exemplos negativos
Decision Trees: Construção
Quanto mais equilibrado o conjunto (p+ = p-), maior a entropia, i.e. menor a probabilidade de prever de que classe é um exemplo tirado ao acaso.
Entropia
0
0,2
0,4
0,6
0,8
1
1,2
0,001 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 0,999
Percentagem +
Decision Trees: Construção
Entropia relativa à classificação em c partes, com base num atributo com c valores diferentes (pretende-se minimizar a entropia):
X : Conjunto de exemplos de um conceito (e.g. “Sair?”)
c: nº de valores possíveis para o conceito api : Percentagem de exemplos em que: a =
vi
c
iii ppXEntropia
1
)log()(
Ganho de informação
Ganho de informação de um atributo a em relação a um conjunto X:
v: valores possíveis para aXv: Subconjunto de X em que o valor
de a é igual a v|X|: nº de elementos de X
v
vv
X
XEntropiaXXEntropiaaXG
)()(),(
ID3
ID3(Exemplos, Atributo-Alvo, Atributos) Criar a raíz
▪ Se p+ = 1: raíz = +▪ Se p- = 1: raíz = -▪ Se Atributos = Ø, raíz = valor mais comum do alvo em exemplos
A <- Atributo que melhor classifica os exemplos de acordo com o ganho de informação
Raíz = A Para cada valor (v) possível de A:
▪ Adicionar novo ramo A = v▪ Exemplosv = Conjunto de exemplos em que A=v
▪ Se Exemplosv = Ø: adicionar ramo com valor mais comum do alvo em Exemplosv▪ senão ramo = ID3(Exemplosv, Atributo-Alvo, Atributos – {A})
C4.5/C5.0
Semelhante ao ID3, mas … Atributos contínuos: cria uma série de classes
para um atributo contínuo dividindo o seu domínio em partes [Quinlan, 96]
Permite a utilização quando há valores em falta: não são usados no cálculo da entropia.
Permite que os atributos tenham custos diferentes.
Remoção (a posteriori) de nós que não são úteis.
[Quinlan, 96] J. R. Quinlan. Improved use of continuous attributes in c4.5. Journal of Artificial Intelligence Research, 4:77-90, 1996.
(Mitchell 97) Tom Mitchell, "Machine Learning", McGraw Hill, 1997, capítulos 2, 3 e 8
R. Duda and P. Hart. Pattern Classification and Scene Analysis. Wiley & Sons, Inc, 1973.
"Self-Organizing Maps and Learning Vector Quantization for Feature Sequences", P. Somervuo and T. Kohonen, Neural Processing Letters, 10(2), 1999, pp. 151-159.
J.R. Quinlan, Induction of Decision Trees, Machine Learning, vol. 1, no. 1, pp. 81-106, 1986.
Giorgio Ingargiola, Building Classification Models: ID3 and C4.5, Computer and Information Science Department, Temple University, Philadelphia.
Referências-base
28AA/ML, Luís Nunes, DCTI/ISCTE
Referências
Some Competitive Learning Methods, Bernd Fritzke, Systems Biophysics Institute for Neural Computation, Ruhr-Universität Bochum, April 5, 1997
Hinton, G. E. and Salakhutdinov, R. R Reducing the dimensionality of data with neural networks. Science, Vol. 313. no. 5786, pp. 504 - 507, 28 July 2006.
S. Lloyd, Last square quantization in PCM’s. Bell Telephone Laboratories Paper (1957). Published in journal much later: S. P. Lloyd. Least squares quantization in PCM. Special issue on quantization, IEEE Trans. Inform. Theory, 28:129–137, 1982.
WEBSOM Publications Bilmes
, J. A Gentle Tutorial on the EM Algorithm and its Application to Parameter Estimation for Gaussian Mixture and Hidden Markov Models. Technical Report, University of Berkeley, ICSI-TR-97-021, 1997. http://citeseer.ist.psu.edu/bilmes98gentle.ht
[Rumelhart and Zipser 86] Feature discovery by competitive learning, in Mit Press Computational Models Of Cognition And Perception Series, Parallel distributed processing: explorations in the microstructure of cognition, vol. 1: foundations, pp.151 – 193, (1986), ISBN:0-262-68053-X Authors D. E. Rumelhart D. Zipser, Pub. MIT Press Cambridge, MA, USA
Jonathon Shlens, A Tutorial on Principal Component Analysis, Systems Neurobiology Laboratory, Salk Insitute for Biological Studies, 2005
13-04-2023 Aprendizagem Automática / Machine Learning
Sumário
Aprendizagem Supervisionada
30