KR101120798B1 - 텍스트로부터 세만틱 구조들을 식별하기 위한 방법 및장치 - Google Patents

텍스트로부터 세만틱 구조들을 식별하기 위한 방법 및장치 Download PDF

Info

Publication number
KR101120798B1
KR101120798B1 KR1020040064211A KR20040064211A KR101120798B1 KR 101120798 B1 KR101120798 B1 KR 101120798B1 KR 1020040064211 A KR1020040064211 A KR 1020040064211A KR 20040064211 A KR20040064211 A KR 20040064211A KR 101120798 B1 KR101120798 B1 KR 101120798B1
Authority
KR
South Korea
Prior art keywords
semantic
entity
entities
score
candidate
Prior art date
Application number
KR1020040064211A
Other languages
English (en)
Other versions
KR20050033420A (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 KR20050033420A publication Critical patent/KR20050033420A/ko
Application granted granted Critical
Publication of KR101120798B1 publication Critical patent/KR101120798B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99936Pattern matching access

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)

Abstract

입력 텍스트로부터 세만틱 구조 (semantic structure) 를 식별하기 위한 방법 및 장치는 적어도 2 개의 후보 세만틱 구조들을 형성한다. 세만틱 스코어 (semantic score)는 세만틱 구조의 확률에 기반해서 각 후보 세만틱 구조에 대해 결정된다. 신텍틱 스코어 (syntactic score)는 텍스트의 워드의 위치 및 상기 워드로부터 형성된 세만틱 엔터티의 세만틱 구조에서의 위치에 기반해서 각 세만틱 구조에 대해 또한 결정된다. 신텍틱 스코어 및 세만틱 스코어는 텍스트의 적어도 일부를 위한 세만틱 구조를 선택하기 위해 결합된다. 다수의 실시예들에서, 세만틱 구조는 텍스트의 부분에 대해 후보 구조들을 빌딩 (building)하고 스코어링 (scoring)하고, 낮은 스코어의 후보들을 프루닝 (pruning)하고, 보유된 후보들에게 세만틱 소자들을 추가함으로써 점진적으로 구성된다.
세만틱 구조, 신텍틱 구조, 세만틱 스코어, 신텍틱 스코어, 후보 세만틱 구조, 마르코브 확률

Description

텍스트로부터 세만틱 구조들을 식별하기 위한 방법 및 장치 { METHOD AND APPARATUS FOR IDENTIFYING SEMANTIC STRUCTURES FROM TEXT }
도 1은 본 발명이 실시될 수 있는 컴퓨팅 환경의 예의 블럭도이다.
도 2는 입력 텍스트로부터 세만틱 구조들을 식별하기 위한 시스템의 블럭도이다.
도 3은 본 발명의 한 실시예 하에서 세만틱 구조들을 식별하기 위한 방법의 흐름도이다.
도 4는 본 발명의 한 실시예 하에 세만틱 타입들, 마르코브 (Markov) 확률들, 및 세만틱 규칙들을 정의하는 스키마 일부의 예이다.
도 5는 입력 텍스트로부터 세만틱 엔터티들의 생성을 도시하는 다이어그램이다.
도 6은 도 5의 세만틱 엔터티들에의 다양한 세만틱 규칙들의 효과들을 도시하는 다이어그램이다.
도 7은 도 5의 처음 2 개의 세만틱 엔터티들로부터 형성된 초기 세만틱 구조들의 다이어그램이다.
도 8은 시간 엔터티 (TimeEntity) 세만틱 엔터티의 추가를 포함한 보유된 세 만틱 구조들의 다이어그램이다.
도 9는 항공편 안내 (ShowFlight) 엔터티의 추가를 포함한 보유된 세만틱 구조들의 다이어그램이다.
도 10은 항공사 (Airline) 및 항공편 (Flight) 엔터티들의 추가를 포함하는 보유된 세만틱 구조들의 다이어그램이다.
<주요 도면 부호 설명>
200: 스키마
202: 세만틱 타입들 및 확률들
204: 마르코브 확률들
206: 세만틱 규칙들
208: 테이블 구성
210: 세만틱 구조 테이블
212: 텍스트
214: 세만틱 엔터티 식별기
216: 구조 생성기
218: 구조 스코어링
220: 프루닝
222: 커맨드 식별기
본 발명은 자연 언어 프로세싱 (natural language processing)에 관한 것이고, 더 구체적으로, 본 발명은 텍스트의 세만틱을 식별하기 위해 텍스트를 프로세싱하는 것에 관한 것이다.
자연 언어 프로세싱의 목적은 무형식의 언어 입력의 의미 또는 세만틱을 해독하기 위한 것이다. 일부 시스템들은 입력의 개별 워드들에 직접 세만틱 규칙들을 적용해서 자연 언어 입력의 세만틱을 식별하려는 시도를 한다. 워드들은 복수 의미들을 가질 수 있으므로, 이러한 규칙들은 개발하기에 매우 복잡하고도 어렵다. 예를 들어, 워드 "방 (room)"은 "빌은 제이크와 방을 같이 쓸 수 있는지 물었다 (Bill asked if he could room with Jake)"에서와 같이 동사일 수 있고, 또는 "그 테이블은 거실에 있다 (The table is in the living room)"에서 처럼 명사일 수도 있다. 그 워드의 어느 의미로 씌이고 있는지를 판정하기 위해, 규칙들은 텍스트에 어떤 다른 워드들이 존재하는지를 판정해야 한다. 다수의 워드들은 단어의 각각의 의미로 사용될 수 있기 때문에, 다수의 규칙들이 필요하다. 결과적으로, 텍스트의 워드들에의 세만틱 규칙들의 직접 적용은 다수의 환경들에서는 불가능한 것으로 고려된다.
필요한 규칙들의 수를 감소시키기 위해, 다수의 시스템들은 텍스트의 워드들의 스피치의 부분들 및 텍스트의 세만틱을 식별하기 전에 워드들 간의 신텍틱 관계들을 식별하기 위해 신텍틱 분석을 수행한다. 그 다음, 스피치의 부분들은 워드들을 직접 사용하는 대신 규칙들의 조건들로서 사용될 수 있다. 그러므로, 규칙에서 모든 가능한 명사들을 리스트해야하기 보다는, 규칙은 단순히 한 개의 명사를 요구하기 위해 씌여질 수 있다. 이 정규화는 세만틱 규칙들의 복잡성을 크게 감소시킨다.
그러나, 분리된 신텍틱 파스 (parse)의 사용은 전체 문장의 내용이 각 스테지 (stage)에서 완전히 고려되어야하는 2-스테지 평가 프로세스를 생성한다. 이것은 프로세스를 느리게 한다. 게다가, 신텍틱 파스가 서툴게 형성되고, 단편적, 또는 오류적 입력 때문에 실패한다면, 시멘틱 프로세스는 또한 실패할 것이다.
게다가, 세만틱 규칙들은 일련의 논리 비교들 및 연산들로써 씌여지므로 기록하기에 어렵다. 이것은 새 세만틱 구조들의 추가를 시간 소비적으로 만든다.
입력 텍스트로부터 세만틱 구조를 식별하기 위한 방법 및 장치는 적어도 2 개의 후보 세만틱 구조들을 형성한다. 세만틱 스코어는 세만틱 구조의 확률에 기반해서 각 후보 세만틱 구조에 대해 결정된다. 신텍틱 스코어는 텍스트의 워드의 위치 및 그 워드로부터 형성된 세만틱 엔터티의 세만틱 구조의 위치에 기반해서 각 세만틱 구조에 대해 또한 결정된다. 신텍틱 스코어 및 시멘틱 스코어는 조합되어 텍스트의 적어도 일부분에 대한 시멘틱 구조를 선택한다. 다수의 실시예들에서, 세만틱 구조는 텍스트의 일부분에 대한 후보 구조들을 빌딩 (building)하고 스코어링 (scoring)하고, 낮은 스코어의 후보들을 삭제하고, 그리고 보유된 후보들에 세만틱 소자들을 추가함으로써 점진적으로 빌드 (build)된다.
도 1은 본 발명이 구현될 수 있는 적합한 컴퓨팅 시스템 환경(100)의 예를 도시한다. 컴퓨터 시스템 환경(100)은 적합한 컴퓨팅 환경의 한 예일 뿐이고, 본 발명의 사용 또는 기능의 범위에 대해 임의의 제한을 제안하려고 의도되지 않는다. 컴퓨팅 환경(100)은 운영 환경(100)의 예에서 설명된 구성요소들 중의 임의의 것 또는 조합에 관련된 임의의 의존성 또는 요구사항을 갖는 것으로 해석되어서는 안 된다.
본 발명은 다수의 기타 일반 목적 또는 특수 목적 컴퓨팅 시스템 환경들 또는 구성들과 함께 동작한다. 본 발명과 사용하기에 적합할 수 있는 잘 알려진 컴퓨팅 시스템들, 환경들, 및/또는 구성들의 예들은, 퍼스널 컴퓨터들, 서버 컴퓨터들, 핸드 핼드 또는 랩탑 디바이스들, 멀티프로세서 시스템들, 마이크로프로세서 기반의 시스템들, 셋탑 박스들, 프로그램 가능한 소비자 전자 제품들, 통신망 PC들, 미니 컴퓨터들, 메인프래임 컴퓨터들, 전화 시스템들, 상술한 시스템들 또는 디바이스들 중의 임의의 것을 포함하는 분산 컴퓨팅 환경들, 및 기타를, 하지만 거기에 국한되지 않고, 포함한다.
본 발명은 컴퓨터에 의해 실행되는 프로그램 모듈들과 같은 컴퓨터 실행가능 명령들의 일반 컨텍스트로 기재될 수 있다. 일반적으로, 프로그램 모듈들은 특정 작업들을 수행하거나 특정 추상 데이타 타입들을 구현하는 루틴들, 프로그램들, 객체들, 구성요소들, 데이타 구조들, 기타를 포함한다. 본 발명은 작업들이 통신망을 통해 링크된 원격 프로세싱 디바이스들에 의해 수행되는 분산 컴퓨팅 환경들에서 실시되도록 디자인된다. 분산 컴퓨팅 환경에서, 프로그램 모듈들은 메모리 저 장 디바이스들을 포함하는 로컬 및 원격 컴퓨터 저장 매체 모두에 위치된다.
도 1의 참조에서, 본 발명을 구현하는 시스템의 한 예는 컴퓨터(110)의 형태의 일반 목적 컴퓨팅 디바이스를 포함한다. 컴퓨터(110)의 구성요소들은 프로세싱 유닛(120), 시스템 메모리(130), 및 시스템 메모리를 포함하는 다양한 시스템 구성요소들을 프로세싱 유닛(120)에 연결하는 시스템 버스(121)를, 하지만 거기에 국한되지 않고, 포함할 수 있다. 시스템 버스(121)는 메모리 버스 또는 메모리 제어기, 주변 버스, 및 다양한 버스 구조들 중의 임의의 것을 사용하는 로컬 버스를 포함하는 몇 개 타입들의 버스 구조들 중의 임의의 것일 수 있다. 예를 들어, 그런 구조들은 산업 표준 아키텍춰 (ISA) 버스, 마이크로 채널 아키텍춰 (MCA) 버스, 진보된 ISA (EISA) 버스, 비디오 전자 표준 협회 (VESA) 로컬 버스, 및 메자닌 버스라고도 알려진 주변 구성요소 상호연결 (PCI) 버스를, 하지만 거기에 국한되지 않고, 포함한다.
컴퓨터(110)는 다양한 컴퓨터 판독가능 매체를 전형적으로 포함한다. 컴퓨터 판독가능 매체는 컴퓨터(110)에 의해 액세스 가능한 임의의 이용가능 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체 모두를 포함할 수 있다. 예를 들어, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를, 하지만 거기에 국한되지 않고, 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령들, 데이타 구조들, 프로그램 모듈들, 또는 기타 데이타와 같은 정보 저장을 위한 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 분리형 및 비분리형 매체 모두를 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래쉬 메모리, 또는 기타 메모리 기술, CD-ROM, 디지탈 다용도 디스크들 (DVDs), 또는 기타 광 디스크 저장, 자기 카세트들, 자기 테입, 자기 디스크 저장 또는 기타 자기 저장 디바이스들, 또는 원하는 정보를 저장하기 위해 사용될 수 있고 컴퓨터(110)에 의해 액세스될 수 있는 임의의 기타 매체를, 하지만 거기에 국한되지 않고, 포함한다. 통신 미디어는 컴퓨터 판독가능 명령들, 데이타 구조들, 프로그램 모듈들, 또는 캐리어 웨이브 또는 기타 운송 메카니즘과 같은 변조 데이타 내의 기타 데이타를 전형적으로 구현하고, 임의의 정보 배달 매체를 포함한다. 변조 데이타 신호라는 용어는 신호의 정보를 인코드하기 위한 방식으로 한 개 이상의 그자체의 특징들이 세트되거나 변경되는 신호를 의미한다. 예를 들어, 통신 매체는 유선 통신망 또는 직접 유선 연결과 같은 유선 매체, 및 음향, 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)를 도시한다. 운영 환경의 예에서 사용될 수 있는 기타 분리형/비분리형, 휘발성/비휘발성 컴퓨터 저장 매체는, 자기 테입 카세트들, 플래쉬 메모리 카드들, 디지탈 다용도 디스크들, 디지탈 비디오 테입, 반도체 ROM, 반도체 RAM, 및 기타를, 하지만 거기에 국한되지 않고, 포함한다. 하드 디스크 드라이브(141)는 인터페이스(140)와 같은 비분리형 메모리 인터페이스를 통해 시스템 버스(121)에 전형적으로 연결되고, 자기 디스크 드라이브(151) 및 광 디스크 드라이브(155)는 인터페이스(150)와 같이 분리형 메모리 인터페이스에 의해 시스템 버스(121)에 전형적으로 연결된다.
상술하고 도 1에 도시된 드라이브들 및 그들과 연계된 컴퓨터 저장 매체는 컴퓨터 판독가능 명령들, 데이타 구조들, 프로그램 모듈들, 및 컴퓨터(110)을 위한 기타의 저장을 제공한다. 도 1에서, 예를 들어, 하드 디스크 드라이브(141)는 운영 체제(144), 응용 프로그램들(145), 기타 프로그램 모듈들(146), 및 프로그램 데이타(147)를 저장하는 것으로 도시된다. 이러한 구성요소들은 운영 체제(134), 응용 프로그램들(135), 기타 프로그램 모듈들(136), 및 프로그램 데이타(137)와 동일하거나 상이할 수 있다. 운영 체제(144), 응용 프로그램들(145), 기타 프로그램 모듈들(146), 및 프로그램 데이타(147)는 적어도 그들이 상이한 복사본들임을 설명하기 위해 본 명세서에서 다른 번호들이 주어진다.
사용자는 키보드(162), 마이크로폰(163), 및 마우스, 트랙볼, 또는 터치 패드와 같은 포인팅 디바이스(161)와 같은 입력 디바이스들을 통해 컴퓨터(110)에 커맨드들 및 정보를 입력할 수 있다. 기타 입력 디바이스들로는 (도시 안됨) 조이 스틱, 게임 패드, 위성 접시, 스캐너, 또는 기타를 포함할 수 있다. 이런 그리고 기타 입력 디바이스들은 시스템 버스에 연결된 사용자 입력 인터페이스(160)를 통해 프로세싱 유닛(120)으로 종종 연결되지만, 병렬 포트, 게임 포트, 또는 범용 직렬 버스(USB)와 같은 기타 인터페이스 및 버스 구조들에 의해 연결될 수 있다. 모니터(191) 또는 기타 타입의 디스플래이는 비디오 인터페이스(190)와 같은 인터페이스를 통해 시스템 버스(121)에 또한 연결된다. 모니터에 추가해서, 컴퓨터들은 출력 주변 인터페이스(195)를 통해 연결될 수 있는 스피커들(197) 및 프린터(196)와 같은 기타 주변 출력 디바이스들을 또한 포함할 수 있다.
컴퓨터(110)는 원격 컴퓨터(180)와 같은 한 개 이상의 원격 컴퓨터들과 논리 연결들을 사용해서 통신망 환경에서 동작한다. 원격 컴퓨터(180)는 퍼스널 컴퓨터, 핸드 핼드 디바이스, 서버, 라우터, 통신망 PC, 피어 디바이스, 또는 기타 일반 통신망 노드일 수 있고, 컴퓨터(110)에 관련해서 상술한 소자들 중 다수 또는 전체를 전형적으로 포함한다. 도 1에서 도시된 논리 연결들은 구내 통신망 (LAN)(171) 및 광역 통신망 (WAN)(172)을 포함하지만, 기타 통신망들을 또한 포함할 수 있다. 그런 통신망 환경들은 사무실, 기업 기반 컴퓨터 통신망들, 인트라넷 들, 및 인터넷에서 일반적이다.
LAN 통신망 환경에서 사용될 때, 컴퓨터(110)는 통신망 인터페이스 또는 어뎁터(170)를 통해 LAN(171)에 연결된다. WAN 통신망 환경에서 사용될 때, 컴퓨터(110)는 인터넷과 같은 WAN(173)을 통해 통신을 개통하기 위한 모뎀(172) 또는 기타 수단을 전형적으로 포함한다. 외장 또는 내장일 수 있는 모뎀(172)은 사용자 입력 인터페이스(160) 또는 기타 적절한 메카니즘을 통해 시스템 버스(121)에 연결될 수 있다. 통신망 환경에서, 컴퓨터(110)와 관련해서 도시되는 프로그램 모듈들, 또는 그것들의 일부들은 원격 메모리 저장 디바이스에 저장될 수 있다. 예를 들어, 도 1은 원격 컴퓨터(180)에 상주하는 원격 응용 프로그램들(185)을 도시한다. 도시된 통신망 연결들은 예들일 뿐이고 컴퓨터들 간에 통신 링크를 개통하는 기타 수단이 사용될 수 있음이 이해될 것이다.
본 발명은 입력 텍스트가 서툴게 형성되거나 단편적일지라도 입력 텍스트의 세만틱 구조들을 효과적으로 식별하기 위한 방법 및 장치를 제공한다. 본 발명의 시스템을 도시하는 블럭도는 도 2에 제공되고, 세만틱 구조를 식별하는 방법은 도 3의 흐름도에서 도시된다.
도 3의 스텝(300)에서, 스키마(200)는 스키마 타입들 및 확률들(202), 마르코브 (Markov) 확률들(204), 및 세만틱 규칙들(206)을 포함해서 정의된다. 스키마의 일부의 한 예는 도 4에 도시된다.
도 4에서, 스키마는 <Schema> 태그(400)에서 시작해서 </Schema> 태그(402)에서 끝나는 XML 포맷을 사용해서 정의된다. 한 스키마 타입은 <Entity> 태그들 (404, 406)과 같은 <Entity> 태그들 내에 정의된다. 시작 <Entity> 태그 내에, 엔터티 (entity)의 신원 (identity)은 "타입 (Type)" 속성을 위한 값으로서 리스트된다. 예를 들어, <Entity> 태그(400)에 대해, 엔터티는 "항공편 (Flight)"으로서 식별된다. 시작 <Entity> 태그는 훈련 데이타 세트에 이 엔터티가 발생한 횟수를 표시하는 "횟수 (seen)" 속성을 또한 포함한다. 예를 들어, "항공편" 엔터티는 훈련 데이타에서 121 번 나타난다.
시작 및 끝 <Entity> 태그들 사이에, <With> 태그들 (408, 410, 412, 414, 및 416) 과 같은 <With> 태그들의 세트가 발견될 수 있다. 각 <With> 태그는 시작 <Entity> 태그에 리스트된 엔터티를 위한 자식 엔터티로서 나타날 수 있는 엔터티를 식별하는 "엔터티 타입 (Entity Type)" 속성을 포함한다. 예를 들어, <With> 태그(408)는 "시간 엔터티 (TimeEntity)"가 태그(404)에 발견되는 "항공편" 엔터티에 자식 엔터티로서 나타날 수 있다. 각 <With> 태그는, <With> 태그의 엔터티가 <Entity> 태그의 엔터티의 자식 엔터티로서 발견되는 횟수를 표시하는 "횟수" 속성을 또한 포함한다. 예를 들어, 태그(414)는 "항공사 (Airline)" 엔터티가 "항공편"의 자식 엔터티로서 39 번 발견됨을 표시한다.
<With> 태그의 일부 엔터티들은 "타입" 속성의 제한 세트에 의해 더 정의된다. 예를 들어, <With> 태그들(410, 412)은 모두 "도시 (City)" 엔터티에 대한 것이다. 그러나, 태그(410)는 여행의 "목적지" 또는 목적지인 도시에 제한되고, 태그(412)는 여행의 "출발지" 또는 출발지인 도시에 제한된다.
<Entity> 태그 내의 또 다른 태그는 <Denoted> 태그이다. 2 개의 <Denoted> 태그들 사이의 워드 또는 프레이즈 (phrase)는 훈련 데이타에 나타나고 이 엔터티와 연계된 워드 또는 프레이즈이다. 예를 들어, 워드 "항공편들 (flights)"은 훈련 텍스트에서 발견되고 <Denoted> 태그(418)에 의해 표시되는 것처럼 "항공편 (flight)" 엔터티와 연계된다. <Denoted> 태그는, <Denoted> 태그들 사이에 워드 또는 프레이즈가 이 엔터티와 연계되는 횟수를 표시하는 "횟수" 속성을 포함할 수 있다. 예를 들어, 워드 "항공편들"는 "항공편" 엔터티와 79 번 연계된다.
도 3의 참조에서, 스키마가 정의된 후에, 스키마는 세만틱 구조 테이블(210)을 구성하기 위해 테이블 구성 유닛(208)에 의해 스텝(302)에서 사용된다. 구체적으로, 스키마의 <Entity> 태그들 사이에 정의된 세만틱 타입들(202)은 세만틱 구조 테이블(210)을 구성하기 위해 사용된다.
구조 테이블(210)은 스키마의 각 가능한 엔터티들의 쌍에 대한 분리된 엔트리로 구성된다. 각 엔트리는, 두 엔터티들이 모두 존재할 수 있게 형성 될 수 있는 구조들의 전체 리스트를 포함한다. 이러한 구조들은, 2 개의 엔트리들이 서로 직접 연결된 구조들, 및 2 개의 엔터티들이 또 다른 엔터티를 통해 연결된 구조들을 포함함을 주목한다. 상기 2 개의 엔터티들 사이에 연결을 형성하기 위해 요구되는 그런 엔터티들만이 테이블에서 임의의 1 개의 구조에 대해 리스트된다. 초기에 이 테이블을 생성해서, 본 발명은 2 개의 엔터티들이 스키마 내에서 서로 연결될 수 있는 상이한 방법들을 식별하기 위해 실행시에 수행되어야 하는 계산들의 횟수를 감소시킨다.
스텝(304)에서, 텍스트(212)는 스텝(306)에서 텍스트에 의해 표현될 수 있는 모든 엔터티들을 식별하는 세만틱 엔터티 식별기(214)에 의해 수신된다. 이를 위해, 엔터티 식별기는 스키마(200)의 <entity> 태그들의 <Denoted> 태그들을 사용한다. 텍스트로부터의 워드 또는 프레이즈가 <Denoted> 태그들의 쌍에서 발견되면, 세만틱 노드는 워드 또는 프레이즈에 대해 생성되고, <Denoted> 태그를 포함하는 엔터티는 그 노드의 가능한 엔터티로서 추가된다. 1 개 노드는 복수의 엔터티들을 가질 수 있음을 주목한다. 또한, 2 개의 엔터티들 (엔터티들과 연계된 워드 또는 프레이즈)의 스팬 (span)이 부분적으로 겹치면, 그들은 동일 세만틱 노드의 일부로서 고려된다. 결과는 세만틱 엔터티 래티스 (lattice)이다.
도 5는 스텝(306)을 통해 형성된 엔터티 래티스의 예를 도시하는 다이어그램을 제공한다. 도 5에서, 서툴게 형성된 입력 시퀀스 "나는 보스턴에 있으며, 화요일에 디트로이트에 있고 싶다, 유나이티드 (United)의 항공편들을 보여라 (I am in Boston and I want to be in Detroit on Tuesday, show me United flights)"는 엔터티 래티스를 식별하기 위해 프로세스된다. 이 프로세스 동안, "보스톤 (Boston)" 및 "디트로이트 (Detroit)"는 2 개의 순차적 세만틱 노드들을 나타내는 2 개의 분리된 "도시 이름 (cityname)" 엔터티들(500, 502)에 맵핑된다. "화요일 (Tuesday)"는 제 3 세만틱 노드에서 "요일 (daysofweek)" 엔터티(504)에 맵핑된다. 워드 "안내 (show)"는 제 4 노드에서 겹치는 4 개의 가능한 엔터티들에 맵핑된다. 구체적으로, "안내"는 "운행 항공사 안내 (ShowAirlineServed)" 엔터티(506), "항공편 안내 (ShowFlight)" 엔터티(508), "교통 수단 (ListTransport)" 엔터티(510), 및 "정원 안내(ShowCapacity)" 엔터티(512)에 맵핑된다. 워드들 "유나이티드 (United)" 및 "항공편들 (flights)"는 래티스에서 마지막 2 개의 세만틱 노드들을 표현하는 "항공사 (Airline)" 엔터티(514) 및 "항공편(Flight)" 엔터티(516) 각각에 맵핑된다.
스텝(308)에서, 세민틱 규칙들(206)은 스텝(306)에서 식별된 엔터티들에 적용된다. 그런 세만틱 규칙들의 예들은 <GrammarRule> 태그들(420 및 422) 및 <GrammarRule> 태그들(424 및 426)과 같은 <GrammarRule> 태그들 사이에 도 4의 스키마의 예에서 도시된다.
<GrammarRule> 태그들의 각 쌍 사이에, <Constit> 태그(428)와 같은 한 개 이상의 <Constit> 태그들이 있다. 각 <Constit> 태그는 "엔터티 (Entity)" 속성에 의해 <Constit> 태그 내에 식별되는 한 엔터티를 표현한다. 특정 그래머 (grammar) 규칙이 실행되어야 하는지를 판정하기 위해, 스텝(306)에서 형성된 엔터티 래티스는, 상기 규칙의 <Constit> 태그들 내에 리스트된 모든 엔터티들이 래티스에서 분리된 세만틱 노드들에 존재하는지를 보기 위해 검사된다. 일부 실시예들에서, 엔터티들은 <Constit> 태그들과 동일한 순서로 래티스에 나타나야 한다. 예를 들어, 그래머 규칙이 다음의 태그들의 시퀀스를 포함한다면:
<Constit Number="0" Entity="Number" />
<Constit Number="1" Entity="항공편">
"숫자 (Number)" 엔터티는 그래머 규칙이 실행되기 위해 엔터티 래티스에 "항공편" 엔터티의 좌측에 나타나야만 한다.
위에 도시된 바와 같이, <Constit> 태그들은 "숫자" 속성을 또한 포함한다. 상기 속성은 상기 규칙의 실행 동안 엔터티를 식별하기 위해 사용될 수 있는 엔터티에 값을 할당한다. 동일 엔터티 타입의 2 개의 엔터티들은 한 개의 그래머 규칙에서 사용될 수 있으므로, 상기 값은 필요하다.
일반적으로, 각 그래머 규칙은 <Constit> 태그들에서 발견되는 구성요소 엔터티들을 조합해서 상기 구성요소들이 임베디드되는 (embeded) 새로운 엔터티를 형성한다. 한 가지 타입의 그래머 규칙은 각 구성요소 엔터티가 부모 엔터티의 자식이 되는 부모 엔터티를 형성한다. 그런 규칙들은 부모로서 사용되는 엔터티를 식별하는 "엔터티" 속성을 갖는 <Parent> 태그를 사용한다. 상기 태그가 대면되고, <Constit> 태그의 엔터티들이 엔터티 래티스에 존재할 때, <Constit> 태그들의 개별 엔터티들은 삭제되고, <Constit> 태그의 엔터티들이 <Parent> 태그에서 발견되는 엔터티의 자식 엔터티들이 되는 세만틱 구조가 생성된다. 그 다음, 상기 구조의 스팬 (span)은 자식 엔터티들의 스팬의 조합이다.
그래머 규칙들은 <Constit> 태그들의 엔터티들이 복수 레벨 구조들을 통해 조합되거나 엔터티의 속성들이 변경되거나 엔터티 그자체가 변경되는 더 복잡한 구조 형태를 포함할 수 있다. 상기 규칙들은 <Constit> 태그들의 "숫자" 속성을 통해 할당된 값들을 사용해서 구성요소 엔터티들로부터 형성되는 최종 구조를 표시하는 <Rule> 태그를 포함한다. 예를 들어,
<Constit Number="0" Entity="도시"
Restriction="출발지" />
<Constit Number="1" Entity="도시"
Restriction="목적지" />
<Constit Number="2" Entity="도시"
Restriction="목적지" />
<Rule>{Flight[(Source,City,0)(Via,City,1)
(Goal,City,2)]}</Rule>
는 부모 "항공편" 엔터티, 엔터티 "0"로서 표시된 도시 엔터티로 채워지는 자식 출발 도시 (source city) 엔터티, 엔터티 "1"로서 표시되는 도시 엔터티로 채워지는 자식 경유 도시 (via city) 엔터티, 및 엔터티 "2"로서 표시되는 도시 엔터티로 채워지는 자식 도착 도시 (goal city) 엔터티를 갖는 "항공편" 구조를 생성한다. 상기 규칙에서, 엔터티 "1"로서 표시되는 도시 엔터티는 "목적지 (goal)" 엔터티에서 "경유지 (via)" 엔터티로 변경된다.
위의 예에서, "제한 (Restriction)" 속성은 특수 타입의 엔터티이다. 기타 엔터티들 처럼, 제한 엔터티는 어느 워드들이 상기 엔터티를 생성하는지를 표시하는 그자신의 정의에서 <Denoted> 태그들을 포함한다. 예를 들어, "목적지" 제한 엔터티는 워드 "~ 에 (to)" 또는 프레이즈 "~ 에 도착함(arriving at)"에 의해 기술된다. 제한 엔터티들은 구조에서 동일 레벨의 다른 엔터티를 수정한다는 점에서 다른 엔터티들과 상이하다. 그러므로, 목적지 (Goal), 출발지 (Source), 및 경유 (Via)는 도시 (City) 엔터티를 수정한다. 제한 엔터티 및 수정되는 엔터티는 함께 제한을 갖는 한 개 엔터티를 형성한다. 아래 기재에서, 제한 엔터티는 단지 제한으로서 종종 언급된다.
스키마에서, 엔터티가 제한을 갖는 다른 엔터티를 수용하면, 상기 제한은 <With> 태그의 "타입" 속성을 사용해서 식별된다. 예를 들어, <With> 태그(416)는 "항공편" 엔터티는 "경유지" 제한을 갖는 "도시" 엔터티를 수용함을 표시한다.
도 6은 도 5의 엔터티 래티스에 도 4에서 발견된 그래머 규칙들을 수행한 결과들을 도시한다. 구체적으로, <GrammarRule> 태그들(424, 426) 내에서 발견된 그래머 규칙은 "도시 이름 (CityName)" 엔터티들 (500, 502)에 적용된다. 이는 부모 "도시" 엔터티들(604, 606) 및 자식 "도시 이름" 엔터티들(500, 502)을 갖는 "도시" 세만틱 구조들(600, 602)을 생성한다. <GrammarRule> 태그들(420, 422) 내의 그래머 규칙은 "요일" 엔터티(504)에 적용되어서 "시간 엔터티" 부모 노드(610) 및 "요일" 자식 엔터티(504)를 갖는 "시간 엔터티" 구조(608)를 생성한다.
세만틱 규칙들이 실행된 후에, 처음 2 개의 세만틱 노드들은 스텝(310)에서 선택된다. 대부분의 실시예들에서, 이것은 2 개의 좌측끝 세만틱 노드들을 선택하는 것과 관련있다.
스텝(312)에서, 구조 생성기(216)는 세만틱 구조 테이블(210)을 사용해서 2 개의 선택된 세만틱 노드들을 위해 리스트된 엔터티들을 사용해서 형성될 수 있는 모든 가능한 구조들을 식별한다. 예를 들어, 제1 노드가 엔터티들 A 및 B를 포함하고 제2 노드가 엔터티들 C 및 D를 포함하면, 엔터티 쌍들 AC, AD, BC, 및 BD 엔터티 쌍들에 대해 분리된 구조들이 식별된다. 복수 구조들은 각 엔터티 쌍에 대해 식별될 수 있음을 주목한다. 각 엔터티 쌍에 대해 가능한 구조들은 이전에 식별되고 구조 테이블(210)에 저장되므로, 상기 프로세스는 실행시에 신속하게 수행될 수 있다.
도 6의 수정된 엔터티 래티스의 처음 2 개의 엔터티들로부터 생성되는 구조들의 예들은 도 7에 도시된다. 도 6의 처음 2 개의 세만틱 노드들의 각각에 대해 단지 한 개의 엔터티가 있으므로, 고려할 단지 한 개 엔터티 쌍이 있다. 그러나, 구조 생성기는 상기 한 개의 엔터티 쌍으로 형성될 수 있는 6 개의 분리된 구조들을 식별했다. 구체적으로, 6 개의 "항공편" 세만틱 구조들 (700, 702, 704, 706, 708, 및 710)이 식별된다.
식별된 세만틱 구조들 전체는 "항공편" 구조들이지만, 그들 각각은 "도시" 세만틱 구조(600) ("도시" 엔터티(604) 및 "도시 이름=보스톤" 엔터티(500)로 구성됨) 및 "도시" 세민틱 구조(602) ("도시" 엔터티(606) 및 "도시 이름=디트로이트" 엔터티(502)로 구성됨)를 사용해서 "항공편" 구조의 상이한 슬롯들을 채운다. 구체적으로, 각 "도시" 세만틱 구조는 "항공편" 엔터티에서 발견된 제한된 엔터티들 "출발 도시", "경유 도시", 및 "목적 도시"에 대한 3 개의 슬롯들 중의 한 개를 채우기 위해 사용될 수 있다. 그러므로, 6개의 "항공편" 구조들은 2 개의 "도시" 세만틱 구조들에 대한 6 개의 상이한 가능 할당 조합들 (assignment combinations)을 나타낸다.
예를 들어, "항공편" 구조(700)에서, "도시" 엔터티(604)는 "출발지" 도시 슬롯(720)을 채우고, "도시" 엔터티(606)는 "목적지" 도시 슬롯(722)를 채운다. 그러나, "항공편" 구조(702)에서, "도시" 엔터티(604)는 "목적지" 도시 슬롯(724)을 채우고, "도시" 엔터티(606)는 "출발지" 도시 슬롯(726)을 채운다.
"항공편" 구조(704)에서, "도시" 엔터티(604)는 "출발지" 도시 슬롯(728)을 채우고, "도시" 엔터티(606)는 "경유지" 도시 슬롯(730)을 채우고, "항공편" 구조(706)에서, "도시" 엔터티(604)는 "경유지" 도시 슬롯(732)을 채우고, "도시" 엔터티(606)는 "출발지" 도시 슬롯(734)을 채운다.
마지막으로, "항공편" 구조(708)에서, "도시" 엔터티(604)는 "목적지" 도시 슬롯(736)을 채우고, "도시" 엔터티(606)는 "경유지" 도시 슬롯(738)을 채우고, "항공편" 구조(710)에서, "도시" 엔터티(604)는 "경유지" 도시 슬롯(740)을 채우고, "도시" 엔터티(606)는 "목적지" 도시 슬롯(742)을 채운다.
도 7의 세만틱 구조들에서, "항공편" 엔터티는, 각 도시 엔터티가 "항공편" 엔터티의 정의 내에 <With> 태그에 리스트된 도시 엔터티들 각각에의 부모 엔터티이다. 그러므로, 각 도시 엔터티는 세만틱 구조에서 "항공편" 엔터티 아래 있는 것으로 고려되는 자식 엔터티이다.
상기 2 개의 노드들에 대한 모든 가능한 구조들이 생성된 후에, 구조들은 스텝(314)에서 각 구조를 스코어링 (scoring)하는 구조 스코어링 모듈(218)에 제공된다. 본 발명 하에서, 각 구조에 대한 스코어는 3 개의 세미-오쏘고널 (semi-orthogonal) 스코어들의 결과이다. 이런 스코어들 중의 한 개는 세만틱 구조의 확률에 기반하고, 상기 스코어들 중의 다른 한 개는 세만틱 엔터티들이 입력 텍스트에 표현된 순서에 기반하고, 마지막 스코어는 세만틱 구조의 신텍틱 구조의 신텍틱 정확성에 기반한다.
제 1 스코어는 세만틱 스코어라고 일컬어지고, 다음과 같이 계산된다.
Figure 112004036444818-pat00001
여기서, Ej는 엔터티 구조 S에서 분리된 엔터티들이고, CE는 엔터티 Ej의 전체 자식 엔터티들이고, p(Ej)는 엔터티 Ej의 확률이고, p(ci|Ej)는 주어진 엔터티 Ej에서 자식 엔터티 ci의 확률이다.
세만틱 확률의 확률들은 <Entity> 태그들 및 <With> 태그들의 "횟수" 속성들을 사용해서 스키마로부터 결정된다. 구체적으로, 엔터티의 확률은 상기 엔터티에 대한 <Entity> 태그의 "횟수" 속성의 값을 상기 스키마의 전체 엔터티들의 <Entity> 태그들의 "횟수" 속성들의 값들의 합계로 나누어서 결정된다. 주어진 부모 엔터티에서 자식 엔터티의 확률은 자식 엔터티의 <With> 태그의 "횟수" 속성의 값을 부모 엔터티의 <Entity> 태그의 "횟수" 속성의 값으로 나누어서 결정된다.
본 발명의 일부 실시예들에서, 수식 1의 세만틱 스코어는, 엔터티가 텍스트로부터 직접 유도되지 않고 그대신 그 텍스트로부터 유도된 2 개의 엔터티들을 연결하기 위해 생성되면, 엔터티의 확률을 감소시키기 위해 적용되는 패널티 인자 (penality factor)가 추가된다. 예를 들어, 도 7에서, "항공편" 엔터티(750)의 확률은, "항공편" 엔터티가 2 개의 "도시" 엔터티들을 연결하기 위해 세만틱 구조에 위치되지만, 텍스트로부터 생성된 엔터티 래티스로부터 직접 얻어지지 않았으므로, 패널티 인자에 의해 감소될 것이다. 일부 실시예들에서, 패널티 인자는 .90이다.
세만틱 엔터티들이 입력 텍스트에 표현되는 그 순서에 기반한, 제2 스코어는 마르코브 (Markov) 스코어 또는 전이 (transition) 스코어라고 언급된다. 한 실시예에서, 마르코브 스코어는 세만틱 구조의 상등 레벨에 있는 각 엔터티들의 쌍에 대한 전이 확률들의 곱셈으로 계산된다. 예를 들어, 도 7의 세만틱 구조(700)에 대한 마르코브 확률은 출발 도시 다음에 목적 도시를 갖는 단지 전이 확률로서 계산될 수 있다. 목적 도시 다음에 상등 레벨에 또 다른 자식 노드가 있다면, 추가 전이 확률이 목적 도시 다음에 추가 엔터티를 갖기 위해 결정될 수 있다.
상등 레벨 엔터티들의 쌍에 대한 전이 확률은 스키마(200) 내에 <TransitionProb> 태그들 (도 2에서 마르코브 확률들(204)로서 도시됨)로부터 결정된다. 상기 <TransitionProb> 태그들의 예들은 도 4에서 <TransitionProb> 태그들 (430, 432)로서 발견된다.
<TransitionProb> 태그들 내에, 엔터티들의 순서는 "R1", "E1", "R2", 및"E2" 속성들을 사용해서 기재된다. "R1" 및 "E1" 속성들은 2 개의 엔터티들 중의 좌측끝 엔터티에 대해 제한 및 엔터티를 각각 식별하고, "R2" 및 "E2" 속성들은 2 개 엔터티들의 우측끝 엔터티에 대해 제한 및 엔터티를 식별한다. 그러므로, <Transitionprob> 태그(430)의 전이 확률은 목적 도시 다음에 출발 도시가 오는 것에 대한 것이고, <Transitionprob> 태그(432)의 전이 확률은 출발 도시 다음에 목적 도시가 오는 것에 대한 것이다. 각 <Transitionprob> 태그는 또한 상기 2 개의 엔터티들이 태그의 순서 리스트에 함께 발견되는 횟수를 표시하는 "횟수" 속성을 또한 포함한다.
2 개의 엔터티들의 특정 순서에 대한 확률을 결정하기 위해, 상기 2 개의 엔터티들을 포함하는 전체 <Transitionprob> 태그들의 위치가 파악된다. (1 개 또는 2 개의 상기 태그들이 있음) 상기 2 개의 엔터티들의 특정 순서의 확률은 상기 순서에 대한 "횟수" 값을 상기 2 개의 엔터티들을 포함한 전체 <Transitionprob> 태그들에 대한 "횟수" 값들의 합계로 나누어서 결정된다. 예를 들어, 도 4의 목적 도시 다음에 출발 도시가 오는 확률은 2/71로 계산되고, 출발 도시 다음에 목적 도시가 오는 확률은 69/71로 계산된다.
그 다음, 각 상등 레벨 엔터티들의 쌍에 대한 개별 전이 확률들의 곱셈은 상기 구조를 위한 마르코브 확률을 형성하기 위해 결정된다. 단지 2 개의 엔터티 전이 확률들이 위에서 사용되지만, 임의의 수의 엔터티들이 전이 확률들을 결정하기 위해 사용될 수 있음을 주목한다.
세만틱 구조의 신텍틱 정확성을 표시하는 마지막 확률은 신텍틱 스코어로서 언급된다. 상기 스코어는 다수의 상이한 방식들로 생성될 수 있다. 한 실시예에서, 신텍틱 파스 구조는 세만틱 구조를 기반으로 형성된다. 구체적으로, 세만틱 구조의 엔터티들에 의해 스팬되는 워드들은 세만틱 구조의 상기 엔터티들과 동일한 상대 위치에 신텍틱 구조에서 위치된다. 그 다음, 결과적 신텍틱 파스 트리의 스코어는 결정되고, 상기 세만틱 구조에 대한 신텍틱 스코어로서 사용된다.
본 발명의 또 다른 실시예에서, 신텍틱 스코어는 세만틱 구조에서 각 부모-자식 관계에 대한 분리된 스코어를 결정해서 계산된다. 각 부모-자식 관계에서, 부모 엔터티에 의해 스팬되는 워드 또는 프레이즈의 토큰 위치 (token position) 및 자식 엔터티에 의해 스팬되는 워드 또는 프레이즈의 토큰 위치는 식별되고, 토큰 위치는 문장의 시작에서 상기 워드 또는 프레이즈까지 토큰들의 수이다. 토큰은 1 개 엔터티로서 동작하는 개별 워드 또는 프레이즈를 포함한다.
그 다음, 토큰 위치들은 자식 엔터티가 토큰 위치 Y에 있을 때 토큰 위치 X에 있는 부모 엔터티의 확률을 표현하는 확률을 식별하기 위해 사용된다. 그러므로, 신텍틱 스코어는 다음과 같이 계산된다:
Figure 112004036444818-pat00002
여기서, Px는 전체 부모 엔터티들의 세트이고, CY는 각 부모 엔터티에 대한 자식 엔터티들의 세트이고, X는 부모 엔터티의 토큰 위치이고, Y는 자식 엔터티의 토큰 위치이다.
세만틱 스코어, 마르코브 스코어, 및 신텍틱 스코어의 곱셈은 각 세만틱 구조에 대한 전체 스코어이다. 서툴게 형성된 문장들로부터 생성된 후보 구조들은 낮은 신텍틱 스코어들을 가질 수 있지만, 그래도 그들은 세만틱으로 스코어링이 되고 상기 세만틱 스코어는 상기 구조들 중 적어도 1 개가 실용가능의 세만틱 구조가 되게 충분히 높을 수 있기 때문에, 상기 3 개의 세미-오써고널 (semi-orthogonal) 스코어들을 병합해서, 서툴게 형성된 텍스트로부터도 세만틱 구조들을 식별하는 것은 가능하다. 추가로, 세만틱 구조의 점진적 구성 동안 상기 스코어의 신텍틱 구성요소 및 세만틱 구성요소를 병합해서, 본 발명은 텍스트로부터 세만틱 구조를 식 별하기 위해 필요한 시간을 매우 감소시킨다.
세만틱 구조들이 스텝(314)에서 스코어링이 된 후, 1 개 이상의 구조들은 스텝(316)에서 프루닝 시스템 (pruning system)(220)에 의해 고려 대상에서 프루닝(pruning) 된다. 상기 프루닝은 상위 N 세만틱 구조들을 택하거나 상위 스코어링 세만틱 구조의 임계치 이내의 상기 세만틱 구조들을 택해서 수행될 수 있다. 도 7의 예에서, 상위 4 개의 세만틱 구조들이 보유된다. 구체적으로, 구조들 (700, 704, 708, 및 710)이 보유된다.
프루닝 후에, 래티스는 스텝(318)에서 검사되어서 프로세스할 임의의 기타 세만틱 노드들이 있는지가 결정된다. 프로세스할 추가 세만틱 노드들이 있으면, 다음 노드의 엔터티들은 구조 생성기(216)에 의해 보유된 세만틱 구조들과 조합되어서 스텝(320)에서 엔터티들과 보유된 구조들의 모든 가능한 조합들을 형성한다.
한 실시예에서, 순서화된 검색은 어떻게 엔터티가 세만틱 구조에 부착될 수 있는지를 판정하기 위해 수행된다. 첫 번째, 새 엔터티가 세만틱 구조의 엔터티들 중의 임의의 것 아래에 적합한 구조들을 발견하기 위해 검색이 수행된다. 두 번째, 세만틱 구조의 헤드 (head)가 상기 새 엔터티 아래 적합한 구조들을 발견하기 위해 검색이 수행된다. 마지막으로, 세만틱 구조의 헤드와 새 엔터티 간에 공통 조상 (ancestor)이 있는지를 찾기 위해 검색이 수행된다. 상기 검색들의 각각은 세만틱 구조 테이블(210)을 사용해서 수행된다.
도 7의 구조들 및 "시간 엔터티" 엔터티로부터 형성된 새 구조들의 예들은 도 8에 도시된다. 구체적으로, 구조들 (800, 802, 804, 및 806)은 구조들 (700, 704, 708, 및 710) 각각으로부터 형성된다. 상기 전체 구조들에서, "시간 엔터티" 엔터티는 "항공편" 엔터티에 자식 노드로서 추가된다.
스텝들(314, 316)은 세만틱 구조들의 각각을 스코어링하고 구조들의 세트를 프루닝하기 위해 반복된다. 도 8의 예에서 단지 4 구조들만이 있으므로, 상기 구조들은 프루닝 되지 않는다.
그 다음, 스텝들(318, 320)은 도 8의 구조들과 다음 세만틱 노드의 "운행 항공사 안내 (ShowAirlineServed)" 엔터티(506), "항공편 안내 (ShowFlight)" 엔터티(508), "교통 수단 리스트 (ListTransport)" 엔터티(510), 및 "정원 안내 (ShowCapacity)" 엔터티(512)를 조합하기 위해 수행된다.
다음 세만틱 노드의 4 개의 엔터티들 중에, 단지 "항공편 안내" 엔터티만이 도 8의 구조들과 조합될 수 있다. 추가로, "항공편 안내" 엔터티는, "항공편 안내" 엔터티가 "항공편" 엔터티를 그자신의 직계 자식으로 갖고 상기 구조의 헤드가 되도록, 상기 구조들의 각각에 단지 조합될 수 있다. 이것은 도 8의 구조들 (800, 802, 804, 및 806)에 대응하는 도 9의 세만틱 구조들 (900, 902, 904, 및 906)로 귀결한다.
스코어링 및 프루닝 스텝들(314, 316)은 스텝(318)에서 프로세스할 추가 세만틱 노드들이 있는지를 판정하기 전에 새로운 세만틱 구조들(900, 902, 904, 및 906)에 대해 반복된다. 그 다음, "항공사" 엔터티는 스텝(320)에서 세만틱 구조들(900, 902, 904, 및 906)에 추가된다. 상기 구조들의 각각에 대해, 이것은 "항공사" 엔터티를 "항공편" 엔터티의 자식 노드로서 추가하는 것과 관련 있다. 결과 구조들은 도 10에서 세만틱 구조들(1000, 1002, 1004, 및 1006)으로서 도시된다.
그 다음, 스텝들(314, 316, 및 318)은 도 10의 구조들에 "항공편" 엔터티를 추가하기 전에 상기 새 구조들에 대해 반복된다. "항공편" 엔터티는 2 개의 도시 엔터티들을 연결하기 위해 생성되므로, "항공편" 엔터티는 상기 구조들에 추가될 필요가 없다. 그러나, "항공편" 엔터티가 래티스에서 발견되는 사실은 상기 세만틱 구조들에 대한 스코어들은 "항공편" 엔터티의 생성을 위한 패널티 인자를 더 이상 포함하지 않음을 의미한다.
상기 새로운 구조들을 스코어링하고 프루닝한 후에, 스텝(318)에서 프로세스할 더 이상의 세만틱 노드들이 없고, 도 3의 프로세스는 최고 스코어링 (highest-scoring) 구조가 커맨드 식별기(222)에 의해 검사되고 그것이 커맨드 구조인지를 판정하는 스텝(322)에 계속된다. 커맨드 구조는 스키마(200)에 "참 (True)"으로 세트된 "커맨드" 속성을 갖는 엔터티에 의해 시작된다. 최고 스코어링 세만틱 구조가 커맨드 구조이면, 상기 구조는 커맨드로서 텍스트에 의해 표현되는 스텝(324)에서 리턴된다.
스텝(322)에서 최고 스코어링 세만틱 구조가 커맨드 엔터티가 아니면, 커맨드 식별기(222)는 스텝(236)에서 상기 최고 스코어링 구조를 수용할 수 있는 커맨드들을 식별하기 위해 시도한다. 그 다음, 최고 스코어링 구조는 상기 커맨드 구조들 각각에 병합되고, 상기 커맨드 구조들은 스텝(328)에서 스코어링 된다. 그 다음, 최고 스코어링 커맨드 구조는 텍스트로 표현되는 커맨드로서 리턴된다.
본 발명이 특정 실시예들에의 참조로 기재되었지만, 그 기술에 숙련자들이라 면, 본 발명의 취지 및 범위에서 벗어나지 않고 형태 및 상세성에서 변경될 수 있음을 인식할 것이다. 특히, 스코어링 함수들은 본 발명의 범위 내에 수정되거나 조합될 수 있다.
입력 텍스트로부터 신텍틱 구조와 세만틱 구조를 분석해서 가능한 구조들을 스코어링한 확률을 기반으로 세만틱 구조를 식별하는 방법 및 장치가 개시된다.

Claims (31)

  1. 텍스트로부터 세만틱 구조(semantic structure)를 식별하는 방법에 있어서,
    세만틱 엔터티 식별기에 의해, 상기 텍스트의 제1 부분으로부터 2개의 세만틱 엔터티들을 식별하는 단계;
    프로세서에 의해, 세만틱 구조를 형성하기 위해, 상기 2개의 세만틱 엔터티들을 연결하는 모든 엔터티들을 열거하는 엔트리의 위치를 파악하기 위하여 상기 2개의 세만틱 엔터티들을 이용하여 테이블을 검색하는 단계;
    상기 프로세서에 의해, 후보 세만틱 구조를 형성하는 단계 - 상기 후보 세만틱 구조는, 상기 텍스트로부터 부모 세만틱 엔터티가 식별되지 않았고 상기 텍스트로부터 식별된 상기 2개의 세만틱 엔터티들은 상기 후보 세만틱 구조 내의 상기 부모 세만틱 엔터티의 자식 세만틱 엔터티들(child semantic entities)이 되는 상기 테이블의 상기 엔트리로부터 얻은 부모 세만틱 엔터티(parent semantic entity)를 포함함 - ;
    구조 스코어링 모듈에 의해, 상기 후보 세만틱 구조 내의 부모 세만틱 엔터티가 주어진 자식 세만틱 엔터티의 확률에 기초해서, 상기 후보 세만틱 구조에 대한 세만틱 스코어(semantic score)를 생성하는 단계;
    상기 구조 스코어링 모듈에 의해, 상기 부모 세만틱 엔터티가 상기 텍스트로부터 식별되지 않았기 때문에 상기 세만틱 스코어에 패널티 인자를 적용하는 단계;
    상기 구조 스코어링 모듈에 의해, 상기 후보 세만틱 구조에서 동일 레벨에 나타나는 각각의 세만틱 엔터티들의 쌍에 대한 개별 전이 확률(separate transition probability)을 생성함으로써 상기 후보 세만틱 구조에 대한 전이 스코어를 생성하는 단계 - 전이 확률을 생성하는 것은 상기 세만틱 엔터티들의 쌍이 트레이닝 데이터에서 동일 레벨에 특정한 순서로 나타나는 횟수의 카운트를 상기 세만틱 엔터티들의 쌍이 상기 트레이닝 데이터에서 동일 레벨에 나타나는 횟수의 카운트에 의해 나누는 것을 포함함 - ;
    상기 구조 스코어링 모듈에 의해, 상기 텍스트에서의 워드의 위치, 및 상기 워드로부터 형성된 세만틱 엔터티의 세만틱 구조에서의 위치에 부분적으로 기초해서 상기 후보 세만틱 구조에 대한 신텍틱 스코어 (syntactic score)를 생성하는 단계;
    상기 구조 스코어링 모듈에 의해, 상기 후보 세만틱 구조에 대한 조합된 스코어를 형성하기 위하여 상기 신텍틱 스코어, 상기 전이 스코어, 및 상기 세만틱 스코어를 조합하는 단계;
    상기 프로세서에 의해, 상기 조합된 스코어에 기초하여 상기 후보 세만틱 구조를 추후 고려 대상에서 프루닝(pruning)하지 않도록 결정하는 단계;
    상기 세만틱 엔터티 식별기에 의해, 상기 텍스트의 제2 부분으로부터 상기 부모 세만틱 엔터티를 식별하는 단계;
    상기 구조 스코어링 모듈에 의해, 상기 부모 세만틱 엔터티가 상기 텍스트로부터 식별되었기 때문에 상기 후보 세만틱 구조에 대한 상기 세만틱 스코어로부터 상기 패널티 인자를 제거하는 단계;
    상기 구조 스코어링 모듈에 의해, 상기 후보 세만틱 구조에 대한 새로운 조합된 스코어를 형성하기 위하여 상기 신텍틱 스코어, 상기 전이 스코어, 및 상기 세만틱 스코어를 상기 제거된 패널티 인자와 조합하는 단계; 및
    상기 프로세서에 의해, 상기 새로운 조합된 스코어에 기초하여 상기 후보 세만틱 구조를 추후 고려 대상에서 프루닝하지 않도록 결정하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서, 상기 신텍틱 스코어를 생성하는 단계는, 상기 후보 세만틱 구조의 세만틱 엔터티들 간의 각 부모-자식 관계에 대해, 부모 세만틱 엔터티와 연계된 워드의 토큰 위치(token position)를 식별하는 단계, 자식 세만틱 엔터티와 연계된 워드의 토큰 위치를 식별하는 단계, 및 상기 토큰 위치들에 기초해서 확률을 결정하는 단계를 포함하는 방법.
  3. 제1항에 있어서, 상기 세만틱 엔터티들을 식별하는 단계는 텍스트가 세만틱 엔터티들과 연계된 스키마를 사용하는 단계를 포함하는 방법.
  4. 제3항에 있어서, 상기 스키마에서 1 개 워드가 복수의 세만틱 엔터티들과 연계되는 방법.
  5. 제3항에 있어서, 세만틱 구조를 형성하기 위해 세만틱 엔터티들을 사용하는 단계는 스키마에 정의된 세만틱 엔터티들 간의 관계들에 기초해서 상기 세만틱 구조를 형성(basing)하는 단계를 포함하는 방법.
  6. 제5항에 있어서, 세만틱 엔터티들 간의 상기 관계들을 정의하는 상기 스키마와 텍스트와 세만틱 엔터티들을 연계하는 상기 스키마는 동일한 스키마인 방법.
  7. 제1항에 있어서, 확장 세만틱 구조를 형성하기 위해, 상기 후보 세만틱 구조와 상기 텍스트로부터 식별된 추가 세만틱 엔터티를 조합하는 단계를 더 포함하는 방법.
  8. 제7항에 있어서, 상기 확장 세만틱 구조에 대해 세만틱 스코어 및 신텍틱 스코어를 생성하는 단계를 더 포함하는 방법.
  9. 제7항에 있어서, 상기 후보 세만틱 구조와 추가 세만틱 엔터티를 조합하는 단계는,
    상기 추가 세만틱 엔터티가 상기 후보 세만틱 구조의 상기 엔터티들 중의 임의의 엔터티 아래 위치될 수 있는지를 판정하는 단계;
    상기 후보 세만틱 구조의 헤드 (head)가 상기 추가 세만틱 엔터티 아래에 위치될 수 있는지를 판정하는 단계; 및
    상기 추가 세만틱 엔터티와 상기 후보 세만틱 구조의 헤드 모두가 아래 위치될 수 있는 공통 조상 엔터티가 있는지를 판정하는 단계
    를 포함하는 순서화된 검색을 수행하는 단계를 포함하는 방법.
  10. 제1항에 있어서,
    상기 후보 세만틱 구조가 커맨드 (command) 세만틱 구조가 아닌 것으로 판정하는 단계;
    커맨드 세만틱 구조에 상기 후보 세만틱 구조를 위치시키는 단계; 및
    상기 텍스트의 상기 세만틱 구조로서 상기 커맨드 세만틱 구조를 식별하는 단계
    를 더 포함하는 방법.
  11. 제10항에 있어서, 복수의 커맨드 세만틱 구조들에 상기 후보 세만틱 구조를 위치시키는 단계를 더 포함하는 방법.
  12. 제11항에 있어서, 각 커맨드 세만틱 구조를 스코어링 (scoring)하는 단계, 및 최고 스코어링 (highest scoring) 커맨드 세만틱 구조를 상기 텍스트의 세만틱 구조로서 선택하는 단계를 더 포함하는 방법.
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
KR1020040064211A 2003-10-06 2004-08-16 텍스트로부터 세만틱 구조들을 식별하기 위한 방법 및장치 KR101120798B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/679,556 US7593845B2 (en) 2003-10-06 2003-10-06 Method and apparatus for identifying semantic structures from text
US10/679,556 2003-10-06

Publications (2)

Publication Number Publication Date
KR20050033420A KR20050033420A (ko) 2005-04-12
KR101120798B1 true KR101120798B1 (ko) 2012-03-26

Family

ID=34314088

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040064211A KR101120798B1 (ko) 2003-10-06 2004-08-16 텍스트로부터 세만틱 구조들을 식별하기 위한 방법 및장치

Country Status (7)

Country Link
US (1) US7593845B2 (ko)
EP (1) EP1522930B1 (ko)
JP (1) JP2005115922A (ko)
KR (1) KR101120798B1 (ko)
CN (1) CN1606004B (ko)
AT (1) ATE463013T1 (ko)
DE (1) DE602004026258D1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017094967A1 (ko) * 2015-12-03 2017-06-08 한국과학기술원 자연 언어 처리 스키마 및 그 지식 데이터베이스 구축 방법 및 시스템

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005118877A2 (en) 2004-06-02 2005-12-15 Vicus Bioscience, Llc Producing, cataloging and classifying sequence tags
PL1666074T3 (pl) 2004-11-26 2008-10-31 Baestarro Gmbh & Co Kg Lampa bakteriobójcza
US7669119B1 (en) * 2005-07-20 2010-02-23 Alexa Internet Correlation-based information extraction from markup language documents
US7328199B2 (en) * 2005-10-07 2008-02-05 Microsoft Corporation Componentized slot-filling architecture
US7822699B2 (en) * 2005-11-30 2010-10-26 Microsoft Corporation Adaptive semantic reasoning engine
US7606700B2 (en) * 2005-11-09 2009-10-20 Microsoft Corporation Adaptive task framework
US20070106496A1 (en) * 2005-11-09 2007-05-10 Microsoft Corporation Adaptive task framework
US20070130134A1 (en) * 2005-12-05 2007-06-07 Microsoft Corporation Natural-language enabling arbitrary web forms
US7831585B2 (en) * 2005-12-05 2010-11-09 Microsoft Corporation Employment of task framework for advertising
US7933914B2 (en) * 2005-12-05 2011-04-26 Microsoft Corporation Automatic task creation and execution using browser helper objects
US20070203869A1 (en) * 2006-02-28 2007-08-30 Microsoft Corporation Adaptive semantic platform architecture
US7996783B2 (en) * 2006-03-02 2011-08-09 Microsoft Corporation Widget searching utilizing task framework
US9984071B2 (en) * 2006-10-10 2018-05-29 Abbyy Production Llc Language ambiguity detection of text
RU2643438C2 (ru) * 2013-12-25 2018-02-01 Общество с ограниченной ответственностью "Аби Продакшн" Обнаружение языковой неоднозначности в тексте
JP4451435B2 (ja) 2006-12-06 2010-04-14 本田技研工業株式会社 言語理解装置、言語理解方法、及び、コンピュータプログラム
CN101226523B (zh) * 2007-01-17 2012-09-05 国际商业机器公司 数据概况分析方法和系统
US9053113B2 (en) 2007-03-28 2015-06-09 International Business Machines Corporation Autonomic generation of document structure in a content management system
CN101114282B (zh) * 2007-07-12 2010-05-26 华为技术有限公司 一种分词处理方法及设备
EP2183686A4 (en) * 2007-08-31 2018-03-28 Zhigu Holdings Limited Identification of semantic relationships within reported speech
US8316036B2 (en) 2007-08-31 2012-11-20 Microsoft Corporation Checkpointing iterators during search
US8346756B2 (en) * 2007-08-31 2013-01-01 Microsoft Corporation Calculating valence of expressions within documents for searching a document index
US8868562B2 (en) 2007-08-31 2014-10-21 Microsoft Corporation Identification of semantic relationships within reported speech
US8712758B2 (en) * 2007-08-31 2014-04-29 Microsoft Corporation Coreference resolution in an ambiguity-sensitive natural language processing system
US8209321B2 (en) 2007-08-31 2012-06-26 Microsoft Corporation Emphasizing search results according to conceptual meaning
US8229730B2 (en) 2007-08-31 2012-07-24 Microsoft Corporation Indexing role hierarchies for words in a search index
US8463593B2 (en) * 2007-08-31 2013-06-11 Microsoft Corporation Natural language hypernym weighting for word sense disambiguation
US8301437B2 (en) 2008-07-24 2012-10-30 Yahoo! Inc. Tokenization platform
WO2011158066A1 (en) * 2010-06-16 2011-12-22 Sony Ericsson Mobile Communications Ab User-based semantic metadata for text messages
US8959082B2 (en) 2011-10-31 2015-02-17 Elwha Llc Context-sensitive query enrichment
US9471606B1 (en) * 2012-06-25 2016-10-18 Google Inc. Obtaining information to provide to users
US9424249B1 (en) * 2012-09-18 2016-08-23 Amazon Technologies, Inc. Encoding text units
US10558926B2 (en) * 2014-11-20 2020-02-11 Academia Sinica Statistical pattern generation for information extraction
US10672390B2 (en) * 2014-12-22 2020-06-02 Rovi Guides, Inc. Systems and methods for improving speech recognition performance by generating combined interpretations
US10282411B2 (en) * 2016-03-31 2019-05-07 International Business Machines Corporation System, method, and recording medium for natural language learning
CN105957530B (zh) * 2016-04-28 2020-01-03 海信集团有限公司 一种语音控制方法、装置和终端设备
US10380247B2 (en) 2016-10-28 2019-08-13 Microsoft Technology Licensing, Llc Language-based acronym generation for strings
RU2679988C1 (ru) * 2017-12-11 2019-02-14 Общество с ограниченной ответственностью "Аби Продакшн" Извлечение информационных объектов с помощью комбинации классификаторов
CN110276080B (zh) * 2019-06-28 2023-10-17 第四范式(北京)技术有限公司 一种语义处理方法和系统
CN112825111A (zh) * 2019-11-20 2021-05-21 中央研究院 自然语言处理方法与其计算装置
US11797610B1 (en) * 2020-09-15 2023-10-24 Elemental Cognition Inc. Knowledge acquisition tool

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0387226A1 (en) * 1989-03-06 1990-09-12 International Business Machines Corporation Natural language analyzing apparatus and method
US20020169598A1 (en) 2001-05-10 2002-11-14 Wolfgang Minker Process for generating data for semantic speech analysis

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4635199A (en) * 1983-04-28 1987-01-06 Nec Corporation Pivot-type machine translating system comprising a pragmatic table for checking semantic structures, a pivot representation, and a result of translation
US5418717A (en) * 1990-08-27 1995-05-23 Su; Keh-Yih Multiple score language processing system
EP0481107B1 (en) * 1990-10-16 1995-09-06 International Business Machines Corporation A phonetic Hidden Markov Model speech synthesizer
US5748840A (en) * 1990-12-03 1998-05-05 Audio Navigation Systems, Inc. Methods and apparatus for improving the reliability of recognizing words in a large database when the words are spelled or spoken
DE69432575T2 (de) * 1993-01-28 2004-03-18 Kabushiki Kaisha Toshiba, Kawasaki Dokumentenerkennungssystem mit verbesserter Wirksamkeit der Dokumentenerkennung
US5414836A (en) * 1993-09-29 1995-05-09 International Business Machines Corporation Software testing system that employs a graphical interface to generate test cases configured as hybrid tree structures
US5873056A (en) * 1993-10-12 1999-02-16 The Syracuse University Natural language processing system for semantic vector representation which accounts for lexical ambiguity
JP3459712B2 (ja) * 1995-11-01 2003-10-27 キヤノン株式会社 音声認識方法及び装置及びコンピュータ制御装置
US5778341A (en) * 1996-01-26 1998-07-07 Lucent Technologies Inc. Method of speech recognition using decoded state sequences having constrained state likelihoods
US5781879A (en) * 1996-01-26 1998-07-14 Qpl Llc Semantic analysis and modification methodology
US5987414A (en) * 1996-10-31 1999-11-16 Nortel Networks Corporation Method and apparatus for selecting a vocabulary sub-set from a speech recognition dictionary for use in real time automated directory assistance
US6076051A (en) * 1997-03-07 2000-06-13 Microsoft Corporation Information retrieval utilizing semantic representation of text
US6112168A (en) * 1997-10-20 2000-08-29 Microsoft Corporation Automatically recognizing the discourse structure of a body of text
JP3004254B2 (ja) * 1998-06-12 2000-01-31 株式会社エイ・ティ・アール音声翻訳通信研究所 統計的シーケンスモデル生成装置、統計的言語モデル生成装置及び音声認識装置
US6233557B1 (en) * 1999-02-23 2001-05-15 Motorola, Inc. Method of selectively assigning a penalty to a probability associated with a voice recognition system
US6480819B1 (en) * 1999-02-25 2002-11-12 Matsushita Electric Industrial Co., Ltd. Automatic search of audio channels by matching viewer-spoken words against closed-caption/audio content for interactive television
US6714941B1 (en) * 2000-07-19 2004-03-30 University Of Southern California Learning data prototypes for information extraction
US7035802B1 (en) * 2000-07-31 2006-04-25 Matsushita Electric Industrial Co., Ltd. Recognition system using lexical trees
US7194454B2 (en) * 2001-03-12 2007-03-20 Lucent Technologies Method for organizing records of database search activity by topical relevance
US7117144B2 (en) * 2001-03-31 2006-10-03 Microsoft Corporation Spell checking for text input via reduced keypad keys
US7181465B2 (en) * 2001-10-29 2007-02-20 Gary Robin Maze System and method for the management of distributed personalized information
US7177799B2 (en) * 2002-01-14 2007-02-13 Microsoft Corporation Semantic analysis system for interpreting linguistic structures output by a natural language linguistic analysis system
US20040220892A1 (en) * 2003-04-29 2004-11-04 Ira Cohen Learning bayesian network classifiers using labeled and unlabeled data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0387226A1 (en) * 1989-03-06 1990-09-12 International Business Machines Corporation Natural language analyzing apparatus and method
US20020169598A1 (en) 2001-05-10 2002-11-14 Wolfgang Minker Process for generating data for semantic speech analysis

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017094967A1 (ko) * 2015-12-03 2017-06-08 한국과학기술원 자연 언어 처리 스키마 및 그 지식 데이터베이스 구축 방법 및 시스템

Also Published As

Publication number Publication date
US20050075859A1 (en) 2005-04-07
EP1522930B1 (en) 2010-03-31
EP1522930A3 (en) 2006-10-04
KR20050033420A (ko) 2005-04-12
CN1606004A (zh) 2005-04-13
DE602004026258D1 (de) 2010-05-12
ATE463013T1 (de) 2010-04-15
EP1522930A2 (en) 2005-04-13
JP2005115922A (ja) 2005-04-28
US7593845B2 (en) 2009-09-22
CN1606004B (zh) 2013-03-27

Similar Documents

Publication Publication Date Title
KR101120798B1 (ko) 텍스트로부터 세만틱 구조들을 식별하기 위한 방법 및장치
US10282468B2 (en) Document-based requirement identification and extraction
US7496621B2 (en) Method, program, and apparatus for natural language generation
EP1475778B1 (en) Rules-based grammar for slots and statistical model for preterminals in natural language understanding system
US7266491B2 (en) Statistically driven sentence realizing method and apparatus
US7970600B2 (en) Using a first natural language parser to train a second parser
US9460080B2 (en) Modifying a tokenizer based on pseudo data for natural language processing
US6233544B1 (en) Method and apparatus for language translation
US7113905B2 (en) Method and apparatus for determining unbounded dependencies during syntactic parsing
JP2005285129A (ja) 論理形式のための統計的言語モデル
JPH08147299A (ja) 自然言語処理方法及びシステム
US20080208566A1 (en) Automated word-form transformation and part of speech tag assignment
JP3781561B2 (ja) 自然言語解析装置、システム及び記録媒体
EP3598321A1 (en) Method for parsing natural language text with constituent construction links
CN111382571A (zh) 一种信息抽取方法、系统、服务器和存储介质
US20110112823A1 (en) Ellipsis and movable constituent handling via synthetic token insertion
CN113609838A (zh) 文档信息抽取及图谱化方法和系统
US10810368B2 (en) Method for parsing natural language text with constituent construction links
EP1465155B1 (en) Automatic resolution of segmentation ambiguities in grammar authoring
US20050267735A1 (en) Critiquing clitic pronoun ordering in french
US20230281392A1 (en) Computer-readable recording medium storing computer program, machine learning method, and natural language processing apparatus
CN113901800A (zh) 一种从中文文本中抽取场景图谱的方法及系统
KR20010037309A (ko) 형태소 접속 그래프를 사용한 형태소 및 구문 분석 방법
JP2009009583A (ja) 構文パースを用いてセグメント化されていないテキストをセグメント化する方法
Sinding Studien und Skizzen; für Klavier, op. 82.

Legal Events

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

Payment date: 20150121

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160119

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170119

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180118

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190116

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20200115

Year of fee payment: 9