JPWO2002095614A1 - 言語・文字コード系識別処理方法 - Google Patents
言語・文字コード系識別処理方法 Download PDFInfo
- Publication number
- JPWO2002095614A1 JPWO2002095614A1 JP2002592007A JP2002592007A JPWO2002095614A1 JP WO2002095614 A1 JPWO2002095614 A1 JP WO2002095614A1 JP 2002592007 A JP2002592007 A JP 2002592007A JP 2002592007 A JP2002592007 A JP 2002592007A JP WO2002095614 A1 JPWO2002095614 A1 JP WO2002095614A1
- Authority
- JP
- Japan
- Prior art keywords
- character code
- language
- code system
- list
- text document
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/263—Language identification
Abstract
コンピュータでコード化したテキスト文書の言語および文字コード系を識別する機械処理方法である。対象言語/文字コード系毎にあらかじめ作成された規定長のバイト列のリストLBSL/Cには、当該言語/文字コード系によるテキスト文書で出現する可能性のある規定バイト数のバイト列が格納される。各々の言語/文字コード列毎に、リストLBSL/Cに既に存在する規定長バイト列が対象テキスト文書に含まれる個数の割合であるところの「既習バイト列出現率」を算出し、「既習バイト列出現率」が1に近い言語/文字コード系が唯一存在する場合に限り、当該言語/文字コード系を結果として出力する。
Description
技術分野
本発明は、コンピュータにおけるマルチリンガル処理技術に関し、特に、コンピュータによってコード化されたテキスト文書の言語および文字コード系を識別するための機械処理方法に関する。
背景技術
近年、コンピュータ・ネットワーク上などにおけるマルチリンガル処理技術が重要さを増している。世界には、言語人口が700万人を超える言語だけでも100種類以上あり、それらの表記に用いられる文字体系でも20種類が数えられる。また、ISO/IEC10646の検討グループが1999年末時点で検討対象としている文字体系は約140種類に上る。世界的にインターネットの普及が進むにつれ、インターネット上でこうした現地語によってコミュニケーションを図るユーザーが増加している。ところが、アジアを中心とする諸言語では、それをコンピュータで扱うための文字コード系が多数乱立していることが少なくない。例えばヒンズー語においては、よく知られた文字コード系だけでも7種類がインターネットのページ上で実際に使用されている。文字コード系の違いとは、単なる文字フォントの違いを意味するだけでなく、文字コード系Aでコード化されたテキスト文書をそれと異なる文字コード系Bの文字フォントで表示(つまり文字コード系Bで復号)した場合に全く意味のないテキストが表示されることを意味する。
こうしたことから、非常に多種多様な言語と文字コード系を対象としたマルチリンガル処理技術の一環として、現在、次の要件を満たす言語および文字コード系の識別手法が求められている。
(解決しようとする課題)
言語および文字コード系の機械識別手法において、
(1)識別の対象となるテキスト文書が、登録されている対象言語/文字コード系のいずれにも該当しない場合に、対象言語/文字コード系の中で最も可能性の高い言語/文字コード系を誤って割り当ててしまうことを回避する。つまり、正しい識別結果か「識別不能」のいずれかを出力することとする。
(2)複数の言語および文字コード系が混在している場合の対応が容易であること。
(3)識別に必要な情報は、言語/文字コード系にかかわりなく同一の機械処理方法によってテキスト文書例から得ることが出来る、言語/文字コード系にかかわりなく同一のデータ構造で表現された、言語/文字コード系ごとの情報のみを用いる。
上記の要件を満たす識別手法は、ネットワーク上に大量に存在する文書の検索、分類、統計的調査といった、比較的規模の大きいマルチリンガル処理システムにおいて強力な情報処理手段となり得る。次に、インターネット上の統計調査という点に焦点を絞り、上記の要件を満たす手法が要求される技術的背景を詳述する。
先に述べたネットワークを取り巻く状況から、インターネット上にはどのような言語、文字コード系のページがどの程度の割合で存在しているか、その実態を詳細に調査・把握することが現在求められている。調査には、ロボット検索の手法を利用して世界中のインターネット上のページへ系統的にアクセスし、そのページで使用されている言語と文字コード系を自動的に識別し、集計する。(識別装置に入力され、識別の対象となるテキスト文書を「対象テキスト文書」と呼ぶ。)あるページで使用されているテキストが本識別装置に登録されていない言語/文字コード系で書かれている可能性がある場合は、そのページは人手によってチェックが行われ、必要とあらば新たな言語/文字コード系を登録する。(登録された言語/文字コード系を「対象言語/文字コード系」と呼ぶ。)
(従来の技術)コンピュータによってコード化されたテキスト文書の言語、文字コード系、ジャンル等を機械で識別する手法としては、従来より次の3手法が知られている。
(1)対象となる個々の言語/文字コード系あるいはジャンルにおける文書で主に使用される単語あるいは文字の出現頻度テーブルをあらかじめ作成し、それと、識別の対象となるテキスト文書で使用されている単語あるいは文字の出現頻度を比較する方法(特開2000−148754)
(2)個々の言語/文字コード系/ジャンルごとに、その他の対象言語/文字コード系/ジャンルに対して特異的に出現する複数の単語あるいは文字をあらかじめリストし、それらの単語、文字が対象となるテキスト文書で出現するか否かをチェックすることによる方法
(3)上記(1)、(2)両方の特質を備えた方法(特開平7−262188)しかしながら、上記のインターネットにおける統計調査という目的に関しては、これらの手法には次に挙げる2点で困難を伴う。
1.いずれの方法も、対象言語/文字コード系内で最も可能性の高い言語/文字コード系を識別結果として出力するが、対象となるテキスト文書が各言語/文字コード系によるものであるか否かを明確に判断することは困難である。
2.複数の言語/文字コード系が混在する文書への対応が、方法(1)では困難である。また、方法(2)においても、未登録の言語/文字コード系が混在している場合に、それをチェックすることが難しい。例えば、日本語/Shift−JISが対象として登録され、マレー語/iso8859−1が未登録の条件下で、日本語/Shift−JISとマレー語/iso8859−1の両方を含むテキスト文書を認識する場合、日本語の割合が余程低くない限り、方法(2)においては日本語/Shift−JISを結果として出力し、未登録の言語/文字コード系が含まれていることは見逃されるであろう。
解決しようとする課題の(1)、(2)が満足されない場合、上記のインターネットにおける統計調査を行う場合に、単にその結果が不正確なものとなるばかりでなく、対象として未登録の言語/文字コード系を見逃す可能性がある。事前に出来る限り多種の言語/文字コード系を登録し調査を開始するが、調査の課程で未登録の言語/文字コード系に遭遇する可能性は依然として残る。むしろ、調査を通じて未確認の言語/文字コード系を収集することが本調査の目的の1つとも言える。こうした未登録の言語/文字コード系によるテキストを一部(少なくともおおむね2割以上)または全部に含むテキスト文書を、識別の過程で確実に発見できる手法が求められるのである。
また、多種多様な言語/文字コード系を扱うことを特徴とする上記のインターネットにおける統計調査においては、識別に用いられる情報の単位を、個々の言語と文字コード系独自の知識・情報によってテキスト文書から抽出される当該言語の単語、文字とするのではなく、解決しようとする課題の(3)に示すような方法でなければ非効率である。
発明の開示
識別に用いられる情報の単位は、対象とするテキスト文書(つまりバイト列)に含まれる規定バイト数の全ての部分バイト列とする。次に、言語/文字コード系毎の情報としては、あらかじめ作成された、当該言語/文字コード系によるテキスト文書内で出現する可能性のある規定長バイト列のリスト(LBSL/Cと呼ぶ)を使用する。ある言語/文字コード系によるテキスト文書内で出現する可能性のある規定長バイト列のほとんどが揃っていれば、それらに該当しないバイト列が頻繁に出現するテキスト文書は、当言語/文字コード系によるものではない事が裏付けられるのである。その上、複数の言語/文字コード系におけるリストLBSL/Cの単純な和集合が、「これら2言語/文字コード系の混在またはいずれか1つ」を意味する新たな言語/文字コード系に関するリストLBSL/Cとなり、複数の言語/文字コード系が混在する文書の認識の扱いが容易に可能となる。
なお、各言語/文字コード系におけるリストLBSL/Cは、当該言語/文字コード系によるテキスト文書から容易に得ることができる。良好な識別結果を得ることができるリストLBSL/Cを得るために必要なテキスト文書の数量の目安は、1バイトコードの文字体系で20Kバイト、日本語など2バイトコードでは100Kバイトである。
発明を実施するするための最良の形態
本発明をより詳細に説術するために、添付の図面に従ってこれを説明する。
コンピュータによってコード化されたテキスト文書(対象となるテキスト文書)の入力を受け、先ずステップ202において、それが極端に長い、または短い文書ではないか否かがチェックされる。次に、ステップ203において対象となるテキスト文書に含まれるすべての規定長バイト列を読み取り、リストLBSSに格納される。バイト列長の既定値は3バイトが一般に使用される。1バイトおよび2バイトでは所望の識別性能が得られず、一方、既定値が大きくなるにつれ識別性能は向上するが、処理に要する時間と、言語/文字コード系ごとのリストLBSL/Cに必要な項目数が増加する。
次に、対象言語/文字コード系ごとにあらかじめ作成された、当該言語/文字コード系によるテキスト文書内で出現する可能性のある規定長バイト列のリストLBSL/C内に、LBSS内の各々の規定長バイト列が存在するか否かが検索され、言語/文字コード系ごとに既習バイト列出現率が計算される(ステップ204)。テーブルLBSL/Cの一例(部分)を第5図に、またステップ204の詳細ステップを第3図にそれぞれ示す。
次にステップ205で、既習バイト出現率が既定の下限値(LB)と上限値(UB)の間の値を取る言語/文字コード系が存在するかがチェックされる。既習バイト出現率が下限値LBと上限値UBの間の値を取る言語/文字コード系が存在しない場合の例を第6図に示す。本ステップ205においてそれが1つ以上存在する場合は、次に「自動識別不能」を出力し処理プロセスを終了する。また存在しない場合は、対象テキスト文書内に複数の言語/文字コード系が混在する場合に対応した請求の範囲第2項記載の処理が次に行われる。なお、LBおよびUBの値は実施事例に依存してあらかじめ決決定される。下限値LBが大きく、上限値UBが小さいほど、既習バイト出現率がLBとUBの間の値を取る言語/文字コード系が存在する場合の数は少なくなるが、誤った識別を行う可能性は高くなる。
一個の言語/文字コード系(A)における上記のリストLBSL/Cが、その項目に関して、一個の言語/文字コード系(B)における同リストに包含される(このときAはBより上位の関係と呼ぶ)ことによって定義される2言語/文字コード系間の関係を、言語/文字コード系を特定する記号の組として記述する(図7にその一例を示す)。あらかじめ作成された、対象言語/文字コード系における上記の関係を受け、既習バイト出現率が上限値UBを上回る言語/文字コード系が複数ある場合に、それらの中に関係を構成する2言語/文字コード系が有る場合に下位の言語/文字コード系を除外する(ステップ206)。ステップ206の実施手順の詳細は第4図の流れ図に示す。またステップ206の実行例を第8図に示す。
最後に、上記のステップ206で除外されずに残った言語/文字コード系が単数である場合に、当該言語/文字コード系を識別結果として出力し、それ以外の場合は「自動識別不能」を出力し、処理プロセスを終了する。
産業上の利用の可能性
「背景技術」で述べたインターネット上の統計調査はもとより、これと同様の理由でネットワーク上に大量に存在する文書の検索や分類等においても本発明は強力なマルチリンガル情報処理手段となり得る可能性が有る。以下、本発明の特長をさらに2点と、本発明の有効性を確認する実験とその結果を示す。
(特長1:識別可能なテキスト文書の多様性)
従来の技術においては、特定の種類の字句のみを多用するテキスト文書における識別は難かしい場合がある。例えば、平仮名は日本語の文書では必ずといってよいほど使用され、しかも使用頻度は非常に高い。このため従来の技術(1)における出現頻度の高い文字として平仮名を、また従来の技術(2)における特異的に使用される文字コードとしては平仮名の第1バイトを利用することが多い。特に従来の技術(2)においては、日本語の文字コード系Shift−JISとEUCのいずれかを識別するために、EUCでは使用されない、Shift−JISの平仮名の第1バイトで使用されている文字コードの有無をチェックするのである。しかしこの場合、インターネット上のページで実際に存在する「都道府県別大学一覧(東京都)青山学院大学,亜細亜大学,上野学園大学,桜美林大学,大妻女子大学,‥‥」といった文書の場合、仮名文字を全く使用しないため適正な識別が実行されることは期待できない。
一方、本発明の手法によれば、各対象言語/文字コード系毎に当該言語/文字コード系によるテキスト文書で使用される可能性のある規定長バイト列のリストを用いるため、上記のテキスト文例の識別に何ら支障は生じない。ただし、多数の言語/文字コード系で使用される数字、空白(スペース)、記号などを非常に多く含む文書は、識別不能となることがあるが、この場合でも誤った識別結果を返すことはない。
(特長2:情報が不足している場合の信頼性)
さらに本発明では、対象言語/文字コード系ごとにあらかじめ作成されるべき、当該言語/文字コード系によるテキスト文書内で出現する可能性のある規定長バイト列のリストLBSL/Cの項目が不十分である場合も、それが原因となり誤った識別結果を返すことはない。この場合も正しい結果か識別不能のいずれかを返す。その理由を次に説明する。
Aなる言語/文字コード系のリストLBSL/Cの項目が不十分であると仮定する。このとき、対象となるテキスト文書が1)言語/文字コード系Aによる場合と、2)Aとは異なる、対象として登録済みの言語/文字コード系Bによる場合、および3)Aとは異なる、未登録の言語/文字コード系Cによるものである場合の、3通りが考えられる。1)の場合、対象テキスト文書のAに関する既習バイト出現率が、LBSL/Cの項目が十分であれば上限値UBを上回るべきところを、項目が不十分であるためにUBを下回る可能性が高い。しかしその場合でも、その他の対象言語/文字コード系の既習バイト出現率を押し上げる要因とはならず、結果的に識別不能を返す。
2)の場合、対象テキスト文書のAに関する既習バイト出現率は、AのLBSL/Cの項目が十分であっても下限値LBよりも小さい筈である。AのLBSL/Cの項目が不十分であればこの数値はLBSL/Cの項目が十分である場合と比べて同等かそれ以下であり、誤った結果を返す要因とはならない。
3)の場合は、いずれの対象言語/文字コード系に関しても、もとより既習バイト出現率がUB値を上回ることは無く、AのLBSL/Cの項目が不十分であれば、Aに関する既習バイト出現率がより小さい値を取るだけである。したがって結果は識別不能と出力される。
なお、その言語/文字コード系が明らかであるテキスト文書を本装置にかけ、当該言語/文字コード系に関する既習バイト出現率を算出することによって、当該言語/文字コード系のリストLBSL/Cの項目が十分か否かを検定することも可能である。
(実験)
本発明の有効性を検証するために実施された実験の詳細を以下に記す。
第6図に示す8言語/文字コード系(AからH)を対象とし、各言語/文字コード系におけるリストLBSL/Cの項目をそれぞれ第9図に示す個数だけ収集した。ただし、2言語/文字コード系D,Eについては、それぞれ、言語/文字コード系A,B、言語/文字コード系A,B,CにおけるリストLBSL/Cの項目に関して和集合を取ったリストを使用した。また、F:インドネシア語/iso8859−1については、そのリストLBSL/Cの項目数を意図的に少なく設定した。いずれのリストLBSL/Cの項目も、インターネット上のページからランダムに収集され、人手によってその言語/文字コード系が確認されたテキスト文書から抽出された。リストLBSL/Cの項目を抽出するために参照した各言語/文字コード系によるテキスト文書の数量を第9図に併せて記す。また、本対象言語/文字コード系に発現される請求の範囲第2項に記載の関係は、第7図に記載された記述と同一のものとする。実験において識別の対象とされたテキスト文書のうち、A(日本語/Shift−JIS)、およびB(英語/iso8859−1)によるものをそれぞれ以下に示す。
A(日本語/Shift−JIS)
経済のグローバル化が急速に進展する中で、新しい国際経済秩序の構築に向けた動きは、WTO(世界貿易機関)の設立、APEC(アジア太平洋経済協力)の発展と本格化しております。
経済産業省では開かれた経済システムを発展させて、日本経済、さらには世界経済の安定的な発展を実現するため、世界各国と協議を行い、様々な場においてリーダーシップを発揮しています。
世界第一位のODA予算を拠出している我が国としては、発展途上国の自立的発展を支援するため、政府開発援助大綱に基づいた効果的・効率的な経済協力を実施しています。
また、経済産業省では、我が国の国益に資する経済協力が重要であるとの認識の下、援助と貿易・投資の有機的連携を確保した総合的経済協力を推進しています。
B(英語/iso8859−1)
Framing everything,of course,are her trademark curls.”We all have the hair,”says Margulies of her two older sisters and their divorced parents,Paul,an advertising copywriter,and Francesca,a dance teacher.Margulies began her career as a hair model for a perm company.
”I’d go out on a runway,and they’d say,”This is our perm!Look how natural and beautiful it is,’’’says the actress,who has never had a perm at all.To maintain her corkscrews,she shampoos daily,conditions every six weeks with Sebastian Potion 9 and deep−conditions twice a year.”My hair will do pretty much what I want it to do,”she says.”It’s like Play−Doh.”
Photo by:Daniela Federici
以上の条件下で、A,B,C,F,G,Hの言語/文字コード系、および、AとBつまり日本語/Shift−JISと英語が混在したテキスト文書(言語/文字コード系A,B,C,F,G,Hはいずれも約700バイト、日本語と英語混在は約1,300バイト)をそれぞれ請求の範囲第1項に記載の識別装置に入力した場合の、ステップ204における各言語/文字コード系毎の既習バイト列出現率を第10図に示す。
そのリストLBSL/Cが不充分な状況で比較実験した言語/文字コード系インドネシア語において、インドネシア語の入力テキストが識別不能である。その他の入力テキストについては、請求の範囲第2項に記載のステップ206の処理を行うことにより正しい識別結果が得られた。例えば、英語/Lによるテキストの入力に対して「B.英語/Lのみ」と「D.日本語/S,英語/Lのいずれか、または混在」の2言語/文字コード系において既習バイト列出現率がUBを上回った。上記の2言語/文字コード系に対してステップ206の処理を行うことによって、第8図の例1に見られるように1言語/文字コード系「B.英語/Lのみ」を得ることができる。(文字コード系Shift−JISをS、iso8859−1をLとそれぞれ略記した)
「背景」で述べたインターネット上の調査を実施する場合、対象として登録される言語/文字コード系は数百のオーダーであると思われる。本実施例で対象としたのは8言語/文字コード系のみであるが、識別能力が問題となるのは、フランス語/Lと英語/Lといった、同一の文字コード系で近縁関係にある言語間の識別において如何に識別不能を出力せずに適正な識別を行うかである。したがって、数百の言語/文字コード系を対象として実験を行わなくとも、近縁関係にある言語/文字コード系を対象に実験を行うことで、本発明の有効性は確認することができる。
【図面の簡単な説明】
第1図は本発明によるシステムの概略を示す図である。第2図は第1図に示すシステムによって実行される処理の一連の汎用ステップの流れ図である。第3図は、各言語/文字コード系ごとに対象テキスト文書における既習バイト出現率を計算するための、第2図記載のステップ204で実行される詳細ステップの流れ図である。
第4図は既習バイト出現率が上限値UBを上回る言語/文字コード系が複数ある場合に、下位の言語/文字コード系を削除するための、第2図記載のステップ206で実行される詳細ステップの流れ図である。第5図は言語/文字コード系が「日本語/Shift−JIS」の場合の、出現する可能性のある3バイト列のリストLBSL/Cの一部分である。第6図は、既習バイト出現率が既定の下限値(LB)と上限値(UB)の間の値を取る言語/文字コード系が存在しない場合の例を図示したものである。
第7図は、第6図に記載の対象言語/文字コード系の一例(AからH)における、請求の範囲第2項に記載の関係を記述したリストの一例である。第7図においては、(x,y)によって、言語/文字コード系xは言語/文字コード系yより上位であることを意味する。第8図は、第2図のステップ206に記載の処理の実行例である。対象言語/文字コード系は第6図に記載の例と、また関係は第7図に記載の例と同一である。第9図は「産業上の利用の可能性」に示す実験で用いたLBSL/Cの項目数と、それを作成するために参照したテキスト文書の量である。第10図は「産業上の利用の可能性」に示す実験における、第2図に記載のステップ204の出力結果である。
本発明は、コンピュータにおけるマルチリンガル処理技術に関し、特に、コンピュータによってコード化されたテキスト文書の言語および文字コード系を識別するための機械処理方法に関する。
背景技術
近年、コンピュータ・ネットワーク上などにおけるマルチリンガル処理技術が重要さを増している。世界には、言語人口が700万人を超える言語だけでも100種類以上あり、それらの表記に用いられる文字体系でも20種類が数えられる。また、ISO/IEC10646の検討グループが1999年末時点で検討対象としている文字体系は約140種類に上る。世界的にインターネットの普及が進むにつれ、インターネット上でこうした現地語によってコミュニケーションを図るユーザーが増加している。ところが、アジアを中心とする諸言語では、それをコンピュータで扱うための文字コード系が多数乱立していることが少なくない。例えばヒンズー語においては、よく知られた文字コード系だけでも7種類がインターネットのページ上で実際に使用されている。文字コード系の違いとは、単なる文字フォントの違いを意味するだけでなく、文字コード系Aでコード化されたテキスト文書をそれと異なる文字コード系Bの文字フォントで表示(つまり文字コード系Bで復号)した場合に全く意味のないテキストが表示されることを意味する。
こうしたことから、非常に多種多様な言語と文字コード系を対象としたマルチリンガル処理技術の一環として、現在、次の要件を満たす言語および文字コード系の識別手法が求められている。
(解決しようとする課題)
言語および文字コード系の機械識別手法において、
(1)識別の対象となるテキスト文書が、登録されている対象言語/文字コード系のいずれにも該当しない場合に、対象言語/文字コード系の中で最も可能性の高い言語/文字コード系を誤って割り当ててしまうことを回避する。つまり、正しい識別結果か「識別不能」のいずれかを出力することとする。
(2)複数の言語および文字コード系が混在している場合の対応が容易であること。
(3)識別に必要な情報は、言語/文字コード系にかかわりなく同一の機械処理方法によってテキスト文書例から得ることが出来る、言語/文字コード系にかかわりなく同一のデータ構造で表現された、言語/文字コード系ごとの情報のみを用いる。
上記の要件を満たす識別手法は、ネットワーク上に大量に存在する文書の検索、分類、統計的調査といった、比較的規模の大きいマルチリンガル処理システムにおいて強力な情報処理手段となり得る。次に、インターネット上の統計調査という点に焦点を絞り、上記の要件を満たす手法が要求される技術的背景を詳述する。
先に述べたネットワークを取り巻く状況から、インターネット上にはどのような言語、文字コード系のページがどの程度の割合で存在しているか、その実態を詳細に調査・把握することが現在求められている。調査には、ロボット検索の手法を利用して世界中のインターネット上のページへ系統的にアクセスし、そのページで使用されている言語と文字コード系を自動的に識別し、集計する。(識別装置に入力され、識別の対象となるテキスト文書を「対象テキスト文書」と呼ぶ。)あるページで使用されているテキストが本識別装置に登録されていない言語/文字コード系で書かれている可能性がある場合は、そのページは人手によってチェックが行われ、必要とあらば新たな言語/文字コード系を登録する。(登録された言語/文字コード系を「対象言語/文字コード系」と呼ぶ。)
(従来の技術)コンピュータによってコード化されたテキスト文書の言語、文字コード系、ジャンル等を機械で識別する手法としては、従来より次の3手法が知られている。
(1)対象となる個々の言語/文字コード系あるいはジャンルにおける文書で主に使用される単語あるいは文字の出現頻度テーブルをあらかじめ作成し、それと、識別の対象となるテキスト文書で使用されている単語あるいは文字の出現頻度を比較する方法(特開2000−148754)
(2)個々の言語/文字コード系/ジャンルごとに、その他の対象言語/文字コード系/ジャンルに対して特異的に出現する複数の単語あるいは文字をあらかじめリストし、それらの単語、文字が対象となるテキスト文書で出現するか否かをチェックすることによる方法
(3)上記(1)、(2)両方の特質を備えた方法(特開平7−262188)しかしながら、上記のインターネットにおける統計調査という目的に関しては、これらの手法には次に挙げる2点で困難を伴う。
1.いずれの方法も、対象言語/文字コード系内で最も可能性の高い言語/文字コード系を識別結果として出力するが、対象となるテキスト文書が各言語/文字コード系によるものであるか否かを明確に判断することは困難である。
2.複数の言語/文字コード系が混在する文書への対応が、方法(1)では困難である。また、方法(2)においても、未登録の言語/文字コード系が混在している場合に、それをチェックすることが難しい。例えば、日本語/Shift−JISが対象として登録され、マレー語/iso8859−1が未登録の条件下で、日本語/Shift−JISとマレー語/iso8859−1の両方を含むテキスト文書を認識する場合、日本語の割合が余程低くない限り、方法(2)においては日本語/Shift−JISを結果として出力し、未登録の言語/文字コード系が含まれていることは見逃されるであろう。
解決しようとする課題の(1)、(2)が満足されない場合、上記のインターネットにおける統計調査を行う場合に、単にその結果が不正確なものとなるばかりでなく、対象として未登録の言語/文字コード系を見逃す可能性がある。事前に出来る限り多種の言語/文字コード系を登録し調査を開始するが、調査の課程で未登録の言語/文字コード系に遭遇する可能性は依然として残る。むしろ、調査を通じて未確認の言語/文字コード系を収集することが本調査の目的の1つとも言える。こうした未登録の言語/文字コード系によるテキストを一部(少なくともおおむね2割以上)または全部に含むテキスト文書を、識別の過程で確実に発見できる手法が求められるのである。
また、多種多様な言語/文字コード系を扱うことを特徴とする上記のインターネットにおける統計調査においては、識別に用いられる情報の単位を、個々の言語と文字コード系独自の知識・情報によってテキスト文書から抽出される当該言語の単語、文字とするのではなく、解決しようとする課題の(3)に示すような方法でなければ非効率である。
発明の開示
識別に用いられる情報の単位は、対象とするテキスト文書(つまりバイト列)に含まれる規定バイト数の全ての部分バイト列とする。次に、言語/文字コード系毎の情報としては、あらかじめ作成された、当該言語/文字コード系によるテキスト文書内で出現する可能性のある規定長バイト列のリスト(LBSL/Cと呼ぶ)を使用する。ある言語/文字コード系によるテキスト文書内で出現する可能性のある規定長バイト列のほとんどが揃っていれば、それらに該当しないバイト列が頻繁に出現するテキスト文書は、当言語/文字コード系によるものではない事が裏付けられるのである。その上、複数の言語/文字コード系におけるリストLBSL/Cの単純な和集合が、「これら2言語/文字コード系の混在またはいずれか1つ」を意味する新たな言語/文字コード系に関するリストLBSL/Cとなり、複数の言語/文字コード系が混在する文書の認識の扱いが容易に可能となる。
なお、各言語/文字コード系におけるリストLBSL/Cは、当該言語/文字コード系によるテキスト文書から容易に得ることができる。良好な識別結果を得ることができるリストLBSL/Cを得るために必要なテキスト文書の数量の目安は、1バイトコードの文字体系で20Kバイト、日本語など2バイトコードでは100Kバイトである。
発明を実施するするための最良の形態
本発明をより詳細に説術するために、添付の図面に従ってこれを説明する。
コンピュータによってコード化されたテキスト文書(対象となるテキスト文書)の入力を受け、先ずステップ202において、それが極端に長い、または短い文書ではないか否かがチェックされる。次に、ステップ203において対象となるテキスト文書に含まれるすべての規定長バイト列を読み取り、リストLBSSに格納される。バイト列長の既定値は3バイトが一般に使用される。1バイトおよび2バイトでは所望の識別性能が得られず、一方、既定値が大きくなるにつれ識別性能は向上するが、処理に要する時間と、言語/文字コード系ごとのリストLBSL/Cに必要な項目数が増加する。
次に、対象言語/文字コード系ごとにあらかじめ作成された、当該言語/文字コード系によるテキスト文書内で出現する可能性のある規定長バイト列のリストLBSL/C内に、LBSS内の各々の規定長バイト列が存在するか否かが検索され、言語/文字コード系ごとに既習バイト列出現率が計算される(ステップ204)。テーブルLBSL/Cの一例(部分)を第5図に、またステップ204の詳細ステップを第3図にそれぞれ示す。
次にステップ205で、既習バイト出現率が既定の下限値(LB)と上限値(UB)の間の値を取る言語/文字コード系が存在するかがチェックされる。既習バイト出現率が下限値LBと上限値UBの間の値を取る言語/文字コード系が存在しない場合の例を第6図に示す。本ステップ205においてそれが1つ以上存在する場合は、次に「自動識別不能」を出力し処理プロセスを終了する。また存在しない場合は、対象テキスト文書内に複数の言語/文字コード系が混在する場合に対応した請求の範囲第2項記載の処理が次に行われる。なお、LBおよびUBの値は実施事例に依存してあらかじめ決決定される。下限値LBが大きく、上限値UBが小さいほど、既習バイト出現率がLBとUBの間の値を取る言語/文字コード系が存在する場合の数は少なくなるが、誤った識別を行う可能性は高くなる。
一個の言語/文字コード系(A)における上記のリストLBSL/Cが、その項目に関して、一個の言語/文字コード系(B)における同リストに包含される(このときAはBより上位の関係と呼ぶ)ことによって定義される2言語/文字コード系間の関係を、言語/文字コード系を特定する記号の組として記述する(図7にその一例を示す)。あらかじめ作成された、対象言語/文字コード系における上記の関係を受け、既習バイト出現率が上限値UBを上回る言語/文字コード系が複数ある場合に、それらの中に関係を構成する2言語/文字コード系が有る場合に下位の言語/文字コード系を除外する(ステップ206)。ステップ206の実施手順の詳細は第4図の流れ図に示す。またステップ206の実行例を第8図に示す。
最後に、上記のステップ206で除外されずに残った言語/文字コード系が単数である場合に、当該言語/文字コード系を識別結果として出力し、それ以外の場合は「自動識別不能」を出力し、処理プロセスを終了する。
産業上の利用の可能性
「背景技術」で述べたインターネット上の統計調査はもとより、これと同様の理由でネットワーク上に大量に存在する文書の検索や分類等においても本発明は強力なマルチリンガル情報処理手段となり得る可能性が有る。以下、本発明の特長をさらに2点と、本発明の有効性を確認する実験とその結果を示す。
(特長1:識別可能なテキスト文書の多様性)
従来の技術においては、特定の種類の字句のみを多用するテキスト文書における識別は難かしい場合がある。例えば、平仮名は日本語の文書では必ずといってよいほど使用され、しかも使用頻度は非常に高い。このため従来の技術(1)における出現頻度の高い文字として平仮名を、また従来の技術(2)における特異的に使用される文字コードとしては平仮名の第1バイトを利用することが多い。特に従来の技術(2)においては、日本語の文字コード系Shift−JISとEUCのいずれかを識別するために、EUCでは使用されない、Shift−JISの平仮名の第1バイトで使用されている文字コードの有無をチェックするのである。しかしこの場合、インターネット上のページで実際に存在する「都道府県別大学一覧(東京都)青山学院大学,亜細亜大学,上野学園大学,桜美林大学,大妻女子大学,‥‥」といった文書の場合、仮名文字を全く使用しないため適正な識別が実行されることは期待できない。
一方、本発明の手法によれば、各対象言語/文字コード系毎に当該言語/文字コード系によるテキスト文書で使用される可能性のある規定長バイト列のリストを用いるため、上記のテキスト文例の識別に何ら支障は生じない。ただし、多数の言語/文字コード系で使用される数字、空白(スペース)、記号などを非常に多く含む文書は、識別不能となることがあるが、この場合でも誤った識別結果を返すことはない。
(特長2:情報が不足している場合の信頼性)
さらに本発明では、対象言語/文字コード系ごとにあらかじめ作成されるべき、当該言語/文字コード系によるテキスト文書内で出現する可能性のある規定長バイト列のリストLBSL/Cの項目が不十分である場合も、それが原因となり誤った識別結果を返すことはない。この場合も正しい結果か識別不能のいずれかを返す。その理由を次に説明する。
Aなる言語/文字コード系のリストLBSL/Cの項目が不十分であると仮定する。このとき、対象となるテキスト文書が1)言語/文字コード系Aによる場合と、2)Aとは異なる、対象として登録済みの言語/文字コード系Bによる場合、および3)Aとは異なる、未登録の言語/文字コード系Cによるものである場合の、3通りが考えられる。1)の場合、対象テキスト文書のAに関する既習バイト出現率が、LBSL/Cの項目が十分であれば上限値UBを上回るべきところを、項目が不十分であるためにUBを下回る可能性が高い。しかしその場合でも、その他の対象言語/文字コード系の既習バイト出現率を押し上げる要因とはならず、結果的に識別不能を返す。
2)の場合、対象テキスト文書のAに関する既習バイト出現率は、AのLBSL/Cの項目が十分であっても下限値LBよりも小さい筈である。AのLBSL/Cの項目が不十分であればこの数値はLBSL/Cの項目が十分である場合と比べて同等かそれ以下であり、誤った結果を返す要因とはならない。
3)の場合は、いずれの対象言語/文字コード系に関しても、もとより既習バイト出現率がUB値を上回ることは無く、AのLBSL/Cの項目が不十分であれば、Aに関する既習バイト出現率がより小さい値を取るだけである。したがって結果は識別不能と出力される。
なお、その言語/文字コード系が明らかであるテキスト文書を本装置にかけ、当該言語/文字コード系に関する既習バイト出現率を算出することによって、当該言語/文字コード系のリストLBSL/Cの項目が十分か否かを検定することも可能である。
(実験)
本発明の有効性を検証するために実施された実験の詳細を以下に記す。
第6図に示す8言語/文字コード系(AからH)を対象とし、各言語/文字コード系におけるリストLBSL/Cの項目をそれぞれ第9図に示す個数だけ収集した。ただし、2言語/文字コード系D,Eについては、それぞれ、言語/文字コード系A,B、言語/文字コード系A,B,CにおけるリストLBSL/Cの項目に関して和集合を取ったリストを使用した。また、F:インドネシア語/iso8859−1については、そのリストLBSL/Cの項目数を意図的に少なく設定した。いずれのリストLBSL/Cの項目も、インターネット上のページからランダムに収集され、人手によってその言語/文字コード系が確認されたテキスト文書から抽出された。リストLBSL/Cの項目を抽出するために参照した各言語/文字コード系によるテキスト文書の数量を第9図に併せて記す。また、本対象言語/文字コード系に発現される請求の範囲第2項に記載の関係は、第7図に記載された記述と同一のものとする。実験において識別の対象とされたテキスト文書のうち、A(日本語/Shift−JIS)、およびB(英語/iso8859−1)によるものをそれぞれ以下に示す。
A(日本語/Shift−JIS)
経済のグローバル化が急速に進展する中で、新しい国際経済秩序の構築に向けた動きは、WTO(世界貿易機関)の設立、APEC(アジア太平洋経済協力)の発展と本格化しております。
経済産業省では開かれた経済システムを発展させて、日本経済、さらには世界経済の安定的な発展を実現するため、世界各国と協議を行い、様々な場においてリーダーシップを発揮しています。
世界第一位のODA予算を拠出している我が国としては、発展途上国の自立的発展を支援するため、政府開発援助大綱に基づいた効果的・効率的な経済協力を実施しています。
また、経済産業省では、我が国の国益に資する経済協力が重要であるとの認識の下、援助と貿易・投資の有機的連携を確保した総合的経済協力を推進しています。
B(英語/iso8859−1)
Framing everything,of course,are her trademark curls.”We all have the hair,”says Margulies of her two older sisters and their divorced parents,Paul,an advertising copywriter,and Francesca,a dance teacher.Margulies began her career as a hair model for a perm company.
”I’d go out on a runway,and they’d say,”This is our perm!Look how natural and beautiful it is,’’’says the actress,who has never had a perm at all.To maintain her corkscrews,she shampoos daily,conditions every six weeks with Sebastian Potion 9 and deep−conditions twice a year.”My hair will do pretty much what I want it to do,”she says.”It’s like Play−Doh.”
Photo by:Daniela Federici
以上の条件下で、A,B,C,F,G,Hの言語/文字コード系、および、AとBつまり日本語/Shift−JISと英語が混在したテキスト文書(言語/文字コード系A,B,C,F,G,Hはいずれも約700バイト、日本語と英語混在は約1,300バイト)をそれぞれ請求の範囲第1項に記載の識別装置に入力した場合の、ステップ204における各言語/文字コード系毎の既習バイト列出現率を第10図に示す。
そのリストLBSL/Cが不充分な状況で比較実験した言語/文字コード系インドネシア語において、インドネシア語の入力テキストが識別不能である。その他の入力テキストについては、請求の範囲第2項に記載のステップ206の処理を行うことにより正しい識別結果が得られた。例えば、英語/Lによるテキストの入力に対して「B.英語/Lのみ」と「D.日本語/S,英語/Lのいずれか、または混在」の2言語/文字コード系において既習バイト列出現率がUBを上回った。上記の2言語/文字コード系に対してステップ206の処理を行うことによって、第8図の例1に見られるように1言語/文字コード系「B.英語/Lのみ」を得ることができる。(文字コード系Shift−JISをS、iso8859−1をLとそれぞれ略記した)
「背景」で述べたインターネット上の調査を実施する場合、対象として登録される言語/文字コード系は数百のオーダーであると思われる。本実施例で対象としたのは8言語/文字コード系のみであるが、識別能力が問題となるのは、フランス語/Lと英語/Lといった、同一の文字コード系で近縁関係にある言語間の識別において如何に識別不能を出力せずに適正な識別を行うかである。したがって、数百の言語/文字コード系を対象として実験を行わなくとも、近縁関係にある言語/文字コード系を対象に実験を行うことで、本発明の有効性は確認することができる。
【図面の簡単な説明】
第1図は本発明によるシステムの概略を示す図である。第2図は第1図に示すシステムによって実行される処理の一連の汎用ステップの流れ図である。第3図は、各言語/文字コード系ごとに対象テキスト文書における既習バイト出現率を計算するための、第2図記載のステップ204で実行される詳細ステップの流れ図である。
第4図は既習バイト出現率が上限値UBを上回る言語/文字コード系が複数ある場合に、下位の言語/文字コード系を削除するための、第2図記載のステップ206で実行される詳細ステップの流れ図である。第5図は言語/文字コード系が「日本語/Shift−JIS」の場合の、出現する可能性のある3バイト列のリストLBSL/Cの一部分である。第6図は、既習バイト出現率が既定の下限値(LB)と上限値(UB)の間の値を取る言語/文字コード系が存在しない場合の例を図示したものである。
第7図は、第6図に記載の対象言語/文字コード系の一例(AからH)における、請求の範囲第2項に記載の関係を記述したリストの一例である。第7図においては、(x,y)によって、言語/文字コード系xは言語/文字コード系yより上位であることを意味する。第8図は、第2図のステップ206に記載の処理の実行例である。対象言語/文字コード系は第6図に記載の例と、また関係は第7図に記載の例と同一である。第9図は「産業上の利用の可能性」に示す実験で用いたLBSL/Cの項目数と、それを作成するために参照したテキスト文書の量である。第10図は「産業上の利用の可能性」に示す実験における、第2図に記載のステップ204の出力結果である。
Claims (2)
- コンピュータによってコード化されたテキスト文書(対象となるテキスト文書と呼ぶ)から、その言語および文字コード系を識別するための機械処理方法において、
対象となるテキスト文書に含まれるすべての規定長バイト列を読み取り、それらをリスト(LBSSと呼ぶ)として格納する手段(ステップ203)と、
登録された言語/文字コード系(対象言語/文字コード系と呼ぶ)の各々についてあらかじめ作成された、当該言語/文字コード系によるテキスト文書内で出現する可能性のある規定長バイト列のリスト(LBSL/Cと呼ぶ)を格納する手段と、
各々のリストLBSL/C内に、LBSS内の各々の規定長バイト列が存在するか否かを検索するステップ(ステップ302から306)と、
上記ステップの結果を受けて、各々の言語/文字コード系毎に、リストLBSL/Cに既に存在する規定長バイト列がリストLBSSに含まれる個数の割合(既習バイト列出現率と呼ぶ)を算出してそれらを格納する手段(ステップ204)を有し、
ただ1つの言語/文字コード系における既習バイト列出現率の値が1に近いと判断され、且つその他の言語/文字コード系における既習バイト列出現率が皆、1よりかなり小さいと判断される場合に前者の言語/文字コード系を出力し、それ以外の場合に識別不能を出力することを特徴とする処理方法。 - 一個の言語/文字コード系(Aとする)における請求の範囲第1項記載のリストLBSL/Cが、その項目に関して、一個の言語/文字コード系(Bとする)における同リストに包含される(このときAはBより上位の関係であると呼ぶ)ことによって定義される2言語/文字コード系間の関係を記述する情報を、対象の言語/文字コード系をあらわす記号の組として任意個数格納する手段(第7図)と、
対象言語/文字コード系における、あらかじめ与えられた上記記載の任意個数の関係を記述した情報と、複数の言語/文字コード系とを受け、受け付けた複数の言語/文字コード系内に関係を構成する2言語/文字コード系が有る場合に下位の言語/文字コード系を受け付けた複数の言語/文字コード系から削除することによって得られる単数または複数の言語/文字コード系を出力するステップ(ステップ206)とをさらに含むことを特徴とする、請求の範囲第1項記載のコンピュータによってコード化されたテキスト文書から、その言語および文字コード系を識別するための機械処理方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2001/004350 WO2002095614A1 (fr) | 2001-05-24 | 2001-05-24 | Procede d'identification d'un systeme de code de type langage ou par caracteres |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2002095614A1 true JPWO2002095614A1 (ja) | 2004-11-25 |
Family
ID=11737343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002592007A Pending JPWO2002095614A1 (ja) | 2001-05-24 | 2001-05-24 | 言語・文字コード系識別処理方法 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2002095614A1 (ja) |
WO (1) | WO2002095614A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7680648B2 (en) | 2004-09-30 | 2010-03-16 | Google Inc. | Methods and systems for improving text segmentation |
US7996208B2 (en) | 2004-09-30 | 2011-08-09 | Google Inc. | Methods and systems for selecting a language for text segmentation |
JP6300512B2 (ja) * | 2013-12-19 | 2018-03-28 | 株式会社ソリトンシステムズ | 判定装置、判定方法、及び、プログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6167369A (en) * | 1998-12-23 | 2000-12-26 | Xerox Company | Automatic language identification using both N-gram and word information |
-
2001
- 2001-05-24 JP JP2002592007A patent/JPWO2002095614A1/ja active Pending
- 2001-05-24 WO PCT/JP2001/004350 patent/WO2002095614A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2002095614A1 (fr) | 2002-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11714839B2 (en) | Apparatus and method for automated and assisted patent claim mapping and expense planning | |
JPS6091450A (ja) | テ−ブル型言語翻訳器 | |
MXPA04011788A (es) | Aprendizaje y uso de patrones de cadena generalizados para extraccion de informacion. | |
US7162413B1 (en) | Rule induction for summarizing documents in a classified document collection | |
US7359896B2 (en) | Information retrieving system, information retrieving method, and information retrieving program | |
JP2002117027A (ja) | 感情情報抽出方法および感情情報抽出プログラムの記録媒体 | |
JP2005038395A (ja) | データベース検索装置 | |
JP3784060B2 (ja) | データベース検索システム、その検索方法及びプログラム | |
JP5757551B2 (ja) | 意味分類付与装置、意味分類付与方法、意味分類付与プログラム | |
Pammi et al. | POS tagging and chunking using decision forests | |
JPWO2002095614A1 (ja) | 言語・文字コード系識別処理方法 | |
CN112965909B (zh) | 测试数据、测试用例生成方法及系统、存储介质 | |
JP2000148754A (ja) | マルチリンガル・システム,マルチリンガル処理方法およびマルチリンガル処理のプログラムを記憶した媒体 | |
WO2020240756A1 (ja) | 応答処理プログラム、応答処理方法および情報処理装置 | |
CN106250354A (zh) | 处理文书的信息处理装置、信息处理方法以及程序 | |
JPH0877196A (ja) | 文書情報抽出装置 | |
CN112101026A (zh) | 语料样本集合的构建方法、计算设备及计算机存储介质 | |
EP1072986A2 (en) | System and method for extracting data from semi-structured text | |
Taghva et al. | Farsi searching and display technologies | |
JPH0748217B2 (ja) | 文書要約装置 | |
JP2885489B2 (ja) | 文書内容検索装置 | |
JP2003173335A (ja) | 自然言語対話装置及び方法並びに記憶媒体 | |
JP2009181524A (ja) | 文書検索システム及び文書検索方法 | |
JP3314720B2 (ja) | 文字列検索装置 | |
JP2007280052A (ja) | 体験情報抽出方法及び装置及びプログラム及びコンピュータ読み取り可能な記録媒体 |