JPH0140372B2 - - Google Patents

Info

Publication number
JPH0140372B2
JPH0140372B2 JP56071906A JP7190681A JPH0140372B2 JP H0140372 B2 JPH0140372 B2 JP H0140372B2 JP 56071906 A JP56071906 A JP 56071906A JP 7190681 A JP7190681 A JP 7190681A JP H0140372 B2 JPH0140372 B2 JP H0140372B2
Authority
JP
Japan
Prior art keywords
kanji
kana
word
dictionary
code
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.)
Expired
Application number
JP56071906A
Other languages
English (en)
Other versions
JPS57185575A (en
Inventor
Hitoshi Suzuki
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP56071906A priority Critical patent/JPS57185575A/ja
Publication of JPS57185575A publication Critical patent/JPS57185575A/ja
Publication of JPH0140372B2 publication Critical patent/JPH0140372B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/53Processing of non-Latin text

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)

Description

【発明の詳細な説明】 本発明は文字の発音に従つて仮名キーボードか
ら仮名文字を入力し、漢字または漢字仮名混り文
を出力するような日本語ワードプロセツサ等の仮
名漢字変換処理装置に関するものであり、更に詳
細には特に仮名・漢字変換を行なう場合に用いら
れる仮名漢字変換用辞書類のメモリ容量の圧縮に
関するものである。
一般に仮名漢字変換処理装置は、日本語ワード
プロセツサ、日本語オフイスコンピユータ等の日
本語の入力処理に必要な機器に用いられるもので
あり、漢字を直接採字することなく、仮名を入力
することによつて漢字または漢字仮名混り文の出
力を得るようにしたもので最近商品化されつつあ
る。このような装置は膨大な漢字数を持つ日本語
をわずかな数の仮名キーによつて入力することが
出来るため装置の小型化の可能性を有しているに
もかかわらず、変換処理のための変換用辞書及び
文法テーブルを収容するメモリの容量が膨大なも
のになるためフロツピ・デイスク等の外部記憶装
置を必要とし、また正しい変換率を高めるために
複雑な処理と大容量の処理用バツフアメモリを必
要とし、装置全体が大きくなり、また価格も高い
ものになつていた。
本発明は上記の点に鑑みて成されたものであ
り、変換用辞書類及び各種テーブルのデータ構造
を工夫することにより、辞書類及び各テーブルの
収容メモリの必要な容量を少なくし、半導体メモ
リの使用を可能とした仮名漢字変換処理装置を提
供することを目的とするものである。
更に本発明は変換用辞書類及びバツフアメモリ
のデータ構造を工夫することにより、小型かつ安
価であり、更に仮名から漢字への変換率が高く、
しかも処理速度の速い仮名漢字変換処理装置を提
供することを目的とするものである。
上記目的を達成するため、本発明の仮名漢字変
換処理装置は、仮名見出し部を可変長差分構造と
した変換用音訓辞書及び変換用単語辞書のインデ
ツクスと、仮名見出し部を可変長差分構造とする
とともに、この仮名見出し部と漢字コード部の間
に品詞コード部を設けて、この品詞コード部を仮
名見出し部と漢字コード部のセパレータとなるよ
うに構成した変換用単語辞書と、所定のデータ構
造で収容された活用語尾表及び付属語表とを備え
る如く構成するように成している。
以下本発明について説明するが、まず最初に本
発明の仮名漢字変換処理装置の用いられる日本語
ワードプロセツサについて説明する。
第1図は日本語ワードプロセツサの構成の一例
を示すブロツク図である。第1図に於て、1はキ
ーボードであり、第2図に更に詳細に示している
ように50音のカナキー群1A、漢字変換指示を行
う変換キー1B,1C及び漢字変換された時に同
音語の漢字が複数存在する場合にその中から特定
のものを選択する呼び出しキー1D,1Eを備え
ている。上記キーボードより入力された仮名文字
列は中央処理装置(CPU)2に入力され、該
CPU2は処理プログラム装置3のプログラムに
従つて入力された仮名文字列を仮名漢字変換処理
装置4に送り、その変換結果を得る。この変換結
果は表示装置5により表示され、また同音語が存
在する場合にはキーボード1上の次候補呼び出し
キー1Dまたは前候補呼び出しキー1Eの指示に
より、次候補呼び出しまたは前候補呼び出しのフ
アンクシヨン情報を仮名漢字変換処理装置4に送
り、次候補または前候補の漢字を出力として得
る。これらの出力は表示装置5に順次表示され、
正しい候補が選択されるとキーボード1からの指
示により文章バツフア6に入れられ、該文章バツ
フア6の内容が印字装置7により印字される。
第3図は上記した仮名漢字変換処理装置部分の
内部構成例を示し、入力バツフア31は変換すべ
き仮名文字列を入力する入力文バツフア31−1
及び文節変換、音訓変換、次候補呼び出し、前候
補呼び出しの各変換モードを指定するフアンクシ
ヨンレジスタ31−2を有している。出力バツフ
ア32は変換結果の入力される出力文バツフア3
2−1及び同音語の残り語数が入る同音語数カウ
ンター32−2から成る。処理バツフア33は変
換処理の途中で必要な辞書検索該当データを記憶
する検索該当バツフア33−1、文法解析を行う
ための文法解析バツフア33−2、最終的に得ら
れた候補データを記憶する最終候補バツフア33
−3、同音語の候補総数を記憶する同音語総数レ
ジスタ33−4及びその他の一時バツフア33−
5から成つている。また辞書フアイル群34は単
語辞書34−1及びそのインデツクス34−2、
音訓辞書34−3、活用語尾表フアイル34−
4、付属語表フアイル34−5、及び接続行列フ
アイル34−6から成る。演算処理装置(CPU)
2はスタート端子2−1よりのスタート信号によ
つて処理プログラム装置3のプログラムに従つて
変換処理を開始する。また解除端子2−2は処理
を途中で中断するときに用いる。
今入力文バツフア31−1に「あい」が入力さ
れ、音訓変換キー31Cが操作されると、CPU
2は処理プログラム装置3の処理プログラムに従
つて音訓辞書34−3を検索し、該辞書34−3
の仮名見出し部の「あい」と同じ仮名見出し部を
見つけた後、その漢字表記部の内容を検索該当バ
ツフア33−1へ取り出し、同音語総数を同音語
総数レジスタ33−5に取り出す。この時検索該
当バツフア33−1には「哀、愛、挨、姶、相、
藍」が取り出されている。またバツフア33−1
の最初の情報及びレジスタ33−5の内容はそれ
ぞれ出力文バツフア32−1及び同音語数カウン
タ32−2に入力され、その内容が表示され、所
望の漢字でない場合には次候補呼び出しキー1D
を操作して、次の同音語「愛」の出力文バツフア
32−1に呼び出し、同様の操作を繰返して所望
の変換漢字を得ることになる。
以上の様な動作で仮名・漢字変換が行なわれる
が、本発明は上記した辞書類及び各テーブルのメ
モリ容量を圧縮することにあるが、説明の都合
上、最初に音訓辞書について説明する。
(1) 音訓辞書 一般に音訓辞書は漢字とその読みとの対照テ
ーブルであり、仮名漢字変換に用いる場合には
第4図に示す如く、読みaを与えて漢字bが得
られるようになつている。
JIS第1水準漢字2965字についてこのような
音訓辞書を作成すると仮名見出し数が約2000、
仮名見出しの平均文字数が約3文字となる。ま
た漢字部は一つの漢字で複数の読みを持つもの
があるため、漢字部に含まれる延べ漢字数は約
6000字となる。
このような音訓辞書をメモリに収納する方法
として従来より単純可変長方式により圧縮を計
つたものがある。
このような単純可変長方式は第5図に示す如
く、仮名見出しと漢字表記の長さに夫々合わせ
てメモリ領域をとるものであり、一語は語長部
分51と仮名見出し部52と漢字表記部53,
53…(仮名見出し部の読みに対応した漢字の
数だけ存在する)から構成され、上記した語長
部分51は仮名見出し部52と漢字表記部5
3,53…の総バイト数を記憶している。上記
仮名見出し部52は音訓の読みを一文字一バイ
トで収容し、仮名コードはJIS6226に定められ
ている第2バイトを用い、仮名見出しに続く漢
字表記部53には2バイト構成のJIS6226漢字
コードを用いている。
JIS6226の漢字コードは第6図に示すような
コード表になつており、Aの部分が仮名、英
数、記号の領域、Bの部分が第1水準漢字
(2965字)の領域、Cの部分が第2水準漢字の
領域となつており、この領域A及びBの一部を
省略した内容を第7図及び第8図に示してい
る。また漢字コードの2バイト構成を第9図に
示す。この第9図から分るように漢字コードは
上位(第1バイト)部分71と下位(第2バイ
ト)部分72とから構成され、それぞれのバイ
トの最上位ビツトは空きビツトになつている。
上記第5図において仮名見出し部52と漢字
表記部53との区切りは各バイトの最上位ビツ
トが“1”か“0”かによつて区別し、仮名見
出し部52の最上位ビツトは“0”に設定し、
漢字表記部53の最上位ビツトは“1”に設定
している。また第1バイト目の語長部51には
可変長の長さ(仮名見出し部52と漢字表記部
53の総バイト数)を1バイトで収容する。
以上の如き単純可変長方式によつて音訓辞書
をメモリに記憶させた場合、見出し数約2000、
仮名見出しの平均3文字、漢字延べ数約6000字
とするとメモリ容量は約20Kバイトとなり、固
定長方式で記憶する場合に比べてメモリ容量が
縮少されるが、しかしこれでもまだ大容量のメ
モリを必要とし、音訓辞書の大型化を避けるこ
とができない。
これに対して本発明のデータ構造によつて同
じ音訓辞書を収納した場合、約12Kバイトに圧
縮することが出来る。
以下その圧縮技法について説明する。
(1‐1) 仮名見出し部の圧縮 音訓辞書の仮名見出部は前述した様に例え
ば第4図aの如くなり、大半の見出しが前見
出しの一部と重複していることがわかる。例
えば、「あい」は前見出しの「あ」と1文字
重複しており、また「あいだ」は前見出しの
「あい」と2文字に重複している。このこと
を利用して仮名見出し部を差分構造としてメ
モリ圧縮を図ることが出来る。
この差分構造辞書の各語のフオーマツトは
第10図に示す如く、先頭に前見出し語との
重複文字を示す重複文字数領域101を2ビ
ツト構成で設けている。また、前記重複文字
数領域101に続く6ビツトを仮名見出し部
と漢字表記部の総バイト数を表わす語長領域
102とし、該領域102の内容により次の
仮名見出し語の先頭アドレスが演算される。
次に上記語長領域102に続いて差分仮名
見出し部103が設けられる。この仮名見出
し部103は前の仮名見出し部の語との重複
部を除いた残りの文字を仮名コード
(JIS6226の第2バイト)で収容する。この時
コードの最上位ビツトは“0”とし、漢字部
のコードと区別する。(漢字部は最上位ビツ
トを“1”とする)。また上記仮名見出し部
103に続いて漢字表記部104,104…
が設けられる。
第11図に差分構造辞書の一部分が示され
ており、例えば、第4語の「あいだ」の場
合、前見出し(第3語)が「あい」であるか
ら、重複文字数領域101に“2”が保持さ
れ、重複していない残りの「だ」が差分仮名
見出し部103に仮名コードで収容される。
なお重複文字数領域101は2ビツト構成
であり、最大“3”までしか表わせないた
め、4文字以降は差分仮名見出し部103に
仮名コードで収容する。
以上の圧縮により差分仮名見出し部は平均
約1.2バイトとなり、2000見出しでは2.4Kバ
イトとなる。
次に漢字部の圧縮について説明する。
(1‐2) 漢字表記部の圧縮 漢字表記部の圧縮において、漢字コードと
してここではJIS6226コードをモデイフアイ
したものを用いる。JIS6226コードは前記し
た第9図に示すように(7ビツト×2)の2
バイト構成になつており、第6図に示すコー
ド表に示す斜線の部分だけに実際のコードが
割り当てられており、空白の部分は未使用で
ある。A領域の仮名・英数・記号部が約650
種、B領域の第1水準漢字が2965字、C領域
の第2水準漢字が3384字の計7000種であり、
詰めて収容すれば13ビツトに収まる。以降漢
字コードは13ビツトに詰めたJIS6226並びの
コードで説明する。
第8図はJIS6226コード表の第1水準漢字
部Bの一部を抜き書きしたものであるが、漢
字の配列は代表音訓の五十音順に並んでい
る。このことを利用して漢字表記部の圧縮を
図ることができる。
すなわち、例えば第4図の仮名見出し
「あ」に対応した漢字は「亜」「唖」「娃」
「阿」「窪」であり、これをJIS6226コードで
表わすと、3021、3022、3023、3024、3726と
なり、前の4字については漢字コードが連続
している。「い」の場合では30字も連続して
いる。
従つて本発明では漢字表記部104に各漢
字のコードを入れるのではなく、最初の漢字
コードと連続漢字数を入れるようにしてメモ
リの圧縮を行なうように成されている。
第12図に圧縮漢字コードのデータ構成を
示し、同図aは単独の漢字コードのデータ構
成(2バイトコード)を示し、同図bは連続
漢字数を附加した漢字コードのデータ構成
(3バイトコード)を示す。同図において第
1バイト目の最上位ビツトD7は仮名コード
と区別するためのビツトであり“1”に設定
される(仮名コードの場合は“0”)。また7
ビツト目D6は2バイトコードと3バイトコ
ードを区別するためのビツトであり、2バイ
トコードの場合には“0”、3バイトの場合
は“1”に設定されている。(逆でもよい)。
またD5は空きとなつている。第1バイトの
ビツトD4〜D0と第2バイトのビツトD7〜
D0の計13ビツトに先に説明したJIS6226並び
の13ビツトの漢字コードが収容される。
なお、余つている第1バイトのD5の1ビ
ツトを用いればJIS6226コードを14ビツトに
入れることが出来る(JIS6226コードは9図
に示すように7ビツト×2バイトの構成にな
つているため、14ビツトの容量があればその
まま入れることができる。)が、後に説明す
る自立後辞書の漢字コードと合わせるために
13ビツトコードが用いられている。(音訓辞
書のみであれば14ビツトコードで良い。) また3バイトコードの第3バイト部分には
連続コードの漢字数が収容される。
以上のようにして、第4図に示す音訓辞書
を第11図に示すように圧縮すると、漢字表
記部の総バイト数が約7.5Kバイトとなり重
複文字数と語長部の2Kバイト及び差分仮名
見出し部の2.4Kバイトを加えて11.9Kバイト
となり、第5図に示した単純可変長構造にし
た場合の約20Kバイトに比べて大幅な圧縮が
成されたことになる。
なおこの音訓辞書は漢字単位の仮名漢字変
換である音訓変換時に用いられるだけでな
く、文節変換時に使われる単語辞書のメモリ
容量圧縮にも用いることができる。
(1‐3) 圧縮音訓辞書の検索 今キーボード1の操作により、入力文バツ
フア31−1に「あい」を入力して仮名・漢
字変換する場合について説明すると、まず音
訓変換キー1Cの操作に応答して、CPU2
に変換の指示が与えられ、まず入力文1文字
目と音訓辞書34−3第1語の仮名見出し1
文字目が比較される(第11図参照)。この
場合には、いずれも「あ」で等しいため、続
いて2文字目を比較するが、第1語の仮名見
出し2文字目は存在しないため、音訓辞書の
選択アドレスを第2語目に進める。音訓辞書
第2語目は重複文字数1であるため仮名見出
しは2文字目から始まる。これを入力文2文
字目と比較すると「あ」と「い」で異なつて
いるため、音訓辞書の選択アドレスを第3語
目に進める。第3語目の重複文字数が1であ
るため、仮名見出しは2文字目から始まる。
これを入力文2文字目と比較すると一致し、
また3文字目は入力文、音訓辞書共に存在し
ないので、第3語目の漢字表記部の内容が検
索されて検索該当バツフア33−1に移され
る。この時最初の漢字「哀」に対応した漢字
コード(3025)と共に連続漢字数2が読み出
され、漢字コード(3025)に数値1を2回加
算して、「哀」に続く「愛」及び「挨」の漢
字コード(3026)、(3027)を再現してバツフ
ア33−1に記憶される。また、残りの漢字
「相」、「藍」、「姶」については、その漢字コ
ード(416A)、(4D75)、(3028)がそのまま
バツフア33−1に記憶される。この後操作
者は次候補呼び出しキー1Dを操作して「あ
い」に対する所望の漢字を出力させることに
なる。
(2) 単語辞書 仮名漢字変換に用いられる一般的な単語辞書
の内容を第13図に示す。第13図において仮
名見出し部aには各語の読みが入つている。ま
た活用する語(動詞、形容詞、形容動詞等)は
その語幹部(変化しない部分)だけが入つてい
る。たとえば形容詞「美しい」は「美しかろ
(う)」、「美しかつ(た)」、「美しく」、「美し
い」、「美しい(人)」、「美しけれ(ば)」と活用
変化するため、変化しない部分(美し)が入れ
られる。漢字表記部bには仮名見出し部aに対
応した漢字表記が入つており、品詞活用形部c
はその語の品詞及び活用形を示している。
このような単語辞書をメモリに収容する方法
として、従来より単純可変長方式によりメモリ
の圧縮を計つたものがある。
このような単純可変長方式は第14図に示す
如く、仮名見出しと漢字表記の長さに夫々合わ
せてメモリ領域をとるものであり、一語は語長
部141と仮名見出し部142と漢字表記部1
43及び品詞コード部144から構成され、上
記した語長部141は仮名見出し部142と漢
字表記部143の総バイト数を1バイトで収容
記憶している。また上記仮名見出し部142は
第13図の仮名見出しaを仮名コード(例えば
JIS6226の第2バイト等)で収容し、漢字表記
部143と区別するため最上位ビツトを“0”
としている。漢字表記部143は第13図の漢
字表記bを漢字コードで収容しており(例えば
JIS6226コード)、仮名見出し部142及び品詞
コード部144と区別するため最上位ビツトを
“1”としている。品詞コード部143は第1
3図の品詞及び活用形cをコード化して8ビツ
トで収容している。このような構成により漢字
表記部143の終りは語長部141の内部から
算出することが出来る。
以上のような単純可変長方式によるメモリ構
成によつて第13図に示した単語辞書を収容す
ると、仮名見出し部142の平均バイト数が約
3.9バイト、漢字表記部の平均バイト数が約4.5
バイトであり、また語長部141と品詞コード
部144の各2バイトを加えることにより一語
が平均10.4バイトとなる。従つて、この方式に
より3万語の単語辞書を作成すると約312Kバ
イトのメモリ容量が必要となる。
これに対して本発明のデータ構造を用いるこ
とにより後述する如く、1単語平均約5.5バイ
トとなり、3万語辞書では約165Kバイトに大
幅に圧縮することが出来る。
以下その圧縮技法について説明する。
(2‐1) 仮名見出し部の圧縮 単語辞書の仮名見出し部の圧縮は前述した
音訓辞書の圧縮と同様であり、辞書全体をま
ず仮名見出しのコード順に並び換え、1つ前
の仮名見出しと重複する部分を重複文字数と
して3ビツト構成で収容する。例えば「あ
い」は1つ前の仮名見出し「あ」と1文字重
複しているので重複文字数は1となる。この
ことを利用して単語辞書の仮名見出し部を差
分構造としてメモリ圧縮を図ることが出来
る。
この差分構造による単語辞書の各語のフオ
ーマツトは第15図に示す如く、先頭に前見
出し語との重複文字数を示す重複文字数領域
151を3ビツト構成で設けている。また、
前記重複文字数領域151に続く5ビツトを
仮名見出し部153と漢字表記部155の総
バイト数を表わす語長領域152としてい
る。次に上記語長領域152に続いて差分仮
名見出し部153が設けられる。この仮名見
出し部153は前の仮名見出し部の語との重
複部を除いた残りの文字部分、例えば「あ
い」の場合には「い」が仮名コード
(JIS6226の第2バイト)で収容される。なお
JIS6226の第2バイトは第9図に示すように
最上位ビツトが空いているので、このビツト
を“0”として後述する品詞コード部154
と区別するように成されている。なお重複文
字数領域151は3ビツト構成であるため、
最大“7”まで表わすことが出来るが、8文
字目以降の重複については差分仮名見出し部
153に仮名コードで収容される。
以上の圧縮により差分仮名見出し部153
は平均約1.3バイトとなる。
差分仮名見出し部153に続く1バイトは品
詞コード部に割り当てられ、以下この品詞コー
ド部154について説明する。
(2‐2) 品詞コード部 品詞コード部154は1バイトで構成され
ており、その最上位ビツトは“1”にセツト
され、差分仮名見出し部153と区別するよ
うに成されている。(差分仮名見出し部の最
上位ビツトと逆であればよい。)従つて品詞
コードとしては残りの7ビツトが用いられる
ため、128種類までの分類が可能となるが、
その品詞コードの割り付け例を第18図に示
している。この例では品詞コード0〜29まで
は活用しない語、または活用しても活用語尾
を含んだ形で入つている単語の品詞コードに
割り当てられており、該0〜29までの品詞コ
ードは後述する接続行列の行番号にも対応し
ている。また品詞コード部30〜127までは活
用する語または品詞を2つ以上持つ語に割り
当てられており、この30〜127までの品詞コ
ードを持つ語は後述する活用語尾を示すテー
ブルの参照が必要となる。
また本発明によれば、品詞コード部154
が第14図に示した従来のものと異なり、仮
名見出し部153のすぐ後に設けられている
が、このような構成により次のような利点が
生じる。すなわち 差分仮名見出し部153と漢字表記部1
55は品詞コード部154(最上位ビツト
“1”)がセパレータになつているため、漢
字表記部155の始まりを見出すために漢
字コードの最上位ビツトを使う必要がなく
なり、漢字表記部155の各バイト8ビツ
ト全てを漢字コードを収容するために使用
することができる。
仮名漢字変換処理において、変換された
文節の妥当性を文法的にチエツクする際に
は品詞コード部154の情報のみが必要で
あり、漢字表記部155の情報は不要であ
る。漢字表記部155の情報が必要になる
のは文節として妥当性が文法的に認められ
て出力文バツフア32−1に入れられる時
である。従つて辞書検索の時には該当した
時の品詞コードだけをまず検索該当バツフ
ア33−1に移し、漢字表記部155の内
容は後で必要になつた時、持つて来ること
が出来るように、そのアドレスのみを該当
バツフアに入れておくように成されてい
る。このように構成することにより、辞書
検索の時に漢字表記部155をアクセスす
る必要がなく、検索スピードが向上する。
次に漢字表記部の圧縮について説明する。
(2‐3) 漢字表記部の圧縮 漢字表記部155の圧縮は漢字表記部15
5に含まれる仮名文字の圧縮と漢字の圧縮に
区分される。
第17図に圧縮漢字コードのデータ構成を
示し、同図aは2バイトコードのデータ構成
を示し、同図bは1バイトコードのデータ構
成を示す。この2種類のコードの区別は第1
バイト目の最上位ビツトD7によつて行なわ
れ、D7=1であれば2バイトコード、D7=
0であれば1バイトコードであると規定され
ている。(逆であつてもよい)。
最初に第17図aに示す2バイトコードの
構成について説明する。
第17図aにおいて、第1バイト目のD4
〜D0と第2バイト目のD7〜D0の計13ビツト
には先に説明したJIS6226並びの13ビツトの
漢字コードが入れられる。また第1バイトの
残りのD6及びD5の2ビツトには、その漢字
を平仮名で書いた時の文字数、すなわち読み
文字数が入れられる。このように漢字表記部
155に各漢字毎に、その読み文字数を収容
するようにしたことが本発明の一つの大きな
特徴点である。この読み文字数を付加するこ
とによつて、以後説明する漢字表記部155
のメモリ圧縮が図れるのみならず、後述する
ように変換結果出力文に含まれる漢字を漢字
1字単位で平仮名に直すことが可能となり、
非常に大きな特徴点となつている。
上記したように1つの漢字に対する読み文
字数はD6及びD5の2ビツトに収容している
ため1〜4文字を表わすことができる。
又、小文字のや、ゆ、よは読みの先頭に使
われることはないので、前の文字と一緒にし
て1文字と数えることにより、大部分の漢字
は読み文字数4以内に入ることになる。(例
えば「しよう」は読み文字数2と数える)。
読み文字数が5以上の場合は、2バイトコー
ドの後に1バイトコードを付加して表わす。
単語辞書に含まれる漢字の読み文字数におい
て2文字以下のものが多い場合は漢字読み文
字数を2バイトコードの第1バイト目のD6
の1ビツトだけで表わしてもよい。この場合
には残りの第1バイトD5〜D0と第2バイト
D7〜D0の14ビツトが漢字コードとして使え
るのでJIS6226コードを14ビツトに入れるこ
とができる。(JIS6226コードは7ビツト×2
バイトの構成になつているが、第1バイト目
を1ビツト右へシフトすれば14ビツトに詰め
ることができる。第9図参照)この場合読み
文字数が3文字を越えた漢字は1バイトコー
ドを付加する。
次に第17図bに示す1バイトコードの構
成について説明する。
第17図bにおいて、1バイトコードはそ
の値によつて3つの意味を持つている。即ち
D6〜D0の7ビツトで表わせる値が0〜115
は音訓辞書番号、116〜123は平仮名連続文字
数、124〜127は2バイトコードの漢字の読み
文字数が収容可能文字数(2ビツトなら4、
1ビツトなら2)を越えた場合のオーバー文
字数をそれぞれ表わす。オーバー文字数は
124、125、126、127がそれぞれ1、2、3、
4を表わす。たとえば2バイトコードの読み
文字数収容可能文字数が最大4であつたと
き、読み文字数6の漢字を表わすには、2バ
イトコードの第1バイトD6、D5で読み文字
数の最大値4を表わし、オーバーした分の2
文字は続く1バイトコードの値を125とし、
2文字オーバーであることを示すように成し
ている。また1バイトコードの値が116〜123
であれば、漢字表記部に含まれる平仮名の連
続文字数を表わす。この場合116、117、…
122、123はそれぞれ平仮名連続文字数が1、
2、…7、8であることを意味するよう規定
している。たとえば「行つたり来たり」とい
う語に含まれる平仮名部をその連続文字数で
表わすと「行(1){3}来(1){2}」となる。
ここで()内の数字は漢字の読み文字数であ
り{}内の数字が平仮名連続の文字数であ
る。これにより「行つたり来たり」に含まれ
るひらがな5文字がわずか2バイトで表わす
ことができ、漢字2字分の4バイトを加えて
も6バイトでよいことになる。これに対して
従来の如くすべてを2バイトの漢字コードで
表わすと、7文字分で14バイトも要する。
漢字部に含まれる平仮名を文字数で表わす
方法は本発明者が先に特願昭56−36157「カナ
漢字変換用辞書」でも提案しているが前に提
案した方法は漢字の読み文字数が入つていな
いため、漢字表記部の最初と最後のひらがな
文字列にしか適用できなかつた。例えば「い
い加減」を「{2}加減」「言いぐさ」を「言
{3}」と表わすことは前出願の方法でも可能
であるが、「考え方」を「考{1}方」とす
ると、これを復元するのに漢字の読み文字数
が入つていないので仮名見出し「かんがえか
た」がわかつていても「考ん方」、「考が方」、
「考え方」、「考か方」の4通りに復元されて
しまう。これに対して本願では「考え方」を
「考(3){1}方(2)」と表わすように成してい
るため、仮名見出し「かんがえかた」を参照
して、「考え方」を一意的に復元することが
可能であり前出願の方法により圧縮率を更に
上げることができる。
また1バイトコードの0〜115は音訓辞書
番号を表わす。この場合D6の1ビツトは漢
字の読み文字数を表わし、D6=0のとき読
み文字数1、D6=1のとき読み文字数2を
意味する。2バイトコードの時と同様に小文
字の「や、ゆ、よ」は前出文字といつしよに
1文字でで教える。残りのD5〜D0の6ビツ
トすなわち0〜57が実際の音訓辞書番号であ
る。例として「愛(あい)」が音訓辞書番号
を用いて1バイトコードで表わせることを示
す。「あい」を第4図の音訓辞書で引くと、
「哀」、「愛」、「挨」、「姶」…が見つかり、
「愛」は音訓辞書「あい」の見出しの第2番
目の漢字であることがわかる。また「愛」は
読み文字数2である。従つて1バイトコード
のD6を1とし、D5〜D0を2とした
(01000010)が「愛(あい)」の1バイトコー
ドとなる。2バイトコードに復元する場合は
読み文字数2とその仮名見出しから読みが
「あい」であることを知り、第11図の音訓
辞書を検索することにより、音訓辞書の「あ
い」の見出しの第2番目の漢字コードをもつ
てくればよい。第11図の音訓辞書は第4図
のものを圧縮しているが第2番目の漢字コー
ドを得ることは前述した如く容易である。
以上の如くして単語辞書の漢字表記部15
5に含まれる大半の漢字が1バイトコードで
表わすことができる。1バイトコードに表わ
せない漢字は読み文字数が3以上か、音訓辞
書にその読みで収容されていないもの、ある
いは音訓辞書に収容されていてもその番号が
58を越えるものだけである。
以上のような圧縮技法を用いて圧縮した単語
辞書の一部分を第16図に示している。
以上のようにして、第13図に示す単語辞書
を第16図に示すように漢字表記部155を圧
縮すると、平均2.2バイトとなる。従つて差分
仮名見出し部の1.3バイトと重複文字数および
語長部の1バイトと品詞コード部の1バイトを
加えると一語平均約5.5バイトとなり、3万語
辞書を僅か165Kバイトで収容することが出来
る。
第14図に示す単純可変長方式においては一
語平均約10.4バイト、3万語辞書で約312Kバ
イトになることから比較すると、漢字の読み文
字数の情報が付加されているにもかかわらず、
大幅な圧縮が成されたことになる。
一般に仮名漢字変換では、複数の同音語候補
が出た場合、文法的処理などでその候補順位が
決定できなければ、あらかじめ定められた使用
頻度の順に出力することになる。このために単
語辞書に使用頻度の情報を付加する必要があ
る。一般的にはこの使用頻度を各単語ごとに1
バイト程度のメモリスペースをとり収容してい
る。
これに対して本発明の単語辞書は仮名見出し
のコード順に単語を並べているが、同音語があ
つた場合はその使用頻度の高いものから順に並
べている。従つて特別なメモリスペースを持つ
ことなく使用頻度の情報を含ませていることに
なる。
(3) 単語辞書インデツクス 本発明の単語辞書は第16図に示す構造を有
しているが、与えられた仮名文字列から単語辞
書を検索して該当したものを得るために、一番
前から一語一語全部調べていたのでは時間がか
かる。そこで単語辞書をいくつかのブロツクに
分割して各ブロツクの先頭仮名見出しとそのア
ドレスを表にしたインデツクスを用いるのが一
般的手法である。
単語辞書を検索する場合まずこのインデツク
スを調べ、求める語がどのブロツクにあるかを
知り、次に単語辞書のそのブロツク内だけを検
索するようにすれば時間が単縮できる。たとえ
ば3万語の辞書を600のブロツクに分けると各
ブロツクの語数は約50となり、インデツクスの
検索により該当するブロツクが見つかつたあと
はそのブロツクの先頭から最大約50語だけ調べ
ればよい。(インデツクスの検索で該当ブロツ
クが複数あつた場合はそれらのブロツクも検索
する必要がある)。
検索速度を上げるためにインデツクスを設け
ることは一般的手法であるが、本発明はインデ
ツクスのメモリ容量を圧縮したことと、各イン
デツクスにそのインデツクスが示すブロツクの
語数を付加したことを特徴としている。
第19図及び20図に本発明のインデツクス
のデータ構造を示す。単語辞書の容量は先に述
べたように、3万語辞書で約165Kバイトであ
り、アドレスは18ビツトあれば表わすことがで
きる。(18ビツトで表わせる最大は256Kバイト
である)。従つて本実施例においては余裕をみ
て19ビツトとする。(512Kバイト)また第19
図に示すようにこのうち上位3ビツトをHアド
レス191として第1バイト目に収容する。残
りの16ビツトはLアドレス196として最後の
2バイトに収容する。重複文字数領域192、
差分仮名見出し部194は音訓辞書や単語辞書
の場合と同様であるため、ここでは説明を省略
する。重複文字数領域192は2ビツトで構成
され0〜3を表わす。語長部193は3ビツト
で構成された差分仮名見出し部194のバイト
数を0〜7の範囲で表わす。語数部195はその
インデツクスが示すブロツクに含まれる単語数
を7ビツトで収容し、最上位の1ビツトは差分
仮名見出し部と区別するために用いる。
第19図のデータ構造でインデツクスを作成
すると1インデツクス当り平均5.1バイトとな
り単語辞書を600のブロツクに分けたとして約
3Kバイトとなる。第20図はインデツクスの
最初の部分を示したものである。
このように差分仮名見出し部194の後の語
数領域195に語数をインデツクスに収容した
ことが大きな特徴である。この語数領域195
の情報は各ブロツクに含まれる単語の語数を示
しており、2つの役割を有している。
第1の役割は検索すべき単語の語数を知らせ
ることである。すなわち、与えられた仮名文字
列を、該当したブロツクの先頭から照合してい
く際、該当する単語が見つからなかつたときに
照合を打ち切る時期を知らせることである。語
数のもつ 第2の役割は検索した結果、該当した単語番
号(No.)(単語辞書の先頭から数えて何番目の
単語であるかを示す)を与えることである。
たとえば「あくび」という語を検索してみ
る。第20図のインデツクスより「あ」で始ま
るブロツクの語数が48、「あいて」のブロツク
は42、「あえ」のブロツクは42であり、「あく
び」は「あき」で始まるブロツク内にあること
がわかる。「あき」のブロツクの最初の語の単
語No.は 48+42+42=132 である。「あき」のブロツク内を検索した結果
20番目に「あくび」が見つかつたとすると「あ
くび」の単語No.は132+20=152であることがわ
かる。
単語No.を得る他の方法として、単語辞書の各
語に対してそのNo.を付加する方法も考えられる
が、例えば3万語の辞書に対して単語No.を付加
すると1語に対して各2バイト必要であるから
(約64000語まで表わせる)60Kバイトのメモリ
容量が必要となる。
これに対して本発明の方法では単語辞書を例
えば600ブロツクに分けた場合、わずか600バイ
トの増加でしかない。しかもこの情報(ブロツ
ク内語数)は先に説明したように照合打ち切り
の情報も与えている。
本発明ではこのようにして得られた単語No.を
単語辞書の情報内容を追加又は修正する場合に
用いることができる。
本発明の目的の一つは、前述したように辞書
の収容メモリ容量を削減し、仮名漢字変換処理
装置の小型、低価格をはかることにあるが、上
記方法により圧縮した辞書群は半導体のROM
(リードオンリーメモリ)等に収容することに
より、小型・低価格化を実現できる。しかし辞
書群をいつたんマスクROM等に収容してしま
うと、ROM内のデータの修正や追加はほとん
ど不可能であり、内容に誤りが発見された場
合、マスクROMを新たに作り直すことにな
り、多くの費用がかかる。
これに対して本発明の実施例によればROM
全体を作り直すことなく、修正および追加デー
タだけを別のメモリに収容することで単語辞書
のデータの修正追加が不可能となり、最初にマ
スクROMを作るときのリスクを軽減すること
ができる。
以下修正追加の方法を説明する。
(4) 辞書類の修正追加 修正追加の最も簡単な方法は単語辞書の全単
語に対して固定長の情報を追加することであり
第21図にその修正追加の様子を示す。
第21図において例えば単語辞書211を検
索した結果、単語No.500の語が該当したとする。
単語No.は先に説明した方法で得られるので、こ
の単語No.500から対応する追加情報のメモリ2
12をアクセスできればよい。対応する追加情
報のアドレスは追加情報メモリ212の先頭ア
ドレスに追加情報の1情報当りのバイト数(固
定長)を500倍したものを加えることによつて
求めることができる。
追加情報が可変長の場合は追加情報の先頭か
ら順次数えてゆけば500番目の情報を得ること
ができるが単語No.が大きくなると時間がかか
る。
従つて本発明では第22図に示すように追加
情報用のインデツクス222を設ける。追加情
報用のインデツクスは全単語No.に対してその追
加情報のアドレスを収容してもよいが第22図
に示す様に追加情報をいくつかのブロツクに分
け、その先頭の単語No.に対するアドレスだけを
収容することによりメモリ容量を節約すること
ができる。
第22図では200語ずつを1つのブロツクと
し、各ブロツクの先頭アドレスを固定長で追加
情報インデツクス222に収容している。例え
ば単語辞書221の単語No.500に対する追加情
報を得るためにはまず単語No.500をブロツク内
の語数200で割つた商2により追加情報インデ
ツクス222の3番目のアドレス(ADD2)を
得る。単語No.400に対する追加情報のアドレス
がADD2であるから、このアドレスより順次数
えて100番目の追加情報(可変長)フアイル2
23の情報が単語No.500に対する追加情報とな
る。
次に単語辞書の特定の語に対してのみ追加情
報を与える場合を説明する。
第23図に於て追加情報フアイル232には
追加情報cを要する単語についてだけ追加デー
タが入つている。単語No.の部分bには、その追
加情報を追加すべき単語No.が入つており語長部
aには追加情報(可変長)のバイト数が入つて
いる。例えば、単語No.500に対する追加情報を
調べる場合は、追加情報フアイル232の単語
No.の項と前から順次照合し、見つかれば単語No.
の後の情報が単語No.500に対する追加情報であ
り、見つからなければ追加情報はなかつたこと
になる。追加情報フアイル232の単語No.部b
に入れる数値の最大が、たとえば300000である
とすると、No.を収容するのに2バイト必要であ
るが、1つ前とのNo.の差が256以内であれば単
語No.部に1つ前のNo.との差を入れることにより
1バイトで収容できる。検索のときには前から
順次No.を順次加えた値と照合することになる。
追加情報が固定長の場合は語長は必要ない。追
加情報フアイルの量が多くて検索に時間がかか
る場合は追加情報フアイルをいくつかのブロツ
クに分けて、各ブロツクの先頭のNo.とアドレス
を表にしたインデツクスを設ければよい。
このように第23図の方法を用いれば付加メ
モリによる単語辞書231の修正が可能にな
る。
すなわち、追加情報フアイル232に修正デ
ータを入れておけばよい。たとえば、単語辞書
231の単語No.500の漢字表記部に誤りが発見
された場合、追加情報フアイル232に漢字表
記部の正しいデータを収容しておく。単語辞書
231を検索する際いつも追加情報フアイル2
32を参照するようにし、追加情報フアイル2
32に単語No.に該当する修正データがあればそ
ちらを正しいデータとして取つてくるようにす
ればよい。
追加情報フアイルの別な使い方として、単語
辞書を仮名漢字変換以外の用途にも使用するこ
とが考えられる。たとえば追加情報フアイルに
各単語の意味を収容すれば、電子国語辞典とな
るし、各単語に対応する外国語を収容すれば翻
訳用の辞書にもなる。この場合単語辞書231
の部分(仮名見出し、品詞、漢字表記部)は、
共通に使えるので新たにマスクROMを作る必
要はなく、追加情報フアイル232だけを新た
に作ればよい。
又、仮名漢字変換についても、変換率を上げ
るために品詞コード以外のもつと多くの情報を
付加する必要が将来あるかも知れない。このよ
うな場合でも同様にして対処できる。
さらに本発明の実施例では、同音異字語があ
る場合の候補順位を自立部(文節内で助詞、
助動詞などの付属語部を除いた部分)の長いも
の単語辞書の収容順としており、の単語辞
書の収容順は辞書を作成する際、同音語に関し
てはあらかじめ使用頻度を考慮して使用頻度順
に並べている。
しかし使用頻度というものは客観的に決めら
れるものではなく、その使用分野や使用環境に
よつて大きく異なる。従つて使用頻度は仮名漢
字変換処理装置が使われるに従つて自ら学習し
ていくことが望ましい。しかし仮名漢字変換処
理装置を小型化するためには、圧縮された辞書
をマスクROM等に収める必要があり、ROM
化した辞書に使用頻度の項目を持たせても、そ
れを使用状況によつて更新することは不可能で
ある。
これに対し本発明の実施例ではROM化した
単語辞書の各語に対して付加メモリにより情報
を付加することが出来るので、この付加メモリ
に書き換え可能なRAMや外部メモリを用い
て、頻度情報を収容しておけば使用状況によつ
て更新することによつて学習機能をもたせるこ
とができる。
(5) 活用語尾表、付属語表、接続行列 次に第3図に示す辞書フアイル34−4,
5,6にそれぞれ収容される活用語尾表、付属
語表、接続行列について説明するが例として五
十音キー1Aの操作により入力文バツフア31
−1に「あいくるしかつたので」という仮名文
字列が入力され、次に文節変換キー1Bの操作
により文節変換の指示が成された場合について
説明する。
上記の如きキー操作により、第1図に示す
CPU2は処理プログラム装置3のプログラム
に従つてまず単語辞書34−1(第16図)を
検索し、その結果候補として「あ」(品詞コー
ド0、39、38)、「あい」(品詞コード43、0)
及び「あいくるし」(品詞コード30)が得られ
る。この品詞コードの対照テーブルを第18図
に示しており、該品詞コードが0〜29のものに
ついては後述する接続行列の行No.を表わしてい
る。品詞コード30以上のものは活用語尾表のNo.
を示しているので活用語尾表の検索にはいる。
活用語尾表のデータ構造を第24図に示して
おり、第1バイト目の語尾数は活用語尾の個数
を示している。例えば形容詞の場合は「かろ」、
「かつ」「く」、「い」、「い」、「けれ」と語幹を加
えて7になる。第2バイト以降は活用語尾2バ
イトと接続行列の行番号の1バイトの計3バイ
トずつで各活用語尾を収容している。
第25図が形容詞(品詞コード30)に対する
活用語尾表である。「」はスペースを表わし
ている。
活用語尾表を検索する場合には活用語尾表ア
ドレステーブル261(第26図参照)により
品詞コードに対応する活用語尾表262のアド
レスを求めることになる。活用語尾表アドレス
テーブル261は品詞コード30〜127に対する
活用語尾表のアドレスを収容している。たとえ
ば単語辞書検索で見つかつた「あいくるし」
(品詞コード30)の場合、入力仮名文字列の残
り「かつたので」の本字列について、品詞コー
ド30(形容詞)に対する活用語尾表(第25図
を検索すると、連形用の活用語尾「かつ」(接
続行列行No.6)が見つかる。単語辞書検索の他
の候補(品詞コード30以上)についても同様に
活用語尾表の検索を行う。検索の結果活用語尾
表が見つからなかつたものはこの段階で候補か
ら落とされる。(「あ」(品詞コード39、38)は
落ちる)。
以上で入力仮名文字列「あいくるしかつたの
で」の自立語候補として「あ」(行No.0)「あ
い」(行No.43、0)、「あいくるしかつ」(行No.
6)が残る。続いて付属語検索に移る。
付属語辞書34−5のデータ構造を第27図
に示す。
第27図において重複文字数、語長、差分仮
名見出し部は自立語辞書(第15図)と全く同
様であるので説明は省略する。(但し、語長は
差分仮名見出し部と行列No.の総バイト数を示し
ている)。差分仮名見出し部に続く行列No.部は、
その付属語の接続行列における行No.と列No.を各
1バイトずつ対にして収容している。列No.部の
最上位ビツトは差分仮名見出し部と区別するた
め“1”を立てる。従つて列No.は7ビツトで、
0〜127まで表わせる。行No.は8ビツトすべて
使えるので0〜255まで表わせる。行列ペアは
語長が5ビツト(31バイト分)を越えない範囲
で複数個入れることができる。
第28図に付属語長の一部を示す。
先の自立候補「あいくるしかつ」(行No.6)
を例とすると、入力仮名文字列「あいくるしか
つたので」に対して「たので」が残つているの
で、これが付属語列であると予想して付属語表
検索を行う。第28図の付属語表からまず
「た」(列No.9、行No.54)(列No.95、行No.55)が
見つかる。ここで自立語候補「あいくるしか
つ」(行No.6)と付属語「た」の接続が可能か
どうかを接続行列を用いて調べることになり、
この接続行列の1部を第29図に示す。第29
図は行No.Xの自立語又は付属語と列No.Yの付属
語との接続が文法的に可能かどうかを示してお
り、行No.Xと列No.Yとの交点のビツトが1であ
れば接続可能であり、0であれば接続不可であ
ることを意味している。各交点の0、1は1ビ
ツトで表わせるので接続行列のメモリ容量は行
数×列数(ビツト)となる。たとえば先の例で
は「あいくるしかつ」の行No.が6で付属語
「た」の列No.は95であり、第29図から行6と
列95の交点は1であるから「あいくるしかつ」
と「た」は接続可能であることがわかる。入力
仮名文字列の残り「ので」についてさらに付属
語検索を続ける。「の」(列No.61、行No.108)(列
No.101、行No.155)が見つかり、第29図の接続
行列から「た」の行No.54と「の」の列No.61の接
続が可能であることがわかる。このとき行No.54
と列No.101とは接続不可であるので「たの」と
繋がつたときの「の」の行No.は列No.61のペアで
ある108だけで行No.155は除かれる。入力仮名文
字列の残り「で」についてさらに付属語検索を
続ける。「で」(列No.49、行No.112)、(列No.88、
行No.145)、(列No.94、行No.57)が見つかり第2
9図の接続行列から「の」の行No.108と「で」
の列No.49の接続が可能であることがわかる。最
後に行No.112の「で」について終了可能性を調
べる。第29図の接続行列の112行右端の終了
可ビツトを見ると“1”であるから行No.112の
「で」は文節の最後となり得ることがわかる。
以上の文法的解析により「あいくるしかつた
ので」という入力仮名文字列は自立語語幹「愛
くるし」+活用語尾「かつ」+付属語「た」+付
属語「の」+付属語「で」と分析され「愛くる
しかつたので」という出力候補が得られる。残
りの自立語候補「あ」(行No.0)「あい」(行No.
43、0)についても同様の解析を行う。その結
果「唖いくるしかつたので」「合いくるしかつ
たので」「編いくるしかつたので」「藍くるしか
つたので」などはすべて途中の段階で候補から
はずされ「愛くるしかつたので」だけが残るこ
とになる。
以上説明した接続行列による同音語候補の絞
り込みは、文節単位の仮名漢字変換処理におい
て一般に用いられている方法であるが本発明の
特徴の1つは上記した活用語尾表、付属語表の
記憶を第24図および第27図に示すデータ構
造にすることによりそのメモリ容量を圧縮する
とともに処理速度の向上をはかつたことであ
る。更に第2の特徴は単語辞書に収容する文法
情報(品詞活用形など)を重複品詞も含めて1
バイト(7ビツト)の品詞コードに収容すると
ともに品詞コード部を2つのブロツク(活用語
尾表の参照が必要なものとそうでないもの)に
分類することにより、例外語処理も含めて処理
の簡潔化をはかつたことである。
まず最初に重複品詞について説明する。
重複品詞とは第18図の品詞コード表のコー
ド44(形容詞+名詞)のように2つ以上の品
詞を合わせもつている語のことであり、例えば
「青」は「信号が青に変わる」と使われる場合
には名詞であり「青い空」という場合は形容詞
である。このような語を単語辞書に収容する場
合品詞コード部だけが違う2つの見出しを立て
たり又、品詞コードを1単語に対して複数個収
容するスペースを確保するのはメモリの無駄で
ある。従つて本発明の実施例では重複品詞に対
しても1バイトのコードを与え活用語尾表に該
当する品詞の活用語尾(ない場合はスペース)
をその接続行列における行No.と共にすべて収容
している。
たとえば品詞コードNo.44(形容詞+名詞)に
対する活用語尾表は第30図に示すように形容
詞の活用語尾「かろ」(行No.5)、「かつ」(行No.
6)、「く」(行No.7)、「い」(行No.8)、「い」
(行No.9)、「けれ」(行No.10)と名詞の行No.0が
活用語尾表に入る。このとき最後の名詞は語尾
の部分がスペースになり、行No.だけが入る。こ
のようにすることにより重複品詞語も単独品詞
語の場合と全く同様に扱うことができる。
次に例外語処理について説明する。
ここでいう例外語とは、一般現代語の活用と
違つた活用をする語で、たとえば「良(い)
い」は形容詞であるが現代国語では終止形と連
体形しか活用せず「良(い)かろ・う」(未然
形)「良(い)かつ・た」(連用形)などの活用
はない。又、文語の四段活用動詞や二段活用動
詞の中には現代でもよく使われる語がある。こ
のような語は語数は少ないが、処理しないわけ
にはいかない。しかしこれら数少ない特殊な活
用をする語に対して、すべて活用語尾表を設け
るのは無駄が多い。従つて本発明の実施例では
このような語に対しては活用語尾を付加した形
で単語辞書に収容している。
たとえば「良(い)い」の例では「良い」
(品詞コード8)「良(い)い」(品詞コード9)
の2つを単語辞書に収容する。そしてこのよう
な単語に対する品詞コードは0〜29にまとめ
(品詞コード)=(接続行列の行No.)とすること
により(第18図、第31図参照)特殊な活用
をする語を、活用しない単独品詞語と見なして
処理を行うことができる。
(6) 単語辞書検索該当バツフア 一般に辞書を検索した際、該当した語に対し
てそのすべての情報を該当バツフア33−1に
移すのが普通である。しかし、仮名漢字変換処
理において検索で該当した語がすべて最終結果
になるわけではなく、途中の文法解析により候
補からはずされる語が大半である。又、最後ま
で候補として残つても同音語が多数ある場合は
順次表示し求める語が見つかれば残りの語は不
要となる。従つて、単語辞書の検索該当バツフ
ア33−1には文法解析に必要な情報と、最終
結果(漢字表記)が必要になつたときに漢字表
記に直せるようその単語の辞書におけるアドレ
スがあればよくそのデータ構成を第33図に示
す。
第33図において第1バイト目の仮名文字数
領域331は該当した単語の仮名文字数を記憶
し、入力仮名文字列から自立語語幹以降の活用
語尾や付属語の文字列を切り出すために用いら
れる。第2バイト目の領域332は品詞コード
領域であり単語辞書に収容されている品詞コー
ドを記憶する。第3バイト目の領域333は同
音同品詞語数を記憶する領域、たとえば第16
図に示す「哀願」「愛玩」(品詞コードはいずれ
も43)のように同音で同品詞の語が連続して見
つかつた場合は検索該当バツフアを別に占有せ
ずに、同音同品詞語数部にその個数を収容する
ことになる。(「あいがん」の例では2となる。
同音同品詞語がない場合は1が入る) このようなデータ構成によつて同音語の多い
語を検索した場合、バツフア数が少なくてすむ
だけでなく同音同品詞語に対してはその後の文
法処理は全く同じでよいので1度の処理ですま
すことができる。第4バイト目〜第6バイト目
までの3バイトの領域334には辞書における
該当単語の先頭のアドレスが入る。これは最終
的に漢字表記部が必要になつたときに単語辞書
をアクセスして漢字表記部をもつてくるために
必要である。同音同品詞語がある場合は第1番
目の単語の先頭アドレスが入る。同音同品詞語
の漢字表記部が必要な場合は、まず第1番目の
単語をアクセスし、語長を用いて順次スキツプ
すれば求める単語をアクセスすることができ
る。
(7) 最終候報バツフア 最終候補バツフア33−3は文法解析の結果
正しい文節として認められたものだけが入る。
第34図に最終候補バツフアのデータ構造を示
す。
第34図において第1バイト目の領域341
は自立部の仮名文字数の記憶領域であり、活用
語尾の文字数も含めて記憶される。この自立部
仮名文字数は同音語があつた場合に候補の順番
を決めるのに用いる。すなわち入力仮名文字列
の中で自立部の占める文字数が大であるものほ
どもつともらしいとみなし、自立部仮名文字数
の大きなものから出力する。第2バイト目の領
域342は検索該当バツフアNo.を記憶する領域
であり該領域は第33図の単語辞書検索該当バ
ツフアの何番目の語であるかを示している。第
3バイト目の領域343は同音同品詞語数の記
憶領域であり、該領域は対応する単語辞書検索
該当バツフアの同音同品詞語数と同じ値が入
る。この第3バイト目の領域343はなくても
よいが処理のスピードを上げるために付加して
いる。
(8) その他のバツフア その他のバツフアとして第3図に示す同音語
総数レジスタ33−4があり該レジスタには同
音語の総数すなわち最終候補バツフア33−3
の同音同品詞語数の和が入る。又一時バツフア
33−5には処理中に使う種々の一時データが
入るが本発明の説明には特に必要ないのでこれ
以上の説明は省略する。
(9) 同音語の選択 入力バツフア31に入力仮名文字列と文節変
換フアンクシヨンが入れられ、スタート信号が
与えられるとCPU2は処理プログラム装置3
のプログラムに従つて、これまで説明してきた
ような変換処理を行い、その結果がまず最終候
補バツフア33−3に入れられ自立部仮名文字
数の降順に並び換えられると共に総同音語数が
計算され、同音語総数レジスタ33−4に入れ
られる。続いて第1番目の最終候補バツフア3
3−3の該当バツフアNo.に対応する単語辞書検
索該当バツフア33−1が参照される。該当バ
ツフアの辞書アドレスにより単語辞書から漢字
表記部を取り出し、この圧縮された漢字表記部
を復元して出力文バツフア32−1に移す。さ
らに入力文バツフア31−1から単語仮名文字
数分を除いた残り部分を出力文バツフア32−
1の復元された漢字表記部の後に入れる。又、
同音語数カウンタ32−2には同音語総数レジ
スタ33−4の値が移される。
このようにして与えられた仮名文字列の変換
結果第1候補が出力として得られるが、他に同
音語がある場合は次候補呼び出しフアンクシヨ
ンキー1Dの操作により順次候補を得ることが
できる。すなわちフアンクシヨンレジスタ31
−2に次候補呼び出しフアンクシヨンをセツト
してスタート信号を送ると、CPU2は出力バ
ツフア32の同音語数カウンタ32−2の値が
1でなければこの値を1減じた後、出力文バツ
フア32−1に次候補を出力する。次候補は同
音語総数レジスタ33−4と同音語数カウンタ
32−2の値を比較することにより第何番目の
候補であるかわかるので、この候補No.と最終候
補バツフア33−3の同音同品詞語数を順次照
合減算することにより、単語辞書検索該当バツ
フア33−1のNo.とその該当バツフアの何番目
の同音同品詞語であるかがわかる。後は第1候
補を出力した時と同じ動作が実行される。
前候補呼び出しフアンクシヨンキー1Eの動
作は、次候補呼び出しの時の逆の動作であり、
次候補呼び出し動作と同様に処理できる。
本発明では単語辞書を圧縮しているため漢字
表記部を複元するのにやや時間がかかるが、同
音語が多数あつても、漢字表記部の復元は第1
候補だけを行い第2候補以降は次候補呼び出し
(又は前候補呼び出し)のフアンクシヨンで行
うので全候補の復元結果を一度に必要とする応
用でなければ漢字表記部の復元処理時間は問題
でない。
(10) 漢字仮名変換 単語辞書の漢字表記部は第17図に示すよう
に圧縮した形で収容されているので出力文バツ
フア32−1に入れる時にはこれを復元する必
要がある。復元されたコードとしてはJIS6226
漢字コードでもよいが、本発明の単語辞書漢字
表記部は各漢字に対して読み文字数が付加され
ているので読み文字数を付加した形で出力文バ
ツフア32−1に復元すればいろいろなメリツ
トが得られる。
たとえば本発明の仮名漢字変換処理装置が第
1図に示すような日本語ワードプロセツサに用
いられた場合、入力仮名文字列「あいろ」に対
して「隘路」が得られるが「隘」をひらがなに
直したい時、一般のワードプロセツサでは
「隘」を沫消したうえで「あ」「い」の2文字を
挿入することになる。しかし本発明では「隘
{2}路{1}」のように各漢字に対してその読
み文字数が付加されているので、漢字「隘」を
カーソル等で指定して仮名変換の指示をすれば
入力仮名文字列「あいろ」と対照することによ
り「隘」を「あい」に変換することは容易であ
る。(読み文字数が付加されていなければ変換
できない)。同様にして漢字「隘」を残したま
まルビ(ふりがな)として「あい」を付加する
ことも可能である。(「隘(あい)路」) 又、仮名漢字変換処理装置より出力された漢
字仮名交じり文は、ワードプロセツサ等で表示
装置や印字装置に出力されるが、これらの表示
装置や印字装置がJIS6226の漢字パターンすべ
てを持つているとは限らない。たとえば漢字パ
ターンとしてJIS第1水準漢字だけであつたり
常用漢字や教育漢字だけしか持たない場合もあ
り得る。これに対して仮名漢字変換処理装置が
所有しない漢字パターンの漢字コードを出力す
ると正しい表示又は印字ができなくなる。
これに対して本発明では各漢字に対してその
読み文字数が付加されているので、文字パター
ンのない漢字コードに対しては表示装置や印字
装置の側(あるいはそれらを制御するCPU)
で自動的に所望の漢字を平仮名に変換すること
が出来る。
(11) 先取り変換処理 仮名漢字変換処理装置を日本語ワードプロセ
ツサなどの入力装置として応用する場合、キー
ボードから一文節文の仮名文字が入力された後
変換指示キーなどの押下によつて文節の切れ目
が判明した後変換処理をスタートするのが一般
的方法である。
例として「わ」「た」「く」「し」「は」変換と
キーが押下された場合変換キーが押下されて
から変換処理がスタートし出力が得られるまで
の時間はT1だけ必要となる。
これに対して本発明の仮名漢字変換処理装置
は、第3図に示すようにスタート端子2−1と
解除端子2−2を持つているので、第35図に
示すように変換キーが押下される前の仮名キ
ー□はの押下に応答して変換処理をスタートでき
る。すなわち仮名文字が入力される都度、該仮
名キーの操作に応答して前に開始していた変換
処理を途中で中断し(解除端子2−2を用い
る)、新たな仮名文字列を入力文バツフア31
−1に入れた後、スタート端子2−1よりスタ
ート信号を与えて変換処理を開始させる。変換
処理中仮名キーが押されなかつた場合、処理は
最後まで続けられ、出力バツフア32に結果が
入れられる。このようにすると、実際に変換処
理に要する時間T1は従来の場合と同様である
が、変換キーが押下されてから出力が得られる
までの時間は本発明の如く第35図ではT3
なり、最後の仮名キー「は」が押下されてから
変換キーが押下されるまでの時間T2だけ従来
に比べて短縮されることになる。T2の期間は
キーボードの特性や操作者の入力スピードによ
つて異なるが、10msから数100msはあるのが
普通である。T2がT1より長い場合は変換キー
が押下される前に結果が出ていることになり見
かけ上の変換処理時間は0となる。
このような先取り変換処理により処理速度の
遅いCPUあるいはスピードの遅いメモリを使
用した場合にも見かけ上の処理速度(第35図
のT3)を短縮することができるので、小型低
価格の仮名漢字変換処理装置が可能となる。
以上の如く本発明によれば、変換辞書類及び
各種テーブルのデータ構造を工夫して記憶させ
ることにより、メモリ容量を大幅に圧縮するこ
とが出来、半導体メモリの使用を可能とし、小
型かつ安価な、更に仮名から漢字への変換率が
高く、しかも処理速度の速い仮名漢字変換処理
装置が得られる。
なお上記した本発明の実施例の特徴点は以下
の通りである。
(a) 漢字変換用音訓辞書の仮名見出し部を可変
長差分構造にするとともに、漢字コード部に
含まれる複数の漢字の漢字コード値が連続し
ている場合、最初の漢字のみを漢字コードで
収容し、以降の連続コード値の漢字はその連
続漢字個数で表わすことにより音訓辞書収容
メモリの圧縮を図つている。
(b) 変換用単語辞書の仮名見出し部を可変長差
分構造にするとともに仮名見出し部と漢字表
記部の間に品詞コード部を設けて、この品詞
コード部を仮名見出し部と漢字表記部とのセ
パレータとし、また漢字表記部に含まれる各
漢字に対してその読み文字数を付加し、更に
漢字表記部に含まれる平仮名文字列は文字コ
ードを収容せずに、その文字数だけを収容
し、単語辞書収容メモリの圧縮と仮名漢字変
換処理速度の向上を図つている。
(c) 変換用単語辞書の漢字表記部に含まれる漢
字を漢字コードで収容せずに、その漢字の読
みで音訓辞書を検索したときに、その見出し
内において、その漢字が収容されている順番
号で表わすことにより単語辞書収容メモリの
圧縮を図つている。
(d) 変換用単語辞書の同音異字語の収容順を使
用頻度の高い語順に並べることにより同音語
候補を使用頻度順に出力するように成してい
る。
(e) 変換用単語辞書のインデツクスの仮名見出
し部を可変長差分構造にすることによりイン
デツクスの収容メモリ容量を圧縮するととも
に、インデツクスの各見出しごとにその見出
しが示す単語辞書の語数を付加することによ
り、単語辞書検索時間の短縮と追加情報フア
イルの付加を可能としている。
(f) 文法解析に必要な活用語尾表と付属語表
を、所定のデータ構造で収容することによ
り、その収容メモリ容量の圧縮と処理速度の
向上を図つている。
(g) 単語辞書に収容する品詞、活用形等の文法
情報を重複品詞も含めて7ビツトの品詞コー
ドに収容すると共に品詞コードを活用語尾表
の参照の必要なものとそうでないものの二つ
のブロツクに分類することにより処理の簡潔
化を図る。
(h) 単語辞書検索によつて該当した語を該当バ
ツフアに移すに際し、その仮名文字数、品詞
コード、同音語数及び辞書アドレスのみを移
すことにより処理時間の短縮と該当バツフア
容量の削減を図つている。
(i) 変換結果に同音異字語があつた場合、最初
の変換指示に対しては第1候補の変換結果と
同音語数のみを出力し、残りの同音語候補に
対しては次候補あるいは前候補呼び出しの指
示により順次出力することにより、最初の変
換指示から第1候補を出力するまでの時間の
短縮を図つている。
(j) 変換結果の漢字仮名交じり文に含まれる各
漢字に対してその読み文字数を付加して出力
することにより指定された漢字を仮名に変換
できることを可能としている。
(k) 変換指示がない場合においても仮名文字が
1文字入力または削除されるごとに変換処理
を再スタートすることにより変換指示があつ
てから変換結果を出力するまでの時間、即ち
見かけ上の変換時間の短縮を図つている。
また本発明の変形実施例は例えば以下の通りで
ある。
(i) 第10図の圧縮音訓辞書のデータ構造にお
いて、重複文字数を2ビツト、語長を6ビツ
トとしたが両方合わせて8ビツトであれば、
その配分は音訓辞書の性質によつて決定すれ
ばよい。また差分仮名見出し部と漢字コード
部を区別するために差分仮名見出し部の最上
位ビツトを“0”、漢字表記部の最上位ビツ
トを“1”としているが逆にしてもよい。
(ii) 音訓辞書、単語辞書の仮名コードとして
JIS6226の第2バイトを用いたが、これに限
定されることなく7ビツトで表わせる仮名コ
ードであればよい。
(iii) 音訓辞書、単語辞書の漢字コードとして
JIS6226をベースとしたものを用いたが、こ
れに限定されることなく13ビツトまたは14ビ
ツトで表わせて、その並びが代表音訓の仮名
コード順に並んでいるものであればよい。
(iv) 音訓辞書、単語辞書、単語辞書インデツク
ス及び付属語表の語の並びを仮名見出しのコ
ード順でかつ短いもの順に並べているが、長
いもの順に並べてもよい。
(v) 音訓辞書を圧縮するために漢字コードが連
続しているものを漢字数で表わすようにして
おり、圧縮率を向上させるために漢字の収容
順をコード順にしているが、漢字の収容順を
その使用頻度順にした上で漢字コードが連続
しているものを漢字数で表わすようにしても
よい。
(vi) 単語辞書の品詞コードにおいて0〜29は活
用語尾を参照するもの、30〜127は参照しな
いものとしたが、これに限定されることな
く、2つのブロツクに分けるようにすればよ
い。
(vii) 単語辞書圧縮漢字コードの1バイトコード
において、0〜115を音訓番号、116〜123は
平仮名文字数、124〜127は2バイトコードの
追加読み文字数としたがこれに限定されるこ
となく、その分け方は自由である。
(viii) 単語辞書を文節単位の文法解析を行なう仮
名漢字変換に用いる場合について述べたが、
文節単位でないもの(例えばベタ入力)ある
いは文法解析を行なわない場合の単語辞書と
しても用いることが出来る。また仮名漢字変
換以外の用途、たとえば国語辞典や翻訳用辞
書にも用いることが出来る。(この場合漢字
表記部の後に情報を付加する必要がある) (ix) 本発明の仮名漢字変換処理装置は、日本語
ワードプロセツサへの応用を主に説明した
が、日本語を漢字仮名交じり文で入力するあ
らゆる機器に応用できる。
(x) 本発明の辞書群はROM化することを目的
に圧縮をはかつているが、外部記憶装置(磁
気デイスク、磁気バブル等)に収容して必要
に応じて読み出す方法にも適用することがで
きる。
() 本発明では単語辞書にのみインデツ
クスを設けているが他の付属語辞書や音訓辞
書にもインデツクスを設けて検索の迅速化を
図ることができる。又、自立語辞書のインデ
ツクスに対するインデツクスを設けて2段イ
ンデツクスとしてもよい。これらのインデツ
クスの構造は何でもよいが、たとえば見出し
の先頭1文字ごとにその文字から始まる辞書
のアドレスを収容すれば文字コードからイン
デツクスのアドレスが演算で求まるので検索
スペードを上げることができる。
【図面の簡単な説明】
第1図は日本語ワードプロセツサの構成例を示
すブロツク図、第2図は第1図のキー部を詳細に
示した図、第3図は本発明に係る仮名漢字変換処
理装置の内部構成例を示すブロツク図、第4図は
一般的な音訓辞書を示す部分図、第5図は従来の
音訓辞書のデータ構成を示す図、第6図は
JIS6226のコード表を概略的に示す図、第7図は
第6図におけるA領域の詳細を示す部分図、第8
図は第6図におけるB領域の詳細を示す部分図、
第9図はJIS6226コードの構成図、第10図は本
発明の圧縮音訓辞書のデータ構成を示す図、第1
1図は本発明の圧縮音訓辞書の部分図、第12図
a及びbは本発明の圧縮漢字コードの構成図、第
13図は一般的な単語辞書を示す部分図、第14
図は従来の単語辞書のデータ構成を示す図、第1
5図は本発明の圧縮単語辞書のデータ構成を示す
図、第16図は本発明の圧縮単語辞書の部分図、
第17図a及びbは本発明の圧縮単語辞書におけ
る圧縮漢字コードの構成図、第18図は品詞コー
ドのテーブルを示す図、第19図は本発明の単語
辞書インデツクスのデータ構成を示す図、第20
図は本発明の単語辞書インデツクスを示す部分
図、第21図乃至第23図は単語辞書の修正追加
を説明する為の説明図、第24図は本発明の活用
語尾表のデータ構成を示す図、第25図は第24
図の具体例(形容詞)を示す図、第26図は活用
語尾表の使用説明に供する説明図、第27図は本
発明の圧縮付属語表のデータ構成を示す図、第2
8図は本発明の圧縮付属語表の一部分を示す図、
第29図は接続行列を示す図、第30図は活用語
尾表における重複品詞のデータ構成例を示す図、
第31図は接続行列の行番号を示す図、第32図
は接続行列の列番号の対照を示す図、第33図は
単語辞書検索該当バツフアのデータ構成を示す
図、第34図は最終候補バツフアのデータ構成を
示す図、第35図は先取変換の説明に供する図で
ある。 1…キーボード、2…CPU、3…処理プログ
ラム装置、5…表示装置、6…文章バツフア、3
4−1…単語辞書、34−2…単語辞書インデツ
クス、34−3…音訓辞書、34−4…活用語尾
表、34−5…付属語表。

Claims (1)

  1. 【特許請求の範囲】 1 仮名で入力された文字列を漢字または漢字仮
    名交じり文に変換する仮名漢字変換処理装置にお
    いて、 仮名見出し部を可変長差分構造とした漢字変換
    用音訓辞書と、 仮名見出し部を可変長差分構造とするととも
    に、仮名見出し部と漢字コード部の間に品詞コー
    ド部を設けて該品詞コード部を仮名見出し部と漢
    字コード部のセパレータとなるように構成した変
    換用単語辞書と、 仮名見出し部を可変長差分構造とした上記変換
    用単語辞書のインデツクスと、 所定のデータ構造で収容された活用語尾表及び
    付属語表と を備えたことを特徴とする仮名漢字変換処理装
    置。
JP56071906A 1981-05-11 1981-05-11 Kana(japanese syllable)-kanji(chinese character) converting processor Granted JPS57185575A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56071906A JPS57185575A (en) 1981-05-11 1981-05-11 Kana(japanese syllable)-kanji(chinese character) converting processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56071906A JPS57185575A (en) 1981-05-11 1981-05-11 Kana(japanese syllable)-kanji(chinese character) converting processor

Publications (2)

Publication Number Publication Date
JPS57185575A JPS57185575A (en) 1982-11-15
JPH0140372B2 true JPH0140372B2 (ja) 1989-08-28

Family

ID=13474045

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56071906A Granted JPS57185575A (en) 1981-05-11 1981-05-11 Kana(japanese syllable)-kanji(chinese character) converting processor

Country Status (1)

Country Link
JP (1) JPS57185575A (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6180450A (ja) * 1984-09-28 1986-04-24 Matsushita Electric Ind Co Ltd カナ漢字変換装置
JPS6180449A (ja) * 1984-09-28 1986-04-24 Matsushita Electric Ind Co Ltd カナ漢字変換装置
JPS6479864A (en) * 1987-09-21 1989-03-24 Matsushita Electric Ind Co Ltd Japanese analyzer
JPH02144660A (ja) * 1988-11-25 1990-06-04 Sharp Corp かな漢字変換装置
JPH02144661A (ja) * 1988-11-25 1990-06-04 Sharp Corp かな漢字変換装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5599412A (en) * 1979-01-23 1980-07-29 Nissan Motor Co Ltd Air conditioning apparatus for automobile

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5599412A (en) * 1979-01-23 1980-07-29 Nissan Motor Co Ltd Air conditioning apparatus for automobile

Also Published As

Publication number Publication date
JPS57185575A (en) 1982-11-15

Similar Documents

Publication Publication Date Title
US7809553B2 (en) System and method of creating and using compact linguistic data
EP0180888B1 (en) Method and apparatus for natural language processing
JP3152868B2 (ja) 検索装置および辞書/テキスト検索方法
JP3196868B2 (ja) テキストをインデックス及び検索するための関連ワード形態の限定状態トランスジューサ
US20040225497A1 (en) Compressed yet quickly searchable digital textual data format
US5560037A (en) Compact hyphenation point data
US6535886B1 (en) Method to compress linguistic structures
Thet et al. Word segmentation for the Myanmar language
JPH0140372B2 (ja)
EP1631920B1 (en) System and method of creating and using compact linguistic data
JP7247460B2 (ja) 対応関係生成プログラム、対応関係生成装置、対応関係生成方法、及び翻訳プログラム
JPH0140370B2 (ja)
JPH03116375A (ja) 情報検索装置
JP2812495B2 (ja) 漢字を使用する言語の音節入力語音逐次区切漢字逐次変換方式
JPS6057421A (ja) 文書作成装置
JPS6389976A (ja) 言語解析装置
JPH01114976A (ja) 文書処理装置の辞書構造
JPS61285573A (ja) 仮名漢字変換装置
JP2695772B2 (ja) 仮名漢字変換装置
JP2976682B2 (ja) 言語再生装置
JPS60251461A (ja) 仮名漢字変換装置
JPH0140371B2 (ja)
JPS5998236A (ja) 日本文入力装置
JPH03127254A (ja) 単語検索装置
JPS62214468A (ja) かな漢字変換装置