Pular para o conteúdo principal

SBBD 2021- Tutorial - Aprendizado de Máquina e Grafos

Introdução

Linguagem Geral (ou Modelo)? Linguagem de Modelagem

Foco na generalização e relacionamentos entre instâncias de dados. 

Tarefas podem ser realizadas em diferentes escalas, níveis: nó, relação, comunidade, grafo completo

Features extraídas estatisticamente como o grau.

Matriz de Adjacência é esparsa, Multigrafos, Conectividade de Grafos

ML:acurácia é a proporção de exemplo que o modelo classifica corretamente. Entrada é um vetor de features e saída podem ser rótulos de classes, um indicador de regressão,o cluster que pertencem ou um vetor latente de representação. Objetivo é minimizar o erro empírico (função de custo) de classificação (usar L1, L2, Entropia Cruzada ...), pode ser usado o Gradiente Descendente para otimizar a função de custo. 

Redes neurais: feed foward cada camada está conectada a camada seguinte, redes convolucionais recebem a entrada em partes para achatar o vetor e gerar a predição

Machine Learning Tasks on Graphs

O grau do nó pode ser uma feature mas trata os vizinhos de modo igual. Medidas de centralidade capturam melhor o conceito de importância (eigenvector, betweeness, closeness). Coeficiente de clusterização conta o número de triângulos fechados (graphlets de 3 nós totalmente conectados) saindo de um nó. Graphlets são todos os sub-grafos possíveis de tamanho até x, onde x é no máximo n-1.

Similaridade entre nós pode estar relacionado com a probabilidade de haver uma aresta entre eles. Tarefas de predição de Links. Essa similaridade pode ser calculada com shortest-path (feature baseada em distância) ou sobreposição local/global de vizinhos (jaccard). Separar as arestas de treinamento e testes do grafo. Em métodos locais, se os nós não tiverem vizinhos em comum então a similaridade é zero. Métodos globais não tem essa característica. 

Features a nível de grafos: métodos kernel. Usar Bag of Nodes e agregar as estatísticas dos nós. Contar os graphlets. Essas features não são completamente independentes e agrupar pode gerar problemas ao serem usados em algoritmos de ML.

Embeddings de Nós: Encoder -> Decoder. A similaridade entre os embeddings podem regerar a própria matriz de adjacências. 

Abordagem tradicional: Shallow embeddings ... uma coluna por nó (vetor) na matriz de embeddings. A matriz é d x |V| , onde d é a dimensão do vetor. 

Decoder: Método de Fatorização da Matriz como o produto interno entre os vetores.

Decoder: Random Walk para identificar nós que co-ocorrem em caminhos aleatórios de tamanho t. DeepWalk e node2vec (BFS ou DFS)

É possível usar Redes Neurais para gerar os embeddings: Deep Autoencoders

- Cada nó tem uma representação de ALTA dimensionalidade na entrada, a dimensão do vetor é |V| -> isso é um problema, e o vetor é esparso

Taxonomia de Técnicas para Graph Embeddings (imagem importante) ... artigo 2018 "A Comprehensive Survey of Graph Emebddings ....

Shallow não compartilham informações entre nós, requerem que seja retreinado caso incluam novos nós ou arestas, 

GNN

2020 A Comprehensive Survey on Graph Neural ... 

Redes são mais complexas que imagem e texto para serem inputados em uma rede neural

Cada camada na rede de convolução faz a informação de um nó se propagar aos seus vizinhos. 

A agregação de vizinhança é análogo ao pooling de redes convolucionais convencionais. A diferença entre os métodos está justamente no pooling e update. 

Split do grafo em Treinamento, Validação e Teste: esconder o label dos nós do processo de treinamento para classificação de nós

Split do grafo em Treinamento, Validação e Teste: remover arestas do processo de treinamento para predição de links

Quais são as limitações dessas abordagens: over-smoothing e over-squashing 

Pesquisas

Embeddings de Grafos Dinâmicos

Bibliotecas e GraphDBs

AliGraph é do Alibaba




Comentários

Postagens mais visitadas deste blog

Aprendizado de Máquina Relacional

 Extraído de -> https://www.lncc.br/~ziviani/papers/Texto-MC1-SBBD2019.pdf   Aprendizado de máquina relacional (AMR) destina-se à criação de modelos estatísticos para dados relacionais (seria o mesmo que dados conectados) , isto é, dados cuja a informação relacional é tão ou mais impor tante que a informação individual (atributos) de cada elemento.    Essa classe de aprendizado tem sido utilizada em diversas aplicações, por exemplo, na extração de informação de dados não estruturados [Zhang et al. 2016] e na modelagem de linguagem natural [Vu et al. 2018].   A adoção de técnicas de aprendizado de máquina relacional em tarefas de comple mentação de grafo de conhecimento se baseia na premissa de existência de regularidades semânticas presentes no mesmo . Modelos grafos probabilísticos  Baseada em regras / heurísticas que não podem garantir 100% de precisão no resultado da inferência mas os resultados podem ser explicados. Modelos de características de ...

Defesa de Doutorado de Grettel Monteagudo Garcia

A última atividade presencial que fiz na PUC-Rio foi assistir a defesa de tese da Grettel Monteagudo Garcia , em 13/03/2020 (uma sexta-feira 13 !!!!). O título da tese é “ A Keyword-based Query Processing Method for Datasets with Schemas ” e me interessou por causa do projeto do NIMA. A proposta parte do cenário onde usuários possam consultar dados, armazenados em bancos de dados relacionais e TripleStores, de maneira semelhante ao Google, ou seja, digitando palavras-chave, e deixando para o sistema recuperar os dados que melhor correspondem ao conjunto de palavras-chave.  Na tese estão descritos um algoritmo e um framework projetados para processar consultas baseadas em palavras-chave para bases de dados com esquema, especificamente bancos relacionais e bases de dados em RDF. A primeira etapa do algoritmo é a conversão do conjunto de palavras chaves em uma consulta abstrata explorando um esquema abstrato . Nesta etapa o principal desafio é achar onde a informação está (os matches...

Metodologia Científica II - continuação

No primeiro post  foram detalhados os 6 primeiros vídeos do canal do Youtube do professor Eduardo Ogasawara do CEFET/RJ   Mais 3 vídeos foram disponibilizados e estão comentados a seguir: Gráficos, Figuras e Tabelas (33 minutos) - como apresentar os resultados das avaliações experimentais. Gráficos: associar análises dos resultados a cada gráfico apresentado, problemas comuns na montagem de gráficos (não usar todo eixo X ou Y, não usar área útil com uma escala adequada a ver o comportamento dos números, não marcar os pontos de observação da série, inconsistência no uso de cores ), escala logarítmica x linear, eixo X para a variável independente e Y para a dependente (resposta), escrever boas legendas para os gráficos, observar se diferenças entre variáveis apresentadas em gráficos separados podem atrapalhar a interpretação dos resultados. Diagramas devem ser pensados de acordo com o propósito, trata-se de uma abstração e cada elemento deve ser explicado no texto, rótulos...