JP2000311166A - 自然言語入力データからプロセッサ使用可能データを生成する装置及びその方法 - Google Patents

自然言語入力データからプロセッサ使用可能データを生成する装置及びその方法

Info

Publication number
JP2000311166A
JP2000311166A JP2000056397A JP2000056397A JP2000311166A JP 2000311166 A JP2000311166 A JP 2000311166A JP 2000056397 A JP2000056397 A JP 2000056397A JP 2000056397 A JP2000056397 A JP 2000056397A JP 2000311166 A JP2000311166 A JP 2000311166A
Authority
JP
Japan
Prior art keywords
data
unit
variable
category
variables
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
JP2000056397A
Other languages
English (en)
Inventor
David Elworthy
エルワーシー デビット
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Publication of JP2000311166A publication Critical patent/JP2000311166A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00—Handling natural language data
    • G06F40/20—Natural language analysis
    • G06F40/205—Parsing
    • G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00—Handling natural language data
    • G06F40/20—Natural language analysis
    • G06F40/279—Recognition of textual entities
    • G06F40/284—Lexical analysis, e.g. tokenisation or collocates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

(57)【要約】 (修正有) 【課題】 入力された自然言語から文章及び語義情報を
抽出するマルチレベル処理を使用する解析を提供する。 【解決手段】 入力データのユニットカテゴリデータは
ユニットカテゴリデータのパターンと比較される。パタ
ーンが一致する場合、グループカテゴリデータが出力さ
れる。ユニットグループかつあるいはグループは、カス
ケードの連続ステージで一緒にグループ化される。カス
ケードの各ステージで一致するものがある場合、入力デ
ータユニットに対応する変数が出力される。少なくとも
いくつかの変数は、解析処理の様々なステージによって
識別される入力データユニット間の修飾関係を識別する
ために他の変数によってインデックス化される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般的には、自然
言語形態の入力データの構成ユニットからプロセッサ使
用可能形式データを生成する方法及び装置に関するもの
である。特に、本発明は、自然言語入力及びプロセッサ
使用可能データ出力間のインタフェースに関するもので
ある。
【0002】
【従来の技術】コンピュータ及びデータ処理装置の進歩
につれて、これらの装置の操作はより複雑となり、ユー
ザによって要求される訓練を削減することによって直感
的に使用することができるより「ユーザフレンドリ」な
インタフェースを提供するためにユーザインタフェース
の簡略化が要求されている。
【0003】ユーザがコンピュータあるいはデータ処理
装置の操作の実行を行いたい場合は、ユーザによって指
示が入力されなければならない。指示あるいはデータの
入力方法として自然言語を使用することは、例えば、E
P−A−0118187に言及されている。
【0004】単純なキーワード入力の代わりに自然言語
が使用される場合、判定対象の入力された自然言語指示
の意味が必要である。自然言語入力の意味の説明は、解
析(parer)の使用が必要である。解析は、大まかに2
つの種類に分けることができる。ある理論的アプローチ
に基づく全言語解析を使用する解析は、1980年代で
使用されており、これは、これらのアプローチが、より
詳細な言語解析の抽出の報酬を与えていたからである。
しかしながら、このようなシステムには欠点があり、特
に、このような解析を設計し維持することは難しく、ま
た、大量のコンピュータリソースを必要とする。全言語
解析をしようする解析の例は、GB−A−226992
3及びEP−A−0737928に開示されている。
【0005】構築システムに関係する自然言語コミュニ
ティによって使用される別の解析の形態は、有限状態技
術及びその拡張を要する単純言語処理技術である。近年
では、有限状態技術は、自然言語処理コミュニティで自
身が再定義され、有限状態言語処理分野における近年リ
サーチでは、「有限状態遷移を有する決定性品詞のタグ
付け(Deterministic Part-of-Speech Tagging with Fi
nite-State Transducers)」(E. Roche及びY. Schabe
s;コンピュータ言語学 21(2)ページ227から
253)という名称の論文に記述されている。有限状態
技術の出現は、負荷の高い言語学アプローチの制限によ
って、また、かなり大量のフリーテキストを処理するた
めの要求によって、また、効果的な有限状態言語構成要
素をいかにして作成するかをより理解した結果によりも
たらされたものである。
【0006】有限状態解析は、「有限状態カスケードを
介する部分解析(Partial Parsingvia Finite-State Ca
scades)」(S. Abney;ESSLLI96年番耐性解析ワ
ークショップの手順)という名称の論文に記述されてい
る。有限状態解析技術が入力テキストの言語構造を効果
的に抽出し出力することができることがこの論文から認
められる。つまり、解析は統語構造を得ることができる
が、語義情報は得られない。
【0007】
【発明が解決しようとしている課題】本発明の1態様
は、インデックス化変数とするプロセッサ使用可能形態
のデータを出力するために、入力された自然言語から文
章及び語義情報を抽出するマルチレベル処理を使用する
解析を提供する。
【0008】
【課題を解決するための手段】本発明の目的の1つは、
自然言語入力とプロセッサ使用可能出力間のインタフェ
ースとして動作する方法及び装置を提供することであ
る。入力された自然言語は、複数の異なるカテゴリに分
類されたユニット形式である。各データユニットのカテ
ゴリは、ユニットカテゴリデータを生成するために判定
される。次に、ユニットカテゴリデータはパイプライン
あるいはカスケード化処理アレイに入力され、そこで、
入力データのユニットカテゴリデータはユニットカテゴ
リデータのパターンと比較される。パターンが一致する
場合、グループカテゴリデータが出力される。パイプラ
インあるいはカスケードの後続処理ステージは、前のい
ずれのステージでも一致していない入力されたユニット
カテゴリデータと、前のいずれのステージでも一致して
いない前のいずれかのステージで生成されるグループカ
テゴリデータを使用でき、ユニットかつ/あるいはグル
ープカテゴリデータの所定パターンをマッチングし、新
規グルーカテゴリデータを生成する。この方法では、ユ
ニットグループかつあるいはグループは、カスケードの
連続ステージで一緒にグループ化される。カスケードの
各ステージで一致するものがある場合、入力データユニ
ットに対応する変数が出力される。少なくともいくつか
の変数は、解析処理の様々なステージによって識別され
る入力データユニット間の修飾関係を識別するために他
の変数によってインデックス化される。
【0009】
【発明の実施の形態】本発明の上記構成に従えば、イン
デックス化変数を出力することによって、一致するもの
がある場合、入力自然言語の統語構造を判定できるばか
りでなく、入力言語ユニット、即ち、単語間の修飾関係
の形態の語義情報を判定することができる。インデック
ス化は、他の自然言語ユニットを修飾する自然言語ユニ
ットを識別するためのポインタとして動作する。
【0010】一実施形態では、マルチレベルパイプライ
ンあるいはカスケード化処理は有限状態装置を使用して
実行され、そこで、各ステージは、遷移セットである特
定文法規則を実行する有限状態装置を構成する。有限状
態装置は、自身を実行するために要求されるコンピュー
タリソースを削減するために決定性(deterministic)
であることが好ましい。しかしながら、非決定性有限状
態装置は、より大きな処理リソースを必要とするが、本
発明の範囲内で実行されても良い。
【0011】変数の種類は、所定パターンと一致するセ
グメントに対応する入力データのセグメントの少なくと
もheadユニットを識別し、そこで、セグメントのheadユ
ニットは、そのセグメント内の他のユニットを修飾せ
ず、修飾句はheadあるいは他の修飾句のいずれか一方を
修飾する。変数内で使用可能な語義情報のレベルが増加
するにつれて、異なる種類の変数(修飾句)は、ユニッ
ト間の異なる修飾関係を識別するために使用できる。ま
た、修飾句によって修飾されるユニットを識別するため
に、少なくともいくつかの変数がインデックス化され
る。各変数の内容は、データユニットの内容に対応し、
修飾されるデータの構成ユニットの内容による変数をイ
ンデックス化することによってインデックス化が達成さ
れる。
【0012】変数のインデックス化は、自然言語入力に
おける多義性(ambiguity)が生じない変数が生成され
るときの処理ステージで発生する。多義性が生じる場
合、自然言語文法規則は、その多義性を吸収するように
記述され、これは、処理中のより早い段階のステージで
生成される変数を使用してインデックス化されるインデ
ックス化変数を使用することになり、つまり、インデッ
クス化のない初期段階のステージで変数は生成され、以
降のステージでインデックス化される。
【0013】実施形態では、入力データは、自然言語の
単語を構成する。これは、語彙ユニットと対応品詞デー
タを有する辞書を参照する辞書プロセッサによって処理
される。辞書プロセッサからの出力は、対応品詞データ
と一緒に入力単語と一致する語彙ユニットである。品詞
データは、ユニットカテゴリデータとして直接使用する
ことができる。しかしながら、辞書プロセッサはコンテ
キスト解析を行わないので、割り当てられる品詞にエラ
ーが生じる場合がある。それゆえ、本実施形態では、辞
書プロセッサの出力は、より正しく語彙ユニットへ品詞
を割り当てるために統計コンテキスト解析を実行する品
詞タグ付け(tagger)部へ入力される。
【0014】本発明によって生成される出力データは、
システムの動作を制御するために使用することができ
る。入力データから生成される変数は、変数間の等価を
定義する関係に従って、入力データあるいは参照データ
のheadを示す変数から開始する参照データから生成され
る変数と比較される。次に、システムは、その比較結果
に従って制御される。このようなシステムには、例え
ば、入力データが自然言語クエリーを構成し、参照デー
タがデータベース内のデータに関連付けられた自然言語
キーを構成するデータベース検索システムが挙げられ
る。自然言語クエリーと自然言語キーが一致する場合、
このことがオペレータに提示され、データが検索され
る。
【0015】概要 図1は本発明の実施形態の概要図であり、入力信号プロ
セッサセクション、出力信号生成器セクション、制御装
置を有する。
【0016】入力信号プロセッサセクションは、入力バ
ッファ(1)に記憶されている自然言語の入力データを
受信する。この入力データは、プロセッサ使用可能形態
で入力信号プロセッサセクションの出力データを生成す
る有限状態解析(FSP)モジュール(2)を通過す
る。有限状態解析モジュール(2)は、辞書データベー
ス(3)の語彙データをアクセスし、入力データに対す
る結果として生じる語彙データを作業メモリ(4)に入
力する。また、自然言語入力データの役割、例えば、品
詞、を示す役割データが辞書データベース(3)から生
成される。有限状態解析モジュール(2)は、作業メモ
リ(4)に記憶される統語データを生成し、作業メモリ
(4)に記憶される変数データを生成するために、メモ
リ(6)内の有限状態解析データに従って動作する。
【0017】有限状態解析モジュール(2)は、メモリ
(6)に記憶される有限状態解析データを形成するため
に、文法規則記憶モジュール(5)から文法規則を読み
出す。つまり、有限状態解析モジュール(2)は、文法
規則記憶モジュール(5)内の文法規則に従って構成さ
れている。この構成による動作は、有限状態解析モジュ
ール(2)の構成の一部として実行される。
【0018】有限状態解析モジュール(2)によって入
力信号プロセッサセクションから出力されるデータは、
語彙データと統語データの語彙ユニット間の修飾関係を
示す変数データである。このデータは、出力信号生成器
内のデータマッチングモジュール(7)で受信される。
データマッチングモジュール(7)は、受信データと入
力/出力信号データベース(8)に記憶されたデータと
の間でマッチング動作を実行し、これについての詳細は
後述する。マッチングに依存して、制御装置部内の制御
モジュール(9)への出力信号が生成される。
【0019】ハードウェア 本実施形態では、入力信号プロセッサセクションは、適
切にプログラム化された多目的コンピュータを使用して
実行される。図2はこのようなハードウェアを示してい
る。
【0020】表示装置(10)は、自然言語の入力テキ
ストを表示するために提供される。コンピュータ内のプ
ロセッサ(11)は、2つの機能、即ち、語彙処理及び
有限状態解析を実行する。語彙処理は、辞書(12)を
参照して入力データに対し実行する。この処理は、作業
メモリとして動作するランダムアクセスメモリ(RA
M)(15)に記憶される語彙データを生成する。プロ
セッサ11によって動作する有限状態解析(FSP)
は、RAM(15)に記憶される統語データ及び変数デ
ータを生成するために作業領域内の電子データを解析す
る。ハードディスク(16)は、プロセッサ(11)で
動作する有限状態解析を構成するために使用される有限
状態解析データを記憶するために提供される。また、ハ
ードディスク(16)は、プロセッサ(11)内で語彙
処理及び有限状態解析を実行するために文法規則データ
とプログラムを記憶する。また、キーボード(14)
は、自然言語のデータの入力を可能にするために提供さ
れる。
【0021】また、出力信号生成器は、図2のコンピュ
ータ内で実行することができ、また、本実施形態では、
プロセッサ(11)は、制御信号を生成するためにデー
タベース内のデータと解析結果とをマッチングする追加
処理を実行する。
【0022】機能説明 図3は本発明の実施形態の機能構成を示す図である。
【0023】入力バッファ(20)は、自然言語のテキ
ストを受信する。これは、辞書(22)を参照する語彙
プロセッサ(21)に対する入力である。語彙プロセッ
サ(21)は、入力単語と辞書内の単語をマッチングす
る。本実施形態では、入力単語のすべての語形変化が辞
書に含まれており、これは、出力語彙データを取得する
ために辞書(22)内で入力単語を参照するために必要
である。辞書(22)からの出力は、単語自身と、単語
の役割、即ち、その単語の1つ以上の品詞である。語彙
データ(単語)は、語彙データ記憶部(31)に記憶さ
れる。語彙プロセッサ(21)から出力される各単語に
対する役割データは、1つ以上の品詞から構成される。
しかしながら、解析は、各単語の単一の品詞を必要と
し、品詞を処理する追加処理が必要である。また、語彙
プロセッサ(21)は、単語のコンテキストを考慮しな
いで各単語に対する品詞を取得するので、単語に対して
選択された品詞には補正が必要であるかもしれない。こ
の補正は、タグ付け器(tagger)(23)を使用して達
成される。タグ付け器(23)は周知であり、単語のコ
ンテキストと関係する単語に対して最も可能性のある品
詞を判定することを試行するために、自然言語に対する
品詞に統計コンテキスト解析を実行する。例えば、タグ
付け器の詳細は、「品詞タグ付けにおける自動エラー検
出(AutomaticError Detection in Part of Speech Tag
ging)」(1997年、編集人がDaniel Jones and Har
old Somersで、ロングマン社から出版されている文献、
ページ256からページ268にあるD. Elworthyによ
る論文「言語精度における新方法(New methods in Lan
guage Precision)」)及び「実用的な品詞タグ付け
器」(1992年、文献、ページ133から140にあ
るD. Cuttingらによる「適用自然言語処理における第3
会議の手順(The Proceedings of the Third Conferenc
e on Applied Natural Language Processing)」)で知
ることができる。このようなタグ付け器の動作は周知で
あり、当業者に理解されるので、タグ付け器が、エイリ
アスデータ(26)を参照するエイリアスプロセッサ
(25)に出力される品詞タグを生成するために、タグ
付けモデルデータ(24)を参照することは言うまでも
ない。エイリアスプロセッサ(25)は、品詞のグルー
プに対する属性ラベルとして使用することができるエイ
リアスタグを生成するために提供される。換言すれば、
タグは、品詞の集合を参照して生成される。これは、記
述されるべき文法規則のセットをよりコンパクトにする
ことを可能にし、以下に詳細されるエイリアスタグを利
用する。つまり、エイリアスプロセッサ(25)の出力
は、品詞タグとエイリアスタグである。次に、これら
は、ユニットカテゴリデータとして有限状態プロセッサ
の各ステージへ入力される。各ステージは、ステージへ
の入力とそのステージの文法規則間のマッチング処理を
実行するいくつかの有限状態装置を構成する。このユニ
ットカテゴリデータは、第1有限状態プロセッサステー
ジ(27)に入力される。第1有限状態プロセッサステ
ージ(27)は、入力ユニットカテゴリデータ(タグ)
のシーケンスと第1ステージに対する文法規則に従うユ
ニットカテゴリデータのパターンとをマッチングする。
一致するものがある場合、一致したユニットカテゴリデ
ータのシーケンスに対する出力グループカテゴリデータ
(タグ)が生成される。シーケンス内のユニットカテゴ
リデータ間のマッチングに対し、変数記憶(30)に変
数が記憶される。変数は、語彙データ、即ち、単語を保
持する。変数記憶(30)に記憶された変数の種類は、
入力自然言語テキスト内の単語間の修飾関係に依存す
る。変数は、FSPの各ステージに対し、かつそれらに
関係する各グループカテゴリに対し、局所的に記憶され
る。文法定義における規則が変数を提供する場合に限り
カスケードの連続ステージを変数は通過でき、詳細につ
いては後述する。一致しないユニットカテゴリデータ
は、一致したグループカテゴリデータと一緒に次のステ
ージに出力される。
【0024】有限状態解析の第2及び第3ステージ(2
8及び29)では、カテゴリデータが前のステージから
入力される。各ステージ内で各入力からの一致しないカ
テゴリデータがユニットかつ/あるいはグループカテゴ
リデータのシーケンスとマッチングされる。一致するも
のがある場合、カテゴリデータ内の一致に対する変数が
変数記憶(30)に記憶される。一致しないカテゴリデ
ータは、新規に一致したグループカテゴリデータと一緒
に出力される。
【0025】図3では、簡単化のために、3つのステー
ジだけで有限状態解析が示されている。本実施形態で
は、実際には、以下に詳述するように、より多くの数が
存在する。
【0026】有限状態解析の最終ステージが一度実行さ
れると、一致しないカテゴリデータ(タグ)と新規に一
致したグループカテゴリデータが、統語構造として出力
装置(32)によって出力される。また、変数は、語義
情報を提供するために出力装置(33)によって出力で
きる。
【0027】上述の説明から明らかなように、有限状態
解析は、コンピュータプログラム内の処理ステージのシ
ーケンスとして実行される。
【0028】解析処理 解析処理は、入力からどのようにして出力が得られるか
を定義する規則集合を構成する文法定義を使用する。本
実施形態では、解析に対する入力は、単一の品詞に付随
する各単語のシーケンスである。この解析は、単語及び
品詞を使用し、入力の部分から句を収集するための試行
を行う。句は、品詞に類似するラベルによって与えられ
る。上述の品詞はユニットカテゴリと称し、句に対する
ラベルはグループカテゴリと称する。
【0029】解析は、有限状態カスケードと呼ばれる方
法を使用する。文法定義は、ステージあるいはレベルと
呼ばれるセクションに分割され、そこで、1つ以上の規
則が実行される。各ステージ内では、入力中にカテゴリ
のパターンが存在する場合の解析を説明する1つ以上の
規則が存在し、これにより、特定カテゴリの語句を構成
することができる。語句のカテゴリは、規則の出力カテ
ゴリと呼ばれる。入力ユニットカテゴリ(品詞)は、第
1ステージへ入力され、そこで、規則が品詞の語彙部分
で完全に定義される。そのステージからの規則がすべて
試された場合、その結果はステージ2を通過する。ステ
ージ2の規則は、ステージ1で一致しない品詞の語彙部
分とステージからの出力とするカテゴリで定義される。
ステージの数は限定されず、同一カテゴリが1つ以上の
ステージでの出力カテゴリとして出現することができ
る。唯一の制限は、規則に対する入力が前のレベルとオ
リジナル入力とのみから引き出されることである。
【0030】1つ以上の規則をステージに対し与えるこ
とができるので、1つ以上の規則が入力とマッチングで
きる。規則は、文法定義内に出現するシーケンス内で適
用される。各ステージに対する入力は、いくつかのカテ
ゴリ(語彙あるいは語句)を構成する。各ステージで
は、マッチング処理は、規則に対しカテゴリのシーケン
スとマッチングすることを試行する。与えられた規則が
1つ以上のカテゴリのシーケンスと一致する場合、より
長いカテゴリのシーケンスがマッチング対象とされる。
次に、入力カテゴリのシーケンスは、出力において句カ
テゴリに置換される。句カテゴリを生成するために入力
カテゴリのシーケンスが一度マッチングされ、入力カテ
ゴリの左側にまだ入力が存在する場合、残りの入力に対
し、次に一致した句カテゴリとのマッチングを続ける。
入力カテゴリの一番左側から開始する規則に対し一致す
るものがない場合、一番左側のカテゴリはスキップさ
れ、かつマッチング処理が次の入力カテゴリに対し再度
試行される。このマッチング処理が失敗する場合、その
入力カテゴリはスキップされて、そのマッチング処理が
繰り返される。このマッチング処理が規則に対する全入
力を通して実行された後、そのステージで実行されるべ
き別の規則が存在する場合、この次の規則が、上述した
マッチングを実行するために使用される。
【0031】レベルに対する規則が一度実行されると、
そのレベルに対してスキップされた入力カテゴリと、そ
のレベルに対して生成された句あるいはカテゴリは、入
力として次のレベルを通過する。
【0032】つまり、「tall man with a dog」(Adj
(形容詞) N(名詞) Prep(前置詞) Det(冠詞)
Adj(形容詞) N(名詞))のステージへの入力か
ら、ステージはDet? Adj* N形式の名詞グループを認識
し、「tall man」がNGへ集約され、マッチング処理は
「with」に対し継続する。前置詞から始まる名詞グルー
プに対する規則が存在しないので、単語「with」はスキ
ップされ、「a big dog」はNGに集約される。次のレ
ベルでは、その入力として「NG prep NG」カテゴ
リを受信する。この例では、単語は、1つの単語、即
ち、「with」の後にスキップされる必要があると判定さ
れる。しかしながら、これは、マッチング対象がなく、
かつ単語がスキップされる必要があると識別される前に
いくつかの単語を取得することができる。例えば、入力
「tall man the red with a big dog」に対し、単語「r
ed」に続く名詞が存在しないのでNG規則が完了できな
いと判定される前に、「the red」は、Det?、Adjに対し
てマッチングされる。次に、単語「the」はスキップさ
れ、マッチング処理は単語「red」から再度開始でき
る。もう一度、マッチングが失敗すると、単語「red」
はスキップされる。これに続く、マッチングは失敗する
ので、単語「with」は上述の例のようにスキップされ
る。
【0033】このマッチング方法は、左方探索最長マッ
チング方法と称される。
【0034】上述したように、一致するものが存在する
場合に出力するグループ(句)カテゴリと、規則もま
た、変数として記憶されるべき入力の一部分を与える。
後述するように、変数は、入力の単語からあるいは前の
レベルで設定された変数の一方から設定される。変数
は、処理ステージに対し局所的に単語のリストを記憶す
る。変数は、次のステージの規則によってアクセスだけ
がなされる。
【0035】文法定義文法は、カテゴリに基づいて定義
される。本実施形態では、ユニットカテゴリは品詞、例
えば、名詞、動詞等を構成する。また、これらは、品詞
を使用するあるいは使用しない特定単語に対し使用する
ことができる。
【0036】本実施形態では、語彙は、以下の表1に示
されるBNCタグセットを使用する入力テキストに対す
る品詞を生成する。
【表1】言語部分に対するタグ タグ カテゴリ AJO 形容詞 例 good, old AJC 比較形容詞 例 better, older AJS 最上級形容詞 例 best, oldest ATO 冠詞 例 the, a, an, no AVO 副詞 例 often, well, longer, furthest AVP 接尾副詞 例 up, off, out AVQ wh-副詞 例 when, how, why CJC 等位接続詞 例 and or not CJS 副序数接続詞 例 although, when CJT "the day that follows Christmas"のような関係詞
節を導入する場合の副序数接続詞 CRD 基数詞 例 one, 3, fifty-five DPS 所有冠詞形態 例 your, their, his DTO DTQでない一般冠詞 例 this both in "this is m
y house" and "this is mine" DTQ wh-冠詞 例 which, what, whose EXO 実存there, 単語"there" appearing in the const
ructions "there is..." "there are..." ITJ 感嘆詞あるいは他の独立詞 例 oh, yes, mhm NNO 普通名詞、自然数 例 aircraft, data, committe
e NN1 単一普通名詞 例 pencil, goose, time, revelat
ion NN2 複数普通名詞 例 pencils, geese, times, revel
ations NPO 固有名詞 例 London, Michael, Mars, IBM ORD 序数 例 first, sixth, 77th, next, last PNI 不定代名詞 例 none, everything PNP 人称代名詞 例 I, you, them, ours PNQ wh-代名詞 例 who, whoever, whom PNX 再帰代名詞 例 myself, yourself, itself, ours
elves POS 所有あるいは属格マーカ 's or ' PRF 前置詞 of PRP 例 about, at, in, on behalf of, with以外の前
置詞 TOO 不定詞マーカ to UNC 例えば、他国言語、印刷符号、式等の英語語彙の構
成要素として適切に分類されない非分類構成要素 VBB 動詞の現在時制形態 is以外のbe, あるいは 'm, 'r
e, be (仮定法の動詞あるいは命令法の動詞), ai (ain'
tとする)である's am, VBD be動詞の過去時制形態 was, were VBG be動詞の-ing形態, being VBl be動詞の不定形態, be VBN be動詞の過去分詞形態 been VBZ be動詞の-s形態 's VDB do動詞の定形形態 do VDO do動詞の過去時制形態 did VDG do動詞の-ing形態 doing VDI do動詞のの不定形態 do VDN do動詞の過去分詞形態 done VDZ do動詞の-s形態 does VHB have動詞の定形形態 have, 've VHD have動詞の過去時制形態 had, 'd VHG have動詞の-ing形態 having VHI have動詞の不定形態 have VHN have動詞の過去分詞形態 had VHZ have動詞の-s形態 has, 's VMO 法助動詞 例 can, could, will, 'll, 'd, wo (w
on'tとする) VVB 語彙動詞の定形形態 例 forget, send, live, re
turn VVD 語彙動詞の過去時制形態 例 forgot, sent, live
d, returned VVG 語彙動詞の-ing形態 例 forgetting, sending, l
iving, returning VVI 語彙動詞の不定形態 例 forget, send, live, re
turn VVN 語彙動詞の過去分詞形態 例 forgotten, sent, l
ived, returned VVZ 語彙動詞の-s形態 例 forgets, sends, lives, r
eturns XXO 否定不変化詞 not あるいは n't 句読点に対して使用されるタグ タグ カテゴリ PUL 左括弧 (即ち. ( あるいは [) PUN 任意の分割マーク (即ち ! ; : ? ...) PUQ 注釈マーク (即ち ' ' " ") PUR 右括弧 (即ち ) あるいは ]) CMA カンマ また、BNCタグセットは、2つの可能な解析間で不明
確な状態にあるタグを含んでいる。これらは、以下の表
2に示される。
【表2】2つの可能な解析間で不明な状態で使用される
タグ タグ カテゴリ AJO-AVO 形容詞あるいは副詞 AJO-NN1 形容詞あるいは単一共通名詞 AJO-VVD 形容詞あるいは過去時制動詞 AJO-VVG 形容詞あるいは動詞の-ing形態 AJO-VVN 形容詞あるいは過去分詞 AVP-PRP 副詞不変化詞あるいは前置詞 AVQ-CJS wh-副詞あるいは副序数接続詞 CJS-PRP 副序数接続詞あるいは前置詞 CJT-DTO 接続詞あるいは冠詞とするthat CRD-PN1 数詞あるいは代名詞とするone NN1-NPO 単一共通名詞あるいは固有名詞 NN1-VVB 単一狭つ名詞あるいは基本動詞形態 NN1-VVG 単一共通名詞あるいは動詞の-ing形態 NN2-VVZ 複数名詞あるいは語彙動詞の-s形態 VVD-VVN 過去時制動詞あるいは過去分詞 次に、語彙プロセッサによって生成されるタグは、タグ
付けを実行するためにタグ付け器へ入力される。タグ付
けは、2つのタグを有する出力を参照し、例えば、本願
の発明者による「品詞タグ付けにおける自動エラー検出
(Automatic Error Detection in Part of Speech Tagg
ing)」(編集人がEds. David Jones and Harold Somer
sで、ロングマン社から出版されている文献ページ25
6からページ268にあるD Elworthyの言語処理の新方
法)という名称の論文に開示されているようなエラー検
出処理を使用し、これらを単一タグに置換する。また、
いくつかのタグは、識別、例えば、NN1及びNN2を
NNへ置換すること、を解析が行う必要がないより単純
なタグに置換する。タグ付けから得られるタグは、以下
の表3に示される。
【表3】タグ付けから得られるタグ タグ カテゴリ AJ-AV 形容詞あるいは副詞 AJ-DT 形容詞あるいは冠詞 AJ-NN 形容詞あるいは名詞 AJ-NN-VV 形容詞、名詞あるいは動詞 AJ-PR 形容詞あるいは前置詞 AJ-VV 形容詞あるいは語彙動詞 AV-CJ 副詞あるいは接続詞 AV-NN 副詞あるいは名詞 AV-PP 副詞あるいは前置詞 AV-VV 副詞あるいは動詞 NN 名詞 NN-VV 名詞あるいは動詞 上述したタグに加えて、アンカータグが解析対象のテキ
ストの最初と最後に付けるために使用することができ
る。表1から表3で与えられるタグは、ユニットカテゴ
リを構成する。
【0037】各文法規則、例えば、処理ステージの各出
力はグループカテゴリである。グループカテゴリに対す
るタグは、以下の表4に示される。
【表4】グループカテゴリに対するタグ タグ カテゴリ NP 名詞句 PP 前置詞句 DP 冠詞句 adjP 副詞句 NG 名詞グループ name 固有名 prepp 合成及び接頭詞句 vmod 変則動詞句 pmod プレファイナル修飾句 top トップレベル合成 sink モップアップ合成 つまり、文法規則は、タグのシーケンスの識別と新規タ
グをもたらす。いくつかのタグは、統語意味を有する一
方で、コンピュータで便利になるように提供される。
【0038】いくつかの文法規則に対し、いくつかのカ
テゴリは、同一の方法で処理される。つまり、文法規則
全体に対するすべてのカテゴリを把握しなければならな
いことを避けるために、エイリアスタグは、その文法規
則全体に対し使用される。エイリアスは、以下の表5に
よって与えられる文法規則で使用される。
【0039】
【表5】
【0040】つまり、文法規則においてタグATO及び
DTOが使用できる場合、タグ「det」は、例えば、自
身で使用される。
【0041】文法規則は、処理ステージの各ステージに
対する1つ以上の文法規則として記述される。各規則
は、左辺には自身の出力グループカテゴリとそれに続く
()で囲まれたその規則によって設定される変数リスト
を有している。右辺は、カテゴリのパターンである。同
じ出力グループカテゴリは1つ以上の規則で発生し得
る。
【0042】右辺のカテゴリのパターンは、認識される
カテゴリのシーケンスを判定する。このカテゴリのパタ
ーンは正規表現として記述され、パターン要素から構成
される。最も簡単なパターン要素は、カテゴリ、即ち、
ユニットカテゴリあるいはグループカテゴリである。パ
ターン要素は、演算子?、*、あるいは+によって変形
できる。
【0043】? 任意の要素であり、マッチング対象に
ふさわしい入力が1回あるいは全くない状態で発生する
ことができる要素であることを意味する * ゼロあるいは複数回発生することができる要素であ
ることを意味する + ゼロあるいは複数回発生することができる要素であ
ることを意味する 垂直バー、例えば、p│qで結合される2つの要素は、p
あるいはqのどちらか一方を意味する。全パターン要素
は、それらがどのようにしてグループ化されるかを単に
示すために使用されるかっこ内に含ませることができ
る。以下は全て有効パターン要素である。
【0044】 Det 冠詞 Det? 任意の冠詞 Det* 0 OR それ以上の冠詞 Det+ 1つ OR それ以上の冠詞 Det│NN 冠詞 OR 名詞 (Det*│NN)? 任意、0 OR それ以上の冠詞 OR
名詞 ((Det│NN)+ │NG) 1つ OR それ以上の冠詞 OR 名詞
群 (合成語を含む)、OR 単名詞グループいずれか一つ OR演算子は、順に並んだ単なる2つの要素より高い優
先度を有する。これは、例えば、「a│bc」という表現
が「cが続くa、あるいはcが続くb」として扱うことを意
味する。「a単独、あるいはcが続くb」としたい場合、
「a│(bc)」と記述しなければならない。
【0045】文法規則において、1つ以上のパターンを
規則に対し与えることができる。例えば、 NG (head,mod)=Det? Adj* NN* NN│GER となる。等価表現としては、 NG (head,mod)=Det? Adj* NN* NN NG (head,mod)=Det? Adj* NN* GER となる。
【0046】上記の規則は、要点を示すために示したも
のであり、実際に使用される規則ではない。
【0047】変数における要素のマッチング結果を参照
すると、これらの要素には、コロンと変数名が後続す
る。これをアクションと称する。変数は、単にパターン
要素、即ち、ユニットカテゴリに適用するだけである。
全規則を適用する場合、即ち、入力の要素シーケンスと
規則内の要素シーケンス間で一致するものがある場合、
変数が、自身の元の順で対応要素と一致するすべての単
語に設定される。例えば、 NG (head,mod) = Det? Adj:mod* NN:head これは、名詞グループNGを0以上の修飾形容詞と最終
名詞に続く任意の冠詞として定義している。副詞単語は
変数「mod」に変換され、名詞単語は変数「head」に変
換される。変数の種類は、修飾関係の種類を示してい
る。「head」変数は、単語が句内で別の単語に修飾して
いないことを示している。変数「mod」は、先頭単語の
修飾句であることを示している。
【0048】同一の変数は、文法規則の1つ以上の要素
で使用でき、例えば、 NG (head,mod) = Det? Adj:mod* NN:head これは、変数「mod」に記憶されるいくつかの単語が得
られる。この例では、句は、「the deep blue water」
である。この句の変数は、head=water, mod=deep,blue
である。
【0049】単語は、必要であれば、1つ以上の変数に
記憶できる。例えば、 NG (head,mod,adjMod,nounMod)=Det? Adj:(mod,adjMod)
* NN:(mod,nounMod)* NN:head つまり、形容詞単語は、2つの変数modとadjmodに記憶
され、最終名詞単語の前の各名詞単語もまた、2つの変
数modとnounmodに記憶される。
【0050】図3の機能図で示されるように、変数は、
処理ステージの各ステージで記憶される。メイン変数が
後続ステージで使用されるためには、メイン変数はその
ステージに渡されなければならない。これは、new-vari
able=old-variableという表記を使用して達成でき、こ
の表記のnew-variableは注目の規則(処理ステージ)に
属し、old-variableはその前の処理ステージに属する。
このやり方でコピーされない変数は破棄される。一例と
しては、 PP (head,pmod,prep)=Prep:prep NG:(pmod=mod,head=he
ad) である。
【0051】この規則は、前置詞句(PP)が名詞グル
ープが後続する前置詞からなることを示している。前置
詞単語は変数「prep」に記憶され、名詞グループの変数
「mod」値は変数「pmod」にコピーされ、名詞グループ
の「head」変数は前置詞句の「head」変数にコピーされ
る。名詞グループがそれ以外の変数を持つ場合、それら
は破棄される。
【0052】パターンに対するアクションにおいて符号
^を使用することによって、以前の処理ステージから現
在の処理ステージへすべての変数をコピーすることが可
能である。このようなアクションは、現在の規則におけ
る変数と同じ変数名を有するより下位のレベルでのすべ
ての変数をコピーする。つまり、この上記の規則は、以
下のように記述できる。
【0053】 PP (head,pmod,prep)=Prep:prep NG:(pmod=mod,^) 加えて、いくつかの種類の変数、例えば、head, mod, p
mod, prep, adjMod, nounModが存在し、これらの使用さ
れる変数はインデックス化される。インデックス化変数
は、インデックス値が単語である配列のように機能す
る。この規則では、インデックス化変数は、変数リスト
内で変数名に続いて[]で示される。この規則の本体で
は、var[index]=another-var形式の表現で使用できる。
インデックスは、より下位の処理ステージの句の変数名
である。それらが必要とされる例としては、名詞グルー
プといくつかの前置詞句修飾語を組み合わせて名詞句を
生成する以下の規則が挙げられる。
【0054】 NP (head,mod,pheads,pmods[],preps[])= NG:^ PP:(pheads=head,pmods[head]=pmod,preps[head]=prep)
* この規則は、いくつかの構成で示される。まず、名詞句
(NP)の「head」値と「mod」値は、^を使用する名詞
グループ(NG)からコピーされる。次に、「pmods」
と「prep」がインデックス変数として示される。これら
の両方は、前置詞句のhead値でインデックス化される。
これらは、PPの変数として「pmods」と「prep」から
自身の値を得る。そして、PPの「head」が「pheads」
にコピーされる。
【0055】上述の例では、インデックス化は、前の処
理ステージでの句に対して生成される変数を使用して実
行される。一方で、現在の処理ステージで生成される変
数を使用して変数をインデックス化することもできる。
var{index}=another-varは、変数varが現在の処理レベ
ルで生成される変数「index」によってインデックス化
されることを意味し、この変数は、前の処理ステージの
「another-var」と等しくなる。この特別なインデック
ス化の形態は、文法規則がどのようにして記述されるか
においてより柔軟性を持たせることができる。例えば、
前置詞句は、その前置詞でインデックス化でき、以下の
ように記述できる。
【0056】PP (head[],pmod[],prep)=Prep:prep NG(pmod{prep}=mod,head{prep}=head) また、以下の"=another-var"を持たないvar{index}の記
述によって、自身の変数上において同様の変数として振
る舞い、即ち、単語は「index」上でインデックス化さ
れたvarに割り当てられる。
【0057】以下の表6は、文法規則において使用でき
る様々な種類の変数を簡単に説明するものである。
【0058】
【表6】
【0059】 FSPのステージに対する文法 本実施形態のFSPのステージに対する文法規則は以下に与えられる。 ステージ1 このステージは決定詞句と他の「小」頭句とをマッチングする。 name(head,mod[]) = (NPO:head)+ (num:mod{head})? dp(det) = det (num:det)? dp(det) = ATO DTO dp(det) = PNI PRF dp(det) = DPS dp(det) = num:det (PRF det)? adjp(head,mod[]) = (advj:mod{head})*advj:head((cma│conj│(cma conj)) (advj:mod{head})*advj:head)+ adjp(head,mod[]) = (adv:mod{head})+ adj:head prepp(prep) = prep:prep (conj prep:prep)+ ステージ2 このステージは単純に名詞グループとマッチングする。 ng(head,vmod[], mod[],prep[]) = dp:(mod{head}=det)?(NN?VV:mod{head})? ((adv:mod{head}│adjN:mod{head}│ name:(mod{head}=head, mod=mod)│ adjp:(mod{head}=head,mod=mod)) (POS│ppart:mod{head})?)* (adjN:head│name:^│adjp:(head=head,mod=mod)│NN-VV:head) ng(head,vmod[],mod[],prep[] = PNI:head ステージ3 このステージは名詞グループと密接範囲「of」句とをマッチングする。 ng(head,vmod[],mod[], prep[]) = (ng:(mod{head}=head,mod=mod) PRF)+ ng:^ ステージ4 このステージは結合名詞グループとマッチングする。 ng(head,vmod[],mod[],prep[]) = ng:^ ((cma │ conj │ (cma conj)) dp:(mod{head}=det)? ng:^)+ ステージ5 このステージは後続修飾動詞句の第1ラウンドと名詞グループの補集合とをマ ッチングする。 vmod(head,mod[],prep[]) = adv? ger:head ng:(mod{head}=head,mod= mod)+ adv? vmod(head,mod[],prep[]) = rel VVZ:head ng:(mod{head}=head,mod=mod) vmod(head,mod[],prep[]) = VBG adv? ppart:head ng:(mod{head}=head,mod=mod) ステージ6 このステージは名詞グループから構成される前置詞句をマッチングする。 pp(mod[], prep) = ((adv? prep* prep:prep)│PRF:prep) ng: (mod{prep}=head, mod=mod)trail? ステージ7 このステージは動詞型後続修飾句をマッチングする。 vmod(head,mod[],prep[]) = adv? ger:head(prep │ prepp)? adv? vmod(head,mod[],prep[]) = adv? ger:head pp:(prep{head}=prep,mod=mod)+ adv? vmod(head,mod[],prep[]) = (rel VHZ VBN)? adv? ppart:head (prep │ prepp)? pp: (prep{head}=prep,mod= mod) vmod(head,mod[],prep[]) = rel VVZ:head pp: (prep{head}=prep,mod-mod) vmod(head,mod[],prep[]) = VBG adv? ppart:head (prep │ prepp)? pp:(prep{head}=prep,mod= mod) vmod(head,mod[],prep[]) = VV AVO? ステージ8 このステージは「pollen covered stamen」のような組み合わせを識別するた めに試行する名詞グループを形成する。 ng(head,vmod[],mod[],prep[]) = ng:(mod{head}=head,mod=mod,prep=prep) ppart:mod{head} ng:^ ng(head,vmod[],mod[],prep[]) = ng:^ vmod: (vmod{head}=head,mod=mod,prep=prep)+ ((cma│conj│(cma conj))vmod:(vmod{head}=head, mod=mod, prep=prep))* ステージ9 このステージは「a fire breathing dragon」のような修飾名詞グループをマ ッチングする。 ng(head,vmod[],mod[],prep[] = ng:^ (vmod:(vmod{head}=head,mod=mod,prep=prep) │pp:(prep{head}=prep,mod=mod))+ ng(head,vmod[],mod[],prep[] = ng:^ ng:(mod{head}=head,mod=mod,prep=prep) (vmod:(vmod{head)=head, mod=mod, prep=prep)│pp:(prep {head}=prep,mod=mod))+ ステージ10 このステージは単語の左をモップアップするために種々の句をマッチングする 。 sink = trail sink = PRP PNP? ステージ11 このステージはカンマあるいは接続詞によって導かれるある修飾句を検索する 。そうすることによって、前置詞句は最終前修飾詞(pmod)に確実に限定でき る。 pmod(mod[],prep) = (cma│conj│(cma conj))sink? pp:^ pp:(mod{prep}=prep, mod=mod)? ステージ12 このステージはトップレベル結合詞とマッチングする。 top(head,vmod[],mod[],prep[]) = ng:^sink? (((cma│conj│(dma conj))(ng:^│vmod: (vmod{head}=head, mod=mod, prep=prep)))│pmod: (prep{head}=prep, mod=mod)│pp: (prep{head}=prep,mod=mod))* sink? top(head,vmod[],mod[],prep[]) = ng:^ rel DTQ ng:^ be VVG:mod{head} top(head,vmod[],mod[],prep[]) = ng:^ sink ng:^ top(head,vmod[],mod[],prep[]) = ng:^ pp:(prep{head}=prep, mod=mod) ng:^ top(head,vmod[],mod[],prep[]) = pp:^ (pp:^ │ vmod: (vmod{head}=head, mod=mod,prep=prep) │pmod:(prep{head}=prep, mod=mod))* ステージ13 このステージは任意の開始及び任意のトークン(アンカー)及び句読点をモッ プアップする最終ステージである。 top(head,vmod[],mod[],prep[] = anchor top:^ PUN? anchor インデックス化変数の記憶方法 解析処理は入力自然言語の左から右へと処理を行うの
で、インデックス化変数は処理を進めることによって単
純に生成し記憶することができない。例えば、インデッ
クスとして使用されるhead単語は最終句まで現れず、こ
れに対し、head単語によってインデックス化されるべき
変数は、そのhead単語の前で判定される。即ち、そのhe
ad単語の左にある。つまり、変数のインデックス化は、
すべての変数が句に対し判定されるまで実行することが
できない。
【0060】インデックス化変数を生成するために実行
できる解析には2つの方法がある。 第1方法 図4は解析が2回実行される第1方法を示している。第
1解析処理(変数nが1に設定される場合)では、非イ
ンデックス化変数が生成される。次に、インデックス化
変数は、第2解析処理(変数nが2に設定される場合)
において非インデックス化変数を使用して生成される。
【0061】図4はJステージを有するFSPに対する
上記の処理を示すフロー図である。ステップS1で、デ
ータが自然言語、即ち、句あるいは文で入力される。次
に、ステップS2で、語彙プロセッサを使用して語彙ユ
ニットが識別され、ステップS3で、品詞が判定され
る。これらは、ステップS4でユニットカテゴリを形成
するために使用され、解析処理に入力される。ステップ
S5で、解析処理の初期化を行い、ここで、カウンタn
に1が設定される。nは解析が行われた実行回数を計数
するために使用される。ステップS6で、処理内で第1
ステージを選択するために処理ステージカウンタjに1
が設定される。
【0062】ステップS7で、ステージjでマッチング
を実行することによって有限状態マッチング処理が開始
する。n=1である場合には生成された非インデックス化
変数が記憶され、あるいはn=2である場合には生成され
たインデックス化変数が記憶される。また、ステップS
7で、ステージjで一致しない任意のカテゴリとステー
ジjで一致した任意のカテゴリが出力される。ステップ
S8で、有限状態解析のすべてのステージが実行された
かどうか、つまり、j=Jであるかどうかが判定され、
ここで、Jは有限状態解析のステージ数である。すべて
のステージが実行されていない場合、ステップS9で、
ステージカウンタjはインクリメントされ、ステップS
10で、次のステージに対する入力は前のステージの出
力となり、処理はステップS7に戻る。つまり、ステッ
プS7からステップS10は、有限状態解析が実現され
るまですべてのステージに対しJ回実行されるループを
構成する。
【0063】これらのステージのすべてが一度実行され
ると、即ち、j=Jとなると、ステップS11で、n=2
であるかどうか、即ち、解析処理が2回実行されたかど
うかが判定される。2回実行されていない場合、ステッ
プS12で、解析処理カウンタnはインクリメントさ
れ、処理はステップS6に戻る。つまり、本実施形態で
は、非インデックス化変数、例えば、headを生成するた
めに第1解析処理が実行され、解析処理はインデックス
化変数を生成するために繰り返される。
【0064】ステップS13で、2回の解析処理が一度
完了すると、ステージJで生成された変数がこれらの値
と統語データと一緒に出力される。
【0065】ステップS7で実行される処理の詳細は、
図5を参照してより詳細に説明される。この図におい
て、iはカテゴリi=1、…、Iのシーケンスを示し、カ
テゴリは語彙、即ち、ユニットカテゴリであり、かつそ
れらに関連する単語を有し、あるいは句、即ち、グルー
プカテゴリであり、かつそれらに関連する変数セットを
有る。カテゴリのシーケンスは、有限状態解析のステー
ジに対する入力を構成する。その出力は、語彙及び句カ
テゴリの新規シーケンスを構成する。有限状態解析のス
テージ内では、F、例えば、f=1、…、Fによってイン
デックス化されたF有限状態装置が存在する。
【0066】ステップS20で、シーケンスカウンタi
は1に設定される。ステップS21で、有限状態装置カ
ウンタfは1に設定される。ステップS24で、有限状
態装置fは、入力単語あるいは句iでの開始を試行す
る。有限状態装置が失敗する場合、即ち、カテゴリiで
開始する一致するものがない場合、ステップS22で、
有限状態装置はインクリメントされ、ステップS24
で、最終有限状態装置に到達したかどうかが判定され
る。到達していない場合、処理はステップS22に戻
り、再度試行する。最終有限状態装置が試行される場
合、ステップS25で、シーケンス内のカテゴリは、入
力が変わらずに出力される。ステップS26で、シーケ
ンスカウンタiはインクリメントされ、ステップS27
で、カテゴリのシーケンスの最後に到達したかどうかが
判定される。到達した場合、ステップS28で、ステー
ジjに対する処理が終了する。ステップS27で、シー
ケンス内のカテゴリの最後が処理されていない場合、処
理はステップS21に戻る。
【0067】ステップS22で、一致するものがあり、
有限状態装置が遷移を実行可能である場合、ステップS
29で、有限状態装置fに対する句カテゴリが出力さ
れ、n=1である場合、即ち、第1有限状態解析を行った
場合、非インデックス化変数が記憶され、n=2である場
合、即ち、第2有限状態解析を行った場合、インデック
ス化変数が記憶される。次に、ステップS30で、有限
状態装置fによって最後の1つが認識された後に、シー
ケンスカウンタiが入力要素に対しインクリメントある
いは更新される。次に、処理はステップS27へ進み、
そこで、シーケンスカウンタiがシーケンスの最後に到
達したかどうか、即ち、i=Iであるかどうかが判定され
る。最後に到達していない場合、処理はステップS31
に戻り、最後に到達している場合、ステップS28で、
ステージjに対する処理が終了したかどうかが判定され
る。
【0068】図5のステップS22で実行されるステッ
プの詳細は図6を参照して詳細に説明される。有限状態
装置fは状態及び遷移から成り立っている。有限状態装
置が現在使用する状態は追跡され、変数が句カテゴリと
一緒に出力される。有限状態装置fは、カテゴリiのシ
ーケンスを介してインクリメントすることによって動作
する。sは現在の状態である。
【0069】ステップS40で、sが開始状態に設定さ
れる。ステップS41で、要素iのカテゴリを使用して
状態sから新規状態tへの遷移があるかどうかが判定さ
れる。遷移がある場合、ステップS42で、n=1である
場合、遷移に対する非インデックス化変数が記憶され
る。n=2である場合、遷移に対するインデックス化変数
が記憶される。ステップS43で、状態sは新規状態t
へ設定され、シーケンスカウンタiはインクリメントさ
れる。ステップS44で、カテゴリのシーケンスの最後
に到達したかどうかが判定される。到達していない場
合、処理はステップS41に戻る。カテゴリのシーケン
スの最後に到達した場合、処理はステップS45に進
み、そこで、sが最終状態であるかどうかが判定され
る。最終状態でない場合、処理は、ステップS47で失
敗したことが示される。最終状態である場合、ステップ
S46で、処理が成功したことが判定される。
【0070】ステップS41で、要素iのカテゴリを使
用する現在の状態sから新規状態tへの遷移がない場
合、処理はステップS45に進み、そこで、sが最終状
態であるかどうかが判定される。最終状態である場合、
処理はステップS46で成功したことが示され、最終状
態でない場合、処理は、ステップS47で失敗したこと
が示される。 第2方法 図7は、2回解析処理に代えて、単一解析処理中に、変
数をその変数のインデックス化に対する命令と一緒に記
憶する第2方法のフロー図である。
【0071】ステップS50で、データが自然言語で入
力され、ステップS51で、語彙プロセッサは語彙ユニ
ットを識別する。ステップS52で、品詞が判定され、
ステップS53でユニットカテゴリが形成される。ステ
ップS54で、処理ステージカウンタjが1に設定さ
れ、第1ステージを開始する。ステップS55で、ステ
ージjでマッチングを実行することによって有限状態解
析処理が実現され、そのステージに対する変数を生成す
る命令を記憶する。また、ステージjで一致しないカテ
ゴリと、ステージjで一致したカテゴリとが出力され
る。ステップS56で、有限状態解析の最終ステージに
到達したかどうか、即ち、j=Jであるかどうかが判定
され、ここで、Jは有限状態解析におけるステージ数で
ある。最終ステージに到達していない場合、ステップS
57で、ステージカウンタjがインクリメントされ、ス
テップS58で、注目ステージjへの入力が、前のステ
ージj−1から出力されるカテゴリとして選択される。
次に、処理はステップS55に戻る。つまり、ステップ
S55からステップS58は、有限状態解析における各
ステージに対しJ回繰り返される。
【0072】有限状態解析の最終ステージが実行された
場合、即ち、ステップS56でj=Jである場合、ステ
ップS57で、ステージjで生成された変数を生成する
命令が統語データと一緒に出力される。
【0073】図7のステップS55で実行されるステッ
プの詳細は図8を参照して説明される。これは、1から
Iのカテゴリiのシーケンスの入力を有する単一有限状
態解析の動作を説明する。カテゴリは語彙、即ち、ユニ
ットカテゴリであり、それらに関連する単語を有し、あ
るいは句、即ち、グループカテゴリであり、それらに関
連する変数のセットを有する。出力は語彙及び句カテゴ
リの新規シーケンスである。このステージ内で、f=
1、…、Fでインデックス化されるF有限状態装置が存在
する。
【0074】ステップS60で、カテゴリシーケンスイ
ンデックスiが1に設定され、ステップS61で、有限
状態装置カウンタjが1に設定される。ステップS62
で、有限状態装置装置fが、入力単語あるいは句iでの
開始が試行される。試行が失敗した場合、即ち、一致す
るものがない場合、ステップS63で、有限状態装置カ
ウンタfがインクリメントされる。次に、ステップS6
4で、すべての有限状態装置が試行されたかどうか、即
ち、f=Fであるかどうかが判定される。試行されていな
い場合、処理はステップS62に戻る。すべての有限状
態装置が試行された場合、ステップS65で、シーケン
スカウンタiによってインデックス化されたカテゴリが
入力と変わらずに出力される。次に、ステップS66
で、シーケンスカウンタがインクリメントされ、ステッ
プS67で、すべてのカテゴリのシーケンスが処理され
たかどうか、即ち、i=Iであるかどうかが判定される。
処理された場合、ステップS68で、処理ステージjが
完了していることが判定される。すべてのカテゴリのシ
ーケンスが処理されていない場合、処理はステップS6
1に戻る。
【0075】ステップS62で、有限状態装置fが入力
単語あるいは句iでの開始が試行され、成功、即ち、一
致するものがある場合、ステップS69で、有限状態装
置fに対する句カテゴリが変数を設定する命令と一緒に
出力される。次に、ステップS70で、最後の1つが有
限状態装置fで認識された後、シーケンスカウンタiで
入力カテゴリが更新される。次に、ステップS67で、
シーケンス内の最終カテゴリに到達したかどうか、即
ち、i=Iであるかどうかが判定される。到達した場合、
ステップS68で、ステージjに対する処理が終了した
ことが判定判定される。到達していない場合、処理はス
テップS61に戻る。
【0076】図8のステップS62で実行されるステッ
プの詳細は、図9を参照して詳細に説明される。
【0077】有限状態装置は状態及び遷移を確立する。
有限状態装置の状態は、変数及び句カテゴリを設定する
出力命令と一緒に追跡される。sは現在の状態である。
【0078】ステップS80で、現在の状態sが開始状
態に設定される。ステップS81で、要素iのカテゴリ
を使用して状態sから新規状態tへの遷移があるかどう
かが判定される。遷移がある場合、ステップS82で、
遷移(どのような場合の)に対する命令が記憶される。
次に、ステップS83で、有限状態が新規状態tに更新
され、シーケンスカウンタがインクリメントされる。ス
テップS84で、シーケンスの最後に到達したかどう
か、即ち、i=Iであるかどうかが判定され、到達してい
ない場合、処理はステップS81に戻る。シーケンスの
最後に到達した場合、処理はステップS85に進み、そ
こで、有限状態装置が最終状態であるかどうかが判定さ
れる。最終状態である場合、処理はステップS86で成
功を示しして終了し、最終状態でない場合、処理はステ
ップS87で失敗を示して処理を終了する。
【0079】ステップS81で、要素iのカテゴリを使
用して状態sから新規状態tへの遷移がない場合、処理
はステップS85に進み、そこで、有限状態装置の最終
状態に到達したかどうかが判定される。最終状態に到達
した場合、処理はステップS86で成功を示して終了
し、最終状態に到達していない場合、処理はステップS
87で失敗を示して終了する。
【0080】変数のインデックス化に対する命令が実行
できる方法はいくつか存在する。図10A及び図10B
は一つの方法である。
【0081】図10Aでは、非インデックス変数に対す
る命令が、まず、ステップS140で実行され、続い
て、ステップS141でインデックス化変数に対する命
令が実行される。
【0082】図10Bでは、ステップS160で、第1
命令が選択され、ステップS161で、これが判定され
る。ステップS162でこの命令が実行されたかどう
か、即ち、変数のインデックス化が使用可能であるかど
うかが判定される。実行されない場合、ステップS16
4で、次の命令が選択され、処理はステップS161に
戻る。命令が実行できる場合、ステップS163で、そ
の命令が実行され、ステップS165で、実行対象の命
令が存在するかどうかが判定される。存在する場合、処
理はステップS164に戻る。存在しない場合、処理は
ステップS166で終了する。 解析された句の例 解析によって生成された変数及び統語データの例を、英
語の「big red car inthe street」の入力句例を参照し
て説明する。 統語構造 テキスト big red car in street 品詞に 対するタグ AJO AJO NN1 PRP NN1 タグ付け後の タグ AJO AJO NN RPR NN エイリアスタグ advj advj adjN prep adjN ステップ1 [big red]adjP (ステージ1) ステップ2 (ステージ2) [[big red]adjP car]NG [street]NG ステップ3 (ステージ6) [in [street]NG]PP ステップ4 (ステージ12) [[[big red]adjP car]NG [in [str
eet]NG]PP]TOP 上記及び図11はグループカテゴリを形成するためにユ
ニットカテゴリと一緒にグループ化される統語構造を示
している。解析のステージ1で実行されるステップ1の
ように、形容詞「big」及び「red」は形容詞句(adjp)
を構成するものとして識別される。解析のステージ2で
実行される解析処理のステップ2では、形容詞句「big
red」及び名詞「car」が名詞グループとして認識され、
つまり、グループカテゴリ名詞グループ(NG)が生成さ
れる。また、単語「street」が名詞グループ(NG)と
して認識される。解析のステージ6で実行されるステッ
プ3では、前置詞「in」及び名詞グループ「street」が
前置詞句(PP)を形成するものとして認識される。解析
のステージ12で実行される処理のステップ4では、名
詞グループ(NG)及び前置詞句(PP)がトップレベルグ
ループ(TOP)を形成するものとして認識される。
【0083】以下に与えられる表7及び表8は、本例に
対し各ステージで変数がどのように判定されたかを示し
ている。
【0084】
【表7】
【0085】
【表8】
【0086】形容詞句「big red」における第1ステー
ジでは、変数head=red及びmod[red]=bigが識別される。
【0087】名詞グループにおける第2ステージでは、
変数head=car、mod[car]=red及びmod[red]=bigが識別さ
れ、名詞グループ「street」では、変数head=streetが
識別される。
【0088】第3処理ステップでは、head=car、mod[ca
r]=red及びmod[red]=bigとして識別される名詞グループ
「big red car」に対する変数が記憶され、前置詞句「i
n street」に対し、変数prep=in及びmod[in]=streetが
生成される。
【0089】完全な句に対する最終処理ステップでは、
変数head=car、mod[car]=red、mod[red]=big、prep[ca
r]=及びmod[in]=streetが記憶される。
【0090】各ステージでかつ局所的な各句カテゴリに
対し変数は局所的に記憶される。処理における以後のス
テージによって使用されない変数は無視される、例え
ば、上述のステップ1のhead=red及びステップ3のhead
=streetが無視される(変数は以後のステージで使用さ
れないがその値がコピーされる、即ち、変数mod[car]に
値redが与えられ、変数mod[in]に値streetが与えられ
る)。
【0091】上記で与えられた変数は、入力データの修
飾関係を定義することを明確に示すことができる。変数
が、他の単語を修飾する単語を定義するばかりでなく、
修飾関係の種類も定義することを示すことができる。修
飾関係の種類は、変数の種類によって定義される。これ
は図12で示される。この図は、変数が句内の単語間の
関係を定義していることを示している。 多義性を有する解析句の例 インデックス化変数の使用は、意味に多義性がある入力
句を扱うことができる。例えば、句「man with a dog h
olding a big stick」では、manがbig stickをholding
するのか、あるいはdogがa big stickをholdingするの
かのように多義性が存在する。
【0092】入力データ内で2つに分割される句のイン
デックス化が必要な変数が、変数を生成する処理ステー
ジの初期にはインデックス化されず、その処理ステージ
内で後でインデックス化されるように文法規則を記述す
ることによって、多義性は解析処理で扱うことができ
る。
【0093】上述の入力データを解析するために使用で
きる文法規則は以下のように与えられる。 ステップ1 PP (prep,pmod)=Prep:prep Det? NN:pmod ステップ2 RC (rhead, obj, mod[])=Ger:rhead Det? adj:mod{obj}NN:obj ステップ3 NP (head,prep[], pmod[], mod[], obj[], X)= Det? NN:head PP:(prep{head}=prep, pmod[prep]=pmod, X=pmod RC: (mod{head}=rhead, obj[rhead]=obj, mod=mod, mod{ X}=rhead) これらの文法規則は、統語構造を得る解析を実行するた
めに使用することができる。 man with a dog holding a big stick タグ NN prep det NN Ger det advj NN ステップ1 [with a dog]PP ステップ2 [holding a big stick]RC ステップ3 [man[with a dog]PP [holding a big
stick]RC]NP また、この統語構造は図13に示される。ステップ1
で、前置詞句「with a dog」は、まず、グループカテゴ
リPPを生成するために識別される。次のステップでは、
関係詞節「holding a big stick」が、グループカテゴ
リRCを生成するために識別される。最終ステップでは、
前置詞句PP、関係詞節及び入力データの名詞が名詞句と
して識別され、そして、グループカテゴリNPが生成さ
れる。
【0094】以下の表9は、この例に対し変数がどのよ
うに判定されるかを示している。
【0095】
【表9】
【0096】この例では、第1ステップで、変数prep及
びpmodがインデックス化されないことが知ることができ
る。最終ステージでのこれらの変数のインデックス化
は、ステップ1で生成された変数を参照することによっ
て実行される。変数pmod[prep]=pmodは、変数内容dogと
インデックス化されたwithとのインデックス化を実行す
るために使用される。また、変数_X=pmodを使用するこ
とによって、単語dogは、PP句で使用される変数からRC
句で使用される変数へと渡すことができ、そうすること
によって、変数mod{ X}=rheadは変数mod[dog]=holding
を得る。
【0097】図14は表9の変数によって与えられる修
飾関係を示している。これで示されるように、manがbig
stickをholdingしているかあるいはdogがbig stickをh
oldingしているかどうかに関して多義性が存在する。こ
れは、関係するhead「holding」で2つの修飾関係を与
えるhead「man」から2つの修飾関係を提供することに
よって扱える。
【0098】複雑な修飾関係を識別するためにインデッ
クス化変数を使用して、複雑な語義情報を取得できるこ
とがこれから示される。 マッチング処理 コンピュータ使用可能形式のデータから構成される解析
処理の出力は、装置を制御する出力信号を生成するため
に使用することができる。図1で示したように、出力信
号生成器は入力/出力信号に基づくデータベースを含ん
でいる。このデータベースは、入力データとマッチング
されるデータのパターンから構成されるデータセットを
含み、マッチング対象がある場合に出力信号が得られ
る。例えば、データベースは句「switch on the ligh
t」を含むことができ、制御モジュールは、lightユニッ
トを構成できる。つまり、入力句がその意味と一致する
場合、生成される出力信号は所望の結果を生じさせる。
つまり、データベースは解析が必要である参照データを
記憶するか、あるいは変数の形式で解析されたデータを
記憶するかのどちらか一方が可能であり、そうすること
によって、このデータベースは解析から出力されるデー
タと直接比較することができる。
【0099】マッチング技術の原理は、本願の出願人が
先に出願している出願番号GB 9821969.4の
出願に説明されており、この内容は、参照することによ
って本明細書に組み込まれる。
【0100】上述した解析方法では、ユニットデータは
単語で構成するが、この技術は単語の使用だけに限定さ
れない。語彙ユニット、あるいはより耐性のあるマッチ
ング技術を提供する単語あるいは単語のグループの意味
表現のような任意の種類のユニットが使用できる。
【0101】図15はマッチングプロセスのフロー図で
ある。ステップS180で、入力データ(クエリー)の
head及び参照データ(キー)が選択され、マッチングに
対するスコアが0に設定される。ステップS181で、
クエリー内のheadがキー内のheadと一致するかどうかが
判定される。一致しない場合、ステップS182で、ク
エリー内のheadがキー内の修飾句と一致するかどうかが
判定される。一致しない場合、マッチング処理は失敗
し、ステップS183で出力と一緒にマッチング処理を
終了する。累積スコアを、クエリーに対して可能な最高
スコアによって除した値がスコアとして出力される。ス
テップS181で、headが一致すると判定される場合、
ステップS185で、スコアは1増加し、ステップS1
86で、クエリー内の修飾句とキー内の修飾句が一致す
るかどうかが判定される。ステップS182で、クエリ
ー内のheadとキー内のheadが同じであると判定される場
合、ステップS184で、スコアは0.3増加し、処理
はステップS186に進む。ステップS186で、修飾
句が一致すると判定される場合、ステップS187で、
スコアは0.5増加し、処理はステップS186へ戻
る。ステップS186で修飾句が一致しないと判定され
る場合、ステップS188で、クエリー内の変数vmodと
キーが一致するかどうかが判定される。一致する場合、
ステップS189で、スコアは0.5増加し、処理はス
テップS186に戻る。ステップS188で、vmod変数
が一致しないと判定される場合、ステップS190で、
キー内のvmodと一致しないクエリー内の変数vmodが存在
するかどうかが判定される。存在する場合、ステップS
189で、クエリー内のvmodはスキップされ、ステップ
S200で、スコアは1増加する。次に、処理はステッ
プS186に戻る。ステップS190で、スキップ対象
のvmod変数が存在しない場合、ステップS192で、キ
ー内のprep変数と一致しないクエリー内のprep変数が存
在するかどうかが判定され、存在する場合、ステップS
193で、prep変数はスキップされ、ステップS200
で、スコアは1増加する。次に、処理はステップS18
6に戻る。ステップS192で、スキップできるクエリ
ー内のprep変数が存在しないと判定される場合、ステッ
プS194で、クエリー内のvmod変数に対応しないキー
内のvmod変数が存在するかどうかが判定される。存在す
る場合、ステップS195で、vmod変数がキー内でスキ
ップされ、ステップS200で、スコアは1増加する。
次に、処理はステップS186に戻る。ステップS19
4で、スキップ対象のキー内のvmod変数が存在しないと
判定される場合、スキップ196で、スキップできるキ
ー内のprep変数が存在するかどうかが判定される。存在
する場合、ステップS197で、キー内のprep変数がス
キップされ、ステップS200で、スコアが1増加す
る。次に、処理はステップS186に戻る。ステップS
196で、キー内でスキップできるprep変数が存在しな
いと判定される場合、ステップS198で、キー内のmo
d変数に対応しないクエリー内のmod変数が存在するかど
うかが判定される。存在する場合、ステップS199
で、スコアは増加せず、処理はステップS181に戻
る。残っている修飾句が存在しない場合、ステップS1
98で、新規headを検出するためにステップS181に
戻る。
【0102】マッチング処理の例を説明する。
【0103】クエリーが「big green car」である場
合、変数は、head=car、mod[car]=green及びmod[green]
=bigである。キーが「big car」である場合、変数は、h
ead=car、及びmod[car]==bigである。
【0104】ステップS181の結果は、head「car」
が一致し、そして、スコアが1増加することである。ク
エリー内の「green」と一致するキー内の修飾句は存在
せず、そして、ステップS198で、スコアは増加しな
い。次に、ステップS186で、修飾句「big」がキー
内のクエリー内で一致することが判定され、そして、ス
コアは0.5増加する。つまり、総スコアは1.5とな
る。次に、これは、一致に対して可能な総スコア2.5
によって除算されて60%の一致度を与える。
【0105】つまり、スコアに対する閾値は、その閾値
が満足された場合に、出力におけるマッチングが十分な
結果となるように設定できる。
【0106】マッチング処理は多くのアプリケーション
に対し使用できる。アプリケーションに対する1つの特
定の使用例は、データベースからのデータ検索、例え
ば、自然言語キャプションを有する画像のデータ検索が
ある。キャプションはキーを形成し、入力データはクエ
リーを構成する。結果として得られる出力データは、ク
エリーとキーに対し最高の1または複数の一致結果を構
成する。つまり、図1の制御モジュールは最高一致結果
を表示するためにコンピュータ上にディスプレイを構成
し、例えば、画像に対し、ディスプレイはいくつかの表
示画像を構成できる。 有限状態装置とする文法規則の実行 図16は有限状態解析を設計する方法のフロー図であ
る。文法は展開され、そして、文法規則は展開により正
規表現として記述される。ステップS111で、例え
ば、キーボードあるいは記憶されたファイルから正規表
現が入力される。次に、ステップS112で、正規表現
は非決定性有限状態装置へコンパイルされる。これは、
以下により詳細に説明される。非決定性有限状態装置は
使用できるが、以下のパターン例で問題が発生し得る。 X:a* X:b (X:c)* 非決定性有限状態装置は、様々な方法でX群の解析を得
ることができる。つまり、「XXX」は、初めの2つの
X群がaに3番目がbに置換される、あるいはa内の1
つ、b内の1つ、c内の1つ、などと解析することができ
る。
【0107】上記の問題を回避するため、また、より高
速に実行するために、ステップS113で、有限状態装
置が決定される。これは、以下により詳細に説明され
る。
【0108】ステップS114で、変数設定、即ち、遷
移が判定され、ステップS115で、決定性有限状態装
置及び変数設定が出力される。これは、図1のメモリ
(6)に記憶された有限状態解析データを構成する。 非決定性有限状態装置に対する正規表現のコンパイル 図17Aから図17Eはコンパイルアルゴリズムを示し
ている。これらの図において、100は開始状態を含む
状態を構成し、110は最終状態である。遷移は、状態
間で発生する。この遷移は入力からの要素マッチングp
を使うことができ、全パターンがマッチングされる場合
に生じるアクションaをもたらす。アクションはケース
∈が状態間の空遷移を示す場合には省略されても良い。
これらの遷移は、入力を使うことなくあるいはアクショ
ンを生じることなく続けることができる。
【0109】用語「N(r)」は正規表現rをコンパイルし
て得られる有限状態装置を示すために使用される。新規
の遷移及び状態が追加て、ボックスは、前のコンパイル
ステージの結果を示すために開始及び終了状態と一緒に
使用される。基本要素(カテゴリ、単語あるいはカテゴ
リ/単語)に対し、アクションaを有するpは任意であ
り、有限状態装置遷移N(p:a)は図17Aに示される。
【0110】rが要素である場合、N(r?)に対する有限
状態装置は図17Bを使用してN(r)から構築される。
【0111】rが要素である場合、有限状態装置N(r*)
は図17Cを使用してN(r)から構築される。
【0112】rが要素である場合、有限状態装置N(r+)
は図17Dを使用してN(r)から構築される。
【0113】r及びsが要素である場合、N(r|s)は図1
7Eを使用してN(r)及びN(s)から構築される。
【0114】rが要素である場合、(r)に対する有限状
態装置はrに対するものと同じである。
【0115】全パターンに対する有限状態装置を作成す
るために、状態が別々にコンパイルされ、次に、各要素
の終了状態は、次のものの開始状態にするために作成さ
れる。
【0116】この処理結果は、非決定性有限状態装置で
ある。 有限状態装置の決定 非決定性有限状態から決定性装置への変換する実行する
アルゴリズムは、Aho、Sethi、Ullmanによる「コンパイ
ラ:原理、技術及びツール」(1986年、Addison-We
sley社のページ118−119)という名称の文献に開
示されるアルゴリズムを多少変形したものである。
【0117】このアルゴリズムは、以下に示すように簡
潔である。
【0118】まず、補助関数、∈−触集合が必要であ
る。 ∈−触集合 Input: a set of states T Output: a set of states U containing all states in T and all states wh ich can be reached from them by empty transitions method: push all states in T onto stack initialise U to T while stack is not empty { pop a state t from stack for each ∈-transition from t to a stage u { if u is not in U then { add u to U push u onto stack } } } メイン決定性アルゴリズムに対し、全FSMに対するす
べての開始状態を有するものと仮定し、これをsoと呼
ぶ。変数状態は、状態セットのリストを保持するために
使用され、処理されたことを示すためにマーキングされ
ても良い。各状態セットは、決定されたFSMで単一の
状態を形成する。与えられた状態Sのセットに対し、入
力符号がpである場合に、TはSのいくつかの状態から得
られる状態セットであることを示すペア<p,T>を取
得できる。tran(S,p)が入力p上の状態sから得られる状
態セットのセットであるように、配列tranを生成するこ
とが目的である。注意したいのは、この(即ち、オリジ
ナル装置の状態セット)各々の数は新規装置の単一の状
態になることである。 initialise states to ∈-closure(So)(unmarked) while there is an unmarked state-set S in states{ mark S for each <p,T> which can be reach from S{ let the set of states U =∈-closure(T) if U is not in states then { add U to states (unmarked) } tran(S,p):=U } } 結果として得られる装置では、新規状態を構成するオリ
ジナル状態のいずれかが最終としてマーキングされる場
合、新規状態は最終としてマーキングされ、開始状態に
対しても同様である。
【0119】次に、更なる決定性処理が、変数に関連す
る多義性を解決するために適用される。このアルゴリズ
ムは、E. Roche and Y. Schabesによる「有効性状態遷
移を有する品詞の決定性タグ付け」(1995年、コン
ピュータ言語の21(2)のページ227−253)と
いう名称の論文から直接得られる以下の詳細で与えられ
る。
【0120】アルゴリズムは、以下に詳細に示される。
【0121】以下のように、w1、w2∈Σ*に対し、w1∧w
2は、w1及びw2の最長共通接頭辞を示している。
【0122】使用される有限状態遷移は、それらが決定
的になるという属性を有し、つまり、同じ機能を示す後
続の遷移が存在する。T=(Σ,Q,i,F,E)がそのような有
限状態遷移である場合、以下のように定義される後続遷
移T'=(Σ,Q',i',F',◎,*,ρ)はTと等しく、尚、◎
は、テンソル積を示す。
【0123】Tは、Q'⊂2Q×Σ*である。事実、遷移の
決定論化は、累乗セット構成を含むという意味ではFS
Aの決定論化に関連する。この差分は、システムに起こ
り得るオリジナル遷移の状態のセットはエミションが遅
延された単語と同様に記憶されていということである。
例えば、状態{(q1,w1),(q1,w1)}は、この状態が
オリジナル遷移のq1,q2を導く経路に対応することを示
し、また、w1のエミッシン(resp.w2)がq1に対し遅延
されていることを示している。
【0124】i'={(i,∈)}である。初期状態で遅延
されたエミッションは存在しない。エミッション関数
は、以下のように定義され、 これは、与えられた符号に対し、可能なエミッションの
セットが、現在の状態でのエミッションと遅延されたエ
ミッションを連結することによって取得されることを意
味する。遷移が決定的であることを要求されるので、実
際のエミッションは、このセットの最長共通接頭辞とな
る。状態遷移関数は、以下のように定義され、 与えられたu、v∈dΣ*に対して、u.vは、u及びvの連
結を示し、wがu.w=vである場合、u-1v=wであり、その
ようなwが存在しない場合、u-1v=0である。
【0125】F'={S∈Q'|∃(q,u)∈S and q∈F} S∈F'である場合、p(S)=u s.t. ∃q ∈ F, (q,u)
∈S. 以下に与えられる決定性アルゴリズムは上述の後続遷移
を計算する。
【0126】 アルゴリズムを適用する方法は、図14の有限状態遷移
例を参照して説明する。
【0127】決定性アルゴリズムは、図18の有限状態
遷移に適用され、図19の後続遷移を構築する。そのア
ルゴリズムのライン1は第1状態を構築し、ペア{(0,
∈)}を有する第1状態を例示する。q及びnはそれぞ
れ、現在の状態及びこれまでに構築されている状態の数
を示している。ライン5で、可能な入力符号wを取得
し、この例では、aだけが可能である。ライン6のw'は
出力符号であり、 つまり、w'=δ(0,a,1)∧δ(0,a,2)=b∧c=∈である。ラ
イン8は、以下のように計算される。 つまり、S'={1,δ(0,a,1)}∪{2,δ(0,a,2)}={(1,b),
(2,c)}である。ライン9上の状態を確認するrがないの
で、遷移ラベル化a/w=a/∈が指示する新規状態eが生
成され、nがインクリメントされる。ライン15では、
プログラムは状態1の遷移に対する構造に進む。ライン
15で、プログラムは、状態2の遷移に対する構築に進
む。ライン5では、d及びeは可能な2つの符号である。
ライン6での第1符号hは、以下のようなw'になる。
【0128】 以降、ライン8の計算は、以下の式を導く。
【0129】 状態2のラベル化{(2,∈)}は追加され、状態2を示す
遷移ラベル化h/bhもまた追加される。入力符号∈に対
する遷移は、同様に計算される。 別実施形態及び変形例 本発明は、自然言語の入力データと処理使用可能形式で
出力されるデータ間のインタフェースとして動作する処
理装置を提供する。本発明は、あらゆる自然言語を適用
可能であり、自然言語のユニットは自然言語の単語に限
定されず、自然言語で構築でき、かつ異なるカテゴリへ
カテゴリ化することができる適切なユニット形式を構成
することができる。本発明の実施形態は、漢字及び仮名
で記述される日本語のような言語に適用されない単語の
言語を含む他の言語を処理するために構成されても良
い。
【0130】本実施形態の単語は、データユニットの情
報コンテンツとして使用されるが、単語の語幹を構成で
きる語彙ユニットを使用することができ、あるいはいく
つかの同義語を表す意味表現を使用することができる。
正確に単語をマッチングするよりも、入力句及び参照句
の意味のマッチングを可能にするので、特に、入力デー
タが参照データとマッチングされる場合に有効である。
例えば、入力「switch-on the light」と参照データ「t
urn-on the light」のマッチングを可能にすることが望
ましい。同じ意味表現を、用語「switch-on」と用語「t
urn-on」とから得ることができる。これは、同義語例を
含む語彙ユニットを生成する辞書を使用することによっ
て達成できる。つまり、データユニットは、ユニット識
別データを構成し、このユニット識別データは単語等の
データユニット、辞書ユニットあるいは意味表現、及び
品詞あるいはデータユニットの他のカテゴリ化形式等の
対応ユニットカテゴリデータを構成することができる。
【0131】本実施形態では、入力単語は単語のすべて
の語形変化を含む辞書とマッチングされる。一方、辞書
は、単語の語幹だけを含むことができ、語彙プロセッサ
は接頭辞及び接尾辞を取り除いて、語形変化を取り除く
ことができる。
【0132】本実施形態は決定性有限状態装置を構成し
て説明したが、本発明は非決定性有限状態装置を扱うこ
とも扱う。しかしながら、決定性有限状態装置の使用
は、計算効率の理由から好ましい。
【0133】本実施形態では、語彙プロセッサに加え
て、タグ付け器が使用される。しかしながら、このよう
なタグ付け器の使用は重要ではない。あらゆるユニット
カテゴリデータの生成方法が使用できる。例えば、語彙
プロセッサは、出力語彙ユニットに対する適切な品詞タ
グを決定するために、ある程度のコンテキスト処理を含
ませることができる。一方、ユニットカテゴリデータの
生成は、辞書から品詞を参照することと、語彙ユニット
に対し1つ以上の品詞が存在する場合の複合解析時に1
度に1つの品詞を使用することで構成できる。
【0134】有限状態解析の実施形態は標準的な多目的
コンピュータ上のソフトウェアで実行されることを示し
たが、本発明は特定の専用ハードウェアで実行すること
もできる。特に、有限状態装置は、有限状態装置の様々
なステージが論理的あるいは空間的に、一時的でなく連
続して実行される場合のロジックで実行することができ
る。
【0135】本発明の構成はカスケード化構成の有限状
態装置を利用する、これは、これらが効果的にかつコン
ピュータを使用して高速に実行することができるからで
ある。上記の実施上の限定は、必要とされるステージの
数を増加させて効率を下げることなく、かなり深くネス
ティングしている文を解析できないことによる。解析速
度を向上するためには、複雑な文法的構造の解析を成功
させるための解析能力とのトレードオフ必要がある。
【0136】本発明は上記の実施形態を参照して説明さ
れたが、本発明は上記実施形態に限定されず、本発明の
精神及び範囲内で変形が可能であることが当業者には明
らかであろう。
【図面の簡単な説明】
【図1】本発明の実施形態に従う処理装置の概要図であ
る。
【図2】コンピュータシステムとして実施される処理装
置の概要図である。
【図3】本発明の実施形態の処理システムの機能図であ
る。
【図4】本発明の第1方法の一般的なフロー図である。
【図5】図4のステップS7の詳細を示すフロー図であ
る。
【図6】図5のステップS22の詳細を示すフロー図で
ある。
【図7】本発明の第2方法のフロー図である。
【図8】図7のステップS55の詳細を示すフロー図で
ある。
【図9】図8のステップS62の詳細を示すフロー図で
ある。
【図10A】図7の方法のインデックス化命令を実行す
る別の方法を示す図である。
【図10B】図7の方法のインデックス化命令を実行す
る別の方法を示す図である。
【図11】特定の自然言語入力の処理で実行される処理
ステップを示す図である。
【図12】図11の入力自然言語例の解析から生成され
る変数の概要図である。
【図13】多義性を含む入力自然言語例の処理を示す図
である。
【図14】図13の入力自然言語に対して生成された変
数の概要図である。
【図15】本発明の実施形態に従うクエリー及びキーに
対する変数データのマッチング処理のフロー図である。
【図16】文法規則からの有限状態装置の形成において
実行されるステップのフロー図である。
【図17A】文法規則からの有限状態装置の構築におけ
るステージのコンパイルを示す図である。
【図17B】文法規則からの有限状態装置の構築におけ
るステージのコンパイルを示す図である。
【図17C】文法規則からの有限状態装置の構築におけ
るステージのコンパイルを示す図である。
【図17D】文法規則からの有限状態装置の構築におけ
るステージのコンパイルを示す図である。
【図17E】文法規則からの有限状態装置の構築におけ
るステージのコンパイルを示す図である。
【図18】非決定性有限状態遷移図である。
【図19】決定論化有限状態遷移図である。

Claims (36)

    【特許請求の範囲】
  1. 【請求項1】 複数の異なるカテゴリからなるユニット
    形式の自然言語の入力データからプロセッサ使用可能形
    式データを生成する処理装置であって、 ユニットデータ及び対応ユニットカテゴリデータからな
    るプロセッサ使用可能データユニットを生成するため
    に、入力データのユニットをそれぞれのカテゴリへカテ
    ゴリ化するデータユニット生成手段と、 カスケード化された複数のマッチング手段とを備え、該
    複数のマッチング手段の内の第1マッチング手段は、前
    記ユニットカテゴリデータとユニットカテゴリデータの
    少なくとも1つの所定パターンとをマッチングし、前記
    ユニットカテゴリデータの少なくとも1つの所定パター
    ンと一致した前記ユニットカテゴリデータに対するグル
    ープカテゴリデータを出力するために使用でき、前記カ
    スケード化された複数のマッチング手段の内の、前記第
    1マッチング手段以外のマッチング手段あるいはそれぞ
    れのマッチング手段は、前記ユニットかつ/あるいはグ
    ループカテゴリデータの少なくとも1つの所定パターン
    と前記ユニットかつ/あるいはグループカテゴリデータ
    とが一致したカテゴリデータの代わりに、前記カスケー
    ド化されたマッチング手段の少なくとも1つ前から一致
    しない前記ユニットカテゴリデータ及び前記グループカ
    テゴリデータを使用し、ユニットかつ/あるいはカテゴ
    リデータの前記少なくとも1つの所定パターンと一致し
    たユニットかつ/あるいはグループカテゴリデータに対
    し新規グループカテゴリデータを出力するために使用で
    き、 前記複数のマッチング手段の少なくとも1つは、一致し
    たユニットカテゴリデータに対応する前記ユニットデー
    タを複数の変数として出力するために使用され、前記変
    数の少なくとも1つはそれ以外の変数によってインデッ
    クス化されることを特徴とする処理装置。
  2. 【請求項2】 前記複数のマッチング手段のそれぞれ
    は、前記自然言語に対する文法規則に従って構成された
    少なくとも1つの有限状態装置を構成することを特徴と
    する請求項1に記載の処理装置。
  3. 【請求項3】 前記有限状態装置は、決定性があること
    を特徴とする請求項2に記載の処理装置。
  4. 【請求項4】 前記有限状態装置は、該有限状態装置が
    ある状態から別の状態へ遷移する場合に前記変数を出力
    するように構成され、各遷移は、ユニットあるいは前記
    パターンのグループカテゴリデータを有する入力データ
    からのユニットあるいはグループカテゴリデータのマッ
    チングに対応することを特徴とする請求項2または請求
    項3に記載の処理装置。
  5. 【請求項5】 前記複数のマッチング手段の少なくとも
    1つは、データユニットのセグメントのheadユニット及
    び修飾ユニットを定義する変数として前記ユニットデー
    タを出力するように適合され、前記インデックス化変数
    あるいは各インデックス化変数は修飾ユニットのユニッ
    トデータを定義することを特徴とする請求項1乃至請求
    項4のいずれか1項に記載の処理装置。
  6. 【請求項6】 前記複数のマッチング手段の少なくとも
    1つは、修飾されるデータのユニットの前記ユニットデ
    ータを構成するインデックスを有する1つ以上の前記イ
    ンデックス化変数を出力するように適合されることを特
    徴とする請求項5に記載の処理装置。
  7. 【請求項7】 前記複数のマッチング手段の少なくとも
    1つは、複数の異なる変数とする前記変数を出力するよ
    うに適合され、各変数は異なる統語修飾を定義すること
    を特徴とする請求項5または請求項6に記載の処理装
    置。
  8. 【請求項8】 前記複数のマッチング手段の少なくとも
    1つは、前記マッチング手段から出力される変数によっ
    て前記インデックス化変数をインデックス化するために
    使用されることを特徴とする請求項1乃至請求項4のい
    ずれか1項に記載の処理装置。
  9. 【請求項9】 前記複数のマッチング手段の少なくとも
    1つは、前記カスケード化された前のマッチング手段か
    ら出力される変数によってインデックス化変数をインデ
    ックス化するために使用可能であることを特徴とする請
    求項1乃至請求項8のいずれか1項に記載の処理装置。
  10. 【請求項10】 前記ユニットカテゴリデータは、品
    詞、単語及び語彙特徴を有するグループの1つを構成す
    ることを特徴とする請求項1乃至請求項9のいずれか1
    項に記載の処理装置。
  11. 【請求項11】 前記グループカテゴリデータは、前記
    入力データの統語構造を定義することを特徴とする請求
    項1乃至請求項10のいずれか1項に記載の処理装置。
  12. 【請求項12】 前記データユニットは、単語、語彙ユ
    ニット及び語義ユニットを有するグループの1つを構成
    することを特徴とする請求項1乃至請求項11のいずれ
    か1項に記載の処理装置。
  13. 【請求項13】 前記複数のマッチング手段は、前記入
    力データに対する非インデックス化変数を出力し、次
    に、前記入力データの前記インデックス化変数を出力す
    るように適合されることを特徴とする請求項1乃至請求
    項12のいずれか1項に記載の処理装置。
  14. 【請求項14】 前記複数のマッチング手段は、前記入
    力データに対する前記インデックス化変数をインデック
    ス化する前記変数及び命令を記憶するために適合され、
    前記インデックス化変数をインデックス化するために前
    記命令を続いて実行することを特徴とする請求項1乃至
    請求項13のいずれか1項に記載の処理装置。
  15. 【請求項15】 前記データユニット生成手段は、語彙
    ユニット及び対応品詞データを含む辞書と、テキスト単
    語の形式で前記入力データを受信する語彙プロセッサを
    含み、前記テキスト単語と単語ユニットをマッチング
    し、前記ユニットデータとして前記一致した語彙ユニッ
    トを出力し、前記ユニットカテゴリデータとして前記対
    応品詞データを出力することを特徴とする請求項1乃至
    請求項14のいずれか1項に記載の処理装置。
  16. 【請求項16】 統語コンテキスト解析によって誤って
    割り当てられた品詞データを補正する手段とを含むこと
    を特徴とする請求項15に記載の処理装置。
  17. 【請求項17】 システムの動作を制御する制御装置で
    あって、 上記請求項1乃至請求項16のいずれか1項に従う処理
    装置と、 前記変数間の等価性を定義する関係に従って、前記入力
    データあるいは参照データの他の部分を修飾しない前記
    入力データあるいは参照データのheadであることが示さ
    れる変数から開始して変数を比較することによって、参
    照データから生成される変数とする前記入力データから
    生成される前記変数を比較する比較手段と、 前記比較結果に従うシステムの前記動作を制御する制御
    手段とを備えることを特徴とする制御装置。
  18. 【請求項18】 複数の異なるカテゴリからなるユニッ
    ト形式の自然言語の入力データからプロセッサ使用可能
    形式データを生成するプロセッサ実行方法であって、 ユニットデータ及び対応ユニットカテゴリデータからな
    るプロセッサ使用可能データユニットを生成するため
    に、入力データのユニットをそれぞれのカテゴリへカテ
    ゴリ化するカテゴリ化工程と、 前記ユニットカテゴリデータとユニットカテゴリデータ
    の少なくとも1つの所定パターンとをマッチングし、前
    記ユニットカテゴリデータの少なくとも1つの所定パタ
    ーンと一致した前記ユニットカテゴリデータに対するグ
    ループカテゴリデータを出力する第1マッチング工程
    と、 前記ユニットかつ/あるいはグループカテゴリデータの
    少なくとも1つの所定パターンと前記ユニットかつ/あ
    るいはグループカテゴリデータとが一致したカテゴリデ
    ータの代わりに、マッチング工程の少なくとも1つ前か
    ら一致しない前記ユニットカテゴリデータ及び前記グル
    ープカテゴリデータを使用し、ユニットかつ/あるいは
    カテゴリデータの前記少なくとも1つの所定パターンと
    一致したユニットかつ/あるいはグループカテゴリデー
    タに対し新規グループカテゴリデータを出力する少なく
    とも1つの追加マッチング工程とを備え、 前記マッチング工程の少なくとも1つは、一致したユニ
    ットカテゴリデータに対応する前記ユニットデータを複
    数の変数として出力し、前記変数の少なくとも1つはそ
    れ以外の変数によってインデックス化されることを特徴
    とする方法。
  19. 【請求項19】 前記マッチング工程のそれぞれは、前
    記自然言語に対する文法規則に従って構成された少なく
    とも1つの有限状態装置によって実行されることを特徴
    とする請求項18に記載の方法。
  20. 【請求項20】 前記有限状態装置は、決定性があるこ
    とを特徴とする請求項19に記載の方法。
  21. 【請求項21】 前記有限状態装置は、該有限状態装置
    がある状態から別の状態へ遷移する場合に前記変数を出
    力し、各遷移は、ユニットあるいは前記パターンのグル
    ープカテゴリデータを有する入力データからのユニット
    あるいはグループカテゴリデータのマッチングに対応す
    ることを特徴とする請求項19または請求項20に記載
    の方法。
  22. 【請求項22】 前記ユニットデータは、前記データユ
    ニットのセグメントのheadユニット及び修飾ユニットを
    定義する変数として出力され、前記インデックス化変数
    あるいは各インデックス化変数は対応修飾ユニットのユ
    ニットデータを定義することを特徴とする請求項18乃
    至請求項21のいずれか1項に記載の方法。
  23. 【請求項23】 前記マッチング工程の少なくとも1つ
    は、修飾されるデータのユニットの前記ユニットデータ
    を構成するインデックスを有する1つ以上の前記インデ
    ックス化変数を出力することを特徴とする請求項22に
    記載の方法。
  24. 【請求項24】 前記更なるマッチング工程の少なくと
    も1つは、複数の異なる変数とする前記変数を出力し、
    各変数は異なる統語修飾を定義することを特徴とする請
    求項18または請求項19に記載の処理装置。
  25. 【請求項25】 前記マッチング工程の少なくとも1つ
    において、前記インデックス化変数は、前記マッチング
    工程から出力される変数によってインデックス化される
    ことを特徴とする請求項18乃至請求項24のいずれか
    1項に記載の方法。
  26. 【請求項26】 前記マッチング工程の少なくとも1つ
    において、前記インデックス化変数は、前のマッチング
    工程から出力される変数によってインデックス化される
    ことを特徴とする請求項18乃至請求項25のいずれか
    1項に記載の方法。
  27. 【請求項27】 前記ユニットカテゴリデータは、品
    詞、単語及び語彙ユニットを有するグループの1つを構
    成することを特徴とする請求項18乃至請求項26のい
    ずれか1項に記載の方法。
  28. 【請求項28】 前記グループカテゴリデータは、前記
    入力データの統語構造を定義することを特徴とする請求
    項18乃至請求項27のいずれか1項に記載の方法。
  29. 【請求項29】 前記データユニットは、単語、語彙ユ
    ニット及び語義ユニットを有するグループの1つを構成
    することを特徴とする請求項18乃至請求項28のいず
    れか1項に記載の方法。
  30. 【請求項30】 前記マッチング工程は、前記入力デー
    タに対する非インデックス化変数を出力し、次に、前記
    入力データに対するインデックス化変数を出力するため
    に反復することを特徴とする請求項18乃至請求項29
    のいずれか1項に記載の方法。
  31. 【請求項31】 前記マッチング工程は、前記入力デー
    タに対する前記インデックス化変数をインデックス化す
    る前記変数及び命令を記憶し、前記命令は、前記インデ
    ックス化変数をインデックス化するために続いて実行さ
    れることを特徴とする請求項18乃至請求項31のいず
    れか1項に記載の方法。
  32. 【請求項32】 前記データユニットは、テキスト単語
    として前記入力データを受信し、語彙ユニットを含む辞
    書の前記テキスト単語を参照し、前記ユニットデータと
    する一致した語彙ユニット及び前記ユニットカテゴリデ
    ータとする対応品詞データを出力するために品詞を対応
    させることによって生成されることを特徴とする請求項
    18乃至請求項31のいずれか1項に記載の方法。
  33. 【請求項33】 統語コンテキスト解析によって誤って
    割り当てられた品詞データを補正する工程とを含むこと
    を特徴とする請求項32に記載の方法。
  34. 【請求項34】 上記請求項18乃至請求項33のいず
    れか1項の方法を有するシステムを制御する方法であっ
    て、 前記変数間の等価性を定義する関係に従って、前記入力
    データあるいは参照データの他の部分を修飾しない前記
    入力データあるいは参照データのheadであることが示さ
    れる変数から開始して変数を比較することによって、参
    照データから生成される変数と前記入力データから生成
    される前記変数を比較し、 前記比較結果に従うシステムの前記動作を制御すること
    を特徴とする方法。
  35. 【請求項35】 上記請求項18乃至請求項34のいず
    れか1項に記載の方法を実行するためのプロセッサを制
    御するプロセッサ実行可能命令を記憶する記憶媒体。
  36. 【請求項36】 上記請求項18乃至請求項34のいず
    れか1項に記載の方法を実行するためのプロセッサを制
    御するプロセッサ実行可能命令を転送する信号。
JP2000056397A 1999-03-01 2000-03-01 自然言語入力データからプロセッサ使用可能データを生成する装置及びその方法 Withdrawn JP2000311166A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB9904663.3A GB9904663D0 (en) 1999-03-01 1999-03-01 Apparatus and method for generating processor usable data from natural langage input data
GB9904663.3 1999-03-01

Publications (1)

Publication Number Publication Date
JP2000311166A true JP2000311166A (ja) 2000-11-07

Family

ID=10848717

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000056397A Withdrawn JP2000311166A (ja) 1999-03-01 2000-03-01 自然言語入力データからプロセッサ使用可能データを生成する装置及びその方法

Country Status (5)

Country Link
US (1) US6505157B1 (ja)
EP (1) EP1033663B1 (ja)
JP (1) JP2000311166A (ja)
DE (1) DE60041162D1 (ja)
GB (1) GB9904663D0 (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7120585B2 (en) * 2000-03-24 2006-10-10 Eliza Corporation Remote server object architecture for speech recognition
GB0026353D0 (en) 2000-10-27 2000-12-13 Canon Kk Apparatus and a method for facilitating searching
US9009590B2 (en) * 2001-07-31 2015-04-14 Invention Machines Corporation Semantic processor for recognition of cause-effect relations in natural language documents
US20040167887A1 (en) * 2002-12-06 2004-08-26 Attensity Corporation Integration of structured data with relational facts from free text for data mining
US7346511B2 (en) * 2002-12-13 2008-03-18 Xerox Corporation Method and apparatus for recognizing multiword expressions
US6980949B2 (en) * 2003-03-14 2005-12-27 Sonum Technologies, Inc. Natural language processor
US20070067155A1 (en) * 2005-09-20 2007-03-22 Sonum Technologies, Inc. Surface structure generation
US8059790B1 (en) * 2006-06-27 2011-11-15 Sprint Spectrum L.P. Natural-language surveillance of packet-based communications
US8553854B1 (en) 2006-06-27 2013-10-08 Sprint Spectrum L.P. Using voiceprint technology in CALEA surveillance
US7814048B2 (en) * 2006-08-14 2010-10-12 Microsoft Corporation Knowledge extraction from online discussion forums
US8589869B2 (en) * 2006-09-07 2013-11-19 Wolfram Alpha Llc Methods and systems for determining a formula
CN101595474B (zh) * 2007-01-04 2012-07-11 思解私人有限公司 语言分析
AU2013219188A1 (en) * 2007-01-04 2013-09-12 Thinking Solutions Pty Ltd Linguistic Analysis
CA2679094A1 (en) * 2007-02-23 2008-08-28 1698413 Ontario Inc. System and method for delivering content and advertisements
CN101360088B (zh) * 2007-07-30 2011-09-14 华为技术有限公司 正则表达式编译、匹配系统及编译、匹配方法
US20100228538A1 (en) * 2009-03-03 2010-09-09 Yamada John A Computational linguistic systems and methods
US9213768B1 (en) 2009-05-15 2015-12-15 Wolfram Alpha Llc Assumption mechanism for queries
US8601015B1 (en) 2009-05-15 2013-12-03 Wolfram Alpha Llc Dynamic example generation for queries
US8484015B1 (en) 2010-05-14 2013-07-09 Wolfram Alpha Llc Entity pages
US9268878B2 (en) * 2010-06-22 2016-02-23 Microsoft Technology Licensing, Llc Entity category extraction for an entity that is the subject of pre-labeled data
US8812298B1 (en) 2010-07-28 2014-08-19 Wolfram Alpha Llc Macro replacement of natural language input
US9069814B2 (en) 2011-07-27 2015-06-30 Wolfram Alpha Llc Method and system for using natural language to generate widgets
US9734252B2 (en) 2011-09-08 2017-08-15 Wolfram Alpha Llc Method and system for analyzing data using a query answering system
US9851950B2 (en) 2011-11-15 2017-12-26 Wolfram Alpha Llc Programming in a precise syntax using natural language
US9934218B2 (en) * 2011-12-05 2018-04-03 Infosys Limited Systems and methods for extracting attributes from text content
US9405424B2 (en) 2012-08-29 2016-08-02 Wolfram Alpha, Llc Method and system for distributing and displaying graphical items
US9396179B2 (en) * 2012-08-30 2016-07-19 Xerox Corporation Methods and systems for acquiring user related information using natural language processing techniques
US10191899B2 (en) 2016-06-06 2019-01-29 Comigo Ltd. System and method for understanding text using a translation of the text
WO2018081833A1 (en) * 2016-10-31 2018-05-03 Talla, Inc. State machine methods and apparatus executing natural language communications, and al agents monitoring status and triggering transitions
US10552847B2 (en) 2017-03-23 2020-02-04 International Business Machines Corporation Real-time pattern matching of database transactions and unstructured text
US10706215B2 (en) * 2017-04-05 2020-07-07 Parsegon Producing formula representations of mathematical text

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59176823A (ja) 1983-01-28 1984-10-06 テキサス インスツルメンツ インコ−ポレイテツド 自然言語を用いてコンピュータに入力する方法
GB9217886D0 (en) 1992-08-21 1992-10-07 Canon Res Ct Europe Ltd Method and apparatus for parsing natural language
US5519608A (en) * 1993-06-24 1996-05-21 Xerox Corporation Method for extracting from a text corpus answers to questions stated in natural language by using linguistic analysis and hypothesis generation
US5414833A (en) * 1993-10-27 1995-05-09 International Business Machines Corporation Network security system and method using a parallel finite state machine adaptive active monitor and responder
US5642519A (en) * 1994-04-29 1997-06-24 Sun Microsystems, Inc. Speech interpreter with a unified grammer compiler
US5748973A (en) * 1994-07-15 1998-05-05 George Mason University Advanced integrated requirements engineering system for CE-based requirements assessment
GB2300495A (en) 1995-04-13 1996-11-06 Canon Kk Language processing
US5721939A (en) * 1995-08-03 1998-02-24 Xerox Corporation Method and apparatus for tokenizing text
US5870706A (en) * 1996-04-10 1999-02-09 Lucent Technologies, Inc. Method and apparatus for an improved language recognition system
CA2226233C (en) * 1997-01-21 2006-05-09 At&T Corp. Systems and methods for determinizing and minimizing a finite state transducer for speech recognition
US6073098A (en) * 1997-11-21 2000-06-06 At&T Corporation Method and apparatus for generating deterministic approximate weighted finite-state automata

Also Published As

Publication number Publication date
US6505157B1 (en) 2003-01-07
EP1033663A2 (en) 2000-09-06
DE60041162D1 (de) 2009-02-05
GB9904663D0 (en) 1999-04-21
EP1033663A3 (en) 2003-10-29
EP1033663B1 (en) 2008-12-24

Similar Documents

Publication Publication Date Title
US6505157B1 (en) Apparatus and method for generating processor usable data from natural language input data
Sarkar Applying co-training methods to statistical parsing
US5890103A (en) Method and apparatus for improved tokenization of natural language text
Klein et al. Accurate unlexicalized parsing
US5895446A (en) Pattern-based translation method and system
US5737617A (en) Method and system for English text analysis
JP4544674B2 (ja) 選択文字列に関連する情報を提供するシステム
US8762130B1 (en) Systems and methods for natural language processing including morphological analysis, lemmatizing, spell checking and grammar checking
US7206735B2 (en) Scaleable machine translation
JPH02308370A (ja) 機械翻訳システム
WO2000011576A1 (en) Natural language sentence parser
WO2001029699A1 (en) Method and system to analyze, transfer and generate language expressions using compiled instructions to manipulate linguistic structures
JP2002215617A (ja) 品詞タグ付けをする方法
WO2008070860A2 (en) Method and system for machine understanding, knowledge, and conversation
CN102243626A (zh) 一种基于依存句法树的翻译规则抽取方法和翻译方法
KR20030094632A (ko) 변환방식 기계번역시스템에서 사용되는 변환사전을생성하는 방법 및 장치
Alshawi Head automata for speech translation
JPH08292955A (ja) 言語処理方法及びそれを適用するデータ処理装置
US5283737A (en) Mechanism for generating linguistic expressions based on synonyms and rules derived from examples
Han et al. A morphological tagger for Korean: Statistical tagging combined with corpus-based morphological rule application
Wintner Formal language theory
Watkinson et al. Unsupervised lexical learning with categorial grammars using the LLL corpus
KR950013129B1 (ko) 기계번역장치 및 방법
Novák A model of computational morphology and its application to Uralic languages
Watkinson et al. Unsupervised lexical learning with categorial grammars

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070301

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20070301

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20080121