KR101279707B1 - 문서에서 정의를 식별하는 방법 및 정의 추출 시스템 - Google Patents

문서에서 정의를 식별하는 방법 및 정의 추출 시스템 Download PDF

Info

Publication number
KR101279707B1
KR101279707B1 KR1020087002614A KR20087002614A KR101279707B1 KR 101279707 B1 KR101279707 B1 KR 101279707B1 KR 1020087002614 A KR1020087002614 A KR 1020087002614A KR 20087002614 A KR20087002614 A KR 20087002614A KR 101279707 B1 KR101279707 B1 KR 101279707B1
Authority
KR
South Korea
Prior art keywords
phrase
definition
text
clue
text unit
Prior art date
Application number
KR1020087002614A
Other languages
English (en)
Other versions
KR20080033325A (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 마이크로소프트 코포레이션
Publication of KR20080033325A publication Critical patent/KR20080033325A/ko
Application granted granted Critical
Publication of KR101279707B1 publication Critical patent/KR101279707B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • 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/374Thesaurus
    • 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

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)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)

Abstract

문서들에서 정의들을 식별하는 방법은 텍스트 유닛들을 입력으로서 수신하는 단계를 포함한다. 이어서, 텍스트 유닛들 중 어느 것이 단서 문구를 포함하는지를 식별한다. 단서 문구를 포함하는 것으로 식별된 텍스트 유닛들에 대해, 단서 문구 주위에서 로컬 파싱을 수행하여 단서 문구를 포함하는 텍스트 유닛이 정의를 포함하는지를 판정한다.
정의 추출, 문서, 정의, 텍스트 유닛, 단서 문구

Description

문서에서 정의를 식별하는 방법 및 정의 추출 시스템{DEFINITION EXTRACTION}
아래의 설명은 단지 일반적인 배경 정보를 위해 제공되며, 청구 발명의 범위를 결정하는 데 있어서의 보조물로서 이용되는 것을 의도하지 않는다.
텍스트 소스로부터 정의를 발견하는 것은 인터넷 검색 엔진, 데스크톱 검색 애플리케이션, 및 관련 검색 애플리케이션에서 점점 중요한 특징이 되고 있다. 관련 검색 애플리케이션의 일례는, 보다 전통적인 검색 엔진들에서 일반적으로 제공되는 바와 같은 웹 페이지들 또는 문서들에 대한 다소 일반적으로 관련된 링크들의 리스팅과 달리, 특정 질문들에 대해 사용자 고유 답변을 제공하도록 설계된 유형의 질문 답변(QA) 애플리케이션이다. 이러한 다양한 검색 애플리케이션을 사용하여, 단어, 용어 또는 구에 대한 정의를 발견하거나, 사람에 대한 정보(본 명세서에서 정의로도 지칭됨)를 발견하기를 종종 원한다.
웹 상에서, 이메일에서 그리고/또는 퍼스널 데스크톱 데이터에서 발견되는 텍스트 정보의 양이 증가함에 따라, 새로운 용어들은 사전 및 백과 사전이 그들로 갱신되기 전에 매일 생성되고 있다. 예를 들어, "블로그(blog)"라는 단어는 한때 사전에 없었지만, 그때에도 이 단어에 관한 정보의 내부 텍스트 소스들이 발견될 수 있었다. 예를 들어, "blog"라는 단어에 관한 정보의 내부 텍스트 소스는 예 1에 나타난 것과 같은 서술문을 포함할 수 있다.
예 1
"A blog is a system for publishing images, text and video on the web, a diary enrichable with any sort of multimedia content that one wishes to share with other surfers."
또한, 몇몇 정의는 소스 텍스트들에서만 발견될 수 있다. 즉, 몇몇 단어는 텍스트 데이터에서만 발견될 수 있는 정보의 특성으로 인해 사전에는 리스트되지 않을 것이다. 한편, 텍스트 데이터에서 정확한 정의를 발견하는 것은 난제가 될 수 있으며, 고가의 처리를 필요로 할 수 있다. 정의를 정확하게 표현하는 텍스트 데이터를 식별하는 것은 다양한 난제를 제시한다. 예를 들어, 아래의 예 2-4에서 제공되는 문장들은 "is a"와 같은 정의 패턴들 상에서의 간단한 문자열 매칭으로는 문장이 정의를 포함하고 있는지의 여부를 식별하기에 충분하지 않다는 것을 보여준다.
예 2
"Microsoft Crop. is a great software company in Redmond."
예 3
"Microsoft Crop. is a software company in Redmond."
예 4
"Today is a valid workday."
이들 3개의 문장 모두가 "is a"라는 단어들 또는 패턴을 포함하지만, 예 3만이 정의를 나타낸다. 예 2의 문장은 정의가 아니라 의견을 나타낸다. 예 4의 문 장 또한 "is a"라는 정의 패턴을 포함하지만, 정의는 아니다.
매일 생기는 거대한 양의 새로운 데이터, 및 사용자 정보 요구에 빠르고 정확하게 응답해야 하는 필요성과 관련하여, 적절한 정의 또는 답변을 발견하기 위해 문서들을 빠르게 크롤링(crawling)하고 처리하는 컴포넌트들(예를 들어, QA 시스템들) 등에 검색 엔진용의 효율적인(빠른) 인덱싱 파이프라인을 제공하는 것이 중요하다.
<발명의 요약>
본 요약은 아래의 상세한 설명에서 더 설명되는 개념들의 선택을 간단히 소개하기 위해 제공된다. 본 요약은 청구 발명의 중요 특징들 또는 본질적 특징들을 식별하고자 하는 의도도 없고, 청구 발명의 범위를 결정하는 데 있어서의 보조물로서 이용하고자 하는 의도도 없다.
정의 추출 시스템 및 방법은 문서들, 예를 들어 웹 페이지 문서들, 데스크톱 문서들 등에서 정의들을 식별할 수 있는 능력을 제공한다. 방법 및 시스템은 피상적 언어 분석을 이용하여 보다 빠르게, 보다 정확하게, 또는 이 둘의 조합으로 정의들을 식별하도록 최적화될 수 있다. 예를 들어, 몇몇 실시예에서는, 단서 문구들을 포함하는 텍스트 유닛들(문장 등)이 식별된다. 이어서, 이들 텍스트 유닛에 대해 이들이 정의를 포함할 가능성이 있는지를 판정하기 위해 단서 문구 주위에서 로컬 파싱이 행해진다.
도 1은 개시되는 개념들이 실시될 수 있는 일반 컴퓨팅 환경의 블록도이다.
도 2는 정의 추출 시스템의 블록도이다.
도 3은 예시적인 단서 문구들을 나타내는 테이블이다.
도 4a은 예시적인 제외 규칙들을 나타내는 테이블이다.
도 4b는 특징 스코어링 양태들을 나타내는 테이블이다.
도 5는 방법 실시예를 나타내는 흐름도이다.
도 6은 방법 실시예를 나타내는 흐름도이다.
개시되는 실시예들은 텍스트 데이터를 분석하고 정의를 포함하는 문장, 단락 또는 기타 텍스트 유닛을 식별하는 방법, 장치 및 시스템을 포함한다. 텍스트 데이터는 예를 들어 인터넷과 같은 글로벌 컴퓨터 네트워크를 통해 이용 가능한 웹 페이지 또는 기타 문서의 형태일 수 있다. 텍스트 데이터는 또한 LAN 또는 데스크톱 상의 문서들의 집합일 수 있다. 또한, 정의들이 추출되는 텍스트 데이터는 단일 문서 또는 심지어 문서의 일부일 수 있다.
방법, 장치 및 시스템은 퍼스널 컴퓨터, 서버 컴퓨터 등을 포함하는 다양한 컴퓨팅 환경에서 구현될 수 있다. 실시예들을 더 상세히 설명하기 전에, 실시예들이 구현될 수 있는 예시적인 컴퓨팅 환경에 대한 유용할 수 있다. 도 1은 이러한 하나의 컴퓨팅 환경을 나타낸다.
도 1은 도시된 실시예들의 하나 이상의 양태가 구현될 수 있는 적합한 컴퓨팅 시스템 환경(100)의 일례를 도시하고 있다. 컴퓨팅 시스템 환경(100)은 적합한 컴퓨팅 환경의 일례에 불과하며, 도시된 실시예들의 용도 또는 기능성의 범위에 관해 어떤 제한을 암시하고자 하는 것이 아니다. 컴퓨팅 환경(100)이 예시적인 운영 환경(100)에 도시된 컴포넌트들 중 임의의 하나 또는 그 컴포넌트들의 임의의 조합과 관련하여 어떤 의존성 또는 요구사항을 갖는 것으로 해석되어서는 안 된다.
도시된 실시예들은 많은 기타 범용 또는 특수 목적의 컴퓨팅 시스템 환경 또는 구성에서 동작할 수 있다. 도시된 실시예들에서 사용하는 데 적합할 수 있는 잘 알려진 컴퓨팅 시스템, 환경 및/또는 구성의 예로는 퍼스널 컴퓨터, 서버 컴퓨터, 핸드-헬드 또는 랩톱 장치, 멀티프로세서 시스템, 마이크로프로세서 기반 시스템, 셋톱 박스, 프로그램가능한 가전제품, 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 전화 시스템, 상기 시스템들이나 장치들 중 임의의 것을 포함하는 분산 컴퓨팅 환경, 기타 등등이 있지만 이에 제한되는 것은 아니다.
도시된 실시예들은 일반적으로 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터 실행가능 명령어와 관련하여 기술될 것이다. 일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 개체, 컴포넌트, 데이터 구조 등을 포함한다. 도시된 실시예들은 또한 통신 네트워크를 통해 연결되어 있는 원격 처리 장치들에 의해 태스크가 수행되는 분산 컴퓨팅 환경에서 실시될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 메모리 저장 장치를 비롯한 로컬 및 원격 컴퓨터 저장 매체 둘 다에 위치할 수 있다. 프로그램들 및 모듈들에 의해 수행되는 태스크들은 아래에 도면들을 이용하여 설명된다. 이 분야의 전문가들은 여기에 제공되는 설명 및 도면들을 임의 형태의 컴퓨터 판독가능 매체 상에 기록될 수 있는 프로세서 실행가능 명령들로서 구현할 수 있다.
도 1과 관련하여, 예시적인 시스템은 컴퓨터(110) 형태의 범용 컴퓨팅 장치를 포함한다. 컴퓨터(110)의 컴포넌트들은 처리 장치(120), 시스템 메모리(130), 및 시스템 메모리를 비롯한 각종 시스템 컴포넌트들을 처리 장치(120)에 연결시키는 시스템 버스(121)를 포함하지만 이에 제한되는 것은 아니다. 시스템 버스(121)는 메모리 버스 또는 메모리 컨트롤러, 주변 장치 버스 및 각종 버스 아키텍처 중 임의의 것을 이용하는 로컬 버스를 비롯한 몇몇 유형의 버스 구조 중 어느 것이라도 될 수 있다. 예로서, 이러한 아키텍처는 ISA(industry standard architecture) 버스, MCA(micro channel architecture) 버스, EISA(Enhanced ISA) 버스, VESA(video electronics standard association) 로컬 버스, 그리고 메자닌 버스(mezzanine bus)로도 알려진 PCI(peripheral component interconnect) 버스 등을 포함하지만 이에 제한되는 것은 아니다.
컴퓨터(110)는 통상적으로 각종 컴퓨터 판독가능 매체를 포함한다. 컴퓨터(110)에 의해 액세스 가능한 매체는 그 어떤 것이든지 컴퓨터 판독가능 매체가 될 수 있고, 이러한 컴퓨터 판독가능 매체는 휘발성 및 비휘발성 매체, 이동식 및 비이동식 매체를 포함한다. 예로서, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함하지만 이에 제한되는 것은 아니다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보를 저장하는 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 이동식 및 비이동식 매체를 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, DVD(digital versatile disk) 또는 기타 광 디스크 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 컴퓨터(110)에 의해 액세스되고 원하는 정보를 저장할 수 있는 임의의 기타 매체를 포함하지만 이에 제한되는 것은 아니다. 통신 매체는 통상적으로 반송파(carrier wave) 또는 기타 전송 메커니즘(transport mechanism)과 같은 피변조 데이터 신호(modulated data signal)에 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터 등을 구현하고 모든 정보 전달 매체를 포함한다. "피변조 데이터 신호"라는 용어는, 신호 내에 정보를 인코딩하도록 그 신호의 특성들 중 하나 이상을 설정 또는 변경시킨 신호를 의미한다. 예로서, 통신 매체는 유선 네트워크 또는 직접 배선 접속(direct-wired connection)과 같은 유선 매체, 그리고 음향, RF, 적외선, 기타 무선 매체와 같은 무선 매체를 포함하지만, 이에 제한되는 것은 아니다. 상술된 매체들의 모든 조합이 또한 컴퓨터 판독가능 매체의 영역 안에 포함되는 것으로 한다.
시스템 메모리(130)는 판독 전용 메모리(ROM)(131) 및 랜덤 액세스 메모리(RAM)(132)와 같은 휘발성 및/또는 비휘발성 메모리 형태의 컴퓨터 저장 매체를 포함한다. 시동 중과 같은 때에, 컴퓨터(110) 내의 구성요소들 사이의 정보 전송을 돕는 기본 루틴을 포함하는 기본 입/출력 시스템(BIOS)(133)은 통상적으로 ROM(131)에 저장되어 있다. RAM(132)은 통상적으로 처리 장치(120)가 즉시 액세스 할 수 있고 및/또는 현재 동작시키고 있는 데이터 및/또는 프로그램 모듈을 포함한다. 예로서, 도 1은 운영 체제(134), 애플리케이션 프로그램(135), 기타 프로그램 모듈(136) 및 프로그램 데이터(137)를 도시하고 있지만 이에 제한되는 것은 아니다.
컴퓨터(110)는 또한 기타 이동식/비이동식, 휘발성/비휘발성 컴퓨터 저장매체를 포함할 수 있다. 단지 예로서, 도 1은 비이동식·비휘발성 자기 매체에 기록을 하거나 그로부터 판독을 하는 하드 디스크 드라이브(141), 이동식·비휘발성 자기 디스크(152)에 기록을 하거나 그로부터 판독을 하는 자기 디스크 드라이브(151), CD-ROM 또는 기타 광 매체 등의 이동식·비휘발성 광 디스크(156)에 기록을 하거나 그로부터 판독을 하는 광 디스크 드라이브(155)를 도시한다. 예시적인 운영 환경에서 사용될 수 있는 기타 이동식/비이동식, 휘발성/비휘발성 컴퓨터 기억 매체로는 자기 테이프 카세트, 플래시 메모리 카드, DVD, 디지털 비디오 테이프, 반도체(solid state) RAM, 반도체 ROM 등이 있지만 이에 제한되는 것은 아니다. 하드 디스크 드라이브(141)는 통상적으로 인터페이스(140)와 같은 비이동식 메모리 인터페이스를 통해 시스템 버스(121)에 접속되고, 자기 디스크 드라이브(151) 및 광 디스크 드라이브(155)는 통상적으로 인터페이스(150)와 같은 이동식 메모리 인터페이스에 의해 시스템 버스(121)에 접속된다.
위에서 설명되고 도 1에 도시된 드라이브들 및 이들과 관련된 컴퓨터 저장 매체는, 컴퓨터(110)에 대한 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 및 기타 데이터를 저장한다. 도 1에서, 예를 들어, 하드 디스크 드라이브(141)는 운영 체제(144), 애플리케이션 프로그램(145), 기타 프로그램 모듈(146), 및 프로그램 데이터(147)를 저장하는 것으로 도시되어 있다. 여기서 주의할 점은 이들 컴포넌트가 운영 체제(134), 애플리케이션 프로그램(135), 기타 프로그램 모듈(136), 및 프로그램 데이터(137)와 동일하거나 그와 다를 수 있다는 것이다. 이에 관해, 운영 체제(144), 애플리케이션 프로그램(145), 기타 프로그램 모듈(146) 및 프로그램 데이터(147)에 다른 번호가 부여되어 있다는 것은 적어도 이들이 다른 사본(copy)이라는 것을 나타내기 위한 것이다.
사용자는 키보드(162), 마이크(163) 및 마우스, 트랙볼(trackball) 또는 터치 패드와 같은 포인팅 장치(161) 등의 입력 장치를 통해 명령 및 정보를 컴퓨터(110)에 입력할 수 있다. 다른 입력 장치(도시 생략)로는 마이크, 조이스틱, 게임 패드, 위성 안테나, 스캐너 등을 포함할 수 있다. 이들 및 기타 입력 장치는 종종 시스템 버스에 결합된 사용자 입력 인터페이스(160)를 통해 처리 장치(120)에 접속되지만, 병렬 포트, 게임 포트 또는 USB(universal serial bus) 등의 다른 인터페이스 및 버스 구조에 의해 접속될 수도 있다. 모니터(191) 또는 다른 유형의 디스플레이 장치도 비디오 인터페이스(190) 등의 인터페이스를 통해 시스템 버스(121)에 접속될 수 있다. 모니터 외에, 컴퓨터는 또한 스피커(197) 및 프린터(196) 등의 기타 주변 출력 장치를 포함할 수 있고, 이들은 출력 주변장치 인터페이스(195)를 통해 접속될 수 있다.
컴퓨터(110)는 원격 컴퓨터(180)와 같은 하나 이상의 원격 컴퓨터로의 논리적 접속을 사용하여 네트워크화된 환경에서 동작할 수 있다. 원격 컴퓨터(180)는 또 하나의 퍼스널 컴퓨터, 핸드-헬드 장치, 서버, 라우터, 네트워크 PC, 피어 장치 또는 기타 통상의 네트워크 노드일 수 있고, 통상적으로 컴퓨터(110)와 관련하여 상술된 구성요소들의 대부분 또는 그 전부를 포함한다. 도 1에 도시된 논리적 접속으로는 LAN(171) 및 WAN(173)이 있지만, 기타 네트워크를 포함할 수도 있다. 이러한 네트워킹 환경은 사무실, 전사적 컴퓨터 네트워크(enterprise-wide computer network), 인트라넷, 및 인터넷에서 일반적인 것이다.
LAN 네트워킹 환경에서 사용될 때, 컴퓨터(110)는 네트워크 인터페이스 또는 어댑터(170)를 통해 LAN(171)에 접속된다. WAN 네트워킹 환경에서 사용될 때, 컴퓨터(110)는 통상적으로 인터넷과 같은 WAN(173)을 통해 통신을 설정하기 위한 모뎀(172) 또는 기타 수단을 포함한다. 내장형 또는 외장형일 수 있는 모뎀(172)은 사용자 입력 인터페이스(160) 또는 기타 적절한 메커니즘을 통해 시스템 버스(121)에 접속된다. 네트워크화된 환경에서, 컴퓨터(110) 또는 그의 일부와 관련하여 기술된 프로그램 모듈은 원격 메모리 저장 장치에 저장될 수 있다. 예로서, 도 1은 원격 애플리케이션 프로그램(185)이 원격 컴퓨터(180)에 있는 것으로 도시하고 있지만 이에 제한되는 것은 아니다. 도시된 네트워크 접속은 예시적인 것이며 이 컴퓨터들 사이에 통신 링크를 설정하는 기타 수단이 사용될 수 있다는 것을 이해할 것이다.
정의 추출 시스템 및 방법
이제, 도 2를 참조하면, 도 1에 도시된 것과 같은 컴퓨팅 환경에서 구현될 수 있는 정의 추출 시스템(200)의 블록도가 도시되어 있다. 정의 추출 시스템은 텍스트 데이터를 분석하고, 정의를 포함하는 문장 또는 단락을 식별한다. 개시되는 방법들에 따라 동작하는 시스템(200)은 예를 들어 문서(들)(206)로부터 입력 텍스트(205)를 수신한다. 문서들(206)은 하나 이상의 완전한 문서, 문서의 일부, 웹 페이지, 또는 기타 텍스트 소스를 나타낸다. 문서들(206)은 데스크톱 환경에서, LAN을 통해, 또는 예를 들어 인터넷과 같은 글로벌 네트워크를 통해 이용 가능한 텍스트의 소스들일 수 있다. 다른 텍스트 소스들도 사용될 수 있다.
일 실시예에서, 시스템(200)은 2개의 개별 스테이지에서 정의 추출을 수행한다. 제1 스테이지는 몇몇 실시예에서 후술하는 바와 같이 단서 문구 패턴들을 포함하는 문장들 또는 단락들을 식별하기 위해 스캐너/생성기(215)를 사용한다. 이어서, 도 2의 216에 도시된 바와 같이 단서 문구를 포함하는 문장들 또는 단락들이 시스템(200)의 제2 스테이지에 제공된다. 본 명세서에서 정의 계산 및 스코어링 스테이지로서 지칭되는 이 제2 스테이지(220)는 정의 후보자들을 스코어링하여 어느 것이 실제로 정의를 나타내는지를 결정한다. 이러한 정의들, 또는 정의를 포함하는 문장들 또는 단락들은 도 2의 210에 도시된 바와 같이 제공된다. 몇몇 실시예에서, 계산 및 스코어링 스테이지(220)는 2개의 개별 스테이지 또는 컴포넌트, 즉 단서 문구들을 포함하는 텍스트 유닛들 상에서 로컬 파싱을 수행하도록 구성된 계산 컴포넌트(220-1), 및 이들 텍스트 유닛 내의 문구들의 특징들을 스코어링하도록 구성된 스코어링 컴포넌트(220-2)에서 구현된다. 다른 실시예들에서는, 이들 두 기능이 단일 컴포넌트에서 구현될 수 있다.
아래에 더 상세히 설명하는 바와 같이, 계산 및 스코어링 스테이지(220)는 문구 식별, 예를 들어 식별된 단서 문구에 한정되는(local) 명사구(NP) 식별을 이용하여, 어느 정의 후보들(216)이 실제로 정의들을 포함하거나 나타내는지를 결정한다. 문구 식별 기능들은 문법(226)을 이용하는 문구 식별 컴포넌트 또는 스테이지(225)를 이용하여 구현될 수 있다. 개시되는 실시예들을 설명하기 위해 사용되는 일 실시예에서, 문법(226)은 NP 문법이지만, 다른 실시예들에서는 다른 문법들(예를 들어, 동사구 문법, 전치사구 문법 등)이 이용될 수도 있다. 문구 식별 스테이지 또는 컴포넌트(225)는 원할 경우 시스템(200)의 일부로서 간주될 수 있으며, 따라서 대쉬 라인들(230)에 의해 옵션으로 그러한 것으로서 도시된다. 몇몇 실시예에서, 원할 경우, 문구 식별은 계산 및 스코어링 스테이지(220) 내에서 구현될 수도 있다. 문구 식별 스테이지(225)가 계산 및 스코어링 스테이지(220)에 의해 호출되는 것으로 도시되지만, 문구 식별 스테이지(225)는 개시되는 실시예들의 범위 내에서 스테이지들(215와 220) 사이에 기능적으로 배치될 수 있다. 도 2는 이들 실시예도 나타내는 것으로 해석되어야 한다. 몇몇 실시예에서, 문구 식별 스테이지 또는 컴포넌트(225)는 도 2의 227에 표시된 바와 같이 좌측 문구 식별을 수행하지만, 후술하는 바와 같이 좌측 문구 식별이 성공하는 경우에는 우측 문구 식별(도 2의 228에 표시됨)만을 수행한다. 따라서, 도 2에서, 우측 문구 식별(228)은 그의 옵션 또는 조건부 특성을 나타내기 위해 대쉬 라인들 내에 도시된다.
문구 식별은 다양한 실시예에서 상이한 언어적 요소들에 기초할 수 있다는 것을 이해해야 한다. 예를 들어, NP들은 실시예들을 설명하는 데 사용되는 주요 예이지만, 동사구(VP), 전치사구(PP), 또는 이들 또는 다른 구문론적 문구 유형들의 조합이 이용될 수 있다. 따라서, 본 명세서의 예들에서의 NP들에 대한 설명은 이러한 다른 실시예들도 지지하는 것으로 간주되어야 한다. 이러한 예시의 목적으로, 본 실시예에서 문구 식별 스테이지(225)는 NP 식별 스테이지로서 간주될 수 있고, 문법(226)은 NP 문법으로 간주될 수 있으며, 좌측 및 우측 문구 식별(227, 228)은 좌측 및 우측 NP 식별로서 간주될 수 있다. 아래의 설명에서는 이러한 용어법이 이용된다. 그러나 이러한 방식의 용어법의 이용은 본 발명을 NP 실시예들로 제한하지 않는다.
단서 문구 식별
정의 추출 컴포넌트 또는 시스템(200)은 어휘 스캐너(215)를 이용하여 패턴 매칭을 수행함으로써 연결 동사들(예를 들어, "is a", "is the") 및 "is defined as"와 같은 다른 단서 문구들 등을 인식하는데, 이들은 폐쇄 클래스를 구성하며, 따라서 후속 정의 추출 코드는 양호한 후보 문장이 언제 분석에 이용될 수 있는지를 알게 된다. 어휘 스캐너는 텍스트에서 어휘 패턴을 인식하는 프로그램이다. 임의의 다양한 공지 스캐너 생성기를 이용하여 한 세트의 어휘 패턴들로부터 어휘 스캐너(215)를 생성할 수 있다. 일 실시예에서, 어휘 스캐너(215)는 고속 어휘 분석기(Flex) 스캐너 생성기에 의해 생성된다. Flex는 캘리포니아 주립대, 버클리대 및 그의 기부자들에 의해 개발된 소프트웨어이다. Flex 소프트웨어는 이 분야에 공지되어 있으며, 미국 정부는 미국 에너지부와 캘리포니아 주립대 간의 계약 번호 DE-AC03-76SF00098에 따라 Flex 소프트웨어에 관한 권리를 갖고 있다. Lex(AT&T 벨 연구소에 의해 개발됨)와 같은 대안적인 스캐너 생성기들이 Flex 대신 사용될 수 있다.
이제, 도 3을 참조하면, 테이블 1은 일 실시예에서 어휘 스캐너(215)가 입력 텍스트(205) 내에서 매칭하도록 구성되는 단서 문구 패턴들의 예를 리스트한다. 테이블 1에 표시된 단서 문구들의 예는 어휘 스캐너(215), 시스템(200) 또는 대응하는 방법들의 개시되는 실시예들에 대한 제한 없이 비포괄적인 예들의 리스트로서 제공된다. 테이블 1에 표시된 예시적인 리스트에서, 단서 문구 패턴들은 예시적인 목적으로 2개의 그룹, 즉 (A) 입력 텍스트의 문자열의 주 용어(정의가 제공되고 있는 단어)에 이어지는 동사 패턴들, 및 (B) 주 용어 앞에 나타나는 동사 패턴들로 구성된다. 어휘 스캐너(215)는 입력 텍스트(205)의 특정 단락, 문장 또는 텍스트 문자열에서 단서 문구의 매칭을 발견하는 경우, 계산 및 스코어링 스테이지(220)에 의한 추가 처리/분석을 위해 정의 후보 등을 식별한다. 어휘 스캐너(215)가 단서 문구의 매칭을 발견하지 못한 경우, 특정 단락, 문장 또는 텍스트 문자열은 정의 후보로서 간주되지 않는다.
시스템(200)에서 스테이지들, 모듈들 또는 컴포넌트들(215, 220)을 이용하여 구현되는 2 스테이지 접근법은 정의 추출 프로세스에서 고가의(시간 및/또는 자원 소모적인) 처리를 가능한 한 많이 지연시킨다. 이렇게 하여, 전체가 분석되어야 하는 문장들의 총 수가 최소화되거나 크게 감소되는 반면, 순수한 NP 접근법은 모든 NP가 식별된 후 필터링되고 하류로 폐기될 것을 요구한다. 즉, 시스템(200) 및 대응하는 개시되는 방법들은 가능성 있는 단서 문구들의 "근처"에서만 정의들을 찾는다(즉, 로컬 청크/피상적 파싱). 이러한 로컬 청크/피상적 파싱은 식별된 단서 문구들의 소정의 윈도우(즉, 단어 수 또는 문자 수) 내의 NP들을 찾아 분석한다.
실시예들에서, 성능을 향상시키거나 최적화하기 위하여, 어휘 스캐너(215)는 예를 들어 어휘 스캐너(215)가 단서 문구들을 검색 또는 식별하는 동일 패스 동안 입력 텍스트(205)의 단어들에 이들의 가장 공통적인 음성 부분(POS) 태그들을 첨부한다. 이것은 도 2에 어휘 스캐너(215)에서의 POS 태깅(217)으로서 도시되어 있다. 요지는 NP 파싱 단계 동안 그러한 정보를 제공하는 고가의 어휘 탐색 단계를 바이패스하고, 그 대신에 사전 할당된 태그들(정의와 관련하여 가장 공통적인 POS 태그들)을 이용하는 것이다. POS 태깅(207)은 다른 실시예들에서 어휘 스캐너(215)와 별개인 컴포넌트에 의해 구현될 수 있지만, 몇몇 실시예에서는 최적의 성능을 위해 단서 문구 식별에 사용되는 입력 텍스트(205)에 대한 동일 패스 동안 POS 태깅을 허가하기 위하여 어휘 스캐너(215) 내에 포함된다는 점에 유의해야 한다.
이 단계 동안 단어들에 하나의 POS 태그만을 할당하는 것은 둘 이상의 가능한 POS 태그를 갖는 단어들에 대한 명확한 선택을 행하는 POS 태깅 모듈 또는 기능(217)을 필요로 한다. 실제로, 성능의 이유에서 임의의 모호한 해결을 피하기 위하여, 정의의 목적으로 NP일 수 있는 그의 능력에 기초하여 문맥 밖의 단어들에 대해 기능(217)에 의해 하나의 고유한 태그가 할당되는데, 전체 프로세스는 정확도와 성능 간의 균형이다. POS 태깅 기능(217)에 의해 구현되는 명확화 규칙들은 다음 스테이지에서 NP 문법(226)의 정확성에 직접적인 영향을 미칠 것이다.
실시예들에서, 몇몇 명확화 규칙은 예를 들어 "동사" 태그들보다 "명사" 태그들의 선호로 구성되는데, 이는 정의 추출이 주로 동사구(VP)보다는 NP를 찾는 것을 필요로 하기 때문이다. 즉, POS가 명사 또는 동사일 수 있는 임의의 단어는 명사로서 태깅되는데, 즉 따라서 동사는 NP를 식별할 때 무시된다. 또한, 몇몇 실시예에서, 공지되지 않고 사전 태깅되지 않은 모든 단어는 명사로 디폴트된다. 다른 하나의 규칙은 동사보다 형용사를 선호하는데, 예를 들어 "used cars"에서, "used"는 항상 형용사로서 태깅될 수 있는 반면, "used"가 동사 위치에 나타나는 경우, 이는 NP 요소들만을 책임지는 NP 문법(226)에 의해 무시된다.
명사구 식별 및 정의 스코어링
후보 문장이 스테이지(215)에 의해 분석되고 식별되면, 계산 및 스코어링 스테이지(220)는 NP 식별 컴포넌트(225)를 이용하여 그의 NP 요소들을 식별한다. 더 상세하게 후술하는 바와 같이, NP 요소들이 식별됨에 따라, 계산 및 스코어링 스테이지(220)는 후보 문장을 분석하고, 적절한 경우 이를 스코어링한다. 임의의 스코어링된 후보 정의 문장에 대해, 스코어가 임계치를 초과하는 경우, 시스템(200)은 정의를 검색하는 데 적절한 정보로 문장에 마킹할 수 있다. 즉, 문장은 문장이 정의를 포함한다는 사실과, 어떤 용어가 정의되고 있는지를 나타내는 정보로 마킹된다. 예를 들어, 문장의 마킹은 문장 또는 텍스트 특성들에 적절한 오프셋(즉, 문장 또는 다른 텍스트 내의 정의 용어의 위치)을 추가하는 것을 포함할 수 있다. 이러한 문장 또는 텍스트 특성들은 몇몇 실시예에서 예시적인 목적으로 도 2에 도시된 정의 출력(210)에 포함된다.
속도 성능의 이유로, 후보 정의 문장에서의 NP들의 식별은 단서 문구로 국한(소정의 윈도우 내)되는데, 즉 전체 문장에 대해 문법(226)의 문법 규칙들을 실행하는 것과 달리 단서 문구 패턴들의 주변 NP들만이 파싱된다. 후보 문장에서 NP들의 식별을 제어하는 소정의 윈도우는 몇몇 개시되는 실시예에서 단어 수, 예를 들어 3개의 단어, 5개의 단어 등이다. 다른 실시예들에서, 소정의 윈도우는 단어 수가 아닌 다른 기준에 의해 설정될 수 있다. 예를 들어, 소정의 윈도우는 문자 수일 수 있다.
후보 문장이 분석되고, 구성 NP들이 식별되면, 시스템(200)의 스테이지(220)는 정의를 스코어링한다. 이와 같이 식별될 때, 정의는 처리의 단위에 따라 문장 또는 단락의 끝까지 가장 중요한 것이다. 그러나 스코어링은 단서 문구의 주변 문맥(즉, NP)을 이용하여 스코어를 산출하고, 정의를 인정하거나 거절한다. 스코어링 전에, 후보 문장은 예를 들어 도 4a에 도시된 테이블 2A에 예시적으로 제공된 규칙들의 세트와 같은 제외 규칙들의 세트를 이용하여 분석될 수 있다. 식별된 후보 정의 문장들을 분석하고 스코어링하는 방법이 도 5에 도시된 흐름도에 제공되어 있다. 도 4a의 테이블 2A에 표시된 예시적인 제외 규칙들은 물론, 도 4b의 테이블 2B에 표시된 스코어링 규칙들은 도 5에 도시된 방법에 대한 설명과 관련하여 더 상세히 설명된다. 성능의 이유로, 제외 규칙들은 가능할 때(규칙 파라미터들에 따라) 프로세스에서 조기에 적용되어, 이들 문장에 대한 불필요한 처리를 방지하기 위해 보다 일찍 문장을 제외할 수 있다. 예를 들어, 몇몇 문장들은 이들이 NP 요소 입력, 예를 들어 "어두 대명사들" 등을 필요로 하지 않는 명백한 제외 패턴들을 포함하는 경우에는 NP 요소들이 식별되기 전에 거절될 수 있다. 전술한 바와 같이, 도 5는 NP들과 관련된 개념들을 설명하고 있지만, 도 5에 또한 나타낸 다른 대안적인 실시예들에서는 NP들이 다른 문구 유형들, 예를 들어 VP, PP, 또는 문구 유형들의 조합으로 대체될 수 있다.
일 실시예에서, 단서 문구가 식별된 주어진 문장에 대해 다음과 같이 알고리즘이 진행된다. 단계 405에서, 단서 문구에 대해 한정적으로 NP 문법(226)을 적용함으로써 단서 문구에 선행하는 좌측 NP가 검색된다. 이 단계에서 단서 문구에 한정적으로 NP 문법을 적용한다는 것은 단서 문구의 좌측 또는 선행 측 상의 소정 윈도우 내의 단어들을 NP 문법(226)으로 분석하여 좌측 NP가 있는지를 판정한다는 것을 의미한다. 임의의 그러한 좌측 NP는 "is a"와 같은 단서 문구를 가진 정의 문장에서 주 용어(정의되고 있는 용어)를 나타내는 경향이 있다. 판정 단계(407)에서, 단서 문구로 한정하여 어떠한 좌측 NP가 발견되지 않은 것으로 판정되면, 단계 409에 표시된 바와 같이 알고리즘 또는 방법이 종료되고, 후보 문장 내에 어떠한 정의도 존재할 가능성이 없는 것으로 판정된다. 판정 단계 407에서 단서 문구로 한정하여 좌측 NP가 발견된 것으로 판정되면, 단계 411에서 제외 규칙들의 세트 중 임의의 규칙이 좌측 NP에, 또는 일반적으로 후보 문장에 적용될 것인지에 관한 판정이 이루어진다. 전술한 바와 같이, 몇몇 실시예에서는 파라미터들과 같은 NP 요소들을 필요로 하지 않는 임의의 제외 규칙들은 가능한 때 보다 일찍 적용된다.
도 4a에 도시된 테이블 2A는 후보 문장들을 분석하는 데 이용될 수 있는 하나의 예시적인 제외 규칙 세트를 나타낸다. 제외 규칙들의 일부는 좌측 NP에 적용된다. 제외 규칙들의 다른 일부는 우측 NP에 적용된다. 또한, 다른 일부는 후보 문장에 일반적으로 적용된다. 테이블 2A에 표시된 제외 규칙들은 일례로서 제공되며, 포괄적인 제외 규칙 세트를 나타내는 것을 의도하지 않음을 이해해야 한다. 또한, 표시된 모든 제외 규칙을 모든 실시예에서 사용할 필요는 없다. 제외 규칙들은 특정 구현들에 대해 결과들을 적절히 조정하기 위해 설정될 수 있다.
표시된 제1 제외 규칙은 (패턴에 따라 좌측 NP 또는 우측 NP일 수 있는) 설명 부분에 적용된다. 이 규칙은 설명이 "의견/편견" 수식 단어 또는 단어들을 갖는 상황들에 적용되며, 따라서 이는 통상적으로 정의 용어일 가능성이 없다. 이들은 또한 주격 단어로서 지칭될 수 있다. 몇몇 의견/편견 수식어들의 포괄적이 아니라 예시적인 리스트는 다음과 같다.
humble
ideal
idyllic
ignoble
ignorant
immature
imperfect
important
improbable
incorrect
incredible
indispensable
inappropriate
insignificant
insincere
intelligent
irresponsible
mature
marvelous
nasty
nice
offensive
perfect
제2 유형의 제외 규칙은 후보 문장들이 소정의 특징들을 갖는 경우 후보 문장들을 제외하는 문장 필터들을 포함한다. 이것은 전술한 바와 같이 NP 요소들을 이용하지 않는 제외 규칙의 일례이다. 하나의 그러한 특징은 문장의 최초 단어가 예를 들어 대명사일 때인데, 이는 정의 문장의 특성이 아니다. 또 하나의 그러한 특징은 정의를 나타내지 않는 구두점을 갖는, 예를 들어 끝에 물음표를 갖거나 완전한 문장을 나타내지 않는 구두점들을 갖는 후보 문장이다.
표시된 제3 유형의 제외 규칙은 주 용어가 한정적인지의 여부와 관련된다. NP가 한정적인 경우, 예를 들어 관사 "the"를 가짐으로써 이전의 사용 문맥을 이끄는 경우, 이는 이 문장에서 정의되는 용어일 가능성이 없다. 정의되는 용어들은 통상적으로 일반 문맥 내에 제시된다. 이러한 일반 규칙의 예외는, 주 용어가 적절한 명사인 경우에 이에 기초하여 제외되지 않는다는 것이다.
표시된 제4 유형의 제외 규칙은, 예를 들어 "is a"와 같은 단서 문구들에 대해 단서 문구에 이어지는 우측 NP인 설명 부분의 주변 문맥에 관련된다. 설명은 주 용어에 대한 정의 또는 기술의 시작을 나타낸다. "is a"와 같은 단서 문구의 설명의 우측 문맥은 예를 들어 정의를 나타내는(또는 대안으로 나타내지 않는) 설명을 아마도 지시하는, 소정의 POS를 갖는, 단어들의 클래스들을 식별하기 위해 POS 세트를 이용하여 결정될 수 있다. POS 필터의 일례로, 지시 대명사, 예를 들어 "this"인 POS를 가진 단어가 설명에 이어지는 경우, 정의에 기여할 가능성이 거의 없는 "this"의 "참조" 문맥이 주어질 때 후보 문장은 제외된다. 반면, 설명에 이어지는 단어의 POS가 "that"과 같은 관계 대명사인 경우, 이것은 문장이 정의라는 사실을 보강하는데, 이는 "that"이 정의 기술(즉, 설명)을 확장할 가능성이 크기 때문이다.
표시된 제5 유형의 제외 규칙은 정지 단어들을 사용하는데, 이들은 특정 용어 또는 설명에서 발견되는 경우에 정의를 포함하지 않는 문장을 거의 나타내며, 따라서 후보 문장을 제외한다. 정지 단어들은 종종 설명 부분에 적용되지만, 용어에는 반드시 적용되지는 않는다. 몇몇 정지 단어의 포괄적이 아니라 예시적인 리스트는 다음과 같다.
aspect
beauty
bliss
bore
boredom
contentment
counterpart
challenge
chance
danger
dishonor
disgrace
disappointment
displease
jerk
joke
relief
revelation
success
threat
waste
wonder
또 하나의 제외 규칙은 대명사들을 포함하는 주 용어를 포함할 수 있는데, 이는 후보 문장을 제외한다. 또 하나의 제외 규칙은 "called" 패턴들에 대해 텍스트의 끝에 나타나지 않는 주 용어를 포함할 수 있다. "called 패턴"을 갖는 양호한 정의의 일례는 다음과 같이, 즉 "Colorless, precious corundum is called white sapphire"와 같이 제공된다. 이 예에서, 용어는 "white sapphire"이다. 이 예시적인 규칙은, 용어가 문장의 끝이 아닌 경우(즉, 다른 단어들이 그에 이어지는 경우), 이는 정의가 아님을 나타낸다. 다른 예로서, 이 규칙은 다음 예, 즉 "Colorless, precious corundum is called white sapphire in America"가 정의인 것을 금지한다.
또 하나의 규칙은 한정적이고(한정사로서 "the"를 가짐) "IS|WAS the" 패턴에 대한 문장을 끝내는 설명을 포함할 수 있는데, 이는 정의를 지시하지 않으며, 후보 문장을 제외한다. 이 예시적인 규칙은 설명이 한정적이고 문장을 끝낼 때, 즉 설명 뒤에 아무것도 없음을 의미할 때 문장을 제외한다. 일례가 "Lucerne is the only largy city"와 같이 제공된다. 이 예에서, 설명 "the only large city"는 한정적이고 문장을 끝낸다. 이 예시적인 규칙의 동기는 "the only large city"가 종종 이전 문맥을 지칭하고, 따라서 일반 정의에 대한 양호한 후보가 아니라는 것이다.
도 5를 다시 참조하면, 단계 411에서 후보 문장을 정의인 것으로부터 제외하는 방식으로 임의의 제외 규칙들이 적용되는 것으로 판정되면, 단계 413에서 알고리즘 또는 방법이 종료되며, 후보 문장에는 어떠한 정의도 존재할 가능성이 없는 것으로 판정된다. 단계 411에서 후보 문장을 제외하는 방식으로 어떠한 제외 규칙도 적용되지 않는 것으로 판정되면, 방법은 단계 415로 진행하여, 스테이지, 모듈 또는 컴포넌트(220)에 의해 양 및 음의 좌측 NP 스코어링이 적용된다. 스코어링은 도 4b에 도시된 테이블 2B와 관련하여 아래에 더 상세히 설명된다. 테이블 2B 및 다른 곳에서, "용어" 및 "설명"이라는 단어들은 개시되는 실시예들을 기술하는 데 사용된다. "용어"은 정의가 기술되고 있는 NP이다. "설명"은 "용어"에 대한 정의 또는 기술의 시작이다. 예를 들어, 단서 문구 "is a"에 대해, 용어는 단계 405에서 식별된 좌측 NP일 것이다. 일 실시예에서, 이 경우에 좌측 NP에 적용되는 양 및 음의 스코어링은 테이블 2B에서 "용어"를 참조하는 규칙들이다. 이 경우에 우측 NP에 적용되는 양 및 음의 스코어링은 테이블 2B에서 "설명"을 참조하는 규칙들이다.
단계 415에서 좌측 NP 음을 스코어링한 후, 방법은 단계 417로 진행하여, 단서 문구에 한정적으로 NP 문법(226)을 적용함으로써 단서 문구에 이어지는 우측 NP를 검색한다. 이 단계에서 단서 문구에 한정적으로 NP 문법을 적용한다는 것은 단서 문구의 우측 또는 이어지는 측 상의 소정 윈도우 내의 단어들을 NP 문법(226)을 이용하여 분석하여 우측 NP가 있는지를 판정한다는 것을 의미한다. 이러한 임의의 우측 NP는 "is a" 패턴인 단서 문구를 갖는 정의 문장에서 설명 용어를 나타내는 경향이 있다. 단서 문구에 한정적으로 NP 문법(226)을 적용하는 데 사용되는 윈도우는 좌측 및 우측 NP들에 대해 다를 수 있으며, 정확성, 속도 또는 이 둘의 조합을 최적화하기 위해 조정될 수 있다는 점에 유의해야 한다.
이어서, 단계 419에서, 우측 NP가 발견되었는지에 관한 판정이 이루어진다. 우측 NP가 발견되지 않은 경우, 단계 421에서 알고리즘 또는 방법이 종료되며, 후보 문장에는 어떠한 정의도 존재할 가능성이 없는 것으로 판정된다. 단계 419에서 우측 NP가 발견된 것으로 판정되면, 단계 423에서 전술한 바와 같이 제외 규칙들이 적용되는지에 관한 판정이 이루어진다. 이 단계에서, 적절한 제외 규칙들이 후보 문장의 우측 NP에 적용된다. 단계 423에서 후보 문장을 정의인 것으로부터 제외하는 방식으로 제외 규칙이 적용되는 것으로 판정되면, 단계 425에서 알고리즘 또는 방법이 종료되며, 후보 문장에는 어떠한 정의도 존재할 가능성이 없는 것으로 판정된다. 단계 423에서 어떠한 제외 규칙도 후보 문장을 제외하지 않는 것으로 판정되면, 방법은 단계 427로 계속되어, 아래에 더 상세히 설명하는 바와 같이 양 및 음의 우측 NP 스코어링이 적용된다.
이어서, 단계 429에서 좌측 NP 스코어 및 우측 NP 스코어가 조합되고, 단계 431에서 후보 문장이 정의를 포함하는지에 관하여 조합된 스코어의 함수로서 판정이 이루어진다. 일 실시예에서, 이 단계는 조합된 스코어를 임계치와 비교함으로써 행해진다. 조합된 스코어가 임계치를 초과하지 않으면, 단계 433에서 알고리즘이 종료되며, 후보 문장에는 어떠한 정의도 존재할 가능성이 없는 것으로 판정된다. 조합된 스코어가 임계치를 초과하면, 단계 435에서 정의가 출력으로서 제공된다. 이 단계는 후보 문서를 정의를 포함하는 것으로서 태깅하는 단계, 적절한 오프셋(문장 내의 정의 용어의 위치)을 추가하는 단계, 및/또는 출력에서 문장 자체를 제공하는 단계를 포함할 수 있다. 후보 문장이 정의를 포함하는지를 조합된 스코어의 함수로서 결정하는 단계 431은 다른 방식으로 행해질 수 있다는 점에 유의해야 한다. 예를 들어, 대안 실시예들에서, 양호한 정의 후보이기 위해서는 조합된 스코어가 임계치를 초과할 수 없도록 스코어링이 정의될 수 있다.
정의 스코어링
도 5와 관련하여 전술한 단계 415 및 427에서, 좌측 및 우측 NP 스코어링이 적용된다. 정의 스코어링을 위해, 실시예들에 적용되는 일반 접근법은 강한 발견적 패턴들을 정의하여 양호한 정의 후보를 식별하는 한편, 제외 규칙들 및 스코어링을 위한 임계치를 이용하여 잡음이 많은 후보들을 제외하는 것이다. 이러한 발견적 방법은 정의 용어(즉, 정의되고 있는 용어) 및 패턴에 따라 좌측 또는 우측 NP로 지칭되는 대응 NP 기술(즉, 설명) 양자에 대해 적용될 것이다. 실시예들이 정의되고 있는 용어를 나타내는 좌측 NP 및 설명을 나타내는 우측 NP와 관련하여 설명되었지만, 이것은 항상 그러할 필요는 없다. 본 발명의 실시예들은 좌측 NP가 설명을 나타내고 우측 NP가 정의되고 있는 용어를 나타내는 반대 구성도 처리하도록 구성될 수 있다.
스코어링을 위해 적용되는 특징 세트들의 예가 도 4b에 도시된 테이블 2B에 리스트되어 있다. 이들 특징 및 이들에 대응하는 유형의 스코어링 가중치(예를 들어, 강한 가중치, 음의 가중치, 정상 가중치 등)는 단지 일례로서 제공된다. 특정 목적을 위해 조정되는 다른 실시예들에서는 다른 스코어링 기술이 사용될 수 있다. "강한" 특징 가중치는 주어진 특징에 할당되는 최대 가중치를 나타내고, "기본" 특징 가중치는 강한 특징이 아닌 특징들에 디폴트로 할당되는 표준 가중치이다. "강한" 특징 가중치 및 "기본" 특징 가중치를 나타내는 데 사용되는 실제 수치 값들은 특정 결과를 얻기 위해 원하는 대로 설정될 수 있다.
양의 가중치(값)를 갖는 특징은 매칭 용어가 그 특징을 가질 때 가중치가 계산된 스코어에 더해진다는 것을 의미한다. 음의 가중치를 갖는 특징은 매칭 용어가 대응 특징을 가질 때 계산된 스코어로부터 대응 특징 가중치를 뺀다는 것을 의미한다. 길이 및 위치 스코어들은 용어 또는 문장의 길이 또는 그의 오프셋 위치를 인코딩하는 가중치들이다.
일부 특징들은 주어진 특징에 할당된 최대 가중치를 나타내는 강한 특징 가중치와 연관되며, 다른 일부는 강하지 않은 특징들에 디폴트로 할당되는 표준 가중치인 기본 특징 가중치를 할당받는다. 스코어링 함수는 선형 함수에서 이들 특징과 연관된 다양한 가중치를 조합하여 최종 스코어를 산출한다.
최종 스코어 = ∑(양의 특징 가중치들) - ∑(음의 특징 가중치들)
이 방정식에서, 음의 특징 가중치들의 합은 음의 특징 가중치들의 절대값들의 합을 나타낸다. 즉, 양의 특징 가중치들의 합에서 음의 특징 가중치들의 합을 빼는 것은 최종 스코어를 올리는 것이 아니라 낮춘다. 이어서, 최종 계산된 스코어를 임계치와 비교하여, 정의를 문장의 특성으로서 받아들이고 노출시켜야 할지를 결정한다. 임계치를 설정 및/또는 변경할 수 있다는 것은 리콜 및/또는 정밀도에 대한 요건이 개별 도메인들에 대해 다른 경우에 전체적인 접근 알고리즘들을 변경하지 않고도 애플리케이션들이 발행된 정의들의 품질을 제어하는 것을 가능하게 한다.
아래의 기술은 3개의 문장 예의 스코어링을 포함한다. 3개의 문장 예는 아래의 공식에 기초하여 스코어링된다.
스코어 = (단서 문구 패턴)의 스코어 + (좌측 NP)의 스코어 + (우측 NP)의 스코어
제4 문장 예는 제외 규칙으로 인해 제외된다.
스코어링 예 1
"St Dunstan is the patron saint of blacksmiths and goldsmiths."
좌측 NP(용어): St Dunstan
우측 NP(설명): the patron saint
패턴: "is the"
(패턴)의 스코어 = 0.6
(용어)의 스코어 = (적절한 명사)의 스코어 = 0.2
(설명)의 스코어 = ("설명은 한정사 the")의 스코어 = -0.1
제외 규칙 검사: 설명의 우측 문맥의 POS : "전치사"("of") -> 수용
최종 스코어: 0.6 + 0.2 - 0.1 = 0.7
스코어링 예 2
"In Minoan civilization the large storage jars were known as pithoi."
좌측 NP(설명): the large storage jars
우측 NP(용어): pithoi
패턴: "known as"
(패턴)의 스코어 = 0.6
(용어)의 스코어 = (용어 오프셋)의 스코어 = 0.6(이 패턴에 대해, 용어가 문장의 끝에 가까울수록 스코어가 커지며, 이 경우에 이 스코어는 용어가 이 특징에 대해 얻을 수 있는 최대값인데, 이는 용어가 문장을 끝내고 있기 때문이다.)
(설명)의 스코어 = ("설명은 한정사 the")의 스코어 + ("Explanation has a Modifier:large")의 스코어 = -0.1-0.1 = -0.2
최종 스코어: 0.6 + 0.6 - 0.2 = 1.00
스코어링 예 3
"A vulnerability is a specific way that a threat is exploitable based on an unmitigated attack path."
좌측 NP(용어): A vulnerability
우측 NP(설명): specific way
패턴: "is a"
(패턴)의 스코어 = 0.6
(용어)의 스코어 = 0(특징 스코어링이 적용되지 않음)
(설명)의 스코어 = (설명은 수식어 specific을 가짐)의 스코어 = -0.1
제외 규칙 검사: 설명의 우측 문맥의 POS: "that" -> 수용
최종 스코어 = 0.6 + -0.1 = 0.5
제외된 문장 예
"Lucerne is the only large city."
좌측 NP(용어): Lucerne
우측 NP(설명): the only large city
패턴: "is the"
아래의 제외 규칙은 설명 부분(이 경우에는 우측 NP)에 적용되어 정의로서의 문장을 제외할 것이다.
"IS|WAS the" 패턴들에 대해 적용되는 제외 규칙:
설명은 한정적이며(이 경우에는 "the"를 가짐) 문장을 끝낸다.
도 5는 문서에서 정의를 식별하는 개시되는 방법들의 하나의 특정 방법 실시예를 나타내지만, 다른 보다 일반적인 실시예들도 개시된다. 예를 들어, 이제 도 6을 참조하면, 하나의 그러한 방법 실시예가 흐름도(600)에 나타나 있다. 블록 605에 나타난 바와 같이, 이 방법 실시예는 복수의 텍스트 유닛을 입력 텍스트로서 수신하는 단계를 포함한다. 설명된 바와 같이, 이들 텍스트 유닛은 문장, 단락 등일 수 있다. 이어서, 블록 610에 나타난 바와 같이, 방법은 복수의 텍스트 유닛 중 어느 것이 단서 문구를 포함하는지를 식별하는 단계를 포함한다. 전술한 바와 같이, 이것은 어휘 스캐너 및 텍스트 유닛들과 매칭되는 패턴일 수 있는 단서 문구들의 리스트를 이용하여 수행될 수 있다. 이어서, 블록 615에 나타난 바와 같이, 이 방법 실시예는 단서 문구를 포함하는 것으로 식별된 텍스트 유닛들에 대해 단서 문구 주위에서 로컬 파싱을 수행하여 단서 문구를 포함하는 텍스트 유닛이 정의를 포함하는지를 판정하는 단계를 포함한다. 로컬 파싱 단계는 예를 들어 도 5에 도시된 바와 같을 수 있다.
예를 들어, 텍스트 유닛의 단서 문구 주위에서 로컬 파싱을 수행하는 단계는 도 5에서 설명된 바와 같이 단서 문구의 제1 소정의 윈도우 내의 텍스트 유닛 내의 주 용어 NP(즉, 많은 실시예에서 좌측 NP)를 검색하는 단계를 포함할 수 있다. 유사하게, 로컬 파싱을 수행하는 단계는 이전에 설명되고 예시된 바와 같이 단서 문구의 제2 소정의 윈도우 내의 설명 NP(즉, 많은 실시예에서 우측 NP)를 검색하는 단계를 포함할 수 있다. 물론, 제1 및 제2 윈도우는 크기가 동일하거나, 다른 크기를 갖도록 개별적으로 설정될 수 있다. 도 6에 나타낸 방법 실시예의 다른 보다 상세한 특징들은 위에서 설명되고 다른 도면들에 도시된 것과 거의 동일할 수 있다. 예를 들어, 주 용어 NP들 및 설명 NP들의 스코어링은 도 5에 도시되고 위에서 설명된 바와 같을 수 있다. 마찬가지로, 이 방법 실시예의 다른 특징들은 위에서 설명되고 예시된 것과 같을 수 있다.
본 발명은 구조적 특징들 및/또는 방법적 동작들에 고유한 언어로 설명되었지만, 첨부된 청구범위에 정의되는 본 발명은 전술한 특정 특징들 또는 동작들로 제한되는 것은 아니다. 오히려, 전술한 특정 특징들 및 동작들은 청구범위를 구현하는 예시적인 형태로서 개시된다. 예를 들어, 실시예들이 영어 예들과 관련하여 설명되지만, 실시예들은 영어 또는 임의의 특정 언어로 제한되지 않는다. 다른 예로서, 몇몇 실시예에서 로컬 파싱이 NP들을 검색하는 단계를 포함하는 것으로 간주될 수 있지만, 다른 실시예들에서 로컬 파싱은 VP들, PP들, 문구 유형들의 조합 등과 같은 다른 언어 요소들을 검색하는 단계를 포함한다.

Claims (20)

  1. 문서에서 정의(definition)를 식별하는 방법으로서,
    복수의 텍스트 유닛을 입력 텍스트로서 수신하는 단계와,
    상기 복수의 텍스트 유닛 중 어느 것이 단서 문구(cue phrase)를 포함하는지를 식별하는 단계와,
    상기 복수의 텍스트 유닛 중 단서 문구를 포함하지 않는 텍스트 유닛을 정의 포함 가능성이 있는 고려 대상으로부터 제외시키는 단계와,
    단서 문구를 포함하는 것으로 식별된 텍스트 유닛들에 대해, 상기 단서 문구를 포함하는 텍스트 유닛이 정의를 포함하는지를 판정하기 위해 상기 단서 문구의 주위에서 로컬 파싱을 수행하는 단계 -상기 텍스트 유닛의 단서 문구 주위에서 로컬 파싱을 수행하는 단계는 상기 단서 문구의 제1 소정의 윈도우 내의 상기 텍스트 유닛 내의 좌측 문구를 검색하는 단계와 상기 단서 문구의 제2 소정의 윈도우 내의 상기 텍스트 유닛 내의 우측 문구를 검색하는 단계를 포함함- 와,
    스코어링 규칙들의 세트에 기초하여 상기 좌측 문구 및 상기 우측 문구에 대해 양 및 음의 스코어링을 적용하여 문구 스코어링(phrase scoring)을 취득하는 단계와,
    상기 좌측 문구 및 상기 우측 문구에 대한 스코어링을 조합하여, 상기 텍스트 유닛에 대한 전체 스코어를 취득하는 단계와,
    상기 단서 문구를 포함하는 텍스트 유닛이 상기 텍스트 유닛에 대한 전체 스코어의 함수로서 정의를 포함하는지를 판정하는 단계를 포함하는
    문서에서 정의를 식별하는 방법.
  2. 제1항에 있어서,
    상기 좌측 문구 및 상기 우측 문구를 검색하는 단계는 구문론적 문구(syntactic phrase)를 검색하는 단계를 더 포함하는
    문서에서 정의를 식별하는 방법.
  3. 제2항에 있어서,
    상기 단서 문구의 제1 및 제2 소정의 윈도우 내에 있는 상기 텍스트 유닛 내 좌측 문구 및 우측 문구를 검색하는 단계는 상기 단서 문구의 상기 제1 소정의 윈도우에 선행하는 그리고 그 안에 있는 텍스트 유닛에서 문구를 검색하는 단계를 포함하는
    문서에서 정의를 식별하는 방법.
  4. 제1항에 있어서,
    상기 좌측 문구 및 우측 문구가 상기 단서 문구의 제1 및 제2 소정의 윈도우 내의 텍스트 유닛 내에서 식별되었는지를 판정하는 단계와,
    상기 좌측 문구 및 상기 우측 문구가 상기 단서 문구의 제1 및 제2 소정의 윈도우 내의 텍스트 유닛 내에서 식별되지 않은 경우, 상기 단서 문구를 포함하는 텍스트 유닛이 정의를 포함하지 않는 것으로 판정하는 단계를 더 포함하는
    문서에서 정의를 식별하는 방법.
  5. 제4항에 있어서,
    상기 좌측 문구 및 우측 문구가 상기 단서 문구의 제1 및 제2 소정의 윈도우 내의 텍스트 유닛 내에서 식별된 것으로 판정되는 경우,
    정의를 포함하지 않는 텍스트 유닛을 나타내는(indicative) 방식으로 상기 좌측 문구 또는 상기 우측 문구에 대해 제외 규칙들(excluding rules)의 세트 중 임의의 제외 규칙이 적용되는지 판정하는 단계와,
    정의를 포함하지 않는 텍스트 유닛을 나타내는 방식으로 상기 좌측 문구 또는 우측 문구에 대해 제외 규칙들의 세트 중 임의의 제외 규칙이 적용되는 것으로 판정된 경우에는, 상기 단서 문구를 포함하는 텍스트 유닛이 정의를 포함하지 않는 것으로 판정하는 단계를 더 포함하는
    문서에서 정의를 식별하는 방법.
  6. 제5항에 있어서,
    정의를 포함하지 않는 텍스트 유닛을 나타내는 방식으로 상기 좌측 문구 또는 상기 우측 문구에 대해 제외 규칙들의 세트 중 어느 것도 적용되지 않는다고 판정된 경우, 스코어링 규칙들의 세트에 기초하여 상기 좌측 문구 및 상기 우측 문구에 대해 양 및 음의 스코어링을 적용하여, 상기 좌측 문구 및 상기 우측 문구에 대한 문구 스코어링을 취득하는 단계를 더 포함하는
    문서에서 정의를 식별하는 방법.
  7. 제1항에 있어서,
    상기 복수의 텍스트 유닛을 입력 텍스트로서 수신하는 단계는 복수의 문장을 입력 텍스트로서 수신하는 단계를 더 포함하는
    문서에서 정의를 식별하는 방법.
  8. 제1항에 있어서,
    상기 텍스트 유닛 내의 단어들에, 정의의 문맥상(in the context of a devinition) 이들의 가장 공통적인 음성 부분들에 기초한 음성 부분(POS: part of speech) 태그들을 첨부하는 단계를 더 포함하는 방법.
  9. 제8항에 있어서,
    상기 텍스트 유닛 내의 단어들에, 정의의 문맥상 이들의 가장 공통적인 음성 부분들에 기초한 음성 부분 태그들을 첨부하는 단계는 상기 복수의 텍스트 유닛 중 어느 것이 단서 문구를 포함하는지를 식별하는 데 사용되는 동일 처리 패스 동안에 상기 텍스트 유닛 내의 단어들에 POS 태그들을 첨부하는 단계를 더 포함하는
    문서에서 정의를 식별하는 방법.
  10. 문서들에서 정의들을 식별하기 위한 정의 추출 시스템으로서,
    복수의 텍스트 유닛을 입력으로서 수신하고, 상기 복수의 텍스트 유닛 중 어느 것이 단서 문구를 포함하는지를 식별하도록 구성된 어휘 스캐너 컴포넌트 -상기 어휘 스캐너 컴포넌트는 상기 복수의 텍스트 유닛 중 단서 문구를 포함하지 않는 텍스트 유닛을 고려 대상으로부터 제외시키도록 구성됨- 와,
    상기 어휘 스캐너 컴포넌트에 의해 단서 문구를 포함하는 것으로 판정된 텍스트 유닛들에 대해, 상기 단서 문구 주위에서 로컬 파싱(localized parsing)을 수행하여 상기 텍스트 유닛이 정의를 포함하는지를 판정하도록 구성된 계산 컴포넌트와,
    스코어링 규칙들의 세트에 기초하여 좌측 문구 및 우측 문구에 대해 양 및 음의 스코어링을 적용하여 문구 스코어링을 취득하도록 구성된 스코어링 컴포넌트를 포함하되,
    상기 스코어링 컴포넌트는 상기 좌측 문구 및 상기 우측 문구에 대한 스코어링을 조합하여, 상기 텍스트 유닛에 대한 전체 스코어를 취득하고, 상기 단서 문구를 포함하는 텍스트 유닛이 상기 텍스트 유닛에 대한 전체 스코어의 함수로서 정의를 포함하는지를 판정하는
    정의 추출 시스템.
  11. 제10항에 있어서,
    상기 어휘 스캐너 컴포넌트는 또한 각각의 텍스트 유닛의 단어들에 정의의 문맥상 이들 각각의 가장 공통적인 POS를 첨부하도록 구성되는
    정의 추출 시스템.
  12. 제11항에 있어서,
    상기 어휘 스캐너 컴포넌트는 또한 상기 복수의 텍스트 유닛 중 어느 것이 단서 문구를 포함하는지를 식별하는 데 사용되는 동일 처리 패스 동안에 각각의 텍스트 유닛의 단어들에 정의의 문맥상 이들 각각의 가장 공통적인 POS를 첨부하도록 구성되는
    정의 추출 시스템.
  13. 제12항에 있어서,
    단서 문구를 포함하는 것으로 판정된 텍스트 유닛들의 단서 문구의 소정의 윈도우 내에서 좌측 및 우측 문구들을 식별하도록 구성된 문구 식별 컴포넌트를 더 포함하고,
    상기 계산 컴포넌트는 또한 상기 식별된 좌측 및 우측 문구들을 이용하여 상기 로컬 파싱을 수행하도록 구성되는
    정의 추출 시스템.
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020087002614A 2005-08-01 2006-08-01 문서에서 정의를 식별하는 방법 및 정의 추출 시스템 KR101279707B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/194,873 2005-08-01
US11/194,873 US7376551B2 (en) 2005-08-01 2005-08-01 Definition extraction
PCT/US2006/030094 WO2007016628A2 (en) 2005-08-01 2006-08-01 Definition extraction

Publications (2)

Publication Number Publication Date
KR20080033325A KR20080033325A (ko) 2008-04-16
KR101279707B1 true KR101279707B1 (ko) 2013-06-27

Family

ID=37695583

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087002614A KR101279707B1 (ko) 2005-08-01 2006-08-01 문서에서 정의를 식별하는 방법 및 정의 추출 시스템

Country Status (6)

Country Link
US (1) US7376551B2 (ko)
EP (1) EP1913464A4 (ko)
JP (1) JP5113750B2 (ko)
KR (1) KR101279707B1 (ko)
CN (1) CN101233484B (ko)
WO (1) WO2007016628A2 (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7668791B2 (en) * 2006-07-31 2010-02-23 Microsoft Corporation Distinguishing facts from opinions using a multi-stage approach
CN101553816B (zh) * 2006-11-20 2012-02-22 株式会社爱可信 信息显示装置以及信息显示系统
US20080147579A1 (en) * 2006-12-14 2008-06-19 Microsoft Corporation Discriminative training using boosted lasso
TW200843642A (en) * 2007-03-08 2008-11-16 Du Pont Liquid sulfonylurea herbicide formulations
US20100228538A1 (en) * 2009-03-03 2010-09-09 Yamada John A Computational linguistic systems and methods
US8433559B2 (en) * 2009-03-24 2013-04-30 Microsoft Corporation Text analysis using phrase definitions and containers
US8321848B2 (en) * 2009-04-16 2012-11-27 The Mathworks, Inc. Method and system for syntax error repair in programming languages
KR101072100B1 (ko) * 2009-10-23 2011-10-10 포항공과대학교 산학협력단 표현 및 설명 추출을 위한 문서 처리 장치 및 방법
US8788260B2 (en) * 2010-05-11 2014-07-22 Microsoft Corporation Generating snippets based on content features
CA2852101A1 (en) * 2010-07-28 2012-01-28 Wairever Inc. Method and system for validation of claims against policy with contextualized semantic interoperability
CN102541955B (zh) * 2010-12-30 2015-03-11 中国移动通信集团公司 一种联系人信息保存的方法、设备及系统
US8589791B2 (en) 2011-06-28 2013-11-19 Microsoft Corporation Automatically generating a glossary of terms for a given document or group of documents
CN104572628B (zh) * 2015-02-05 2017-08-08 《中国学术期刊(光盘版)》电子杂志社有限公司 一种基于句法特征的学术定义自动抽取系统及方法
CN107402913B (zh) * 2016-05-20 2020-10-09 腾讯科技(深圳)有限公司 先行词的确定方法和装置
US10740365B2 (en) * 2017-06-14 2020-08-11 International Business Machines Corporation Gap identification in corpora
CN107423363B (zh) * 2017-06-22 2021-02-19 百度在线网络技术(北京)有限公司 基于人工智能的话术生成方法、装置、设备及存储介质
WO2019133676A1 (en) * 2017-12-29 2019-07-04 Robert Bosch Gmbh System and method for domain-and language-independent definition extraction using deep neural networks
US10878817B2 (en) 2018-02-24 2020-12-29 Twenty Lane Media, LLC Systems and methods for generating comedy
US11080485B2 (en) 2018-02-24 2021-08-03 Twenty Lane Media, LLC Systems and methods for generating and recognizing jokes
US10642939B2 (en) 2018-02-24 2020-05-05 Twenty Lane Media, LLC Systems and methods for generating jokes

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7254530B2 (en) 2001-09-26 2007-08-07 The Trustees Of Columbia University In The City Of New York System and method of generating dictionary entries

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5715468A (en) * 1994-09-30 1998-02-03 Budzinski; Robert Lucius Memory system for storing and retrieving experience and knowledge with natural language
US5841895A (en) * 1996-10-25 1998-11-24 Pricewaterhousecoopers, Llp Method for learning local syntactic relationships for use in example-based information-extraction-pattern learning
JP2000259657A (ja) * 1999-03-10 2000-09-22 Fujitsu Ltd 用語定義の検索/収集装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7254530B2 (en) 2001-09-26 2007-08-07 The Trustees Of Columbia University In The City Of New York System and method of generating dictionary entries

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
FINKELSTEIN-LANDAU et al., "Extracting Semantic Relationships between Terms: supervised vs. unsupervised methods," In Proc. of Int. Workshop on OEGII, pp. 71-80, 1999. *

Also Published As

Publication number Publication date
US20070027863A1 (en) 2007-02-01
WO2007016628A3 (en) 2007-12-13
US7376551B2 (en) 2008-05-20
JP2009503739A (ja) 2009-01-29
JP5113750B2 (ja) 2013-01-09
EP1913464A4 (en) 2013-06-26
WO2007016628A2 (en) 2007-02-08
CN101233484A (zh) 2008-07-30
EP1913464A2 (en) 2008-04-23
CN101233484B (zh) 2014-06-11
KR20080033325A (ko) 2008-04-16

Similar Documents

Publication Publication Date Title
KR101279707B1 (ko) 문서에서 정의를 식별하는 방법 및 정의 추출 시스템
US6282507B1 (en) Method and apparatus for interactive source language expression recognition and alternative hypothesis presentation and selection
US6223150B1 (en) Method and apparatus for parsing in a spoken language translation system
US6243669B1 (en) Method and apparatus for providing syntactic analysis and data structure for translation knowledge in example-based language translation
JP5167546B2 (ja) 文単位検索方法、文単位検索装置、コンピュータプログラム、記録媒体及び文書記憶装置
US6442524B1 (en) Analyzing inflectional morphology in a spoken language translation system
US20100332217A1 (en) Method for text improvement via linguistic abstractions
WO2003056450A1 (fr) Procede et appareil d&#39;analyse syntaxique
EP1331574B1 (en) Named entity interface for multiple client application programs
US10606903B2 (en) Multi-dimensional query based extraction of polarity-aware content
US7328404B2 (en) Method for predicting the readings of japanese ideographs
KR101757222B1 (ko) 한글 문장에 대한 의역 문장 생성 방법
Sagum et al. FICOBU: Filipino WordNet construction using decision tree and language modeling
JP2005025659A (ja) ゼロ代名詞解消方法、解消装置、解消プログラムおよびプログラムを記録した記録媒体
Grishman Information extraction and speech recognition
KR101869016B1 (ko) 등장인물 추출 방법 및 장치
KR20040018008A (ko) 품사 태깅 장치 및 태깅 방법
Shirko Part of speech tagging for wolaita language using transformation based learning (tbl) approach
Ahmed Detection of foreign words and names in written text
Bhowmik et al. Development of A Word Based Spell Checker for Bangla Language
Uzuner et al. Style versus expression in literary narratives
JP3698454B2 (ja) 並列句解析装置および学習データ自動作成装置
Donaj et al. Manual sorting of numerals in an inflective language for language modelling
Neshir Amharic Negation Handling
Fishman et al. Prosodic features’ criterion for hebrew

Legal Events

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

Payment date: 20160517

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170522

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180516

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190515

Year of fee payment: 7