(57)【特許請求の範囲】
【請求項１】
自動翻訳をコンピュータに実行させる翻訳処理プログラムであって、
第１の辞書を用いた自動翻訳によって、原文から暫定訳文を作成する暫定訳文作成手順と、
前記暫定訳文内の単語に対する修正を検知する修正検知手順と、
修正後の単語を優先単語として、当該優先単語に対応する前記原文内の単語と関連付けて第２の辞書に登録する登録手順と、
前記第２の辞書に、前記原文内の単語が登録されている場合には、当該単語に対して無翻訳指示情報を付加して前記暫定訳文作成手順に暫定訳文の再作成を要求し、当該再作成された暫定訳文内の単語のうち無翻訳の単語に関連付けられた優先単語を前記第２の辞書から取得し、前記原文内の単語に対する前記暫定訳文内の各訳語を、活用処理を行った前記優先単語に置き換えて確定訳文を作成する訳文確定手順と、
をコンピュータに実行させることを特徴とする翻訳処理プログラム。
【請求項２】
前記第２の辞書の内容に基づいて前記第１の辞書を更新する辞書更新手順をさらにコンピュータに実行させ、
前記訳文確定手順は、前記辞書更新手順によって更新された前記第１の辞書に基づいて前記自動翻訳を行って前記確定訳文を作成することを特徴とする請求項１に記載の翻訳処理プログラム。
【請求項３】
前記訳文確定手順は、前記第１の辞書と、前記第２の辞書とを用いて前記自動翻訳を行って前記確定訳文を作成することを特徴とする請求項１に記載の翻訳処理プログラム。
【請求項４】
第１の辞書を用いた自動翻訳によって、原文から暫定訳文を作成する翻訳サーバに前記自動翻訳を要求する端末装置としてのコンピュータに実行させる翻訳処理プログラムであって、
前記暫定訳文内の単語に対する修正を検知する修正検知手順と、
修正後の単語を優先単語として、当該優先単語に対応する前記原文内の単語と関連付けて第２の辞書に登録する登録手順と、
前記第２の辞書に、前記原文内の単語が登録されている場合には、当該単語に対して無翻訳指示情報を付加して前記翻訳サーバに暫定訳文の再作成を要求し、当該再作成された暫定訳文内の単語のうち無翻訳の単語に関連付けられた優先単語を前記第２の辞書から取得し、前記原文内の単語に対する前記暫定訳文内の各訳語を、活用処理を行った前記優先単語に置き換えて確定訳文を作成する訳文確定手順と、
をコンピュータに実行させることを特徴とする翻訳処理プログラム。
【請求項５】
前記修正検知手順によって前記修正が検知された場合に、前記修正後の単語の活用形を原形に変換する活用処理部をさらに備え、
前記登録手順は、前記活用処理部によって原形に変換された修正後の単語と、当該単語に対応する原文内の単語とを関連付けて第２の辞書に登録することを特徴とする請求項１に記載の翻訳処理プログラム。
【請求項６】
第１の辞書を用いた自動翻訳によって、原文から暫定訳文を作成するサーバ装置と、当該サーバ装置に前記自動翻訳を要求する端末とを含んで構成される翻訳システムであって、
前記端末は、
前記サーバ装置が出力した前記暫定訳文内の単語に対する修正を検知する修正検知手段と、
修正後の単語を優先単語として、当該優先単語に対応する前記原文内の単語と関連付けて前記サーバ装置が備える第２の辞書に登録する登録手段と、
を、備え、
前記サーバ装置は、
前記第２の辞書に、前記原文内の単語が登録されている場合には、当該単語に対して無翻訳指示情報を付加して暫定訳文を再作成し、当該再作成された暫定訳文内の単語のうち無翻訳の単語に関連付けられた優先単語を前記第２の辞書から取得し、前記原文内の単語に対する前記暫定訳文内の各訳語を、活用処理を行った前記優先単語に置き換えて確定訳文を作成する訳文確定手段を備えたことを特徴とする翻訳システム。
【請求項７】
第１の辞書を用いた自動翻訳によって、原文から暫定訳文を作成するサーバ装置と、当該サーバ装置に前記自動翻訳を要求する端末とを含んで構成される翻訳システムであって、
前記端末は、
前記サーバ装置が出力した前記暫定訳文内の単語に対する修正を検知する修正検知手段と、
修正後の単語を優先単語として、当該優先単語に対応する前記原文内の単語とを関連付けてネットワーク上の第２の辞書に登録する登録手段と
を、備え、
前記サーバ装置は、
前記第２の辞書に、前記原文内の単語が登録されている場合には、当該単語に対して無翻訳指示情報を付加して暫定訳文を再作成し、当該再作成された暫定訳文内の単語のうち無翻訳の単語に関連付けられた優先単語を前記第２の辞書から取得し、前記原文内の単語に対する前記暫定訳文内の各訳語を、活用処理を行った前記優先単語に置き換えて確定訳文を作成する訳文確定手段を備えたことを特徴とする翻訳システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、自動翻訳を行う翻訳処理プログラムおよび自動翻訳を用いる翻訳システムに関する。
【背景技術】
【０００２】
従来、自動翻訳で得られる訳文の単語は、翻訳処理を行う装置内の翻訳システムが初期状態であると、ユーザの期待通りのものにならないことが多い。
【０００３】
例えば、翻訳システムは、日本語の「ペン」という単語に対し、システムに予め保持された基本辞書（広い範囲で一般的な単語が登録される）あるいは専門用語が登録されている専門用語辞書を用いて「Pen」という訳語を出力する。
【０００４】
ところが、ユーザによって求められる訳語は異なり、各々のユーザは、必ずしも自分が望む訳語を得られるわけではない。
【０００５】
そこで、訳文の単語をユーザの期待に近づけるため、翻訳システムに対し、任意に単語を登録できるユーザ辞書がある。基本辞書、専門用語辞書にはユーザは単語登録できないが、ユーザ辞書には追加できる。
【０００６】
特許文献１では、端末に対して自動翻訳を提供するサーバがユーザ辞書を備え、端末は、当該ユーザ辞書に登録する単語を送信するという手法が開示されている。
【０００７】
そして、翻訳エンジンが、翻訳対象の単語に対して、ユーザ辞書を優先して用いることで、ユーザの期待通りの訳文を作成するようにしている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００１−３４６１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ユーザは、自動翻訳で得られた訳文の単語が意に沿わないものである場合には、当該単語に対して直接修正を行う。そして、上記したユーザ辞書に登録を行うことで、今回の修正を次回の翻訳に反映させる。
【００１０】
つまり、ユーザは、翻訳エンジンが用いるユーザ辞書自体を編集しない限り、意に沿わない訳文の単語を得続けることになり、その都度当該単語に修正を行う必要がある。
【００１１】
特許文献１においても、同様に、サーバに対し、登録する単語を送信しない限り、その都度修正を行う必要がある。
【００１２】
このように、訳文の単語に対して行った修正を以降に反映させるには、ユーザ自身がユーザ辞書を編集する必要があり、当該作業がユーザの負担になっているという課題があった。
【００１３】
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、ユーザによるユーザ辞書の編集作業を軽減することが可能な翻訳処理プログラムおよび翻訳システムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
上述した課題を解決し、目的を達成するため、このプログラムは、第１の辞書（基本辞書や専門用語辞書やユーザ辞書）を用いた自動翻訳をコンピュータに実行させる翻訳処理プログラムであって、第１の辞書を用いた自動翻訳によって、原文から暫定訳文を作成する暫定訳文作成手順と、前記暫定訳文内の単語に対する修正を検知する修正検知手順と、修正後の単語を優先単語として、当該優先単語に対応する前記原文内の単語と関連付けて第２の辞書に登録する登録手順と、前記第２の辞書に、前記原文内の単語が登録されている場合には、当該単語に対して無翻訳指示情報を付加して前記暫定訳文作成手順に暫定訳文の再作成を要求し、当該再作成された暫定訳文内の単語のうち無翻訳の単語に関連付けられた優先単語を前記第２の辞書から取得し、前記原文内の単語に対する前記暫定訳文内の各訳語を、活用処理を行った前記優先単語に置き換えて確定訳文を作成する訳文確定手順と、をコンピュータに実行させることを要件とする。
【００１５】
また、このプログラムは、第１の辞書を用いた自動翻訳によって、原文から暫定訳文を作成する翻訳サーバに前記自動翻訳を要求する端末装置としてのコンピュータに実行させる翻訳処理プログラムであって、前記暫定訳文内の単語に対する修正を検知する修正検知手順と、修正後の単語を優先単語として、当該優先単語に対応する前記原文内の単語と関連付けて第２の辞書に登録する登録手順と、前記第２の辞書に、前記原文内の単語が登録されている場合には、当該単語に対して無翻訳指示情報を付加して前記翻訳サーバに暫定訳文の再作成を要求し、当該再作成された暫定訳文内の単語のうち無翻訳の単語に関連付けられた優先単語を前記第２の辞書から取得し、前記原文内の単語に対する前記暫定訳文内の各訳語を、活用処理を行った前記優先単語に置き換えて確定訳文を作成する訳文確定手順と、をコンピュータに実行させることを要件とする。
【００１６】
また、このシステムは、第１の辞書を用いた自動翻訳によって、原文から暫定訳文を作成するサーバ装置と、当該サーバ装置に前記自動翻訳を要求する端末とを含んで構成される翻訳システムであって、前記端末は、前記サーバ装置が出力した前記暫定訳文内の単語に対する修正を検知する修正検知手段と、修正後の単語を優先単語として、当該優先単語に対応する前記原文内の単語と関連付けて前記サーバ装置が備える第２の辞書に登録する登録手段とを、備え、前記サーバ装置は、前記第２の辞書に、前記原文内の単語が登録されている場合には、当該単語に対して無翻訳指示情報を付加して前記サーバ装置に暫定訳文の再作成を要求し、当該再作成された暫定訳文内の単語のうち無翻訳の単語に関連付けられた優先単語を前記第２の辞書から取得し、前記原文内の単語に対する前記暫定訳文内の各訳語を、活用処理を行った前記優先単語に置き換えて確定訳文を作成する訳文確定手段を備えたことを要件とする。
【００１７】
また、このシステムは、第１の辞書を用いた自動翻訳によって、原文から暫定訳文を作成するサーバ装置と、当該サーバ装置に前記自動翻訳を要求する端末とを含んで構成される翻訳システムであって、前記端末は、前記サーバ装置が出力した前記暫定訳文内の単語に対する修正を検知する修正検知手段と、修正後の単語を優先単語として、当該優先単語に対応する前記原文内の単語とを関連付けてネットワーク上の第２の辞書に登録する登録手段とを、備え、前記サーバ装置は、前記第２の辞書に、前記原文内の単語が登録されている場合には、当該単語に対して無翻訳指示情報を付加して暫定訳文を再作成し、当該再作成された暫定訳文内の単語のうち無翻訳の単語に関連付けられた優先単語を前記第２の辞書から取得し、前記原文内の単語に対する前記暫定訳文内の各訳語を、活用処理を行った前記優先単語に置き換えて確定訳文を作成する訳文確定手段を備えたことを要件とする。
【発明の効果】
【００１８】
ユーザにより修正された訳語については、自動で第２の辞書に登録を行って以降の翻訳処理に反映する。その結果、ユーザは、ユーザ辞書に登録するために従来行っていた煩わしい作業（辞書エディタを呼び出す等）を行わなくてもよい。つまり、ユーザによるユーザ辞書の編集作業を軽減することが可能となる。
【図面の簡単な説明】
【００１９】
【図１】図１は、実施例１に係る翻訳装置の構成を示すブロック図である。
【図２】図２は、翻訳エンジンによる翻訳処理の結果生成される情報を説明するための図である。
【図３】図３は、表示部に表示される画像の例を示す図である。
【図４】図４は、辞書テーブルが記憶する情報の例を示す図である。
【図５】図５は、登録処理部（上書き記録）の処理動作を説明するフローチャートである。
【図６】図６は、登録処理部（追加記録）の処理動作を説明するフローチャートである。
【図７】図７は、辞書テーブルが記憶する情報の例を示す図である。
【図８】図８は、翻訳反映部の処理動作を説明するフローチャートである。
【図９】図９は、翻訳反映部の別の処理動作を説明するフローチャートである。
【図１０】図１０は、実施例２に係る翻訳装置の構成を示すブロック図である。
【図１１】図１１は、辞書テーブルが記憶する情報の例を示す図である。
【図１２】図１２は、辞書更新部の処理動作を説明するフローチャートである。
【図１３】図１３は、実施例２の変形例を説明するための図である。
【図１４】図１４は、実施例１および２の変形例を説明するための図である。
【図１５】図１５は、実施例１および２の変形例を説明するための図である。
【図１６】図１６は、実施例１および２の変形例を説明するための図である。
【図１７】図１７は、実施例１および２の変形例を説明するための図である。
【図１８】図１８は、実施例１および２の変形例を説明するための図である。
【図１９】図１９は、翻訳処理プログラムを実行するコンピュータを示す図である。
【図２０】図２０は、実施例３に係る翻訳装置の概要を説明するための図である。
【図２１】図２１は、実施例３に係る翻訳装置の構成を示すブロック図である。
【図２２】図２２は、辞書テーブルを説明するための図である。
【図２３】図２３は、活用テーブルを説明するため図である。
【図２４】図２４は、自動翻訳結果を修正しても辞書を更新しない例を説明するための図である。
【図２５】図２５は、登録処理部の処理動作を説明するためのフローチャートである。
【図２６】図２６は、登録処理部（追加記録）の処理動作を説明するためのフローチャートである。
【図２７】図２７は、登録処理部の判定処理動作を説明するためのフローチャートである。
【発明を実施するための形態】
【００２０】
以下に添付図面を参照して、本発明に係る翻訳装置の好適な実施例について詳細に説明する。
【実施例１】
【００２１】
まず、実施例１に係る翻訳装置の概要を説明する。翻訳装置は、ユーザの入力操作によって、ある言語の言葉を受け付け、翻訳エンジンによる翻訳処理を行い、処理結果として他の言語の言葉を出力する。そして、翻訳エンジンでは、翻訳対象が日本語であれば形態素解析や、翻訳対象の言葉中の単語や熟語を検索キーとした辞書検索など、従来の翻訳処理が行われている。
【００２２】
なお、翻訳エンジンが参照する辞書には３種類（基本辞書、専門用語辞書、ユーザ辞書）あるが、基本辞書は必ず使用され、専門用語辞書やユーザ辞書はユーザの指定により使用される仕組みとなっている。
【００２３】
翻訳装置において、翻訳エンジンは、翻訳システムに予め保持された辞書全体（基本辞書、専門用語辞書およびユーザ辞書）を用いて翻訳処理を行うが、当該翻訳処理によって得られる訳文の単語は、必ずしもユーザの期待通りのものとはならない。
【００２４】
したがって、ユーザは、訳文の単語に対して修正を行うが、ここで、翻訳装置は、訳文内の単語に対する修正を検知し、修正後の単語と、当該単語に対応する原文内の単語とを関連付けて、基本辞書、専門用語辞書およびユーザ辞書とは別に設置される辞書に登録する。
【００２５】
そして、翻訳エンジンが辞書全体を用いて出力する訳文に対し、上記した別に設置される辞書に基づいて修正を行っている。以下では、当該翻訳装置の具体的な構成を示し、説明を行う。
【００２６】
図１は、実施例１に係る翻訳装置の構成を示すブロック図である。同図に示すように、翻訳装置１０は、入力部２０と、受付処理部３０と、表示データ記憶部４０と、表示処理部５０と、表示部６０と、翻訳エンジン７０と、辞書全体８０と、翻訳反映部９０と、登録処理部１００と、辞書テーブル１１０と、を備える。
【００２７】
入力部２０は、ユーザの入力操作を受け付け、キーボードやマウスで実現される。ユーザは、後述する表示部６０に表示された出力結果を見つつ入力部２０に対する入力操作を行う。当該入力操作を受け付けた入力部２０は、原文となる言葉、訳文の編集指示、カーソル移動指示、翻訳実行指示などを受付処理部３０に出力する。
【００２８】
受付処理部３０は、入力部２０から出力された情報や指示を処理する処理部である。具体的には、受付処理部３０は、入力部２０から原文となる言葉、訳文の編集指示、カーソル移動指示を受け付けると、表示データ記憶部４０を更新する。また、入力部２０から翻訳実行指示を受け付けると、翻訳エンジン７０に出力する。
【００２９】
表示データ記憶部４０は、表示処理部５０に用いられるデータが記憶され、特に本発明に密接に関連するものとして、原文記憶部４１と、翻訳結果記憶部４２と、カーソル位置記憶部４３と、を備える。
【００３０】
原文記憶部４１は、受付処理部３０から出力された情報である原文となる言葉が格納される。
【００３１】
翻訳結果記憶部４２は、翻訳エンジン７０による翻訳処理の結果生成される情報を記憶する。
【００３２】
具体的には、翻訳結果記憶部４２には、図２に示すように、日本語の、これ、は、ペン、です、の単語および句点「。」と、英語の、This、is、Pen、の単語およびピリオド「.」とが格納される。
【００３３】
そして、上記した単語や記号には、いずれの単語と対応関係にあるかを示す単語対応情報が付加されている。例えば、「これ」には、「This」と対応関係にあることを示す情報が付加されている。同様に、「This」には、「これ」と対応関係にあることを示す情報が付加されている。
【００３４】
さらに、単語には、文頭からの位置を示す位置情報、何文字で構成されるかを示す文字数情報、品詞を示す品詞情報、当該単語が取得された辞書の識別情報である辞書識別情報なども付加されている。例えば、「Pen」には、文頭の「This」の「T」を０番目として順に数えた（スペースも文字として数える）場合に、８番目に位置していること、３文字で構成されていること、名詞であること、辞書全体８０のうちどの辞書から検索されたことを示す情報が付加されている。
【００３５】
カーソル位置記憶部４３は、表示部６０に表示された画像中のどの位置にカーソルを表示するかを示す情報を記憶する。かかる情報は、カーソル移動指示を受け付けた受付処理部３０により更新される。
【００３６】
表示処理部５０は、表示データ記憶部４０に格納されたデータに基づいて表示部６０に画像を表示する。
【００３７】
例えば、図３に示すように、表示部６０には、原文の枠内に日本語の文「これはペンです。」と、訳文の枠内に英語の文「This  is  Pen.」とが表示される。
【００３８】
また、同図に示すように、表示部６０には、カーソル１やポインタ２が表示される。上述のように、ユーザはこのような画像が表示された表示部６０を見つつ入力部２０に対する入力操作を行い、例えば、方向キーで、現に「。」の右に位置するカーソル１を左に移動したり、マウスで、ポインタ２を「Pen」の「e」と「n」の間へ移動させた上でクリックすることでカーソル１を指示した位置に移動したりする。
【００３９】
翻訳エンジン７０は、ある言語の言葉を、辞書全体８０を用いて他の言語に翻訳する。
【００４０】
なお、辞書全体８０は、翻訳エンジン７０が翻訳時に参照する辞書全体のことを指し、例えば、互いに異なる言語であり、各々が同一の内容を表す一対の単語、あるいは、このような一対の熟語が複数格納されたものである。具体的には、辞書全体８０は、基本辞書８１、専門用語辞書８２、ユーザ辞書８３を含む。基本辞書８１は翻訳エンジンから必ず参照されるが、専門用語辞書８２、ユーザ辞書８３はユーザの指定により参照される。また、ユーザは、基本辞書８１や専門用語辞書８２には単語登録できないが、ユーザ辞書８３には単語登録できる。
【００４１】
具体的には、翻訳エンジン７０は、受付処理部３０から翻訳実行指示を受け取ると、原文記憶部４１から原文となる言葉を読み出し、辞書全体８０を用いて翻訳処理を行う。処理の結果、翻訳エンジン７０は、上述したように各情報が付加された原文および訳文の単語や記号を生成し、翻訳反映部９０に出力する。
【００４２】
翻訳反映部９０は、翻訳エンジン７０から出力された単語に対して辞書テーブル１１０を参照して処理を行うが、当該処理を説明する前に登録処理部１００や辞書テーブル１１０の説明を行う。
【００４３】
登録処理部１００は、修正された訳文の単語や、当該単語に対応する原文の単語を互いに関連付けて辞書テーブル１１０に登録する処理部であり、検知・判定部１０１を備える。
【００４４】
したがって、辞書テーブル１１０には、図４に示すように、原文の単語、訳文の単語、辞書識別情報、品詞情報などが関連付けられて登録される。具体的には、図４に示すように、「ペン」、「Penn（当該つづりは修正されたものである）」、「Ａ」、「名詞」などが関連付けられて登録される。
【００４５】
登録処理部１００は、検知・判定部１０１により、すでに翻訳結果記憶部４２に格納された訳文に対してユーザが編集を行なったことを検知し、当該編集の終了時に単語が修正されたか否かを判断する。
【００４６】
具体的には、検知・判定部１０１により、受付処理部３０から表示データ記憶部４０に訳文の編集指示が出力されたことを検知すると、カーソル位置記憶部４３や翻訳結果記憶部４２を参照して、どの単語に対して編集が行われたかを識別する。
【００４７】
そして、カーソル位置の移動を監視し、カーソル位置が当該単語から離れたことでユーザによる編集が終了したと判断し、当該単語が修正されたか否かを判定する。
【００４８】
登録処理部１００は、検知・判定部１０１により、ユーザによって単語が修正されたと判定すると、辞書テーブル１１０に対する登録処理を開始する。なお、このような判定結果に基づいて登録処理を開始するのではなく、検知後、ユーザから指示を受け付けるまで待機し、当該指示を受け付けた場合に、登録処理を開始するようにしてもよい。
【００４９】
図５は、登録処理部１００の処理動作を説明するフローチャートであり、同図を用いて登録処理を説明する。
【００５０】
まず、登録処理部１００は、修正が行われた訳文の単語を、翻訳結果記憶部４２から取得するとともに、当該単語に付加された単語対応情報に基づいて、原文の単語も同様に取得する（ステップＳ１１０）。
【００５１】
そして、登録処理部１００は、原文の単語を検索キーとして辞書テーブル１１０を検索する（ステップＳ１２０）。
【００５２】
検索の結果、辞書テーブル１１０内に原文の単語の登録がない場合には（ステップＳ１３０否定）、登録処理部１００は、翻訳結果記憶部４２から取得した原文の単語や訳文の単語を関連付けて辞書テーブル１１０に登録する（ステップＳ１４０）。
【００５３】
なお、さらに、単語に付加されている品詞情報や辞書識別情報を関連付けて登録するようにしてもよい。
【００５４】
一方、検索の結果、既に登録済みである場合には（ステップＳ１３０肯定）、登録処理部１００は、辞書テーブル１１０内の原文の単語に関連付けられた訳文の単語を取得する（ステップＳ１５０）。
【００５５】
そして、登録処理部１００は、辞書テーブル１１０から取得した訳文の単語と、翻訳結果記憶部４２から取得した訳文の単語とが同一であるか否かを比較する（ステップＳ１６０）。
【００５６】
比較の結果、両者が異なる場合には（ステップＳ１７０否定）、登録処理部１００は、辞書テーブル１１０内の訳文の単語を翻訳結果記憶部４２から取得した訳文の単語に上書きして（ステップＳ１８０）処理を終了する。
【００５７】
一方、両者が同一である場合には（ステップＳ１７０肯定）、処理を終了する。
【００５８】
上述した登録処理は、訳文の単語を上書きすることによって訳文の単語に対する２回目以降の修正を記録していくものであるが、上書きではなく、再修正された訳文の単語を追加記録していくようにしてもよい。
【００５９】
図６は、その場合の登録処理部１００の処理動作を説明するフローチャートであり、同図を用いて登録処理を説明する。
【００６０】
なお、辞書テーブル１１０には、図７に示すように、さらに登録日付が関連付けられて登録される。
【００６１】
まず、登録処理部１００は、修正が行われた訳文の単語を、翻訳結果記憶部４２から取得するとともに、当該単語に付加された単語対応情報に基づいて、原文の単語も同様に取得する（ステップＳ１９０）。
【００６２】
そして、原文の単語を検索キーとして辞書テーブル１１０を検索し（ステップＳ２００）、検索結果として取得した訳文の単語のうち最新の登録日付と関連付けられた単語を選択して取得する（ステップＳ２０３）。
【００６３】
そして、辞書テーブル１１０から取得した訳文の単語と、翻訳結果記憶部４２から取得した訳文の単語とが同一であるか否かを比較する（ステップＳ２０７）。
【００６４】
比較の結果、両者が異なる場合には（ステップＳ２１０否定）、翻訳結果記憶部４２から取得した原文の単語および訳文の単語と、現在の日時情報である登録日付とを互いに関連付けて辞書テーブル１１０に登録し（ステップＳ２２０）、処理を終了する。
【００６５】
なお、上述のように、さらに、単語に付加されている品詞情報や辞書識別情報を関連付けて登録するようにしてもよい。
【００６６】
一方、両者が同一である場合には（ステップＳ２１０肯定）、処理を終了する。
【００６７】
このように、追加記録しておくことにより、言い換えれば、辞書テーブル１１０に更新履歴を保存することにより、例えば、２００８年３月１日までに行った修正に準じて翻訳結果を得たいということも可能となる。
【００６８】
ところで、上述のように、単語が修正されたと判定後、直ちに登録処理を開始するのではなく、例えば、訳文の一文中のどの単語が修正されたかを識別して記憶しておく手法でもよい。そして、カーソル位置の移動を監視し、カーソル位置が文から離れた時点で登録処理を開始するようにしてもよい。
【００６９】
また、このようにカーソル位置に基づいて登録処理を開始するのではなく、検知後、ユーザから訳文確定の指示を受け付けるまで待機し、当該指示を受け付けた場合に、登録処理を開始するようにしてもよい。
【００７０】
そして、図５でステップＳ１１０〜ステップＳ１８０として示した登録処理、図６でステップＳ１９０〜ステップＳ２２０として示した登録処理は、修正が行われた全ての訳文の単語について行われる。
【００７１】
翻訳反映部９０の説明に戻る。図８は、翻訳反映部９０の処理動作を説明するフローチャートであるが、同図に示したフローチャートを参照して説明を行う。なお、同図に示した処理フローは、翻訳エンジン７０から単語を受け取るたびに繰り返し実行される。
【００７２】
図８に示すように、まず、翻訳反映部９０は、翻訳エンジン７０から受け取った原文の単語のうち文頭となる単語と、当該単語に対応する訳文の単語とを選択する（ステップＳ２３０）。
【００７３】
そして、翻訳反映部９０は、原文の単語を検索キーとして辞書テーブル１１０を検索する（ステップＳ２４０）。
【００７４】
なお、翻訳エンジン７０により複合名詞が複数の名詞として区切られてしまった時など、場合に応じて検索キーを拡張して辞書テーブル１１０を検索するようにしてもよい。
【００７５】
検索の結果、辞書テーブル１１０内に原文の単語が登録済みである場合には（ステップＳ２５０肯定）、翻訳反映部９０は、選択中の訳文の単語を、当該原文の単語に対応する訳文の単語に置き換える（ステップＳ２６０）。
【００７６】
なお、置き換えを実施する際、選択中の訳文の単語に対して翻訳エンジン７０が付加した品詞情報を参照し、辞書テーブル１１０内の訳文の単語に対して当該品詞情報に応じた活用を行った上で置き換えを実施してもよい。
【００７７】
訳文の置換を行った後、もしくは、辞書テーブル１１０内に原文の単語が登録されていない場合には（ステップＳ２５０否定）、翻訳反映部９０は、選択中の原文の単語が文末となる単語か否かを判断する（ステップＳ２７０）。
【００７８】
判断の結果、文末でない場合には（ステップＳ２７０否定）、翻訳反映部９０は、原文の単語のうち現に選択中の単語の次に位置する単語と、当該単語に対応する訳文の単語とに選択を切り換え（ステップＳ２８０）、ステップＳ２４０の処理へ戻る。
【００７９】
一方、判断の結果、文末である場合には（ステップＳ２７０肯定）、翻訳反映部９０は、翻訳エンジン７０から受け取った原文および訳文の単語（訳文の単語については、場合に応じて置き換えが行われている）を翻訳結果として表示データ記憶部４０に格納し（ステップＳ２９０）、処理を終了する。
【００８０】
ここで、図９を用いて上述した処理動作とは異なる、もう一つの処理動作を説明する。
【００８１】
まず、翻訳反映部９０は、翻訳エンジン７０から受け取った原文の単語のうち文頭となる単語を選択する（ステップＳ３００）。
【００８２】
そして、原文の単語を検索キーとして辞書テーブル１１０を検索する（ステップＳ３１０）。
【００８３】
検索の結果、辞書テーブル１１０内に原文の単語が登録済みである場合には（ステップＳ３２０肯定）、当該原文の単語に対応する訳文の単語を辞書テーブル１１０から取得し、取得した訳文の単語に対して無翻訳指示情報および品詞指定情報を付加する（ステップＳ３３０）。
【００８４】
なお、翻訳エンジン７０は、無翻訳指示情報を付加された単語を除いて翻訳処理を行う。
【００８５】
また、翻訳エンジン７０は、品詞指定情報が付加された単語については、当該品詞指定情報が指定する品詞で翻訳処理を行う。
【００８６】
ここでは、品詞指定情報で指定する品詞は、選択中の原文の単語に付加された品詞情報が示す品詞とする。
【００８７】
処理動作の説明に戻って、翻訳反映部９０は、選択中の原文の単語を、辞書テーブル１１０から取得した訳文の単語に置き換える（ステップＳ３４０）。
【００８８】
置き換えを行った後、もしくは、辞書テーブル１１０内に原文の単語が登録されていない場合には（ステップＳ３２０否定）、選択中の原文の単語が文末となる単語か否かを判断する（ステップＳ３５０）。
【００８９】
判断の結果、文末でない場合には（ステップＳ３５０否定）、原文の単語のうち現に選択中の単語の次に位置する単語に選択を切り換え（ステップＳ３６０）、ステップＳ３１０の処理へ戻る。
【００９０】
ステップＳ３１０の処理へ戻った後は、選択中の原文の単語を用いて同様の処理が行われる。
【００９１】
一方、判断の結果、文末であり、原文の単語のうちいずれか一つでも置き換えを行った場合には（ステップＳ３５０肯定、かつ、ステップＳ３７０肯定）、翻訳エンジン７０から受け取った原文および訳文の単語を翻訳エンジン７０に返して翻訳処理の再実行を指示する（ステップＳ３８０）。
【００９２】
翻訳エンジン７０からは原文の単語と、当該原文の単語に対応する訳文の単語とが出力されるので、翻訳反映部９０は、当該出力された単語を受け取る（ステップＳ３９０）。
【００９３】
そして、翻訳エンジン７０から受け取った原文の単語のうち文頭となる単語と、当該単語に対応する訳文の単語とを選択する（ステップＳ４００）。
【００９４】
そして、選択中の原文の単語に対する翻訳処理が無翻訳指示情報によって未実行である場合には（ステップＳ４１０否定）、選択中の訳文の単語に対し、当該訳文の単語に付加されている品詞情報に応じた活用を行う（ステップＳ４２０）。
【００９５】
活用を行った後、もしくは、選択中の原文の単語に対して翻訳処理が実行されている場合には（ステップＳ４１０肯定）、選択中の原文の単語が文末となる単語か否かを判断する（ステップＳ４３０）。
【００９６】
判断の結果、文末でない場合には（ステップＳ４３０否定）、原文の単語のうち現に選択中の単語の次に位置する単語と、当該単語に対応する訳文の単語とを選択し（ステップＳ４４０）、ステップＳ４１０の処理へ戻る。
【００９７】
一方、判断の結果、文末である場合、もしくは、一回も置き換えを行っていない場合には（ステップＳ４３０肯定またはステップＳ３７０否定）、翻訳反映部９０は、翻訳エンジン７０から受け取った原文および訳文の単語を翻訳結果として表示データ記憶部４０に格納し（ステップＳ４５０）、処理を終了する。
【００９８】
上述してきたように、実施例１によれば、ユーザにより修正された訳語については、自動で辞書テーブル１１０に登録を行って以降の翻訳処理に反映する。その結果、ユーザは、ユーザ辞書に登録するために従来行っていた煩わしい作業（辞書エディタを呼び出す等）を行わなくてもよい。つまり、ユーザによるユーザ辞書の編集作業を軽減することが可能となる。
【実施例２】
【００９９】
実施例１では、翻訳エンジン７０の翻訳結果に対し、翻訳反映部９０が辞書テーブル１１０を参照して処理するものであったが、実施例２では、辞書テーブル１１０の内容を辞書全体８０に反映し、翻訳エンジン７０が当該辞書全体８０を参照して翻訳処理を行うものとする。
【０１００】
なお、通常の翻訳エンジンは、基本辞書や専門用語辞書には単語登録できないため、厳密にはユーザ辞書への反映（登録）ということになるが、基本辞書や専門用語辞書にも単語登録できる翻訳エンジンがあれば、基本辞書や専門用語辞書に反映させてもよい。
【０１０１】
したがって、図１０は、実施例２に係る翻訳装置の構成を示すブロック図であるが、同図に示すように、翻訳装置１０は、辞書更新部１２０を新たに備え、翻訳反映部９０については構成要素から除かれる。
【０１０２】
登録処理部１００は、実施例２では、修正が行われた訳文の単語や、当該単語に対応する原文の単語を互いに関連付けて辞書テーブル１１０に登録する場合に、更新フラグも関連付けて登録する。なお、更新フラグは、当該更新フラグに関連付けられた情報が辞書全体８０に反映済みであるか否かを識別するために用いる情報である。
【０１０３】
したがって、辞書テーブル１１０には、図１１に示すように、原文の単語、訳文の単語、辞書識別情報、品詞情報などに加え、更新フラグが関連付けられて登録される。具体的には、図１１に示すように、「ペン」、「Penn」、「Ａ」、「名詞」、「有り」などが関連付けられて登録される。
【０１０４】
辞書更新部１２０は、辞書テーブル１１０に登録された内容に基づいて辞書全体８０を更新する。
【０１０５】
図１２は、辞書更新部１２０の処理動作を説明するフローチャートであり、同図を用いて具体的に説明する。なお、同図に示した処理フローは、登録処理部１００によって辞書テーブル１１０に登録が行われるたびに繰り返し実行される。
【０１０６】
まず、辞書更新部１２０は、辞書テーブル１１０内で更新フラグ「有り」とともに互いに関連付けられた情報を取得する（ステップＳ４５０）。
【０１０７】
そして、辞書更新部１２０は、取得した情報のうち辞書識別情報が示す辞書全体８０内の辞書に対し、取得した情報を用いて更新処理を行う（ステップＳ４６０）。なお、更新処理を行う場合に、必要に応じて、当該取得した情報を翻訳エンジン７０の辞書形式に変換する。
【０１０８】
更新処理後、辞書更新部１２０は、辞書テーブル１１０内で取得対象となった情報に関連付けられた更新フラグを「無し」に更新し（ステップＳ４７０）、処理を終了する。
【０１０９】
なお、登録処理の開始を一文ごとに制御する手法では、複数の登録が行われる場合もある。その場合には、辞書テーブル１１０内で更新フラグ「有り」に関連付けられ、取得対象となる情報がなくなるまでループ処理を行う。
【０１１０】
ところで、辞書更新部１２０が行う上記の処理を翻訳エンジン７０に実行させるようにしてもよい。
【０１１１】
その場合には、図１３に示すように、辞書更新部１２０については構成要素から除かれ、翻訳エンジン７０が、辞書テーブル１１０の内容を辞書全体８０に反映するための辞書更新部１２５を備える。
【実施例３】
【０１１２】
実施例１では、自動翻訳結果の訳語を編集すると、辞書テーブルも自動的に更新する処理について説明したが、実施例３では、編集された訳語を原形に変換して、変換された原形を辞書テーブルに登録するものとする。
【０１１３】
つまり、図２０に示すように、実施例１の翻訳装置１０では、利用者が所定の単語の翻訳結果を修正すると、すぐに辞書テーブルに反映し、次回以降の翻訳結果に反映させる。図２０の例を用いて説明すると、翻訳装置１０は、利用者から「Ｐｅｎ」を「Ｐｅｎｎ」に修正する更新操作を受け付けた場合に、すぐに修正結果を辞書テーブルに登録し、次回以降の翻訳結果に反映させる。
【０１１４】
ところが、実施例１の翻訳装置１０では、利用者が訳語の活用形を変更する編集を行った場合にも、すぐに辞書テーブルに反映され、次回以降の翻訳結果として変更された活用形が反映させてしまう。図２０の例を用いて説明すると、翻訳装置１０は、利用者から原形「Ｐｅｎｎ」を複数形「Ｐｅｎｎｓ」とする更新操作を受け付けると、すぐに辞書テーブルに反映し、次回以降の翻訳結果として変更された活用形である複数形「Ｐｅｎｎｓ」が訳出させてしまう。
【０１１５】
そこで、以下の実施例３では、編集された訳語を原形に変換して、変換された原形を辞書テーブルに登録する場合として、図２１〜図２７を用いて、実施例３における翻訳装置１０ａの構成および処理について説明する。図２１は、実施例３に係る翻訳装置の構成を示すブロック図である。図２２は、辞書テーブルを説明するための図である。図２３は、活用テーブルを説明するため図である。図２４は、自動翻訳結果を修正しても辞書を更新しない例を説明するための図である。図２５および図２６は、登録処理部の処理動作を説明するためのフローチャートである。図２７は、登録処理部の判定処理動作を説明するためのフローチャートである。
【０１１６】
図２１に示すように、翻訳装置１０ａは、図１に示した翻訳装置１０と比較して、活用処理部１０２ａおよび活用テーブル１０３ａを新たに有する点が相違する。以下に、実施例３に係る翻訳装置１０ａの構成について各部を説明するが、実施例１と同様の構成については説明を省略する。
【０１１７】
実施例３に係る翻訳装置１０ａは、実施例１と同様に、辞書テーブル１１０を有する。ここで、図２２の例を用いて辞書テーブル１１０の具体的に説明する。図２２に示すように、辞書テーブル１１０は、実施例１と同様に、原文の単語である「原語」、訳文の単語である「訳語」、辞書識別情報である「辞書名」、品詞に関する情報である「品詞」などが関連付けられて登録される。
【０１１８】
ここで、実施例３に係る翻訳装置１０ａの辞書テーブル１１０では、「訳語」に活用語が原形の単語のみが登録および更新されるようになっている。つまり、実施例３に係る翻訳装置１０ａでは、以下に詳述するように、ユーザの編集結果が訳語の活用形を変更する編集を行った場合に、編集された訳語を原形に変換し、変換された原形を辞書テーブルに登録する。
【０１１９】
登録処理部１００ａは、原形に変換された修正後の単語と、当該単語に対応する原文内の単語とを関連付けて辞書テーブル１１０に登録する処理を行うが、特に、検知・判定部１０１ａ、活用処理部１０２ａ、活用テーブル１０３ａを有する。
【０１２０】
活用テーブル１０３ａは、単語ごとに、活用の種類と活用形の文字列を対応付けて記憶する。具体的には、活用テーブル１０３ａは、図２３に示すように、各単語について、単語の「品詞」、活用文字列が何の活用を表わすかを示す「活用の種類」、活用形を示す文字列である「活用文字列」を対応付けて記憶する。
【０１２１】
図２３の例を用いて説明すると、活用テーブル１０３ａでは、図２３に例示するように、品詞が「名詞」、活用の種類が「複数形語尾」、活用文字列が「ｓ」であることを対応付けて記憶しており、「ｓ」が名詞につく複数形語尾であることを示している。
【０１２２】
なお、活用テーブル１０３ａでは、図２３に例示するように、活用の種類で「活用しない」と記憶されている場合に、その品詞が変化しないことを示し、活用文字列を空欄とする。また、活用テーブル１０３ａでは、不規則活用の場合に、活用文字列に「原形→活用形」と記憶（図２３の例では、「ｇｏ→ｗｅｎｔ」と記憶）する。
【０１２３】
検知・判定部１０１ａは、実施例１と同様に、すでに翻訳結果記憶部４２に格納された訳文に対してユーザが編集を行なったことを検知し、当該編集の終了時に訳語が修正されたか否かを判断する。その結果、検知・判定部１０１ａは、訳語が修正されたと判断された場合には、活用処理部１０２ａに訳語の修正が検知された旨を通知する。
【０１２４】
活用処理部１０２ａは、修正が検知された場合に、修正後の単語の活用形を原形に変換する。具体的には、活用処理部１０２ａは、検知・判定部１０１ａから訳語の修正が検知された旨を受信すると、活用テーブル１０３ａを参照して、修正された訳語が活用しているか判定する。
【０１２５】
例えば、活用処理部１０２ａは、名詞である「Ｐｅｎｎ」を「Ｐｅｎｎｓ」とする修正が行われた場合に、名詞の語尾に追加された「ｓ」とマッチする活用文字列を活用テーブル１０３ａから検索する。その結果、活用処理部１０２ａは、活用文字列「ｓ」に対応する活用の種類「複数形語尾」を読み出し、修正後の単語の活用形が複数形であって、修正された訳語が活用していると判定する。
【０１２６】
そして、活用処理部１０２ａは、修正された訳語が活用していると判定された場合には、活用テーブル１０３ａを参照して修正された訳語の原形を推定する。上記の例を用いて説明すると、活用処理部１０２ａは、修正された訳語「Ｐｅｎｎｓ」から活用形文字列「ｓ」を除いた「Ｐｅｎｎ」を原形と推定する。なお、原形推定処理については、上記した実施例以外の公知の技術を用いて原形を推定するようにしてもよい。
【０１２７】
その後、登録処理部１００ａは、活用処理部１０２ａによって推定された原形が辞書テーブル１１０に登録された訳語と同一であるか判定する。この結果、登録処理部１００ａは、同一である場合には、辞書テーブルを更新しない。
【０１２８】
図２４を用いて具体的な例を挙げて説明すると、活用処理部１０２ａは、ユーザが「ｐｅｎｎ」を「ｐｅｎｎｓ」とする修正を行った場合に、活用テーブル１０３ａを参照して「ｐｅｎｎｓ」の原形が「ｐｅｎｎ」であると推定する。この場合に、その推定された原形と辞書の訳語が同じであるので、辞書テーブル１１０の内容を更新しない。
【０１２９】
一方、活用処理部１０２ａによって推定された原形が辞書テーブル１１０に登録された訳語と異なる場合には、翻訳結果記憶部４２から取得した原文の単語および訳文の単語と、現在の日時情報である登録日付とを互いに関連付けて辞書テーブル１１０に登録する。
【０１３０】
次に、図２５〜図２７を用いて実施例２に係る登録処理部１００ａの処理について説明する。図２５は、登録処理部１００ａの処理動作を説明するフローチャートであり、同図を用いて登録処理を説明する。実施例３の登録処理部１００ａの処理は、図５に示した実施例１に係る登録処理部１００の処理と比較して、変換された原形を辞書テーブルに登録する点が相違する。
【０１３１】
すなわち、図２５に示すように、登録処理部１００ａは、修正が行われた訳文の単語を、翻訳結果記憶部４２から取得するとともに、当該単語に付加された単語対応情報に基づいて、原文の単語および品詞情報も同様に取得する（ステップＳ５１０）。そして、登録処理部１００ａは、原文の単語および品詞を検索キーとして辞書テーブル１１０を検索する（ステップＳ５２０）。
【０１３２】
検索の結果、辞書テーブル１１０内に原文の単語および品詞の登録がない場合には（ステップＳ５３０否定）、登録処理部１００ａは、翻訳結果記憶部４２から取得した原文の単語や訳文の単語と品詞を関連付けて辞書テーブル１１０に登録する（ステップＳ５４０）。
【０１３３】
一方、検索の結果、既に登録済みである場合には（ステップＳ５３０肯定）、登録処理部１００ａは、辞書テーブル１１０内の原文の単語に関連付けられた訳文の単語を取得する（ステップＳ５５０）。そして、登録処理部１００ａは、辞書テーブル１１０から取得した訳語と、翻訳結果記憶部４２から取得した訳文の原形とが同一であるか否かを判定する判定処理（後に、図２７を用いて詳述）を行う（ステップＳ５６０）。
【０１３４】
判定の結果、両者が異なる場合には（ステップＳ５６０否定）、登録処理部１００ａは、辞書テーブル１１０内の訳文の単語を翻訳結果記憶部４２から取得した訳文の単語に上書きして（ステップＳ５７０）処理を終了する。一方、登録処理部１００ａは、両者が同一である場合には（ステップＳ５６０肯定）、処理を終了する。
【０１３５】
続いて、再修正された訳文の単語を追加記録する追加記録処理について図２６を用いて説明する。図２６は、その場合の登録処理部１００ａの処理動作を説明するフローチャートであり、同図を用いて追加記録処理を説明する。
【０１３６】
同図に示すように、翻訳装置１０ａの登録処理部１００ａは、修正が行われた訳文の単語を、翻訳結果記憶部４２から取得するとともに、当該単語に付加された単語対応情報に基づいて、原文の単語およびその品詞も同様に取得する（ステップＳ６１０）。
【０１３７】
そして、原文の単語と品詞を検索キーとして辞書テーブル１１０を検索し（ステップＳ６２０）、検索結果として取得した訳文の単語のうち最新の登録日付と関連付けられた単語を選択して取得する（ステップＳ６３０）。
【０１３８】
続いて、登録処理部１００ａは、辞書テーブル１１０から取得した訳語と、翻訳結果記憶部４２から取得した訳文の原形とが同一であるか否かを判定する判定処理（後に、図２７を用いて詳述）を行う（ステップＳ６４０）。
【０１３９】
その後、登録処理部１００ａは、判定の結果、両者が異なる場合には（ステップＳ６４０否定）、翻訳結果記憶部４２から取得した原文の単語および訳文の単語と、現在の日時情報である登録日付とを互いに関連付けて辞書テーブル１１０に登録し（ステップＳ６５０）、処理を終了する。一方、両者が同一である場合には（ステップＳ６４０肯定）、処理を終了する。
【０１４０】
続いて、登録処理部１００ａの判定処理（前述したＳ５６０およびＳ６４０の判定処理）の詳しい処理手順について図２７を用いて説明する。同図に示すように、翻訳装置１０ａの登録処理部１００ａは、修正が行われた訳語を翻訳結果記憶部４２から取得して（Ａ）とし、辞書テーブル１１０から訳語を取得して（Ｂ）とする（ステップＳ７１０）。
【０１４１】
そして、登録処理部１００ａは、活用テーブル１０３ａを参照して、修正された訳語が活用しているか判定する（ステップＳ７２０）。その結果、登録処理部１００ａは、修正された訳語が活用していると判定された場合には（ステップＳ７２０肯定）、活用処理部１０２ａにおいて、活用テーブル１０３ａを参照して修正された訳語の原形を推定し、推定された訳語の原形を（Ｃ）とする（ステップＳ７３０）。
【０１４２】
その後、登録処理部１００ａは、推定された原形（Ｃ）と辞書テーブル１１０に登録された訳語（Ｂ）とが同一であるか判定する（ステップＳ７５０）。この結果、登録処理部１００ａは、同一である場合には（ステップＳ７５０肯定）、前述したＳ５６０およびＳ６４０の判定結果として「Ｙｅｓ」を返し（ステップＳ７６０）、同一でない場合には（ステップＳ７５０否定）、前述したＳ５６０およびＳ６４０の判定結果として「Ｎｏ」を返す（ステップＳ７７０）。
【０１４３】
一方、登録処理部１００ａは、Ｓ７２０において、修正された訳語が活用していないと判定された場合には（ステップＳ７２０否定）、原形を推定せずに、修正された訳語（Ａ）を（Ｃ）とする（ステップＳ７４０）。そして、登録処理部１００ａは、修正された訳語（Ｃ）と辞書テーブル１１０に登録された訳語（Ｂ）とが同一であるか判定する（ステップＳ７５０）。
【０１４４】
この結果、登録処理部１００ａは、同一である場合には（ステップＳ７５０肯定）、前述したＳ５６０およびＳ６４０の判定結果として「Ｙｅｓ」を返し（ステップＳ７６０）、また、同一でない場合には（ステップＳ７５０否定）、前述したＳ５６０およびＳ６４０の判定結果として「Ｎｏ」を返す（ステップＳ７７０）。
【０１４５】
このように、修正が検知された場合に、修正後の単語の活用形を原形に変換し、原形に変換された修正後の単語と、当該単語に対応する原文内の単語とを関連付けて辞書テーブル１１０に登録する。このため、利用者が翻訳結果の修正を行った場合に、修正された単語が活用形であれば原形に変換して辞書テーブル１１０に登録する結果、活用形の修正が単語登録されないように、原形のみを辞書テーブル１１０に登録することが可能である。
【実施例４】
【０１４６】
さて、これまで実施例１および２に係る翻訳装置について説明したが、本発明は上述した実施例１〜３以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下に示すように、（１）〜（３）にそれぞれ区分けして異なる実施例を説明する。
【０１４７】
（１）翻訳エンジン７０の配置
上記の実施例では、翻訳装置１０は、自装置が備えた翻訳エンジン７０を用いて原文となる言葉に対する翻訳処理を行うものであったが、本発明はこれに限定されるものではなく、図１４に示すように、ネットワーク３を介して接続された翻訳サーバ装置２００が備える翻訳エンジン７０を用いるようにしてもよい。
【０１４８】
具体的に説明すると、同図に示すように、翻訳装置１０は、データ送受信部１３０により、原文となる言葉を翻訳サーバ装置２００宛てに送信する。
【０１４９】
データ送受信部２１０を備えた翻訳サーバ装置２００からは、各情報が付加された原文および訳文の単語や記号が送信されるので、翻訳装置１０は、翻訳反映部９０により、当該単語に対して処理を行う。
【０１５０】
このように、翻訳サーバ装置２００が備える翻訳エンジン７０を用いる場合に、図１５に示すように、さらに、翻訳反映部９０と、辞書テーブル１１０とを翻訳サーバ装置２００側に配置するようにしてもよい。
【０１５１】
その場合には、翻訳装置１０は、翻訳サーバ装置２００が備える辞書テーブル１１０に、修正が行われた訳文の単語や、当該単語に対応する原文の単語を互いに関連付けて格納する。
【０１５２】
翻訳装置１０は、翻訳処理を要求する場合に、データ送受信部１３０により、原文となる言葉を翻訳サーバ装置２００宛てに送信する。
【０１５３】
翻訳サーバ装置２００からは、翻訳反映部９０による処理が実行された上で、上記した単語や記号が送信されるので、翻訳装置１０は、そのまま表示データ記憶部４０に格納する。
【０１５４】
また、このように、翻訳サーバ装置２００が備える翻訳エンジン７０を用いる場合に、図１６に示すように、翻訳装置１０は、実施例２で説明を行った辞書更新部１２０により、翻訳サーバ装置２００が備える辞書全体８０を更新するようにしてもよい。
【０１５５】
さらに、辞書更新部１２０が行う処理を、翻訳サーバ装置２００が備える翻訳エンジン７０に実行させるようにしてもよい。
【０１５６】
なお、更新時には、翻訳サーバ装置２００の翻訳プロセスを停止する必要があるため、時期を見計らって当該更新を行うことが望ましい。したがって、当該更新を行う手法と比較して、翻訳エンジン７０の翻訳結果を翻訳反映部９０が処理する手法は、システム上では翻訳サーバ装置２００を止める必要がなく効率的である。
【０１５７】
そこで、辞書更新部１２０による辞書全体８０の更新を行わずに、翻訳エンジン７０が、ネットワーク３を介して、翻訳装置１０が備える辞書テーブル１１０にアクセスし、当該辞書テーブル１１０も参照して翻訳処理を行うようにしてもよい。
【０１５８】
例えば、翻訳エンジン７０は、辞書テーブル１１０のファイルをメモリに読み込む。そして、翻訳エンジン７０は、解析処理で辞書を検索する際に、辞書テーブル１１０のエントリーも検索して解析処理を行う。
【０１５９】
（２）辞書テーブル１１０の配置
上記の実施例では、翻訳装置１０は、自装置に辞書テーブル１１０を備え、当該辞書テーブル１１０に対して登録処理部１００による登録を行い、当該辞書テーブル１１０を参照して翻訳反映部９０による処理を実行するものとしたが、本発明はこれに限定されるものではなく、図１７に示すように、ネットワーク３上に辞書テーブル１１０を配置するようにしてもよい。
【０１６０】
このようにすれば、各々の翻訳装置１０のユーザである翻訳者が辞書テーブル１１０を共有することができる。そして、例えば、辞書テーブル１１０には、単語や辞書識別情報に加え、更新日付、更新者を記録しておく。その結果、優秀な翻訳者の登録については編集不可能にすれば（当該翻訳者のみ編集可能）、複数の翻訳者間で訳語統一作業が効率化できる。
【０１６１】
具体的に説明すると、同図に示すように、翻訳装置１０は、修正が行われた訳文の単語や、当該単語に対応する原文の単語を互いに関連付けて、ネットワーク３上の辞書テーブル１１０に登録する。
【０１６２】
そして、翻訳装置１０は、データ送受信部１３０により、原文となる言葉を翻訳サーバ装置２００宛てに送信する。
【０１６３】
データ送受信部２１０を備えた翻訳サーバ装置２００からは、各情報が付加された原文および訳文の単語や記号が送信されるので、翻訳装置１０は、翻訳反映部９０により、当該単語に対する処理を行う。
【０１６４】
その際、翻訳装置１０は、ネットワーク３上の辞書テーブル１１０を参照して翻訳反映部９０による処理を行う。
【０１６５】
このように、ネットワーク３上に辞書テーブル１１０を配置する場合に、翻訳反映部９０を翻訳サーバ装置２００側に配置するようにしてもよい。翻訳サーバ装置２００からは、翻訳反映部９０による処理が実行（その際、翻訳サーバ装置２００は、ネットワーク３上の辞書テーブル１１０を参照して翻訳反映部９０による処理を行う）された上で、上記した単語や記号が送信されるので、翻訳装置１０は、そのまま表示データ記憶部４０に格納する。
【０１６６】
また、このように、ネットワーク３上に辞書テーブル１１０を配置する場合に、図１８に示すように、翻訳装置１０は、実施例２で説明を行った辞書更新部１２０により、翻訳サーバ装置２００が備える辞書全体８０を更新するようにしてもよい。
【０１６７】
具体的には、翻訳装置１０は、辞書更新部１２０により、ネットワーク３上の辞書テーブル１１０にアクセスし、当該辞書テーブル１１０内で更新フラグ「有り」とともに互いに関連付けられた情報を取得する。
【０１６８】
そして、翻訳装置１０は、次に、辞書更新部１２０により翻訳サーバ装置２００が備える辞書全体８０にアクセスし、取得した情報のうち辞書識別情報が示す辞書全体８０に対し、取得した情報を用いて更新処理を行う。
【０１６９】
さらに、辞書更新部１２０が行う処理を、翻訳サーバ装置２００が備える翻訳エンジン７０に実行させるようにしてもよい。
【０１７０】
なお、辞書更新部１２０による辞書全体８０の更新を行わずに、翻訳エンジン７０が、ネットワーク３を介して、ネットワーク３上の辞書テーブル１１０にアクセスするようにしてもよい。
【０１７１】
（３）入力部および表示部の場所
以上に挙げた図面上では、翻訳装置１０に入力部２０および表示部６０が直接接続されているように書かれているが、必ずしも直接接続していなくてもよく、例えばネットワークを介して接続されていてもよい。
【０１７２】
具体的には、翻訳装置１０がどこかネットワーク上で動作していて、別のコンピュータ上で動作しているウェブブラウザによって入力部および表示部を実現してもよい。この場合、入力部によって検知されたカーソルの移動やカーソル位置情報などがネットワークを通じて翻訳装置１０に送信されることとなる。
【０１７３】
最後に、本発明にかかる翻訳装置は、翻訳処理プログラムをコンピュータに実行させ、コンピュータのハードウェア資源をそれぞれの機能部として動作させることでも実施することができる。
【０１７４】
図１９は、翻訳処理プログラムを実行するコンピュータを示す図である。同図に示すように、コンピュータ３００は、入力装置３１０、表示装置３２０、ＣＰＵ（Central  Processing  Unit）３３０、ＲＯＭ（Read  Only  Memory）３４０、ＲＡＭ（Random  Access  Memory）３５０およびＨＤＤ（Hard  Disk  Drive）３６０をバス３７０で接続して構成される。
【０１７５】
ここで、入力装置３１０は、図１に示した入力部２０に対応し、表示装置３２０は同じく表示部６０に対応する。
【０１７６】
そして、ＲＯＭ３４０には、上記の翻訳エンジン７０、登録処理部１００および翻訳反映部９０それぞれと同様の機能を発揮する翻訳エンジンプログラム３４１、翻訳反映プログラム３４２および登録処理プログラム３４３が予め記憶されている。
【０１７７】
ＣＰＵ３３０は、翻訳エンジンプログラム３４１、翻訳反映プログラム３４２および登録処理プログラム３４３をＲＯＭ３４０から読み出して実行することで、その機能を実現することができる。
【０１７８】
例えば、図１９に示した例では、ＣＰＵ３３０は、ＲＯＭ３４０から翻訳エンジンプログラム３４１を読み出して翻訳エンジン７０を動作させており、ＣＰＵ３３０は翻訳エンジン７０と同様の動作を行うこととなる。
【０１７９】
また、ＨＤＤ３６０は、図１９に示すように、辞書全体データ３６１（ユーザ辞書のデータについては任意）および辞書テーブルデータ３６２を格納している。この基本辞書データ３６１Ａ１〜３６１Ａｎおよび辞書テーブルデータ３６２は、ＣＰＵ３３０によって読み出されてＲＡＭ３５０上に展開され、図１に示した辞書全体８０および辞書テーブル１１０として動作する。
【０１８０】
ところで、上記した翻訳エンジンプログラム３４１、翻訳反映プログラム３４２および登録処理プログラム３４３は、必ずしも最初からＲＯＭ３４０に記憶させておく必要は無く、例えば、コンピュータ３００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「過般用の物理媒体」、または、コンピュータ３００の内外に備えられるＨＤＤなどの「固定用の物理媒体」、さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ３００に接続される「他のコンピュータ（またはサーバ）」などに各プログラムを記憶させておき、コンピュータ３００がこれらから各プログラムを読み出して実行するようにしてもよい。
【０１８１】
以上の実施例１〜４を含む実施形態に関し、更に以下の付記を開示する。
【０１８２】
（付記１）第１の辞書を用いた自動翻訳をコンピュータに実行させる翻訳処理プログラムであって、訳文内の単語に対する修正を検知する修正検知手順と、修正後の単語と、当該単語に対応する原文内の単語とを関連付けて第２の辞書に登録する登録手順と、前記第１の辞書および前記第２の辞書に基づく確定訳文を作成する訳文確定手順と、をコンピュータに実行させることを特徴とする翻訳処理プログラム。
【０１８３】
（付記２）前記自動翻訳によって暫定訳文を作成する暫定訳文作成手順をさらにコンピュータに実行させ、前記訳文確定手順は、前記暫定訳文を取得し、前記第２の辞書に、前記暫定訳文の原文内の原語が登録されている場合には、当該原語に関連付けられた優先訳語を取得し、当該原語に対応する前記暫定訳文の訳語を前記優先訳語に置き換えて前記確定訳文を作成することを特徴とする付記１に記載の翻訳処理プログラム。
【０１８４】
（付記３）前記自動翻訳によって暫定訳文を作成する暫定訳文作成手順をさらにコンピュータに実行させ、前記訳文確定手順は、前記暫定訳文を取得し、前記第２の辞書に、前記暫定訳文の原文内の原語が登録されている場合には、当該原語に対して無翻訳指示情報を付加して前記暫定訳文作成手順に暫定訳文の再作成を要求し、当該再作成された暫定訳文内の単語のうち無翻訳の単語の活用処理を行って前記確定訳文を作成することを特徴とする付記１に記載の翻訳処理プログラム。
【０１８５】
（付記４）前記第２の辞書の内容に基づいて前記第１の辞書を更新する辞書更新手順をさらにコンピュータに実行させ、前記訳文確定手順は、前記辞書更新手順によって更新された前記第１の辞書に基づいて前記自動翻訳を行って前記確定訳文を作成することを特徴とする付記１に記載の翻訳処理プログラム。
【０１８６】
（付記５）前記訳文確定手順は、前記第１の辞書と、前記第２の辞書とを用いて前記自動翻訳を行って前記確定訳文を作成することを特徴とする付記１に記載の翻訳処理プログラム。
【０１８７】
（付記６）第１の辞書を用いた自動翻訳を翻訳サーバに要求する端末装置としてのコンピュータに実行させる翻訳処理プログラムであって、訳文内の単語に対する修正を検知する修正検知手順と、修正後の単語と、当該単語に対応する原文内の単語とを関連付けて第２の辞書に登録する登録手順と、前記第１の辞書および前記第２の辞書に基づく確定訳文を作成する訳文確定手順と、をコンピュータに実行させることを特徴とする翻訳処理プログラム。
【０１８８】
（付記７）前記訳文確定手順は、前記翻訳サーバから暫定訳文を取得し、前記第２の辞書に、前記暫定訳文の原文内の原語が登録されている場合には、当該原語に関連付けられた優先訳語を取得し、当該原語に対応する前記暫定訳文の訳語を前記優先訳語に置き換えて前記確定訳文を作成することを特徴とする付記６に記載の翻訳処理プログラム。
【０１８９】
（付記８）前記訳文確定手順は、前記翻訳サーバから暫定訳文を取得し、前記第２の辞書に、前記暫定訳文の原文内の原語が登録されている場合には、当該原語に対して無翻訳指示情報を付加して前記翻訳サーバに暫定訳文の再作成を要求し、当該再作成された暫定訳文内の単語のうち無翻訳の単語の活用処理を行って前記確定訳文を作成することを特徴とする付記６に記載の翻訳処理プログラム。
【０１９０】
（付記９）第１の辞書を用いた自動翻訳を行うサーバ装置と、当該サーバ装置に前記自動翻訳を要求する端末とを含んで構成される翻訳システムであって、前記端末は、前記サーバ装置が出力した訳文内の単語に対する修正を検知する修正検知手段と、修正後の単語と、当該単語に対応する原文内の単語とを関連付けて前記サーバ装置が備える第２の辞書に登録する登録手段とを、備え、前記サーバ装置は、前記第１の辞書および前記第２の辞書に基づく訳文を作成する訳文作成手段を備えたことを特徴とする翻訳システム。
【０１９１】
（付記１０）第１の辞書を用いた自動翻訳を行うサーバ装置と、当該サーバ装置に前記自動翻訳を要求する端末とを含んで構成される翻訳システムであって、前記端末は、前記サーバ装置が出力した訳文内の単語に対する修正を検知する修正検知手段と、修正後の単語と、当該単語に対応する原文内の単語とを関連付けてネットワーク上の第２の辞書に登録する登録手段とを、備え、前記サーバ装置は、前記第１の辞書および前記第２の辞書に基づく訳文を作成する訳文作成手段を備えたことを特徴とする翻訳システム。
【０１９２】
（付記１１）第１の辞書を用いた自動翻訳を行う翻訳装置であって、訳文内の単語に対する修正を検知する修正検知手段と、修正後の単語と、当該単語に対応する原文内の単語とを関連付けて第２の辞書に登録する登録手段と、前記第１の辞書および前記第２の辞書に基づく確定訳文を作成する訳文確定手段と、を備えたことを特徴とする翻訳装置。
【０１９３】
（付記１２）前記自動翻訳によって暫定訳文を作成する暫定訳文作成手段をさらに備え、前記訳文確定手段は、前記暫定訳文を取得し、前記第２の辞書に、前記暫定訳文の原文内の原語が登録されている場合には、当該原語に関連付けられた優先訳語を取得し、当該原語に対応する前記暫定訳文の訳語を前記優先訳語に置き換えて前記確定訳文を作成することを特徴とする付記１１に記載の翻訳装置。
【０１９４】
（付記１３）前記自動翻訳によって暫定訳文を作成する暫定訳文作成手段をさらに備え、前記訳文確定手段は、前記暫定訳文を取得し、前記第２の辞書に、前記暫定訳文の原文内の原語が登録されている場合には、当該原語に対して無翻訳指示情報を付加して前記暫定訳文作成手段に暫定訳文の再作成を要求し、当該再作成された暫定訳文内の単語のうち無翻訳の単語の活用処理を行って前記確定訳文を作成することを特徴とする付記１１に記載の翻訳装置。
【０１９５】
（付記１４）前記第２の辞書の内容に基づいて前記第１の辞書を更新する辞書更新手段をさらに備え、前記訳文確定手段は、前記辞書更新手段によって更新された前記第１の辞書に基づいて前記自動翻訳を行って前記確定訳文を作成することを特徴とする付記１１に記載の翻訳装置。
【０１９６】
（付記１５）前記訳文確定手段は、前記第１の辞書と、前記第２の辞書とを用いて前記自動翻訳を行って前記確定訳文を作成することを特徴とする付記１１に記載の翻訳装置。
【０１９７】
（付記１６）第１の辞書を用いた自動翻訳を翻訳サーバに要求する翻訳装置であって、訳文内の単語に対する修正を検知する修正検知手段と、修正後の単語と、当該単語に対応する原文内の単語とを関連付けて第２の辞書に登録する登録手段と、前記第１の辞書および前記第２の辞書に基づく確定訳文を作成する訳文確定手段と、を備えたことを特徴とする翻訳装置。
【０１９８】
（付記１７）前記訳文確定手段は、前記翻訳サーバから暫定訳文を取得し、前記第２の辞書に、前記暫定訳文の原文内の原語が登録されている場合には、当該原語に関連付けられた優先訳語を取得し、当該原語に対応する前記暫定訳文の訳語を前記優先訳語に置き換えて前記確定訳文を作成することを特徴とする付記１６に記載の翻訳装置。
【０１９９】
（付記１８）前記訳文確定手段は、前記翻訳サーバから暫定訳文を取得し、前記第２の辞書に、前記暫定訳文の原文内の原語が登録されている場合には、当該原語に対して無翻訳指示情報を付加して前記翻訳サーバに暫定訳文の再作成を要求し、当該再作成された暫定訳文内の単語のうち無翻訳の単語の活用処理を行って前記確定訳文を作成することを特徴とする付記１６に記載の翻訳装置。
【符号の説明】
【０２００】
１０  翻訳装置
２０  入力部
３０  受付処理部
４０  表示データ記憶部
５０  表示処理部
６０  表示部
７０  翻訳エンジン
８０  基本辞書
９０  翻訳反映部
１００  登録処理部
１１０  辞書テーブル
１２０  辞書更新部
１３０  データ送受信部
２００  翻訳サーバ装置
２１０  データ送受信部
【図１】
0005375224.tif 000002
【図２】
0005375224.tif 000003
【図３】
0005375224.tif 000004
【図４】
0005375224.tif 000005
【図５】
0005375224.tif 000006
【図６】
0005375224.tif 000007
【図７】
0005375224.tif 000008
【図８】
0005375224.tif 000009
【図９】
0005375224.tif 000010
【図１０】
0005375224.tif 000011
【図１１】
0005375224.tif 000012
【図１２】
0005375224.tif 000013
【図１３】
0005375224.tif 000014
【図１４】
0005375224.tif 000015
【図１５】
0005375224.tif 000016
【図１６】
0005375224.tif 000017
【図１７】
0005375224.tif 000018
【図１８】
0005375224.tif 000019
【図１９】
0005375224.tif 000020
【図２０】
0005375224.tif 000021
【図２１】
0005375224.tif 000022
【図２２】
0005375224.tif 000023
【図２３】
0005375224.tif 000024
【図２４】
0005375224.tif 000025
【図２５】
0005375224.tif 000026
【図２６】
0005375224.tif 000027
【図２７】
0005375224.tif 000028