[이전 글]
2024.01.24 - [Lectures/CS224W] - Introduction
그래프가 왜 중요한지는 그래프를 공부하기 시작한 사람들이라면 알 것이라 생각되기에 생략하겠다.
그래프의 종류는 정말 다양하다.
Graph in Deep Learning
이러한 그래프는 구조적으로 다른 데이터와 다른 형태적 특징을 가지기에 가장 흔히들 생각하는 이미지와는 또 다르게 딥러닝 적용 방식을 생각해야한다.
이를, 그림으로 표현하면 다음과 같다.
그래프를 input으로 주면 graph convolutions와 같은 그래프 모델을 통해 graph의 embedding을 딥러닝의 과정에 걸처 학습한다. 이후 prediction과정에서 원하는 task에 맞게 모델을 학습시키면 된다.
과거에는 모델이 잘 학습 할 수 있는 feature 만들고자하는 노력이 컸다. == Machine Learning
그러나, 현재는 딥러닝을 통해 모델이 알아서 feature를 만들 수 있게 한다. == Representation Learning ( < Deep Learning)
Representation Learning
Representation Learning은 그래프를 구성하는 모든 node들을 neural network를 통해 d차원의 실수 공간 R에 feature representation embedding으로 표현하는 학습이다.
Graph Tasks
그래프를 통한 task의 종류는 graph의 어느 부분을 목적으로 두느냐에 따라 다양해진다.
이를 정리하면 다음과 같다.
Node-level ML
대표적인 Node-level Machine Learning의 task는 Protein folding 예측 문제이다.
Protein folding은 한국어로 단백질 접힘 문제라고 한다.
단백질 접힘 문제라는 것은 무엇일까? 나 역시도 생소했기에 간략하게 찾아보았다.
단백질은 몸에서 효소, 항체, 근육 등의 구성에 중요한 역할을 수행한다. 이러한 단백질의 기능을 분석하고, 원하는 물질을 합성하기 위해서는 단백질 접힘을 통해 어더한 3차원의 구조를 이루는지 알아내야 하는 것이며, 이 문제를 단백질 접힘이라고 한다.
Alpha-Fold는 이를 Spatial Graph를 통해 해결하고자 했다.
Node: 단백질의 Amino acids Sequence
Edge: Amino acid들 간의 근접성
의 정보들로 Spatial Graph를 구성해, Neural Network로 학습하여 이 둘의 정보를 통해 새로운 position을 예측하도록 한다.
Edge-level ML
가장 대표적인 Edge-level task는 Link prediction이다.
그리고 이런 Link prediction을 사용하는 Recommend system 또한 Edge-level task에 속한다.
Basic
Recommend system은 사용자에게 사용자가 좋아할 만한 것 들을 추천해주는 시스템이다.
따라서, 다음과 같이 Graph를 구성한다.
Node: Users, Item
Edge: User-Item의 관계
PinSage
Grpah-based Model을 통해 Node Embedding을 학습해 Relation을 예측하는 Recommend system의 대표적인 예는 Pinterest에서 사용하는 PinSage로 다음과 같이 구성되어 있다.
Drug Side Effect
Drug Side Effect은 사람들이 보통 여러가지 약들을 한 번에 복용하게 되는데, 이때 약물들 관의 화학적 작용으로 인한 부작용 여부를 예측하는 문제이다.
다음 문제는 다음과 같이 구성되어 있다.
Node: Drugs, Protein
Edge: Drug-Protein의 관계
Query: Simvastain약물과 Ciprofloxacin약물을 같이 섭취했을 때, Muscle 조직이 망가질 가능성이 있는가?
최종적으로 다음과 같이 가장 많이 부작용이 있을 것이라 예상되는 2가지 약물들의 리스트 결과는 다음과 같다.
실제 FDA Database를 통해 모델의 예측 결과를 검증할 수 있다.
Subgraph-level ML
Subgraph에 속하는 대표적인 task는 Traffic Prediction이다.
Traffic Prediction은 출발지에서 목적지까지의 최적의 루트를 알아내는 문제이다.
Node: 도로의 구역 (Load Segement)
Edge: 도로간의 연결
으로 Graph를 구성한다.
Graph-levle ML
Drug Discovery은 Grpah-level에 속하는 문제로, 약물의 구조 Grpah를 학습해 새로운 약물 구조를 밝혀내는 문제이다.
Node: Atoms
Edge: Chemical bounds
으로 Graph는 구성된다.
딥러닝 방식으로 문제를 해결하게 되는 경우, Grpah classification 문제로 여겨지며 약물 분자의 candidate(후보 군) 중에서 가장 적합한 약물 분자들을 선택해 예측한다.
혹은, Drug Generation을 통해 새로운 약물 구조를 생성할 수도 있다.
Physics Simulation
Physics simulation은 물질의 물리적 파장의 모습을 Grpah로 그려내어 향후 해당 Graph의 모습이 어떠할지 예측하는 문제이다.
Node: Particles
Edge: Particle간의 관계
로 Graph가 구성된다.
'Lectures > CS224W' 카테고리의 다른 글
Introduction (0) | 2024.01.24 |
---|