(57)【特許請求の範囲】
【請求項１】
入力した文書を形態素単位に区切り、それぞれの単位の持つ性質を明らかにして出力する文書形態素解析装置において、
形態素解析に使用する単語辞書と、
一文の区切りを認識するための属性が付加された文末記号と文書記述言語とから構成された制御情報辞書と、
前記制御情報辞書に収容されている文書記述言語と、この文書記述言語と異なる他の方式の文書記述言語との対応関係を示す文書記述言語対応表と、
文書記述言語による記述を含んだ文書が入力される入力手段と、
前記入力手段に入力された文書に対し、前記単語辞書および前記制御情報辞書を参照して、文書記述言語のコード及び文の区切りを認識するとともに、区切られた文に対して形態素解析を行う解析手段と、
前記解析手段の解析結果を、前記入力手段に入力された文書に含まれた文書記述言語による記述とともに出力する出力手段と、
前記出力手段から出力される文書記述言語によるコードを、前記文書記述言語対応表を参照して、前記他の方式の文書記述言語によるコードに変換する変換手段と、
を有することを特徴とする文書形態素解析装置。
【請求項２】
前記制御情報辞書に収容されている文書記述言語は、ＳＧＭＬ（Standard Generalized Markup Language）であることを特徴とする請求項１記載の文書形態素解析装置。
【請求項３】
前記一文の区切りを認識するための属性が付加された文末記号は、前記入力手段に入力される文書が英語である場合は、「．」、「？」、または「！」のいずれかであることを特徴とする請求項１記載の文書形態素解析装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、入力した文書を形態素単位に区切り、それぞれの単位の持つ性質を明らかにして出力する文書形態素解析装置に関する。
【０００２】
【従来の技術】
従来、コンピュータによるキーワード検索、置換、ソート等の文字列処理や、校正処理、機械翻訳処理等の自然言語処理を行う場合、処理対象の文書に対して予め形態素（意味を持つ最小の言語単位）に分割する等の形態素解析を行い、そうした形態素解析が施された文書を基に、自然言語処理を行っている。文書に対して自然言語処理を行うためには、予めその文書が形態素単位に分割されている必要がある。
【０００３】
一方、コンピュータ処理対象の文書の論理構造や意味構造を記述するために、その文書に簡単なマーク（文書記述言語）を付加することが行われている。例えば、ＳＧＭＬ（Standard Generalized Markup Language) では、文書中に出てくるタイトルや著者名等の構造上あるいは意味上重要な部分に、予め決めてある文書記述言語（タグや制御コード）で印を付けておく。こうすると、後にその部分だけ抜き出して抄録にまとめたり、人名索引を作成する、といった利用ができ、文書をデータベースとして利用できる。
【０００４】
【発明が解決しようとする課題】
しかし、従来の自然言語処理に先立つ形態素解析では、文書以外の文書記述言語が含まれる文書をそのまま処理することはできないため、それらの文書記述言語を取り外す処理が必要であった。
【０００５】
一方で、文書に文書記述言語を付加することにより、自然言語処理において様々な便利な利用が考えられるので、形態素解析結果に文書記述言語が付加されていることが求められている。
【０００６】
また、自然言語処理では、文書を構成する一文単位で処理を行うため、従来、一文を認識するための前処理が必要であった。なお、従来の形態素解析には、一文を認識する機能はなかった。
【０００７】
さらに、特定のシステムに専用の文書記述言語を利用して記述されている文書を、異なる方式の文書記述言語を使用するシステムに流通させることはできない。そうした不便さを考慮して、方式が異なる文書記述言語を使用するシステム間において、文書記述言語を含む文書を流通させることができるように、文書記述言語のコード変換が求められている。
【０００８】
本発明はこのような点に鑑みてなされたものであり、文書記述言語が付加され、かつ一文の区切りが認識された形態素解析結果を自然言語処理装置に出力することを可能とした文書形態素解析装置を提供することを第１の目的とする。
【０００９】
また、方式が異なる文書記述言語を使用するシステムに、文書記述言語のコード変換を行って文書を出力することを可能とした文書形態素解析装置を提供することを第２の目的とする。
【００１０】
【課題を解決するための手段】
本発明では上記目的を達成するために、図１に示すように、形態素解析に使用する単語辞書１と、一文の区切りを認識するための属性が付加された文末記号２ａと文書記述言語２ｂとから構成された制御情報辞書２と、文書記述言語による記述を含んだ文書が入力される入力手段３と、入力手段３に入力された文書を基に、単語辞書１および制御情報辞書２を参照して、一文の区切りを認識するとともに、文書記述言語を除いた文書を抽出し、その抽出された文書に対して形態素解析を行う解析手段４と、解析手段４の解析結果を、入力手段３に入力された文書に含まれた文書記述言語による記述とともに出力する出力手段５とを有することを特徴とする文書形態素解析装置が提供される。
【００１１】
また、文書形態素解析装置は更に、制御情報辞書２に収容されている文書記述言語２ｂと、この文書記述言語２ｂと異なる他の方式の文書記述言語との対応関係を示す文書記述言語対応表６と、出力手段５から出力される文書記述言語による記述を、文書記述言語対応表６を参照して、他の方式の文書記述言語による記述に変換する変換手段７とを有する。
【００１２】
【作用】
以上のような構成において、単語辞書１は、形態素解析に使用する従来と同じ辞書である。制御情報辞書２は、本発明特有の辞書であり、文末記号２ａと文書記述言語２ｂとが収納されている。この文末記号２ａは、通常の文章において一文の終了を示す文書記号〔例えば英語の場合、「．（ピリオド），？，！」等〕に一文の区切りを認識するための属性を付加したものである。文書記述言語２ｂは、文書の論理構造や意味構造を記述する言語であり、ＳＧＭＬの場合ならば、「＜，＞，＜／，Ｐ，↓，…」等である。
【００１３】
入力手段３に、文書記述言語による記述が施された文書が入力され、解析手段４へ送られる。解析手段４は、制御情報辞書２に含まれる文末記号２ａから、入力文書内の一文の区切りを認識する。また、解析手段４は、制御情報辞書２に含まれる文書記述言語２ｂを参照して、入力文書から文書記述言語を除いた文書を抽出し、単語辞書１を参照して、その抽出された文書に対して従来の形態素解析を行う。すなわち、抽出文書を形態素毎に区切り、それぞれの形態素の持つ性質を明らかにする。
【００１４】
出力手段５は、入力手段３に入力された文書に含まれていた文書記述言語による記述とともに、解析手段４の解析結果を自然言語処理装置等に出力する。
これにより、文書記述言語の記述が付加され、かつ一文の区切りが認識された形態素解析結果を自然言語処理装置に出力することが可能となる。
【００１５】
また、制御情報辞書２に収容されている文書記述言語２ｂと、この文書記述言語２ｂと異なる他の方式の文書記述言語との対応関係を収納した文書記述言語対応表６を備えるとともに、出力手段５と自然言語処理装置との間に変換手段７を備える。変換手段７は、出力手段５から出力される文書記述言語による記述を、文書記述言語対応表６を参照して、他の方式の文書記述言語による記述に変換する。
【００１６】
これにより、方式が異なる文書記述言語を使用するシステムに、文書記述言語のコード変換を行って文書を出力することが可能となる。
【００１７】
【実施例】
以下、本発明の一実施例を図面に基づいて説明する。
まず、本実施例の文書形態素解析装置の原理構成を図１を参照して説明する。本実施例は、主に、形態素解析に使用する単語辞書１と、一文の区切りを認識するための属性が付加された文末記号２ａと文書記述言語２ｂとから構成された制御情報辞書２と、文書記述言語２ｂによる記述を含んだ文書が入力される入力手段３と、入力手段３に入力された文書を基に、単語辞書１および制御情報辞書２を参照して、一文の区切りを認識するとともに、文書記述言語を除いた文書を抽出し、その抽出された文書に対して形態素解析を行う解析手段４と、解析手段４の解析結果を、入力手段３に入力された文書に含まれた文書記述言語による記述とともに出力する出力手段５とから構成される。
【００１８】
また更に、制御情報辞書２に収容されている文書記述言語２ｂと、この文書記述言語２ｂと異なる他の方式の文書記述言語との対応関係を示す文書記述言語対応表６と、出力手段５から出力される文書記述言語による記述を、文書記述言語対応表６を参照して、他の方式の文書記述言語による記述に変換する変換手段７とから構成される。
【００１９】
図２に、本実施例の文書形態素解析装置の具体的な構成を示す。図中の単語辞書１６が図１の単語辞書１に対応し、同様に、制御情報辞書１５が制御情報辞書２に、入力文書バッファ１１が入力手段３に、形態素解析部１２の一文認識部１２ａ、タグ・制御コード内部変換部１２ｂ、および単語分割部１２ｃが解析手段４に、解析結果出力部１３が出力手段５に、制御コード対応表１７が文書記述言語対応表６に、形態素解析部１２の制御コード変換処理部１２ｄが変換手段７に対応する。
【００２０】
入力文書バッファ１１は、処理対象の文書を一時的に格納して、形態素解析部１２の求めに応じて出力するものである。形態素解析部１２はプロセッサ構成となっており、制御情報辞書１５、単語辞書１６、および制御コード対応表１７は、そのプロセッサに接続された外部記憶装置にそれぞれ格納されているテーブルである。形態素解析部１２のプロセッサが所定のプログラムを実行することにより、一文認識部１２ａ、タグ・制御コード内部変換部１２ｂ、単語分割部１２ｃ、および制御コード変換処理部１２ｄの各機能が実現する。
【００２１】
自然言語処理部１４は、文書のプリント、翻訳、キーワード検索等のいずれかの処理を行う部分である。
図３は制御情報辞書１５の内容の一例を示す図である。すなわち、本実施例では、文書記述言語としてＳＧＭＬを採用しており、各種のタグコード（欄１〜欄１０）や制御コード（欄１１〜欄１５）を制御情報辞書１５に登録している。また、各種文末コード（欄１６）を登録している。文末コードは、通常の文章において一文の終了を示す文書記号〔例えば英語の場合、「．（ピリオド），？，！」等〕に一文の区切りを認識するための属性を付加したものである。欄１６に示す文末コード「．空白」は、単語の直後に出現するピリオドとそれに続く空白という文書記号を意味し、その属性として「文末尾」という性質が付加される。
【００２２】
図４は、制御コード対応表１７の内容の一例を示す図である。すなわち、「改行」を意味するタグ（制御コード）は、文書記述言語ＤＯＳでは「０ｄ０ａ」、文書記述言語ＳＧＭＬでは「＜ＢＲ＞」、文書記述言語ＨＯＳＴでは「３０ａ１」と表記されることを示している。
【００２３】
ここで、図５に示すような文書が入力文書バッファ１１から形態素解析部１２へ送られたとする。
まず、一文認識部１２ａが、図５に示す文書の中に、制御情報辞書１５に収納された文末コードのいずれかが存在しないかを調べる。文末コード「．空白」があるので、そこに「文末尾」という属性を付加して一文を認識する。
【００２４】
また、タグ・制御コード内部変換部１２ｂが、図５に示す文書の中に、制御情報辞書１５に収納されたタグコードや制御コードのいずれかが存在しないかを調べる。存在するときには、タグコードや制御コードの属性による各種変換を行う。図６に、タグ・制御コード内部変換部１２ｂが、図５に示す文書に対して変換をおこなった様子を示す。
【００２５】
すなわち、タグ＜ＨＴＭＬ＞からタグ＜／ＨＴＭＬ＞（図５ではこのタグの図示が省略されている）までの文書があり、その中で、タグ＜Ｈ１＞からタグ＜／Ｈ１＞  までの文「Introduce WWW server」が見出し文となっている。次のタグ＜Ｐ＞からタグ＜／Ｐ＞  までの文「This server 〜 an old generation. 」が１つのパラグラフになっている。そのパラグラフの中で、例えばタグ＜ｓｔｒｏｎｇ＞からタグ＜／ｓｔｒｏｎｇ＞  までの文「car of new generation 」が、何らかの方法で強調をされるべき文になっている。また、タグ＜Ｈ２＞からタグ＜／Ｈ２＞  （図５ではこのタグの図示が省略されている）までの独立文があり、その独立文の中に、タグ＜Ｌ１＞からタグ＜／Ｌ１＞までの更なる独立文があり、その更なる独立文の中に、タグ＜ＦＯＮＴ＞からタグ＜／ＦＯＮＴ＞までの文字の大きさを指定された単語「cheap 」およびタグ＜ｉｍｇ＞がある。タグ＜ｉｍｇ＞は、文中の単語の一部とみなされ、単語属性としては単語辞書に存在しない特別な単語と見做される。なお、図５，図６において、大文字コードと子文字コードとは同じ扱いとなる。
【００２６】
図２に戻って、単語分割部１２ｃは、単語辞書１６を参照して従来と同様な形態素解析を行う。
制御コード変換処理部１２ｄは、必要に応じて、形態素解析結果に対して、制御コード対応表１７を参照してコード変換を行う。
【００２７】
解析結果出力部１３は、単語分割部１２ｃで得られた形態素解析結果に、一文認識部１２ａで得られた一文認識と、タグ・制御コード内部変換部１２ｂで得られたＳＧＭＬによる記述とを付加して自然言語処理部１４へ出力する。その際、文書記述言語の方式が異なっているならば、制御コード変換処理部１２ｄにより予めコード変換を行っておく。
【００２８】
以上の形態素解析部１２の処理手順を図７を参照して説明する。
図７は形態素解析部１２の処理手順を示すフローチャートである。以下、図中のステップに沿って説明する。
【００２９】
〔Ｓ１〕入力文書バッファ１１に、処理すべき文書データが未だ残っているか否かを判別する。処理すべき文書データが未だ残っているならばステップＳ４へ進み、処理すべき文書データが無いならばステップＳ２へ進む。
【００３０】
〔Ｓ２〕入力文書バッファ１１に新たな文書データを読み込む。
〔Ｓ３〕新たな文書データが入力文書バッファ１１に読み込まれたか否かを判別する。新たにバッファ１１に読み込まれた文書データが無いならば本処理を終了し、有ればステップＳ４へ進む。
【００３１】
〔Ｓ４〕形態素解析部１２は、入力文書バッファ１１から順次送られる文書の各文字や符号を順に調べ、それらが、制御情報辞書１５に含まれるタグコード、制御コード、文末コードのいずれかと一致するか否かを判別する。それらが、制御情報辞書１５に含まれるコードと一致するならばステップＳ６へ進み、一致しなければステップＳ５へ進む。
【００３２】
〔Ｓ５〕単語辞書１６を参照して従来と同じ形態素解析を行う。
〔Ｓ６〕入力文書バッファ１１から送られた文字または符号が、制御情報辞書１５に含まれる文末コードと一致するか否を判別する。一致するならばステップＳ１１へ進み、一致しなければステップＳ７へ進む。
【００３３】
〔Ｓ７〕入力文書バッファ１１から送られた文字または符号がタグ開きコード「＜」であるか否かを判別する。タグ開きコードであればステップＳ９へ進み、タグ開きコードでなければステップＳ８へ進む。
【００３４】
〔Ｓ８〕タグ・制御コード内部変換部１２ｂによって各種変換を行う。
〔Ｓ９〕それまでに入力文書バッファ１１から送られた、タグ＜  ＞からタグ＜／  ＞までの文を１まとめにする。
【００３５】
〔Ｓ１０〕ステップＳ８で変換された情報を、ステップＳ９でひとまとめにされた文に亘って組み合わせる。
〔Ｓ１１〕一文認識部１２ａによって「文末尾」という属性の付加を行う。
【００３６】
〔Ｓ１２〕制御コードの変換が必要であるか否かの判別をする。必要ならばステップＳ１３へ進み、不必要ならばステップＳ１４へ進む。
〔Ｓ１３〕制御コード変換処理部１２ｄが制御コード対応表１７を参照してコード変換を行う。
【００３７】
〔Ｓ１４〕解析結果出力部１３が、ステップＳ５で得られた形態素解析結果と、ステップＳ１０で得られた文書記述言語情報と、ステップＳ１３で得られた変換コード情報とをまとめて自然言語処理部１４へ出力する。
【００３８】
【発明の効果】
以上説明したように本発明では、文末記号と文書記述言語のコードとを収納した制御情報辞書を備え、制御情報辞書に含まれる文末記号から、入力文書内の一文の区切りを認識する。また、制御情報辞書に含まれる文書記述言語のコードを参照して、入力文書から文書記述言語のコードを除いた文書を抽出し、単語辞書を参照して、その抽出された文書に対して従来の形態素解析を行う。そして、形態素解析結果を、文書記述言語のコードによる記述および一文の区切り情報とともに自然言語処理装置等に出力する。
【００３９】
これにより、文書記述言語のコードの記述が付加され、かつ一文の区切りが認識された形態素解析結果を自然言語処理装置に出力することが可能となる。すなわち、文書を自然言語処理装置にかける前に、制御コードやタグコードを取り除くような従来の処理が不要となる。また、制御コードやタグコードが付加された文書を機械翻訳装置に送ることができるので、例えば特定のタグコードに挟まれた単語を翻訳せずに原型のままにしておくような処置も簡単にできる。さらには、ＳＧＭＬパーサがなくてもある程度はＳＧＭＬ文書を直接扱うことが可能となる。
【００４０】
また、制御情報辞書に収容されている文書記述言語と、この文書記述言語と異なる他の方式の文書記述言語との対応関係を収納した文書記述言語対応表を備え、出力される文書記述言語によるコードを、文書記述言語対応表を参照して、他の方式の文書記述言語によるコードに変換する。
【００４１】
これにより、方式が異なる文書記述言語を使用するシステムに、文書記述言語のコード変換を行って文書を出力することが可能となる。すなわち、本発明装置を、文書の制御コードを変換するコンバータツールとして利用でき、あるユーザアプリケーション用のデータを他のユーザアプリケーション用のデータに簡単に変換できる。
【図面の簡単な説明】
【図１】本発明の原理説明図である。
【図２】実施例の構成を示すブロック図である。
【図３】制御情報辞書を示す図である。
【図４】制御コード対応表を示す図である。
【図５】入力文書を示す図である。
【図６】形態素解析結果を示す図である。
【図７】形態素解析部の処理手順を示す図である。
【符号の説明】
１  単語辞書
２  制御情報辞書
２ａ  文末記号
２ｂ  文書記述言語
３  入力手段
４  解析手段
５  出力手段
６  文書記述言語対応表
７  変換手段
【図１】
0003701050.tif 000002
【図２】
0003701050.tif 000003
【図３】
0003701050.tif 000004
【図４】
0003701050.tif 000005
【図５】
0003701050.tif 000006
【図６】
0003701050.tif 000007
【図７】
0003701050.tif 000008