Knowledge Graph Embeddings

남서현·2025년 4월 30일

Lecture

목록 보기
4/7

Knowledge Graph

  • KG: 기계학습에서 추천, 정보 추출, 질의 응답에서 활용
    (Recommender system, information extraction, question answering, query relazation, query approximation, etc)

  • embedding: 대부분의 머신러닝은 벡터 형태의 입력을 필요로 하므로, 그래프 형태를 연속적이고 저차원의 dense vector로 embedding을 하는 작업이 필요

  • KG embedding: 각 entity(node)와 relation (edge label)을 고정된 차원 d 의 vector로 변환하여 이 벡터들을 이용해 그래프의 구조와 의미를 내재적으로 학습

Translational Model

Figure: Toy example of two-dimensional relation and entity embeddings learnt by TransE; the entity embeddings use abbreviations and include an example of vector addition to predict what is west of Antofagasta

  • TransE: 관계 벡터 r은 주어 s의 벡터에 더해져 목적어 O를 만든다고 가정 (e_s + r = e_o)
    -단점: 같은 관계가 다양한 노드를 대상으로 할 떄 표현이 부정확해짐
    순환 관계 (cyclis relation) 표현이 어려움

  • TransH: 관계마다 하이퍼플레인 도입

  • TransR: 관계마다 다른 임베딩 공간

  • RotatE: 복소수 공간에서 회전을 통한 임베딩

  • MuRP: 쌍곡공간(Pincare ball)을 이용한 더 정교한 표현

Tensor Decomposition Models

  • 그래프를 3차원 텐서(G[i,j,k])로 표현 후 CP 분해(canonical polyadic)로 저차원 벡터 집합으로 근사)

  • DistMult: 단순한 곱셈 기반 스코어링, 대칭 관계만 표현 가능

  • RESCAL: 관계를 행렬로 표현하여 방향성을 고려

  • ComplEx: 복소수 벡터를 사용해 비대칭 관계까지 처리 가능

  • TuckER: Tucker 분해를 사용, 더 뛰어난 성능

Figure: illustration of a cp d rank decomposition of a tensor representing the graph

Neural Models

  • 비선형적 scoring function을 학습하여 더 복잡한 관계도 모델링 가능

  • NTN(Neural Tensor Network): 복잡한 tensor-matrix 연산 포함, 파라미터 많음

  • MLP: 단순한 multi layer perceptron
    ConvE: 2D 합성곱 사용 but 2D 구조 유지
    HypER: 관계별 convolution filter를 새성하는 hypernetwork 이용, ConvE보다 효율적

Examples

링크 예측: 누락된 관계나 노드 예측
유사도 측정: 중복된 엔티티 탐색, 추천시스템
질의 완화: 모호하거나 불완전한 질의를 보완
그래프 보강: 외부에서 추출된 삼중항의 신뢰도 평가

Language Models for Graph Embedding

Word2Vec & Glove

자연어 처리에서 사용되는 대표적인 embedding 기법

  • Word2vec: 주변단어로 중심 단어를 예측하거나, 중심단어로 주변 단어를 예측 (CBOW, Skip-gram)
  • GloVe: 전체 코퍼스의 단어 동시 발생 행렬을 기반으로 회귀 모델로 학습

RDF2Vec

그래프를 문장처럼 만들어 Word2Vec에 입력

randomwalk로 생성한 경로 (e.g san Pedro-bus -> Calarna - flight -> Snatiago)를 '문장'처럼 간주
Word2Vec에 입력하여 embedding 학습

KGloVe

GloVe방식을 그래프에 적용

각 노드에 대해 personalized pagerank로 근접 노드를 계산하고 이들을 Glove의 공동출현 행렬처럼 사용

Entailment-aware Models

  • 단순한 data graph 외에 추론 규칙(ontology, 제약조건) 까지 포함해서 embedding 품질을 높이는 방법

KALE (Guo et al, 2016)

TransE 임베딩 모델에 fuzzy logic 기반의 규칙 점수를 통합
e.g) Piedras Rojas-bus-> Moon Valley가 있으면 Piedras Rojas-connects to->Moon Valley 도 예측이 가능
점수 결합: p1*p2 - p1 + 1

RUGE

soft rule (신뢰도 있는 규칙)과 임베딩 스코어를 통합해 공동 학습

FSL

간단한 규칙 (bus는 connects to 보다 항상 덜 타당)에 기반해 embedding 간 불평등 제약을 학습

GNN 그래프 신경망

  • 그래프 구조에 맞춰 설계된 신경망
  • 전통적인 신경망은 균일한 연결 구조이지만, GNN은 그래프의 비정형적인 연결 구조를 반영

Recursive GNN

-노드의 상태 벡터(state vector)를 이웃노드의 상태와 특성으로 반복적으로 갱신
-고정점(fixpoint)에 도달할 때까지 반복

주요구성

전이함수(transition function): 이웃 노드 정보로 상태 갱신
출력함수(output function): 최종 상태로 예측 값 생성
ex) 관광객 방문수, 거리 등 수치로 표현된 도시정보 -> 정보센터 설치 위치 예측

Non-Recursive GNN

구조

고정된 레이어 수로 구성된 GNN
각 layer는 이웃노드의 정보를 집계(aggregation)
반복 종료 조건이 없고 매 layer마다 독립적 파라미터 사용

ConvGNN
CNN의 아이디어를 graph에 적용
각 노드의 이웃구조(지역 정보)를 convolution 방식으로 처리
ex) GCN(Kipf & Welling, 2017), GAT (Velickovic et al, 2018)

limitation: 이웃기반 집계만으로는 복잡한 그래프 구분이 어려움 --> 글로벌 벡터, attention, logic extanction 등 필요

Reference

Knowledge graph - Aidan hogan

profile
AI researcher

0개의 댓글