Self-Organizing Maps
Conceito e Aplicações
Prof. Dr. Denis M. L. Martins
DCM | FFCLRP | USP

top-right

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Sobre mim

  • Engenheiro da Computação pela Universidade de Pernambuco (UPE)
  • Doutorado na Universidade de Münster (Alemanha)
  • Eng. de Software na Stefanini
  • Pesquisador Sênior em IA na Samsung Research Brazil
  • Professor na PUC-Campinas
  • Professor no DCM-USP

Especialidade: Ciência de Dados e IA

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Imagine que você tem milhares de dados: textos, imagens, embeddings de IA...


Como visualizar padrões escondidos em alta dimensão?

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Dados multidimensionais

Dados reais raramente vivem em 2D.

Precisamos de uma técnica que ajude a organizar o caos e;

  • dezenas de atributos;
  • centenas de variáveis;
  • milhares de dimensões;
  • relações não lineares;
  • grupos difíceis de interpretar.

Fonte da Imagem: https://unsplash.com/@sametkurtkus

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Inspiração biológica

No cérebro, estímulos semelhantes tendem a ativar regiões próximas do córtex.

  • Sons com frequências parecidas ativam áreas próximas no córtex auditivo.
  • Sartes vizinhas do corpo são representadas em regiões próximas no córtex somatossensorial.

Na imagem: Cerebral hemispheres (the cerebrum). Fonte: By David Handel, MD.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Self-Organizing Map (SOM)

Um Self-Organizing Map transforma dados complexos em um mapa bidimensional organizado.

Ele aprende uma grade de neurônios em que:

  • dados parecidos ficam próximos;
  • dados diferentes ficam distantes;
  • a topologia dos dados é parcialmente preservada.
Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Self-Organizing Map (SOM)

Pense em um mapa geográfico.

Cidades próximas no mapa tendem a estar próximas no mundo real.

No SOM:

  • cada neurônio é uma região do mapa;
  • cada dado é associado ao neurônio mais parecido;
  • regiões próximas representam padrões semelhantes.

Fonte da Imagem: Diego Vicente.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Self-Organizing Map (SOM): Definição

Um Self-Organizing Map é uma rede neural artificial não supervisionada proposta pelo finlandês Teuvo Kohonen.

  • Ela projeta dados de alta dimensão em uma grade geralmente 2D, preservando relações de vizinhança.
  • Formalmente, dado um vetor de entrada:
  • cada neurônio possui um vetor de pesos:

Fonte da Imagem: Wikipedia.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Self-Organizing Map (SOM)

center

Na imagem: (a) Exemplo de um SOM. (b) Example de um mapa topológico de neurônios no cérebro humano, correspondente ao córtex auditivo. Fonte: Marta Pedró et al.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Self-Organizing Map (SOM)

SOM aprende a preservar a topologia dos dados.

Ilustração do treinamento de SOM (grade) para se moldar à distribuição dos dados (em azul). Fonte da Imagem: Wikipedia.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Self-Organizing Map (SOM)

SOM aprende a preservar a topologia dos dados.

center

Exemplos de SOM em topologias (A) quadrada e (B) circular. Fonte da Imagem: https://gdetor.github.io/posts/som/.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Aplicações

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

SOM treinado com dados de qualidade de vida do Banco Mundial. Fonte: GeoInsights.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Qual o maior problema em depender apenas de aprendizado supervisionado tradicional?

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Por que não-supervisionado?

center

Dados anotados (labeled data) na área da Saúde são caros e difíceis de obter em larga escala. Fonte da Imagem: Macgence.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Por que não-supervisionado?

Escassez de Dados Rotulados: Obter dados rotulados é caro e demorado.

  • Generalização Limitada: Modelos treinados em datasets específicos podem ter dificuldades para generalizar para novos cenários.
  • Aprendizado Não-supervisionado: Aprender a estrutura inerente aos dados através de apenas.
Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

SOM: Estrutura Geral

  • Camada de Entrada (recebe dados de entrada ).
  • Camada de Saída com neurônios conectados em vizinhaça.
  • Pesos de Neurônios , com a mesma dimensionalidade de .

Fonte da Imagem: Naskath Jahangeer @ResearchGate

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

SOM: Treinamento

Passo 1: encontrar o BMU:

  • Para cada entrada, o SOM procura o neurônio mais parecido.
  • Esse neurônio é chamado de Best Matching Unit (BMU):

Ou seja: escolhemos o neurônio cujo vetor de pesos está mais próximo do dado.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

SOM: Treinamento (cont.)

Passo 2: atualizar o BMU e seus vizinhos

Depois de encontrar o BMU, atualizamos seus pesos e os pesos dos neurônios vizinhos.

Onde:

  • é a taxa de aprendizagem;
  • é a função de vizinhança;
  • é o BMU.

Quanto mais perto o neurônio está do BMU na grade, maior é sua atualização.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

SOM: Treinamento (cont.)

O SOM usa dois esquemas de decaimento para se estabilizar:

  1. Decaimento da taxa de aprendizagem:
    ou decaimento linear.

  2. Decaimento do raio de vizinhança:
    ou redução linear em etapas.

Se ou decaem rápido demais, o mapa fica preso em um mínimo local. Se decaem lentamente demais, o mapa nunca converge.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Aprendizagem ao longo do tempo

No início:

  • a vizinhança é grande;
  • muitos neurônios se movem juntos;
  • o mapa organiza sua estrutura global.

Depois:

  • a vizinhança diminui;
  • ajustes ficam mais locais;
  • o mapa refina detalhes.

Fonte da Imagem: https://bsd.neuroinf.jp.
Veja também o vídeo: Auto learning face images with Self Organizing Maps, by MITECH Corp.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Por que SOM?

O SOM combina três ideias poderosas:

  1. Redução de dimensionalidade
  2. Clusterização
  3. Visualização interpretável

Ele cria uma superfície organizada para explorar padrões.

Na imagem: Mapa de exploração para compra de dados. Fonte: Martins and Vossen. "Self-organizing maps for data purchase support in data marketplaces." ICCCI 2023.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Por que SOM?

Diferente do K-Means (que encontra centros), o SOM preserva relações de vizinhança.

  • Interpretabilidade: Você pode visualizar clusters e fronteiras diretamente no mapa 2D.
  • Relevância: Aplicações em Vetores Quantizados (VQ), Autoencoders e Detecção de Anomalias.

Fonte da Imagem: Wikipedia

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Avaliando o Mapa

Erro de quantização: mede o quanto os dados estão próximos de seus BMUs.

  • Quanto menor o valor, melhor o mapa representa os dados.

Erro topográfico: mede se o SOM preserva vizinhanças.

Onde se o primeiro e o segundo BMU não são vizinhos; caso contrário, .

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Visualizando o Mapa: U-Matrix

Uma visualização clássica do SOM é a U-Matrix.

Ela mostra distâncias entre neurônios vizinhos.

  • Valores baixos (vales): neurônios parecidos.
  • Valores altos (montanhas): fronteiras entre grupos.

Fonte da Imagem: StackOverflow.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Growing Neural Gas (GNG)

Problema com SOM: Grades fixas forçam os dados em formas retangulares.
Solução: GNG usa um grafo dinâmico de nós.

Regra de Atualização:

Com baseado na distância ao BMU no grafo, não índices da grade.

Fonte da imagem: Chris von Csefalvay.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Pesquisas Modernas: Deep SOMs

Integração com Deep Learning: gerar embeddings com uma rede profunda e treinar um SOM sobre os embeddings. Exemplo: SOM-CPC.

TopoNets: Vision-Language Models que preservam topologia (veja abaixo).

center

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Limitações e Desafios

Mesmo mapas inteligentes podem se perder quando o terreno é complexo demais.

  • Dados de alta dimensionalidade: o desempenho se degrada em dimensões muito altas (maldição da dimensionalidade).

    • Mitigação: realizar pré-processamento com PCA ou autoencoders.
  • Sensibilidade a parâmetros: escolher e não é trivial.

    • Mitigação: usar esquemas adaptativos ou busca de hiperparâmetros.
  • Escalabilidade: complexidade de por época, em que representa o número de amostras e o número de neurônios.

    • Mitigação: usar busca aproximada do vizinho mais próximo (Approximate Nearest Neighbor) para encontrar o BMU.
Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Ficou Interessado? Junte-se ao Nosso Time!

  • Problemas Abertos: Precisamos de ajuda para resolver questões de escalabilidade e eficiência.
  • Pesquisa Aplicada em Gerenciamento de Dados, Agricultura, Saúde, Direito, Pesquisa Operacional, Avaliação de Fornecedores em Cadeias de Suprimento...
  • Parcerias nacionais e interncionais.

Se você gosta de inteligência artificial, ciência de dados e resolver problemas complexos, então nosso time é o lugar certo para você.

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

Muito Obrigado!

Contato: martins.denis@usp.br

Site e GitHub: https://denmartins.github.io

Prof. Dr. Denis M. L. Martins | martins.denis@usp.br

![bg right:35% fit](https://upload.wikimedia.org/wikipedia/commons/3/35/TrainSOM.gif)