You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Relation Extraction: Perspective from Convolutional Neural Networks [pdf]
Author
Thien Huu Nguyen (New York University)
Ralph Grishman (New York University)
Title of Conference(Journal)
NAACL 2015
Abstract
In relation extraction, tranditional approach with complicated feature engineering has errors and it lead to errors of relation detection and classification.
➤ 관계추출에서 전통적인 방법은 복잡한 feature engineering을 하기에 에러가 많고 때문에 detection과 classification에서 많은 문제를 야기한다.
Advantage of our model: multiple window sizes for filters.
➤ 필터의 윈도우 사이즈를 여러가지로 할 수 있다.
using pre-trained word embeddings as initializer.
➤ pre-trained 된 워드 임베딩 모델을 사용하고 있다.
1. Introduction
Relation Extaction task can be divided into two steps:
Detecting
Classifying
➤ 관계추출 문제는 관계를 찾아내는 단계와 이를 분류하는 단계, 두 가지로 나눌 수 있다.
Difference between Relation Classification and Relation Extraction ➤ RC와 RE의 차이점
In classification, non-relation examples in the dataset are comparable to the other examples, so they can be treated as a usual relation class like Other class.(balanced)
➤ RC에서는 non-relation인 데이터의 양이 relation인 데이터 양과 비슷하다.(balanced) 그래서 보통의 클래스처럼 이를 다룰 수 있다.
In Extraction, non-relation examples far exceeds the others.(unbalanced) So more challenging but more practical than relation classification.
➤ RE에서는 non-relation인 데이터의 양이 매우 많다.(unbalanced) 그래서 더 어렵고 쓸모가 있다.
In the last decade, the relation extraction has been dominated by two methods, the feature-based method and kernel-based method.
➤ 지금까지 relation extraction의 해법으로 feature-based와 kernel-based 두 가지 방법이 지배적이었다.
The common characteristic of these methods is the leverage of a large body of linguistic analysis and knowledge resourses to transform relation mentions into some rich representation to be used by some statistical classifier such as SVM, MaxEnt.
➤ 두 방법의 공통적인 특징은 relation mention을 통계적 분류기(SVM, MaxEnt)에서 사용할 수 있는 풍부한 표현으로 변환하기 위해서 언어 분석 및 지식 자원의 많은 부분을 활용한다는 것이다.
So these models depend on a supervised NLP toolkit and suffer from a performance loss when they are applied to out-of-domain data.
➤ 그래서 이 모델들은 학습된 NLP toolkit에 의존적이고 out-of-domain 데이터에 대해서 퍼포먼스 소실이 있다.
We target an independent RE system that both avoids complicated feature engineering and minimizes the reliance on the supervised NLP modules.
➤ 우리는 복잡한 feature engineering과 NLP module의 의존성을 최소화한 독립적인 RE 시스템을 목표로 하였다.
there are two recent works on CNNs for relation classification (Liu et al., 2013) and (Zeng et al., 2014); however work on CNNs for relation extraction is not yet.
➤ CNN을 통한 RC에 대해서는 최근 Liu와 Zeng의 연구가 발표된 바 있지만, RE는 아직 발표된 게 없다.
2. Related Work
skip...
3. Convolutional Neural Network for Relation Extraction
There are main 4 layers
the lookup tables to encode words in sentences by real-valued vectors
the convolutional layer to recognize n-gram
the pooling layer to determine the most relevant features
the logistic regression layer (FC with softmax at the end) to perform classification
3-1. Word Representation
CNN은 fixed length input이어야만 함
fixed length는 relation을 갖는 두 entity 사이의 최대 거리로 하였고, 이 length보다 긴 문장은 자르고 짧은 문장은 special token으로 padding 시킴
문장을 이루는 각 단어 토큰은 임베딩 lookup table(random or pre-trained)에 기반하여 벡터로 변환시킴
마킹된 두 entity의 position을 임베딩하기위해 각 entity와 모든 단어에 대한 상대적 거리 값(i-i1, i-i2)을 구함
이를 가지고 random initialize된 real-value vector(d1, d2)로 변환할 수 있는 lookup table을 만듬
따라서 상대적 거리 값의 범위는 -n+1부터 n-1까지이고, position embedding lookup table은 (2n-1) * m_d의 사이즈를 갖고 이때 m_d는 hyperparameter인 position embedding size를 의미함
최종적으로 문장의 각 단어 토큰은 word embedding vector, position embedding vector d1과 d2를 이어 붙인(concatenate) vector를 갖게 됨
따라서 하나의 단어 토큰은 (word embedding size + 2*position embedding size)의 차원을 갖는 벡터가 됨
3-2 & 3. Convolution & Pooling
다양한 size의 filter를 이용해서 단어 시퀀스(문장)을 convolution 시키며, bias와 non-linear activation function이 사용됨
convolution된 값(벡터)에 대해 max pooling을 진행하고 max pooling할 벡터의 크기는 convolution한 filter의 크기에 따라서 (fixed length - filter size + 1)의 길이를 갖음
3-4. Regularization and Classification
dropout
FC
softmax
l2 norm
AdaDelta
4. Experiments
Dataset
SemEval 2010 Task 8 dataset for relation classification
ACE 2005 dataset for relation extraction
static & non-static
static은 word & position embedding vector를 학습하지 않는 것, non은 그 반대
random init + non-static, pre-trained + non-static, pre-trained + static, 3가지에 대해서 성능 평가를 해봄
tanh for non-linear activation function
150 filters for each window size
word embedding size = 300 (using GoogleNews word2vec)
position embedding size = 50^4
dropout keep prob = 0.5
batch size = 50
hyperparameter of l2 = 3
5. Conclusion
우리는 CNN으로 unbalanced corpus에 대해서도 잘 작동하고 feature를 위한 외부 supervised NLP toolkit의 사용을 최소화했음
아래의 측면에서 relation classification & extraction task에 대해 기여(contribution)가 있다고 봄
multiple window size
position embedding
pre-trained word embedding for init in a non-static architecture
future work로는 relation extraction을 위한 CNN의 추가적인 feature 추출 방법 고안, CNN말고 다른 뉴럴넷을 이용한 relation extraction 문제 해결 등이 있다고 봄