JPH01258069A - 日本語文字列の形態素解析方式 - Google Patents
日本語文字列の形態素解析方式Info
- Publication number
- JPH01258069A JPH01258069A JP63085025A JP8502588A JPH01258069A JP H01258069 A JPH01258069 A JP H01258069A JP 63085025 A JP63085025 A JP 63085025A JP 8502588 A JP8502588 A JP 8502588A JP H01258069 A JPH01258069 A JP H01258069A
- Authority
- JP
- Japan
- Prior art keywords
- character string
- dictionary
- japanese
- word
- verb
- 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
- 238000000034 method Methods 0.000 claims abstract description 70
- 238000004458 analytical method Methods 0.000 claims description 33
- 230000000877 morphologic effect Effects 0.000 claims description 19
- 230000004927 fusion Effects 0.000 claims description 2
- 239000000203 mixture Substances 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 33
- 230000021615 conjugation Effects 0.000 abstract description 6
- 238000000605 extraction Methods 0.000 description 51
- 239000002245 particle Substances 0.000 description 18
- 238000006243 chemical reaction Methods 0.000 description 15
- 240000000220 Panda oleosa Species 0.000 description 7
- 235000016496 Panda oleosa Nutrition 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000013519 translation Methods 0.000 description 7
- 238000007796 conventional method Methods 0.000 description 5
- 101100274575 Caenorhabditis elegans clh-3 gene Proteins 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 239000000470 constituent Substances 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- FGRBYDKOBBBPOI-UHFFFAOYSA-N 10,10-dioxo-2-[4-(N-phenylanilino)phenyl]thioxanthen-9-one Chemical compound O=C1c2ccccc2S(=O)(=O)c2ccc(cc12)-c1ccc(cc1)N(c1ccccc1)c1ccccc1 FGRBYDKOBBBPOI-UHFFFAOYSA-N 0.000 description 1
- 241000954177 Bangana ariza Species 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000035622 drinking Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- NWLYGGNEKCELGY-CSKARUKUSA-N methyl 2-[(e)-2-(3,4-dimethoxyphenyl)ethenyl]-1h-benzimidazole-4-carboxylate Chemical compound N=1C=2C(C(=O)OC)=CC=CC=2NC=1\C=C\C1=CC=C(OC)C(OC)=C1 NWLYGGNEKCELGY-CSKARUKUSA-N 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Machine Translation (AREA)
- Document Processing Apparatus (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は日本語文字列の形態素解析方式に関する。
日本語文字列の形態素解析とは、与えられた日本語の文
章、またはその一部分を、それを構成する名詞、動詞、
助詞、助動詞などの構成諸単語に分解することである0
例えば、 “鳥が飛ばない、′という文章を形態素解析すると、(
“鳥”;名詞)、(“が”;主語を表わす助詞)、(“
飛ば″;動詞未然形)、(”ない″;打消の助動詞終止
形)と分解される。また、平仮名文章“とりがとばない
、″の場合は、(″とり″;名詞)、(“が”;主語を
表わす助詞)、(″とば″;動詞未然形)、(“ない”
;打消の助動詞終止形)となり、ローマ字文章の”to
rigatobanai、 ’の場合は、(11tor
l +l ;名詞)、(“ga”:主語を表わす助詞)
、(1/ tOb aIT ;動詞未然形)、(1’
naijl ;打消の助動詞終止形)のように分解され
る。
章、またはその一部分を、それを構成する名詞、動詞、
助詞、助動詞などの構成諸単語に分解することである0
例えば、 “鳥が飛ばない、′という文章を形態素解析すると、(
“鳥”;名詞)、(“が”;主語を表わす助詞)、(“
飛ば″;動詞未然形)、(”ない″;打消の助動詞終止
形)と分解される。また、平仮名文章“とりがとばない
、″の場合は、(″とり″;名詞)、(“が”;主語を
表わす助詞)、(″とば″;動詞未然形)、(“ない”
;打消の助動詞終止形)となり、ローマ字文章の”to
rigatobanai、 ’の場合は、(11tor
l +l ;名詞)、(“ga”:主語を表わす助詞)
、(1/ tOb aIT ;動詞未然形)、(1’
naijl ;打消の助動詞終止形)のように分解され
る。
日本語ワードプロセッサーにおける仮名漢字変換処理や
、日英機械翻訳システム、日本語による問合せができる
データベース検索システム等においては、単語ごとに分
ち書きされずに入力された平仮名、またはローマ字、ま
たは漢字仮名混じりの各文字列を、このように文章を構
成する諸単語に分解する必要がある。
、日英機械翻訳システム、日本語による問合せができる
データベース検索システム等においては、単語ごとに分
ち書きされずに入力された平仮名、またはローマ字、ま
たは漢字仮名混じりの各文字列を、このように文章を構
成する諸単語に分解する必要がある。
例えば、日本語ワードプロセッサーにおける仮名漢字変
換処理においては、単語辞書の見出しと。
換処理においては、単語辞書の見出しと。
単語間の連接可能性判定のために、テーブルを参照しな
がら上述した文章の分解処理を行ない、見出しに対応す
る漢字かな混じり表記をつなげて出力する。また、日英
機械翻訳システムや、日本語による問合せができ゛るデ
ータベース検索システム等においても、単語ごとに分ち
書きをされていない入力日本文がどのような単語から構
成されているかを知るために上記のごとき分解をした後
、構文解析、意味解析等を施し、その後に英語やデータ
ベース検索用の言語に変換する処理を施す、このように
、日本語の形態素解析は、日本語を機械により解析する
プロセスをふくむ言語処理システムにおいて必要不可欠
な処理の1つである。
がら上述した文章の分解処理を行ない、見出しに対応す
る漢字かな混じり表記をつなげて出力する。また、日英
機械翻訳システムや、日本語による問合せができ゛るデ
ータベース検索システム等においても、単語ごとに分ち
書きをされていない入力日本文がどのような単語から構
成されているかを知るために上記のごとき分解をした後
、構文解析、意味解析等を施し、その後に英語やデータ
ベース検索用の言語に変換する処理を施す、このように
、日本語の形態素解析は、日本語を機械により解析する
プロセスをふくむ言語処理システムにおいて必要不可欠
な処理の1つである。
以下、主として「言語の機械処理」第3章 長尾真他著
(三省堂)、p61〜p81を参考として従来方式を述
べる。
(三省堂)、p61〜p81を参考として従来方式を述
べる。
従来の形態素解析では、規則動詞の活用変化形も見出し
に含む計算機辞書を検索して、解析を行なっていた。こ
の方式(第1の従来方式)による処理を、文字列が、漢
字仮名混じり表記の日本語文である具体例で示せば、下
記のようになる。
に含む計算機辞書を検索して、解析を行なっていた。こ
の方式(第1の従来方式)による処理を、文字列が、漢
字仮名混じり表記の日本語文である具体例で示せば、下
記のようになる。
今、文字列が“押して動けば動かそう、″であるとしよ
う。
う。
このとき、文字列の先頭から1文字目のパ押″、2文字
目までの“押し”、3文字目までの“押して″、という
ように切り出してゆき、辞書に記載されているうちで最
も長い“押し”をとって、辞書に記載されたその見出し
に対応する品詞とともに以下のごとく記録する。
目までの“押し”、3文字目までの“押して″、という
ように切り出してゆき、辞書に記載されているうちで最
も長い“押し”をとって、辞書に記載されたその見出し
に対応する品詞とともに以下のごとく記録する。
(押しく動詞“押す′″の連用形))
残りの文字列″て動けば動かそう、′に対しても同様の
処理をし、続けて次を切り出す。
処理をし、続けて次を切り出す。
(て(格助詞))
ここで、品詞間の連説テーブルよりこの接続は合文法的
できであるとわかる。続けて、残りの文字列動けば動か
そう、″に対しても同様の処理をし1次を切り出す。
できであるとわかる。続けて、残りの文字列動けば動か
そう、″に対しても同様の処理をし1次を切り出す。
(動け(動詞“動く”の仮定形))
上記と同様の処理を繰返すことにより、最終的にはつど
のような連鎖を得ることができる。
のような連鎖を得ることができる。
(押し (動詞“押す”の連用形))
(て (格助詞))
(動け (動詞動く”の仮定形))
(ば (格助詞))
(動かそ(動詞“動かす”の未然形)
(う (助動詞))
上記分析の途中で、辞書に登録されていない文字列しか
切り出せなくなるか、或いは接続情報から、すべての切
り方が非文法的であることがわかった場合は、失敗とす
る。上記の例では形態素解析は成功している。この方法
には、活用語処理するためには、すべての用言のすべて
の活用形を辞書に網羅的に登録する必要があり、メモリ
ーを多量に消費するという問題点がある。
切り出せなくなるか、或いは接続情報から、すべての切
り方が非文法的であることがわかった場合は、失敗とす
る。上記の例では形態素解析は成功している。この方法
には、活用語処理するためには、すべての用言のすべて
の活用形を辞書に網羅的に登録する必要があり、メモリ
ーを多量に消費するという問題点がある。
一方、文字列が、平仮名表記であった場合、同様の処理
でつぎのような連鎖を得ることができる。
でつぎのような連鎖を得ることができる。
(おし (動詞“押す″の連用形))(て (格
助詞)) (うごけ (動詞′動<″の仮定形))(ば (格
助詞)) (うどかそ(動詞“動かす”の未然形)(う (助
動詞)) 文字列が、ローマ字表記であった場合も同様の処理でつ
ぎのような連鎖を得る。
助詞)) (うごけ (動詞′動<″の仮定形))(ば (格
助詞)) (うどかそ(動詞“動かす”の未然形)(う (助
動詞)) 文字列が、ローマ字表記であった場合も同様の処理でつ
ぎのような連鎖を得る。
(osi (動詞“押す″の連用形))(to
(格助詞)) (ugoka (動詞“動<″の仮定形))(ba
(格助詞)) (ugokaso (動詞動かす″の未然形)(1+
(助動詞)) このとき用いる辞書120は、例えば図12のごとき内
容であり、連接テーブル130は、図13のごとくなる
。連接テーブル130は、0゜1により、それぞれ対応
する行の品詞しこ\対応する列の品詞が接続不能か可能
かを表わしている。
(格助詞)) (ugoka (動詞“動<″の仮定形))(ba
(格助詞)) (ugokaso (動詞動かす″の未然形)(1+
(助動詞)) このとき用いる辞書120は、例えば図12のごとき内
容であり、連接テーブル130は、図13のごとくなる
。連接テーブル130は、0゜1により、それぞれ対応
する行の品詞しこ\対応する列の品詞が接続不能か可能
かを表わしている。
漢字仮名混じり文に対応するための、第2の従来方式と
しては、辞書見出しに漢字とローマ字を用いて、用言は
母音、子音単位での発音上の語幹を登録する1例えば“
動く′については見出しは″′動k IIとなる。そし
て、′″動kITの活用パターンは活用語尾情報として
分類記載する。
しては、辞書見出しに漢字とローマ字を用いて、用言は
母音、子音単位での発音上の語幹を登録する1例えば“
動く′については見出しは″′動k IIとなる。そし
て、′″動kITの活用パターンは活用語尾情報として
分類記載する。
この方法の概略は、まず、入力文字列の平仮名をローマ
字化し、パ動keba”の解析途中で“動kItが切り
出されたときは、「活用語尾テーブル」を参照して次の
11 eIIを仮定形語尾とみなし、以下に続く“ba
”″との連接が合文法的かどうか「活用話尾に含む品詞
間接続テーブル」を用いてでチエツクするというような
ものである。
字化し、パ動keba”の解析途中で“動kItが切り
出されたときは、「活用語尾テーブル」を参照して次の
11 eIIを仮定形語尾とみなし、以下に続く“ba
”″との連接が合文法的かどうか「活用話尾に含む品詞
間接続テーブル」を用いてでチエツクするというような
ものである。
前述した第1の従来方式で引用したのと同じ漢字かな混
じり文字列に対して上記第2の方式を適用すると、解析
結果は次のようになる。
じり文字列に対して上記第2の方式を適用すると、解析
結果は次のようになる。
(押si(動詞“押す′の連用形))
(te(格助詞))
(動ke(動詞“動く”の仮定形))
(ba (格助詞))
(動kag o (動詞“動かす”の未然形)(u
(助動詞)) また、第1の方式と同じ平板名文字列、およびローマ字
文字列に対して適用すると1次のような解析結果を得る
ことができる。
(助動詞)) また、第1の方式と同じ平板名文字列、およびローマ字
文字列に対して適用すると1次のような解析結果を得る
ことができる。
(osi(動詞“押す″の連用形))
(ts (格助詞))
(ugok e (動詞動<″の仮定形))(ba
(格助詞)) (ugokas o(動詞“動かす”の未然形)(u
(助動詞)) このとき用いる辞書140は、例えば第14図のごとき
内容であり、連接テーブル150は、第15図のごとく
なる。連接テーブル150は、0゜1により、それぞれ
対応する行の品詞に、対応する列の品詞が接続不能か否
かをあられしている。
(格助詞)) (ugokas o(動詞“動かす”の未然形)(u
(助動詞)) このとき用いる辞書140は、例えば第14図のごとき
内容であり、連接テーブル150は、第15図のごとく
なる。連接テーブル150は、0゜1により、それぞれ
対応する行の品詞に、対応する列の品詞が接続不能か否
かをあられしている。
この第2の方式によれば、辞書の見出し数を低減できる
代わりに、処理効率が大幅に低下するという問題点があ
る。つまり、解析中に用言の活用形に出合う毎に、用言
語幹と語尾の接続チエツク、語尾と他の品詞の接続チエ
ツクというように、必要な計算処理が倍化してくる。
代わりに、処理効率が大幅に低下するという問題点があ
る。つまり、解析中に用言の活用形に出合う毎に、用言
語幹と語尾の接続チエツク、語尾と他の品詞の接続チエ
ツクというように、必要な計算処理が倍化してくる。
動詞、助動詞などからなる動詞句の処理は、仮名漢字変
換における。一つの困難な部分であると同時に、日英翻
訳においても、構文解析、意味解析等の処理において重
要な部分である。しかしながら、上述した従来の日本語
文形m索解析処理方式によれば、用言活用形の処理にお
いて、辞書のメモリスペースを大量に使用するという犠
牲を払って計算処理効率を改善するか、計算時間を大量
にかけるという犠牲を払って辞書のメモリスペースを縮
小するかというトレードオフの問題が生ずる。その為、
小型のワードプロセッサー、超小型の日英翻訳機等の日
本文処理応用器具においては。
換における。一つの困難な部分であると同時に、日英翻
訳においても、構文解析、意味解析等の処理において重
要な部分である。しかしながら、上述した従来の日本語
文形m索解析処理方式によれば、用言活用形の処理にお
いて、辞書のメモリスペースを大量に使用するという犠
牲を払って計算処理効率を改善するか、計算時間を大量
にかけるという犠牲を払って辞書のメモリスペースを縮
小するかというトレードオフの問題が生ずる。その為、
小型のワードプロセッサー、超小型の日英翻訳機等の日
本文処理応用器具においては。
辞書見出し語数を少なくするとか、処理速度を低くする
などの性能低下を強いられてきた。
などの性能低下を強いられてきた。
本発明の目的は、メモリ使用量の低減を実現しつつ、同
時に解析処理効率も向上できるようにした形態素解析方
式を提供することにある。
時に解析処理効率も向上できるようにした形態素解析方
式を提供することにある。
上記目的を解決するために、本発明では、動詞などの用
言の見出しとしてその終止形の一部分のみ用い、上記用
言の活用部分は、他の特定の形態素との融合形にして登
録した辞書と、上記用言の終止形の一部分、および、上
記用言の活用部分と他の特定の形態素の融合形とを含む
拡張された形slR間の連接可能性判定テーブルを用い
ることを特徴とする。
言の見出しとしてその終止形の一部分のみ用い、上記用
言の活用部分は、他の特定の形態素との融合形にして登
録した辞書と、上記用言の終止形の一部分、および、上
記用言の活用部分と他の特定の形態素の融合形とを含む
拡張された形slR間の連接可能性判定テーブルを用い
ることを特徴とする。
本発明によれば、動詞などの用言の見出しとして、その
終止形の一部分のみ用い、その活用部分は、他の特定の
形態素との融合形にして登録した辞書を用いることによ
り、見出し語の数を減らし。
終止形の一部分のみ用い、その活用部分は、他の特定の
形態素との融合形にして登録した辞書を用いることによ
り、見出し語の数を減らし。
メモリ使用量の低減が実現できる。また、上記用言の終
止形の一部分および、上記用言の活用部分と他の特定の
形j!!素の融合形を含む拡張された形態素間の連接テ
ーブルを用いることにより、効率の良い用言活用部の解
析が実現できる。
止形の一部分および、上記用言の活用部分と他の特定の
形j!!素の融合形を含む拡張された形態素間の連接テ
ーブルを用いることにより、効率の良い用言活用部の解
析が実現できる。
以下1木刀式による形態素解析の1実施例として、仮名
漢字変換への応用例を図面を参照して説明する。
漢字変換への応用例を図面を参照して説明する。
第1図は、本発明方式による日本語形態素解析方式を適
用した日本語仮名漢字変換装置の1実施例をしめずブロ
ック図である。第1図において。
用した日本語仮名漢字変換装置の1実施例をしめずブロ
ック図である。第1図において。
1は文字列入力装置(例えばキーボード)であり、入力
された文字列は入力文字列エリアへ書き込まれる0本実
施例では、上記文字列は、ローマ字入力されるものと仮
定する。2はCPUであり、第1図の各ブロック間のデ
ータ転送等を第4図に示すフローチャート従って制御す
る。3は単語辞書であり、動詞等の用言が、その終止形
の一部、または各活用形に展開したものをローマ字表記
して見出しとし、各見出しに対して、その漢字ローマ字
混じりの出力表記および品詞コードが格納されている。
された文字列は入力文字列エリアへ書き込まれる0本実
施例では、上記文字列は、ローマ字入力されるものと仮
定する。2はCPUであり、第1図の各ブロック間のデ
ータ転送等を第4図に示すフローチャート従って制御す
る。3は単語辞書であり、動詞等の用言が、その終止形
の一部、または各活用形に展開したものをローマ字表記
して見出しとし、各見出しに対して、その漢字ローマ字
混じりの出力表記および品詞コードが格納されている。
単語辞書3は、第2図に示す如く、見出し31と、漢字
ローマ字混じり出力表記32と。
ローマ字混じり出力表記32と。
品詞コード33とを含む、この辞書はICメモリ。
磁気ディスク、磁気テープ等に格納されている。
4は連接テーブルであり、連接判定ルーチンとあわせて
、後で説明する。5は表示装置であり、入力文字列の確
認、および変換結果の表示に用いる。
、後で説明する。5は表示装置であり、入力文字列の確
認、および変換結果の表示に用いる。
6は上記入力されたローマ字文字列を記憶するための入
力文字列エリア、7は上記入力されたローマ字文字列の
文字数を記憶するためのエリア、8は次回位置候補エリ
アであり、入力文字列エリアの仮名文字列のどの位置か
ら、部分文字列抽出ルーチン14による部分文字列切り
出しと辞書検索を行うかをしめず複数個の値を記憶する
。次回位置候補エリア8の初期値は、入力文字列の先頭
をしめす“1”のみであるが、連接判定ルーチン15等
が動作すると、それにより決定された新しい次回位置が
追加される。
力文字列エリア、7は上記入力されたローマ字文字列の
文字数を記憶するためのエリア、8は次回位置候補エリ
アであり、入力文字列エリアの仮名文字列のどの位置か
ら、部分文字列抽出ルーチン14による部分文字列切り
出しと辞書検索を行うかをしめず複数個の値を記憶する
。次回位置候補エリア8の初期値は、入力文字列の先頭
をしめす“1”のみであるが、連接判定ルーチン15等
が動作すると、それにより決定された新しい次回位置が
追加される。
14は部分文字列抽出ルーチンであり、次回位置候補エ
リア8に記憶された位置から、1字目まで、2字目まで
、・・・・・・と、順次切り出しを続け、文末にいたっ
たら、切り出しの処理は終了する。
リア8に記憶された位置から、1字目まで、2字目まで
、・・・・・・と、順次切り出しを続け、文末にいたっ
たら、切り出しの処理は終了する。
この場所から切りだして得られる、辞書見出しにある部
分文字列すべてを得る。これらの部分文字列に対し、そ
れぞれに対応して辞書に記載された出力表記2品詞コー
ド、および、先頭位置として上記位置をとり1部分文字
列後尾の直後の文字の位置を次回位置とする。これら4
つの組は抽出結果格納エリア9へ記憶される。15は連
接判定ルーチンであり、抽出結果格納エリア9に格納さ
れている上記4つ組をひとつずつ取り出し、出力部分文
字列候補エリア10に格納されている既に連接判定処理
の終った各4つ組との間の連接可能性を、両組の品詞コ
ードと次回位置等を用いて判定する。4つ組同士の連接
可能性判定は次のように行なう、すなわち、連接テーブ
ル4により、第1の4つ組の品詞コードに第2の4つ組
の品詞コードが連接可能であり、かつ、第2の組の先頭
位置が第1の組の次回位置と一致すれば、第2の組は第
1の組に連接可能である。抽出結果格納エリア9の4つ
組で、出力部分文字列候補エリア10に格納されている
どれかの組に連接可能なものは。
分文字列すべてを得る。これらの部分文字列に対し、そ
れぞれに対応して辞書に記載された出力表記2品詞コー
ド、および、先頭位置として上記位置をとり1部分文字
列後尾の直後の文字の位置を次回位置とする。これら4
つの組は抽出結果格納エリア9へ記憶される。15は連
接判定ルーチンであり、抽出結果格納エリア9に格納さ
れている上記4つ組をひとつずつ取り出し、出力部分文
字列候補エリア10に格納されている既に連接判定処理
の終った各4つ組との間の連接可能性を、両組の品詞コ
ードと次回位置等を用いて判定する。4つ組同士の連接
可能性判定は次のように行なう、すなわち、連接テーブ
ル4により、第1の4つ組の品詞コードに第2の4つ組
の品詞コードが連接可能であり、かつ、第2の組の先頭
位置が第1の組の次回位置と一致すれば、第2の組は第
1の組に連接可能である。抽出結果格納エリア9の4つ
組で、出力部分文字列候補エリア10に格納されている
どれかの組に連接可能なものは。
出力部分文字列候補エリア10に格納し、その新たに格
納された4つ組中の次回位置を次回位置候補エリア8に
書き込む。
納された4つ組中の次回位置を次回位置候補エリア8に
書き込む。
11は第1ワークエリアであり、連接判定ルーチンの動
作中、出力部分文字列候補エリア10に格納されている
どれかの組に連接可能とわかった抽出結果格納エリア9
の4つ組を、−時記憶しておくのに用いる。初期状態で
は、すでに連接判定処理の終わった4つ組はないので1
部分文字列抽出ルーチンによって得られるすべての4つ
組を書き込む、二つの品詞コードの連接可能性判定は、
連接テーブル4を用いておこなう。
作中、出力部分文字列候補エリア10に格納されている
どれかの組に連接可能とわかった抽出結果格納エリア9
の4つ組を、−時記憶しておくのに用いる。初期状態で
は、すでに連接判定処理の終わった4つ組はないので1
部分文字列抽出ルーチンによって得られるすべての4つ
組を書き込む、二つの品詞コードの連接可能性判定は、
連接テーブル4を用いておこなう。
第3図は、連接テーブル4の1例を示す。連接テーブル
4は、i行j列が「Oか1か」により、それぞれ最左列
i番目の要素であるコードを持つ品詞に、最上行j番目
の要素であるコードを持つ品詞が「後置不能か可能か」
を示す。
4は、i行j列が「Oか1か」により、それぞれ最左列
i番目の要素であるコードを持つ品詞に、最上行j番目
の要素であるコードを持つ品詞が「後置不能か可能か」
を示す。
/Q
倉は出力部分文字列候補エリア、16は出力文字列選択
ルーチンであり、このルーチンは出力部分文字列候補エ
リア10に記憶された4つ組のうち、入力文字列の先頭
から末尾までに対応する連接可能な4つ組の各出力表記
をつなぎあわせ、漢字ローマ字混じり文字列にして第2
のワークエリア12へ書き込む、ここで、漢字かな混じ
り表記に複数の可能性がある場合には、複数の候補を評
価し、最も確からしいものを出力する必要があり、その
方法としては最長一致法等、幾つかの方法が知られてい
る0本発明では、この方法については特定しない。
ルーチンであり、このルーチンは出力部分文字列候補エ
リア10に記憶された4つ組のうち、入力文字列の先頭
から末尾までに対応する連接可能な4つ組の各出力表記
をつなぎあわせ、漢字ローマ字混じり文字列にして第2
のワークエリア12へ書き込む、ここで、漢字かな混じ
り表記に複数の可能性がある場合には、複数の候補を評
価し、最も確からしいものを出力する必要があり、その
方法としては最長一致法等、幾つかの方法が知られてい
る0本発明では、この方法については特定しない。
17は、ローマ字−平仮名変換ルーチンであり、第2の
ワークエリア12に格納された漢字ローマ字混じり文字
列中のローマ字部文を平仮名にして、出力用メモリ18
へ書き込む、その内容は、表示装置5によって確認する
ことが出来る。
ワークエリア12に格納された漢字ローマ字混じり文字
列中のローマ字部文を平仮名にして、出力用メモリ18
へ書き込む、その内容は、表示装置5によって確認する
ことが出来る。
13は第3のワークエリアであり、各ルーチンが動作す
るときに用いる内部変数等を一次格納するために用いら
れる。上述した各エリアとルーチンは、例えばICメモ
リ、磁気ディスク、磁気テープ等により実現されるメモ
リ装置内に用意される。
るときに用いる内部変数等を一次格納するために用いら
れる。上述した各エリアとルーチンは、例えばICメモ
リ、磁気ディスク、磁気テープ等により実現されるメモ
リ装置内に用意される。
第4図は本実施例における処理の流れ図である。
ここで、単語辞書の見出し等について、第2図を参照し
て若干の説明をする。ただし、簡単のため、以下必要と
なる五段活用動詞の処理に関する部分に限って述べる。
て若干の説明をする。ただし、簡単のため、以下必要と
なる五段活用動詞の処理に関する部分に限って述べる。
例として、′押す”の見出しは、本発明においては、こ
れをローマ字表記したときのosu″ のうち、活用
時に変化を起こさない’ o s #の部分のみとする
。そして、見出しに対応する記載項目として、漢字ロー
マ字混じり出力表記“押、n、「子音で終わる動詞語幹
」をあられす品詞コード、例えば“vc”を登録する。
れをローマ字表記したときのosu″ のうち、活用
時に変化を起こさない’ o s #の部分のみとする
。そして、見出しに対応する記載項目として、漢字ロー
マ字混じり出力表記“押、n、「子音で終わる動詞語幹
」をあられす品詞コード、例えば“vc”を登録する。
同様に、パ動く”に対しては、見出し“ugok” 、
記載項目(“動に# 、 vc)を登録する。つぎに本
方式で特徴的な、動詞活用語尾と助動詞、助詞等の融合
した見出しについて具体例に即して説明する。
記載項目(“動に# 、 vc)を登録する。つぎに本
方式で特徴的な、動詞活用語尾と助動詞、助詞等の融合
した見出しについて具体例に即して説明する。
本発明では1例えば活用形押5anai”、″押5as
eru”、“押sou” 、 “押5ite”、′押
5eba”等において、従来、”nai” u se
r u 11 、 ” u”。
eru”、“押sou” 、 “押5ite”、′押
5eba”等において、従来、”nai” u se
r u 11 、 ” u”。
“telI 、 uban等として扱ってきた助動詞
、助詞を、それぞれ直前の動詞活用語尾と融合して。
、助詞を、それぞれ直前の動詞活用語尾と融合して。
”anai”、 ”aseru 、 ou 、
”ite” 11eba##などとして一単位と
し、それらの無変化部分ana + 8116
、 otl”、 “its” 、 ”aba”等
を見出し語31とする。これらの見出し語31は、それ
ぞれ漢字ローマ字混じり出力表記32、及び、連接テー
ブルにおいてそれらを表現するコード33と組にして登
録する。以下において、漢字ローマ字混じり出力表記3
2は、単に出力表記と書くことがある。
”ite” 11eba##などとして一単位と
し、それらの無変化部分ana + 8116
、 otl”、 “its” 、 ”aba”等
を見出し語31とする。これらの見出し語31は、それ
ぞれ漢字ローマ字混じり出力表記32、及び、連接テー
ブルにおいてそれらを表現するコード33と組にして登
録する。以下において、漢字ローマ字混じり出力表記3
2は、単に出力表記と書くことがある。
品詞コード33は1例えば、”ana” についてはa
leとし、 ”ass”についてはa 2 c 、
”ite”についてはclc・・・・・・・・・などと
する、同様にして。
leとし、 ”ass”についてはa 2 c 、
”ite”についてはclc・・・・・・・・・などと
する、同様にして。
他にも5段活用動詞の語尾と、後置される助詞。
助動詞語幹との融合形をつくり、見出し語にする。
一方、語幹が母音でおわる動詞、例えば、′食べる”に
ついては、見出し31として“tabs”を登録し、漢
字ローマ字混じり出力表記32として“食be#9品詞
コード33として、vvを登録する。また、活用形“t
abenai”、 ”tabesaseru” 。
ついては、見出し31として“tabs”を登録し、漢
字ローマ字混じり出力表記32として“食be#9品詞
コード33として、vvを登録する。また、活用形“t
abenai”、 ”tabesaseru” 。
“tabayou”、 ”tabata” 、 ’t
abareba” 等を扱うため、従来どおりの非融
合形“na” 、 ”8ase“。
abareba” 等を扱うため、従来どおりの非融
合形“na” 、 ”8ase“。
“you” 、 ”to”e ”reba”等を見出
しとして9.録する。これらの間の接続の可否は、例え
ば第3図に示す如く、連接テーブル4によって定義され
る。
しとして9.録する。これらの間の接続の可否は、例え
ば第3図に示す如く、連接テーブル4によって定義され
る。
次に、本方式による日本文形態素解析を用いた仮名漢字
変換を、具体的な入力文字列 ” ositaugokebaugokasou ”を
用い、第4図のフローチャートに従って説明する。
変換を、具体的な入力文字列 ” ositaugokebaugokasou ”を
用い、第4図のフローチャートに従って説明する。
本実施例では複数変換結果が得られた場合の処理順序、
又は評価等については特定しないため、以下では煩雑さ
を避け、上記の動詞活用形を含む文が、どのようにして
“押して動けば動かそう″に変換されるかに限って説明
する。従って、この場合に切り出される文字列は、動詞
と助動詞である。
又は評価等については特定しないため、以下では煩雑さ
を避け、上記の動詞活用形を含む文が、どのようにして
“押して動けば動かそう″に変換されるかに限って説明
する。従って、この場合に切り出される文字列は、動詞
と助動詞である。
ローマ字文字列は、操作者によって文字列入力手段1よ
り入力され、入力文字列エリア6に書き込まれる。操作
者によって、変換開始コマンドが投入されると、4図の
フローチャートに従い、以下のように処理が進む。
り入力され、入力文字列エリア6に書き込まれる。操作
者によって、変換開始コマンドが投入されると、4図の
フローチャートに従い、以下のように処理が進む。
まず、処理400に従い次回位置候補エリア。
出力部分文字列候補エリアをクリアする0次に処理50
0で、入力文字数エリア7に、入力されたローマ字文字
列の文字数を書き込み、処理600で、次回位置候補エ
リア8に初期値1を書き込んだ後、部分文字列抽出ルー
チン700を呼び出す。
0で、入力文字数エリア7に、入力されたローマ字文字
列の文字数を書き込み、処理600で、次回位置候補エ
リア8に初期値1を書き込んだ後、部分文字列抽出ルー
チン700を呼び出す。
部分文字列抽出ルーチン700では、先ず処理7000
で、抽出結果格納エリアをクリアした後、処理7001
で、iを次回位置候補エリアにある1にセットし、1を
次回位置候補エリアから消去する0次に、処理7002
で、kを0にセットする。この場合、入力文字列の1文
字目“oI+は。
で、抽出結果格納エリアをクリアした後、処理7001
で、iを次回位置候補エリアにある1にセットし、1を
次回位置候補エリアから消去する0次に、処理7002
で、kを0にセットする。この場合、入力文字列の1文
字目“oI+は。
辞書見出しにないので、処理7003,7009゜70
10を経て7003に戻る。ここで、初めに述べた注意
に従い、読み0″をもっ″尾″などの名詞は考慮しない
。
10を経て7003に戻る。ここで、初めに述べた注意
に従い、読み0″をもっ″尾″などの名詞は考慮しない
。
更に、以下では煩雑さを避けるため
“入力文字列のi文字目からi+に文字目までは辞書見
出しにないので、処理7003,7009゜7010を
経て7003に戻る。″とが、″1人力文字列のi文字
目からi+に文字目までは辞書見出しにあり、iは1な
ノテ、処理7003,7004゜7005.7006,
7008,7009,7010を経て7003に戻る。
出しにないので、処理7003,7009゜7010を
経て7003に戻る。″とが、″1人力文字列のi文字
目からi+に文字目までは辞書見出しにあり、iは1な
ノテ、処理7003,7004゜7005.7006,
7008,7009,7010を経て7003に戻る。
n
とか、′入力文字列のi文字目からi+に文字目までは
辞書見出しにあり、iは1ではないので、処理7003
,7004,7005,7007゜7009.7010
を経て7003に戻る。″などの表現を、kを増やすご
とにいちいち記述することはしない、単に、′ループ7
003〜701Oにおいて、kが・・・の時入力文字列
のi文字目からi十に文字目までは辞書見出しにあり、
iは1ではないので、7003,7004,7005,
7007゜7009.7010を経て、4つ組(・・・
・・・・・・)を抽出結果格納エリアへ追加し、i +
k > Mでないので7003へ戻る。1等と記述す
る。
辞書見出しにあり、iは1ではないので、処理7003
,7004,7005,7007゜7009.7010
を経て7003に戻る。″などの表現を、kを増やすご
とにいちいち記述することはしない、単に、′ループ7
003〜701Oにおいて、kが・・・の時入力文字列
のi文字目からi十に文字目までは辞書見出しにあり、
iは1ではないので、7003,7004,7005,
7007゜7009.7010を経て、4つ組(・・・
・・・・・・)を抽出結果格納エリアへ追加し、i +
k > Mでないので7003へ戻る。1等と記述す
る。
ループ7003〜7010において、kが1の時、入力
文字列のi=1文字目からi+に=22文字目での“o
s”は辞書見出しにあり、iは1であるので、7003
,7004,7005,7006゜7008を経て、(
“押s”vc 1 3)を出力部分文字列候補エリア
10へ書き込み、′3”を1次回位置候補エリア8に書
き込む、そののちふたたび部分文字列抽出ルーチン70
0へ移る。
文字列のi=1文字目からi+に=22文字目での“o
s”は辞書見出しにあり、iは1であるので、7003
,7004,7005,7006゜7008を経て、(
“押s”vc 1 3)を出力部分文字列候補エリア
10へ書き込み、′3”を1次回位置候補エリア8に書
き込む、そののちふたたび部分文字列抽出ルーチン70
0へ移る。
7000で抽出結果格納エリアをクリアし、7001で
、iを次回位置候補エリアにある3にセットし、3を次
回位置候補エリアから消去する。
、iを次回位置候補エリアにある3にセットし、3を次
回位置候補エリアから消去する。
7002ではkをOにセットする。
ループ7003〜7010において、kが2の時、入力
文字列のi=3文字目からi+2=5文字目までの“i
ta” は辞書見出しにあり、iは1ではない(Dで、
7003,7004,7005゜7007.7009,
7010を経て、 (“ite”QIQ 3 6)を
抽出結果格納エリア9書き込む、先頭位置が1ではない
ので5部分文字列抽出ルーチン700を終了して連接判
定ルーチン800に移る。
文字列のi=3文字目からi+2=5文字目までの“i
ta” は辞書見出しにあり、iは1ではない(Dで、
7003,7004,7005゜7007.7009,
7010を経て、 (“ite”QIQ 3 6)を
抽出結果格納エリア9書き込む、先頭位置が1ではない
ので5部分文字列抽出ルーチン700を終了して連接判
定ルーチン800に移る。
連接判定ルーチン800では、第4図(c)に示す如く
、最初のステップ5oooで抽出結果格納エリアが空か
否かを判定する。この場合、空ではないので、ステップ
8001へ進む。
、最初のステップ5oooで抽出結果格納エリアが空か
否かを判定する。この場合、空ではないので、ステップ
8001へ進む。
8001ではワークエリア1をクリアし1次のステップ
8002で、Xを抽出結果格納エリア中の(“ite”
clc 3 6)にセットし、(“ite”ale
3 6)を抽出結果格納エリアから消去する。800
3では、jを1にセットし1Mを。
8002で、Xを抽出結果格納エリア中の(“ite”
clc 3 6)にセットし、(“ite”ale
3 6)を抽出結果格納エリアから消去する。800
3では、jを1にセットし1Mを。
出力部分文字列候補エリア10内の4つ組の数1にセッ
トする0次に8004で、yを抽出結果格納エリア中の
j=1番目の4つ組(“押s” vcl 3)にセット
し、8005でjを1増やす。
トする0次に8004で、yを抽出結果格納エリア中の
j=1番目の4つ組(“押s” vcl 3)にセット
し、8005でjを1増やす。
組Xの次回位置=組yの先頭位置であり、連接テーブル
により、oleはVCに連接可能であるので、8006
.8007を経て、800Bに従い、Xをワークエリア
1に追加する。以下、空なエリアにでも、“追加する″
ということにする。
により、oleはVCに連接可能であるので、8006
.8007を経て、800Bに従い、Xをワークエリア
1に追加する。以下、空なエリアにでも、“追加する″
ということにする。
組Xの次回位置6は、入力文字長エリアにある20を超
えないので、80o9に従い、8010へ移る。ステッ
プ8010では“6″を次回位置エリア8へ追加する。
えないので、80o9に従い、8010へ移る。ステッ
プ8010では“6″を次回位置エリア8へ追加する。
j=2は、出力部分文字列候補エリア10内の4つ組の
数M=1をこえるので、判定8011に従い、8012
へ移る。今、抽出結果格納エリアは空であるから、80
12の判定の結果、8013へ移る。8013では、ワ
ークエリア1中の(“its”clc 3 6) を
、出力部分文字列候補エリア10へ追加し、連接判定ル
ーチンを終わり、900へ移る(第4図(、))。
数M=1をこえるので、判定8011に従い、8012
へ移る。今、抽出結果格納エリアは空であるから、80
12の判定の結果、8013へ移る。8013では、ワ
ークエリア1中の(“its”clc 3 6) を
、出力部分文字列候補エリア10へ追加し、連接判定ル
ーチンを終わり、900へ移る(第4図(、))。
次回位置候補エリアは空でないので、部分文字列抽出ル
ーチン700へ移る。
ーチン700へ移る。
ルーチン700では、先ず7000に従い、抽出結果格
納エリアをクリアする0次に7001でiを次回位置候
補エリアにある6にセットし、6を次回位置候補エリア
から消去する。
納エリアをクリアする0次に7001でiを次回位置候
補エリアにある6にセットし、6を次回位置候補エリア
から消去する。
7002では、kt&oにセットする。
ループ7003〜7010において、kが3の時、入力
文字列のi=6文字目からi+3=9文字目までの”u
gok”は辞書見出しにあり、iは1ではないので、7
003,7004,7005゜7007.7009.7
010を経て、(11動にvc 6 10)を抽出結
果格納エリア9に書き込む、先頭位置が1ではないので
、部分文字列抽出ルーチン700を終了して連接判定ル
ーチン800に移る。
文字列のi=6文字目からi+3=9文字目までの”u
gok”は辞書見出しにあり、iは1ではないので、7
003,7004,7005゜7007.7009.7
010を経て、(11動にvc 6 10)を抽出結
果格納エリア9に書き込む、先頭位置が1ではないので
、部分文字列抽出ルーチン700を終了して連接判定ル
ーチン800に移る。
ルーチン8oOでは、抽出結果格納エリアは空でないの
で、8000によって8001へ進み、ワークエリア1
をクリアする。
で、8000によって8001へ進み、ワークエリア1
をクリアする。
ステップ8002では、Xを抽出結果格納エリア中の(
“動k”vc 6 10)にセットし、(“動k”v
c 6 10)を抽出結果格納エリアから消去する0
次に8003で、jを1にセットし、Mを、出力部分文
字列候補エリア10内の4つ組の数である2にセットす
る。
“動k”vc 6 10)にセットし、(“動k”v
c 6 10)を抽出結果格納エリアから消去する0
次に8003で、jを1にセットし、Mを、出力部分文
字列候補エリア10内の4つ組の数である2にセットす
る。
8004では、yを抽出結果格納エリア中のj=1番目
の4つ組(“押s”vc 1 3)にセットする。次
に、8005でjを1増やし1組Xの次回位置=組yの
先頭位置でないので、111006を経て80011へ
移る。
の4つ組(“押s”vc 1 3)にセットする。次
に、8005でjを1増やし1組Xの次回位置=組yの
先頭位置でないので、111006を経て80011へ
移る。
j=2は、出力部分文字列候補エリア10内の4つ組の
数M=2をこえないので、8011に従い、8012へ
移る。抽出結果格納エリアは空であるから、8004へ
移り、yを抽出結果格納エリア中のJ=2番目の4つ組
(“ite”clc 36)にセットする。
数M=2をこえないので、8011に従い、8012へ
移る。抽出結果格納エリアは空であるから、8004へ
移り、yを抽出結果格納エリア中のJ=2番目の4つ組
(“ite”clc 36)にセットする。
8005ではjを1増やす6組Xの次回位置=組yの先
頭位置であり、連接テーブルにより、vcはclcに連
接可能であるので、8006゜8007を経て、800
8に従い、Xをワークエリア1に追加する。
頭位置であり、連接テーブルにより、vcはclcに連
接可能であるので、8006゜8007を経て、800
8に従い、Xをワークエリア1に追加する。
組Xの次回位置10は、入力文字長エリアにある20を
超えないので+ 8009に従い、8010へ移り、”
10 ’″を次回位置エリア8へ追加する。
超えないので+ 8009に従い、8010へ移り、”
10 ’″を次回位置エリア8へ追加する。
j=3は、出力部分文字列候補エリア10内の4つ組の
数M=2をこえるので1次に8012へ移る。この場合
、抽出結果格納エリアは空であるから、8013へ移り
、ワークエリア1中の(“動k ”vc 6 10)
を、出力部分文字列候補エリア10へ追加し、連接判定
ルーチンを終わり、900へ移る。
数M=2をこえるので1次に8012へ移る。この場合
、抽出結果格納エリアは空であるから、8013へ移り
、ワークエリア1中の(“動k ”vc 6 10)
を、出力部分文字列候補エリア10へ追加し、連接判定
ルーチンを終わり、900へ移る。
次回位置候補エリアに10があるので、部分文字列抽出
ルーチン700へ移る。
ルーチン700へ移る。
ルーチン700で、7000に従い、抽出結果格納エリ
アをクリアする1次に7001でiを次回位置候補エリ
アにある10にセットし、10を次回位置候補エリアか
ら消去し、7002でkを0にセットする。
アをクリアする1次に7001でiを次回位置候補エリ
アにある10にセットし、10を次回位置候補エリアか
ら消去し、7002でkを0にセットする。
ループ7003〜7010において、kが2の時、入力
文字列の1=10文字目からi+2=12文字目までの
“aba”は辞書見出しにあり、iは1ではないので、
7003,7004,7005゜7007.7009,
7010を経て、 (“eba”c3c 10 13
)を抽出結果格納エリア9に書き込む、先頭位置が1で
はないので、部分文字列抽出ルーチン700を終了して
連接判定ルーチン800に移る。
文字列の1=10文字目からi+2=12文字目までの
“aba”は辞書見出しにあり、iは1ではないので、
7003,7004,7005゜7007.7009,
7010を経て、 (“eba”c3c 10 13
)を抽出結果格納エリア9に書き込む、先頭位置が1で
はないので、部分文字列抽出ルーチン700を終了して
連接判定ルーチン800に移る。
以下、説明を簡素にし、各ルーチン終了後の各エリアの
内容を追跡する。
内容を追跡する。
連接判定ルーチン800では、前記と同様の処理の結果
、(“eba”c3c 10 13)が、出力部分文
字列候補エリア10内の4つ組(″動k ”vc 6
10)に連接可能であるとわかり、出力部分文字列候
補エリア10に追加される。“13″は次回位置エリア
8へ追加され、連接判定ルーチン終了後、出力部分文字
列候補エリア10には、4つの4つ組 (“押s”vc 1 3)(“ite”clc 36
)(11動k”vc 6 10)(“eba”c3c
l。
、(“eba”c3c 10 13)が、出力部分文
字列候補エリア10内の4つ組(″動k ”vc 6
10)に連接可能であるとわかり、出力部分文字列候
補エリア10に追加される。“13″は次回位置エリア
8へ追加され、連接判定ルーチン終了後、出力部分文字
列候補エリア10には、4つの4つ組 (“押s”vc 1 3)(“ite”clc 36
)(11動k”vc 6 10)(“eba”c3c
l。
が存在し、次回位置エリア8には、t+ 13 t′が
存在する。連接判定ルーチンを終わり、900へ移る。
存在する。連接判定ルーチンを終わり、900へ移る。
次回位置候補エリアに’ 13 ”があるので、900
より部分文字列抽出ルーチン700へ移る。
より部分文字列抽出ルーチン700へ移る。
前記と同様の処理の結果、ループ7003〜7010に
おいて、kが3の時(“動k”vc13 17)が、k
が5の時(“動kas” v c13 19)が切り出
され、抽出結果格納エリア9へ書き込まれ、抽出結果格
納エリア9の内容は、(“動k”vc 13 17)
(“動kas”vc1319)となる6次回位置候
補エリアは空となる。この状態で部分文字列抽出ルーチ
ン700を終了し、連接判定ルーチン800に移る。
おいて、kが3の時(“動k”vc13 17)が、k
が5の時(“動kas” v c13 19)が切り出
され、抽出結果格納エリア9へ書き込まれ、抽出結果格
納エリア9の内容は、(“動k”vc 13 17)
(“動kas”vc1319)となる6次回位置候
補エリアは空となる。この状態で部分文字列抽出ルーチ
ン700を終了し、連接判定ルーチン800に移る。
抽出結果格納エリア9に2つの4つ組があるので、ルー
プ8002〜8012を2回り、出力部分文字列候補エ
リア10の、4つの4つ組(“押5IIvc 1 3
) (“ite”clc 3 6)(“動k 71
vc 6 10)(“eba”c3c 10 13
)のそれぞれと、抽出結果格納エリア9の2つの4つ組
(“動k”vc 13 17)(“動kasljvc
13 19)との間の連接判定を行い、(“動k”
vo 13 17)も(1′動kas”vc13 1
9)も、(“sba”c3c 10 13)に連接可
能とわかる。
プ8002〜8012を2回り、出力部分文字列候補エ
リア10の、4つの4つ組(“押5IIvc 1 3
) (“ite”clc 3 6)(“動k 71
vc 6 10)(“eba”c3c 10 13
)のそれぞれと、抽出結果格納エリア9の2つの4つ組
(“動k”vc 13 17)(“動kasljvc
13 19)との間の連接判定を行い、(“動k”
vo 13 17)も(1′動kas”vc13 1
9)も、(“sba”c3c 10 13)に連接可
能とわかる。
連接判定ルーチン800終了時に、出力部分文字列候補
エリア10には、6つの4つ組(“押S″vc ]、
3)(“its″ale 36)(“動k”ve
6 10)(“eba”c3cl。
エリア10には、6つの4つ組(“押S″vc ]、
3)(“its″ale 36)(“動k”ve
6 10)(“eba”c3cl。
13) (“動k”vc 13 17)(“動kas
”vc 13 19) が存在し、次回位置候補エリアには “19”、′17” が存在する。
”vc 13 19) が存在し、次回位置候補エリアには “19”、′17” が存在する。
次回位置候補エリアは空でないので、900より部分文
字列抽出ルーチン700へ移る。
字列抽出ルーチン700へ移る。
7001に従い、次回位置候補エリアの19”。
“17″のうちのひとつ“17”を選び、1=17とし
、11171#を次回位置候補エリアから消去する。以
下、前記と同様の処理の結果、ループ7003〜701
0において、なにも切りだされず、抽出結果格納エリア
9は空のままで、部分文字列抽出ルーチンを終わり、連
接判定ルーチン800へ移る。
、11171#を次回位置候補エリアから消去する。以
下、前記と同様の処理の結果、ループ7003〜701
0において、なにも切りだされず、抽出結果格納エリア
9は空のままで、部分文字列抽出ルーチンを終わり、連
接判定ルーチン800へ移る。
抽出結果格納エリアは空なので、8000により、連接
判定ルーチン800を終了、900へ移る。
判定ルーチン800を終了、900へ移る。
次回位置候補エリアには“19″が存在するので1部分
文字列抽出ルーチン700へ移る。
文字列抽出ルーチン700へ移る。
7001で、1=19とし、′19”を次回位置候補エ
リアから消去する0次回位置候補エリアは空となる。
リアから消去する0次回位置候補エリアは空となる。
ループ7oO3〜7010において、kが1の時、入力
文字列の1=19文字目からi+1=20文字目までの
“ou”は辞書見出しにあり、iは1ではないので、7
003,7004,7005゜7007.7009,7
010を経て、(“ou”a3c 19 21)を抽
出結果格納エリア9に書き込む、先頭位置が1ではない
ので、部分文字列抽出ルーチン700を終了して連接判
定ルーチン800に移る。
文字列の1=19文字目からi+1=20文字目までの
“ou”は辞書見出しにあり、iは1ではないので、7
003,7004,7005゜7007.7009,7
010を経て、(“ou”a3c 19 21)を抽
出結果格納エリア9に書き込む、先頭位置が1ではない
ので、部分文字列抽出ルーチン700を終了して連接判
定ルーチン800に移る。
連接判定ルーチン800では、(′″ou”a3c19
21)が、出力部分文字列候補エリア10内の4つ組
に連接可能であるとわかり、出力部分文字列候補エリア
10に追加される。”21”は入力文字数20を超える
ので、次回位置エリア8には追加されない、連接判定ル
ーチン終了後、出力部分文字列候補エリア10には、7
つの4つ組(“押S”vc 1 3)(“its”c
lc 36)(”動k” vc 6 10) (”
eba” c3c10 13)(“動k”vc 13
17)(″動kas” vc 13 19) (“
ou”a3cが存在し、次回位置エリア8は空である。
21)が、出力部分文字列候補エリア10内の4つ組
に連接可能であるとわかり、出力部分文字列候補エリア
10に追加される。”21”は入力文字数20を超える
ので、次回位置エリア8には追加されない、連接判定ル
ーチン終了後、出力部分文字列候補エリア10には、7
つの4つ組(“押S”vc 1 3)(“its”c
lc 36)(”動k” vc 6 10) (”
eba” c3c10 13)(“動k”vc 13
17)(″動kas” vc 13 19) (“
ou”a3cが存在し、次回位置エリア8は空である。
連接判定ルーチンを終わり、900へ移る。 次回位置
候補エリアは空であるので、900により、出力文字列
選択ルーチン100oへ移る。
候補エリアは空であるので、900により、出力文字列
選択ルーチン100oへ移る。
出力文字列選択ルーチン1000では、出力部分文字列
候補エリア10中から、入力文字列の先頭から末尾まで
に対応する、連接可能な4つ粗列(”ou” a3c
19 21)(“動kas” v c13 19)、
(“eba”c3c 10 13)、(“動k”vc
6 10)、(“its″c 1 c36)、(1
′押S”ve 1 3)をとりだし、“押S”ite
”動kII #eba”動kas″″Ou″をつなげ
、ワークエリア2へ書き込む、出力文字列選択ルーチン
1000を終了し、ローマ字−平板名変換ルーチン11
00に移る。
候補エリア10中から、入力文字列の先頭から末尾まで
に対応する、連接可能な4つ粗列(”ou” a3c
19 21)(“動kas” v c13 19)、
(“eba”c3c 10 13)、(“動k”vc
6 10)、(“its″c 1 c36)、(1
′押S”ve 1 3)をとりだし、“押S”ite
”動kII #eba”動kas″″Ou″をつなげ
、ワークエリア2へ書き込む、出力文字列選択ルーチン
1000を終了し、ローマ字−平板名変換ルーチン11
00に移る。
ローマ字−平板名変換ルーチン1100では、ワークエ
リア2へ書き込まれた “押5ite動keba動kasou”の、ローマ字部
分を平仮名化し、 “押して動けば動かそう″ に変換して出力用メモリ18へ書き込む、この結果が1
200で表示手段5によって出力される。
リア2へ書き込まれた “押5ite動keba動kasou”の、ローマ字部
分を平仮名化し、 “押して動けば動かそう″ に変換して出力用メモリ18へ書き込む、この結果が1
200で表示手段5によって出力される。
上記の場合、出力候補は一つである。
上記処理においては、a詞語幹と語尾、語尾と他の品詞
の接続チエツクをしないので、形態素解析にかかるステ
ップ数は、従来方式のうちの前者と同程度である。また
、辞書見出しには、各用言に対し、原則的に一つの見出
ししか必要としないため、辞書に必要なメモリ容量は、
上記従来形式の後者と同等である。尚、”ugokas
”を 11ugokl+とパ8s”にわけ、“as″を
、前段動詞を他動詞化する補助用言語幹として登録して
もよい、そうすれば、辞書の動詞見出しに関するメモリ
容量は、11 kaSI+ で終わる語幹を持つ動詞
の数−1だけ、更に低減できる。
の接続チエツクをしないので、形態素解析にかかるステ
ップ数は、従来方式のうちの前者と同程度である。また
、辞書見出しには、各用言に対し、原則的に一つの見出
ししか必要としないため、辞書に必要なメモリ容量は、
上記従来形式の後者と同等である。尚、”ugokas
”を 11ugokl+とパ8s”にわけ、“as″を
、前段動詞を他動詞化する補助用言語幹として登録して
もよい、そうすれば、辞書の動詞見出しに関するメモリ
容量は、11 kaSI+ で終わる語幹を持つ動詞
の数−1だけ、更に低減できる。
更に、各ルーチンは、専用ハード化することも可能であ
る。
る。
本実施例では、入力文字列の走査方向は、先頭から末尾
方向へかけてであるが、転置した連接テーブルを用いれ
ば、同様の制御構造で末尾から先頭方向への走査に対応
できる。また、本連接テーブルと転置した連接テーブル
を合わせて用いれば、制御構造を適当に修正することに
より、必要ならば双方向混在した走査にも対応できる。
方向へかけてであるが、転置した連接テーブルを用いれ
ば、同様の制御構造で末尾から先頭方向への走査に対応
できる。また、本連接テーブルと転置した連接テーブル
を合わせて用いれば、制御構造を適当に修正することに
より、必要ならば双方向混在した走査にも対応できる。
また、本実施例では、音便処理については、特定しない
、従って、変形例として以下の様な方法を採用してもよ
い。
、従って、変形例として以下の様な方法を採用してもよ
い。
(1)“動いて″を“動i”+“to”に分解し、音便
によって不規則に変化する部分′動i”は見出し語とし
て登録し、第5図のごとき辞書、第6図のごとき連接テ
ーブルを用いて本実施例と同様にして“ugoita”
を、′動<″に変換する方式。
によって不規則に変化する部分′動i”は見出し語とし
て登録し、第5図のごとき辞書、第6図のごとき連接テ
ーブルを用いて本実施例と同様にして“ugoita”
を、′動<″に変換する方式。
(2)“動its”を“動”+“its”と分解し、′
動″を1名詞も兼ねる見出し語として登録する。
動″を1名詞も兼ねる見出し語として登録する。
″動″は二つの品詞コード、例えば名詞としてn、動詞
としてvckを与える。また、動詞としてのua”には
、”kana” ” k a s s I+ 、 ko
u 11゜111tθ”、 ’ksba” 等が接
続するので、これらは“動”に連接可能であることを示
すため、それぞれ、例えば、alk、a2に、a3k。
としてvckを与える。また、動詞としてのua”には
、”kana” ” k a s s I+ 、 ko
u 11゜111tθ”、 ’ksba” 等が接
続するので、これらは“動”に連接可能であることを示
すため、それぞれ、例えば、alk、a2に、a3k。
clk、c2に、c3に等の品詞コードを与え、第7図
のごとき辞書、第8図のごとき連接テーブルを用いて1
本実施例と同様にして“ugoita”を、′動いて”
に変換する方式、この方式では。
のごとき辞書、第8図のごとき連接テーブルを用いて1
本実施例と同様にして“ugoita”を、′動いて”
に変換する方式、この方式では。
”kana” 1jkase#j 、 jJkoul
l 、 ”ite## 、 ”kaba”等が、新たに
見出し語として増えるが、必要な新たな見出し語の数は
、数十個にすぎず、音便による不規則変化形をすべて見
出しに登録すると、見出しは数百側増えるのに比べて、
優れた方法である。
l 、 ”ite## 、 ”kaba”等が、新たに
見出し語として増えるが、必要な新たな見出し語の数は
、数十個にすぎず、音便による不規則変化形をすべて見
出しに登録すると、見出しは数百側増えるのに比べて、
優れた方法である。
(3)上記(2)の変形として、第9図のごとく、見出
しを平板名表記し、出力表記は、漢字平板名混じりとし
た辞書と第8図のごとき連接テーブルを用いて、本実施
例と同様にして“ugoite”を、゛動いて″に変換
する方式、この方式では。
しを平板名表記し、出力表記は、漢字平板名混じりとし
た辞書と第8図のごとき連接テーブルを用いて、本実施
例と同様にして“ugoite”を、゛動いて″に変換
する方式、この方式では。
ローマ字入力の場合は”ugoite”は、−度平板名
変換して“うごいて”にする必要があるが、平板名人力
の場合は、変換の必要がなく、制御構造は本実施例と同
一でよい。
変換して“うごいて”にする必要があるが、平板名人力
の場合は、変換の必要がなく、制御構造は本実施例と同
一でよい。
更に、第10図のごとき構成を持つ日英機械翻訳方式に
おいても、形態素解析の部分で、本実施例と同様の活用
語処理を行うことにより、見出し語の削減が可能になる
。この場合は1例えば、第11図のごとき形態素解析用
辞書、第8図のごとき連接テーブルを用いる。入力文字
列に、どの様な単語が含まれているかという結果を構文
解析へわたし、残りの処理を実行すればよい。
おいても、形態素解析の部分で、本実施例と同様の活用
語処理を行うことにより、見出し語の削減が可能になる
。この場合は1例えば、第11図のごとき形態素解析用
辞書、第8図のごとき連接テーブルを用いる。入力文字
列に、どの様な単語が含まれているかという結果を構文
解析へわたし、残りの処理を実行すればよい。
日英翻訳に限らず、入力された日本語を、他の自然言語
、又は形式言語に翻訳する場合、まず第1に、入力され
た日本語の文にどの様な単語が含まれているかを判別す
ることが必須であるので、本発明は、日本語の形態素解
析を必要とするそれらのシステムにも応用できる。
、又は形式言語に翻訳する場合、まず第1に、入力され
た日本語の文にどの様な単語が含まれているかを判別す
ることが必須であるので、本発明は、日本語の形態素解
析を必要とするそれらのシステムにも応用できる。
本発明方式によれば、辞書の小型化と、効率の良い動詞
当の活用形の形態素解析が可能になるので、日本語の形
態素解析を必要とするすべての日本語処理機器、例えば
、ワードプロセッサー、日英翻訳装置等において、効率
のよいメモリの利用と高速化が実現される。特に、メモ
リ利用の高効率化は、超小型の日英翻訳装置等において
、同じメモリスペースで遥かに多くの単語を収納できる
事を意味し、その機能の高度化が図れる。
当の活用形の形態素解析が可能になるので、日本語の形
態素解析を必要とするすべての日本語処理機器、例えば
、ワードプロセッサー、日英翻訳装置等において、効率
のよいメモリの利用と高速化が実現される。特に、メモ
リ利用の高効率化は、超小型の日英翻訳装置等において
、同じメモリスペースで遥かに多くの単語を収納できる
事を意味し、その機能の高度化が図れる。
第1図は本発明による日本語形態素解析装置の一実施例
を示す構成図、第2図は上記装置でもちいる単語辞書の
構成の1例を示す図、第3図は単語に付与された品詞コ
ードの間の連接テーブルの1例を示す図、第4図(a)
〜(c)は上記実施例装置の動作を示すフローチャート
、第5図、第7図、第9図は音便処理を考慮したときの
単語辞書の変形例を示す図、第6図、第8図は音便処理
を考慮したときの単語に付与された品詞コードの間の連
接テーブルを示す図、第10図は本発明の応用システム
の1例を示す図、第11図は上記応用例で用いる形態素
解析辞書の1例を示す図、第12図〜第15図はそれぞ
れ従来の辞書120゜140と連接テーブル130,1
50を説明するための図である。 1・・・文字列入力手段、2・・・CPU、・・・3・
・・単語辞書、4・・・連接テーブル、5・・・表示手
段、6・・・入力文字列エリア、7・・・入力文字数エ
リア、8・・・次回位置候補エリア、9・・・抽出結果
格納エリア、10・・・出力部分文字列候補エリア、1
1・・・ワークエリア1.12・・・ワークエリア2.
12・・・ワークエリア3.14・・・部分文字列抽出
ルーチン、15・・・連接判定ルーチン、16・・・出
力部分文字列選択ルーチン、17・・・ローマ字−平仮
名変換ルーチン、18・・・出力用メモリ、31・・・
見出し、32・・・出力表記、33・・・品詞コード。 第 2 VJ ″ 2I・・見立し 22・パitローフ了り毘しりおり表を乙5− 完呵コ
ード 第 3 目 ノ 5I ・克土し S2・ ・11T1えもSL−りと刀泰J乙53 ゛品
詞コート 第 61!] 71・・克出し 72・・側酊τローマτ4Lじすと力を幽ニア3゛品請
フード 第 δ 口 / 第 ′ニア 目 す ?l −剋出し ’72−4gcts−p*t−リと力表記デ3 ゛゛σ
6σ6審■ト− 第 tt a /10・・−見、tL Ht・・・品呵コード Δ 第 12 口 /20・・−見=し /21−表記 122−・品 詞 第 /3 口 130・・・連接テープ”ル 第 74 口 βν /40・・−地出し /41−・・表に /+2−一品詞
を示す構成図、第2図は上記装置でもちいる単語辞書の
構成の1例を示す図、第3図は単語に付与された品詞コ
ードの間の連接テーブルの1例を示す図、第4図(a)
〜(c)は上記実施例装置の動作を示すフローチャート
、第5図、第7図、第9図は音便処理を考慮したときの
単語辞書の変形例を示す図、第6図、第8図は音便処理
を考慮したときの単語に付与された品詞コードの間の連
接テーブルを示す図、第10図は本発明の応用システム
の1例を示す図、第11図は上記応用例で用いる形態素
解析辞書の1例を示す図、第12図〜第15図はそれぞ
れ従来の辞書120゜140と連接テーブル130,1
50を説明するための図である。 1・・・文字列入力手段、2・・・CPU、・・・3・
・・単語辞書、4・・・連接テーブル、5・・・表示手
段、6・・・入力文字列エリア、7・・・入力文字数エ
リア、8・・・次回位置候補エリア、9・・・抽出結果
格納エリア、10・・・出力部分文字列候補エリア、1
1・・・ワークエリア1.12・・・ワークエリア2.
12・・・ワークエリア3.14・・・部分文字列抽出
ルーチン、15・・・連接判定ルーチン、16・・・出
力部分文字列選択ルーチン、17・・・ローマ字−平仮
名変換ルーチン、18・・・出力用メモリ、31・・・
見出し、32・・・出力表記、33・・・品詞コード。 第 2 VJ ″ 2I・・見立し 22・パitローフ了り毘しりおり表を乙5− 完呵コ
ード 第 3 目 ノ 5I ・克土し S2・ ・11T1えもSL−りと刀泰J乙53 ゛品
詞コート 第 61!] 71・・克出し 72・・側酊τローマτ4Lじすと力を幽ニア3゛品請
フード 第 δ 口 / 第 ′ニア 目 す ?l −剋出し ’72−4gcts−p*t−リと力表記デ3 ゛゛σ
6σ6審■ト− 第 tt a /10・・−見、tL Ht・・・品呵コード Δ 第 12 口 /20・・−見=し /21−表記 122−・品 詞 第 /3 口 130・・・連接テープ”ル 第 74 口 βν /40・・−地出し /41−・・表に /+2−一品詞
Claims (1)
- 1、日本語文字列を走査し、予め用意された日本本語単
語の見出し文字列、および、その文字列の文法情報を含
む単語辞書を参照しながら、上記文字列を辞書の見出し
に登録されている文字列の連鎖に分割し、上記文法情報
に基づいて各単語間の連接可能性を判定する連接テーブ
ルを参照して、上記分割が合文法的か否かを判定する日
本語文字列の形態素解析方法において、日本語文字列を
先頭から末尾へ、または、末尾から先頭へ、または、上
記双方向を混合して走査し、ローマ字も含む日本語の表
記方法で見出しを表記し、特定の単語についてはその一
部分のみを、上記単語の残りの部分は、他の特定の単語
との融合形を辞書の見出しとして登録し、機械検索可能
なかたちにコード化した辞書を用いること、および、上
記特定の単語の一部分のみ、および上記特定の単語の残
りの部分と他の特定の単語との融合形を含んだ、拡張さ
れた単語のあいだの連接テーブルを用いることを特徴と
する日本語文字列の形態素解析方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63085025A JP2959769B2 (ja) | 1988-04-08 | 1988-04-08 | 日本語文字列の形態素解析方法及び装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63085025A JP2959769B2 (ja) | 1988-04-08 | 1988-04-08 | 日本語文字列の形態素解析方法及び装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH01258069A true JPH01258069A (ja) | 1989-10-16 |
JP2959769B2 JP2959769B2 (ja) | 1999-10-06 |
Family
ID=13847184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63085025A Expired - Fee Related JP2959769B2 (ja) | 1988-04-08 | 1988-04-08 | 日本語文字列の形態素解析方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2959769B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05324705A (ja) * | 1992-05-20 | 1993-12-07 | Csk Corp | 日本語形態素解析システム及び形態素解析方式 |
JPH0635957A (ja) * | 1992-07-20 | 1994-02-10 | Csk Corp | 日本語形態素解析システム及び形態素解析方式 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61210479A (ja) * | 1985-03-12 | 1986-09-18 | Fujitsu Ltd | 日本語文の形態素解析方式 |
JPS6336474A (ja) * | 1986-07-31 | 1988-02-17 | Nec Corp | 辞書検索方式 |
-
1988
- 1988-04-08 JP JP63085025A patent/JP2959769B2/ja not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61210479A (ja) * | 1985-03-12 | 1986-09-18 | Fujitsu Ltd | 日本語文の形態素解析方式 |
JPS6336474A (ja) * | 1986-07-31 | 1988-02-17 | Nec Corp | 辞書検索方式 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05324705A (ja) * | 1992-05-20 | 1993-12-07 | Csk Corp | 日本語形態素解析システム及び形態素解析方式 |
JPH0635957A (ja) * | 1992-07-20 | 1994-02-10 | Csk Corp | 日本語形態素解析システム及び形態素解析方式 |
Also Published As
Publication number | Publication date |
---|---|
JP2959769B2 (ja) | 1999-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4544674B2 (ja) | 選択文字列に関連する情報を提供するシステム | |
JP3196868B2 (ja) | テキストをインデックス及び検索するための関連ワード形態の限定状態トランスジューサ | |
KR100453227B1 (ko) | 번역 지원 시스템에서의 유사 문장 검색 방법 | |
US6401061B1 (en) | Combinatorial computational technique for transformation phrase text-phrase meaning | |
JPH0351020B2 (ja) | ||
US20070179932A1 (en) | Method for finding data, research engine and microprocessor therefor | |
JP2001043236A (ja) | 類似語抽出方法、文書検索方法及びこれらに用いる装置 | |
JP3992348B2 (ja) | 形態素解析方法および装置、並びに日本語形態素解析方法および装置 | |
JP2006251843A (ja) | 同義語対抽出装置及びそのためのコンピュータプログラム | |
Thet et al. | Word segmentation for the Myanmar language | |
JP2001515616A (ja) | 自動自然言語翻訳 | |
HIRPSSA et al. | POS Tagging for Amharic Text: A Machine Learning Approach. | |
Vasiu et al. | Enhancing tokenization by embedding romanian language specific morphology | |
Silberztein | Text indexation with INTEX | |
JP7247460B2 (ja) | 対応関係生成プログラム、対応関係生成装置、対応関係生成方法、及び翻訳プログラム | |
JPS5892063A (ja) | イデイオム処理方式 | |
Saito et al. | Multi-language named-entity recognition system based on HMM | |
JPH01258069A (ja) | 日本語文字列の形態素解析方式 | |
JP4088171B2 (ja) | テキスト解析装置、方法、プログラム及びそのプログラムを記録した記録媒体 | |
Moghadam et al. | A Survey of Part of Speech Tagging of Latin and non-Latin Script Languages: A more vivid view on Persian | |
KR100404320B1 (ko) | 문장 자동 색인 방법 | |
Kadam | Develop a Marathi Lemmatizer for Common Nouns and Simple Tenses of Verbs | |
JP3508312B2 (ja) | キーワード抽出装置 | |
Laporte | Symbolic natural language processing | |
Kefena et al. | POS Tagging for Amharic: A Machine Learning Approach |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |