Graph Convolutional Networks: Lista de aplicativos que você precisa conhecer

Publicados: 2020-11-24

Rede Convolucional é um tipo de Rede Neural. As redes neurais são um tipo especial de modelo de aprendizado profundo. Normalmente, o aprendizado de máquina ou aprendizado profundo compreende algoritmos rigorosos e caros devido à sua tarefa complicada. Da mesma forma, os modelos de aprendizado profundo em gráficos são ainda mais complicados. Redes Convolucionais de Gráficos são usadas principalmente para fins de classificação de imagens. Saiba mais sobre rede neural convolucional.

Ao longo da última década, a aplicação da ciência de dados aumentou enormemente. Nesse mundo rico em dados, a abordagem do modelo de aprendizagem trouxe ótimos resultados e previsões precisas. Os gráficos são úteis para muitos sistemas de informação.

Desde interações de proteínas biológicas até conectividade com a Internet e WorldWideWeb, os gráficos representam todos esses sistemas. Além disso, a implementação de redes neurais por meio de estrutura gráfica permite que o computador entenda as propriedades de uma imagem. Este modelo é uma das aplicações mais avançadas do mundo real do gráfico. Vamos discutir esses algoritmos em detalhes:

Índice

Como as redes neurais são construídas

As Redes Neurais são uma das técnicas mais avançadas de ciência de dados e aprendizado profundo. As Redes Neurais são úteis em muitas aplicações, desde a previsão do mercado de ações até a classificação de imagens, reconhecimento de fala ou caracteres e até mesmo na análise de sequências.

O primeiro conceito da Rede Neural veio de perspectivas biológicas. Os cientistas realizaram experimentos nos quais os nervos da visão estão conectados aos centros auditivos do cérebro. Eventualmente, o organismo aprendeu a ver também através do centro auditivo do cérebro. Mesmo outros experimentos provaram que cada centro do cérebro poderia realizar todas as ações.

As abordagens começaram a imitar o cérebro humano informando algoritmos de computador. Assim, da mesma forma, os cientistas da computação também pensaram que deveria haver um único algoritmo capaz de resolver todos os problemas de aprendizado do cérebro do computador. Foi assim que a rede neural nasceu.

Uma rede neural consiste em várias camadas de neurônios. Cada neurônio é tipicamente um nó gráfico. Cada neurônio de cada camada está conectado com todos os neurônios da próxima camada por meio de uma aresta ponderada – os pesos da aresta atuam como um coeficiente do cálculo do valor da camada.

Por meio da retropropagação, os coeficientes mudam para se adequar ao modelo com exemplos de treinamento de amostra. Em última análise, um único neurônio da última camada fornece a saída. Na imagem a seguir, a estrutura de uma rede neural é explicada.

Fonte da imagem

Leia: Usando Rede Neural Convolucional para Classificação de Imagens

Redes Convolucionais de Gráfico

Redes Convolucionais são redes neurais tridimensionais. A maioria dos usos práticos das Redes Neurais Convolucionais incluem classificação e reconhecimento de imagens, processamento de linguagem natural e reconhecimento de fala. Esses modelos são geralmente mais complexos do que os modelos de redes neurais bidimensionais usuais.

Nesta arquitetura, são montadas camadas de diferentes neurônios. O parâmetro de dimensões é variável em diferentes camadas para que o modelo reconheça os parâmetros. Por exemplo, as imagens são bidimensionais e, entretanto, a cor de cada ponto também desempenha um papel crucial. Assim, três parâmetros diferentes emergem. Para lidar com essas complexidades, as Conv Nets desempenham um papel significativo.

Essas muitas matrizes 3D de diferentes dimensões funcionam em vários níveis da rede neural. Eventualmente, a dimensão 'z' se ajusta ao parâmetro de saída da rede. A transmissão de informações de um nível para outro pode ocorrer por meio de uma variedade de algoritmos diferentes.

Por exemplo, FC (Fully Connected), Pooling e ReLU são alguns algoritmos cruciais em relação a isso.

Geralmente, os valores dos nós da rede neural são indicados com, onde 'l' significa o número da camada. Então, um 0 é a matriz de entrada.

a 0 = X

Por outro lado, o último nó da camada define a saída. Diga, existem camadas 'L'. Portanto , um L denota a saída da rede neural.

aL = Y

Fonte da imagem

A imagem acima mostra uma rede neural convolucional na implementação da classificação de imagens. Os parâmetros são definidos para um cão, gato, morcego e pássaro.

O valor do nó de uma determinada camada interna é calculado por meio dos valores da camada anterior.

a l+1 =f( a l ,θ)

Aqui, é a matriz de adjacência e, f é a função definidora. Cada camada de rede convolucional do grafo pode ser escrita usando esta expressão. Dessa forma, uma rede neural convolucional gráfica normalmente funciona.

Aplicações de Redes Convolucionais de Gráficos

  • Redes Convolucionais de Gráficos geram previsões sobre sistemas físicos, como gráficos, sua abordagem interativa e aplicações. GCN também fornece informações precisas sobre as propriedades de entidades do mundo real e sistemas físicos (dinâmica da colisão, trajetórias de objetos).
  • GCNs são usados ​​para realizar problemas de diferenciação de imagens. O modelo que segue é conhecido como 'Zero-Shot Learning'. O principal motivo deste modelo é identificar uma imagem rotulada desconhecida e agrupá-la em conhecidas. Eles também coletam informações semânticas desses rótulos e os categorizam.
  • Os GCNs podem receber um certo comprimento de impressões digitais moleculares como entrada e gerar estruturas moleculares previstas. MolGAN é um tipo de rede convolucional de gráfico que ajuda a criar novas estruturas moleculares com vários recursos. Desta forma, permite aos cientistas inventar estruturas moleculares modernas dia a dia.
  • GCN é aplicável para resolver vários problemas relacionados a operações de pesquisa e aplicações de otimização combinatória. Graph Convolutional Networks desempenha um papel fundamental na resolução de problemas de vendedor, problemas de atribuição quadrática e muito mais. Com a ajuda do gráfico de entrada, ele pode superar os algoritmos complexos tradicionais.

Karate Clube de Zachary

Outra aplicação significativa de Graph Convolutional Networks é resolver problemas de previsão da comunidade, como Karate Club of Zachary. Esse problema é baseado na disputa entre o administrador e o instrutor do clube.

Temos que descobrir qual lado cada membro do clube de karatê escolheria. Este problema é resolvido usando técnicas de aprendizado semi-supervisionado. Usando apenas dois nós rotulados, Tobias Jepsen foi capaz de corrigir o problema e alcançar uma precisão quase perfeita em termos de previsão dessas duas comunidades.

Agora vamos dar uma olhada nas imagens a seguir e você poderá obter alguns insights sobre o problema do clube de Karate e seus cálculos adequados usando Graph Convolutional Networks.

Fonte da imagem

Leia também: Ideias de projetos de rede neural

Empacotando

Ao ler este artigo, você será capaz de entender o que são Redes Convolucionais em Grafos, como as Redes Neurais são construídas, uma breve ideia do GCN e como ele funciona, e vários aspectos e aplicações cruciais do GCN, incluindo o problema do Zachary Karate Club.

Se você quiser saber mais sobre o GCN e seus recursos e benefícios, registre-se em upGrad Education Pvt. Ltd. E Curso de Pós-Graduação e Diploma do IIITB em Machine Learning e Inteligência Artificial . Este curso sobre Machine Learning e IA foi desenvolvido para estudantes e profissionais que trabalham.

O curso oferece uma coleção de estudos de caso e tarefas, sessões de orientação do setor, status de ex-alunos do IIIT Bangalore, assistência para colocação de emprego nas principais empresas e, o mais importante, uma rica experiência de aprendizado.

Quais são as limitações do uso de redes neurais?

A desvantagem mais significativa de empregar redes neurais para resolver um problema é que o resultado não é explicado adequadamente, o que pode ser difícil para muitos usuários. Quando comparadas a outras técnicas de aprendizado de máquina, as redes neurais exigem muito mais dados para funcionar bem. Eles custam mais para computar do que qualquer outro algoritmo tradicional de aprendizado de máquina. Desde o início, o treinamento de redes neurais altamente profundas pode levar muitas semanas.

Qual modelo CNN é considerado o melhor para classificação de imagens?

Para classificação de imagem, o uso de VGG-16, que significa Very Deep Convolutional Networks for Large-Scale Image Recognition, é o preferido. Fora do ImageNet, o VGG, que foi construído como uma CNN profunda, supera as linhas de base em uma ampla variedade de tarefas e conjuntos de dados. A característica única do modelo é que, em vez de se concentrar em adicionar um grande número de hiperparâmetros, foi dada mais ênfase à inclusão de camadas de convolução superiores à medida que estava sendo desenvolvido. Ele contém um total de 16 camadas, 5 blocos e uma camada de pool máxima para cada bloco, tornando-se uma rede enorme.

Por que é difícil realizar CNNs em gráficos?

É difícil executar CNNs em gráficos devido ao seu tamanho arbitrário. Além disso, não há localidade espacial no grafo devido à sua topologia complicada, que é outra razão pela qual as CNNs não são empregadas em grafos. No gráfico, os GCNs são usados ​​para aprendizado semissupervisionado. O princípio fundamental do GCN é obter uma média ponderada de todos os atributos de nós de todos os seus vizinhos (incluindo ele próprio), com nós de menor grau recebendo pesos mais altos. Os vetores de recursos gerados são então alimentados em uma rede neural para treinamento.