Geometric Deep Learning (GDL)
O aprendizado profundo geométrico (GDL) incorpora as simetrias de grades, grafos, malhas e nuvens de pontos às redes neurais, unificando CNNs, GNNs e Transformers.
A aprendizagem profunda geométrica (GDL) é o ramo da aprendizagem profunda que concebe redes neurais em torno da estrutura e das simetrias dos dados, quer estes estejam numa grelha de píxeis, num grafo, num conjunto de pontos, numa esfera ou numa superfície curva. A ideia central é que um modelo deve responder de forma previsível quando a entrada muda de uma maneira que não altera o seu significado, como deslocar uma imagem, mudar os rótulos dos átomos de uma molécula ou rodar uma digitalização 3D. Michael Bronstein, Joan Bruna, Yann LeCun, Arthur Szlam e Pierre Vandergheynst popularizaram o nome no levantamento de 2017 Geometric Deep Learning: Going Beyond Euclidean Data, e o proto-livro de 2021, de Bronstein, Bruna, Taco Cohen e Petar Veličković, organizou a área em torno de cinco domínios: grelhas, grupos, grafos, geodésicas e referenciais.
Invariância, equivariância e o modelo de GDL#
Duas propriedades fazem a maior parte do trabalho. Uma função é invariante a uma transformação quando a sua saída permanece igual, como o rótulo de classificação de imagens deve continuar a ser «gato» quando o gato se move. É equivariante quando a sua saída se transforma junto com a entrada, como uma máscara de segmentação semântica deve acompanhar o movimento do objeto. O modelo de GDL empilha camadas equivariantes que misturam informações entre vizinhos, etapas de pooling que tornam o domínio mais grosseiro e uma leitura final invariante quando a tarefa exige uma única resposta. A escolha do grupo de simetria do domínio recupera arquiteturas conhecidas:
A convolução partilha um único kernel entre todas as posições de píxeis, por isso uma rede neural convolucional (CNN) é o caso equivariante a translações numa grelha. Uma rede neural de grafos (GNN) aplica a mesma função ao longo de cada aresta, por isso mudar os rótulos dos nós apenas reordena as suas saídas. Um transformer trata os seus tokens como um grafo totalmente ligado e, como a autoatenção é equivariante a permutações, precisa de codificações posicionais para conhecer a ordem dos tokens. As GNNs são os modelos de GDL mais conhecidos, e a GDL é o enquadramento mais amplo que explica os três. As CNNs equivariantes a grupos, introduzidas por Taco Cohen e Max Welling em 2016, estendem a partilha de pesos a rotações e reflexões; as redes para malhas e variedades definem convoluções em referenciais locais de superfícies curvas.
O Ultralytics YOLO26 é o caso de grelha: as suas convoluções partilham pesos entre posições de píxeis, e as simetrias que a arquitetura não incorpora são ensinadas por meio de aumento de dados. Por predefinição, o treino espelha cada imagem horizontalmente com probabilidade fliplr=0.5, enquanto as inversões verticais (flipud) e rotações aleatórias (degrees) ficam desativadas.
Passagem de mensagens em grafos#
Os modelos de grafos em GDL são construídos com passagem de mensagens. Cada nó recolhe mensagens dos seus vizinhos, combina-as com uma função independente da ordem, como soma, média ou máximo, e atualiza o seu próprio embedding. Em 2017, Justin Gilmer e colegas da Google mostraram que muitas arquiteturas de grafos se enquadram neste esquema de passagem de mensagens e usaram-no para prever propriedades da química quântica de moléculas. Alterar os rótulos dos nós de um pequeno grafo permite verificar diretamente as duas propriedades de simetria:
import torch
torch.manual_seed(0)
nodes = torch.randn(5, 3) # 5 átomos ou utilizadores, 3 características cada
adjacency = torch.zeros(5, 5)
edges = torch.tensor([[0, 1], [1, 2], [0, 2], [2, 3], [3, 4]])
adjacency[edges[:, 0], edges[:, 1]] = adjacency[edges[:, 1], edges[:, 0]] = 1
w_self, w_neighbors, w_dense = torch.randn(3, 4), torch.randn(3, 4), torch.randn(15, 4)
# Altera aleatoriamente a ordem dos nós: o mesmo grafo, apresentado de outra forma
order = torch.randperm(5)
nodes_p, adjacency_p = nodes[order], adjacency[order][:, order]
# Passagem de mensagens: cada nó combina as próprias características com a soma das dos seus vizinhos
out = torch.relu(nodes @ w_self + adjacency @ nodes @ w_neighbors)
out_p = torch.relu(nodes_p @ w_self + adjacency_p @ nodes_p @ w_neighbors)
print(torch.allclose(out_p, out[order])) # equivariante: as saídas são reordenadas junto com os nós
print(torch.allclose(out_p.sum(dim=0), out.sum(dim=0))) # invariante: a leitura ao nível do grafo não muda
# Uma camada densa sobre a lista de nós achatada trata o grafo reordenado como dados novos
print(torch.allclose(nodes_p.flatten() @ w_dense, nodes.flatten() @ w_dense))Imprime True, True e False. A saída da camada de passagem de mensagens é reordenada exatamente junto com os nós, a leitura somada ao nível do grafo não muda e uma camada densa comum dá uma resposta diferente para o mesmo grafo apresentado noutra ordem. O PyTorch Geometric reúne dezenas destas camadas e funcionalidades de agrupamento em lotes para grafos de diferentes tamanhos.
Aplicações#
As moléculas são grafos de átomos e ligações, por isso as redes de passagem de mensagens preveem propriedades como solubilidade e ligação para a descoberta de medicamentos. As proteínas acrescentam geometria 3D: o AlphaFold 2 refina as estruturas previstas com atenção a pontos invariantes, que produz o mesmo resultado quando a proteína inteira é rodada ou transladada no espaço.
Os sensores LiDAR e de profundidade produzem nuvens de pontos, conjuntos não ordenados de pontos 3D. O PointNet, criado por Charles Qi e colegas de Stanford em 2017, aplica uma única rede partilhada a cada ponto e agrega os resultados com max-pooling, por isso a saída não depende da ordem dos pontos; este projeto está na base de muitos sistemas de deteção de objetos 3D para veículos autónomos e robótica. Grafos sociais e comerciais de utilizadores e itens impulsionam sistemas de recomendação baseados em GNN, como o PinSage da Pinterest, e os grafos de conhecimento aplicam a mesma passagem de mensagens a entidades e às suas relações.
Os modelos meteorológicos operam na esfera. O GraphCast, publicado pela Google DeepMind na Science em 2023, passa mensagens por uma malha multiescala construída ao refinar um icosaedro em torno do globo e prevê centenas de variáveis com 10 dias de antecedência, a uma resolução de 0,25°, em menos de um minuto. Supera a principal previsão determinística operacional, o HRES do ECMWF, em 90% dos 1.380 alvos de verificação.










