KR19980067267A - 부분문장 파싱기능을 가진 구문해석기 - Google Patents

부분문장 파싱기능을 가진 구문해석기 Download PDF

Info

Publication number
KR19980067267A
KR19980067267A KR1019970003198A KR19970003198A KR19980067267A KR 19980067267 A KR19980067267 A KR 19980067267A KR 1019970003198 A KR1019970003198 A KR 1019970003198A KR 19970003198 A KR19970003198 A KR 19970003198A KR 19980067267 A KR19980067267 A KR 19980067267A
Authority
KR
South Korea
Prior art keywords
sentence
parsing
natural language
information
parsing table
Prior art date
Application number
KR1019970003198A
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 김광호
Priority to KR1019970003198A priority Critical patent/KR19980067267A/ko
Publication of KR19980067267A publication Critical patent/KR19980067267A/ko

Links

Landscapes

  • Machine Translation (AREA)

Abstract

본 발명은 자연언어 해석장치 중 부분문장 파싱기능을 가진 구문해석기에 관한 것으로서, 구문해석기는 자연언어의 문맥자유문법과 부분문장을 포함하여 파싱하고자 하는 문장의 구구조의 집합을 입력받아, 자연언어를 파싱할 때 취할 동작을 결정하기 위한 정보를 지닌 파싱테이블을 생성하는 파싱테이블생성기; 문장을 입력받아, 문장을 이루고 있는 각 단어에 대해 해당 품사를 결정하여 각 단어와 함께 출력하는 형태소해석기; 문장을 구성하는 각 단어를 형태소해석기에서 결정된 해당 품사와 함께 입력받아, 파싱테이블생성기에서 생성된 파싱테이블의 정보에 의해 문장의 구조에 따른 스택구조의 구문정보를 생성하는 상태관리기; 상태관리기에서 생성된 스택구조의 구문정보로부터 트리구조의 구문정보를 생성하는 트리추출기를 포함함을 특징으로 한다.
본 발명에 의하면, 입력된 문장이 완전한 문장이 아닌 문장의 일부인 경우에도 불필요한 연산없이 적절한 구구조 트리를 생성하여, 구문해석을 필요로 하는 기계번역이나 자연언어 이해시스템과 같은 자연언어 응용시스템의 성능향상에 기여할 수 있다.

Description

부분문장 파싱기능을 가진 구문해석기
본 발명은 자연언어 해석장치에 관한 것으로서, 특히 자연언어 해석장치를 구문 해석기, 의미 생성기로 나누어 볼 때, 구문 해석기에 관한 것이다.
일반적으로 상기 구문해석기를 구성하는 알고리듬으로는 일반화된 엘.알 파싱(Generalized Left-to-Right Parsing : 이하에서 GLR 파싱이라 한다) 알고리듬이 사용된다. 상기 GLR 파싱 알고리듬은 완전한 하나의 문장을 구성하는 입력 문장을 구문해석하여 그 결과로 구문트리를 생성하여 준다. 그런데, 만약 입력된 문장이 하나의 완전한 문장이 아니고 부분문장인 경우, 상기 GLR 알고리듬은 이에 대해 적절한 구문을 생성하지 못한다.
불완전한 문장에 대해 구문구조를 생성하여 주기 위한 종래의 방법은 크게 다음과 같이 2가지 형태로 분류된다. 첫째, 완전한 문장이 아닌 문장에 대하여 여러가지의 휴리스틱(heuristic)을 이용하여 임의의 구구조를 만들어 주는 방법과 둘째, 명사구 파서(parser) 등과 같은 특정의 구구조를 만들어 주는 독립적인 파서를 별도로 유지하고, 입력문장의 구구조에 대응하는 파서를 수행시키는 방법이 있다.
상기 첫번째 접근 방법은 주어진 문장이 완전한 문장이 아닌 경우, 완전한 문장이 되도록 가상의 구조를 만들어 주는 것으로서, 다음과 같은 문제점이 있다. 먼저, 기계번역과 같은 응용분야에서 번역의 결과가 원하지 않은 형태로 될 수 있다. 예를 들면, 제목으로 사용되는 명사구가 입력되는 경우, 상기 첫번째 접근 방식에 의한 파서는 상기 명사구에 대하여 문장구조를 만들기 위하여 여러가지 시도를 하고, 동사가 생략된 구구조를 생성하여 준다. 따라서, 번역의 결과는 명사구로 번역되는 것이 아니라, 원문의 명사구를 포함한 임의의 문장이 된다. 즉, 대부분의 경우, …이다의 형태로 번역을 하여 준다. 그러나, 이것이 제목 형태를 번역하는 경우에는 적절한 번역 방법이 될 수 없다. 다음, 문장의 시작 시점에 나타나지 않는 구구조에 대해서는, 독립적으로 구조를 만들지 못하여 올바른 구문 구조를 만드는 데 실패하게 된다.
상기 두번째 접근 방법의 경우에는 실제 응용 시스템에서 다음과 같은 문제점이 발생한다. 먼저, 각 구구조마다 별도의 파싱 테이블을 유지하여야 하므로 메모리의 낭비가 심각해진다. 다음, 어떠한 규칙을 수정한 경우, 그 규칙에 관련된 모든 파싱 테이블은 다시 생성되어야 하므로, 시스템의 개발시 많은 시간과 노력이 낭비된다. 이것은 자연언어 시스템의 개발과정에서 문법의 튜닝에 많은 시간이 요구된다는 사실을 고려하면 아주 심각한 문제가 된다.
본 발명은 상기의 문제점을 해결하기 위하여 창작된 것으로서, 완전한 문장 뿐만 아니라 명사구, 부사구 등과 같은 부분문장에 대하여도 적절한 구문트리를 생성하여 주는 부분문장 파싱기능을 가진 구문해석기를 제공함을 목적으로 한다.
도 1은 본 발명에 의한 구문해석기의 구성을 도시한 블럭도이다.
도 2는 종래의 기술에 의한 완전한 문장을 파싱하기 위한 파싱테이블생성기의 일실시예인 LR파싱테이블생성기의 알고리듬을 도시한 것이다.
도 3은 본 발명에 의한 부분문장 파싱기능을 가진 파싱테이블생성기의 일실시예인 부분문장 파싱기능을 가진 LR파싱테이블생성기의 알고리듬을 도시한 것이다.
도 4는 종래의 기술에 의한 완전한 문장을 파싱하기 위한 상태관리기의 일실시예의 알고리듬을 도시한 것이다.
도 5는 본 발명에 의한 부분문장 파싱기능을 가진 상태관리기의 일실시예의 알고리듬을 도시한 것이다.
도 6a는 간단한 자연언어의 문맥자유문법의 일예를 도시한 것이다.
도 6b는 도 6a의 문맥자유문법에 대하여 완전한 문장(S)와 전치사구(PP) 파싱을 위한 규칙을 추가한 일예를 도시한 것이다.
도 6c는 도 6b의 규칙이 도 3의 파싱테이블생성기의 일 구성요소인 상태테이블생성기에 의해 처리된 결과를 도시한 것이다.
도 6d는 도 6c의 결과가 도 3의 파싱테이블생성기에 의해 처리된 파싱테이블의 일예를 도시한 것이다.
도 6e는 도 6d의 파싱테이블에 의해 부분문장이 파싱되어 생성된 구문트리의 일예를 도시한 것이다.
상기의 목적을 달성하기 위하여, 본 발명에 의한 자연언어의 문장, 상기 자연언어의 문맥자유문법 및 파싱하고자 하는 문장의 구조를 입력받아, 상기 문장의 의미를 분석하기 위해 필요한 트리구조의 구문정보를 생성하는 부분문장 파싱기능을 가진 구문해석기는 상기 자연언어의 문맥자유문법과 부분문장을 포함하여 파싱하고자 하는 문장의 구구조의 집합을 입력받아, 상기 자연언어를 파싱할 때 취할 동작을 결정하기 위한 정보를 지닌 파싱테이블을 생성하는 파싱테이블생성기; 상기 문장을 입력받아, 상기 문장을 이루고 있는 각 단어에 대해 해당 품사를 결정하여 상기 각 단어와 함께 출력하는 형태소해석기; 상기 문장을 구성하는 각 단어를 상기 형태소해석기에서 결정된 해당 품사와 함께 입력받아, 상기 파싱테이블생성기에서 생성된 파싱테이블의 정보에 의해 상기 문장의 구조에 따른 스택구조의 구문정보를 생성하는 상태관리기; 상기 상태관리기에서 생성된 스택구조의 구문정보로부터 트리구조의 구문정보를 생성하는 트리추출기를 포함함을 특징으로 한다.
이하에서 첨부된 도면을 참조하여 본 발명을 상세히 설명한다.
도 1은 본 발명에 의한 구문해석기의 구성을 도시한 블록도이다. 도 1에 의하면, 본 발명에 의한 구문해석기는 파싱테이블생성기(106), 형태소해석기(102), 상태관리기(104), 트리추출기(114)를 포함하여 구성된다.
상기 파싱테이블생성기(106)는 상기 자연언어의 문맥자유문법과 부분문장을 포함하여 파싱하고자 하는 문장의 구구조의 집합(105)을 입력받아, 상기 자연언어를 파싱할 때 취할 동작을 결정하기 위한 정보를 지닌 파싱테이블(107)을 생성한다.
도 2는 종래의 기술에 의한 완전한 문장을 파싱하기 위한 파싱테이블생성기의 일실시예의 알고리듬을 도시한 것이고, 도 3은 본 발명에 의한 부분문장 파싱기능을 가진 파싱테이블생성기의 일실시예의 알고리듬을 도시한 것이다. 즉, 본 발명에 의한 상기 파싱테이블생성기(106)은 GLR 파싱의 입력으로 주어지는 문장의 구구조의 초기상태를 별도로 두어 파싱테이블을 생성하도록 한다. 예를 들어, 임의의 문법 G에 존재하는 구구조 이름들 중에 파싱의 대상으로 삼고자 하는 구구조의 이름을 A1,A2,…,Am이라고 하면, 파싱테이블을 생성하기 전에 상기 문맥자유문법에 속하는 규칙의 집합에 다음과 같은 규칙들을 첨가한다.
S' - A1
S' - A2
S' - Am
그리고, 파싱테이블을 생성하는 시작 시점에 상기 규칙들이 포함된 초기상태를 형성한다.
상기 형태소해석기(102)는 문장(101)을 입력받아, 상기 문장을 이루고 있는 각 단어에 대해 해당 품사를 결정하여 입력문자 품사열(103)을 출력한다.
상기 상태관리기(104)는 상기 문장을 구성하는 각 단어를 상기 형태소해석기(102)에서 결정된 해당 품사와 함께 입력받아, 상기 파싱테이블생성기(106)에서 생성된 파싱테이블(107)의 정보에 의해 상기 문장의 구구조에 따른 스택구조의 구문정보(113)를 생성한다.
도 4는 종래의 기술에 의한 완전한 문장을 파싱하기 위한 상태관리기의 일실시예의 알고리듬을 도시한 것이고, 도 5는 본 발명에 의한 부분문장 파싱기능을 가진 상태관리기의 일실시예의 알고리듬을 도시한 것이다. 상기 상태관리기(104)는 세부적으로 그래픽구조스택(Graph-Structured Stack)(109)을 사용하여 파싱 상태를 관리하고, 상기 파싱테이블생성기(106)에서 생성된 파싱테이블(107)에 포함된 엑션(action) 정보와 이동(goto) 정보를 읽어내는 테이블참조기(108)와 상기 엑션정보와 이동정보에 따라 상기 입력문자 품사열(103)을 파싱처리하는 시프터(110), 리듀서(111) 및 이동기(112)를 구비한다. 이와 같은 상기 상태관리기(104)에 의한 구문 해석의 중간 또는 최종 결과들은 스택 구조로 저장된다.
상기 트리추출기(114)는 상기 상태관리기(104)에서 생성된 스택구조의 구문정보(112)로부터 트리구조의 구문정보(115)를 생성한다.
이하에서 본 발명에 의한 동작 과정을 하나의 예를 들어 상세히 설명한다.
도 6a는 간단한 자연언어의 문맥자유문법의 일예를 도시한 것이고, 도 6b는 도 6a의 문맥자유문법에 대하여 완전한 문장(S)와 전치사구(PP) 파싱을 위한 규칙을 추가한 일예를 도시한 것이다.
그리고, 도 6c는 도 6b의 규칙이 파싱테이블생성기(106)의 일 구성요소인 상태테이블생성기에 의해 처리된 결과를 도시한 것이고, 도 6d는 도 6c의 결과가 파싱테이블생성기(106)에 의해 처리된 파싱테이블(107)의 일예를 도시한 것이다.
도 6e는 도 6d의 파싱테이블(107)에 의해 부분문장의 하나인 전치사구(PP) For all people in Siwon에 대한 부분파싱의 결과인 구문트리를 도시한 것이다.
본 발명에 의하면, 입력된 문장이 완전한 문장이 아닌 문장의 일부인 경우에도 불필요한 연산없이 적절한 구구조 트리를 생성하여, 구문해석을 필요로 하는 기계번역이나 자연언어 이해시스템과 같은 자연언어 응용시스템의 성능향상에 기여할 수 있다.

Claims (1)

  1. 자연언어의 문장, 상기 자연언어의 문맥자유문법 및 파싱하고자 하는 문장의 구조를 입력받아, 상기 문장의 의미를 분석하기 위해 필요한 트리구조의 구문정보를 생성하는 구문해석기에 있어서,
    상기 자연언어의 문맥자유문법과 부분문장을 포함하여 파싱하고자 하는 문장의 구구조의 집합을 입력받아, 상기 자연언어를 파싱할 때 취할 동작을 결정하기 위한 정보를 지닌 파싱테이블을 생성하는 파싱테이블생성기;
    상기 문장을 입력받아, 상기 문장을 이루고 있는 각 단어에 대해 해당 품사를 결정하여 상기 각 단어와 함께 출력하는 형태소해석기;
    상기 문장을 구성하는 각 단어를 상기 형태소해석기에서 결정된 해당 품사와 함께 입력받아, 상기 파싱테이블생성기에서 생성된 파싱테이블의 정보에 의해 상기 문장의 구조에 따른 스택구조의 구문정보를 생성하는 상태관리기; 및
    상기 상태관리기에서 생성된 스택구조의 구문정보로부터 트리구조의 구문정보를 생성하는 트리추출기를 포함함을 특징으로 하는 부분문장 파싱기능을 가진 구문해석기.
KR1019970003198A 1997-02-01 1997-02-01 부분문장 파싱기능을 가진 구문해석기 KR19980067267A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970003198A KR19980067267A (ko) 1997-02-01 1997-02-01 부분문장 파싱기능을 가진 구문해석기

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970003198A KR19980067267A (ko) 1997-02-01 1997-02-01 부분문장 파싱기능을 가진 구문해석기

Publications (1)

Publication Number Publication Date
KR19980067267A true KR19980067267A (ko) 1998-10-15

Family

ID=65983728

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970003198A KR19980067267A (ko) 1997-02-01 1997-02-01 부분문장 파싱기능을 가진 구문해석기

Country Status (1)

Country Link
KR (1) KR19980067267A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010074426A2 (ko) * 2008-12-24 2010-07-01 주식회사 씽크풀 번역서비스 제공방법 및 그 시스템

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010074426A2 (ko) * 2008-12-24 2010-07-01 주식회사 씽크풀 번역서비스 제공방법 및 그 시스템
WO2010074426A3 (ko) * 2008-12-24 2010-09-16 주식회사 씽크풀 번역서비스 제공방법 및 그 시스템
KR101052004B1 (ko) * 2008-12-24 2011-07-27 주식회사 씽크풀 번역서비스 제공방법 및 그 시스템

Similar Documents

Publication Publication Date Title
US7321850B2 (en) Language transference rule producing apparatus, language transferring apparatus method, and program recording medium
KR100542755B1 (ko) 규칙 기반 방식과 번역 패턴 방식을 혼합한 하이브리드자동 번역 장치 및 방법과 그 프로그램을 기록한 컴퓨터로읽을 수 있는 기록매체
JPH0644296A (ja) 機械翻訳装置
JPH02281372A (ja) 機械翻訳装置における挿入副詞句処理方法
JP2007518164A (ja) 自動翻訳装置及びその自動翻訳装置を利用した自動翻訳方法並びにその自動翻訳装置が記録された記録媒体
JPH0344764A (ja) 機械翻訳装置
KR19980067267A (ko) 부분문장 파싱기능을 가진 구문해석기
WO1997048058A9 (en) Automated translation of annotated text
WO1997048058A1 (en) Automated translation of annotated text
Germann Making semantic interpretation parser-independent
Osborne et al. Learning unification-based grammars using the Spoken English Corpus
KR19990015131A (ko) 영한 자동번역 시스템의 숙어 번역 방법
JPH08190562A (ja) 機械翻訳装置
Kirschner et al. APAC—An experiment in machine translation
JP4033088B2 (ja) 自然言語処理システム及び自然言語処理方法、並びにコンピュータ・プログラム
KR100329109B1 (ko) 프로텍터와 구문노드를 포함하는 문틀을 이용한 자동번역기
JP3267168B2 (ja) 自然言語変換システム
Murthy Parsing Telugu in the UCSG formalism
JPH04296969A (ja) 機械翻訳装置
JP2687334B2 (ja) 機械翻訳装置
JP2003114890A (ja) 翻訳装置、翻訳方法、翻訳サーバおよびプログラム
JPH04335469A (ja) 翻訳装置
JPH1166069A (ja) 機械翻訳装置
JPH01213750A (ja) 機械翻訳用の構文解析におけるサルベージ方法
Langlais et al. Experiments with a Probabilistic Translation Assistant: would Statistical Grammars help?

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination