Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

올라프의 AI 공부

TransE 논문 리뷰_Translating Embeddings for Modeling Multi-relational Data 본문

프로젝트/Graph Embedding

TransE 논문 리뷰_Translating Embeddings for Modeling Multi-relational Data

jioniee 2023. 4. 28. 23:41

Multi-relational data modeling 방법 예시는 아래와 같이 세 가지로 나뉠 수 있다.

(1)Social Network Analaysis, 

(2)Recommender System,

(3)Knowledge Bases(KBs)

  Entities Edges(Relationships)
Social Network Analysis members friendship/social relationship links
Recommender System users, products buying, rating, reviewing, sesarching for a product
Knowledge Bases abstract concept or concrete entity of the world predicates that represent facts involving two of them

 

이번에 소개할 TransE 모델은 Freebase, Google Knowledge Graph, GeneOntology와 같은 (3)Knowledge Bases 를 다룬다. 데이터셋으로는 Wordnet, Freebase로 실험하였다.

TransE 모델은 Knowledge graph embedding 방법 중 하나이다.Relational Modeling으로 2013년 neurips 컨퍼런스에 등재된 논문이며 오늘(2023.04.28) 기준 6493회 인용되었다.

 

Abstract

간단히 TransE에 대해서 소개하자면 다음과 같다.

지식베이스로부터 (head, label, tail) 형태의 Multi-relational data를 저차원의 Entities 임베딩로 바꾸는 Translation을 함으로써 Relationships을 해석하고 모델링하는 방법론이다.

 

본 논문의 기여는 다음과 같다.

1. Hierarchical relationships을 표현하기 위한 파라미터 개수를 줄이고,

(it learns only one low-dimensional vector for each entity and each relationship)

2. 매우 큰 데이터베이스에도 확장 가능하다.

 

Intro

인트로에 적혀있는 것을 기반으로 조금 더 구체적으로 설명해보겠다.

locality 관점에서 접근한다면 single-relational data는 순수하게 구조화되어있는 반면, multi-relational data는 다양한 유형의 relationship과 entities를 포함하고 있기 때문에 더 일반화된 접근이 필요하다.

Single-relational data에서 개체 간 연결 패턴 사이에 중요한 유사성을 표현하기 위해 user/item clustering 또는 matrix factorization 기술들이 쓰였다. 이를 이어 Multi-relational data에도 비슷한 프레임워크로 잠재 변수로부터 relational learning이 수행되어지고있다. (1)Stochastic blockmodel, (2)Tensor factorization, (3)Collective matrix factorization를 필두로, 최근 다양한 모델들이 Bayesian clustering framework 또는 Energy-based framework에서 expressivity와 universality를 향상시키는 것에 집중하고 있다. 하지만 본 논문에서는 expressivity를 높인다고 복잡한 모델을 만들면 오히려 해가 된다고 주장하며 심플하지만 적절한 모델이 필요하다고 주장한다.

 

Method

translation of the embedding

TransE는 head entity embedding에 relation을 더했을 때 tail entity embedding이 되도록 학습한다. 다시 말해, t는 h+l의 가장 가까운 이웃이 되어야 한다.

이를 위한 training loss는 아래와 같이 학습된다.

training loss 계산 과정

위 식을 조금 더 상세히 설명하면, 저자는 단순히 정답 데이터만 가지고 학습하지 않고 랜덤하게 head나 tail 둘 중 하나의 데이터를 랜덤하게 바꾼 Corrupted triplets을 더하여 샘플링함으로써 학습을 진행하였다.

그리고 margin hyperparameter와 실제 정답의 distance를 더한 값에서 corrupted triplets의 distance를 뺀 값이 가장 작아지도록 학습하고 있다.

 

실제 Sudo code를 보면 조금 더 이해가 잘 될 것이다.