JP2002091951A - カタカナ文字列照合方法及びカタカナ文字列照合プログラムを記録した媒体 - Google Patents

カタカナ文字列照合方法及びカタカナ文字列照合プログラムを記録した媒体

Info

Publication number
JP2002091951A
JP2002091951A JP2000282061A JP2000282061A JP2002091951A JP 2002091951 A JP2002091951 A JP 2002091951A JP 2000282061 A JP2000282061 A JP 2000282061A JP 2000282061 A JP2000282061 A JP 2000282061A JP 2002091951 A JP2002091951 A JP 2002091951A
Authority
JP
Japan
Prior art keywords
character string
katakana
katakana character
regular expression
character
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
JP2000282061A
Other languages
English (en)
Inventor
Akihiro Niimori
昭宏 新森
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.)
Intec Web & Genome Informatics Corp
Intec Web and Genome Informatics
Original Assignee
Intec Web & Genome Informatics Corp
Intec Web and Genome Informatics
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 Intec Web & Genome Informatics Corp, Intec Web and Genome Informatics filed Critical Intec Web & Genome Informatics Corp
Priority to JP2000282061A priority Critical patent/JP2002091951A/ja
Publication of JP2002091951A publication Critical patent/JP2002091951A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)

Abstract

(57)【要約】 【課題】カタカナ文字列を対象として、表記のゆれを考
慮した文字列照合を行う。 【解決手段】事前に与えた有限個の異表記同義カタカナ
文字列群の集合から、正規表現により表されるパターン
の集合を学習し、それを用いた変換処理を行ってから照
合処理を行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、地名・氏名・会社
名・外来語・外国固有名詞・専門用語等、カタカナで記
述された文字列を含む日本語の自然言語テキストデータ
を処理する際のカタカナ文字列照合方法に関する。
【0002】
【従来の技術】地名・氏名・会社名などに対するフリガ
ナや、文章中における外来語・専門用語または外国の固
有名詞記述などにおいて、カタカナが使われることが多
い。カタカナ文字列においては、図1に示すように表記
の「ゆれ」という現象がみられる。すなわち、カタカナ
で表記した文字列において、本来同じものを記述しよう
としているにも関わらず、さまざまに表記がゆれて記述
されることが多い。このような特性を持つカタカナ文字
列に対して、通常の文字列照合処理を実行した場合、本
来同じものとみなしてほしい2つの文字列について、異
なるものとして判定してしまうことになる。あらかじ
め、表記は異なるが同じものとみなしてほしい文字列を
まとめた表(表記のゆれ辞書)を作成しておくという方
法も考えられるが、カタカナ文字列と表記のゆれ方の種
類の多さを考えた場合、辞書作成の手間と辞書を蓄積す
る記憶容量の面で非効率である。
【0003】完全に一致しない文字列を対象とした文字
列照合方法としては既に、「編集距離の概念に基づい
て、誤りを許容する文字列照合処理」の手法が文献(Sun
Wu and Udi Manber, "Fast Text Search Allowing Err
ors", Commiunications of theACM, Vol.35, No.10) な
どにおいて紹介されている。そこでは、置換・挿入・削
除の編集操作の回数の合計を「編集距離」(または、「L
evenshtein distance」)と定義し、その値が1以上の場
合でも効率的に照合処理を行えるようにするためのアル
ゴリズムが紹介されている。表記のゆれを持つ上記のよ
うなカタカナ文字列に対して、編集距離の値を2にして
この照合法を用いた場合、たとえば、「ベートーベン」
と「ベートーヴェン」を同じものとして判定できるよう
になる一方で、「ベートーベン」と「バントーベン」に
ついても同じものと判定してしまうことになる。すなわ
ち、同手法はカタカナの言語的特性を全く考慮していな
いため、本来同じものと判定すべきでないものについて
も同じものと判定してしまうことになる。
【0004】一方、英語の固有名詞を対象とした照合処
理における同様の問題に対処する方法としては、英語の
言語的特性に基づいたSoundexの方法[アメリカ合衆国特
許 1261167(1918)及び145663(1922)、およびDonald Knu
thによる"The Art of Computer Programming, Volume
3"(Addison-Wesley, 1998) ]がある。この技術を用いる
と、たとえば"Smith"と"Smyth"はいずれも"S530"に変換
されるため、照合において同じものと判定される。しか
し、この方法は英語の言語的特性に基づいたものである
ため、明らかにそのままでは日本語のカタカナ文字列に
は適用できない。
【0005】
【発明が解決しようとする課題】カタカナ文字列を対象
として、表記のゆれを考慮した文字列照合を行う。その
際、表記のゆれ辞書を用いる方法よりも、手間と記憶容
量の両面で効率的な解決手段を提供する。また、「編集
距離の概念に基づいて、誤りを許容する文字列照合処
理」に比べると、より正確な照合結果を得ることのでき
る解決手段を提供する。
【0006】
【課題を解決するための手段】本発明は、事前に与えた
有限個の異表記同義カタカナ文字列群の集合から、正規
表現により表されるパターンの集合を学習し、それを用
いた変換処理を行ってから照合処理を行うことを要旨と
する。
【0007】本発明の処理のフローを図2に示す。
【0008】所与の異表記同義カタカナ文字列群の集合
(201)を入力し、個々の異表記同義カタカナ文字列群に
対して、まず、共通部分文字列抽出処理(202)を行う。
ここでは、個々の異表記同義カタカナ文字列群を構成す
る全てのカタカナ文字列に共通する部分文字列群を抽出
する。この処理は、遺伝子情報処理などで用いられてい
る「多重アラインメント処理」(参考文献:小長谷明
彦、「遺伝子とコンピュータ」、共立出版、2000)に相
当する処理である。多重アラインメント処理に関して
は、動的計画法などにより効率的に処理を行う手法が提
唱されている他、CLUSTAL W(参考文献:ThompsonJ.D.,
Higgins D.G., Gibson T.J.;"CLUSTAL W: improving t
he sensitivity ofprogressive multiple sequence ali
gnment through sequence weighting, position-specif
ic gap penalties and weight matrix choice."; Nucle
ic Acids Res. 22:4673-4680(1994).)などのフリーソ
フトウエアも公開されている。異表記同義カタカナ文字
列群からの共通部分文字列群の抽出は、遺伝子情報処理
における多重アラインメント処理に比べると、基本処理
において文字単位での一致か不一致かだけを判定するだ
けでよい。このため、全ての文字列対を作成した上で、
文字単位の不一致数を変化させながら逐次処理を行うと
いう簡略的な手法で実装可能である。
【0009】次に、パターン生成処理(204)を行う。こ
こではまず、抽出した共通部分文字列群とその抽出元で
ある所与の異表記同義カタカナ文字列群の照合を行い、
以下の手順に従い、正規表現を生成する。生成する正規
表現としては、Perlで採用されているもの(参考文献、
Larry Wall他、「プログラミングPerl 改訂版」、オラ
イリージャパン、1997)に準拠したものとし、かつ、第
1の部分と第2の部分と第3の部分とから構成されるもの
とする。
【0010】(1)共通部分文字列群全体にわたって、隣
接する2つの要素を、前要素と後要素として取り出す。
前要素の末尾の文字を元に、第1の部分を生成する。後
要素の先頭の文字を元に、第3の部分を生成する。抽出
元の所与の異表記同義カタカナ文字列群の各カタカナ文
字列ごとに、前要素と後要素の間に位置する部分文字列
を検出し、その数が2以上の場合はOR記号(|)でそれぞれ
を連結し、その数が1の場合は「0または1の量指定子」
(?)を該部分文字列に後続させることにより、第2の部分
を生成する。第1の部分と第2の部分と第3の部分を連結
することにより、正規表現を生成する。
【0011】(2)共通部分文字列群の最初の要素につい
ては、抽出元の所与の異表記同義カタカナ文字列群の各
カタカナ文字列ごとに、該要素の前に位置する部分文字
列が存在するかどうかを調べる。存在する場合は、第1
の要素を「文字列の先頭を表す記号」(^)とし、第3の要
素は該要素の先頭の文字を元に生成し、第2の要素は該
要素の前に位置する部分文字列が2つ以上存在する場合
はそれらをOR記号(|)で連結し、1つの場合は「0または1
の量指定子」(?)を該部分文字列に後続させることによ
り生成する。存在しない場合は、共通部分文字列群の最
初の要素を前要素、次の要素を後要素として、上記(1)
の処理を行う。
【0012】(3)共通部分文字列群の最後の要素につい
ては、抽出元の所与の異表記同義カタカナ文字列群の各
カタカナ文字列ごとに、該要素の後に位置する部分文字
列が存在するかどうかを調べる。存在する場合は、第3
の要素を「文字列の末尾を表す記号」($)とし、第1の要
素は該要素の末尾の文字を元に生成し、第2の要素は該
要素の後に位置する部分文字列が2つ以上存在する場合
はそれらをOR記号(|)で連結し、1つの場合は「0または1
の量指定子」(?)を該部分文字列に後続させることによ
り生成する。存在しない場合は、共通部分文字列群の最
後の要素を後要素、その直前の要素を前要素として、上
記(1)の処理を行う。
【0013】上記の手順により生成した正規表現に対し
て、先頭部分から順にたどり、OR記号(|)または「0また
は1の量指定子」(?)による選択肢部分では選択肢のう
ち、その長さが最も長いものを選択することにより、代
表文字列を生成する。
【0014】正規表現とそれに対応する代表文字列の対
をパターンとし、パターン集合(205)に対して出力す
る。
【0015】照合対象の複数個のカタカナ文字列(206)
を入力し、パターン集合(205)を用いて、事前変換処理
(207)を行う。ここではまず、複数個のカタカナ文字列
(206)の各々と、パターン集合(205)の要素中の各正規表
現との照合を行う。照合一致の場合には、該カタカナ文
字列の照合一致部分を該正規表現と対応する代表文字列
に変換し、変換後複数カタカナ文字列(208)を出力す
る。上記の処理は、パターン集合(205)の各要素中の代
表文字列の長さが最も長いものから順に行う。
【0016】最後に、変換後複数カタカナ文字列(208)
を対象として、変換後照合処理(209)を行い、照合結果
(210)を出力する。ここでの照合処理は、文字単位によ
る通常の文字列照合処理を行う。
【0017】以上の処理にあたって、所与の異表記同義
カタカナ文字列群の集合(201)と複数個のカタカナ文字
列(206)とにおいて指定するカタカナ文字列中に、半角
カタカナが存在していた場合、これを全角カタカナに変
換してから処理を行う。これにより、パターン集合(20
5)におけるパターンの表現が容易になる。ここで、半角
カタカナから全角カタカナへの変換は、変換表を用いる
ことで容易に実施可能である。
【0018】
【発明の実施の形態】
【0019】
【実施例1】本発明の第1の実施例を以下に説明する。
所与の異表記同義カタカナ文字列群の集合(201)とし
て、図3を与える。図3において、各行が異表記同義カ
タカナ文字列群を表しており、各行内において互いに異
表記同義であるカタカナ文字列はそれぞれカンマで区切
られている。
【0020】図4は、図3の異表記同義カタカナ文字列
群の集合に対して、共通部分文字列抽出処理(202)を行
って得られる共通部分文字列群の集合(203)である。図
4において各行は、図3の各行に対応した共通部分文字
列群を表している。
【0021】図5は、図3の異表記同義カタカナ文字列
群の集合と、図4の共通部分文字列群の集合から、パタ
ーン生成処理(204)を行って得られるパターン集合(205)
である。図5において各行は、生成された正規表現とそ
れに対応する代表文字列の対を、タブで区切る形式で表
している。
【0022】パターン集合(205)として図5のものを、
複数個のカタカナ文字列(206)として、第1文字列「フェ
イスクリーム」と第2文字列「フェースクリーム」との2
つの文字列を与えた場合を考える。事前変換処理(207)
において、図5中の正規表現のうち、「ェ(ー|イ)
ス」が第1文字列と第2文字列とに照合一致し、第1文字
列の照合部分文字列「ェイス」と第2文字列の照合部分
文字列「ェース」とをそれぞれ、代表文字列「ェース」
に変換する。この処理の結果、第1文字列から「フェー
スクリーム」が、第2文字列から「フェースクリーム」
がそれぞれ得られ、変換後複数カタカナ文字列(208)と
なる。これに対して、変換後照合処理(209)を行うと、
照合一致という照合結果(210)が得られる。
【0023】
【実施例2】
【0024】本発明の請求項3に的を絞り、第2の実施
例を以下に説明する。所与の異表記同義カタカナ文字列
群の集合(201)として、図6を与える。図7は、図6の
異表記同義カタカナ文字列群の集合に対して、共通部分
文字列抽出処理(202)を行って得られる共通部分文字列
群の集合(203)である。図8は、図6の異表記同義カタ
カナ文字列群の集合と、図7の共通部分文字列群の集合
から、パターン生成処理(204)を行って得られるパター
ン集合(205)である。図8では、パターンを構成する正
規表現の第1の部分と第3の部分とを、共通部分文字列か
ら取り出した単一カタカナ文字の子音部分を他の子音に
も置換可能なものとして表現したものとしている。そし
てその目的のために、各カタカナ文字を、それが対応す
る訓令式ローマ字に変換して表現している。ただし、カ
タカナの長音(ー)については、-で表現している。ま
たこれに伴い、代表文字列の表現において、$1と$3とい
う記法により、正規表現の後方参照の機能を利用してい
る。
【0025】パターン集合(205)として図8のものを、
複数個のカタカナ文字列(206)として、第1文字列「メイ
カー」と第2文字列「メーカー」との2つの文字列を与え
た場合について説明する。図8のパターンは訓令式ロー
マ字を用いて表現されているため、事前変換処理(207)
においては、まず第1文字列と第2文字列とをそれぞれ、
訓令式ローマ字表現に変換し、第1文字列「meika-」と
第2文字列「me-ka-」を得る。図8中の正規表現のう
ち、「([^aiueo])e(i|-)([^aiueo])a」がが第1文字列と
第2文字列とに照合一致し、第1文字列の照合部分文字列
「meika」と第2文字列の照合部分文字列「me-ka」とを
それぞれ、代表文字列「meika」に変換する。この処理
の結果、第1文字列から「meika-」が、第2文字列から
「meika-」がそれぞれ得られ、変換後複数カタカナ文字
列(208)となる。 これに対して、変換後照合処理(209)
を行うと、照合一致という照合結果(210)が得られる。
【0026】
【発明の効果】本発明によれば、表記がゆれたカタカナ
文字列同志であっても、正しく照合結果を得ることがで
きるということができ、かつ、「表記のゆれ辞書」では
なくパターンを用いることで、手間と記憶容量の両面で
効率が良いという格段の効果を得ることができる。
【図面の簡単な説明】
【図1】カタカナ文字列における表記のゆれの例であ
る。
【図2】処理フローである。
【図3】所与の異表記同義カタカナ文字列群の集合の例
である。(実施例1)
【図4】共通部分文字列群の集合の例である。(実施例
1)
【図5】パターン集合の例である。(実施例1)
【図6】所与の異表記同義カタカナ文字列群の集合の例
である。(実施例2)
【図7】共通部分文字列群の集合の例である。(実施例
2)
【図8】パターン集合の例である。(実施例2)
【符号の説明】
201 所与の異表記同義カタカナ文字列群の集合 202 共通部分文字列抽出処理 203 共通部分文字列群の集合 204 パターン生成処理 205 パターン集合 206 複数個のカタカナ文字列 207 事前変換処理 208 変換後複数カタカナ文字列 209 変換後照合処理 210 照合結果

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 コンピュータを用いて複数個のカタカナ
    文字列(206)の照合処理を行う方法であって、所与の異
    表記同義カタカナ文字列群の集合(201)から共通部分文
    字列群の集合(203)を抽出する共通部分文字列抽出処理
    (202)と、前記共通部分文字列群の集合(203)の要素を構
    成する各々の共通部分文字列と前記異表記同義カタカナ
    文字列群の集合(201)の要素を構成する各々のカタカナ
    文字列との相違部分を検出し、前記共通部分文字列の一
    部と合わせて正規表現を生成し、さらに前記正規表現か
    ら代表文字列を生成して前記正規表現と前記代表文字列
    を合わせてパターン集合(205)として出力するパターン
    生成処理(204)と、前記複数個のカタカナ文字列(206)の
    各々と、前記パターン集合(205)の要素中の各正規表現
    との照合を行い、照合一致した場合には、該カタカナ文
    字列の照合部分を該正規表現と対応する代表文字列に変
    換する事前変換処理(207)と、前記事前変換処理(207)が
    出力する変換後複数カタカナ文字列(208)を対象として
    照合処理を行う変換後照合処理(209)と、からなるカタ
    カナ文字列照合方法。
  2. 【請求項2】 パターン生成処理(204)が生成する正規
    表現は、第1の部分と第2の部分と第3の部分とから構成
    され、前記第1の部分は文字列先頭を表す記号または単1
    カタカナ文字のいずれか1つから構成され、前記第3の部
    分は文字列末尾を表す記号または単1カタカナ文字のい
    ずれか1つから構成されることを特徴とする請求項1の
    カタカナ文字列照合方法。
  3. 【請求項3】 パターン生成処理(204)が生成する正規
    表現は、第1の部分と第2の部分と第3の部分とから構成
    され、前記第1の部分は文字列先頭を表す記号または単1
    カタカナ文字の子音部分を他の子音にも置換可能なもの
    として表現したもののいずれか1つから構成され、前記
    第3の部分は文字列末尾を表す記号または単1カタカナ文
    字の子音部分を他の子音にも置換可能なものとして表現
    したもののいずれか1つから構成されることを特徴とす
    る請求項1のカタカナ文字列照合方法。
  4. 【請求項4】 パターン生成処理(204)における、正規
    表現からの代表文字列の生成は、生成しうる最長の文字
    列を生成することにより行い、事前変換処理(207)にお
    ける、複数個のカタカナ文字列(206)の各々とパターン
    集合(205)の要素中の各正規表現との照合は、該正規表
    現に対応する代表文字列の長さが最も長いものから順に
    実施することを特徴とする請求項1のカタカナ文字列照
    合方法。
  5. 【請求項5】 請求項1または請求項2または請求項3
    または請求項4において、カタカナ文字列は全て全角カ
    タカナに事前に変換して処理することを特徴とするカタ
    カナ文字列照合法。
  6. 【請求項6】 請求項1または請求項2または請求項3
    または請求項4または請求項5のカタカナ文字列照合方
    法を実行させるためのプログラムを記録したコンピュー
    タ読み取り可能な記録媒体。
JP2000282061A 2000-09-18 2000-09-18 カタカナ文字列照合方法及びカタカナ文字列照合プログラムを記録した媒体 Pending JP2002091951A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000282061A JP2002091951A (ja) 2000-09-18 2000-09-18 カタカナ文字列照合方法及びカタカナ文字列照合プログラムを記録した媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000282061A JP2002091951A (ja) 2000-09-18 2000-09-18 カタカナ文字列照合方法及びカタカナ文字列照合プログラムを記録した媒体

Publications (1)

Publication Number Publication Date
JP2002091951A true JP2002091951A (ja) 2002-03-29

Family

ID=18766627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000282061A Pending JP2002091951A (ja) 2000-09-18 2000-09-18 カタカナ文字列照合方法及びカタカナ文字列照合プログラムを記録した媒体

Country Status (1)

Country Link
JP (1) JP2002091951A (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62290967A (ja) * 1986-06-10 1987-12-17 Nec Corp 表記のゆれ統一方式
JPH0721182A (ja) * 1993-07-02 1995-01-24 Matsushita Electric Ind Co Ltd 文字処理装置およびその方法
JPH08263508A (ja) * 1995-03-24 1996-10-11 Hitachi Ltd 文書検索方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62290967A (ja) * 1986-06-10 1987-12-17 Nec Corp 表記のゆれ統一方式
JPH0721182A (ja) * 1993-07-02 1995-01-24 Matsushita Electric Ind Co Ltd 文字処理装置およびその方法
JPH08263508A (ja) * 1995-03-24 1996-10-11 Hitachi Ltd 文書検索方法

Similar Documents

Publication Publication Date Title
Oflazer Error-tolerant finite state recognition with applications to morphological analysis and spelling correction
US6401060B1 (en) Method for typographical detection and replacement in Japanese text
JP3672242B2 (ja) パターン検索方法、パターン検索装置、コンピュータプログラム及び記憶媒体
Asahara et al. Japanese named entity extraction with redundant morphological analysis
EP1091303B1 (en) Method and system for providing alternatives for text derived from stochastic input sources
CN102063508B (zh) 基于广义后缀树的中文搜索引擎模糊自动补全方法
JP2007004633A (ja) 言語モデル作成装置およびそれにより作成された言語モデルを使用する言語処理装置
WO2000070505A1 (en) Method for rule-based correction of spelling and grammar errors
Reddy et al. Unsupervised discovery of rhyme schemes
JP2010505208A (ja) タイピング効率向上のためのタイピング候補の生成方法
WO2011086637A1 (ja) 要求抽出システム、要求抽出方法および要求抽出プログラム
Kann et al. Implementation aspects and applications of a spelling correction algorithm
Ghafour et al. AEDA: Arabic edit distance algorithm Towards a new approach for Arabic name matching
Lehal Design and implementation of Punjabi spell checker
EP3557451A1 (en) Method for determining output data for a plurality of text documents
JP2002091951A (ja) カタカナ文字列照合方法及びカタカナ文字列照合プログラムを記録した媒体
KR20160086255A (ko) 개체의 표면형 문자열 용례학습기반에 의한 텍스트에서의 개체 범위 인식 장치 및 그 방법
JP6545634B2 (ja) 情報処理装置、情報処理方法およびプログラム
Kumolalo et al. Development of a syllabicator for Yorùbá language
Aziz et al. A hybrid model for spelling error detection and correction for Urdu language
JPH11238051A (ja) 中国語入力変換処理装置、中国語入力変換処理方法、中国語入力変換処理プログラムを記録した記録媒体
JP2005063030A (ja) 概念表現方法、概念表現生成方法及び概念表現生成装置並びに該方法を実現するプログラム及び該プログラムが記録された記録媒体
Esch et al. A query suggestion workflow for life science IR-systems
JP2792147B2 (ja) 文字処理方法およびその装置
Goonawardena et al. Automated spelling checker and grammatical error detection and correction model for sinhala language

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20031224