(57)【特許請求の範囲】
【請求項１】
最上位層の第１の共有辞書と中間層の複数の第２の共有辞書と最下位層の複数の第３の共有辞書とからなる階層構造を有し言語処理に用いる共有辞書を、前記第１の共有辞書を更新する第１の辞書サーバと当該第１の辞書サーバに接続され前記複数の第２の共有辞書のうちの１つをそれぞれ更新する複数の第２の辞書サーバと当該複数の第２の共有サーバのうちの１つに接続され前記複数の第３の共有辞書のうちの１つをそれぞれ更新する複数の第３の辞書サーバを用いて更新するための共有辞書更新方法であって、
前記複数の第３の辞書サーバには、ユーザ辞書を用いて言語処理を行う複数の辞書利用システムがそれぞれ接続され、
前記第３の辞書サーバは、当該第３の辞書サーバに接続されている複数の辞書利用システムからアップロードされた複数のユーザ辞書のそれぞれに登録されている辞書データのうち、当該複数のユーザ辞書に出現する頻度が予め定められた値以上の辞書データを前記第３の共有辞書に登録するステップと、
前記第２の辞書サーバは、当該第２の辞書サーバに接続されている複数の第３の辞書サーバからアップロードされた複数の第３の共有辞書のそれぞれに登録されている辞書データのうち、当該複数の第３の共有辞書に出現する頻度が予め定められた値以上の辞書データを前記第２の共有辞書に登録するステップと
前記第１の辞書サーバは、前記複数の第２の辞書サーバからアップロードされた複数の第２の共有辞書のそれぞれに登録されている辞書データのうち、当該複数の第２の共有辞書に出現する頻度が予め定められた値以上の辞書データを登録するステップと、
前記第１の辞書サーバは、前記複数の第２の辞書サーバのそれぞれに、前記第１の共有辞書に登録されている辞書データをダウンロードするステップと、
前記第２の辞書サーバは、前記第１の辞書サーバからダウンロードされた辞書データを前記第２の共有辞書に登録するステップと、
前記第２の辞書サーバは、当該第２の辞書サーバに接続されている前記第３の辞書サーバに、前記第２の共有辞書に登録されている辞書データをダウンロードするステップと、
前記第３の辞書サーバは、前記第２の辞書サーバからダウンロードされた辞書データを前記第３の共有辞書に登録するステップと、
前記第３の辞書サーバは、当該第３の辞書サーバに接続されている前記辞書利用システムのユーザ辞書に登録するために、前記第３の共有辞書に登録されている辞書データをダウンロードするステップと、
を有することを特徴とする共有辞書更新方法。
【請求項２】
言語処理に用いる複数の共有辞書のうちのいすれか１つを更新するために、当該複数の共有辞書からなる階層構造に対応させて階層的に接続された複数の辞書サーバのうちの１つであって、
自装置より下位に接続された複数の辞書サーバからアップロードされた、自装置に対応する第１の共有辞書より下位にある複数の第２の共有辞書の辞書データのうち、当該複数の第２の共有辞書に出現する頻度が予め定められた値以上の辞書データを前記第１の共有辞書に登録する第１の手段と、
自装置より上位に接続された辞書サーバへ前記第１の共有辞書の辞書データをアップロードする第２の手段と、
自装置より上位に接続された辞書サーバからダウンロードされた、前記第１の共有辞書より上位にある第３の共有辞書の辞書データを前記第１の共有辞書に登録する第３の手段と、
自装置より下位に接続された辞書サーバへ前記第１の共有辞書の辞書データをダウンロードする第４の手段と、
を具備したことを特徴とする辞書サーバ。
【請求項３】
前記第４の手段は、前記第１の共有辞書の辞書データを暗号化して、自装置より上位に接続された辞書サーバへアップロードすることを特徴とする請求項２記載の辞書サーバ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば、かな漢字変換や機械翻訳など、言語知識辞書を利用する自然言語処理のうちの一種を行う複数の辞書利用システムが個別に有する辞書の構築支援を行う辞書管理システムおよび、この辞書管理システムを介して各辞書利用システムへの辞書データの供給、前記辞書利用システムのいずれかで更新された辞書データを他の辞書利用システムに波及する辞書サーバに関する。
【０００２】
【従来の技術】
計算機の日本語の入力を行なうＩＭＥや、文書を翻訳する機械翻訳システムなどが広く利用されるようになってきている。この種のソフトウェアは、種々の言語情報を含む辞書を利用している。しかしながら、既成の辞書情報は、固定化されたものであり、次々に生まれる最新用語などに追随することができず、また、会社組織などローカルなコミュニティで使用される用語などは含まない。この問題を解決するため、ユーザは、そのユーザの辞書に、所望の単語を登録することにより、対応してきた。
【０００３】
しかし、この辞書への用語の登録は、人手で行うには煩雑であり、これを簡略化するために、文書入力時にユーザからのキー入力や選択処理の情報により、自動的に辞書項目を登録する方式や、既存の文書を指定して、その既存の文書を解析することにより、辞書データを抽出するという方式が考案されてきた。
【０００４】
【発明が解決しようとする課題】
ユーザからの入力より辞書を作成するという方式では、ユーザの一連のキー入力が、既成の辞書にない新しい語を入力するための操作であることを認識しなければならず、その操作法は人によって種々のバリエーションがある。したがって、誤登録を避けるためには、その種々のバリエーションのうち、新語入力である確実性の高い、一部のキー入力パターンのみを対象として、学習することになる。この結果、学習の範囲が制約されるという問題がある。
【０００５】
また、既存の文書を指定して、その文書より新しい辞書データを学習するという方式では、その学習精度に問題があり、特に、日本語入力ＩＭＥなどでは、入力のキーである読みを獲得することができない。
【０００６】
そのため、やはりユーザは、自己の負担で、自分のユーザ辞書に地道に辞書登録をしていく、という方法をとるのが一般的である。
そこで、本発明は、このような辞書登録管理システムの課題を解決するためになされたもので、予め辞書開発者が準備した最新用語データを記憶する辞書サーバから最新用語の供給が即時的、自動的に行なえ、辞書を常に時代に適合した状態に保つことができ、結果的に、辞書利用システムの品質維持、高精度化を実現することができ、また、ユーザの登録語を共同利用する枠組を提供して、例えば、組織内用語の効率的利用が可能であり、ユーザ一人あたりの登録の負担を大幅に軽減することができる辞書管理システムおよびそれを用いた辞書利用システムを提供することを目的とする。
【０００７】
【課題を解決するための手段】
本発明の辞書管理システムは、言語処理を行う複数の言語処理システムが個別に有する辞書を更新する辞書管理システムにおいて、
ユーザからの要求に応じて、あるいは、予め指定された条件が満たされたとき、前記言語処理システムの辞書に供給する辞書データを記憶する辞書サーバに対し、ユーザにより指定された制限内の辞書データのダウンロードを要求する要求手段と、
この要求手段での要求に応じて前記辞書サーバからダウンロードされた辞書データに基づき前記言語処理システムの辞書を更新する更新手段と、
を具備したことにより、最新用語の供給が即時的、自動的に行なわれるため、辞書を常に時代に適合した状態に保つことができ、結果的に、辞書利用システムの品質維持、高精度化を実現することができる。
【０００８】
また、本発明の辞書管理システムは、言語処理を行う複数の言語処理システムが個別に有する辞書を更新する辞書管理システムにおいて、
ユーザからの要求に応じて、あるいは、予め指定された条件が満たされたとき、前記言語処理システムの辞書に供給する辞書データを記憶する辞書サーバに対し、ユーザにより指定された制限内の辞書データのダウンロードを要求する要求手段と、
この要求手段での要求に応じて前記辞書サーバからダウンロードされた辞書データに基づき前記言語処理システムの辞書を更新する第１の更新手段と、
前記複数の言語処理システムの辞書で更新された辞書データを収集する収集手段と、
この収集手段で収集された辞書データに基づき前記辞書サーバを更新する第２の更新手段と、
具備したことにより、最新用語の供給が即時的、自動的に行なわれるため、辞書を常に時代に適合した状態に保つことができ、結果的に、辞書利用システムの品質維持、高精度化を実現することができる。また、ユーザの登録語を共同利用する枠組を提供するため、例えば、組織内用語の効率的利用が可能であり、ユーザ一人あたりの登録の負担を大幅に軽減することができる。
【０００９】
また、本発明の辞書サーバは、言語処理システムの辞書に供給する辞書データを記憶する辞書サーバにおいて、
前記言語処理システムが個別に有する辞書あるいは下位階層の辞書サーバで更新された辞書データを受信する受信手段と、
この受信手段で受信された辞書データのうち、その出現頻度が予め定められた値以上の辞書データを前記言語処理システムの辞書に供給する辞書データに変換して、前記言語処理システムの辞書に供給する供給手段と、
を具備したことにより、あるユーザが自分のユーザ辞書に登録した単語は、辞書管理システムを介して辞書サーバに送られ、分別、辞書化され、これが、他のユーザ辞書利用システムに反映される。
【００１０】
この結果、最新用語の供給が即時的、自動的に行なわれるため、辞書を常に時代に適合した状態に保つことができ、結果的に、辞書利用システムの品質維持、高精度化を実現することができる。また、ユーザの登録語を共同利用する枠組を提供するため、例えば、組織内用語の効率的利用が可能であり、ユーザ一人あたりの登録の負担を大幅に軽減することができる。
【００１１】
また、本発明の辞書サーバは、言語処理システムの辞書に供給する辞書データを記憶する辞書サーバにおいて、
前記言語処理システムが個別に有する辞書あるいは下位階層の辞書サーバで更新された辞書データを受信する受信手段と、
この受信手段で受信された辞書データのうち、その出現頻度が予め定められた値以上の辞書データを前記言語処理システムの辞書に供給する辞書データに変換して、前記言語処理システムの辞書に供給する第１の供給手段と、
前記受信手段で受信された辞書データのうち、その出現頻度が予め定められた値以上の辞書データを予め定められた上位階層の辞書サーバに送信する送信手段と、
前記上位階層の辞書サーバから受信した辞書データを前記言語処理システムの辞書に供給する第２の供給手段と、
を具備したことにより、予め辞書開発者が準備した最新用語データを辞書サーバ階層の最上位におくことにより、これが下位のサーバに順次転送されて、最終的にユーザの辞書管理システムを通じて辞書利用システムに反映される。また、あるユーザが自分のユーザ辞書に登録した単語は、辞書管理システムを介して辞書サーバに送られ、サーバ階層を通じて分別、辞書化され、これが、最上位の辞書サーバに達すると、こんどは下位のサーバに順次転送されて、ユーザ辞書利用システムに反映される。
【００１２】
この結果、最新用語の供給が即時的、自動的に行なわれるため、辞書を常に時代に適合した状態に保つことができ、結果的に、辞書利用システムの品質維持、高精度化を実現することができる。また、ユーザの登録語を共同利用する枠組を提供するため、例えば、組織内用語の効率的利用が可能であり、ユーザ一人あたりの登録の負担を大幅に軽減することができる。
【００１３】
また、本発明の辞書利用システムは、辞書の登録語を参照して所定の自然言語処理を行う辞書利用システムにおいて、
ユーザからの要求に応じて、あるいは、予め指定された条件が満たされたとき、前記辞書に供給する辞書データを記憶する辞書サーバに対し、ユーザにより指定された制限内の辞書データのダウンロードを要求する要求手段と、
この要求手段での要求に応じて前記辞書サーバからダウンロードされた辞書データに基づき前記辞書を更新する更新手段と、
を具備したことにより、最新用語の供給が即時的、自動的に行なわれるため、辞書を常に時代に適合した状態に保つことができ、結果的に、辞書利用システムの品質維持、高精度化を実現することができる。
【００１４】
また、本発明の辞書利用システムは、辞書の登録語を参照して所定の自然言語処理を行う辞書利用システムにおいて、
ユーザからの要求に応じて、あるいは、予め指定された条件が満たされたとき、前記辞書に供給する辞書データを記憶する辞書サーバに対し、ユーザにより指定された制限内の辞書データのダウンロードを要求する要求手段と、
この要求手段での要求に応じて前記辞書サーバからダウンロードされた辞書データに基づき前記辞書を更新する更新手段と、
前記辞書で更新された辞書データを前記辞書サーバに送信する送信手段と、
を具備したことにより、最新用語の供給が即時的、自動的に行なわれるため、辞書を常に時代に適合した状態に保つことができ、結果的に、辞書利用システムの品質維持、高精度化を実現することができる。また、ユーザの登録語を共同利用する枠組を提供するため、例えば、組織内用語の効率的利用が可能であり、ユーザ一人あたりの登録の負担を大幅に軽減することができる。
【００１５】
また、本発明の辞書管理方法は、言語処理を行う複数の言語処理システムが個別に有する辞書を更新する辞書管理方法において、
ユーザからの要求に応じて、あるいは、予め指定された条件が満たされたとき、前記言語処理システムの辞書に供給する辞書データを記憶する辞書サーバに対し、ユーザにより指定された制限内の辞書データのダウンロードを要求し、この要求に応じて前記辞書サーバからダウンロードされた辞書データに基づき前記言語処理システムの辞書を更新することをにより、最新用語の供給が即時的、自動的に行なわれるため、辞書を常に時代に適合した状態に保つことができ、結果的に、辞書利用システムの品質維持、高精度化を実現することができる。
【００１６】
また、本発明の辞書管理方法は、言語処理を行う複数の言語処理システムが個別に有する辞書を更新する辞書管理方法において、
ユーザからの要求に応じて、あるいは、予め指定された条件が満たされたとき、前記言語処理システムの辞書に供給する辞書データを記憶する辞書サーバに対し、ユーザにより指定された制限内の辞書データのダウンロードを要求し、この要求に応じて前記辞書サーバからダウンロードされた辞書データに基づき前記言語処理システムの辞書を更新し、前記複数の言語処理システムの辞書で更新された辞書データを収集して、この収集された辞書データに基づき前記辞書サーバを更新することにより、最新用語の供給が即時的、自動的に行なわれるため、辞書を常に時代に適合した状態に保つことができ、結果的に、辞書利用システムの品質維持、高精度化を実現することができる。また、ユーザの登録語を共同利用する枠組を提供するため、例えば、組織内用語の効率的利用が可能であり、ユーザ一人あたりの登録の負担を大幅に軽減することができる。
なお、上記辞書管理システムおよび辞書利用システムは、それぞれ辞書管理装置および辞書利用装置として構成できる。
【００１７】
【発明の実施の形態】
以下、本発明の実施形態について図面を参照しながら説明する。
（第１の実施形態）
図１は、第１の実施形態に係る辞書管理システムの構成例を概略的に示したものである。辞書管理システム１０２は、サーバ通信部１、記憶部２、クライアント通信部３、入力部４、提示部５、制御部６から構成される。なお、これら各部は、コンピュータ（計算機）に実行させることのできるプログラム群（辞書管理エージェント）として構成することができる。
【００１８】
サーバ通信部１は、例えば、インターネットもしくはイントラネットを介して、辞書サーバ１０１とのデータのやりとりを行なう。
記憶部２は、辞書サーバ１０１との通信に係わるユーザの設定情報、辞書データのやりとりに係わる通信ログを保持する他、必要に応じて辞書データそのものの保持も行なう。
【００１９】
クライアント通信部３は、辞書管理システム１０２が動作する計算機上に実装されている辞書利用システム１０３とのデータのやりとりを行なう。
ここで、辞書利用システムとは、計算機への日本語入力を行なうＩＭＥや、文書を翻訳する機械翻訳システムなどをいう。
【００２０】
入力部４および提示部５はユーザとのインタフェース部分であり、辞書サーバとの通信に係わる設定情報をユーザが入力したり、辞書データのやりとりに係わる通信ログをユーザに提示するものである。
【００２１】
制御部６は、上記各部１〜５を所定の動作を行なうように制御するものであり、図２に示すフローチャートに従って動作する。
辞書管理システム１０２が最初に起動されると、辞書サーバ１０１からユーザ提示文書および辞書セット情報が送信され、それをサーバ通信部１が受信すると、まず、提示部５に、ユーザ提示文書が例えば、図３に示すように表示される（ステップＳ２０１〜ステップＳ２０６）。
【００２２】
この状態において、ユーザにより図３の「設定」ボタンが押下されると、図４（ａ）に示す設定画面が提示部５により表示される（ステップＳ２０８）。
この設定画面において、辞書管理システムの動作に係わる設定を行なう。従って、ユーザは、辞書管理システム１０２を利用しようとする場合、まず、図４（ａ）に示すような設定画面から必要とする設定を行えばよい。設定は、制御部６が入力部４及び提示部５を駆動することによって行なわれる。ここで、設定された情報は、記憶部２に記憶され、制御部６はこれに従って辞書管理システムの動作を制御する。
【００２３】
図４（ａ）は、辞書サーバ１０１に用意されている種々の辞書データを自分の辞書利用システムにダウンロードしてくるための設定を行なう画面である。
まず、ユーザは、「定期的に更新する」または「更新ボタンで更新する」のいずれかのボタンを選択する。「定期的に更新する」は、例えば毎月１日など、一定期間ごとに、辞書サーバ１０１に辞書データの更新情報を問い合わせ、ダウンロードを行なうという、指定である。また、「更新ボタンで更新する」は図３に示す辞書管理システムの主画面上に配置された更新ボタンをユーザが押した時のみ、辞書データのダウンロードを行なうという、指定である。
【００２４】
次に、ユーザは「辞書選択」に示される種々の辞書セットのうち、所望のものを選択する。各種辞書は「専門語−情報−ハードウェア」などのように階層的に構成されており、上位階層のボタンを選択すると、その下位に位置するすべての辞書セットが選択される。なお、辞書セットの種類や階層構造の情報は、辞書サーバ１０１から提供され、動的にメニュー化されて表示される。
【００２５】
さらに、図４（ａ）の詳細設定ボタンを押すことにより、ダウンロードする辞書データの量を制限するための設定が行える。ここでは、ダウンロードする辞書データの量の上限を設定する場合について説明する。上限は、語数または語数に換算できる量、例えばダウンロード料金等で設定する。上限設定の対象は、選択された辞書セット毎（個別ボタン）もしくは、辞書セット全体（全体ボタン）である。
【００２６】
例えば、図４（ａ）に示した設定画面から「アップロード」を選択すると、図４（ｂ）に示すような、辞書サーバ１０１に対して、ユーザが自分の辞書利用システム１０３に登録したユーザ辞書データをアップロードするための設定を行なう画面が提示部５により表示される。
【００２７】
ユーザは、「許可する」または「許可しない」のいずれかのボタンを選択し、「許可する」場合のみ自動アップロードが行なわれる。
以上のような初期設定の入力を終え、この設定値が記憶部２に書き込まれて、例えば、システムの再起動がなされると、辞書管理システムの通常の動作が開始される。
【００２８】
以下、図２のフローチャートを参照しながら、辞書管理システムの動作を説明する。
まず、起動された辞書管理システム１０２は、記憶部２に記憶された設定値を参照して、自動更新モードで動作するか否かを判定する（ステップＳ２０１）。自動更新モードならば、現在の日時を獲得し、それが記憶部２に保持されている更新タイミングと合致するかどうかを判定し（ステップＳ２０２）、合致しなければ終了する。
【００２９】
次に、辞書管理システムは、辞書サーバ１０１に対して、起動パケットを送信し、ユーザ提示文書ならびに辞書セット情報を獲得する（ステップＳ２０３）。ユーザ提示文書とは、例えば辞書サーバの管理者からエンドユーザへのお知らせ文書などをいう。また、辞書セット情報とは、辞書サーバが提供可能な辞書ラインアップの最新情報を示す計算機処理可能なデータである。辞書セット情報は、辞書の分野階層を表す情報と、各分野別辞書の利用料金を表す情報からなる。例えば、図５（ａ）のような辞書セット情報を表現するために、図５（ｂ）のようなデータを用いる。すなわち、辞書の分野階層を表す情報として「Ｔｙｐｅ」の項目に「中間ノード」であるか「末端ノード」であるかを示し、利用料金を表す情報として「Ｃｈａｒｇｅ」に１語当たりの料金が示されている。
【００３０】
図５（ｂ）に示すような辞書セット情報を最初に獲得するのは、辞書サーバが提供する辞書ラインナップが変更されても、ダイナミックに対応できるようにするためである。したがって、この辞書セット情報は、記憶部２に保持されて、図４（ａ）にあるような辞書選択メニューを生成するために用いられる。
【００３１】
次に、辞書管理システム１０２は、自動更新モードである場合（ステップＳ２０４）は、辞書サーバ１０１並びに辞書利用システム１０３と辞書情報の交換を行ない（ステップＳ２０５）、終了する。
【００３２】
ここで、辞書情報の交換とは、辞書ダウンロードを行ない、辞書利用システム１０３の辞書を更新し、辞書アップロードを行なう一連の手続きをいうが、詳細は後述する。
【００３３】
ステップＳ２０４で自動更新モードでない場合は、まずステップＳ２０３で獲得したユーザ提示文書を、図３のように提示部５にて表示する（ステップＳ２０６）。なお、表示処理は、必ずしも辞書管理システムが行なう必要はなく、外部のＷＷＷ文書ブラウザなどを駆動するように構成することも可能である。
【００３４】
次に、入力部４からのユーザの指示を待つ状態（ステップＳ２０７〜Ｓ２１３）になる。もし、設定ボタンが押された場合（ステップＳ２０８）は、図４（ａ）のような設定画面を表示し、再設定を促す。そして、再設定された情報で、記憶部２を更新する（ステップＳ２０９）。
【００３５】
更新ボタンが押された場合（ステップＳ２１０）は、後述する辞書情報の交換を行なう（ステップＳ２１１）。
また、レポートボタンが押された場合（ステップＳ２１２）は、記憶部２に保持されている辞書のダウンロードログを参照して、どの辞書セットから、いつ、何語登録し、利用料金がいくらになっているか、などの情報を図６のように表示する（ステップＳ２１３）。
【００３６】
次に、図２のステップＳ２０５の辞書情報の交換処理について、図７に示すフローチャートを参照して説明する。
まず、辞書管理システム１０２は、記憶部２に保持されている辞書のダウンロードログを参照して、どの辞書セットから何語登録されているかを調べ、辞書サーバ１０１に通知する。同時に、ユーザの設定情報を調べ、ダウンロード要求する辞書セット名並びに語数の上限を通知する。
【００３７】
辞書サーバ１０１は、これらの情報から、要求された辞書データから、既にダウンロードされている辞書データを除いた、差分の辞書データを決定して、これを暗号化して送信し、辞書管理システム１０２は、受信データの暗号を解除して、所望の辞書データを受ける（ステップＳ６０１）。
【００３８】
続いて、辞書利用システム１０３、例えば日本語入力用ＩＭＥに対して、受信した辞書更新情報を与え、そのシステムの辞書を更新する（ステップＳ６０２）。
【００３９】
辞書更新情報は、例えば、図８のように、追加「ａ」または削除「ｄ」の更新フラグ、読み、見出し、品詞などからなり、最新用語の追加や、死語の削除をすることができる。また、当然のことながら、削除と追加を組み合わせることで、過去にダウンロードされた辞書データに不具合があった場合にそれを修正することもできる。
【００４０】
次に、辞書管理システム１０２は、記憶部２を参照して、辞書アップロードが許可されているか否かを判定する（ステップＳ６０３）。
辞書アップロードが許可されている場合、辞書利用システム１０３に対し、ユーザが登録した新しい単語のリストを要求し、これを獲得する（ステップＳ６０４）。この場合、前回獲得した分との差分が獲得されることが望ましいが、通常、辞書利用システム１０３は、単語の登録日時など、差分を判定するための情報を保持していることはまれである。その場合、辞書管理システム１０２は、辞書利用システム１０３から、その時点のユーザ登録語の全リストを獲得し、その獲得日時と共に、記憶部２に保持しておく。そして、前回までの全単語リストと、今回の全単語リストを比較し、その期間に新たに登録された単語のリスト（差分）を作成する。もし、差分がある場合（ステップＳ６０５）は、辞書サーバ１０１に対して、その差分情報を送信し、サーバ１０１側から受領メッセージを受領して（ステップＳ６０６）、処理を終了する。
【００４１】
なお、辞書管理システム１０２の計算パワーが低い場合は、辞書管理システム１０２側では差分リストを作成せずに、そのまま全単語リストをサーバ１０１側に送信し、サーバ１０１側で差分を作成するような構成も考えられる。この場合、辞書管理システム１０２の負荷が軽減される反面、サーバとの通信量が増えることになる。
【００４２】
なお、本実施形態の変形例として、辞書利用システム１０３が上記辞書管理システム１０２の構成を包含するように構成することもできる。この場合、クライアント通信部３を廃し、辞書利用システム１０３が直接、制御部６を駆動するように構成する。この結果、上記辞書管理システム１０２の機能を包含する辞書利用システムを実現することができる。
【００４３】
（第２の実施形態）
次に、辞書サーバが階層化されて構成されている場合について説明する。
辞書サーバは、前述の辞書管理システムと協調的に動作し、予め用意された辞書データを提供するだけでなく、辞書管理システムによって収集された各ユーザの辞書登録情報を自動的に辞書データ化し、再び各ユーザに提供することによって、ユーザ辞書情報の共有を実現することを特徴とする。
【００４４】
図９に、その概念図を示す。図９に示したように、辞書サーバは、会社組織などの各部門に対応して、部門サーバ１１２、上位部門サーバ１１５、組織内マスターサーバ１１８と、階層的に構成される。
【００４５】
まず、エンドユーザのもつ辞書管理システムまたはこれを包含する辞書利用システム１１１から、部門サーバ１１２に対してユーザの辞書登録データがアップロードされる。アップロードされたデータは、プール１１３に一旦蓄えられ、プール内に高頻度で出現する単語、すなわち、多くのユーザが登録しているような単語を選び出す（＝多数決原理）ことにより、辞書化され、部門共通辞書１１４となる。
【００４６】
部門共通辞書１１４は、そのままユーザに提供される他、上位部門サーバ１１５に送信される。
上位部門サーバ１１５は、各部門サーバ１１２から収集した部門共通辞書１１４を、部門サーバ１１２同様プール１１６に一旦蓄え、やはり多数決原理によって辞書化し、上位部門共通辞書１１７を作成する。
【００４７】
同様に、組織内に唯１つ存在する組織内マスターサーバ１１８は、各上位部門サーバ１１５から収集した辞書データをプール１１９に蓄え、組織内共通辞書１２０とする。
【００４８】
このように階層化構成とすることにより、ユーザは、自部門で共通的に使用される単語だけでなく、組織内で共通的に使用される単語もまた、自動的に利用できるようになる。
【００４９】
次に、階層化された辞書サーバの構成例について説明する。
図１０は、部門サーバ１１２、上位部門サーバ１１５、もしくは、組織内マスターサーバ１１８として動作可能な辞書サーバ１３２の構成例を示すブロック図である。これら３つのサーバ（部門サーバ１１２、上位部門サーバ１１５、組織内マスターサーバ１１８）は、階層化構造を木構造で表現した場合、それぞれ、リーフノード、中間ノード、ルートノードとなるが、基本的には同一の構成を持ち、同一のアルゴリズムで動作する。
【００５０】
辞書サーバ１３２は、上位通信部１１、下位通信部１２、記憶部１３、制御部１４から構成される。
上位通信部１１は、例えば、インターネットもしくはイントラネットを介して、上位の辞書サーバに辞書データの交換に係わる要求を出し、所望のデータを受信する。
【００５１】
ここで、上位辞書サーバとは、例えば、リーフノードである部門サーバ１１２からみた場合が上位部門サーバ１１５であり、中間ノードである上位部門サーバ１１５からみた場合マスターサーバ１１８である。
【００５２】
下位通信部１２は、同じくネットワークを介して、下位の辞書サーバもしくは辞書管理システムから、辞書データの交換に係わる要求があった場合に、所望のデータを送信する。
【００５３】
ここで、下位辞書サーバとは、例えば、中間ノードである上位部門サーバ１１５からみた場合が部門サーバ１１２であり、ルートサーバであるマスターサーバ１１８からもた場合が上位部門サーバ１１５である。リーフノードである部門サーバ１１２からみた場合、下位通信部１２を介して通信する相手は辞書管理システムあるいはこれを包含する辞書利用システム１１１である。
【００５４】
記憶部１３は、下位辞書サーバもしくは辞書管理システムに提供する辞書更新データを保持するとともに、アップロードデータのプール、辞書データの交換に係わる通信ログ等を保持する。
【００５５】
制御部１４は、上記各部１１〜１３を所定の動作を行なうように制御するものであり、図１２に示すフローチャートに従って動作する。
記憶部１３に保持される下位辞書サーバもしくは辞書管理システムに提供するための辞書更新データは、より具体的には、図１１に示すようなファイルシステムとして管理される。
【００５６】
ファイルシステムは、図１１（ａ）に示すように、ターゲットとなる辞書利用システム名（日本語ＩＭＥ、音声規則合成器等）ごとに、辞書の分野階層に対応したディレクトリ構成をとる。ルートノードの辞書サーバは、辞書管理システムから自動収集された組織内用語（Ｘ社共通）の他に、別途辞書開発者によって準備された最新用語集（基本語、専門語等）も管理している。また、それ以外の辞書サーバは、ルートノードのもつファイルシステムを定期的に自己のファイルシステムにコピーすることにより、最新の状態を保つ。
【００５７】
末端のディレクトリには、図１１（ｂ）に示すように、実際の辞書更新データと辞書セット情報がおかれ、それ以外のディレクトリには、辞書セット情報のみがおかれる。
【００５８】
辞書更新データの管理名は、「バージョン番号−パッチ番号」とし、パッチ番号「０００」のものが、新しい追加語彙データ、それ以外のものが、そのバージョンの追加語彙データに対する修正データであることを示す。なお、辞書更新データは、先に述べたように、図８のようなリストであり、また、辞書セット情報は、図５（ｂ）に示したように、辞書セットのタイプや利用料金等を定義した特殊なファイルである。
【００５９】
リーフノードの辞書サーバは、このようなファイルシステムを前提として、辞書管理システムに送信するデータを決定する。
次に、図１２のフローチャートを参照しながら、辞書サーバ１３２の動作を説明する。
【００６０】
まず、辞書サーバ１３２は、辞書管理システムからのコネクション要求の有無をチェックし（ステップＳ１００１）、要求がある場合は、辞書管理システムとのデータ交換を行なう（ステップＳ１００２）。
【００６１】
当該の辞書サーバ１３２が、下位の辞書サーバをもつように構成される場合（例えば、上位部門サーバ１１５の場合）は、辞書管理システムからのコネクション要求は来ないため、次のステップに進む。なお、辞書管理システムとのデータ交換は、図１３に示すフローチャートに従って動作するが、詳細は後述する。
【００６２】
次に、辞書サーバ１３２は、下位の部門サーバからのコネクション要求の有無をチェックする（ステップＳ１００３）。着目する辞書サーバ１３２が、サーバ階層のリーフノードである場合（例えば、部門サーバ１１２の場合）には、本コネクション要求は来ないため、次のステップに進む。
【００６３】
コネクション要求がある場合は、まず、コネクションを確立し（ステップＳ１００４）、下位の辞書サーバ（例えば、注目の辞書サーバが上位部門サーバ１１５である場合に部門サーバ１１２）の要求に応じて、データの授受を行なう（ステップＳ１００５〜Ｓ１０１１）。
【００６４】
下位の辞書サーバからは、下位の部門共通辞書（例えば、注目の辞書サーバが上位部門サーバ１１５である場合に部門共通辞書１１４）の送信要求（ステップＳ１００７）と上位部門の共通辞書（例えば、注目の辞書サーバが上位部門サーバ１１５である場合に共通辞書１２０）の受信要求（ステップＳ１０１０）があった後、終了要求（ステップＳ１００５）を得て、下位の辞書サーバとのセッションを終了する（ステップＳ１００６）。
【００６５】
下位部門の共通辞書（例えば、注目の辞書サーバが上位部門サーバ１１５である場合に部門共通辞書１１４）の送信要求（ステップＳ１００７）があった場合は、まず、その下位部門の共通辞書データ（これは下位部門の辞書サーバによって後述のステップＳ１０１３で作成されたものである）を受信し（ステップＳ１００８）、暗号化されている場合はこれを解いて、記憶部１３のプールに、発信サーバ名、受信日時と共に格納する（ステップＳ１００９）。
【００６６】
上位部門の共通辞書（例えば、注目の辞書サーバが上位部門サーバ１１５である場合に共通辞書１２０）の受信要求（ステップＳ１０１０）があった場合は、必要により辞書データを暗号化して、下位サーバ（例えば、注目の辞書サーバが上位部門サーバ１１５である場合に上位辞書サーバ１１５）に送信する（ステップＳ１０１１）。
【００６７】
次に、辞書サーバは、予め記憶部１３に設定されている更新タイミング（毎週日曜日等）と現在の日時が合致するか否かを判定し（ステップＳ１０１２）、合致する場合、以下の処理を行なう。
【００６８】
まず、辞書プールに蓄えられた各辞書エントリを比較して、辞書エントリの同一性を判断し、同一のものを１エントリにマージし、頻度付きの辞書エントリとする。辞書エントリの同一性は、例えば日本語入力ＩＭＥならば、読み、見出し、品詞のすべてが一致するエントリを同一と判断する。
【００６９】
次に、頻度がある閾値を越える辞書エントリを抽出する。そして、抽出された辞書エントリのリストと、前回の更新タイミングで作成されている、その階層の共通辞書の各エントリを比較し、前回との差分ファイルの形式で辞書化し、記憶部１３に存する提供用辞書ファイルシステムに反映する（ステップＳ１０１３）。
【００７０】
次に、辞書サーバは、自分の上位に位置する辞書サーバ（例えば、注目の辞書サーバが上位部門サーバ１１５である場合にマスターサーバ１１８）が存在するかどうかを確認する（ステップＳ１０１４）。注目の辞書サーバがルートノードである場合は、上位サーバは存在しないので、以降の処理は行なわれない。
【００７１】
上位サーバが存在する場合は、上位通信部１１を介して、コネクションを確立し（ステップＳ１０１５）、前ステップで作成した、その階層の共通辞書を送信する（ステップＳ１０１６）。さらに、上位部門の共通辞書（注目の辞書サーバが上位部門サーバ１１５である場合にマスターサーバ１１８の共通辞書１２０）を受信して、記憶部１３に存する提供用辞書ファイルシステムに反映する（ステップＳ１０１７）。
【００７２】
次に、図１２のステップＳ１００２における辞書管理システムとのデータ交換について説明する。これは、図１３のフローチャートに従って動作する。
まず、辞書サーバ１３２（例えば、リーフノードである部門サーバ１１２）は、下位通信部１２を介してコネクションを確立し（ステップＳ１３０１）、辞書管理システムの要求待ち状態に入る（ステップＳ１３０２〜Ｓ１３１２）。
【００７３】
この状態で、辞書管理システム起動のパケットがきた場合（ステップＳ１３０４）は、辞書サーバ１３２は、ユーザに提示する文書ならびに辞書セット情報（前述）を送信する（ステップＳ１３０５）。
【００７４】
ダウンロード要求の場合（ステップＳ１３０４）は、辞書管理システムから得る辞書セット名ならびに語数制限（無制限の場合も含む）の情報と過去の登録状況の情報を元に、自己のファイルシステムを参照し、どのディレクトリのどのファイルから何語送信すべきかを決定する（ステップＳ１３０７）。そして、決定されたデータを送信する（ステップＳ１３０８）。
【００７５】
アップロード要求の場合（ステップＳ１３０９）は、辞書管理システムから送信された辞書更新データを受信し（ステップＳ１３１０）、記憶部１３に存するプールへ格納した後（ステップＳ１３１１）、受領メッセージを送信する（ステップＳ１３１２）。そして、終了要求（ステップＳ１３０２）により、辞書管理システムとのセッションを終了する（ステップＳ１３０３）。
【００７６】
以上のアルゴリズムは、ルート、中間、リーフのどの層においても適用可能である。また、先のサーバ階層の概念図（図１１）では、３層の例示をしたが、中間ノードは何層あっても同じである。また、必ずしも中間ノード必要なく、ルートとリーフが同じ、すなわち単一のサーバのみであっても上記のアルゴリズムで動作する。
【００７７】
なお、第２の実施形態では、各層のサーバがそれぞれ自己のレベルの部門別辞書を作成する構成であったが、ルートのサーバのみ（例えば、マスタサーバ１１８）がこれを行なうような構成も考えられる。この場合、中間、リーフの各層は、自己のプールを自己の識別子と共にそのまま上位に転送するのみとなり、ルートのみが多数決原理で辞書作成を行い、ルートに全部門の部門別辞書が集中管理されることになり、下位のサーバは、自部門に関係する部門別辞書のみを選択的にコピーするようになる。
【００７８】
このように、辞書サーバの階層化を図ることにより、辞書を分散管理するよりもメンテナンスが各段に容易になる。しかし、通信トラブル等でルートノードとの接続ができなくなった場合などに、下位サーバが部門別辞書の更新を行なえなくなるというデメリットも生ずる。
【００７９】
また、上記第２の実施形態では、各サーバごとに自己のファイルシステムを保持していたが、ＮＦＳマウントなどを用いることにより、サーバ間でファイルシステムを共有するように構成することも可能である。この場合、ファイルシステムのコピーが起こらないので、記憶容量節減や処理速度向上に貢献するが、辞書開発者が、ファイルシステムに介入し、辞書エントリの修正を行なう場合などに、混乱をきたす恐れもある。
【００８０】
以上、説明したように、上記第２の実施形態によれば、予め辞書開発者が準備した最新用語データを辞書サーバ階層の最上位におくことにより、これが下位のサーバに順次転送されて、最終的にユーザの辞書管理システムを通じて辞書利用システムに反映される。また、あるユーザが自分のユーザ辞書に登録した単語は、辞書管理システムを介して辞書サーバに送られ、辞書サーバ階層を通じて分別、辞書化され、これが、最上位の辞書サーバに達すると、こんどは下位のサーバに順次転送されて、ユーザ辞書利用システムに反映される。
【００８１】
この結果、最新用語の供給が即時的、自動的に行なわれるため、辞書を常に時代に適合した状態に保つことができ、結果的に、辞書利用システムの品質維持、高精度化を実現することができる。また、ユーザの登録語を共同利用する枠組を提供するため、例えば、組織内用語の効率的利用が可能であり、ユーザ一人あたりの登録の負担を大幅に軽減することができる。
【００８２】
なお、上記第１および第２の実施形態で説明した、辞書管理システムおよび辞書利用システムおよび辞書サーバの各構成部は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フロッピーディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤなど）、半導体メモリなどの記録媒体に格納して頒布することもできる。
【００８３】
また、上記第１および第２の実施形態で説明した、辞書管理システムおよび辞書利用システムは、前述した各機能部を具備した辞書管理装置および辞書利用装置として構成することもできる。
【００８４】
【発明の効果】
本発明によれば、最新用語の供給が即時的、自動的に行なわれるため、辞書を常に時代に適合した状態に保つことができ、結果的に、辞書利用システムの品質維持、高精度化を実現することができる。また、組織内用語を共通利用することができるため、ユーザ一人あたりの登録の負担を大幅に軽減することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係る辞書管理システムの構成例を概略的に示した図。
【図２】辞書管理システムの動作を説明するためのフローチャート。
【図３】辞書管理システムの主画面の一例を示した図で、でユーザ提示文書が表示されている。
【図４】辞書管理システムの設定画面の一例を示した図。
【図５】図５（ａ）は辞書セット情報の階層構造を説明するための図で、図５（ｂ）は辞書セット情報のデータ構造の一例を示した図。
【図６】辞書管理システムのレポート表示画面の一例を示した図。
【図７】辞書更新の動作を説明するためのフローチャート。
【図８】辞書サーバから辞書利用システムに送られる辞書更新データのデータ構造の一例を示した図。
【図９】辞書サーバの階層化構造を説明するための図。
【図１０】本発明の第２の実施形態に係る辞書サーバの構成例を概略的に示した図。
【図１１】図１１（ａ）は、辞書管理システムに提供するための辞書更新データを管理するファイルシステムの構成例を示した図で、図１１（ｂ）は、ファイルシステム上の末端のディレクトリにおける辞書更新データと辞書セット情報の記憶例を示した図。
【図１２】辞書サーバの動作を説明するためのフローチャート。
【図１３】辞書管理システムと辞書サーバとの間のデータ交換処理を説明するためのフローチャート。
【符号の説明】
１…サーバ通信部
２…記憶部
３…クライアント通信部
４…入力部
５…提示部
６…制御部
１１…上位通信部
１２…下位通信部
１３…記憶部
１４…制御部
１０１…辞書サーバ
１０２…辞書管理システム
１０３…辞書利用システム
１３２…辞書サーバ
【図１】
0003556425.tif 000002
【図２】
0003556425.tif 000003
【図３】
0003556425.tif 000004
【図４】
0003556425.tif 000005
【図５】
0003556425.tif 000006
【図６】
0003556425.tif 000007
【図７】
0003556425.tif 000008
【図８】
0003556425.tif 000009
【図９】
0003556425.tif 000010
【図１０】
0003556425.tif 000011
【図１１】
0003556425.tif 000012
【図１２】
0003556425.tif 000013
【図１３】
0003556425.tif 000014