JPH02299068A - 入力文字列からワードを分離する方法 - Google Patents

入力文字列からワードを分離する方法

Info

Publication number
JPH02299068A
JPH02299068A JP2108980A JP10898090A JPH02299068A JP H02299068 A JPH02299068 A JP H02299068A JP 2108980 A JP2108980 A JP 2108980A JP 10898090 A JP10898090 A JP 10898090A JP H02299068 A JPH02299068 A JP H02299068A
Authority
JP
Japan
Prior art keywords
character
input signal
delimiter
token
current
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.)
Pending
Application number
JP2108980A
Other languages
English (en)
Inventor
Joel L Fagan
ジヨエル・ラヴアーン・フアガン
Michael D Gunther
マイケル・ダニエル・ガンザー
Paul D Over
ポール・ダグラス・オバー
Greg Passon
グレグ・パーソン
Chien C Tsao
チエン・チユン・サー
Antonio Zamora
アントニオ・ザモラ
Elena M Zamora
エレナ・ミツチエル・ザモラ
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH02299068A publication Critical patent/JPH02299068A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical 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)
  • Document Processing Apparatus (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A、産業上の利用分野 本発明は概してデータ処理方法に関し、より具体的には
、言語に依存しない(言語から独立した)テキストのト
ークン化のための改善されたコンピュータ方式に関する
B、従来の技術 ワード及びそれらの区切り記号の識別は、どのような自
然言語処理タスクにとっても必要なステップである。ワ
ードの分離は、その処理がワード及び句読点のトークン
を発生するので、「トークン化」とも呼ばれる。多くの
言語上のタスクは辞書またはデータベースの探索に依存
するので、辞書または探索データベースに対して矛盾な
く一致する方法で、ワードを分離できることが不可欠で
ある。
ワードを分離するための技法は、辞書またはデータベー
ス、及びそれを使用するアプリケーションの内容に影響
を及ぼす。辞書は”can’t”などの短縮または’m
other−in−1aw” などのハイフンでつなが
れたワードを含むべきか。大文字で始まるワードが許さ
れる場合は、“V 1ctor”と°’victor”
、”B111”と’bill″の間に区別はあるか。辞
書は”hot dog″などの複合語の見出し語または
etc、”などの略語を含むか。”42nd” または
”B−52″などの数字を伴う単語は許容されるか。ハ
イフン付きの電話番号及び括弧内の市外局番はどのよう
にトークン化すべきか。
辞書が英語以外の言語用に設計されている場合は、ワー
ドの分離は言語特をの規則を考慮する必要がある。フラ
ンス語では、短縮された接頭辞、例えば’l’enye
loppe” (the envelope) が、多
くのワードで見られ、これらの接頭辞は一般的には辞書
の見出しワードの一部としては含まれない。
同様に、”permettez−maill(perm
it me)などのハイフンでつながれたいくつかのフ
ランス語モ、ハイフンでつながれていても、別々のワー
ドとして認識される必要がある。
本発明の目的は、文字順別表の使用による複数のコンピ
ュータ・ハードウェア及び自然言語のための首尾一貫し
た方法で、自然言語テキストの文字列からワードを分離
するための手段を提供することである。類別表は従来技
術と比べてトークンの定義を簡単にし、特定のコンピュ
ータ、または特定の言語アプリケ−シロンまたはデータ
ベース・アプリケーション用の処理をカストマイズする
ことを可能にする。
ある従来技術の方法では、ワードは、ブランクで区切ら
れた文字列を分離し、次に始めと終りの句読文字を取り
除くことにより識別される。第2の従来技術の方法は、
はめ込まれたハイフンやアポストロフィを含む英数字列
のみを分離する。これらの手法はテキストの大部分につ
いてワードを分離することには成功するが、多くの例外
的な場合に適切なトークン化をしない。
第3の従来技術の方法は、文法的記述を書くことが必要
な語常解析機構を使用する。M、E、レスク(Lesk
)、及びE、シュミット(Schmidt)、rLEX
−語柔解析発生機構(LEX −A I、exical
Analyzer GeneratorJ N Cow
 ut、 Sci、 Tech、 Re 。
39  Be1l  Laboratories)Hu
rray  l1illt  N、J、11975年1
0月)。この著作は、パターンが一致したとき特定のア
クションを実行するCプログラム言語のステートメント
にパターンが関連付けられる、パターン突合せプログラ
ムについて記述している。LEXはワードを分離するた
め使用することができるが、非常に緊密にC言語と結合
しているので、その複雑さは自然言語よりもむしろコン
ピュータ言語の解析に一層適している。
関連特許出願 関連特許出願は、A、ザモラ(Zamora)、M、ガ
ンサー(Gunther )及びE、ザモラ(Zan+
ora )により1986年10月29日に出願され、
IBM社に譲渡された、「自然言語テキストのための解
析法(A Parser for )latural 
Language Text) Jと題された米国特許
出願第924670号であり、この特許出願は、接頭辞
/接尾辞及びその他の自然言語解析技術の説明を提供す
るため引用により本書に組み込まれている。
C3発明が解決しようとする課題 したがって、本発明の目的は、言語から独立したトーク
ン化のための改善された方法を提供することである。
本発明のもう1つの目的は、自然言語テキストのストリ
ームからワードを分離するための改善された方法を提供
することである。
本発明のさらにもう1つの目的は、複数のコンピュータ
・タイプについて、自然言語テキストのストリームから
ワードを分離するための改善された方法を提供すること
である。
本発明のさらにもう1つの目的は、種々の自然言語につ
いて、自然言語テキストのストリームがらワードを分離
するための改善された方法を提供することである。
00課題を解決するための手段 本発明は、自然言語テキストの入力ストリームを、ワー
ドに密接に対応する単純トークンに分割する。単純トー
クンは、区切り記号で分離された文字列である。区切り
記号は一般にブランク及び句読文字を含む。
単純トークンは区切り記号で分離されるので、単純トー
クンの性質は区切り記号の定義に依存する。ブランクは
、後で示す文字分類サンプル表における基本的な区切り
記号と考えられる。句読記号、すなわち、英字、数字及
び基本区切り記号以外の文字も区切り記号であるが、特
定の条件下でのみ区切り記号として扱われるものがある
例えば、多くの文脈では、”、″は区切り記号である。
しかし、数字で囲まれたときは、トークン区切り記号で
はない(例えば、3.1418)。
そこで、現在(の)文字に先行する文字(以下では前の
文字とも言う)と後続文字(以下では次の文字とも言う
)を解析することになる。
E、実施例 トークン化 字の 類 トークンはトークン化アルゴリズムにより定義され、ト
ークン化アルゴリズムは入力の各文字について、それが
現トークンに属するか否かを判定する。このアルゴリズ
ムは、文字分類表で各文字が割り当てられている項類(
カテゴリー)に基づいてその判定を行なう。項類は3つ
の大きなグループに分類される。
グループ1は、全ての文脈(コンチクスト)で区切り記
号になる項類A及びDから成る。グループ2は、決して
区切り記号にならない項類り、 U及びNを定義する。
グループ3は、使用される文脈により条件付きで区切り
記号になり得る文字から成る(項類EないしK)。
項類Hの文字、例えば、”、!?”は特別の状況を有す
る。この項類から同一文字が1つのシーケンスで共に発
生したときは、それぞれの文字は区切り記号とし、て働
かない。その代わり、文字シーケンス全体が単純トーク
ンを形成する。しかし、共に受は取られた文字のシーケ
ンスが区切り記号として働く。それは、シーケンスが、
前後の文字から分離したトークンを形成するからである
。例えば、テキスト・文字列 abc、 、 、def
″は3つのトークン”abc”、”91.′及び”de
f”に分割される。同様に、”Unbe I 1eva
b le ! ! ! ! ”は5つではなく2つのト
ークンを生じ(”Unbelievable ”及び”
jjij”)、さらに、”Astoundi1g!HH
7?7”は7つではなく3つのトークンを生じる(Δs
tounding”、” j j l ”及び“’??
?’“)。
−乙上記1」」引1■ 項類A 基本区切り記号(この項類はブランク文字などの1文字
を含むことができるだけである。)項類り 括弧、中括弧及びアンバーサンドなどの基本区切り記号
以外の区切り記号。
グループ2の 類 項類し 小文字の英字、例えば、”a ”、b″、C″。
項類U 大文字の英字、例えば、“°A“n B t+1″C“
°。
項類N 肩文字または添字を含まない数字、例えば、″ 0 °
゛、 “lrl、l“ 2 °゛。
l」二ニア”3ノソL狙 グループ3の項類を定義するため使用される表記の定義
p =[y I p]    Pにおける任意の文字a
=[y l LorU]  LまたはUにおける任意の
文字H=[y I N]    Hにおける任意の文字
句読点は、英字でも数字でもない任意の文字であり、次
の表記により定義される。
P = [y l not(L or U or N 
)]記号°く1は°precedes ’ (先行する
)を意味するため使用される。したがって、”a < 
b” は、°゛a”が“′b“°に先行することを意味
する。
項類E E   :  [e   I   a   <   e
   <   a]英字により囲まれたときは区切り記
号として扱われな−い句読文字セット。例えば、アポス
トロフィ。
項類F F=’[f   l   n<f   <n]数字によ
り囲まれたときは区切り記号として扱われない句読文字
セット。
例えば、、:/− 項類G G  = [g  I  p  <  g  <  n
]前に句読点があり、後に数字があるときは区切り記号
として扱われない句読文字セット。
例えば0、$ 項類H H: [h  l(p  <  h)  and  (
h  = p)]同じ文字が直前にあるときは区切り記
号として扱われない句読文字セット。
例えば1.、  :/−*=#% 項類I I =[i l F and H] ゛  iはF及びHの要素である。
例えば、l 1  :/− 項類J J = [j I E and F and )I]j
はE及びF及びHの要素である。
項類K K :[K I F and G and HlkはF
及びG及びHの要素である。
例えば1.。
又ヱ豆星糞 分類表は各文字に対する項類を示す配列である。
各文字には厳密に1つの項類を割り当てなければならな
い。前記セットの定義に従って、ある文字が複数の項類
の構成要素である場合は、この文字は最高レベルの項類
(すなわち、アルファベット順で最も後の文字名を有す
る項類)に割り当てる必要がある。
アプリケージ1ン・プログラムは、使用されるハードウ
ェア及び処理される自然言語に応じて、それ自体の分類
表を定義することができる。第1表は、英語テキストを
処理する本体コンピュータの場合の、第2表に示すコー
ド・ページ500(EBCDIC)に類似した)につい
ての分類表の一例である。ASCII文字セットなどの
代替文字コードを使用するパーソナル・コンピュータの
ために、同等の分類表を符号化することができる。
第1表は、第2表に示すIBM/370コンピュータに
ついてコード・ページ500と共に使用するための文字
分類表の見本である。第1表は、8ビット文字を使って
定義することができる256種類の可能な文字の各々の
分類を示す。列及び行における番号は特定の文字を索引
するために使用される。したがって、第1表では、ブラ
ンク文字(16進40)の分類“°A″は、4″と記さ
れた行の列″0″の下で見つけられ、ピリオド”、″文
字(18進4B)の分類“K”は行“4“の列″B”の
下で見つけられる。
第1表 1st/2nd  O123456789A B CD
 E FO−DDDDDDDDDDDDDDDDl−D
DDDDDDDDDDDDDDD2−      DD
DDDDDDDDDDDDDD3−      DDD
DDDDDDDDDDDDD4−     A  D 
 L L  L  L L L L  L  D  K
 D  D  D  II5−     DLLLLL
LLLLDGHDDD6−     rIUUUUUU
UUDKHDDH?−L IJ  U  U  U  
U  U  U  U  D  I  II  D  
E  II  D8−    11LLLLLLLLL
DDLLLD9−     DLLLLLLLLLDD
LDUDA−DDLLLLLLLLDD[JUUDB−
DGGEDDDDDDDDDDEDC−DUUUUUU
tlUUDLLLLLD−DUtlU  υ ロ UU
  ロ ロ DLLLLLE−DDUUUUUUU  
U DUUUUUF−INN)INNNNNNDUUU
UD次のトークン化の例は、文字分類表(第1表)が本
発明の好ましい実施例で使用されるときに作られたもの
である。この例では、各トークンは最古列のブランクに
よって区切られる。
内  容     テキスト    トークン単純語 
    book       bookBethes
da     Betbesda49ers     
  49ers 短縮      we’ll      we’ll’
49ers      ’ 49ersgoin″  
    goin ’ ゛77       77 1980’s      1980 ’ s接頭辞付き
形態 j ’accuse     j ’accus
eall’0.d、G     all’o 、 d 
前節的形態   daIIle       dame
複合語     schwarzblau   sch
warzblau日付け     11/12/87 
   11/12/8712.11.87      
12.11.8712、Xl、87      12 
 、XI  、87時間      10:45:07
    10:45:0709:15:20.13  
  09:15:20.L3金額      $10.
15      $10.15数          
 10.115.0?1    10,115.0?1
10.115,071    10.115,071.
025         .025 電話番号    794−8951    794−8
951ハイフン付き  mother−in−1aw 
  mother−in−1aw形態      fo
llowings−followings −F−10
4F  −104 斜線付き形態  clo        c / 。
andlor      and / orSyste
++/370    System / 37アウトラ
イン・ラベル      3.1          
   3.13、B               3
  、  aIIl、b             I
II  、  b括弧付き形態  (un)parsa
ble   (un )parsable book(s)           book  (
s  )arctan(n)         arc
tan  (n  )flavo(u)r      
   flavo  (u  )「 数式      C1:R1/R2C1: R1/R2
8:5/3            8  :5/3略
語      Ph、D、       Ph 、 D
 。
14r、               Mr  。
U、S、A、            U  、  S
  、  Δ 。
USA            USASig、ri 
        Sig  、ri本発明のための擬似
コード・プログラムは以下のステップを実施する。
入力が正しいか否か検査する 文字分類表に基づいて初期設定する 入力要素を取る 要素−がテキスト要素でない場合 後の基本区切り記号の数を計算する 非テキスト・トークンを作成してそれを出カドークン・
リストに加える eturn 要素がテキスト要素である場合 見つかったトークンを偽にセットする トークンが見つかるまで文字単位でテキスト文字列を走
査する テキスト文字がクラスAにある場合 後の基本区切り記号の数を計算する 先行トークンがない場合 テキスト・トークンを作成し、基本区切り記号を記憶す
る ETURN 前のトークンが存在する場合 前のトークンの後の区切り記号の数を後の基本区切り記
号の数にセットする 見つかったトークンを真にセットする テキスト文字がクラスDにある場合 現在のトークンが作成される必要がある場合 トークンを作成する 前のトークンが存在する場合 前のトークンと現在のトークンを結合する 見つかったトークンを真にセットする テキスト文字がグループ2にある場合 現在のトークン長を増分する 要素の終りである場合 現在のトークンを作成する 存在する場合は前のトークンを結合する次の要素を取る 現在のデータ位置を進める テキスト文字がグループ3にある場合 文脈を検査して区切り記号であるか否か判定する 区切り記号である場合 クラスDのための処理を実行する 区切り記号ではない グループ2のための処理を実行する トークンの分類に続いて、これらは特定の接頭辞及び接
尾辞について突合せすることによりさらに処理される。
うまく一致したトークンはさらに基本的なトークンに分
割することができる。
第1図は、プログラム命令40として実現可能なテキス
トのトークン化のための方法の流れ図を表す第1A図〜
第1H図の関係を示す。第2図は、第1図に示すトーク
ン化プログラム命令40を実行してテキストのトークン
化を実行するための、パーソナル・コンピュータまたは
主システム370型コンピユータなどのデータ処理シス
テムを示す。第2図のデータ処理システム20は、バス
26により中央処理装置(CPU)24に接続されたメ
モリ22を備える。キーボード28、表示装置30、デ
ィスク32、印刷装置34、光学文字認識機械(OCR
) 3s及び通信アダプタ36は、スヘて第2図のデー
タ処理システム20内のバス26に接続することができ
る。
メモリ22は、CPU24により実行されるとき本発明
の方法を実行することになるテキスト・トークン化プロ
グラムを記憶するため、分割されている。オペレーティ
ング・システム・プログラム命令42は、システム20
の動作のための支援ルーチンを提供する。メモリのその
他の区画は、トークン(文字列)記憶域44、ポインタ
記憶域46、累積レジスタ域48、カウンタ・レジスタ
52、カウンタ・レジスタ54、メモリ・オフセット・
レジスタ56及び3段シフト・レジスタ58を含むこと
ができ、それらの機能は後で説明する。
文字分類表50のため、少なくとも1つのメモリ区画が
取って置かれる。第2図に示すデータ処理システム20
の実施例では、文字分類表50は、EBCDECコード
を使用するコンピュータで英語テキストを処理するため
の分類表を記憶する。
さらに、第1の代替文字分類表5OAも記憶することが
でき、これを使用して、ASCIIコードを使って符号
化された文字を宵する英語テキストを処理することがで
きる。文字がEBCDECコードで符号化されフランス
語テキストを処理するために、第2の代替文字分類表5
0Bを含めることができる。それ自体の特殊コードを使
ってキリル文字のロシア語テキストを処理するために、
第3の代替文字分類表50Cを使用することができる。
辞書アプリケージジン・プログラム60、データベース
・アプリケーション・プログラム61、言語翻訳アプリ
ケーション・プログラム62、及び編集またはワード処
理アプリケーション・プログラム63のため、メモリ2
2中にさらに区画を取って置くことができる。これらの
アプリケーション・プログラム60〜63の各々は、本
発明によるテキスト・トークン化を使用することができ
る。
第3図は、テキストのトークン化の発明のための代替ハ
ードウェア実施例の機能ブロック図を示す。第3図は、
本発明によるテキストのトークン化の全体的動作を説明
するのに役立つ。自然言語テキスト文字入カストリーム
25は、発信側によりブランク及び句読点により区切ら
れたワードとして意図された文字のシーケンスを含むこ
とができる。キーボード28、ディスク32、通信リン
クに接続した通信アダプタ36、または文書を走査する
光学文字認識機械35から、入力ストリーム25を入力
することができる。第3図の入力ストリーム25は、3
段シフト・レジスタ58′の入力側に送られる。文字が
3段シフト・レジスタ58′を通るとき、前の文字が段
27に置かれ、現在の文字が段29に置かれ、次の文字
が段31に置かれる。これらの3つの文字はテキスト・
トークン化プロセッサ40″に送られ、プロセッサ40
“は、第1図に流れ図が示された、テキストのトークン
化のための方法を処理する。入力ストリーム26におけ
る各文字はカウンタ52′でカウントされる。メモリ・
オフセット・レジスタ56’は、トークン・メモリ44
゛への記憶のため第3図の実施例により識別される最初
のトークンのための開始位置である開始アドレスを、ト
ークン(文字列)・メモリ44°に記憶する。加算機構
60はカウンタ521の値をメモリ・オフセット・レジ
スタ56“の内容に加え、この和をトークン・メモリ4
4′に送るべきアドレスとして使用し、テキスト・トー
クン化プロセッサ40′により識別された各々のトーク
ンを記憶するためのロケーションを識別する。各トーク
ンがテキスト・トークン化プロセッサ40′により発見
されると、「トークン発見」信号がゲート64とゲート
62に、さらにカウンタ54′に出力される。入力文字
列25中の文字が第3図のハードウェア実施例に送られ
ると、これらの文字は、トークンがテキスト・トークン
化プロセッサ40゛により識別されるまで、累積文字列
レジスタ48′に累積される。「トークン発見」信号が
ゲート64に出力されると、累積文字列レジスタ48゛
内の累積文字は文字列データとしてトークン・メモリ4
4°のデータ入力に出力され、同時に加算機構60によ
り出力されるアドレス値がゲート62を介してトークン
・メモリ44’のアドレス入力に渡される。
同時に、加算機構60のアドレス出力はゲート62を介
してポインタ・データとしてポインタ46′に送られる
。カウンタ54°は各「トークン発見」信号を事象とし
てカウントシ、カウンタ54゛内のカウントされた事象
と、ポインタ・メモリ46′に入れられるアドレス値と
して使用される。このように、各トークンがテキスト・
トークン化プロセッサ40’により識別されると、トー
クンは、アドレスがポインタ・メモリ46′により指示
されるトークン(文字列)・メモリ44′内の10ケー
ジ日ンに記憶される。
第2図に示す本発明のデータ処理システムの実施例は、
第3図に示すハードウェア実施例について説明したのと
同じ一般的動作モードを有する。
メモリ22内の対応する区画部分は、第3図のハードウ
ェア実施例における”′°′記号付き参照番号に対応す
る、°゛°°°°記号参照番号を有する。
例えば、第2図のデータ処理システム20のメモリ22
内のメモリ項類として示された文字分類表50は、第3
図の分類表50’に対応し、そのハードウェア実施例は
、次のトークン化プロセッサ40“に接続された出力を
有する。第2図のメモリ22の区画におけるテキスト・
トークン化プログラム命令40は、第3図のハードウェ
ア実施例のテキスト・トークン化プロセッサ40′に対
応する。第3図のハードウェア実施例は、第2図のデー
タ処理システム実施例20の動作を理解するのに役立つ
テキスト・トークン化の方法に関する第1図の流れ図は
、第2図のデータ処理システム内のテキスト・トークン
化プログラム命令40と、第3図のハードウェア実施例
におけるテキスト・トークン化プロセッサ40′の両方
に適用可能である。
第1A図で、図示の流れ図の部分は、文字分類表50を
メモリ22のメモリ区画50に入力すると、ステップ6
6で開始する。あるいは、文字分類表を、第3図のハー
ドウェア実施例の分類表記憶装置50’に入力できる。
第1A図の流れ図で、次にステップ68で自然言語テキ
スト文字列25を入力する。次にステップ70で、ルー
プ開始点は現在の文字の状態を前の文字に、次の文字を
現在の文字に変更し、入力文字列から新しい次の文字を
取る。これは、第3図の3段シフト・レジスタ58“の
動作、及び第2図のデータ処理システムのメモリ22に
おける3段シフト・レジスタ区画58に該当する。
第1図の流れ図における次のステップ72は、現在の文
字を分類表50と比較して、現在の文字の項類を判定す
る。例えば、”、1?′の文字シーケンスを有する例1
を示す第4図を参照することができる。ブランクは前の
文字、”、′は現在の文字、1″は次の文字である。第
2表の文字コーディング表は、文字”、“が16進4B
の文字コードを有することを示す。第1表の文字分類表
を参照すると、”、′1はKの項類を有する。これは、
第1A図のステップ72で実行される動作である。
第1A図における流れ図のステップ72に続く残りのス
テップ、及び流れ図の第1B図〜第1H図に示すステッ
プのすべては、ステップ72で判定された現在の文字の
項類に基づいて、テキスト・トークン化処理を実施する
。第1A図で、ステップ74は、現在の文字がグループ
1の区切り記号か否かを判定する。そうである場合は、
「トークン発見」信号を出力するステップ76で、トー
クン出力ルーチン75が開始する。次に、第3図の累積
文字列レジスタ48°または第2図の累積文字列レジス
タ領域区画48で見つけられたばかりのトークンについ
て、文字を累積した累積文字列は、出力されたその内容
を有する。その内容は、第2図のデータ処理システムの
トークン文字列記憶域44、または第3の図トークン(
文字列)メモリ441に記憶される。次に、ステップ7
8は、ユーザがセットした初期条件フラッグを検査する
このフラッグは、区切り記号をトークン、またはトーク
ンでないと見なす選択を提供する。さらに、ブランクを
トークンでないとして、またはその他の選択されたグル
ープ1の区切り記号をトークンでないとして単に無視す
るように、改善することができる。ユーザの選択に基づ
いて、ステップ78で区切り記号がトークンでないと見
なされた場合は、別の「トークン発見」信号が出力され
、区切り記号である現在の文字が、トークン記憶域44
または441への記憶のためのトークンとして出力され
る。次にトークン出力ルーチン75はループ開始点70
に戻り、そこで別の文字が入力文字列25から入力され
、処理が続行する。
ステップ74が、現在の文字はグループ1の区切り記号
でないと判定した場合は、プログラムはステップ80に
進み、ステップ80は、現在の文字がグループ2の英字
(大文字か小文字)であるか数字であるかを判定する。
そのいずれかである場合は、その文字は、現在の文字を
累積文字列に加える文字付加ルーチン80により、累積
文字列レジスタ48“または48に累積する文字列に加
えられる。次に文字付加ルーチン80はループ開始点7
0に戻る。
第1A図で、現在の文字がグループ1の区切り記号でも
グループ2の英字でもない場合は、プログラムはステッ
プ82に進み、そこで現在の文字はグループ3の条件付
き区切り記号と見なされ、プログラムは第1B図の流れ
図のステップ84に進む。
第1B図の流れ図では、ステップ84で、現在の文字が
項類Eにあるか否かが判定される。そうである場合、ス
テップ85で、前の文字が英字であるか否か、次の文字
が英字であるか否かが判定される。そうである場合は、
現在の文字は区切り記号ではなく、ルーチンは文字付加
ルーチン80に進み、そこで現在の文字がレジスタ48
または48゛の累積文字列に加えられる、ステップ85
の結果が否定の出力である場合は、現在の文字はこの文
脈での区切り記号と見なされ、プログラムはトークン出
力ルーチン75に進み、そこで「トークン発見」信号が
出力され、累積文字列に累積された文字も出力される。
第1B図のステップ84が、現在の文字が項類Eの文字
ではないと判定した場合は、プログラムは第1C図のス
テップ86に進む。
第1C図で、ステップ86は現在の文字が項類Fである
か否かを判定する。そうである場合は、ステップ87で
、前の文字が数字であるか否か、及び次の文字が数字で
あるか否かを判定する。そうである場合は、現在の文字
は区切り記号でないと見なされ、プログラムは文字付加
ルーチン80に進む。逆に、ステップ87が否定の出力
を判定した場合は、現在の文字はこの文脈で区切り記号
と見なされ、プログラムはトークン出力ルーチン75に
進む。ステップ88で現在の文字が項類Fではないと判
定された場合は、プログラムは第1D図のステップ88
に進む。
第1D図で、ステップ88は現在の文字が項類Gにある
か否か判定する。そうである場合は、ステップ89で、
現在の文字が英字でないがどうか、数字でないかどうか
、さらに次の文字が数字であるか否かを判定する。これ
が真である場合は、現在の文字は区切り記号でないと見
なされ、プログラムは文字付加ルーチン80に進む。逆
に、ステップ89が否定を判定した場合は、現在の文字
はこの文脈で区切り記号と見なされ、プログラムはトー
クン出力ルーチン75に進む。ステップ88で現在の文
字が項類Gにないと判定された場合は、プログラムは第
1D図のステップ90に進む。
第1E図で、ステップ90は現在の文字が項類Hにある
か否か判定する。そうである場合は、ステップ91で、
前の文字が英字でないかどうか、数字でないかどうか、
さらに現在の文字が前の文字に等しいか否かを判定する
。そうである場合は、現在の文字は区切り記号でないと
見なされ、プログラムは文字付加ルーチン80に進む。
逆に、ステップ91が否定を判定した場合は、現在の文
字はこの文脈で区切り記号と見なされ、プログラムはト
ークン出力ルーチン75に進む。ステップ90が、現在
の文字が項類Hにないと判定した場合は、プログラムは
第1F図のステップ92に進む。
第1F図で、ステップ92は、現在の文字が項類Iにあ
るか否か判定する。そうである場合は、ステップ87“
は、前の文字が数字であるか否か、また次の文字が数字
であるか否か判定する。そうである場合は、現在の文字
は区切り記号でないと見なされ、プログラムは文字付加
ルーチン80に進む。しかし、ステップ87°が否定を
判定した場合は、プログラムはステップ91゛に進み、
そこで前の文字が英字でないかどうか、数字でないかど
うか、また現在の文字が前の文字に等しいか否かを判定
する。そうである場合は、現在の文字は区切り記号でな
いと見なされ、プログラムは文字付加ルーチン80に進
む。逆に、ステップ91′が否定を判定した場合は、現
在の文字はこの文脈で区切り記号と見なされ、プログラ
ムはトークン出力ルーチン75に進む。ステップ92が
、現在の文字が項類Iにないと判定した場合は、プログ
ラムは第1G図のステップ93に進む。
第1G図のステップ93は、現在の文字が項類Jである
か否か判定する。そうである場合は、プログラムはステ
ップ85°に進み、ステップ85゜は、前の文字が英字
であるか否か、また次の文字が英字であるか否かを判定
する。そうである場合は、現在の文字が区切り記号でな
いと見なされ、プログラムは文字付加ルーチン80に進
む。逆に、ステップ85′が否定を判定した場合は、プ
ログラムはステップ87′に進み、ステップ87°は、
前の文字が数字であるか否か、また次の文字が数字であ
るか否かを判定する。そうである場合は、現在の文字は
区切り記号でないと見なされ、プログラムは文字付加ル
ーチン80に進む。逆に、ステップ87°が否定を判定
した場合は、ステップ91″は、前の文字が英字でない
かどうか、数字でないかどうか、さらに現在の文字が前
の文字に等しいか否かを判定する。そうである場合は、
現在の文字は、区切り記号でないと見なされ、プログラ
ムは文字付加ルーチン80に進む。逆に、ステップ91
”が否定を判定した場合は、現在の文字はこの文脈で区
切り記号と見なされ、プログラムはトークン出力ルーチ
ン75に進む。ステップ93が、現在の文字が項類Jに
ないと判定した場合は、プログラムは第1H図のステッ
プ94に進む。
第1H図のステップ94は、現在の文字が項類Kにある
か否かを判定する。これは第4図の例1及び第5図の例
2に該当し、現在の文字は文字”、′である。第1H図
のステップ87″では、前の文字が数字であるか否か、
また次の文字が数字であるか否かを判定する。そうであ
る場合は、現在の文字は区切り記号ではな(、プログラ
ムはステップ80の文字付加ルーチンに進む。ステップ
87″が否定を判定した場合は、プログラムはステップ
89′に進み、前の文字が英字であるか、または数字で
あるか、さらに次の文字が数字であるか否かを判定する
。そうである場合は、現在の文字は区切り記号ではなく
、プログラムは文字付加ルーチン80に進む。ステップ
89“が否定を判定した場合は、プログラムはステップ
91”’に進み、前の文字が英字または数字でないかど
うか、また現在の文字が前の文字に等しいか否かを判定
する。そうである場合は、現在の文字は区切り記号でな
いと見なされ、プログラムは文字付加ルーチン80に進
む。ステップ91°゛°が否定を判定した場合は、現在
の文字はこの文脈で区切り記号とみなされ、プログラム
はトークン出力ルーチン75に進む。前の文字がブラン
ク、現在の文字が”、″、次の文字がff I 11で
ある第4図の例1に関連して、第1H図のステップ89
°は、前の文字が英字または数字ではなく、次の文字が
数字であると判定する。このことは例1では真であるた
め、現在の文字は区切り記号でないと見なされ、したが
って、プログラムは文字付加ルーチン8oに進み、文字
”、″が累積文字列に加えられる。第5図の例2では、
前の文字はa°′、現在の文字は”、”、次の文字はn
 I I+である。この場合は、第1H図のステップ9
1°°°は否定を判定し、したがって、現在の文字は区
切り記号と見なされ、プログラムはトークン出力ルーチ
ン75に進むので、既存の累積文字列はトークンとして
出力される。
この時点で、先に引用した関連米国特許出願第9246
70号に記載されたのと同様な方法で、接頭辞及び接尾
辞分離ルーチン47を使って、ワード及びワード区切り
記号のその他のロケーシジンを示すため、−組の接頭辞
及び接尾辞に対してさらに突合せを行なうことができる
表2 共通名1110941111991019911010
10160031016.10国際tI5コード、、、
、、、、、、、、、、、、、、、、、、、、、、、、、
、、、、、、、、 EBCDICF9発明の効果 本発明によれば、言語に依存しないトークン化のための
改善された方法が提供される。
【図面の簡単な説明】
第1図は、テキスト・トークン化のための方法の流れ図
を示した第1A図〜第1H図の関係を示す説明図である
。 第1A図は、現在の文字がグループ1の区切り記号か、
またはグループ2の英字かを判定する部分の流れ図であ
る。 第1B図は、項類Eの現在の文字を処理する部分の流れ
図である。 第1C図は、項類Fの現在の文字を処理する部分の流れ
図である。 第1D図は、項類Gの現在の文字を処理する部分の流れ
図である。 第1E図は、項類Hの現在の文字を処理する部分の流れ
図である。 第1F図は、項類工の現在の文字を処理する部分の流れ
図である。 第1G図は、項類Jの現在の文字を処理する部分の流れ
図である。 第1H図は、項類にの現在の文字を処理する部分の流れ
図である。 第2図は、テキスト・トークン化を実施するための、デ
ータ処理システムの機能ブロック図である。 第3図は、テキストのトークン化を実施するための、本
発明のもう1つのハードウェア実施例の機能ブロック図
である。 第4図は、例1の説明図である。 第5図は、例2の説明図である。 出願人  インターナショナル・ビジネスマシーンズ・
コーポレーシヨン 代理人  弁理士  頓  宮  孝  −(外1名) 7゜428/ テキスト・トークシ化を実行するためのデータ処理シス
テムM2図 第3ti!!l

Claims (3)

    【特許請求の範囲】
  1. (1)ディジタル・データ・プロセッサにおいてワード
    を分離するための方法であって、 ワード及び区切り記号を形成する文字から成る言語表現
    を表わす第1入力信号を入力する段階と、前記第1入力
    信号における可能な各入力文字の項類を表わす第2入力
    信号を入力する段階と、前記第1入力信号を第2の入力
    信号の対応する項類に対して文字毎に比較して、前記第
    1入力信号でのトークン境界を探し出す段階と、 前記トークン境界の位置決めに応答して、前記第1入力
    信号における各ワード及び各区切り記号の位置を表示さ
    せる段階 を含む方法。
  2. (2)ワードの分離を必要とする言語表現を処理するた
    めの装置であって、 ワード及び区切り記号を形成する文字から成る言語表現
    を表わす第1入力信号を入力するための手段と、 前記第1入力信号における各々の可能な入力文字の項類
    を表わす第2入力信号を入力するための手段と、 前記第1入力信号におけるトークン境界を探し出すため
    、前記第1入力信号を前記第2入力信号の対応する項類
    に対して文字毎に比較するための手段と、 前記トークン境界の位置特定に応答して、前記第1入力
    信号における各ワード及び各区切り記号の位置を表示さ
    せるための手段 を含む装置。
  3. (3)自然言語テキストを形成する入力文字列からワー
    ドを分離するための方法であって、 区切り記号、英数字、または前記入力文字列における所
    定の文字文脈に現われるとき区切り記号の機能を果たす
    条件付き区切り記号のいずれかであるとして、文字コー
    ドで表わされた各文字を記述する文字分類表を入力する
    段階と、 前記入力文字列からワードを形成するため英数字の文字
    列を組み立てる段階と、 前記入力文字列から3つの連続した文字を、先行文字、
    現在文字及び後続文字として入力する段階と、 前記の現在の文字が区切り記号、英数字または条件付き
    区切り記号であるか否かを判定するため、前記文字分類
    表にアクセスする段階と、 前記文字分類表により前記現在文字が英数字として識別
    されたとき、前記現在の文字を前記文字列に付加する段
    階と、 前記文字分類表により前記現在文字が区切り記号として
    識別されたとき、前記文字列が完成していることを信号
    で示す段階と、 前記文字分類表により前記現在文字が条件付き区切り記
    号として識別されたとき、前記現在文字が区切り記号の
    機能を果たすか否かを判定するため、前記先行文字、前
    記現在文字及び前記の後続文字を解析する段階 を含む方法。
JP2108980A 1989-04-26 1990-04-26 入力文字列からワードを分離する方法 Pending JPH02299068A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US344341 1989-04-26
US07/344,341 US4991094A (en) 1989-04-26 1989-04-26 Method for language-independent text tokenization using a character categorization

Publications (1)

Publication Number Publication Date
JPH02299068A true JPH02299068A (ja) 1990-12-11

Family

ID=23350137

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2108980A Pending JPH02299068A (ja) 1989-04-26 1990-04-26 入力文字列からワードを分離する方法

Country Status (3)

Country Link
US (1) US4991094A (ja)
EP (1) EP0394633A3 (ja)
JP (1) JPH02299068A (ja)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5477451A (en) * 1991-07-25 1995-12-19 International Business Machines Corp. Method and system for natural language translation
US5390259A (en) * 1991-11-19 1995-02-14 Xerox Corporation Methods and apparatus for selecting semantically significant images in a document image without decoding image content
US5317509A (en) * 1992-01-21 1994-05-31 Hewlett-Packard Company Regular expression factoring for scanning multibyte character sets with a single byte automata machine
JP2939050B2 (ja) * 1992-05-26 1999-08-25 シャープ株式会社 デ−タ通信装置
US5485373A (en) * 1993-03-25 1996-01-16 Taligent, Inc. Language-sensitive text searching system with modified Boyer-Moore process
US5410475A (en) * 1993-04-19 1995-04-25 Mead Data Central, Inc. Short case name generating method and apparatus
US5692176A (en) * 1993-11-22 1997-11-25 Reed Elsevier Inc. Associative text search and retrieval system
US5465309A (en) * 1993-12-10 1995-11-07 International Business Machines Corporation Method of and apparatus for character recognition through related spelling heuristics
US5794177A (en) * 1995-07-19 1998-08-11 Inso Corporation Method and apparatus for morphological analysis and generation of natural language text
US5680628A (en) * 1995-07-19 1997-10-21 Inso Corporation Method and apparatus for automated search and retrieval process
US5842218A (en) * 1996-12-06 1998-11-24 Media Plan, Inc. Method, computer program product, and system for a reorienting categorization table
US5960080A (en) * 1997-11-07 1999-09-28 Justsystem Pittsburgh Research Center Method for transforming message containing sensitive information
WO2000011576A1 (en) 1998-08-24 2000-03-02 Virtual Research Associates, Inc. Natural language sentence parser
US6556841B2 (en) * 1999-05-03 2003-04-29 Openwave Systems Inc. Spelling correction for two-way mobile communication devices
US7475343B1 (en) 1999-05-11 2009-01-06 Mielenhausen Thomas C Data processing apparatus and method for converting words to abbreviations, converting abbreviations to words, and selecting abbreviations for insertion into text
US6327561B1 (en) * 1999-07-07 2001-12-04 International Business Machines Corp. Customized tokenization of domain specific text via rules corresponding to a speech recognition vocabulary
US6742164B1 (en) 1999-09-01 2004-05-25 International Business Machines Corporation Method, system, and program for generating a deterministic table to determine boundaries between characters
US6626960B1 (en) 1999-09-01 2003-09-30 International Business Machines Corporation Method, system, and program for generating a table to determine boundaries between characters
US7392185B2 (en) * 1999-11-12 2008-06-24 Phoenix Solutions, Inc. Speech based learning/training system using semantic decoding
US6665640B1 (en) 1999-11-12 2003-12-16 Phoenix Solutions, Inc. Interactive speech based learning/training system formulating search queries based on natural language parsing of recognized user queries
US7725307B2 (en) * 1999-11-12 2010-05-25 Phoenix Solutions, Inc. Query engine for processing voice based queries including semantic decoding
US6633846B1 (en) 1999-11-12 2003-10-14 Phoenix Solutions, Inc. Distributed realtime speech recognition system
US7050977B1 (en) * 1999-11-12 2006-05-23 Phoenix Solutions, Inc. Speech-enabled server for internet website and method
US9076448B2 (en) 1999-11-12 2015-07-07 Nuance Communications, Inc. Distributed real time speech recognition system
US6615172B1 (en) 1999-11-12 2003-09-02 Phoenix Solutions, Inc. Intelligent query engine for processing voice based queries
US7213069B2 (en) * 2001-02-28 2007-05-01 Microsoft Corporation Category name service able to override the category name based on requestor privilege information
US20020144246A1 (en) * 2001-03-29 2002-10-03 Ibm Corporation Method and apparatus for lexical analysis
US6826576B2 (en) * 2001-05-07 2004-11-30 Microsoft Corporation Very-large-scale automatic categorizer for web content
US6978266B2 (en) * 2001-05-07 2005-12-20 Microsoft Corporation Determining a rating for a collection of documents
US20030084041A1 (en) * 2001-10-18 2003-05-01 International Business Machines Corporation Programmer's dynamic spellchecker
US20030225763A1 (en) * 2002-04-15 2003-12-04 Microsoft Corporation Self-improving system and method for classifying pages on the world wide web
US7546288B2 (en) * 2003-09-04 2009-06-09 Microsoft Corporation Matching media file metadata to standardized metadata
US7370034B2 (en) * 2003-10-15 2008-05-06 Xerox Corporation System and method for performing electronic information retrieval using keywords
US7451398B1 (en) * 2003-11-18 2008-11-11 Google, Inc. Providing capitalization correction for unstructured excerpts
US7444403B1 (en) 2003-11-25 2008-10-28 Microsoft Corporation Detecting sexually predatory content in an electronic communication
US20050177599A1 (en) * 2004-02-09 2005-08-11 Microsoft Corporation System and method for complying with anti-spam rules, laws, and regulations
US7428530B2 (en) * 2004-07-01 2008-09-23 Microsoft Corporation Dispersing search engine results by using page category information
US7409334B1 (en) * 2004-07-22 2008-08-05 The United States Of America As Represented By The Director, National Security Agency Method of text processing
US20060122834A1 (en) * 2004-12-03 2006-06-08 Bennett Ian M Emotion detection device & method for use in distributed systems
US7599828B2 (en) * 2005-03-01 2009-10-06 Microsoft Corporation Grammatically correct contraction spelling suggestions for french
EP2511833B1 (en) * 2006-02-17 2020-02-05 Google LLC Encoding and adaptive, scalable accessing of distributed translation models
US20090089381A1 (en) * 2007-09-28 2009-04-02 Microsoft Corporation Pending and exclusive electronic mail inbox
JP5508953B2 (ja) * 2010-06-28 2014-06-04 株式会社日立ソリューションズ 文書処理装置及びプログラム
US9063931B2 (en) * 2011-02-16 2015-06-23 Ming-Yuan Wu Multiple language translation system
US9208134B2 (en) * 2012-01-10 2015-12-08 King Abdulaziz City For Science And Technology Methods and systems for tokenizing multilingual textual documents

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61281367A (ja) * 1985-06-06 1986-12-11 Fujitsu Ltd 英語解析における名詞句決定方式
JPS61282965A (ja) * 1985-06-07 1986-12-13 Nec Corp 文字列分割方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4057849A (en) * 1974-09-23 1977-11-08 Atex, Incorporated Text editing and display system
GB1561975A (en) * 1975-07-29 1980-03-05 Xerox Corp Word processing apparatus
US4152762A (en) * 1976-03-03 1979-05-01 Operating Systems, Inc. Associative crosspoint processor system
US4623985A (en) * 1980-04-15 1986-11-18 Sharp Kabushiki Kaisha Language translator with circuitry for detecting and holding words not stored in dictionary ROM
US4456969A (en) * 1981-10-09 1984-06-26 International Business Machines Corporation System for automatically hyphenating and verifying the spelling of words in a multi-lingual document
US4747053A (en) * 1985-05-20 1988-05-24 Brother Kogyo Kabushiki Kaisha Electronic dictionary
US4773009A (en) * 1986-06-06 1988-09-20 Houghton Mifflin Company Method and apparatus for text analysis
US4887212A (en) * 1986-10-29 1989-12-12 International Business Machines Corporation Parser for natural language text

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61281367A (ja) * 1985-06-06 1986-12-11 Fujitsu Ltd 英語解析における名詞句決定方式
JPS61282965A (ja) * 1985-06-07 1986-12-13 Nec Corp 文字列分割方法

Also Published As

Publication number Publication date
EP0394633A2 (en) 1990-10-31
US4991094A (en) 1991-02-05
EP0394633A3 (en) 1992-12-02

Similar Documents

Publication Publication Date Title
JPH02299068A (ja) 入力文字列からワードを分離する方法
JP2726568B2 (ja) 文字認識方法及び装置
CA1300272C (en) Word annotation system
US4868750A (en) Collocational grammar system
US5303150A (en) Wild-card word replacement system using a word dictionary
JPH0418346B2 (ja)
EP0241717A2 (en) Linguistic analysis method and apparatus
JPH0211934B2 (ja)
JPH08180066A (ja) インデックス作成方法、文書検索方法及び文書検索装置
JPH07105217A (ja) 入力文字自動補正装置
JPH0612451A (ja) 例文検索システム
JPS61190653A (ja) 文書処理装置
JPH08115330A (ja) 類似文書検索方法および装置
JPH07230468A (ja) キーワード自動抽出装置およびキーワード自動抽出方法
JP3924899B2 (ja) テキスト検索装置およびテキスト検索方法
JPS62249269A (ja) 文書処理装置
JP2570784B2 (ja) 文書リーダ後処理装置
JP2827066B2 (ja) 数字列混在文書の文字認識の後処理方法
JPH0612453A (ja) 未知語抽出登録装置
JP3241854B2 (ja) 単語スペル自動補正装置
JP2897191B2 (ja) 日本語形態素解析システム及び形態素解析方式
CA1257705A (en) Textual database system using skeletonization and phonetic replacement to retrieve words matching or similar to query words
JPH08329085A (ja) 英語形態素解析装置および英語形態素解析方法
JPH09138840A (ja) 文字認識装置
JPH07192018A (ja) 外国人名検索装置