Loading [MathJax]/jax/output/CommonHTML/jax.js
본문 바로가기

Machine Learning43

Type of Attention (어텐션의 종류) 어텐션 메커니즘 개요 어텐션 메커니즘은 과거 정보(과거의 hidden embedding 등)의 weighted sum을 미래 수치 예측에 활용하는 기법입니다. 위와 같은 구조로 미래에 대한 예측치 y를 얻는 경우, context vector c에 attention mecahnism이 적용됩니다. ci=Txj=1αijhj 과거의 hidden embbeding에 attention value를 곱한 값을 context vector로 받게 됩니다. 이 attention은 energy 값의 sofmax로 얻어집니다. αij=softmax(eij)=eijTxk=1exp(eik).. 2022. 12. 27.
CS224w - 17. Advanced Topics in Graph Neural Networks Part 2 Advanced Cluster-GCN Advanced Cluster-GCN의 아이디어는 몇개의 node group을 mini-batch에서 합치는 것입니다. 이를 위해서 조금 더 작은 node group을 만들게 됩니다. 여러 노드 그룹을 쓰기 때문에 전체 그래프를 보다 잘 표현할 수 있습니다. 그리고 그룹 간의 링크가 있어, message가 그룹 사이에도 흐를 수 있습니다. Pre-processing 단계에서는, vanilla와 같이 subgraph으로 나누되 더 작게 나눠서 나중에 aggregate 됐을 때 사이즈가 너무 커지지 않게 합니다. Mini-batch training은 subgraph 중 random으로 일부 샘플링합니다. 그 다음 속한 node들을 전부 aggregate해서 하나의 sub.. 2022. 12. 5.
CS224w - 17. Advanced Topics in Graph Neural Networks Part 1 Scaling Up Graph Neural Networks and Modern Applications 일반적인 learning scheme에서 large data에 대해서는 mini-batch에서 SGD를 수행합니다. 하지만 GNN에서는 mini-batch 내에서 노드를 샘플링하면 노드가 서로 멀리 떨어진 상태일 확률이 높습니다. 따라서 mini-batch에서 얻어진 node들을 가지고 neighborhood update를 하기 어렵습니다. 이런 문제를 피하기 위해서 full batch로 학습할 수도 있지만, GPU memory의 문제로 불가능합니다. 따라서 본 강의에서는 subgraph를 이용한 학습(Neighbor Sampling, Cluster-GCN), 그리고 feature preprocessin.. 2022. 12. 5.
CS224w - 16. Advanced Topics in Graph Neural Networks Part 2 Identity-Aware Graph Neural Networks 서로 다른 node이지만 같은 computational graph를 가져서 같은 embedding으로 계산되는 문제가 다양한 graph에서 나타납니다. Node, edge, graph level의 task에서 모두 보이는 문제점들입니다. 이에 대한 해결방법으로 root node에 대해서 colorize한 뒤, computational graph에 colorize를 반영하는 방법이 있습니다. 이 경우 Graph 구조가 다르다면, computational graph에서 colorize 되는 부분이 달라지기 때문에 구별이 가능합니다. Edge level과 graph level에 대해서도 똑같이 적용할 수 있습니다. 다른 종류(color)의 no.. 2022. 12. 4.
CS224w - 16. Advanced Topics in Graph Neural Networks Part 1 Limitations of Graph Neural Networks 먼저 GNN이 갖는 한계에 대해서 알아봅시다. Perfect GNN model이라고 한다면, 같은 neighbor를 가지는 node는 같은 embedding을 가지고, 다른 neighbor를 가지는 node는 다른 embedding을 가지는 것입니다. 하지만 그렇게 만들기 쉽지 않습니다. 먼저, 같은 neighbor를 가지지만 position에 따라서 다르게 embedding해야 되는 경우 문제가 생깁니다. v1v2는 완벽하게 같은 neighbor을 갖지만(모든 node가 같은 label을 갖는다면), 위치가 다르기 때문에 다른 embedding이 주어지는 것이 맞습니다. 다른 neighbor를 가지지만 computation.. 2022. 12. 4.
CS224w - 15. Deep Generative Models for Graphs Part 2 Scaling Up Graph Generation 지금의 GraphRNN은 어떤 node가 이전에 존재하던 node들과 연결될 수 있을지를 모두 계산해야 합니다. Computation time상 intractable한데, BFS node ordering으로 이를 일부 해결할 수 있습니다. 간단하게 전의 M개의 node만 보겠다는 의미인데, 걱정이 되기는 합니다. M개 보다 더 이전의 node와 연결해야하는 경우는 BFS가 놓치게 됩니다. Evaluating Graph Generation Graph의 집합(set)을 비교하는 방법을 생각해봅시다.어기서는 graph의 similarity metric을 정의해야 합니다. Visual similarity일수도 있고, graph statistic이 비슷할 수도 있.. 2022. 11. 30.