연구

dgl GraphConv

햎피 2022. 8. 30. 21:07
반응형

dgl은 그래프 신경망을 쉽게 사용할 수 있도록 해주는 라이브러리이다.

 

그중에서도 GraphConv라는 함수를 알아보겠다.

https://docs.dgl.ai/en/0.4.x/api/python/nn.pytorch.html?highlight=graphconv#graphconv 

 

NN Modules (PyTorch) — DGL 0.4.3post2 documentation

The output feature of shape \((N, H, D_{out})\) where \(H\) is the number of heads, and \(D_{out}\) is size of output feature.

docs.dgl.ai

GraphConv는 아래의 ' semi-supervised classification with graph convolutional networks' 라는 논문에서 제안한 방법이다.

 

아마 다른 블로그들에서 설명이 잘 되어있으니, 설명은 건너 뛰겠다! (나중에 시간이 나면 조금 더 자세히 설명할것이다)

간단히 설명하자면, 그래프에서 이웃 노드들의 특성들을 이용해서 자신의 노드를 업데이트하는 방법이다.

 

 

https://arxiv.org/abs/1609.02907

 

Semi-Supervised Classification with Graph Convolutional Networks

We present a scalable approach for semi-supervised learning on graph-structured data that is based on an efficient variant of convolutional neural networks which operate directly on graphs. We motivate the choice of our convolutional architecture via a loc

arxiv.org

 

dgl의 graphconv documentation이다.

입력파라미터를 조금 자세히 설명해보자면,

in_feats : input feature의 dimension (정수)

out_feats : output feature의 dimension (정수)

가 필수적으로 들어가야한다.

 

그렇다면 graphconv를 compound에 대하여 돌려보도록 하자!

lipophilicity 값을 예측하는 코드이다!

 

GCN_example
반응형

'연구' 카테고리의 다른 글

rdkit으로 SMILES를 canonical smiles로 바꾸는 법  (0) 2022.09.14
multiple sequence alignment(MSA)  (0) 2022.09.10
empirical probability란 무엇일까  (0) 2022.09.09
HMMER  (0) 2022.09.06
deep graph library - pad_packed_tensor  (0) 2022.08.31