728x90

TransR은 knowledge graph embedding 방법 중 하나로, projection matrix를 활용해서 head와 tail node embedding을 projection한 값 사이의 relation을 모델링하는 embedding 방법을 말한다. 이번 글에서는 RotatE, TransE에 이어, 새로운 knowledge graph embedding 방법인 TransR 방법에 대해 설명하겠다. 

Motivation

 TransE에서는 head embedding, tail embedding, relation embedding이 모두 같은 embedding 공간에 존재했다. 하지만 이러한 가정은 적절한 relation embedding을 찾는 것에 제약을 주었다. 그렇다면 head embedding과 tail embedding을 좀 더 relation을 찾기 쉬운 공간으로 projection하면 더 좋은 relation embedding을 찾을 수 있지 않을까? TransR은 이러한 생각에서 시작된 knowledge graph embedding 방법이다.

TransR의 motivation

Method

 그럼 이제 TransR에 대해 설명하겠다. TransR은 위에서도 언급했듯이 head와 tail embedding을 project하고 이들 사이의 relation을 찾는 것을 목적으로 한다. 그러므로 우리의 score function은 다음과 같이 정의될 수 있을 것이다.

TransR의 score function

 위 식에서 $h_\perp$와 $t_\perp$는 각각 head와 tail embedding을 projection matrix $M_r$을 활용해 project한 값을 말한다. 이는 식으로 표현하면 다음과 같다.

h와 t의 projection

이제 TransR이 표현할 수 있는 relation pattern들에 대해 알아보겠다.

Symmetry

 Symmetry는 다음과 같이 정의한다.

symmetry의 정의

 이는 우리가 r을 0으로 정의하고, h의 projection된 값과 t의 projection된 값이 같아지도록 projection matrix를 정의하면 ㅗ된다. 이를 식으로 나타내면 다음과 같다.

TransR의 symmetry

 또한 이를 그림으로 나타내면 다음과 같다. 즉, 실제 entity space에서는 h와 t가 다른 값이더라도 projection만 같게 해주면 symmetry를 성립하게 만들 수 있는 것이다.

TransR의 symmetry 표현

Antisymmetry

 Antisymmetry는 다음과 같이 정의한다.

antisymmetry의 정의

이를 TransR의 정의에 따라 표현하면 다음과 같은 식을 만족해야 한다.

TransR의 antisymmetry

 위 식을 만족하는 것은 간단히 다음과 같은 그림으로 표현할 수 있다. 아래 그림을 통해 우리는 TransR이 antisymmetry를 표현할 수 있음을 알 수 있다.

TransR의 antisymmetry 표현

Inverse

 Inverse는 다음과 같이 정의한다.

inverse의 정의

 이를 TransR의 정의에 따라 표현하면, 다음 식을 만족해야 한다.

TransR의 inverse

 이를 그림으로 표현해보면, 다음과 같이 $r_1$과 $r_2$가 relation space에서 서로 반대가 되면 될 것이다. 아래 그림을 통해 우리는 TransR이 inverse를 표현할 수 있음을 알 수 있다.

TransR의 inverse 표현

1-to-N

 1-to-N relation은 다음과 같이 정의한다.

1-to-N의 정의

이를 TransR의 정의로 표현하면 다음과 같다.

TransR의 1-to-N

이를 만족하는 행렬 $M_r$을 만드는 것은 그렇게 어렵지 않다. 그러므로 우리는 TransR이 1-to-N relation도 표현할 수 있음을 알 수 있다.

Composition

 Composition은 다음과 같이 정의한다.

composition의 정의

 이는 우리가 수학적으로 증명하지 않고, 직관을 이용해서 composition의 모델링이 가능함을 알 수 있다. 그 이유는 TransE가 composition을 모델링할 수 있기 때문이다. TransE는 TransR에서 projection matrix $M_r$이 1인 special case라고 볼 수 있다. 그러므로 TransE가 composition을 모델링할 수 있다면, 우리는 projection matrix $M_r$을 1로 정의하여 TransR도 composition을 모델링할 수 있다고 주장할 수 있을 것이다. 우리가 이 글에서 TransE가 composition을 정의할 수 있다는 것을 보였기 때문에 TransR도 composition을 정의할 수 있다. (사실 이러한 논리로 위에 설명한 antisymmetry, inversion도 설명이 가능하다.)

 이번 글에서는 TransR knowledge graph embedding에 대해 알아보았다. 우리가 알고 있는 모든 relation pattern들을 모두 모델링할 수 있는 좋은 knowledge graph embedding이라고 할 수 있을 것 같다.

 

References

1. CS224W: Machine learning in graphs

300x250
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기