KR102497539B1 - 의미역 결정 기술을 활용한 온톨로지 기반 지식베이스 구축 방법 - Google Patents

의미역 결정 기술을 활용한 온톨로지 기반 지식베이스 구축 방법 Download PDF

Info

Publication number
KR102497539B1
KR102497539B1 KR1020160008134A KR20160008134A KR102497539B1 KR 102497539 B1 KR102497539 B1 KR 102497539B1 KR 1020160008134 A KR1020160008134 A KR 1020160008134A KR 20160008134 A KR20160008134 A KR 20160008134A KR 102497539 B1 KR102497539 B1 KR 102497539B1
Authority
KR
South Korea
Prior art keywords
ontology
natural language
sentence
semantic
sentences
Prior art date
Application number
KR1020160008134A
Other languages
English (en)
Other versions
KR20170088467A (ko
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 서울대학교산학협력단
Priority to KR1020160008134A priority Critical patent/KR102497539B1/ko
Publication of KR20170088467A publication Critical patent/KR20170088467A/ko
Application granted granted Critical
Publication of KR102497539B1 publication Critical patent/KR102497539B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Machine Translation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)

Abstract

자연어 문장을 온톨로지 문장으로 자동 변환하는 온톨로지 기반 지식베이스 구축 방법에 관한 것으로서, (a) 온톨로지 프로퍼티와 격-의미역 묶음 연결 모델(이하 연결 모델)을 생성하는 단계; (b) 변환할 자연어 문장을 입력받는 단계; (c) 상기 자연어 문장의 각 요소들에 대하여 의미역 결정을 하는 단계; (d) 상기 의미역 결정을 통해 나온 격과 의미역을 이용하여, 상기 연결 모델을 참조하여 온톨로지 프로퍼티를 검출하는 단계; (e) 상기 자연어 문장에 대하여 개체명 인식을 수행하는 단계; (f) 상기 (g)단계에서 개체명 인식(Named Entity Recognition) 기술을 통해 추출된 고유명사들을 기반으로 온톨로지 문장의 주어나 목적어에 해당할 가능성이 있는 개체(Resource)를 검색하는 단계; (g) 상기 (d)단계에서 검출한 온톨로지 프로퍼티와, 상기 (f)단계에서 검색한 개체들을 조합하여 온톨로지 문장을 생성하는 단계; 및, (h) 온톨로지 문장 검사하는 단계를 포함하는 구성을 마련한다.
상기와 같은 온톨로지 기반 지식베이스 구축 방법에에 의하여, 방대하게 축척된 자연어 지식을 보다 논리적으로 엄격한 온톨로지를 기반으로 지식을 변환함으로써, 컴퓨터가 지식을 자동으로 처리할 수 있고 다양한 분야에서 이를 활용할 수 있다.

Description

의미역 결정 기술을 활용한 온톨로지 기반 지식베이스 구축 방법 { An ontology based knowledge base construction method using semantic role labeling }
본 발명은 자연어 문장을 온톨로지 문장으로 자동 변환하는 온톨로지 기반 지식베이스 구축 방법에 관한 것이다. 여기에서 자연언어란 일반인이 일상에서 사용하는 한국어, 영어, 일본어 등을 의미하며 기계가 이해하는 프로그래밍 언어, 데이터 질의 언어 등과 대비된다. 자연언어는 반드시 완벽한 문법을 구사하지 않아도 사람 간의 의사소통에 큰 문제가 없다. 반면 온톨로지는 지식이나 정보를 표현하기 위한 엄격한 언어라고 할 수 있다.
일반적으로, 온톨로지 기반 지식베이스, 즉 온톨로지 구축을 하는 전통적인 방법은 사람이 수동으로 텍스트를 읽고 이를 온톨로지의 형식에 맞춰 입력하는 방식이다. 하지만 이는 너무 많은 시간과 비용이 발생하는 방법이다. 2000년대 이후부터는 구조화된 데이터베이스로부터 온톨로지를 자동으로 변환하는 다양한 기술들이 연구되어왔다. 하지만 구조화된 데이터베이스에 구축된 지식 보다는 자연어로 표현된 지식이 훨씬 많다.
자연언어란 일반인이 일상에서 사용하는 한국어, 영어, 일본어 등을 의미하며 기계가 이해하는 프로그래밍 언어, 데이터 질의 언어 등과 대비된다. 자연언어는 반드시 완벽한 문법을 구사하지 않아도 사람 간의 의사소통에 큰 문제가 없다. 반면 온톨로지는 지식이나 정보를 표현하기 위한 엄격한 언어라고 할 수 있다. 자연어는 인간-인간 간의 의사소통에는 매우 유용하게 활용되지만, 컴퓨터가 이를 이해하고 활용하기에는 충분히 엄격하지 못하다.
그렇기 때문에 보다 논리적으로 엄격한 온톨로지를 기반으로 지식을 표현하여 컴퓨터가 지식을 자동으로 처리할 수 있다면 다양한 분야에서 이를 활용할 수 있을 것으로 기대된다. 즉, 방대하게 축척된 자연어 지식을 온톨로지 기반의 지식으로 변환하는 기술이 필요하다. 이를 통해, 보다 다양한 지능 시스템의 연구 개발이 가능해질 것이다.
한편, 최근 DBpedia[비특허문헌 1], YAGO[비특허문헌 2] 등과 같이 다양하고 방대한 지식베이스들이 공개되고 있다. 이 지식베이스들은 대부분 온톨로지 기반 지식표현을 사용하고 있으며, 지식, 정보 통합, 전문가 시스템, 또한, QA(질문응답) 시스템 개발에 활용되고 있는 실정이다. 하지만 QA 시스템과 같이 자연어 처리 기술을 기반으로 하는 시스템의 경우 온톨로지 기반 지식베이스를 충분히 활용하기에는 어려움이 있다.
온톨로지 기반 지식표현은 주로 논리적인 질의 및 추론에 집중하는 반면, 어휘 정보나 언어 정보를 표현하기에는 어려움이 있다. 이를 보완히기 위해 레몬(Lemon) 모델[비특허문헌 3]과 같은 모델을 통해 용어나 언어 정보를 추가할 수 있지만, 여전히 자연어 기술과 온톨로지를 연결하기에는 부족한 면이 있다. 레몬(Lemon) 모델의 경우 온톨로지의 개체(클래스, 프로퍼티, 인스턴스)와 자연어 어휘를 연결할 수 있는 모델을 제시하고 있다. 클래스와 인스턴스는 자연어 어휘와의 연결이 비교적 용이하지만 프로퍼티의 경우 자연어 어휘와의 연결이 클래스나 인스턴스의 경우와 같이 단순하지 않다.
[비특허문헌 1] Christian Bizer, Jens Lehmann, Georgi Kobilarov, Soren Auer, Christian Becker, Richard Cyganiak, Sebastian Hellmann, "DBpedia - A crystallization point for the Web of Data", Web Semantics: Science, Services and Agents on the World Wide Web, 7, 3, pp.154??165, September, 2009. [비특허문헌 2] Fabian M. Suchanek, Gjergji Kasneci and Gerhard Weikum, "Yago - A Core of Semantic Knowledge", in 16th international World Wide Web conference(WWW2007), 2007. [비특허문헌 3] J. McCrae, D. Spohr, and P. Cimiano., "Linking lexical resources and ontologies on the semantic web with lemon", In Proc. of the 8th Extended Semantic Web Conference (ESWC2011), 2011. [비특허문헌 4] Karin Kipper, Hoa Trang Dang, Martha Palmer, "Class-Based Construction of a Verb Lexicon", In Proc. of the Seventeenth National Conference on Artificial Intelligence(AAAI2000), 2000. [비특허문헌 5] Fillmore, C. J., "The case for case", Universals in Linguistic Theory, 1968. [비특허문헌 6] Kingsbury, Paul and Martha Palmer, "From Treebank to Propbank", In Proc. of third International Conference on Language Resources and Evaluation(LREC2002), 2002.
본 발명의 목적은 상술한 바와 같은 문제점을 해결하기 위한 것으로, 온톨로지 프로퍼티와 자연어 어휘의 형태적 차이에 대해 명시하고, 이들을 서로 의미적으로 연결하기 위한 모델을 제시하는 온톨로지 기반 지식베이스 구축 방법을 제공하는 것이다.
또한, 본 발명의 목적은 변환의 대상이 되는 온톨로지의 모든 프로퍼티와 자연어의 모든 격-의미역 묶음 간의 의미적 연결 모델을 구축하고, 이 모델을 기반으로 자연어 처리 기술 중 의미역 결정(SRL, Semantic Role Labeling) 기술의 결과를 온톨로지 문장으로 변환하는, 온톨로지 기반 지식베이스 구축 방법을 제공하는 것이다.
특히, 본 발명의 목적은 버브넷(VerbNet) 프레임 간의 의미적 연결 모델을 제시하되, 상기 연결 모델에서 모든 온톨로지 프로퍼티는 하나의 버브넷(VerbNet) 프레임과 두 개의 인자로 연결되고, 이 때 두 개의 인자는 모두 해당 버브넷(VerbNet) 프레임에서 사용할 수 있는 인자 목록에 해당되도록 하는, 온톨로지 기반 지식베이스 구축 방법을 제공하는 것이다. 예를 들어 프로퍼티 'builder'는 프레임 'build-26.1-1'의 인자 중 'Product'와 'Agent' 간의 관계로 정의할 수 있다. 또한, 'builtWith'이라는 프로퍼티는 동일 프레임의 인자 중 'Product'와 'Material' 간의 관계로 정의할 수 있다.
상기 목적을 달성하기 위해 본 발명은 온톨로지 기반 지식베이스 구축 방법에 관한 것으로서, (a) 온톨로지 프로퍼티와 격-의미역 묶음 연결 모델(이하 연결 모델)을 생성하는 단계; (b) 변환할 자연어 문장을 입력받는 단계; (c) 상기 자연어 문장의 각 요소들에 대하여 의미역 결정을 하는 단계; (d) 상기 의미역 결정을 통해 나온 격과 의미역을 이용하여, 상기 연결 모델을 참조하여 온톨로지 프로퍼티를 검출하는 단계; (e) 상기 자연어 문장에 대하여 개체명 인식을 수행하는 단계; (f) 상기 (g)단계에서 개체명 인식(Named Entity Recognition) 기술을 통해 추출된 고유명사들을 기반으로 온톨로지 문장의 주어나 목적어에 해당할 가능성이 있는 개체(Resource)를 검색하는 단계; (g) 상기 (d)단계에서 검출한 온톨로지 프로퍼티와, 상기 (f)단계에서 검색한 개체들을 조합하여 온톨로지 문장을 생성하는 단계; 및, (h) 온톨로지 문장 검사하는 단계를 포함하는 것을 특징으로 한다.
또, 본 발명은 온톨로지 기반 지식베이스 구축 방법에 있어서, 상기 (a)단계에서, 사전에 주어진 학습용 자연어 문장과 온톨로지 문장들에 대하여 의미역 결정(SRL, Semantic Role Labeling) 엔진을 통해 문장의 격과 의미역들을 찾아내고, 온톨로지 문장의 프로퍼티와 자연어 문장의 격과 의미역들을 연결하여, 상기 연결 모델을 생성하는 것을 특징으로 한다.
또한, 본 발명은 온톨로지 기반 지식베이스 구축 방법을 수행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
상술한 바와 같이, 본 발명에 따른 온톨로지 기반 지식베이스 구축 방법에 의하면, 버브넷(VerbNet) 프레임 간의 의미적 연결 모델을 제시함으로서 온톨로지 프로퍼티에 풍부한 언어 정보를 부가할 수 있는 효과가 얻어진다.
또한, 본 발명에 따른 온톨로지 기반 지식베이스 구축 방법에 의하면, 방대하게 축척된 자연어 지식을 보다 논리적으로 엄격한 온톨로지를 기반으로 지식을 변환함으로써, 컴퓨터가 지식을 자동으로 처리할 수 있고 다양한 분야에서 이를 활용할 수 있는 효과가 얻어진다.
자연어는 인간-인간 간의 의사소통에는 매우 유용하게 활용되지만, 컴퓨터가 이를 이해하고 활용하기에는 충분히 엄격하지 못하다. 그렇기 때문에 보다 논리적으로 엄격한 온톨로지를 기반으로 지식을 표현하여 컴퓨터가 지식을 자동으로 처리할 수 있다면 다양한 분야에서 이를 활용할 수 있을 것이다. 또한, 보다 다양한 지능 시스템의 연구 개발이 가능해질 것이다.
대표적인 예로 애플의 시리(Siri)나 삼성의 S보이스에서 이를 활용하면 보다 다양한 질문에 대한 응답이 가능해지고, 구글, 네이버 등과 같은 검색 엔진에 이를 활용하면 단순 키워드에 적합한 문서가 아닌 질문에 적합한 정답을 제시하는 서비스로의 발전이 가능할 것이다. 더 나아가 로봇 분야에서 활용한다면 로봇이 사람과 의사소통하기 위해 필요한 사전 지식 구축에도 활용될 수 있을 것이다.
도 1은 본 발명을 실시하기 위한 전체 시스템의 구성을 도시한 도면.
도 2는 본 발명의 실시예에 따른 온톨로지 프로퍼티에 대한 예시도.
도 3은 본 발명의 실시예에 따른 버브넷(VerbNet) 프레임에 대한 예시도.
도 4는 본 발명의 일실시예에 따른 온톨로지 기반 지식베이스 구축 방법을 설명하는 흐름도.
도 5는 본 발명의 일실시예에 따른 온톨로지 프로퍼티와 격-의미역 묶음 간의 의미적 연결 모델에 대한 예시도.
도 6은 본 발명의 일실시예에 따른 의미역 결정(Semantic Role Labeling) 단계의 수행 결과의 예를 나타낸 표.
도 7은 본 발명의 일실시예에 따른 개체명 인식(Named Entity Recognition)의 결과를 나타낸 표.
도 8은 본 발명의 일실시예에 따른 온톨로지 문장 생성(Ontology Statement Generation) 결과를 나타낸 표.
도 9는 본 발명과 종래기술의 효과를 대비한 표.
이하, 본 발명의 실시를 위한 구체적인 내용을 도면에 따라서 설명한다.
또한, 본 발명을 설명하는데 있어서 동일 부분은 동일 부호를 붙이고, 그 반복 설명은 생략한다.
먼저, 본 발명을 실시하기 위한 전체 시스템 구성의 일례를 도 1을 참조하여 설명한다.
도 1a 또는 도 1b에서 보는 바와 같이, 본 발명에 따른 온톨로지 기반 지식베이스 구축 방법은 컴퓨터 단말 상의 프로그램 시스템 또는 네트워크 상의 서버 시스템으로 실시될 수 있다.
도 1a에서 보는 바와 같이, 본 발명에 따른 온톨로지 기반 지식베이스 구축 방법은 자연어 문장(10)을 입력받아 상기 자연어 문장으로부터 온톨로지로 표현되는 지식을 추출하는 컴퓨터 단말(20) 상의 프로그램 시스템으로 실시될 수 있다. 즉, 상기 온톨로지 기반 지식베이스 구축 방법은 프로그램으로 구성되어 컴퓨터 단말(20)에 설치되어 실행될 수 있다. 컴퓨터 단말(20)에 설치된 프로그램은 하나의 프로그램 시스템(30)과 같이 동작할 수 있다. 온톨로지 기반 지식베이스 구축 방법(30)에서 필요한 데이터들은 컴퓨터 단말(10)의 하드디스크 등 저장공간에 저장되어 이용된다.
도 1b와 같이, 본 발명의 실시를 위한 전체 시스템의 일례는 네트워크(22)에 연결된 서버(30)로 구성될 수 있다. 지식베이스 구축 서버(30)는 네트워크(22)에 연결된 콘텐츠 서버(12)들로부터 자연어 문장을 가져와서, 온톨로지로 표현되는 지식을 추출할 수 있다. 이때, 필요한 데이터를 저장하기 위한 데이터베이스(40)를 더 구비할 수 있다. 데이터베이스(40)는 서버(30)에서 필요한 데이터를 저장하는 통상의 저장매체로서, 자연어 문장으로부터 추출하고 변환된 온톨로지 지식을 저장한다. 바람직하게는, 데이터베이스(40)는 온톨로지 구조의 DB로 구현될 수 있다.
다음으로, 본 발명에 따른 온톨로지 프로퍼티의 구조 형태와, 자연어 어휘 형태, 및, 그들 간의 형태적 차이에 대하여 설명한다. 본 발명은 자연어 문장을 온톨로지의 구조로 지식을 추출하려는 것이므로, 이들 간의 형태적 차이를 먼저 이해하는 것이 필요하다.
먼저, 온톨로지 프로퍼티의 구조 형태에 대하여 설명한다.
RDF 기반 지식표현에서 온톨로지의 프로퍼티는 두 개체 사이의 관계를 표현하기 위해 정의한다. 예를 들어 'builder'라는 프로퍼티는 건축물 개체와 사람 개체 사이의 관계를 표현하기 위해 정의할 수 있다. 또는, 'builtWith'이라는 프로퍼티를 정의하고 건축물과 자재의 관계를 표현할 수 있다.
온톨로지 프로퍼티를 유용하게 활용하기 위해 주로 두 가지 종류의 정보를 정의한다. 첫 번째 정보는 의미적 정보로서 프로퍼티의 타입, 도메인, 레인지와 같은 정보를 말한다. 이 정보는 주로 논리적인 질의나 추론에 활용하기 위해 정의한다. 두 번째 정보는 언어적 정보로서 프로퍼티의 이름, 정의 등의 정보를 말한다. 이 정보는 주로 자연어와 온톨로지 간의 연결을 위해 활용하기 위해 정의한다.
자연어를 사용하는 사람이 온톨로지 프로퍼티를 식별하고, 이해할 수 있는 것은 이와 같은 언어적 정보가 있기 때문이다. 하지만 자연어 처리 기술을 활용하는 시스템에서는 이와 같은 언어적 정보가 충분하지 않은 경우가 많다. 프로퍼티의 이름이나, 정의만으로 자연어에서 나타는 어휘들과의 연결이 어렵다. 따라서 온톨로지 프로퍼티와 자연어 어휘 간의 의미적 연결을 위한 모델이 필요하다.
온톨로지 프로퍼티의 예를 도 2에 도시하고 있다.
다음으로, 자연어 어휘를 의미로 분류하기 위한 구조 형태인, 격(또는 프레임)과 의미역(또는 인자)에 대하여 설명한다.
자연어 문장은 기본적으로 서술어와 명사구에 의해 구성된다. 이때, 명사구는 문장의 핵심이 되는 서술어에 대한 특정한 의미적 역할을 갖게 된다. 이는 행위자, 대상, 처소 등 문장에서의 의미 기능에 초점을 두는 것이다.
이와 같은 의미에 따라 동사를 분류한 것이 버브넷(VerbNet) 프레임이 있다. 버브넷(VerbNet)[비특허문헌 4]은 약 5,800개의 동사를 270개의 동사 부류로 분류하고, 각 동사 부류 별로 사용 가능한 인자(또는 의미역)를 정의하고 있다. 이때, 270개의 동사 부류를 다른 말로 격(또는 프레임)이라고 부른다. 예를 들어 'build-26.1-1'라는 격(또는 프레임)은 'build', 'make' 등 7개의 동사로 활용될 수 있으며, 'Agent', 'Material', 'Product' 등 5개의 의미역(또는 인자)이 활용될 수 있다.
버브넷(VerbNet) 프레임의 예가 도 3에 도시되고 있다.
버브넷(VerbNet)은 프레임넷(FrameNet)[비특허문헌 5], 프롭뱅크(PropBank)[비특허문헌 6]와 더불어 자연어 처리 기술 중 문장을 프레임 중심으로 분석하는 의미역 결정(Semantic Role Labeling) 기술에 활용된다. 자연어 문장을 입력으로 하는 의미역 결정(Semantic Role Labeling) 엔진은 문장의 각 요소에 의미적 정보를 부여한다. 이때 의미적 정보에 해당하는 것이 격(또는 프레임)과 의미역(또는 인자)이다. 예를 들어 '에펠탑은 귀스타브 에펠에 의해 건축되었으며, 금속으로 지어졌다.'라는 자연어 문장에 대해 '에펠탑(Product)은 귀스타브 에펠(Agent)에 의해 건축(build-26.1-1)되었으며, 금속(Material)으로 지어졌다.'와 같은 분석 결과를 제공한다.
다음으로, 온톨로지 프로퍼티 구조와 자연어의 의미 분류 구조 간의 형태적 차이에 대하여 설명한다.
온톨로지 프로퍼티는 두 개체간의 관계를 표현하기 위한 이항관계인 반면, 격(또는 프레임, 버브넷 프레임)은 여러 개체 간의 관계를 표현하는 다항관계이다. 예를 들어 'builder'라는 프로퍼티와 'builtWith'이라는 프로퍼티는 각각 건축물과 사람 간의 관계, 그리고 건축물과 자재 간의 관계를 표현한다. 반면 'build-26.1-1'라는 격은 건축물과 사람 간의 관계, 그리고 그 시간까지 표현할 수 있다. 온톨로지 프로퍼티를 중심으로 설명한다면 'builder'라는 프로퍼티는 'build-26.1-1'라는 격(또는 프레임)의 의미역(또는 인자) 중 'Product'와 'Agent'간의 관계를 표현하는 프로퍼티라고 할 수 있다. 이와 같은 형태적 패턴을 기반으로 온톨로지 프로퍼티와 격(또는 프레임) 간의 의미적 연결이 가능하다.
다음으로, 본 발명의 일실시예에 따른 온톨로지 기반 지식베이스 구축 방법을 도 4를 참조하여 설명한다.
도 4에서 보는 바와 같이, 본 발명에 따른 온톨로지 기반 지식베이스 구축 방법(30)은 (a) 의미적 연결 모델을 생성하는 단계(S10), (b) 자연어 문장 입력 단계(S20), (c) 의미역 결정(Semantic Role Labeling) 단계(S30), (d) 프로퍼티 검출(Property Detection) 단계(S40), (e) 개체명 인식(Named Entity Recognition) 단계(S50), (f) 자원 개체 검출(Resource Detection) 단계(S60), (g) 온톨로지 문장 생성(Ontology Statement Generation) 단계(S70), 및, (h) 온톨로지 문장 검증(Ontology Statement Validation) 단계(S80)를 더 포함하여 구성될 수 있다.
도 4와 같이, 의미역 결정 단계(S30)와 프로퍼티 검출 단계(S40), 및 개체명 인식 단계(S50)와 자원 개체 검출 단계(S60)는 서로 병행되거나 순서에 상관없이 수행될 수 있다.
먼저, 의미적 연결 모델을 생성하는 단계(S10)를 설명한다. 즉, 온톨로지 프로퍼티와 격-의미역 묶음 연결 모델(또는 의미적 연결 모델, 연결 모델)을 생성한다.
온톨로지 프로퍼티는 두 개체간의 관계를 표현하기 위한 이항관계인 반면, 자연어의 격은 여러 개체 간의 관계를 표현하는 다항관계이다. 또한, 온톨로지 프로퍼티와 격(또는 프레임) 사이에는 의미적 격차가 생기게 된다. 따라서 온톨로지 프로퍼티와 격-의미역 묶음을 의미적으로 연결할 수 있는 모델이 필요하다.
도 5는 온톨로지 프로퍼티와 격-의미역 묶음을 의미적으로 연결하기 위한 모델을 예시하고 있다.
<<Property>>는 온톨로지 프로퍼티를 의미하며, <<Frame>>과 <<Argument>>는 각각 격(또는 프레임)과 의미역(또는 인자)을 의미한다. 상기 의미적 연결 모델에 따라 온톨로지의 모든 프로퍼티는 특정 격과 두 개의 의미역으로 연결될 수 있다. 이는 다음과 같이 해석할 수 있다.
'builder'라는 프로퍼티는 'build-26.1-1'라는 격의 'Product'라는 의미역과 'Agent'라는 의미역 사이의 관계를 표현하는 프로퍼티이다. 더 나아가, 자연어 문장에서 'build-26.1-1'라는 격의 'Product'에 해당하는 값은 온톨로지 프로퍼티 'builder'의 주어(Subject)에 해당하며, 'Agent'에 해당하는 값은 온톨로지 프로퍼티 'builder'의 목적어(Object)에 해당한다. 의미역이 주어와 연결되는지 서술어와 연결되는지는 프로퍼티와 의미역의 관계인 소스 변수(source argument)와 타깃 변수(target argument)가 무엇인지에 따라 결졍된다.
상기 연결 모델을 구축하는 방법에는 수동으로 구축하는 방법과 자동으로 구축하는 방법이 있다. 여기에서는 자동으로 구축하는 방법에 대해 기술한다.
연결 모델을 자동으로 구축하기 위해서는 일정량의 자연어 문장과 그에 상응하는 온톨로지 문장들이 준비되어 있어야 한다. 연결 모델을 자동으로 구축하기 위해서는 모든 온톨로지 문장들에 대해 각 문장의 주어와 목적어를 자연어 문장에서 찾아야 한다. 그 다음으로 해당 문장을 입력으로 의미역 결정(SRL, Semantic Role Labeling) 엔진을 통해 문장의 격과 의미역들을 찾아낸 후, 온톨로지 문장의 프로퍼티와 자연어 문장의 격과 의미역들을 연결해준다. 모든 온톨로지 문장에 대해 이와 같은 절차를 거친 후 통계적으로 유의미한 연결 정보만을 채택하고 나머지 연결 정보는 버린다.
이와 같이 연결 모델을 자동으로 구축하기 위해서는 준비하는 학습용 자연어 문장과 그에 상응하는 온톨로지 문장들이 충분해야 하며, 많을수록 품질을 높일 수 있다.
이하에서, 입력되는 자연어 문장으로부터의 온톨로지 문장을 자동으로 변환하는데, 이때, 당해 단계(S10)에서 생성된 온톨로지 프로퍼티와 격-의미역 묶음 연결 모델을 이용한다. 즉, 변환의 대상에 해당하는 온톨로지의 모든 프로퍼티들을 대상으로 격-의미역 묶음이 연결되어 있어야 한다. 이를 기반으로 이하의 설명과 같이 온톨로지 문장 자동 추출이 가능하다.
다음으로, 자연어 문장을 입력 받는다(S20).
일례로서, 다음과 같은 자연어 문장이 입력될 수 있다. 이하에서 상기 자연어 문장을 온톨로지 문장으로 변환하는 예를 들어 설명한다.
[자연어 문장]
"에펠탑은 귀스타브 에펠에 의해 건축되었으며, 금속으로 지어졌다."
다음으로, 의미역 결정(Semantic Role Labeling) 단계(S30)를 설명한다.
의미역 결정(Semantic Role Labeling)은 자연어 문장의 각 요소들의 의미 관계를 파악하는 기술로써 어휘 중의성 해소와 더불어 자연언어처리에서의 의미 분석에서 매우 중요한 위치를 차지하고 있다. 의미역 결정(Semantic Role Labeling) 기술은 문장의 각 요소에 의미적 정보를 부여한다. 이때 의미적 정보에 해당하는 것이 격과 의미역이다.
앞서 자연어 문장에 대해 의미역 결정(Semantic Role Labeling)을 동작시키면 도 6과 같은 결과가 나온다.
다음으로, 프로퍼티 검출(Property Detection) 단계(S40)를 설명한다.
의미역 결정(Semantic Role Labeling)을 통해 나온 의미적 정보, 즉, 격과 의미역을 기반으로 온톨로지 프로퍼티와 격-의미역 묶음 연결 모델을 참조하여 관련있는 온톨로지 프로퍼티를 찾아낸다.
앞의 예시로 설명하면, 앞 단계의 결과 중 S1에 해당하는 에펠탑(Product), 귀스타브 에펠(Agent), 건축되(build-26.1-1)를 기반으로 온톨로지 프로퍼티 격-의미역 묶음 연결 모델에서 builder라는 프로퍼티가 적합함을 찾을 수 있다.
다음으로, 개체명 인식(Named Entity Recognition) 단계(S50)를 설명한다.
개체명 인식(Named Entity Recognition)은 종래의 기술로 자연어 문장 내에서 고유명사들을 추출하는 기술이다.
앞서 자연어 문장에 대하여, 개체명 인식(Named Entity Recognition)을 수행하게 되면 도 7과 같은 결과가 나온다.
다음으로, 온톨로지 개체 검출(Resource Detection) 단계(S60)를 설명한다.
앞서 개체명 인식(Named Entity Recognition) 기술을 통해 추출된 고유명사들을 기반으로 온톨로지 문장의 주어나 목적어에 해당할 가능성이 있는 개체(Resource)를 찾아낸다.
앞의 결과에서, 에펠탑은 인공물(Artifact)이며, 귀스타브 에펠은 사람(Person)임을 알 수 있다. 해당 개체에 대한 온톨로지 개체(Resource)를 온톨로지에서 찾을 수 있다.
다음으로, 온톨로지 문장 생성(Ontology Statement Generation) 단계(S70)를 설명한다.
온톨로지 문장 생성(Ontology Statement Generation)은 찾아낸 프로퍼티와 개체들을 조합하여 온톨로지 문장들을 만들어내는 역할을 한다. 이때, 찾아진 프로퍼티와 개체들을 활용해 가능한 모든 조합의 온톨로지 문장들을 생성한다.
프로퍼티 검출(Property Detection)의 결과와 자원 개체 검출(Resource Detection)의 결과를 조합하면 도 8과 같은 온톨로지 문장들이 생성될 수 있다.
다음으로, 온톨로지 문장 검증(Ontology Statement Validation) 단계(S80)를 설명한다.
온톨로지 문장 검증(Ontology Statement Validation)은 앞 단계에서 생성된 온톨로지 문장들 중 오류가 있는 문장들을 걸러내는 역할을 한다. 온톨로지를 참조하여 논리적으로 불가능한 표현들을 찾아내고 이를 제거한다. 즉, 앞서 단계(S70)에서 생성된 온톨로지 문장들을 검증하여 실제로 적합한 온톨로지 문장을 제외한 문장들을 제거한다.
문제들을 검증하는 방법은 크게 두 가지가 있다. 첫째, 온톨로지 프로퍼티와 격-의미역 묶음 연결 모델을 근간으로 하는 방법이다. 각 문장의 프로퍼티에 대한 소스인자(source argument)와 타겟(target argument)가 의미역 결정 결과의 의미역과 매칭되는지 확인하는 방법이다. 이 경우 S1을 제외한 모든 문장들은 삭제된다.
두 번째 방법은 온톨로지 스키마를 참조하여 각 문장의 프로퍼티의 도메인과 레인지가 개체명 인식 결과의 개체유형과 매칭되는지 확인하는 방법이다. 이 경우에도 S1을 제외한 모든 문장들이 삭제된다. 이와 같은 방법을 기반으로 무의미하게 생성된 온톨로지 문장들을 제거할 수 있다.
다음으로, 본 발명의 효과를 보다 구체적으로 설명한다.
자연어 문장을 온톨로지 문장으로 변환하는 종래의 기술은 자연어 구문 분석을 통해 통계적으로 빈도가 잦은 구문 패턴을 대상 온톨로지의 문장으로 변환하는 규칙을 생성하는 방식이다. 이 경우 자연어 특징상 수 많은 구문 패턴이 존재할 수 있으며, 모든 구문 패턴에 대해 온톨로지 문장으로 변환하는 규칙을 생성해야 하는 번거로움이 있다.
반면 본 발명에서 활용하는 의미역 결정(Semantic Role Labeling)은 구문 패턴보다 경우의 수가 훨씬 적으며, 모든 경우에 대해 온톨로지 문장 변환 규칙을 생성하는 방식이 아닌 프로퍼티와의 의미적 연결을 생성하는 것에 그친다. 이를 기반으로 자동 추출 단계에서 그 의미적 연결을 기반으로 동적으로 다양한 규칙에 따라 자연어 문장을 온톨로지 문장으로 변환하게 된다.
또한, 구문 패턴 기반의 종래의 기술은 문장의 유형, 즉, 평서형 문장이나 의문형 문장에 따라 다른 구문 패턴이 생기기 때문에 각기 다른 규칙들이 필요하다.
반면, 본 발명의 방법에서는 문장 유형, 즉 구문 패턴과 독립적인 연결 모델을 구축하기 때문에 입력의 문장 유형과 관계 없이 변환이 가능하다. 이는 몇 가지 추가적인 처리만으로도 자연어 질문을 온톨로지 질의(Query)로 변환할 수 있다는 것을 의미하며, 이는 질의응답 시스템의 핵심 기술에 해당한다.
따라서 본 발명에서 제시하는 자연어 문장을 온톨로지 문장으로 자동 변환하는 방법은 온톨로지 기반의 구조화된 지식베이스 구축 뿐 아니라, 구조화된 지식베이스 기반의 질의응답 시스템 구축에도 활용할 수 있다. 자연어 문장 대신 자연어 질문을 입력으로 하고, 몇 가지 규칙들을 추가한다면 온톨로지 질의로 자동 변환할 수 있을 것이다.
이상, 본 발명자에 의해서 이루어진 발명을 상기 실시 예에 따라 구체적으로 설명하였지만, 본 발명은 상기 실시 예에 한정되는 것은 아니고, 그 요지를 이탈하지 않는 범위에서 여러 가지로 변경 가능한 것은 물론이다.
11 : 자연어 문장 12 : 콘텐츠 서버
21 : 사용자 단말 22 : 네트워크
30 : 지식베이스 구축 서버 40 : 데이터베이스

Claims (3)

  1. 온톨로지 기반 지식베이스 구축 방법을 수행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 있어서,
    (a) 온톨로지 프로퍼티와 격-의미역 묶음 연결 모델을 생성하는 단계;
    (b) 변환할 자연어 문장을 입력받는 단계;
    (c) 상기 자연어 문장의 각 요소들에 대하여 의미역 결정을 하는 단계;
    (d) 상기 의미역 결정을 통해 나온 격과 의미역을 이용하여, 상기 연결 모델을 참조하여 온톨로지 프로퍼티를 검출하는 단계;
    (e) 상기 자연어 문장에 대하여 개체명 인식을 수행하는 단계;
    (f) 상기 (e)단계에서 개체명 인식(Named Entity Recognition) 기술을 통해 추출된 고유명사들을 기반으로 온톨로지 문장의 주어나 목적어에 해당할 가능성이 있는 개체(Resource)를 검색하는 단계;
    (g) 상기 (d)단계에서 검출한 온톨로지 프로퍼티와, 상기 (f)단계에서 검색한 개체들을 조합하여 온톨로지 문장을 생성하는 단계; 및,
    (h) 온톨로지 문장을 검증하는 단계를 포함하는 것을 특징으로 하는 온톨로지 기반 지식베이스 구축 방법을 수행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  2. 제1항에 있어서,
    상기 (a)단계에서, 사전에 주어진 학습용 자연어 문장과 온톨로지 문장들에 대하여 의미역 결정(SRL, Semantic Role Labeling) 엔진을 통해 문장의 격과 의미역들을 찾아내고, 온톨로지 문장의 프로퍼티와 자연어 문장의 격과 의미역들을 연결하여, 상기 연결 모델을 생성하는 것을 특징으로 하는 온톨로지 기반 지식베이스 구축 방법을 수행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  3. 삭제
KR1020160008134A 2016-01-22 2016-01-22 의미역 결정 기술을 활용한 온톨로지 기반 지식베이스 구축 방법 KR102497539B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160008134A KR102497539B1 (ko) 2016-01-22 2016-01-22 의미역 결정 기술을 활용한 온톨로지 기반 지식베이스 구축 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160008134A KR102497539B1 (ko) 2016-01-22 2016-01-22 의미역 결정 기술을 활용한 온톨로지 기반 지식베이스 구축 방법

Publications (2)

Publication Number Publication Date
KR20170088467A KR20170088467A (ko) 2017-08-02
KR102497539B1 true KR102497539B1 (ko) 2023-02-08

Family

ID=59651725

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160008134A KR102497539B1 (ko) 2016-01-22 2016-01-22 의미역 결정 기술을 활용한 온톨로지 기반 지식베이스 구축 방법

Country Status (1)

Country Link
KR (1) KR102497539B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102152900B1 (ko) * 2020-02-24 2020-09-07 주식회사 엘솔루 중의적 음절 데이터 처리 방법 및 장치
CN114444512B (zh) * 2022-01-24 2024-04-09 中科合肥智慧农业协同创新研究院 一种基于本体知识库的自然语言领域数据集自动标注方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150081711A1 (en) 2013-09-19 2015-03-19 Maluuba Inc. Linking ontologies to expand supported language

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101016110B1 (ko) * 2008-06-30 2011-02-17 주식회사 케이티 온톨로지 프로퍼티를 이용한 온톨로지 인스턴스 추출시스템 및 그 방법
KR101012504B1 (ko) * 2008-10-29 2011-02-08 한국과학기술원 의존 문법 구문 트리의 탐색을 통한 자동 관계 트리플 추출방법
KR101176772B1 (ko) * 2009-09-11 2012-08-23 한국과학기술원 문장 온톨로지 생성을 위한 자동 어노테이션 시스템 및 방법
KR20140051606A (ko) * 2012-10-23 2014-05-02 에스케이텔레콤 주식회사 Rdf 기반의 문장 온톨로지를 이용한 일관성 평가 방법 및 장치
US20140207776A1 (en) * 2013-01-22 2014-07-24 Maluuba Inc. Method and system for linking data sources for processing composite concepts

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150081711A1 (en) 2013-09-19 2015-03-19 Maluuba Inc. Linking ontologies to expand supported language

Also Published As

Publication number Publication date
KR20170088467A (ko) 2017-08-02

Similar Documents

Publication Publication Date Title
Gangemi et al. Semantic web machine reading with FRED
US10303683B2 (en) Translation of natural language questions and requests to a structured query format
Unger et al. An introduction to question answering over linked data
KR101130444B1 (ko) 기계번역기법을 이용한 유사문장 식별 시스템
US9740685B2 (en) Generation of natural language processing model for an information domain
US10754886B2 (en) Using multiple natural language classifier to associate a generic query with a structured question type
Ferrández et al. The QALL-ME Framework: A specifiable-domain multilingual Question Answering architecture
RU2626555C2 (ru) Извлечение сущностей из текстов на естественном языке
JP6676110B2 (ja) 発話文生成装置とその方法とプログラム
JP2012520528A (ja) 自然言語テキストの自動的意味ラベリングのためのシステム及び方法
KR102041621B1 (ko) 인공지능 음성인식 기반 기계학습의 대규모 말뭉치 구축을 위한 대화형 말뭉치 분석 서비스 제공 시스템 및 구축 방법
JP2011118689A (ja) 検索方法及びシステム
KR101654717B1 (ko) 지식 데이터베이스 기반 구조화된 질의 생성 방법 및 장치
KR101805607B1 (ko) 고객의 소리 데이터로부터 요약문을 생성하는 방법
KR20120064559A (ko) 오픈 웹 질의응답을 위한 질문분석 장치 및 방법
KR20180093157A (ko) 의존구문 분석 기술 및 의미 표현 기술을 활용한 질문 번역 시스템 및 방법
KR102497539B1 (ko) 의미역 결정 기술을 활용한 온톨로지 기반 지식베이스 구축 방법
Jabalameli et al. Ontology‐lexicon–based question answering over linked data
CN114091464B (zh) 一种融合五维特征的高普适性多对多关系三元组抽取方法
Di Maro et al. Graph databases for designing high-performance speech recognition grammars
Khoufi et al. Chunking Arabic texts using conditional random fields
US11386273B2 (en) System and method for negation aware sentiment detection
KR102203895B1 (ko) 임베딩 기반의 인과 관계 탐지 시스템과 방법 및 이를 실행하기 위한 프로그램이 기록된 기록매체
Harsha et al. Lexical Ambiguity in Natural Language Processing Applications
KR100952418B1 (ko) 어휘망을 이용한 질의어 확장 시스템 및 그 방법과 그방법에 대한 컴퓨터 프로그램을 저장한 기록매체

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant