JPH06223114A - 文字列処理方式 - Google Patents
文字列処理方式Info
- Publication number
- JPH06223114A JPH06223114A JP5029737A JP2973793A JPH06223114A JP H06223114 A JPH06223114 A JP H06223114A JP 5029737 A JP5029737 A JP 5029737A JP 2973793 A JP2973793 A JP 2973793A JP H06223114 A JPH06223114 A JP H06223114A
- Authority
- JP
- Japan
- Prior art keywords
- character string
- string
- code
- character
- frequency
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【目的】 入力される文字コード情報が、ASCIIコー
ド列であっても、該ASCIIコード以外のコード列であ
っても、各々に応じて特定の文字列を切り出し、文章の
種類を分類する。 【構成】 8ビット単位で文字コード入力を行い、対象
とする文字列かどうかを判断し、英文の場合は記号以外
すべてを対象とし、日本語の場合は漢字文字列と片仮名
文字列を対象とする。対象文章中の単語の総数と、語彙
数とで定義されるG値より英文の場合には、一般英文テ
キストと技術文章などとを分類可能とし、日本語文章の
場合には、通常日本語文章と、技術文章等(広告文章、
マニュアル、カタログ等)とを分類可能とする。
ド列であっても、該ASCIIコード以外のコード列であ
っても、各々に応じて特定の文字列を切り出し、文章の
種類を分類する。 【構成】 8ビット単位で文字コード入力を行い、対象
とする文字列かどうかを判断し、英文の場合は記号以外
すべてを対象とし、日本語の場合は漢字文字列と片仮名
文字列を対象とする。対象文章中の単語の総数と、語彙
数とで定義されるG値より英文の場合には、一般英文テ
キストと技術文章などとを分類可能とし、日本語文章の
場合には、通常日本語文章と、技術文章等(広告文章、
マニュアル、カタログ等)とを分類可能とする。
Description
【0001】
【技術分野】本発明は、文字列処理方式に関し、より詳
細には、入力される文字コード情報が、ASCII(Amer
ican Standard Code for Information Interchange:ア
メリカの情報交換用標準コード)コード列であるか、ま
たはJIS(Japanese Industrial Standard:日本工業
規格)コード列,EUC(Extended UNIX Code;拡張ユ
ニックスコード)コード列であるかにかかわりなく、各
々に応じて特定の文字列を切り出すことを可能にした文
字列処理方式に関する。
細には、入力される文字コード情報が、ASCII(Amer
ican Standard Code for Information Interchange:ア
メリカの情報交換用標準コード)コード列であるか、ま
たはJIS(Japanese Industrial Standard:日本工業
規格)コード列,EUC(Extended UNIX Code;拡張ユ
ニックスコード)コード列であるかにかかわりなく、各
々に応じて特定の文字列を切り出すことを可能にした文
字列処理方式に関する。
【0002】
【従来技術】人間が使用するいわゆる「自然言語」を機
械的に処理し、これを自動的に理解させようという試み
は古くから行なわれてきた。自然言語の翻訳が機械的に
可能になったと主張するシステムもあるが、これも対象
とする分野が限定される場合のみに可能である。他方、
文章の著者が不明の場合、これを推測するためのソフト
ウェアが市販されたことがある(Tankard,J;“The lit
erary detective",Byte 1986,February,pp231)。こ
のソフトは英語用で単にn個の文字列(n−gramと呼ば
れている)の頻度の類似性を比べるだけであるが、著者
の傾向を強く反映すると言われている。また一方、文字
列をより汎用性の高い法則で記述しようという試みも古
くからなされている。Zipfによって提案された、い
わゆるZipfの法則は言語の種類に寄らず成り立つと
言われており(Zipf,G.K.“The psycho-biology of la
nguage",The MIT Press(1965),Originally printed b
y Houghton MifflinCo.1935)、次の関係式で表され
る。 f×r=一定 …(1) ここで、fはある単語の頻度(一定数の単語中に特定の
単語がどれくらいあるか=例えば普通英語の the は100
0単語中50くらい存在する)で、rは対象とする単語
の頻度の順位(上の例 the ではr=1)である。
械的に処理し、これを自動的に理解させようという試み
は古くから行なわれてきた。自然言語の翻訳が機械的に
可能になったと主張するシステムもあるが、これも対象
とする分野が限定される場合のみに可能である。他方、
文章の著者が不明の場合、これを推測するためのソフト
ウェアが市販されたことがある(Tankard,J;“The lit
erary detective",Byte 1986,February,pp231)。こ
のソフトは英語用で単にn個の文字列(n−gramと呼ば
れている)の頻度の類似性を比べるだけであるが、著者
の傾向を強く反映すると言われている。また一方、文字
列をより汎用性の高い法則で記述しようという試みも古
くからなされている。Zipfによって提案された、い
わゆるZipfの法則は言語の種類に寄らず成り立つと
言われており(Zipf,G.K.“The psycho-biology of la
nguage",The MIT Press(1965),Originally printed b
y Houghton MifflinCo.1935)、次の関係式で表され
る。 f×r=一定 …(1) ここで、fはある単語の頻度(一定数の単語中に特定の
単語がどれくらいあるか=例えば普通英語の the は100
0単語中50くらい存在する)で、rは対象とする単語
の頻度の順位(上の例 the ではr=1)である。
【0003】Zipfはまた別の関係式である、いわゆ
る第2Zipfの法則を提案している。 k×f2=一定 …(2) ただし、kは同一の発生頻度値fを持つ単語の数(例え
ば、英語の the と aが同じ頻度値50があればk=
2)である。更により一般化された表現は Mandelbrot
(Mandelbrot,B.B.“Fractal Geometry of Nature",
W.H.Freeman and Co.,New York,1982)や Booth(Boo
th,A.D.“A law of Occurrences for Wordsof Low Fre
quency",Information and Control,10(4);386-393(19
67))が導いている。しかし、いずれの公式、あるいは
法則を使ったとしても、図8に示すように、その近似精
度は良くない。すなわち、図10において、帯状黒線は
C Language(C言語)、帯状点線は non-native Engli
sh(英語を母国語としない人が書いた英語)であり、横
軸が Numerical Order(頻度順位)、縦軸がZipfの
第2法則(2)式を表わしている。横軸の頻度順位は、
右側に行くに従って頻度が低いことになる。帯状黒線及
び帯状点線ともに右下りの特性を示し、頻度の高いもの
については両者の識別ができたとしても、頻度が低くな
るにつれ混在した状態となり、その識別がはっきりしな
いことがわかる。なお、図中の対象文章は、英語を母国
語としない人が書いた英語の技術文章と、コンピュータ
言語の1つであるC言語についてプロットしたものであ
る。その他の各種文章も試みたが、近似度はいずれも良
くない。
る第2Zipfの法則を提案している。 k×f2=一定 …(2) ただし、kは同一の発生頻度値fを持つ単語の数(例え
ば、英語の the と aが同じ頻度値50があればk=
2)である。更により一般化された表現は Mandelbrot
(Mandelbrot,B.B.“Fractal Geometry of Nature",
W.H.Freeman and Co.,New York,1982)や Booth(Boo
th,A.D.“A law of Occurrences for Wordsof Low Fre
quency",Information and Control,10(4);386-393(19
67))が導いている。しかし、いずれの公式、あるいは
法則を使ったとしても、図8に示すように、その近似精
度は良くない。すなわち、図10において、帯状黒線は
C Language(C言語)、帯状点線は non-native Engli
sh(英語を母国語としない人が書いた英語)であり、横
軸が Numerical Order(頻度順位)、縦軸がZipfの
第2法則(2)式を表わしている。横軸の頻度順位は、
右側に行くに従って頻度が低いことになる。帯状黒線及
び帯状点線ともに右下りの特性を示し、頻度の高いもの
については両者の識別ができたとしても、頻度が低くな
るにつれ混在した状態となり、その識別がはっきりしな
いことがわかる。なお、図中の対象文章は、英語を母国
語としない人が書いた英語の技術文章と、コンピュータ
言語の1つであるC言語についてプロットしたものであ
る。その他の各種文章も試みたが、近似度はいずれも良
くない。
【0004】
【目的】本発明は、上述のごとき実情に鑑みてなされた
もので、入力される文字コード情報がASCIIコード列
であっても、JISコード列,EUCコード列であって
も、各々に応じて特定の文字列を切り出すことのできる
ようにした文字列処理方式を提供することを目的として
なされたものである。
もので、入力される文字コード情報がASCIIコード列
であっても、JISコード列,EUCコード列であって
も、各々に応じて特定の文字列を切り出すことのできる
ようにした文字列処理方式を提供することを目的として
なされたものである。
【0005】
【構成】本発明は、上記目的を達成するために、(1)
入力される文字コード情報が、ASCIIコード列である
か該ASCIIコード列以外のコード列であるかを問わず
に受け付けると共に、それぞれに応じて特定の文字列を
切り出すこと、或いは、(2)入力コード列がASCII
コード列以外のコードの場合は、ひらがな以外の文字列
の一部又は全部を切り出し、切り出された文字列の統計
量をとることで対象とする文章の種類を推測すること、
或いは、(3)日本語文字列を対象とするとき、漢字文
字列の最初のx文字(xは2〜4の整数)と片仮名文字
列の最初のy個の(yは4〜6の整数)文字列の発生頻
度等の統計量を利用して対象とする日本語文字列を分類
すること、更には、(4)前記(3)において、前記片
仮名にASCIIコード以外のコードの長音記号を含める
こと、(5)日本語文字列の統計処理において、 G=log(N/L)/{log(N)−1} (N:対象文章中の単語の総数、L:語彙数) のパラメータGによって、対象日本語文字列の属性を判
定すること、更には、(6)前記(2),(3)又は
(4)において、アルファベットの文字列の頻度情報も
算出すると同時に、抽出された文字列の相対頻度が、10
00単語当たり3〜20の範囲の文字列を対象とする文書
のキーワードとして登録することを特徴としたものであ
る。以下、本発明の実施例に基いて説明する。
入力される文字コード情報が、ASCIIコード列である
か該ASCIIコード列以外のコード列であるかを問わず
に受け付けると共に、それぞれに応じて特定の文字列を
切り出すこと、或いは、(2)入力コード列がASCII
コード列以外のコードの場合は、ひらがな以外の文字列
の一部又は全部を切り出し、切り出された文字列の統計
量をとることで対象とする文章の種類を推測すること、
或いは、(3)日本語文字列を対象とするとき、漢字文
字列の最初のx文字(xは2〜4の整数)と片仮名文字
列の最初のy個の(yは4〜6の整数)文字列の発生頻
度等の統計量を利用して対象とする日本語文字列を分類
すること、更には、(4)前記(3)において、前記片
仮名にASCIIコード以外のコードの長音記号を含める
こと、(5)日本語文字列の統計処理において、 G=log(N/L)/{log(N)−1} (N:対象文章中の単語の総数、L:語彙数) のパラメータGによって、対象日本語文字列の属性を判
定すること、更には、(6)前記(2),(3)又は
(4)において、アルファベットの文字列の頻度情報も
算出すると同時に、抽出された文字列の相対頻度が、10
00単語当たり3〜20の範囲の文字列を対象とする文書
のキーワードとして登録することを特徴としたものであ
る。以下、本発明の実施例に基いて説明する。
【0006】まず、本発明による文字列処理方式を説明
するために、次の(3)式を定義する。 G=log(N/L)/{log(N)−1} …(3) なお、この式において、Nは対象文章中の単語の総数、
Lは語彙数(異なる綴りを持つ単語の数)である。ここ
で、異なる綴りはすべて異なる単語と定義しているから
通常の意味での語彙数とは異なる。単語の定義として
は、以下に示す表1の単語の区切り記号で仕切られる”
ブランク以外の文字列”をすべて単語とした。
するために、次の(3)式を定義する。 G=log(N/L)/{log(N)−1} …(3) なお、この式において、Nは対象文章中の単語の総数、
Lは語彙数(異なる綴りを持つ単語の数)である。ここ
で、異なる綴りはすべて異なる単語と定義しているから
通常の意味での語彙数とは異なる。単語の定義として
は、以下に示す表1の単語の区切り記号で仕切られる”
ブランク以外の文字列”をすべて単語とした。
【0007】
【表1】
【0008】これをASCIIコード列(英文など)に適
用すると、図1に示すように、1つの文章では式(3)
の値がほぼ一定と言う関係が成り立つ。図1において、
横軸は総単語数 log(N)、縦軸は総単語数を語彙数で割
ったもの log(N/L)を示し、対象文章として、msreadm
e,doc はマニュアル、shogun は小説、maildoc は手紙
文、nlpexl,cはC言語、newswk1,txt は雑誌記事、japa
tx.6-1 は小学生6年の国語教科書のローマ字表記のも
のである。いずれの対象文章においても右上りの一定の
関係が成り立っていることがわかる。
用すると、図1に示すように、1つの文章では式(3)
の値がほぼ一定と言う関係が成り立つ。図1において、
横軸は総単語数 log(N)、縦軸は総単語数を語彙数で割
ったもの log(N/L)を示し、対象文章として、msreadm
e,doc はマニュアル、shogun は小説、maildoc は手紙
文、nlpexl,cはC言語、newswk1,txt は雑誌記事、japa
tx.6-1 は小学生6年の国語教科書のローマ字表記のも
のである。いずれの対象文章においても右上りの一定の
関係が成り立っていることがわかる。
【0009】更にここでもう1つのパラメータを導入す
る。今、横軸に単語の頻度順位(rank order)を対数単
位で、縦軸に単語の文字数(word length)をそれぞれ
とると図2の様になる。図中、fanty1と書いてあるの
は対象とする文章の名称である。図2において、縦軸は
文字数、横軸は頻度順位 log(n)を示しており、右側に
行くほど頻度順位は低くなる。図2から分かるとおり、
頻度の高い単語はその文字数が短い。これは一般的に知
られていることであり、良く使われる単語ほど省略され
たり、短く言い換えられたりすることによる。このグラ
フの凹凸の様子を次の相関係数Rで表す。
る。今、横軸に単語の頻度順位(rank order)を対数単
位で、縦軸に単語の文字数(word length)をそれぞれ
とると図2の様になる。図中、fanty1と書いてあるの
は対象とする文章の名称である。図2において、縦軸は
文字数、横軸は頻度順位 log(n)を示しており、右側に
行くほど頻度順位は低くなる。図2から分かるとおり、
頻度の高い単語はその文字数が短い。これは一般的に知
られていることであり、良く使われる単語ほど省略され
たり、短く言い換えられたりすることによる。このグラ
フの凹凸の様子を次の相関係数Rで表す。
【0010】
【数1】
【0011】Σはサンプル点の数だけ加算することを示
す演算子である。また、X、Yは観測値xまたはyがそ
の平均値mから、どれほどずれているかを示すもので、 X=x−m で定義される。そしてx、yはそれぞれ図2の頻度順位
log(n)とWord_length(単語文字数)を表してい
る。
す演算子である。また、X、Yは観測値xまたはyがそ
の平均値mから、どれほどずれているかを示すもので、 X=x−m で定義される。そしてx、yはそれぞれ図2の頻度順位
log(n)とWord_length(単語文字数)を表してい
る。
【0012】図3は、ASCIIコードからなる各種文書
に対して行なった測定結果を示す図である。図3におい
て、縦軸は前記(3)式で定義されるG、横軸は前記
(4)式で表わされる相関係数Rである。図中、□:En
glish text は一般の英文テキスト、x:restricted-En
glish Text は技術文献、マニュアル、専門家知識等、
O:Computer Language はコンピュータ言語である。図
から明らかなように、X印及びO印は混在しながらもG
値の上方に位置し、□印はG値の下方に位置している。
このことから、図中の破線によって通常の英文文章と、
制限された環境で使われる文章(例えば、カタログ、文
献リスト、故障診断の知識およびコンピュータ言語)と
を分類することができる。
に対して行なった測定結果を示す図である。図3におい
て、縦軸は前記(3)式で定義されるG、横軸は前記
(4)式で表わされる相関係数Rである。図中、□:En
glish text は一般の英文テキスト、x:restricted-En
glish Text は技術文献、マニュアル、専門家知識等、
O:Computer Language はコンピュータ言語である。図
から明らかなように、X印及びO印は混在しながらもG
値の上方に位置し、□印はG値の下方に位置している。
このことから、図中の破線によって通常の英文文章と、
制限された環境で使われる文章(例えば、カタログ、文
献リスト、故障診断の知識およびコンピュータ言語)と
を分類することができる。
【0013】このことは、英語の文章の中身を知らなく
ても、荒い分類が迅速に出来ることを示している。なぜ
なら、英語の単語や文法の知識を一切必要としないし、
しかも、最初の500単語程度の情報があれば、文字列
の頻度だけて大雑把な分類が出来るわけである。したが
って、将来、電子図書館が出来た暁には、自分の欲しい
図書の分野を、本発明の方法によって容易に絞り込むこ
とが出来る。もし、いくつかの代表的な英語単語、例え
ば、the,is,are,it,thatなどの頻度と組み合わせれ
ば、更に精度の良い分類が可能であることは言うまでも
ない。
ても、荒い分類が迅速に出来ることを示している。なぜ
なら、英語の単語や文法の知識を一切必要としないし、
しかも、最初の500単語程度の情報があれば、文字列
の頻度だけて大雑把な分類が出来るわけである。したが
って、将来、電子図書館が出来た暁には、自分の欲しい
図書の分野を、本発明の方法によって容易に絞り込むこ
とが出来る。もし、いくつかの代表的な英語単語、例え
ば、the,is,are,it,thatなどの頻度と組み合わせれ
ば、更に精度の良い分類が可能であることは言うまでも
ない。
【0014】以上は英語の文章について明らかになった
性質であるが、日本語に適用する場合の問題点は単語の
切り出しである。幸い、日本語は通常4種類の字種を使
うことが多い。すなわち、漢字、ひらがな、片仮名、そ
して、アルファベットである。ひらがなを除く文字列
は、文章中に独立して現われることが多く、英語におけ
る単語的な役割を演じていると考えられる。日本語の文
書中の対象単語は、以下の定義によって切り出す。 (1)1バイト目の最初のビットが0であれば、これを
ASCII文字列と見なし、2ビット目以下のコードによ
って文字を同程する。このとき、数字またはアルファベ
ットが連続する限り、これを1つの単語文字列と見な
す。また、大文字と小文字の区別はしない。最大20文
字までを抽出する。 (2)1バイト目の最初のビットが1であれば、これを
JIS文字列と見なし、2バイトを1セットとして文字
種類の区別を以下のように行う。第1バイトがJISコ
ードで "a5" 以上 "a6" 未満か、または第1バイト
が "a1" で第2バイトが "bc" か、あるいは第1バ
イトが "a1" で第2バイトが "c3" ならば、最大5
文字までを抽出する。 (3)1バイト目の最初のビットが1であれば、これを
JIS文字列と見なし、2バイトを1セットとして文字
種類の区別を以下のように行う。第1バイトがJISコ
ードで "b4" 以上 "f5" 未満を漢字文字列として最
大2文字まで抽出する。 (4)1バイト目の最初のビットが1であれば、これを
JIS文字列と見なし、2バイトを1セットとして文字
種類の区別を以下のように行う。第1バイトがJISコ
ードで "a3" ならば、全角英数文字列として最大20
文字まで抽出する。このように、コードを見るだけでア
ルファベット(ASCII)とJISは異なるから、異な
った切り出し方法を適用することも可能である。
性質であるが、日本語に適用する場合の問題点は単語の
切り出しである。幸い、日本語は通常4種類の字種を使
うことが多い。すなわち、漢字、ひらがな、片仮名、そ
して、アルファベットである。ひらがなを除く文字列
は、文章中に独立して現われることが多く、英語におけ
る単語的な役割を演じていると考えられる。日本語の文
書中の対象単語は、以下の定義によって切り出す。 (1)1バイト目の最初のビットが0であれば、これを
ASCII文字列と見なし、2ビット目以下のコードによ
って文字を同程する。このとき、数字またはアルファベ
ットが連続する限り、これを1つの単語文字列と見な
す。また、大文字と小文字の区別はしない。最大20文
字までを抽出する。 (2)1バイト目の最初のビットが1であれば、これを
JIS文字列と見なし、2バイトを1セットとして文字
種類の区別を以下のように行う。第1バイトがJISコ
ードで "a5" 以上 "a6" 未満か、または第1バイト
が "a1" で第2バイトが "bc" か、あるいは第1バ
イトが "a1" で第2バイトが "c3" ならば、最大5
文字までを抽出する。 (3)1バイト目の最初のビットが1であれば、これを
JIS文字列と見なし、2バイトを1セットとして文字
種類の区別を以下のように行う。第1バイトがJISコ
ードで "b4" 以上 "f5" 未満を漢字文字列として最
大2文字まで抽出する。 (4)1バイト目の最初のビットが1であれば、これを
JIS文字列と見なし、2バイトを1セットとして文字
種類の区別を以下のように行う。第1バイトがJISコ
ードで "a3" ならば、全角英数文字列として最大20
文字まで抽出する。このように、コードを見るだけでア
ルファベット(ASCII)とJISは異なるから、異な
った切り出し方法を適用することも可能である。
【0015】図4は、ある日本語文章(マニュアル)の
中から、「JISコードの漢字文字列の最初の2文
字」、「片仮名文字列の最初の5文字」を頻度順に取り
出した図である。ただし、片仮名中の長音は、EUCコ
ード“a1bc”「ー」(横書き片仮名の長音を表わす記
号)を当てるものとする(縦書きの場合は“a1c
3”)。時々、この長音にアルファベットのマイナス、
“−”を誤って当てる場合があるが、この場合、片仮名
列は正しく抽出されない。図4の例では「パ」と「ト」
の間に当てられた記号がこれに相当する。すなわち、
「パ」マイナス「ト」となっている場合には「パート」
として抽出されない。
中から、「JISコードの漢字文字列の最初の2文
字」、「片仮名文字列の最初の5文字」を頻度順に取り
出した図である。ただし、片仮名中の長音は、EUCコ
ード“a1bc”「ー」(横書き片仮名の長音を表わす記
号)を当てるものとする(縦書きの場合は“a1c
3”)。時々、この長音にアルファベットのマイナス、
“−”を誤って当てる場合があるが、この場合、片仮名
列は正しく抽出されない。図4の例では「パ」と「ト」
の間に当てられた記号がこれに相当する。すなわち、
「パ」マイナス「ト」となっている場合には「パート」
として抽出されない。
【0016】図5は、解析結果を示す図で、図中、「N
に丸」が通常の日本語文章(Natural Japanese)、「C
に丸」がカタログ(Catalog)、「Mに丸」がマニュア
ル(Manual)、「Tに丸」が技術文章(Technical)、
「Aに丸」が広告文章(Advertizement)を各々表して
いる。縦軸が前述した(3)式のG、横軸が相関係数R
である。なお、図中に示された対象文章は表2のとおり
である。
に丸」が通常の日本語文章(Natural Japanese)、「C
に丸」がカタログ(Catalog)、「Mに丸」がマニュア
ル(Manual)、「Tに丸」が技術文章(Technical)、
「Aに丸」が広告文章(Advertizement)を各々表して
いる。縦軸が前述した(3)式のG、横軸が相関係数R
である。なお、図中に示された対象文章は表2のとおり
である。
【0017】
【表2】
【0018】図5からわかるように、「文章の種類の違
い」は「相関係数」の値にそれほど依存してないが、G
の値が0.18より上では、それより下の文章と異なっ
ていることがわかる。すなわち、広告文章「Aに丸」、
技術文章「Tに丸」、マニュアル「Mに丸」、カタログ
「Cに丸」は、Gの上方(0.18以上)に位置し、通
常の日本語文章「Nに丸」はGの0.18以下に位置し
ていることがわかる。すなわち、G=0.18を閾値と
して、これ以上を抽出すれば、表3に示されるような通
常日本語文章と分類することができる。
い」は「相関係数」の値にそれほど依存してないが、G
の値が0.18より上では、それより下の文章と異なっ
ていることがわかる。すなわち、広告文章「Aに丸」、
技術文章「Tに丸」、マニュアル「Mに丸」、カタログ
「Cに丸」は、Gの上方(0.18以上)に位置し、通
常の日本語文章「Nに丸」はGの0.18以下に位置し
ていることがわかる。すなわち、G=0.18を閾値と
して、これ以上を抽出すれば、表3に示されるような通
常日本語文章と分類することができる。
【0019】
【表3】
【0020】日本語と英文の違いは各8ビット単位の処
理において、最上位ビットが0であるか否かで区別出来
るから、入ってきた文章がどちらの言語で書かれている
か不明の場合でも、もし最上位ビットが0ならアルファ
ベットで、そうでなければJISコードと見做すことが
出来る。
理において、最上位ビットが0であるか否かで区別出来
るから、入ってきた文章がどちらの言語で書かれている
か不明の場合でも、もし最上位ビットが0ならアルファ
ベットで、そうでなければJISコードと見做すことが
出来る。
【0021】図6は、本発明による文字列処理方式を説
明するためのフローチャートである。以下、各ステップ
に従って順に説明する。step1 :まず、8ビット単位で文字コードを入力する。step2 :次に、入力された文字列の入力が終わったかど
うか、又は予定単語数を越えたかどうかを判断する。step3 :前記step2において、文字列の入力が終わって
いなければ、又は予定単語数を越えていなければ、最初
のビットが1か0かを判断する。step4 :前記step3において、最初のビットが1であれ
ば、日本語と見做して次の8ビットを最初の8ビットに
連結させて、1つの文字として処理する。
明するためのフローチャートである。以下、各ステップ
に従って順に説明する。step1 :まず、8ビット単位で文字コードを入力する。step2 :次に、入力された文字列の入力が終わったかど
うか、又は予定単語数を越えたかどうかを判断する。step3 :前記step2において、文字列の入力が終わって
いなければ、又は予定単語数を越えていなければ、最初
のビットが1か0かを判断する。step4 :前記step3において、最初のビットが1であれ
ば、日本語と見做して次の8ビットを最初の8ビットに
連結させて、1つの文字として処理する。
【0022】step5:前記step3において、最初のビッ
トが0であれば、8ビットを1文字として、以下の処理
を続ける。step6 :次に、対象とする文字列かどうかを判断し、英
文は記号以外すべてを対象とする文字列とし、日本語の
場合は、漢字文字列と片仮名文字列(EUCコードa1b
c,a1c3含む)を対象とする文字列とする。step7 :次に、区切り記号かどうかを判断し、英文とコ
ンピュータ言語の場合は区切り記号を用いて文字列を切
り出す。日本語の場合は、漢字文字列と片仮名文字列
(EUCコードa1bc,a1c3含む)から他の文字列に変
化したかどうかを判断する。step8 :切り出した「単語」候補をメモリに一時記憶す
る。
トが0であれば、8ビットを1文字として、以下の処理
を続ける。step6 :次に、対象とする文字列かどうかを判断し、英
文は記号以外すべてを対象とする文字列とし、日本語の
場合は、漢字文字列と片仮名文字列(EUCコードa1b
c,a1c3含む)を対象とする文字列とする。step7 :次に、区切り記号かどうかを判断し、英文とコ
ンピュータ言語の場合は区切り記号を用いて文字列を切
り出す。日本語の場合は、漢字文字列と片仮名文字列
(EUCコードa1bc,a1c3含む)から他の文字列に変
化したかどうかを判断する。step8 :切り出した「単語」候補をメモリに一時記憶す
る。
【0023】step9:以前登録した「単語」リストに一
時記憶された「単語」候補と同じものかあるかどうかを
判断し、同じものがあれば、その単語の累積頻度値に1
を加算し、同じものがなければ、新たに単語候補を「単
語」としてリストに追加登録する。この時累積頻度値を
1とする。前記 step1に戻る。step10 :前記step2において、文字列の入力が終わり、
または予定単語数を越えていれば、前記(3)式で定義
されるGと、前記(4)式で定義される相関係数Rを算
出する。step11 :前記step10で算出されたRとGによる文章の
分類を行う。
時記憶された「単語」候補と同じものかあるかどうかを
判断し、同じものがあれば、その単語の累積頻度値に1
を加算し、同じものがなければ、新たに単語候補を「単
語」としてリストに追加登録する。この時累積頻度値を
1とする。前記 step1に戻る。step10 :前記step2において、文字列の入力が終わり、
または予定単語数を越えていれば、前記(3)式で定義
されるGと、前記(4)式で定義される相関係数Rを算
出する。step11 :前記step10で算出されたRとGによる文章の
分類を行う。
【0024】その他の応用例として、図4の抽出例で分
かるように、この文書が何に関するものであるのか検討
がつく。前述の実施例には含めなかったが、アルファベ
ットの文字列を含めて、同一文字列の頻度を抽出し、そ
のなかの一定頻度範囲の文字列を「その文書を代表させ
るキーワード」として登録することにより、目的文書の
検索に利用できる。このとき、キーワードとして適当な
頻度の範囲とは、1000単語当たりの出現頻度が3から2
0の範囲であることが分かっている。
かるように、この文書が何に関するものであるのか検討
がつく。前述の実施例には含めなかったが、アルファベ
ットの文字列を含めて、同一文字列の頻度を抽出し、そ
のなかの一定頻度範囲の文字列を「その文書を代表させ
るキーワード」として登録することにより、目的文書の
検索に利用できる。このとき、キーワードとして適当な
頻度の範囲とは、1000単語当たりの出現頻度が3から2
0の範囲であることが分かっている。
【0025】図7は、本発明による文字列処理方式の他
の実施例に基づいた解析結果を示す図で、縦軸にG、横
軸にエントロピーを示している。この図からも分かるよ
うに、G=0.18で「Nに丸」の通常日本語文章とそ
れ以外の文章とをはっきりと分類することができる。今
までは、抽出された文字列(単語)の種類(語い)と全
体の数から求められるパラメータGを論じたが、ここで
新たに高頻度単語間の接続エントロピーについて述べ
る。特に、日本語においては、高い頻度の "単語" が熟
語や成句を作ることがある。たとえば、コンピュータサ
イエンスの分野では、 "ディジタル画像" という言葉が
しばしば出現する。すなわち、"ディジタル" と "画像"
が組になって現われやすい。図8のように、頻度順に
並べた語彙の上位5%の "単語"がお互いにどの単語と
隣り合って存在するか(対象となる文字列のみについて
計測する)を図9に示してある。なお、図8において、
左端の数字は頻度順位、3列目は頻度、4列目は文字列
の総数を1000としたときの相対頻度、5列目はコードの
バイト数である。図9において、7番目のディジタルに
隣接する文字列は、1番の画像が圧倒的に多いことが分
かる。
の実施例に基づいた解析結果を示す図で、縦軸にG、横
軸にエントロピーを示している。この図からも分かるよ
うに、G=0.18で「Nに丸」の通常日本語文章とそ
れ以外の文章とをはっきりと分類することができる。今
までは、抽出された文字列(単語)の種類(語い)と全
体の数から求められるパラメータGを論じたが、ここで
新たに高頻度単語間の接続エントロピーについて述べ
る。特に、日本語においては、高い頻度の "単語" が熟
語や成句を作ることがある。たとえば、コンピュータサ
イエンスの分野では、 "ディジタル画像" という言葉が
しばしば出現する。すなわち、"ディジタル" と "画像"
が組になって現われやすい。図8のように、頻度順に
並べた語彙の上位5%の "単語"がお互いにどの単語と
隣り合って存在するか(対象となる文字列のみについて
計測する)を図9に示してある。なお、図8において、
左端の数字は頻度順位、3列目は頻度、4列目は文字列
の総数を1000としたときの相対頻度、5列目はコードの
バイト数である。図9において、7番目のディジタルに
隣接する文字列は、1番の画像が圧倒的に多いことが分
かる。
【0026】エントロピーは、接続頻度をCi、語彙数
をWとするとき、−(Ci/W) log(Ci/W)を図9の
文字列iについて加算したもので定義される。この場合
は、1.228431となる。ただし、対数の底は2とする。こ
のようにして求めたエントロピーは、きまり文句や熟
語、そして画一的な文体を表現しやすく、事実、技術文
献や宣伝文などに高いスコアが与えられている。したが
って、前出のパラメータGによって分類された文章の文
体を推測することができる。
をWとするとき、−(Ci/W) log(Ci/W)を図9の
文字列iについて加算したもので定義される。この場合
は、1.228431となる。ただし、対数の底は2とする。こ
のようにして求めたエントロピーは、きまり文句や熟
語、そして画一的な文体を表現しやすく、事実、技術文
献や宣伝文などに高いスコアが与えられている。したが
って、前出のパラメータGによって分類された文章の文
体を推測することができる。
【0027】以上のように、本発明による文字列処理方
式を適用することにより、図書館等の蔵書の電子化によ
り大まかな文章の種類の分類・検索が可能である。すな
わち、図書館に収納する前に電子化された文献のG値を
記憶させておくことにより、利用効率は格段に向上し、
また、未電子化の文章も該文献の一頁程度の情報により
G値を求めることができ、文章の種類を識別することが
できる。また、EUCコードについて説明したが、EU
Cコードだけでなく、JISコードでもよい。
式を適用することにより、図書館等の蔵書の電子化によ
り大まかな文章の種類の分類・検索が可能である。すな
わち、図書館に収納する前に電子化された文献のG値を
記憶させておくことにより、利用効率は格段に向上し、
また、未電子化の文章も該文献の一頁程度の情報により
G値を求めることができ、文章の種類を識別することが
できる。また、EUCコードについて説明したが、EU
Cコードだけでなく、JISコードでもよい。
【0028】
【効果】以上の説明から明らかなように、本発明による
と、以下のような効果がある。すなわち、入力される文
字コード情報がASCIIコード列であっても、該ASC
IIコード以外のコード列であっても、各々に応じて特定
の文字列を切り出すことができ、該文字列の頻度に着目
して、電子図書館等における文章の種類の識別や検索が
可能となる。
と、以下のような効果がある。すなわち、入力される文
字コード情報がASCIIコード列であっても、該ASC
IIコード以外のコード列であっても、各々に応じて特定
の文字列を切り出すことができ、該文字列の頻度に着目
して、電子図書館等における文章の種類の識別や検索が
可能となる。
【図1】 本発明による文字列処理方式の一実施例を説
明するための図である。
明するための図である。
【図2】 本発明による文字列処理方式における文字数
と頻度順位との関係を示す図である。
と頻度順位との関係を示す図である。
【図3】 本発明による文字列処理方式における測定結
果を示す図である。
果を示す図である。
【図4】 本発明による文字列処理方式における日本語
文章の中から頻度順に取り入れた図である。
文章の中から頻度順に取り入れた図である。
【図5】 本発明による文字列処理方式における解析結
果を示す図である。
果を示す図である。
【図6】 本発明による文字列処理方式を説明するため
のフローチャートである。
のフローチャートである。
【図7】 本発明による文字列処理方式の他の実施例に
よる解析結果を示す図である。
よる解析結果を示す図である。
【図8】 本発明による文字列処理方式における日本語
文章の語彙を頻度順に並べた図である。
文章の語彙を頻度順に並べた図である。
【図9】 図8において、隣接する単語の存在を示す図
である。
である。
【図10】 従来の文字列処理方式を説明するための図
である。
である。
Claims (6)
- 【請求項1】 入力される文字コード情報が、ASCII
コード列であるか該ASCIIコード列以外のコード列で
あるかを問わずに受け付けると共に、それぞれに応じて
特定の文字列を切り出すことを特徴とする文字列処理方
式。 - 【請求項2】 入力コード列がASCIIコード列以外の
コードの場合は、ひらがな以外の文字列の一部又は全部
を切り出し、切り出された文字列の統計量をとることで
対象とする文章の種類を推測することを特徴とする文字
列処理方式。 - 【請求項3】 日本語文字列を対象とするとき、漢字文
字列の最初のx文字(xは2〜4の整数)と片仮名文字
列の最初のy個の(yは4〜6の整数)文字列の発生頻
度等の統計量を利用して対象とする日本語文字列を分類
することを特徴とする文字列処理方式。 - 【請求項4】 前記片仮名にASCIIコード以外のコー
ドの長音記号を含めることを特徴とする請求項3記載の
文字列処理方式。 - 【請求項5】 日本語文字列の統計処理において、 G=log(N/L)/{log(N)−1} (N:対象文章中の単語の総数、L:語彙数) のパラメータGによって、対象日本語文字列の属性を判
定することを特徴とする文字列処理方式。 - 【請求項6】 アルファベットの文字列の頻度情報も算
出すると同時に、抽出された文字列の相対頻度が、1000
単語当たり3〜20の範囲の文字列を対象とする文書の
キーワードとして登録することを特徴とする請求項2,
3又は4記載の文字列処理方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP02973793A JP3471381B2 (ja) | 1993-01-26 | 1993-01-26 | 文字列処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP02973793A JP3471381B2 (ja) | 1993-01-26 | 1993-01-26 | 文字列処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06223114A true JPH06223114A (ja) | 1994-08-12 |
JP3471381B2 JP3471381B2 (ja) | 2003-12-02 |
Family
ID=12284428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP02973793A Expired - Fee Related JP3471381B2 (ja) | 1993-01-26 | 1993-01-26 | 文字列処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3471381B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008021077A (ja) * | 2006-07-12 | 2008-01-31 | Nec Fielding Ltd | 事例参照システム、事例参照方法、事例蓄積サーバおよびプログラム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6428770A (en) * | 1987-07-24 | 1989-01-31 | Nippon Atomic Ind Group Co | Key word selector |
JPS6441964A (en) * | 1987-08-07 | 1989-02-14 | Nippon Telegraph & Telephone | Method for extracting object sentence inherent word of japanese |
JPH01188934A (ja) * | 1988-01-22 | 1989-07-28 | Nec Corp | 文書自動分類装置 |
JPH03223923A (ja) * | 1990-01-29 | 1991-10-02 | Nec Corp | 不定バイト長文字入力制御方式 |
-
1993
- 1993-01-26 JP JP02973793A patent/JP3471381B2/ja not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6428770A (en) * | 1987-07-24 | 1989-01-31 | Nippon Atomic Ind Group Co | Key word selector |
JPS6441964A (en) * | 1987-08-07 | 1989-02-14 | Nippon Telegraph & Telephone | Method for extracting object sentence inherent word of japanese |
JPH01188934A (ja) * | 1988-01-22 | 1989-07-28 | Nec Corp | 文書自動分類装置 |
JPH03223923A (ja) * | 1990-01-29 | 1991-10-02 | Nec Corp | 不定バイト長文字入力制御方式 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008021077A (ja) * | 2006-07-12 | 2008-01-31 | Nec Fielding Ltd | 事例参照システム、事例参照方法、事例蓄積サーバおよびプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP3471381B2 (ja) | 2003-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7174290B2 (en) | Multi-language document search and retrieval system | |
JP4638599B2 (ja) | データ表示テキストの言語および文字セットを特定する方法 | |
KR100330801B1 (ko) | 언어식별장치및언어식별방법 | |
US5794177A (en) | Method and apparatus for morphological analysis and generation of natural language text | |
US7152056B2 (en) | Apparatus and method for generating data useful in indexing and searching | |
US5752051A (en) | Language-independent method of generating index terms | |
US8762358B2 (en) | Query language determination using query terms and interface language | |
JP3041268B2 (ja) | 中国語誤り検査(cec)システム | |
US7546316B2 (en) | Determining a known character string equivalent to a query string | |
EP1014276A2 (en) | Automatic language identification using both N-Gram and word information | |
CN111428494A (zh) | 专有名词的智能纠错方法、装置、设备及存储介质 | |
JPH0823864B2 (ja) | 見出し判定方法 | |
CN111553155B (zh) | 基于语义结构的口令分词系统及方法 | |
Šantić et al. | Automatic diacritics restoration in Croatian texts | |
JP3471381B2 (ja) | 文字列処理方法 | |
CN113806491A (zh) | 一种信息处理的方法、装置、设备和介质 | |
JP3369127B2 (ja) | 形態素解析装置 | |
JP3531222B2 (ja) | 類似文字列検索装置 | |
EP1076305A1 (en) | A phonetic method of retrieving and presenting electronic information from large information sources, an apparatus for performing the method, a computer-readable medium, and a computer program element | |
JP4047895B2 (ja) | 文書校正装置およびプログラム記憶媒体 | |
JP3693734B2 (ja) | 情報検索装置およびその情報検索方法 | |
US7539611B1 (en) | Method of identifying and highlighting text | |
JP4318223B2 (ja) | 文書校正装置およびプログラム記憶媒体 | |
Lee et al. | Text segmentation for Chinese spell checking | |
JPS62249269A (ja) | 文書処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080912 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080912 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090912 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090912 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100912 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |