AprendizagemAutomáticaMestrado  em Engenharia Informática
SumárioAprendizagem Não Supervisionada11-10-2010Aprendizagem Automática / Machine Learning2
Tipos de Aprendizagem (revisão)ProcuraDado um espaço de soluções, procurar a melhor (ou uma aceitável)Aprendizagem por ReforçoInteragir com um ambiente e descobrir qual a melhor acção para cada estadoAprendizagem Não supervisionadaDados vários padrões descobrir semelhanças entre eles, agrupá-losReduzir número de atributos consideradosAprendizagem SupervisionadaSabendo o que se passou no passado, prever o que se segueInduzir uma regra dados exemplos 11-10-2010Aprendizagem Automática / Machine Learning3
Aprendizagem Não-Supervisionada11-10-2010Aprendizagem Automática / Machine Learning4Como agrupar padrões e criar classes?
Redução de dimensionalidadeMaior facilidade na recolha de informaçãoModelos mais simples e rápidos (algoritmos seguintes)Mais fácil de entender a solução (análise e visualização)11-10-2010Aprendizagem Automática / Machine Learning5
Análise de componentes principais (Principal ComponentsAnalysis)Encontrar o sub-espaço, de dimensão menor que maximiza a variância dos dados (os dados ficam "eapalhados" por uma maior superfície).
Análise de componentes principaisSubstituição de 2 dimensões por uma combinação linear de ambas (dados a 1 dimensão)
Análise de componentes principaisCalculando a os valores próprios da matriz de covariância e seleccionando a base com os maiores valores próprios associados (para conjuntos grandes: demorado e sujeito a problemas de arredondamentos)... ou por métodos iterativos
Agrupamento (Clustering)Agrupar dados em conjuntos de modo a minimizar a distância entre membros do mesmo conjuntoDividir conjuntos em N blocos / regiões11-10-2010Aprendizagem Automática / Machine Learning9
Aprendizagem Competitiva[RumelhartandZipser 85]Criar N representantes ao acasoPara cada exemplo:Calcular o representante mais próximo“Aproximar” o representante do exemplo (só um pouco)Enquanto os representantes “mudarem muito de posição” do início para o fim da “época”, voltar ao ponto 2 (ou número fixo de épocas).…11-10-2010Aprendizagem Automática / Machine Learning10*Termo usado para designar um sub-grupo dos algoritmos de aprendizagem não-supervisionada
K-Means[Loyd 57]Parte de um conjunto de entrada X = {x1, x2, x3, … xn}Distribui aleatoriamente K representantes, cada xi “pertence” ao conjunto associado ao representante mais próximoActualiza as posições de todos os representantes para o centro do conjunto que representamRedistribui os exemplos de modo a que cada xi “pertence” ao conjunto associado ao representante mais próximoVolta ao passo 3 até estabilizar os conjuntos / representantes11-10-2010Aprendizagem Automática / Machine Learning11
OnlineK-MeansSeja X = {x1, x2, x3, … xn} o conjunto de exemplosE c1, c2, … cm (n >> m) os representantes (inicializados aleatoriamente)Para cada exemplo (xi):Calcular distância (1)Seleccionar o centro mais próximo: ck (2)Aproximar ck de xi (3)Enquanto  mudar (4)11-10-2010Aprendizagem Automática / Machine Learning12
OnlineK-Means11-10-2010Aprendizagem Automática / Machine Learning13(1)* distância(2) mais próximo(3) aproximar(4) paragem* Podem ser usadas outras medidas de distância (por exemplo nº de atributos diferentes)
AdaptiveRessonanceTheory[Carpenter, Grosseberg 88]Semelhante ao onlineK-Means, mas, incremental:Quando um exemplo está "demasiado longe" de um representante é criada uma nova classe11-10-2010Aprendizagem Automática / Machine Learning14
Mapas Topológicos, Self-Organizing Maps [Kohonen 90]Semelhante à aprendizagem competitiva, mas:Cada classe tem um conjunto de vizinhos,Os vizinhos são alterados progressivamente menos de acordo com a distância11-10-2010Aprendizagem Automática / Machine Learning15
Mapas Topológicos11-10-2010Aprendizagem Automática / Machine Learning16
Classificação não-supervisionadaDendrograma (dendro = árvore)DadosDistância proporcional ao número de atributos diferentes6 classes4 classes3 classes2 classesImagens: Dendrogram. (2008, August 19). In Wikipedia, The Free Encyclopedia. Retrieved 12:30, September 16, 2008, from http://en.wikipedia.org/w/index.php?title=Dendrogram&oldid=232979561
Classificação por agrupamentoNormalmente aplicado a conjuntos com atributos discretosSinglelink: distância entre conjuntos é a menor das distâncias entre os seus elementosComplete link: distância entre conjuntos é a maior das distâncias entre os seus elementos
COBWEB [Fisher 87]Conjuntos com atributos discretosPara cada novo exemplo (ponto) pode:Inserir numa classe existente(simula inserção em todas e calcula a utilidade);Criar uma nova classe(simula a criação de uma nova classe apenas com o novo exemplo);Combinar duas classes(simula a combinação das duas classes com maior utilidade para o novo exemplo);Dividir uma classe(simula retirar o nó imediatamente acima do ponto de inserção do novo exemplo);
COBWEB [Fisher 87]Utilidade de categoriaMinimiza o número de atributos necessário para determinar de que classe é um exemplo… ou …Maximiza o número de atributos que pode ser previsto para os elementos de cada classe.Cada atributo (i), todos os valores possíveis (j)Todas as categorias (l)Utilidade diminui com o aumento do número de classes
UtilizaçãoAprendizagem Não Supervisionada: procura de padrões em dados sem etiquetas;No Pré-processamento de dados: É (quase) sempre necessário/útilAprendizagem Competitiva: Raramente usada, mas é base de outros algoritmos;Mapas Topológicos: Quando há relações entre as classes;K-Means: Quando sabemos distribuições que geraram dos dados;PCA: Redução da dimensão dos dados, perdendo o mínimo de informação possível;Conceptual Clustering (CobWeb e outros): Quando o conceito a gerar e as relações entre aglomerados são fundamentais na análise e a semelhança entre padrões obedece a regras complexas.
(Mitchell 97) Tom Mitchell, "MachineLearning", McGrawHill, 1997, capítulos 2, 3 e 8R. 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-base22AA/ML, Luís Nunes, DCTI/ISCTE

Aprendizagem Não-Supervisionada

  • 1.
    AprendizagemAutomáticaMestrado emEngenharia Informática
  • 2.
  • 3.
    Tipos de Aprendizagem(revisão)ProcuraDado um espaço de soluções, procurar a melhor (ou uma aceitável)Aprendizagem por ReforçoInteragir com um ambiente e descobrir qual a melhor acção para cada estadoAprendizagem Não supervisionadaDados vários padrões descobrir semelhanças entre eles, agrupá-losReduzir número de atributos consideradosAprendizagem SupervisionadaSabendo o que se passou no passado, prever o que se segueInduzir uma regra dados exemplos 11-10-2010Aprendizagem Automática / Machine Learning3
  • 4.
    Aprendizagem Não-Supervisionada11-10-2010Aprendizagem Automática/ Machine Learning4Como agrupar padrões e criar classes?
  • 5.
    Redução de dimensionalidadeMaiorfacilidade na recolha de informaçãoModelos mais simples e rápidos (algoritmos seguintes)Mais fácil de entender a solução (análise e visualização)11-10-2010Aprendizagem Automática / Machine Learning5
  • 6.
    Análise de componentesprincipais (Principal ComponentsAnalysis)Encontrar o sub-espaço, de dimensão menor que maximiza a variância dos dados (os dados ficam "eapalhados" por uma maior superfície).
  • 7.
    Análise de componentesprincipaisSubstituição de 2 dimensões por uma combinação linear de ambas (dados a 1 dimensão)
  • 8.
    Análise de componentesprincipaisCalculando a os valores próprios da matriz de covariância e seleccionando a base com os maiores valores próprios associados (para conjuntos grandes: demorado e sujeito a problemas de arredondamentos)... ou por métodos iterativos
  • 9.
    Agrupamento (Clustering)Agrupar dadosem conjuntos de modo a minimizar a distância entre membros do mesmo conjuntoDividir conjuntos em N blocos / regiões11-10-2010Aprendizagem Automática / Machine Learning9
  • 10.
    Aprendizagem Competitiva[RumelhartandZipser 85]CriarN representantes ao acasoPara cada exemplo:Calcular o representante mais próximo“Aproximar” o representante do exemplo (só um pouco)Enquanto os representantes “mudarem muito de posição” do início para o fim da “época”, voltar ao ponto 2 (ou número fixo de épocas).…11-10-2010Aprendizagem Automática / Machine Learning10*Termo usado para designar um sub-grupo dos algoritmos de aprendizagem não-supervisionada
  • 11.
    K-Means[Loyd 57]Parte deum conjunto de entrada X = {x1, x2, x3, … xn}Distribui aleatoriamente K representantes, cada xi “pertence” ao conjunto associado ao representante mais próximoActualiza as posições de todos os representantes para o centro do conjunto que representamRedistribui os exemplos de modo a que cada xi “pertence” ao conjunto associado ao representante mais próximoVolta ao passo 3 até estabilizar os conjuntos / representantes11-10-2010Aprendizagem Automática / Machine Learning11
  • 12.
    OnlineK-MeansSeja X ={x1, x2, x3, … xn} o conjunto de exemplosE c1, c2, … cm (n >> m) os representantes (inicializados aleatoriamente)Para cada exemplo (xi):Calcular distância (1)Seleccionar o centro mais próximo: ck (2)Aproximar ck de xi (3)Enquanto mudar (4)11-10-2010Aprendizagem Automática / Machine Learning12
  • 13.
    OnlineK-Means11-10-2010Aprendizagem Automática /Machine Learning13(1)* distância(2) mais próximo(3) aproximar(4) paragem* Podem ser usadas outras medidas de distância (por exemplo nº de atributos diferentes)
  • 14.
    AdaptiveRessonanceTheory[Carpenter, Grosseberg 88]Semelhanteao onlineK-Means, mas, incremental:Quando um exemplo está "demasiado longe" de um representante é criada uma nova classe11-10-2010Aprendizagem Automática / Machine Learning14
  • 15.
    Mapas Topológicos, Self-OrganizingMaps [Kohonen 90]Semelhante à aprendizagem competitiva, mas:Cada classe tem um conjunto de vizinhos,Os vizinhos são alterados progressivamente menos de acordo com a distância11-10-2010Aprendizagem Automática / Machine Learning15
  • 16.
  • 17.
    Classificação não-supervisionadaDendrograma (dendro= árvore)DadosDistância proporcional ao número de atributos diferentes6 classes4 classes3 classes2 classesImagens: Dendrogram. (2008, August 19). In Wikipedia, The Free Encyclopedia. Retrieved 12:30, September 16, 2008, from http://en.wikipedia.org/w/index.php?title=Dendrogram&oldid=232979561
  • 18.
    Classificação por agrupamentoNormalmenteaplicado a conjuntos com atributos discretosSinglelink: distância entre conjuntos é a menor das distâncias entre os seus elementosComplete link: distância entre conjuntos é a maior das distâncias entre os seus elementos
  • 19.
    COBWEB [Fisher 87]Conjuntoscom atributos discretosPara cada novo exemplo (ponto) pode:Inserir numa classe existente(simula inserção em todas e calcula a utilidade);Criar uma nova classe(simula a criação de uma nova classe apenas com o novo exemplo);Combinar duas classes(simula a combinação das duas classes com maior utilidade para o novo exemplo);Dividir uma classe(simula retirar o nó imediatamente acima do ponto de inserção do novo exemplo);
  • 20.
    COBWEB [Fisher 87]Utilidadede categoriaMinimiza o número de atributos necessário para determinar de que classe é um exemplo… ou …Maximiza o número de atributos que pode ser previsto para os elementos de cada classe.Cada atributo (i), todos os valores possíveis (j)Todas as categorias (l)Utilidade diminui com o aumento do número de classes
  • 21.
    UtilizaçãoAprendizagem Não Supervisionada:procura de padrões em dados sem etiquetas;No Pré-processamento de dados: É (quase) sempre necessário/útilAprendizagem Competitiva: Raramente usada, mas é base de outros algoritmos;Mapas Topológicos: Quando há relações entre as classes;K-Means: Quando sabemos distribuições que geraram dos dados;PCA: Redução da dimensão dos dados, perdendo o mínimo de informação possível;Conceptual Clustering (CobWeb e outros): Quando o conceito a gerar e as relações entre aglomerados são fundamentais na análise e a semelhança entre padrões obedece a regras complexas.
  • 22.
    (Mitchell 97) TomMitchell, "MachineLearning", McGrawHill, 1997, capítulos 2, 3 e 8R. 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-base22AA/ML, Luís Nunes, DCTI/ISCTE
  • 23.
    ReferênciasSome CompetitiveLearningMethods, BerndFritzke,SystemsBiophysicsInstitute for Neural Computation, Ruhr-UniversitätBochum, 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, LastsquarequantizationinPCM’s. BellTelephoneLaboratoriesPaper (1957). Publishedinjournalmuchlater: S. P. Lloyd. Leastsquaresquantizationin PCM. Specialissueonquantization, IEEE Trans. Inform. Theory, 28:129–137, 1982. WEBSOM PublicationsBilmes, 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. RumelhartD. Zipser, Pub. MIT Press   Cambridge, MA, USA Jonathon Shlens, A Tutorial on Principal Component Analysis, Systems Neurobiology Laboratory, Salk Insitute for Biological Studies, 2005G. A. Carpenter, S. Grosseberg, "The ART of Adaptive Pattern Recognition by Self-Organizing Neural Network", IEEE Computer 21(3), 77-88.
  • 24.