KR101644044B1 - 개념 및 관계 의역 시스템 및 방법 - Google Patents

개념 및 관계 의역 시스템 및 방법 Download PDF

Info

Publication number
KR101644044B1
KR101644044B1 KR1020150160487A KR20150160487A KR101644044B1 KR 101644044 B1 KR101644044 B1 KR 101644044B1 KR 1020150160487 A KR1020150160487 A KR 1020150160487A KR 20150160487 A KR20150160487 A KR 20150160487A KR 101644044 B1 KR101644044 B1 KR 101644044B1
Authority
KR
South Korea
Prior art keywords
corpus
concept
subject
paraphrase
expressions
Prior art date
Application number
KR1020150160487A
Other languages
English (en)
Inventor
맹성현
류지희
장경록
김진호
Original Assignee
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원 filed Critical 한국과학기술원
Application granted granted Critical
Publication of KR101644044B1 publication Critical patent/KR101644044B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/20
    • G06F17/277
    • G06F17/30958

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

개념/관계 의역 시스템이 외부로부터 입력되는 말뭉치를 자연어 처리하여 의미역이 부착된 말뭉치를 생성하고, 의미역이 부착된 말뭉치로부터 주체, 행동, 객체가 포함된 정보 집합을 추출한다. 추출한 정보 집합을 이중 이분 그래프로 구축하고, 상기 주체, 행동, 객체를 벡터 표현으로 변환하고, 벡터 표현을 토대로 벡터간 유사도를 기반으로 친밀성을 측정하며, 친밀성 값을 토대로 높은 값을 갖는 각 개념 쌍들과 관계 쌍들을 변환 가능한 의역으로 인식하고 의역 집합에 추가한다.

Description

개념 및 관계 의역 시스템 및 방법{System and method for concept and relation paraphrasing}
본 발명은 개념 및 관계 의역 시스템 및 방법에 관한 것이다.
특정 문장이나 단락을 통해 유추할 수 있는 새로운 문장 또는 단락을 생성하거나 선택하는 기술을 텍스트 추론(textual inference) 기술이라고 한다. 텍스트 추론 기술에는 텍스트 함의 인식(textual entailment recognition), 의역 인식(paraphrase identification) 및 의역 생성(paraphrase generation)이라는 세부 분야가 존재한다. 여기서 의역 인식 분야와 의역 생성 분야는, 동일하거나 거의 유사한 정보를 전달하는 의미적 구절, 문장, 또는 문단까지도 식별하고 추출하는 기법들을 포함한다.
의역의 유형을 살펴보면, 유사 어휘(lexical synonymy)에 의한 의역, 형태-구문적 이형태(morpho-syntactic variants)에 의한 의역, 전치사구 부착(PP-attachment)에 의한 의역, 비교급(comparatives)과 최상급(superlatives) 표현 차이에 의한 의역, 종속절(subordinate clauses)과 다중 문장(separate sentences linked by anaphoric pronouns) 표현 차이에 의한 의역, 추론(inference)에 의한 의역, 그리고 다양한 의역의 결합적 형태(composition)에 의한 의역들이 있다.
이러한 텍스트 추론 기술과 관련하여 과거에 많은 연구들이 있었으며, 그 하나의 예로는 두 문장의 의존문법 구조적 차이점을 자질로 구성하여 기계학습 기반의 텍스트 함의 식별을 수행하는 기술이 있다. 이 기술에는, 부가적으로 문법적 관계 겹침 정도와 단어 겹침 정도를 적용하는 방법도 있다.
또 다른 텍스트 추론 기술로는 문장의 의미를 의존 파싱(dependency parsing) 기반의 그래프로 표현하고, 그래프간의 유사도를 측정하는 기술이 있는데, 이 방법은 그래프 일치에 많은 시간이 걸리는 것이 문제로 지적되고 성능이 그리 높지 않다는 단점이 있다. 또 다른 텍스트 추론 기술로는 의역 생성 및 식별에 필요한 다양한 패턴(pattern) 및 템플릿(template) 집합을 병렬 말뭉치(bilingual corpus)를 이용하여 수집하는 기술이 있으나, 이 기술은 풍부한 병렬 말뭉치가 필요하다는 점과 정렬(alignment) 성능이 전체 성능에 가장 많은 영향을 준다는 점, 그리고 정확한 의역 패턴을 수집해야 한다는 단점이 있다.
또 다른 방법에서는 텍스트 추론을 위해 문장 단위의 의역 생성을 위한 추론 패턴 추출 기법을 이용하는데, 단순한 유사도 측정 기법에 의한 문장 군집화(clustering)로 인해 다소 제한적인 패턴만이 추출된다는 한계가 있다. 또 다른 방법에서는 텍스트 내에서의 의미 요소(semantic content unit)를 정보 덩어리(information nuggets)로 정의하고 술어-논항 구조(predicate-argument structure)로 표현하며, 공유된 정보 덩어리들에 의한 의역 인식을 시도하고 있으나, 술어-논항 구조 정보 덩어리 쌍에 대한 유사도 기반의 의역 식별과 쌍 없는 정보 덩어리들(unpaired information nuggets)의 중요도 기반의 의역 식별을 사용하였으나, 개별 언어처리 단계에서의 오류 전파에 대한 지원 기법이 없었다는 한계가 있다.
또 다른 방법에서는 복잡한 의미 표현을 사용하지 않고 다양한 형태의 단순한 유사도 기반 자질들을 추출하여 최대 엔트로피(Maximum Entropy) 기법을 적용하였다. 문자열 간의 유사도, 워드넷(WordNet) 기반의 동의어 처리에 의한 유사도, 의존 파싱 관계의 겹침 정도에 의한 유사도, 총 세가지 종류의 자질 구성을 사용하였다. 이 방법을 이용하면 기계적으로 구성된 말뭉치의 특성에 의해 유사도 기반의 방법이 높은 성능을 나타낼 수 있으므로 심층적 의미추론이 필요한 의역 식별에 있어서는 효과가 없을 수 있다.
따라서, 본 발명은 연관되는 개념 및 관계간의 연결성을 이용하여 개념 및 관계를 의역하는 시스템 및 방법을 제공한다.
상기 본 발명의 기술적 과제를 달성하기 위한 본 발명의 하나의 특징인 개념과 관계에 대한 의역 집합을 추출하는 시스템은,
외부로부터 입력되는 말뭉치를 자연어 처리하여 의미역이 부착된 말뭉치를 생성하는 자연어 처리부; 상기 의미역이 부착된 말뭉치로부터 주체, 행동, 객체가 포함된 정보 집합을 추출하는 집합 추출부; 상기 집합 추출부에서 추출한 정보 집합을 이중 이분 그래프로 구축하고, 상기 주체, 행동, 객체를 벡터 표현으로 변환하는 벡터 표현부; 상기 벡터 표현부에서 변환된 벡터 표현을 이용하여 벡터 간의 유사도 기반으로 친밀성을 측정하는 친밀성 측정부; 및 상기 친밀성 측정부가 측정한 친밀도를 기반으로, 친밀성이 높은 값을 갖는 개념 쌍들과 관계 쌍들을 변환 가능한 의역으로 인식하고 의역 집합으로 추출하는 의역 인식부를 포함한다.
상기 자연어 처리부는, 상기 말뭉치를 자연어 처리하여 문장을 인식하고, 인식한 문장 내 단어들의 품사 정보를 부착하며, 문장 내 단어들 사이의 의존 관계를 분석하고 각 단어들에 대한 의미역을 부착할 수 있다.
상기 자연어 처리부는, 상기 말뭉치 내의 동일한 대상에 대해 다르게 표현한 상호 참조 표현들을 하나의 군집으로 연결하고, 상대적 시점으로 기술된 시간 표현들을 절대적 시간 표현으로 정규화시키며, 상기 말뭉치 내의 개체들에 대한 표현을 실존 개체들에 대한 대용량 지식베이스 상의 고유한 개체로 연결할 수 있다.
상기 집합 추출부는, 상기 자연어 처리부로부터 수신한 의미역이 부착된 말뭉치를 토큰화하여 상기 정보 집합에 포함될 행동 요소를 찾아내고, 동사 핵심어에 의존하면서 주요 논항으로 된 단어들에 따라 주체와 객체를 인식할 수 있다.
상기 벡터 표현부는, 상기 집합 추출부에서 추출한 정보 집합에 포함된 주체, 행동, 객체간의 연결성을 기반으로 주체 및 객체와 연관되어 사용되는 행동을 파악하고, 행동과 연관되어 사용되는 주체 및 객체를 파악할 수 있다.
상기 본 발명의 기술적 과제를 달성하기 위한 본 발명의 또 다른 특징인 개념/관계 의역 시스템이 개념과 관계를 의역하는 방법은,
외부로부터 입력되는 말뭉치를 자연어 처리하여 의미역이 부착된 말뭉치를 생성하는 단계; 상기 의미역이 부착된 말뭉치로부터 주체, 행동, 객체가 포함된 정보 집합을 추출하는 단계; 상기 추출한 정보 집합을 이중 이분 그래프로 구축하고, 상기 주체, 행동, 객체를 벡터 표현으로 변환하는 단계; 상기 벡터 표현을 토대로 벡터간 유사도를 기반으로 친밀성을 측정하는 단계; 및 친밀성 값을 토대로 높은 값을 갖는 각 개념 쌍들과 관계 쌍들을 변환 가능한 의역으로 인식하고 의역 집합에 추가하는 단계를 포함한다.
상기 의미역이 부착된 말뭉치를 생성하는 단계는, 상기 말뭉치로부터 문장을 인식하고, 인식된 문장 내에 포함되어 있는 단어들에 품사 정보를 부착하는 단계; 상기 인식된 문장 내에서 각 단어들의 의존 관계를 분석하고, 상기 각 단어들이 서술어를 중심으로 어떤 의미적 역할을 수행하는지 탐지하며, 탐지한 결과를 의미역으로 단어에 부착하는 단계; 상기 인식된 문장 내에서 동일한 대상에 대해 다르게 표현한 상호 참조 표현들이 있는지 확인하고, 상호 참조 표현들이 있는 경우 하나의 군집으로 연결하는 단계; 상기 인식된 문장에 제1 시점으로 기술된 시간 표현들을 제2 시간 표현으로 정규화하는 단계; 및 상기 인식된 문장 내에 실존하는 개체들 각각의 표현들을, 상기 개체 전후의 문맥적 의미를 고려하여 실존 개체들에 대한 대용량 지식베이스 상의 고유 개체로 연결하는 단계를 포함한다.
상기 정보 집합을 추출하는 단계는, 상기 의미역이 부착된 말뭉치를 토큰화하는 단계; 토큰화된 말뭉치로부터 상기 정보 집합에 포함될 행동 요소를 찾아내고, 동사 핵심어에 의존하면서 주요 논항으로 된 단어들을 주체와 객체로 인식하는 단계; 및 토큰화된 말뭉치로부터 구 수준의 표현을 추출하고 구로 인식된 표현에서 핵심어를 결정하는 단계를 포함할 수 있다.
본 발명에 따르면 확장된 개념 노드와 관계 노드가 사용되는 개념 그래프를 활용한 질의 응답 시스템에서, 주어진 질의 그래프와 더 많은 접점을 갖는 확장된 지식 그래프를 만들 수 있다.
또한, 질의 응답 시스템에서 지식 표현의 차이에 의해 추출되지 못하던 지식들을 추출하여, 정답으로 연결할 수 있는 기반을 마련할 수 있다.
도 1은 본 발명의 실시예에 따른 개념 및 관계 의역 시스템의 구조도이다.
도 2는 본 발명의 실시예에 따른 개념 및 관계를 의역하는 방법에 대한 흐름도이다.
도 3은 본 발명의 실시예에 따른 이중 이분 그래프 구조의 예시도이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 발명의 실시예에서는 지식을 개념 노드와 개념 노드 사이의 관계 노드들이 연결된 그래프 형태로 표현한 개념 그래프로 구성할 경우, 의미적으로 확장되어 진보된 개념 그래프를 구축하기 위하여 "주체-행동-객체"로 구성된 정보 트리플 집합(이하, 설명의 편의를 위하여, '정보 집합'이라 지칭함)으로부터 사용자들에 의해 통상적으로 자주 연관되는 개념 및 개체간의 연결성을 추출하고, 추출한 개념 및 연결성에 기반하여 의역으로 인식될 수 있는 개념 노드들과 관계 노드들을 찾아주는 시스템 및 방법에 대해 제안한다.
즉, 사용자들이 알고 있는 정의적 지식, 사실적 지식, 선험적 지식 및 경험적 지식은 사용자 자신들의 언어로 서로 다양하게 표현이 되지만, 그 언어 내에는 기본적으로 '누가 무엇을 하다(someone do something)' 또는 '무엇은 무엇이다(something is something)'라는 정보가 들어간 [주체-행동-객체]로 이루어진 트리플 형태의 정보들이 나타난다. 이 트리플 형태내의 주체, 행동, 객체 사이에는 사용자들이 연관되었다고 가정하면, 통상적으로 자주 함께 연결하여 사용하는 개념들과 관계들이 존재하게 된다. 이러한 개념들과 관계들은 유사한 의미를 담고 있어 의역으로 인식할 수 있는 대상이 될 수 있다.
사용자들의 기술에 의해 생성된 다량의 말뭉치로부터 [주체-행동-객체]로 구성된 정보 집합이 추출되면, 정보 집합 내에서 세 요소간의 연결성을 기반으로 주체 및 객체와 주로 연관되어 사용되는 행동들, 행동과 주로 연관되어 사용되는 주체 및 객체들을 파악할 수 있다. 다른 영역 내의 요소들과 얼마나 연관되어 사용되는 지를 정량적 수치로 표현된 벡터 형태로 나타내면, 같은 영역 내의 각 요소에 해당하는 벡터가 얼마나 비슷한 지를 벡터 거리 계산에 의하여 측정할 수 있게 된다. 이를 기반으로 각 개념들 간의 또는 관계들 간의 친밀성을 유추해 볼 수 있게 되고, 이러한 친밀성을 활용하여 개념들 간의 또는 관계들 간의 의역을 인식할 수 있게 된다.
이하 본 발명의 실시예에 따른 개념 및 관계 의역 시스템과 방법에 대해 도면을 참고로 하여 설명한다.
도 1은 본 발명의 실시예에 따른 개념 및 관계 의역 시스템의 구조도이다.
도 1에 도시된 바와 같이, 개념 및 관계 의역 시스템(100)은 자연어 처리부(110), 집합 추출부(120), 벡터 표현부(130), 친밀성 측정부(140) 및 의역 인식부(150)를 포함한다.
자연어 처리부(110)는 외부로부터 입력되는 지식 표현 말뭉치로부터 [주체-행동-객체]의 정보 집합을 추출하기 위하여, 말뭉치를 자연어 처리한다. 자연어 처리 과정을 통해 자연어 처리부(110)는 말뭉치로부터 문장을 인식하여 구분하고, 문장 내 단어들의 품사 정보를 부착한다. 여기서 본 발명의 실시예에서는 지식 표현 말뭉치의 형태를 어느 하나로 한정하여 설명하지 않으며, 문장을 인식하거나 품사 정보를 부착하는 방법도 어느 하나의 방법으로 한정하지 않는다.
또한, 자연어 처리부(110)는 인식한 문장 내 포함되어 있는 복수의 단어들을 확인하고 복수의 단어 사이의 의존 관계를 분석하며, 각 단어들이 서술어를 중심으로 어떠한 의미적 역할을 수행하는지 확인하여 의미 역할 라벨(semantic role labeling)(이하, 설명의 편의를 위하여 '의미역'이라 지칭함)을 부착한다. 본 발명의 실시예에서는 자연어 처리부(1100가 ClearNLP 도구를 이용하여 의미역을 부착하는 것을 예로 하여 설명하나, 반드시 이와 같이 한정되는 것은 아니다.
또한, 자연어 처리부(110)는 말뭉치 내의 동일한 대상에 대해 다르게 표현한 상호 참조 표현들을 하나의 군집으로 연결하고, 상대적인 시점으로 기술된 시간 표현들을 절대적인 시간 표현으로 정규화시킨다. 여기서, 상대적인 시간 표현이라 함은 '어제'나 '그저께' 등과 같은 시점을 의미하며, 절대적인 시간 표현이라 함은 '2015년 1월 1일'과 같은 표현을 의미한다.
또한, 자연어 처리부(110)는 말뭉치 내에서 실존하는 개체들의 표현들을 전후의 문맥적 의미를 고려하여 실존 개체들에 대한 대용량 지식베이스 상의 고유한 개체로 연결하는 개체명 연결을 수행한다. 이때, 개체명을 연결할 때 워드넷(WordNet) 또는 위키백과(Wikipedia)를 결합하여 구축된 다국어 지식베이스인 BabelNet을 이용하여 검색하되, 여러 표현들이 존재할 때 웹 검색 엔진을 통하여 다수의 결과를 가져올 수 있는 표현을 대표로 정하는 것을 예로 하여 설명하나, 반드시 이와 같이 한정되는 것은 아니다.
집합 추출부(120)는 자연어 처리부(110)에서 자연어 처리된 말뭉치로부터 정보 집합을 추출한다. 말뭉치로부터 정보 집합을 추출하기 위해 집합 추출부(120)는 자연어 처리부(110)에서 의미역이 부착된 말뭉치를 토큰화한다.
그리고 집합 추출부(120)는 토큰화된 말뭉치로부터 정보 집합에 포함될 행동 요소를 찾아내며, 동사 핵심어에 의존하면서 주요 논항으로 된 단어들을 주체와 객체로 인식한다. 여기서 말뭉치를 토큰화하기 위하여, 본 발명의 실시예에서는 Stanford CoreNLP 도구를 이용하는 것을 예로 하여 설명하나, 반드시 이와 같이 한정되는 것은 아니다. 그리고 집합 추출부(120)는 토큰화된 말뭉치로부터 구 수준의 표현을 추출하고, 구로 인식된 표현에서 핵심어를 결정한다.
벡터 표현부(130)는 정보 집합을 이중 이분 그래프로 구축하고, 각 주체, 행동, 객체를 다른 영역에 대한 연결성에 기반하여 벡터 표현으로 변환한다. 즉, 집합 추출부(120)에서 추출한 정보 집합 내에서의 세 요소인 주체, 행동, 객체간의 연결성을 기반으로, 주체 및 객체와 주로 연관되어 사용되는 행동들을 파악한다. 그리고 행동과 주로 연관되어 사용되는 주체 및 객체들을 파악한다.
또한, 벡터 표현부(130)는 이중 이분 그래프(Double bipartite graph) 구조에 각 정보 집합을 구성하고 있는 주체, 행동, 객체를 표현한다. 여기서 이중 이분 그래프(G)는 다음 수학식 1과 같이 정의된다.
Figure 112015111420975-pat00001
여기서, 점들의 집합인 V는 V=[VAgent, VPredicate, VPatient]로 나타내는데, VAgent는 주체에 대한 점을, VPredicate는 행동에 대한 점을, VPatient는 객체들이 모인 점을 의미한다. 그리고 간선의 집합인 E는 E=[EAP, EPP]로 정의되는데, EAP는 주체에 대한 점과 행동에 대한 점 사이의 간선이 몇 개 형성되는지를 의미하고, EPP는 행동에 대한 점과 객체에 대한 점 사이의 간선이 몇 개 형성되는지를 의미한다.
수학식 1과 같이 이중 이분 그래프의 도식화를 통해, 벡터 표현부(130)는 다른 영역 내의 서로 다른 요소들과 얼마나 연관되어 사용되는지를 정량적으로 측정할 수 있어, 그래프 구조상에서 한 영역의 정점에 대해 다른 영역의 정점들 간의 간선 상의 가중치를 벡터로 표현할 수 있다.
친밀성 측정부(140)는 벡터 표현부(130)에서 정보 집합이 이중 이분 그래프로 구축되고 각 주체, 행동, 객체를 다른 영역에 대한 연결성에 기반하여 벡터 표현으로 변환되면, 벡터 간의 유사도를 기반으로 친밀성을 측정한다. 여기서 친밀성 지수는 두 가지 면을 고려하는데, 정보 집합 내에서 얼마나 자주 발생하였는지와 다른 영역 요소들과의 연결성에 대한 차이가 얼마나 적은지를 고려한다.
의역 인식부(150)는 친밀성 측정부(140)가 측정한 친밀성을 토대로, 친밀성이 높은 값을 갖는 각 개념 쌍들과 관계 쌍들을 변환 가능한 의역으로 인식하고, 의역 집합에 추가한다. 이를 통해, 의역 집합에 의해 동일하다고 인식된 의역 표현들을 이중 이분 그래프 상에서 더 이상 서로 다른 정점이 아닌 하나의 정점으로 표현되며, 연결된 간선들도 그에 따라 합쳐서 표현된다. 또한, 가중치 역시 합쳐진 값으로 표현된다.
또한, 이중 이분 그래프 상에는 주체, 행동, 객체에 상응하는 세 영역이 존재하는데, 한 영역에서 발견된 의역 집합에 의하여 전체 그래프 구조가 변하게 될 경우, 다른 영역에서 발견할 수 있는 의역 집합에 다시 영향을 줄 수 있다. 이와 같은 종속 관계는 기댓값 최대화 알고리즘(EM: Expectation-maximization algorithm)과 유사하게 기존의 의역 집합 추출을 기반으로 하여 더 좋은 의역 집합 추출을 찾아가는 과정을 반복하게 된다.
그러므로 [주체-행동-객체]로 구성된 정보 집합에서의 개념 및 의역을 효과적으로 인식하기 위하여, 의역 인식부(150)는 다수의 표현이 존재하는 순으로 객체들로부터 객체들 간의 의역 집합을 추출한다. 그리고, 주체들로부터 주체들간의 의역 집합을 추출하고, 행동들로부터 행동들 간의 의역 집합을 추출하는 방식으로 의역 집합의 추출을 진행한다. 이를 반복적으로 적용해 나감으로써 단일 의역 집합의 범위는 점차 증가되고, 개별의 표현을 1개의 요소로 구성된 의역 집합으로 여기는 의역 집합의 총 수는 점차 줄어들게 된다.
이상에서 설명한 개념 및 의역 관계 시스템(100)을 이용하여 연관되는 개념 및 관계간의 연결성을 이용하여 개념 및 관계를 의역하는 방법에 대해 도 2 및 도 3을 참조로 설명한다.
도 2는 본 발명의 실시예에 따른 개념 및 관계를 의역하는 방법에 대한 흐름도이고, 도 3은 본 발명의 실시예에 따른 이중 이분 그래프 구조의 예시도이다.
먼저, 도 2에 도시된 바와 같이, 개념 및 의역 관계 시스템(100)은 지식 표현 말뭉치로부터 [주체-행동-객체]로 구성된 정보 집합을 추출하기 위하여, 말뭉치에 자연어 처리를 수행한다(S100). 즉, 자연어 처리부(110)는 말뭉치로부터 문장을 인식하고, 문장 내에 포함되어 있는 단어들에 품사 정보를 부착한다. 그리고, 문장 내에서 각 단어들의 의존 관계를 분석한다. 또한, 언어적 자질들에 의하여 각 단어들이 서술어를 중심으로 어떤 의미적 역할을 수행하는지 탐지하고, 탐지한 결과를 의미역으로 단어에 부착하여 준다.
이와 같이 문장에 대한 구문적인 처리와 의미적인 처리가 수행되면, 자연어 처리부(110)는 문서 내에서 동일한 대상에 대해 다르게 표현한 상호 참조 표현들이 있는지 확인하고, 상호 참조 표현들이 있는 경우 하나의 군집으로 연결하여 준다. 그리고 자연어 처리부(110)는 문장에 상대적인 시점으로 기술된 시간 표현들(예를 들어, '어제', '2주 후' 등)을 절대적인 시간 표현(예를 들어, '2015년 1월 1일' 등)으로 정규화시킨다.
그리고 나서 문장 내에서 실존하는 개체들 각각의 표현들을, 개체 전후의 문맥적 의미를 고려하여 실존 개체들에 대한 대용량 지식베이스 상의 고유 개체로 연결하여 준다. 자연어 처리부(110)가 문장을 인식하거나, 품사 정보를 부착하거나, 의존 관계를 분석하는 등의 방법은 이미 알려진 사항으로, 본 발명의 실시예에서는 상세한 설명을 생략한다.
이와 같이 자연어 처리부(110)가 말뭉치에 대한 자연어 처리를 완료하면, 집합 추출부(120)는 자연어 처리 과정에서 추출된 다양한 결과들을 이용하여 [주체-행동-객체]로 이루어진 정보 집합을 추출한다(S110). 정보 집합을 추출하기 위하여, 집합 추출부(120)는 ClearNLP 도구를 이용하여 의미역을 부착한다. 여기서 ClearNLP 도구는 단어 수준에서의 분석 결과만을 제공하기 때문에, 구 수준의 정보 추출을 위하여 Stanford CoreNLP 도구를 이용하여 토큰화(tokenization) 결과를 일관성 있게 사용하고, 이후에 가해지는 모든 자연어 처리에서 토큰 식별자를 유지하여 각종 분석 결과들을 효과적으로 균열 없이 통합할 수 있도록 한다. 여기서, Stanford CoreNLP 도구의 실행 방법이나 동작 방법은 이미 알려진 사항으로, 본 발명의 실시예에서는 상세한 설명을 생략한다.
그리고 집합 추출부(120)는 동사들의 핵심어에 각각 부여된 식별자를 통하여 정보 집합에 들어갈 행동 요소를 찾아낸다. 이를 통해, 동사 핵심어를 의존하면서 주요 논항으로 인식된 단어들을 주체와 객체로 인식할 수 있다. 여기서 주요 논항 구분이 달라지는 be 동사류 등은 구별하여 처리해주어야 하며, 동사들의 핵심어에 각각 부여된 식별자는 PropBank(도면 미도시)에 저장되어 있는 것을 예로 하여 설명한다.
집합 추출부(120)가 말뭉치에서 구 수준의 표현을 추출할 때에는, Stanford CoreNLP 도구에 의한 구문 분석 트리에서 명사구 범위를 인식하여 추출한다. 전치사구가 주체나 객체로 인식되는 경우 전치사가 구의 핵심어이므로, 전치사를 의존하는 명사구를 전치사로 대체함으로 일반 사람들이 표현하는 주체와 객체 표현을 얻을 수 있다.
또한, 집합 추출부(120)가 상호 참조 해결 및 시간 표현을 정규화화할 때에 구로 인식된 표현에서 핵심어를 결정하는 방법을 이용하며, 의존 분석 트리의 최상위 노드와 가장 가까운 단어를 핵심어로 결정하는 방법을 사용한다. 그리고 집합 추출부(120)가 개체명을 연결할 때에 워드넷(WordNet)과 위키백과(Wikipedia) 등에 결합하여 구축된 다국어 지식베이스를 이용하여 개체명을 검색한다. 이때, 하나의 개체에 여러 표현들이 존재할 때는, 웹 검색 엔진을 통하여 다수의 결과를 가져올 수 있는 표현을 대표로 정하는 방법을 사용한다.
이와 같이 정보 집합을 추출하면, 벡터 표현부(130)는 정보 집합 내 세 요소간의 연결성을 기반으로 주체 및 객체와 연관되어 사용되는 행동들을 파악하고, 파악한 행동들과 연관되어 사용되는 주체 및 객체를 파악하고 벡터로 표현한다(S120). 이를 위해, 벡터 표현부(130)는 수학식 1에서 설명한 이중 이분그래프 구조를 이용하여 주체, 행동, 객체를 표현한다.
여기서 이중 이분 그래프는 도 3에 도시한 바와 같이, 3가지 영역인 주체, 행동 및 객체에 대한 영역으로 구성되어 있다. 각 영역을 구성하는 정점은 텍스트로부터 추출한 정보 집합을 구성하는 세 요소로부터 해당 영역에 맞게 생성되며, 정보 집합이 1회 발생할 때 세 정점을 잇는 두 간선의 가중치는 1만큼 증가시킨다.
예를 들면, 'Apple launched iPhone 4 yesterday.'라는 문장으로부터 [Apple, launch, iPhone 4]라는 정보 집합이 추출이 된다. Apple과 launch를 잇는 간선의 가중치가 증가하고, launch와 iPhone 4를 잇는 간선의 가중치도 증가한다. 도 3에 도시한 바와 같이 Apple과 launch가 총 77회, launch와 iPhone 4가 총 31회 동시에 발생했음을 알 수 있다.
이때, Apple이 출시한 다른 제품들도 있으므로, Apple과 launch를 연결하는 간선의 가중치를 launch와 iPhone 4를 연결하는 간선의 가중치보다 더 높게 나타날 수 있다. 간선의 가중치는 시스템이나 사용자의 입력을 토대로 설정할 수 있으며, 본 발명의 실시예에서는 어느 하나의 형태로 한정하지 않는다.
이와 같이 벡터 표현부(130)가 정보 집합으로부터 이중 이분그래프를 구축하고, 각 주체, 행동, 객체를 다른 영역에 대한 연결성에 기반하여 벡터 표현으로 변환하면, 친밀성 측정부(140)는 벡터간의 유사도를 기반으로 친밀성을 측정한다(S130).
즉, 텍스트로부터 추출된 정보 집합으로 [Samsung Electronics, launch, Galaxy S3]가 있다고 가정한다. 이 경우도 위에서 설명한 [Apple, launch, iPhone 4] 정보 집합과 마찬가지로 정점들과 간선들이 형성되는데, 객체 영역에 있는 두 대상인 iPhone 4와 Galaxy 3는 정보 집합 상으로 둘 다 launch라는 행동이 다수 발생하는 등 함께 연결되는 행동들이 비슷한 패턴을 보이게 된다.
이에 대한 것을 그래프 구조를 이용한 기계적 계산 모델(computational model)을 통하여 유사도를 측정하고 의역 집합을 구성한다. 의역 집합을 예로 하여 설명하면, 객체 중에서 iPhone 4와 Galaxy 3가 유사하다고 판단하고, 주체 중에서 Apple과 Samsung Electronics가 유사하다고 판단하고, 행동 중에서 launch와 release가 유사하다고 판단하였다고 가정한다. 그러면, [(Apple, Samsung Electronics) - (launch, release) - (iPhone 4, Galaxy S3)]라는 의역 집합이 생성되고, 이는 휴대폰 단말기 제조회사의 제품 출시 행동에 대한 의미들이 하나로 모이게 되는 효과를 얻게 되는 것이다.
S130 단계에서 계산한 친밀성 지수는 두 가지 면을 고려하여 다음 수학식 2와 같은 곱의 형태로 구한다.
Figure 112015111420975-pat00002
여기서,
Figure 112015111420975-pat00003
이고,
Figure 112015111420975-pat00004
수학식 2에 나타낸 바와 같이 친밀성 측정에 고려된 두 가지 면은 TAF(Total Association Frequency)와 IFD(Inverse Frequency Difference) 값이다. 친밀성 지수(closeness)는 TAF와 IFD의 곱으로 구해지고, 상대적 중요성을 거듭 제곱 지수인 지수 매개변수 α를 통해 조절할 수 있도록 한다. 지수 매개변수는 데이터의 특성이나 언어적 환경에 따라 달라질 수 있다.
여기서, ai와 aj는 각 영역에서 유사도를 비교하려는 두 대상을 의미하고, p 는 각 대상과 연결되는 다른 영역 상의 대상을 의미한다. 또한 P 는 p가 속한 집합을 의미한다.
예를 들면, 객체 영역에 있는 두 대상인 'Galaxy S3'와 'iPhone 4'는 행동 영역에 있는 'launch'와 함께 발생하게 되는데, ai와 aj는 'Galaxy S3'와 'iPhone 4'가 되고, p는 'launch가 되며, P는 행동 영역에 있는 모든 행동들의 집합이 된다. 이와 같은 매개변수들은 연결성을 기반으로 연관되어 사용되는 행동을 파악하기 위한 목적이므로, 계산에 사용되는 가중치(weight)로서 wgt(p, ai)는 행동과 연결되는 주체 또는 객체가 트리플을 통한 연결 횟수가 된다.
TAF에 사용되는
Figure 112015111420975-pat00005
는 하나의 주체 또는 객체가 행동 집합에 있는 각 행동과의 연결 횟수에 대한 합이므로, 해당 주체 또는 객체가 얼마나 자주 트리플에서 발생하였는지 알 수 있는 지표가 된다. IFD에 사용되는
Figure 112015111420975-pat00006
는 행동 집합에 있는 각 행동에 대해서 주체 또는 객체의 두 대상의 연결 횟수에 대한 차이를 구하여 모두 합한 값이다. 두 대상이 각 행동에 대해서 전혀 다르게 연결 패턴을 보이게 되면, 이 값이 커지게 되므로 IFD의 수치는 낮아지게 되고, 두 대상은 친밀성이 결과적으로 낮아지게 되는 것이다.
수학식 2를 통해 벡터간 유사도 기반의 친밀성이 측정되면, 의역 인식부(150)는 각 영역에서 1차로 측정된 친밀성 값을 토대로 높은 값을 갖는 각 개념 쌍들과 관계 쌍들을 변환 가능한 의역으로 인식하고 의역 집합에 추가한다(S140). 이때, 의역 집합에 의해 동일하다고 인식된 의역 표현들은 이중 이분그래프 상에서 더 이상 서로 다른 정점이 아닌 하나의 정점으로 표현되며, 연결된 간선들도 그에 따라 합쳐서 표현되고 가중치 또한 합쳐진 값이 된다.
또한 이중 이분그래프 상에는 주체, 행동, 객체에 상응하는 세 영역이 존재하는데, 한 영역에서 발견된 의역 집합에 의하여 전체 그래프 구조가 변하게 되어 다른 영역에서 발견할 수 있는 의역 집합에 다시 영향을 주게 된다. 이와 같은 종속 관계는 기댓값 최대화 알고리즘과 유사하게 기존의 의역 집합 추출을 기반으로 하여 증대된 의역 집합 추출을 찾아가는 과정을 반복하는 구조를 생각하게 한다.
[주체-행동-객체]로 구성된 정보 집합에서의 개념 및 의역을 효과적으로 인식하기 위하여, 의역 인식부(150)는 다수의 표현이 존재하는 순으로 객체들로부터 객체들 간의 의역 집합을 추출한다. 그리고 주체들로부터 주체들간의 의역 집합을 추출하고, 행동들로부터 행동들 간의 의역 집합을 추출한다. 이러한 의역 집합 추출 절차를 반복적으로 적용하면 단일 의역 집합의 범위는 점차 증가하게 되고, 의역 집합으로 여기는 의역 집합의 총 수는 점차 줄어들게 된다.
최종적으로 반복적 의역 집합 추출을 의역 집합의 표현 범위가 적당할 때에 중단하여야 하는데, 이는 실제 데이터를 사용하면서 실험적으로 정할 수 있게 된다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.

Claims (10)

  1. 개념과 관계에 대한 의역 집합을 추출하는 시스템에 있어서,
    외부로부터 입력되는 말뭉치를 자연어 처리하여 의미역이 부착된 말뭉치를 생성하는 자연어 처리부;
    상기 의미역이 부착된 말뭉치로부터 주체, 행동, 객체가 포함된 정보 집합을 추출하는 집합 추출부;
    상기 집합 추출부에서 추출한 정보 집합을 이중 이분 그래프로 구축하고, 상기 주체, 행동, 객체를 벡터 표현으로 변환하는 벡터 표현부;
    상기 벡터 표현부에서 변환된 벡터 표현을 이용하여 벡터 간의 유사도 기반으로 친밀성을 측정하는 친밀성 측정부; 및
    상기 친밀성 측정부가 측정한 친밀도를 기반으로, 친밀성이 높은 값을 갖는 개념 쌍들과 관계 쌍들을 변환 가능한 의역으로 인식하고 의역 집합으로 추출하는 의역 인식부
    를 포함하는 개념/관계 의역 시스템.
  2. 제1항에 있어서,
    상기 자연어 처리부는,
    상기 말뭉치를 자연어 처리하여 문장을 인식하고, 인식한 문장 내 단어들의 품사 정보를 부착하며, 문장 내 단어들 사이의 의존 관계를 분석하고 각 단어들에 대한 의미역을 부착하는 개념/관계 의역 시스템.
  3. 제2항에 있어서,
    상기 자연어 처리부는,
    상기 말뭉치 내의 동일한 대상에 대해 다르게 표현한 상호 참조 표현들을 하나의 군집으로 연결하고, 상대적 시점으로 기술된 시간 표현들을 절대적 시간 표현으로 정규화시키며, 상기 말뭉치 내의 개체들에 대한 표현을 실존 개체들에 대한 대용량 지식베이스 상의 고유한 개체로 연결하는 개념/관계 의역 시스템.
  4. 제1항에 있어서,
    상기 집합 추출부는,
    상기 자연어 처리부로부터 수신한 의미역이 부착된 말뭉치를 토큰화하여 상기 정보 집합에 포함될 행동 요소를 찾아내고, 동사 핵심어에 의존하면서 주요 논항으로 된 단어들에 따라 주체와 객체를 인식하는 개념/관계 의역 시스템.
  5. 제1항에 있어서,
    상기 벡터 표현부는,
    상기 집합 추출부에서 추출한 정보 집합에 포함된 주체, 행동, 객체간의 연결성을 기반으로 주체 및 객체와 연관되어 사용되는 행동을 파악하고, 행동과 연관되어 사용되는 주체 및 객체를 파악하는 개념/관계 의역 시스템.
  6. 개념/관계 의역 시스템이 개념과 관계를 의역하는 방법에 있어서,
    외부로부터 입력되는 말뭉치를 자연어 처리하여 의미역이 부착된 말뭉치를 생성하는 단계;
    상기 의미역이 부착된 말뭉치로부터 주체, 행동, 객체가 포함된 정보 집합을 추출하는 단계;
    상기 추출한 정보 집합을 이중 이분 그래프로 구축하고, 상기 주체, 행동, 객체를 벡터 표현으로 변환하는 단계;
    상기 벡터 표현을 토대로 벡터간 유사도를 기반으로 친밀성을 측정하는 단계; 및
    친밀성 값을 토대로 높은 값을 갖는 각 개념 쌍들과 관계 쌍들을 변환 가능한 의역으로 인식하고 의역 집합에 추가하는 단계
    를 포함하는 개념/관계 의역 방법.
  7. 제6항에 있어서,
    상기 의미역이 부착된 말뭉치를 생성하는 단계는,
    상기 말뭉치로부터 문장을 인식하고, 인식된 문장 내에 포함되어 있는 단어들에 품사 정보를 부착하는 단계;
    상기 인식된 문장 내에서 각 단어들의 의존 관계를 분석하고, 상기 각 단어들이 서술어를 중심으로 어떤 의미적 역할을 수행하는지 탐지하며, 탐지한 결과를 의미역으로 단어에 부착하는 단계;
    상기 인식된 문장 내에서 동일한 대상에 대해 다르게 표현한 상호 참조 표현들이 있는지 확인하고, 상호 참조 표현들이 있는 경우 하나의 군집으로 연결하는 단계;
    상기 인식된 문장에 제1 시점으로 기술된 시간 표현들을 제2 시간 표현으로 정규화하는 단계; 및
    상기 인식된 문장 내에 실존하는 개체들 각각의 표현들을, 상기 개체 전후의 문맥적 의미를 고려하여 실존 개체들에 대한 대용량 지식베이스 상의 고유 개체로 연결하는 단계
    를 포함하는 개념/관계 의역 방법.
  8. 제6항에 있어서,
    상기 정보 집합을 추출하는 단계는,
    상기 의미역이 부착된 말뭉치를 토큰화하는 단계;
    토큰화된 말뭉치로부터 상기 정보 집합에 포함될 행동 요소를 찾아내고, 동사 핵심어에 의존하면서 주요 논항으로 된 단어들을 주체와 객체로 인식하는 단계; 및
    토큰화된 말뭉치로부터 구 수준의 표현을 추출하고 구로 인식된 표현에서 핵심어를 결정하는 단계
    를 포함하는 개념/관계 의역 방법.
  9. 제6항에 있어서,
    상기 이중 이분 그래프는,
    G=[V, E]
    여기서, 점들의 집합인 V는 V=[VAgent, VPredicate, VPatient]로 나타내며, VAgent는 주체에 대한 점을, VPredicate는 행동에 대한 점을, VPatient는 객체들이 모인 점을 의미하고, 간선의 집합인 E는 E=[EAP, EPP]로 정의되는데 EAP는 주체에 대한 점과 행동에 대한 점 사이의 간선이 몇 개 형성되는지를 의미하고, EPP는 행동에 대한 점과 객체에 대한 점 사이의 간선이 몇 개 형성되는지를 의미함
    을 포함하는 개념/관계 의역 방법.
  10. 제6항에 있어서,
    상기 친밀성을 측정하는 단계는,
    Figure 112015111420975-pat00007

    로 계산되고,
    상기 TAF는
    Figure 112015111420975-pat00008
    이고, 상기 IFD는
    Figure 112015111420975-pat00009
    이며,
    ai와 aj는 각 영역에서 유사도를 비교하려는 두 대상을 의미하고, p 는 각 대상과 연결되는 다른 영역 상의 대상을 의미하며, P 는 p가 속한 집합을 의미하며,
    Figure 112015111420975-pat00010
    는 하나의 주체 또는 객체가 행동 집합에 있는 각 행동과의 연결 횟수에 대한 합이고,
    Figure 112015111420975-pat00011
    는 행동 집합에 있는 각 행동에 대해서 주체 또는 객체의 두 대상의 연결 횟수에 대한 차이를 구하여 모두 합한 값임
    을 포함하는 개념/관계 의역 방법.
KR1020150160487A 2015-02-24 2015-11-16 개념 및 관계 의역 시스템 및 방법 KR101644044B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20150026086 2015-02-24
KR1020150026086 2015-02-24

Publications (1)

Publication Number Publication Date
KR101644044B1 true KR101644044B1 (ko) 2016-08-01

Family

ID=56706992

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150160487A KR101644044B1 (ko) 2015-02-24 2015-11-16 개념 및 관계 의역 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101644044B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200093441A (ko) * 2019-01-28 2020-08-05 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 지식 그래프 중의 데이터 모델을 획득하는 방법, 장치, 기기 및 저장 매체
WO2021222119A1 (en) * 2020-04-28 2021-11-04 Encyclopaedia Britannica, Inc. Systems, methods, and apparatus for context-driven search

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100033585A (ko) * 2008-09-22 2010-03-31 숭실대학교산학협력단 단어연관그래프를 이용한 단어 의미의 자동 군집 기법
KR20120053207A (ko) * 2010-11-17 2012-05-25 한국과학기술정보연구원 술어-논항구조 기반의 관계 식별 방법 및 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100033585A (ko) * 2008-09-22 2010-03-31 숭실대학교산학협력단 단어연관그래프를 이용한 단어 의미의 자동 군집 기법
KR20120053207A (ko) * 2010-11-17 2012-05-25 한국과학기술정보연구원 술어-논항구조 기반의 관계 식별 방법 및 장치

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"개념 및 관계 분류를 통한 분야 온톨로지 구축", 정보과학회논문지:소프트웨어 및 응용 제35권제9호(pp. 562-571), 2008년 9월 *
"한국어 의미역 말뭉치 구축을 위한 반자동 태깅 도구 개발", 한국정보과학회 2014 한국컴퓨터종합학술대회 논문집(pp. 592-594). 2014년 06월 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200093441A (ko) * 2019-01-28 2020-08-05 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 지식 그래프 중의 데이터 모델을 획득하는 방법, 장치, 기기 및 저장 매체
KR102299744B1 (ko) * 2019-01-28 2021-09-08 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 지식 그래프 중의 데이터 모델을 획득하는 방법, 장치, 기기 및 저장 매체
US11556812B2 (en) 2019-01-28 2023-01-17 Beijing Baidu Netcom Science Technology Co., Ltd. Method and device for acquiring data model in knowledge graph, and medium
WO2021222119A1 (en) * 2020-04-28 2021-11-04 Encyclopaedia Britannica, Inc. Systems, methods, and apparatus for context-driven search
GB2610085A (en) * 2020-04-28 2023-02-22 Encyclopaedia Britannica Inc Systems, methods, and apparatus for context-driven search

Similar Documents

Publication Publication Date Title
Gupta et al. Analyzing the dynamics of research by extracting key aspects of scientific papers
Mills et al. Graph-based methods for natural language processing and understanding—A survey and analysis
Sravanthi et al. Semantic similarity between sentences
Gokul et al. Sentence similarity detection in Malayalam language using cosine similarity
Imam et al. An ontology-based summarization system for arabic documents (ossad)
Sabeti et al. LexiPers: An ontology based sentiment lexicon for Persian
CN110096599B (zh) 知识图谱的生成方法及装置
Gómez-Adorno et al. A graph based authorship identification approach
KR101396131B1 (ko) 패턴 기반 관계 유사도 측정 장치 및 방법
Flati et al. The CQC algorithm: Cycling in graphs to semantically enrich and enhance a bilingual dictionary
KR101644044B1 (ko) 개념 및 관계 의역 시스템 및 방법
Alian et al. Syntactic-semantic similarity based on dependency tree Kernel
Atabuzzaman et al. Leveraging grammatical roles for measuring semantic similarity between texts
Nebhi Named Entity Disambiguation using Freebase and Syntactic Parsing.
Chifu et al. A system for detecting professional skills from resumes written in natural language
Malandrakis et al. DeepPurple: Estimating sentence semantic similarity using n-gram regression models and web snippets
Molina et al. Discursive sentence compression
Vaishnavi et al. Paraphrase identification in short texts using grammar patterns
Conrado et al. Exploration of a rich feature set for automatic term extraction
Nargis et al. Generating an emotion ontology for roman urdu text
Karuppaiah et al. Hybrid approach for semantic similarity calculation between Tamil words
Arukgoda et al. A word sense disambiguation technique for sinhala
Peng et al. Towards structure-aware paraphrase identification with phrase alignment using sentence encoders
Mathew et al. Paraphrase identification of Malayalam sentences-an experience
Anke et al. TALN-UPF: Taxonomy learning exploiting CRF-based hypernym extraction on encyclopedic definitions

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190625

Year of fee payment: 4