(57)【要約】    【課題】ローマ字表記文字列のカナ表記文字列への変換に際し、読み仮名付与用にはローマ字表記上省略されているカナ文字を追加し、読み上げ用にはローマ字表記上省略されている長音を追加し、また、カナ文字を必要に応じて長音に置換すること。    【解決手段】ローマ字で表記された任意のローマ字表記文字列を、ローマ字カナ変換表１を用いて、モーラ単位のローマ字とこれに対応するカナ文字を含む情報の集合からなるローマ字カナ対応文字列に変換し、長母音判定部５へ渡す対応表変換部２と、正規化表３及び長母音判定モデル４を用いて、対応表変換部２から渡されたローマ字カナ対応文字列を構成するモーラ単位の各情報についてそのままとするかまたは長母音を追加するかを判定し、該判定結果に応じてカナ文字置換・追加を行い、カナ文字で表記されたカナ表記文字列を出力する長母音判定部５とを備えた。【選択図】図１
2005235100.tif 000002
【特許請求の範囲】
【請求項１】
ローマ字で表記されたローマ字表記文字列を、カナ文字で表記されたカナ表記文字列に変換するローマ字カナ変換装置において、
モーラ単位のカナ文字とこれに対応するローマ字との関係を全てのモーラ単位のカナ文字について記述したローマ字カナ対応表を用いて、ローマ字表記文字列を、モーラ単位のローマ字とこれに対応するカナ文字を含む情報の集合からなるローマ字カナ対応文字列に変換する対応表変換手段と、
前記ローマ字カナ対応文字列を構成するモーラ単位の各情報についてカナ五十音表における各行及び各段の位置をローマ字で表した行情報及び段情報を付与する行・段情報付与手段と、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報についてその行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報に基づき、そのままとするまたは長母音を追加するのいずれかの判定結果、あるいはそのままとするまたは長音を追加するまたは長音に置換するのいずれかの判定結果を得るモデル判定手段と、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報について前記判定結果に応じたカナ文字置換・追加を行い、カナ表記文字列を出力するカナ文字置換・追加手段とからなる長母音判定手段とを備えた
ことを特徴とするローマ字カナ変換装置。
【請求項２】
請求項１記載のローマ字カナ変換装置において、
行・段情報付与手段は、ローマ字カナ対応文字列が同一のカナ文字に対応するローマ字を２種類以上含む場合、これを１種類に統一する正規化表を用いて正規化された行情報及び段情報を付与する
ことを特徴とするローマ字カナ変換装置。
【請求項３】
請求項１または２記載のローマ字カナ変換装置において、
モーラ単位の一の情報の行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報とを入力することにより、当該一の情報が「通常」または「長母音追加」のいずれであるかの判定結果を出力する長母音判定モデルを用いて、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報について「通常」または「長母音追加」のいずれであるかの判定結果を得るモデル判定手段と、
前記ローマ字カナ対応文字列を構成するモーラ単位の情報のうち、「通常」と判定されたモーラ単位の情報のカナ文字についてはそのままとし、「長母音追加」と判定されたモーラ単位の情報のカナ文字についてはそのローマ字の末尾文字が‘ａ’であれば‘ア’、‘ｉ’であれば‘イ’、‘ｕ’であれば‘ウ’、‘ｅ’であれば‘エ’、‘ｏ’であれば‘ウ’を末尾に追加し、最終的なカナ表記文字列を出力するカナ文字置換・追加手段とを具備する
ことを特徴とするローマ字カナ変換装置。
【請求項４】
請求項１または２記載のローマ字カナ変換装置において、
モーラ単位の一の情報の行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報とを入力することにより、当該一の情報が「通常」または「長音追加」または「長音置換」のいずれであるかの判定結果を出力する長母音判定モデルを用いて、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報について「通常」または「長音追加」または「長音置換」のいずれかであるかの判定結果を得るモデル判定手段と、
前記ローマ字カナ対応文字列を構成するモーラ単位の情報のうち、「通常」と判定されたモーラ単位の情報のカナ文字についてはそのままとし、「長音追加」と判定されたモーラ単位の情報のカナ文字についてはその末尾に長音「ー」を追加し、「長音置換」と判定されたモーラ単位の情報のカナ文字についてはその末尾を長音「ー」に置換し、最終的なカナ表記文字列を出力するカナ文字置換・追加手段とを具備する
ことを特徴とするローマ字カナ変換装置。
【請求項５】
ローマ字で表記されたローマ字表記文字列を、カナ文字で表記されたカナ表記文字列に変換するローマ字カナ変換方法において、
コンピュータが、
モーラ単位のカナ文字とこれに対応するローマ字との関係を全てのモーラ単位のカナ文字について記述したローマ字カナ対応表を用いて、ローマ字表記文字列を、モーラ単位のローマ字とこれに対応するカナ文字を含む情報の集合からなるローマ字カナ対応文字列に変換する対応表変換ステップと、
前記ローマ字カナ対応文字列を構成するモーラ単位の各情報についてカナ五十音表における各行及び各段の位置をローマ字で表した行情報及び段情報を付与する行・段情報付与ステップと、
前記ローマ字カナ対応文字列を構成するモーラ単位の各情報についてその行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報に基づき、そのままとするまたは長母音を追加するのいずれかの判定結果、あるいはそのままとするまたは長音を追加するまたは長音に置換するのいずれかの判定結果を得るモデル判定ステップと、
前記ローマ字カナ対応文字列を構成するモーラ単位の各情報について前記判定結果に応じたカナ文字置換・追加を行い、カナ表記文字列を出力するカナ文字置換・追加ステップとを実行する
ことを特徴とするローマ字カナ変換方法。
【請求項６】
請求項５記載のローマ字カナ変換方法において、
行・段情報付与ステップは、ローマ字カナ対応文字列が同一のカナ文字に対応するローマ字を２種類以上含む場合、これを１種類に統一する正規化表を用いて正規化された行情報及び段情報を付与する
ことを特徴とするローマ字カナ変換方法。
【請求項７】
請求項５または６記載のローマ字カナ変換方法において、
モーラ単位の一の情報の行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報とを入力することにより、当該一の情報が「通常」または「長母音追加」のいずれであるかの判定結果を出力する長母音判定モデルを用いて、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報について「通常」または「長母音追加」のいずれであるかの判定結果を得るモデル判定ステップと、
前記ローマ字カナ対応文字列を構成するモーラ単位の情報のうち、「通常」と判定されたモーラ単位の情報のカナ文字についてはそのままとし、「長母音追加」と判定されたモーラ単位の情報のカナ文字についてはそのローマ字の末尾文字が‘ａ’であれば‘ア’、‘ｉ’であれば‘イ’、‘ｕ’であれば‘ウ’、‘ｅ’であれば‘エ’、‘ｏ’であれば‘ウ’を末尾に追加し、最終的なカナ表記文字列を出力するカナ文字置換・追加ステップとを実行する
ことを特徴とするローマ字カナ変換方法。
【請求項８】
請求項５または６記載のローマ字カナ変換方法において、
モーラ単位の一の情報の行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報とを入力することにより、当該一の情報が「通常」または「長音追加」または「長音置換」のいずれであるかの判定結果を出力する長母音判定モデルを用いて、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報について「通常」または「長音追加」または「長音置換」のいずれかであるかの判定結果を得るモデル判定ステップと、
前記ローマ字カナ対応文字列を構成するモーラ単位の情報のうち、「通常」と判定されたモーラ単位の情報のカナ文字についてはそのままとし、「長音追加」と判定されたモーラ単位の情報のカナ文字についてはその末尾に長音「ー」を追加し、「長音置換」と判定されたモーラ単位の情報のカナ文字についてはその末尾を長音「ー」に置換し、最終的なカナ表記文字列を出力するカナ文字置換・追加ステップとを実行する
ことを特徴とするローマ字カナ変換方法。
【請求項９】
ローマ字で表記されたローマ字表記文字列を、カナ文字で表記されたカナ表記文字列に変換するローマ字カナ変換プログラムであって、
コンピュータに、
モーラ単位のカナ文字とこれに対応するローマ字との関係を全てのモーラ単位のカナ文字について記述したローマ字カナ対応表を用いて、ローマ字表記文字列を、モーラ単位のローマ字とこれに対応するカナ文字を含む情報の集合からなるローマ字カナ対応文字列に変換する対応表変換ステップと、
前記ローマ字カナ対応文字列を構成するモーラ単位の各情報についてカナ五十音表における各行及び各段の位置をローマ字で表した行情報及び段情報を付与する行・段情報付与ステップと、
前記ローマ字カナ対応文字列を構成するモーラ単位の各情報についてその行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報に基づき、そのままとするまたは長母音を追加するのいずれかの判定結果、あるいはそのままとするまたは長音を追加するまたは長音に置換するのいずれかの判定結果を得るモデル判定ステップと、
前記ローマ字カナ対応文字列を構成するモーラ単位の各情報について前記判定結果に応じたカナ文字置換・追加を行い、カナ表記文字列を出力するカナ文字置換・追加ステップとを実行させる
ことを特徴とするローマ字カナ変換プログラム。
【請求項１０】
請求項９記載のローマ字カナ変換プログラムにおいて、
行・段情報付与ステップは、ローマ字カナ対応文字列が同一のカナ文字に対応するローマ字を２種類以上含む場合、これを１種類に統一する正規化表を用いて正規化された行情報及び段情報を付与する
ことを特徴とするローマ字カナ変換プログラム。
【請求項１１】
請求項９または１０記載のローマ字カナ変換プログラムにおいて、
モーラ単位の一の情報の行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報とを入力することにより、当該一の情報が「通常」または「長母音追加」のいずれであるかの判定結果を出力する長母音判定モデルを用いて、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報について「通常」または「長母音追加」のいずれであるかの判定結果を得るモデル判定ステップと、
前記ローマ字カナ対応文字列を構成するモーラ単位の情報のうち、「通常」と判定されたモーラ単位の情報のカナ文字についてはそのままとし、「長母音追加」と判定されたモーラ単位の情報のカナ文字についてはそのローマ字の末尾文字が‘ａ’であれば‘ア’、‘ｉ’であれば‘イ’、‘ｕ’であれば‘ウ’、‘ｅ’であれば‘エ’、‘ｏ’であれば‘ウ’を末尾に追加し、最終的なカナ表記文字列を出力するカナ文字置換・追加ステップとを含む
ことを特徴とするローマ字カナ変換プログラム。
【請求項１２】
請求項９または１０記載のローマ字カナ変換プログラムにおいて、
モーラ単位の一の情報の行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報とを入力することにより、当該一の情報が「通常」または「長音追加」または「長音置換」のいずれであるかの判定結果を出力する長母音判定モデルを用いて、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報について「通常」または「長音追加」または「長音置換」のいずれかであるかの判定結果を得るモデル判定ステップと、
前記ローマ字カナ対応文字列を構成するモーラ単位の情報のうち、「通常」と判定されたモーラ単位の情報のカナ文字についてはそのままとし、「長音追加」と判定されたモーラ単位の情報のカナ文字についてはその末尾に長音「ー」を追加し、「長音置換」と判定されたモーラ単位の情報のカナ文字についてはその末尾を長音「ー」に置換し、最終的なカナ表記文字列を出力するカナ文字置換・追加ステップとを含む
ことを特徴とするローマ字カナ変換プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ローマ字で表記されたローマ字表記文字列を、カナ文字で表記されたカナ表記文字列に変換するローマ字カナ変換技術に関するものである。
【背景技術】
【０００２】
ローマ字カナ変換は、モーラ（拍）単位のカナ文字とこれに対応するローマ字との関係を全てのモーラ単位のカナ文字について記述したローマ字カナ対応表（例：ｔａ→タ）と、促音（ッ）、撥音（ン）に対する例外処理とを用いることにより容易に実現でき、フリーソフトウェアとしても一般に流通している（例えば非特許文献１，２参照）。
【０００３】
例外処理の実現法の一例としては、促音に対しては同じ子音が連続する場合に促音に変換し、撥音に対しては‘ｎ’の後が子音の場合は‘ン’に変換するのが一般的である。
【非特許文献１】”ローマ字変換ソフト”、Ｖｅｃｔｏｒ  Ｉｎｃ．、［平成１６年２月１０日検索］、インターネット＜http://www.vector.co.jp/soft/win95/util/se215618.html＞
【非特許文献２】”ローマ字＜−＞ひらがな変換  ＲｔｏＫ  ｂｙ福太郎”、Ｖｅｃｔｏｒ  Ｉｎｃ．、［平成１６年２月１０日検索］、インターネット＜http://www.vector.co.jp/soft/win95/util/se287403.html＞
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、ローマ字カナ対応表のみを利用する方法では、読み仮名を付与しようとした場合、ローマ字表記上省略されている長母音には対応できず、例えば「ＴＯＫＹＯ」は「トキョ」（正しくは「トウキョウ」と「ウ」を追加すべき）という誤った変換となる。
【０００５】
また、テキスト音声合成による読み上げに用いようとした場合、いわゆる辞書における読み表記とは異なり、追加すべきカナ文字を長音に置き換える必要がある場合がある。例えば上記の「ＴＯＫＹＯ」は、読み上げのためには「トーキョー」（「ウ」ではなく「ー」）と長音を追加する必要があるが、これにも対応できない。
【０００６】
さらに、ローマ字表記において長母音が省略されていない場合でも、ローマ字カナ対応表に対応するカナ文字ではなく、長音に置き換える必要がある（例：「Ｔｏｕｈｏｋｕ」→「トーホク」（「ウ」ではなく「ー」）。これはローマ字表記の長母音に相当する並び（例えば「ｏ」の後の「ｕ」）を長音化するという単純な規則で実現できるが、漢字表記上の文字境界に相当するところでは長音化しない（例：「ｓｈｉｍｏｕｃｈｉ」（下内）→「シモウチ」（「ー」ではなく「ウ」））という例外に対応できない。
【０００７】
本発明は、上記の点に鑑みなされたもので、ローマ字表記文字列のカナ表記文字列への変換において、読み仮名付与用にはローマ字表記上省略されているカナ文字を追加でき、読み上げ用にはローマ字表記上省略されている長音を追加でき、また、ローマ字表記上省略されていないが、ローマ字カナ対応表から得られるカナ文字を必要に応じて長音に置換できるローマ字カナ変換装置、その方法及びそのプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明では、前記目的を達成するため、ローマ字で表記されたローマ字表記文字列を、カナ文字で表記されたカナ表記文字列に変換するローマ字カナ変換装置において、モーラ単位のカナ文字とこれに対応するローマ字との関係を全てのモーラ単位のカナ文字について記述したローマ字カナ対応表を用いて、ローマ字表記文字列を、モーラ単位のローマ字とこれに対応するカナ文字を含む情報の集合からなるローマ字カナ対応文字列に変換する対応表変換手段と、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報についてカナ五十音表における各行及び各段の位置をローマ字で表した行情報及び段情報を付与する行・段情報付与手段と、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報についてその行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報に基づき、そのままとするまたは長母音を追加するのいずれかの判定結果、あるいはそのままとするまたは長音を追加するまたは長音に置換するのいずれかの判定結果を得るモデル判定手段と、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報について前記判定結果に応じたカナ文字置換・追加を行い、カナ表記文字列を出力するカナ文字置換・追加手段とからなる長母音判定手段とを備えたことを特徴とするローマ字カナ変換装置を提案する。
【０００９】
また、本発明では、ローマ字で表記されたローマ字表記文字列を、カナ文字で表記されたカナ表記文字列に変換するローマ字カナ変換方法において、コンピュータが、モーラ単位のカナ文字とこれに対応するローマ字との関係を全てのモーラ単位のカナ文字について記述したローマ字カナ対応表を用いて、ローマ字表記文字列を、モーラ単位のローマ字とこれに対応するカナ文字を含む情報の集合からなるローマ字カナ対応文字列に変換する対応表変換ステップと、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報についてカナ五十音表における各行及び各段の位置をローマ字で表した行情報及び段情報を付与する行・段情報付与ステップと、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報についてその行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報に基づき、そのままとするまたは長母音を追加するのいずれかの判定結果、あるいはそのままとするまたは長音を追加するまたは長音に置換するのいずれかの判定結果を得るモデル判定ステップと、記ローマ字カナ対応文字列を構成するモーラ単位の各情報について前記判定結果に応じたカナ文字置換・追加を行い、カナ表記文字列を出力するカナ文字置換・追加ステップとを実行することを特徴とするローマ字カナ変換方法を提案する。
【００１０】
また、本発明では、ローマ字で表記されたローマ字表記文字列を、カナ文字で表記されたカナ表記文字列に変換するローマ字カナ変換プログラムであって、コンピュータに、モーラ単位のカナ文字とこれに対応するローマ字との関係を全てのモーラ単位のカナ文字について記述したローマ字カナ対応表を用いて、ローマ字表記文字列を、モーラ単位のローマ字とこれに対応するカナ文字を含む情報の集合からなるローマ字カナ対応文字列に変換する対応表変換ステップと、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報についてカナ五十音表における各行及び各段の位置をローマ字で表した行情報及び段情報を付与する行・段情報付与ステップと、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報についてその行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報に基づき、そのままとするまたは長母音を追加するのいずれかの判定結果、あるいはそのままとするまたは長音を追加するまたは長音に置換するのいずれかの判定結果を得るモデル判定ステップと、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報について前記判定結果に応じたカナ文字置換・追加を行い、カナ表記文字列を出力するカナ文字置換・追加ステップとを実行させることを特徴とするローマ字カナ変換プログラムを提案する。
【００１１】
なお、前記以外のローマ字カナ変換装置、その方法及びプログラム、並びにそれらの詳細については発明の実施の形態において説明する。
【発明の効果】
【００１２】
このように、本発明によれば、ローマ字表記文字列に対して、読み仮名付与用としては、ローマ字表記上省略されている長母音位置を推定して不足している母音を追加し、読み上げ用としては、ローマ字表記上省略されている長母音位置を推定して不足している長音を追加し、また、ローマ字表記上省略されていないが、長音化すべき母音を長音に置換することにより、カナ表記文字列への適切な変換が可能となる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明を図示の実施の形態により詳細に説明する。
【００１４】
［第１の実施の形態］
図１は本発明のローマ字カナ変換装置の第１の実施の形態、ここでは読み仮名付与用に対応した装置の実施の形態を示すもので、図中、１はローマ字カナ変換表、２は対応表変換部、３は正規化表、４は長母音判定モデル、５は長母音判定部である。
【００１５】
ローマ字カナ変換表１は、モーラ単位のカナ文字（基本的にはカナ１文字が１モーラに相当。但し、拗音は２文字で１モーラとなる（例：「キャ」、「ウィ」＝１モーラ））とこれに対応するローマ字との関係を全てのモーラ単位のカナ文字について記述した周知のもので、ここでは同一のカナ文字に対応するローマ字を２種類以上含む場合（例：‘シ’＝‘ｓｉ’、‘ｓｈｉ’）があるものを用いた。図２にローマ字カナ変換表１の一例を示す。
【００１６】
対応表変換部２は、ローマ字で表記された任意のローマ字表記文字列を、ローマ字カナ変換表１を用いて、モーラ単位のローマ字とこれに対応するカナ文字を含む情報の集合からなるローマ字カナ対応文字列に変換し、長母音判定部５へ渡す。なお、ローマ字表記文字列はキーボード等から直接入力されたものでも、また、予めローマ字表記文字列を格納したハードディスクやメモリ等から読み出されたものでも良い。また、ローマ字カナ対応文字列では、ローマ字表記は全て小文字表記とする。
【００１７】
正規化表３は、前述した同一のカナ文字に対応する２種類以上のローマ字を１種類に統一する（正規化する）ためのもので、２種類以上のローマ字のうちの１つを置換後のローマ字とし、残りのローマ字を置換前のローマ字として、同一のカナ文字に対応する２種類以上のローマ字を含む全てのローマ字について記述している（正規表現も記述可能とする）。
【００１８】
図３は正規化表３の一例（ここではＰｅｒｌの正規表現に従う例）を示すもので、例えば‘ジ’を表す‘ｊｉ’は‘ｚｉ’に置換してザ行として扱い、また、‘ジャ’、‘ジュ’、‘ジョ’を表す‘ｊａ’、‘ｊｕ’、‘ｊｏ’は‘ｚｙａ’、‘ｚｙｕ’、‘ｚｙｏ’に置換（但し、図３ではｊ（［ａｕｏ］）→ｚｙ（［ａｕｏ］）という一括した記述様式で表している。）してジャ行として扱うものとしている。
【００１９】
長母音判定モデル４は、モーラ単位の一の情報の行情報及び段情報（後述する）とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報とを入力することにより、当該一の情報がそのままとすべき通常の情報（「通常」）または長母音を追加すべき情報（「長母音追加」）のいずれであるかの判定結果を出力する識別関数である。
【００２０】
識別関数としては、例えば、Ｖ．Ｖａｐｎｉｋ，”Ｔｈｅ  ｎａｔｕｒｅ  ｏｆ  ｓｔａｔｉｓｔｉｃａｌ  ｌｅａｒｎｉｎｇ  ｔｈｅｏｒｙ”，Ｓｐｒｉｎｇｅｒ，１９９５に述べられているＳｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ（ＳＶＭ）の識別関数を用い、識別関数のパラメータは、予め、行情報・段情報・出力値（「通常」か「長母音追加」）からなる学習データをＳＶＭで学習して決定しておく。ここでは学習アルゴリズムとしてＳＶＭを挙げたが、決定木、最大エントロピー法等の他の学習アルゴリズムを利用しても良い。
【００２１】
長母音判定部５は、正規化表３及び長母音判定モデル４を用いて、対応表変換部２から渡されたローマ字カナ対応文字列を構成するモーラ単位の各情報についてそのままとするかまたは長母音を追加するかを判定し、該判定結果に応じてカナ文字置換・追加を行い、カナ文字で表記されたカナ表記文字列を出力するもので、以下、詳細に説明する。
【００２２】
図４は長母音判定部５の詳細を示すもので、図中、５１は行・段情報付与部、５２はモデル判定部、５３はカナ文字置換・追加部である。
【００２３】
行・段情報付与部５１は、ローマ字カナ対応文字列を入力とし、該ローマ字カナ対応文字列を構成するモーラ単位の各情報についてカナ五十音表における各行及び各段の位置をローマ字で表した行情報及び段情報を付与し、これをローマ字カナ対応文字列とともにモデル判定部５２に出力するもので、ここでは前述した正規化表３を用いて正規化された行情報及び段情報を付与するようにしている。
【００２４】
図５は行・段情報付与部５１の処理の流れを示すもので、その動作を具体的に説明する。
【００２５】
ステップＳ１では、モーラ単位の情報のローマ字が‘ａ’，‘ｉ’，‘ｕ’，‘ｅ’，‘ｏ’のいずれかに一致するかを判定する。条件を満たす場合にはＳ６、満たさない場合にはＳ２へ移る。
【００２６】
ステップＳ２では、モーラ単位の情報のカナ文字が促音‘ッ’であるかを判定する。条件を満たす場合にはＳ７、満たさない場合にはＳ３へ移る。
【００２７】
ステップＳ３では、モーラ単位の情報のカナ文字が撥音‘ン’であるかを判定する。条件を満たす場合にはＳ８、満たさない場合にはＳ４へ移る。
【００２８】
ステップＳ４では、モーラ単位の情報のローマ字に対して正規化表４を適用して正規化し、ステップＳ５に移る。
【００２９】
ステップＳ５では、行（情報）＝モーラ単位の情報のローマ字の末尾文字以外、段（情報）＝モーラ単位の情報のローマ字の末尾文字と設定して処理を終了する。
【００３０】
ステップＳ６では、行（情報）＝’ａ’（ア行）、段（情報）＝モーラ単位の情報のローマ字と設定して処理を終了する。
【００３１】
ステップＳ７では、行（情報）＝‘Ｔ’、段（情報）＝‘Ｔ’と設定して処理を終了する。
【００３２】
ステップＳ８では、行（情報）＝‘Ｎ’、段（情報）＝‘Ｎ’と設定して処理を終了する。
【００３３】
モデル判定部５２は、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報について、モーラ単位の一の情報の行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報とを前記長母音判定モデル４に入力し、その判定結果、即ち「通常」または「長母音追加」のいずれであるかの判定結果を得て、これをローマ字カナ対応文字列とともにカナ文字置換・追加部５３へ出力する。
【００３４】
カナ文字置換・追加部５３は、ローマ字カナ対応文字列を構成するモーラ単位の情報のうち、モデル判定部５２において「通常」と判定されたモーラ単位の情報のカナ文字についてはそのままとし、「長母音追加」と判定されたモーラ単位の情報のカナ文字についてはそのローマ字の末尾文字が‘ａ’であれば‘ア’、‘ｉ’であれば‘イ’、‘ｕ’であれば‘ウ’、‘ｅ’であれば‘エ’、‘ｏ’であれば‘ウ’を末尾に追加し、最終的なカナ表記文字列を出力する。
【００３５】
［第２の実施の形態］
第１の実施の形態では読み仮名付与用に対応した装置について説明したが、第２の実施の形態では読み上げ用に対応した装置の実施の形態について説明する。基本的な構成・動作は第１の実施の形態の場合と同様であり、長母音判定モデル４と、モデル判定部５２及びカナ文字置換・追加部５３における処理とが異なる。
【００３６】
即ち、第２の実施の形態における長母音判定モデル４は、モーラ単位の一の情報の行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報とを入力することにより、当該一の情報がそのままとすべき通常の情報（「通常」）または長音を追加すべき情報（「長音追加」）または長音に置換すべき情報（「長音置換」）のいずれであるかの判定結果を出力する識別関数である。
【００３７】
識別関数としては、前述のＳＶＭの識別関数を用い、識別関数のパラメータは、予め、行情報・段情報・出力値（「通常」か「長音追加」か「長音置換」）からなる学習データをＳＶＭで学習して決定しておく。ＳＶＭは２値の識別アルゴリズムであるが、Ｐａｉｒｗｉｓｅ法やｏｎｅ−ｖｓ−ｒｅｓｔ法により多値分類に拡張できるので、ここではそれらの拡張アルゴリズムを用いる。また、ここでは学習アルゴリズムとしてＳＶＭを挙げたが、決定木、最大エントロピー法等の他の学習アルゴリズムを利用しても良い。
【００３８】
モデル判定部５２は、前記ローマ字カナ対応文字列を構成するモーラ単位の各情報について、モーラ単位の一の情報の行情報及び段情報とモーラ単位でその前後一定の範囲に含まれる情報の行情報及び段情報とを前記長母音判定モデル４に入力し、その判定結果、即ち「通常」または「長音追加」または「長音置換」のいずれであるかの判定結果を得て、これをローマ字カナ対応文字列とともにカナ文字置換・追加部５３へ出力する。
【００３９】
カナ文字置換・追加部５３は、ローマ字カナ対応文字列を構成するモーラ単位の情報のうち、モデル判定部５２において「通常」と判定されたモーラ単位の情報のカナ文字についてはそのままとし、「長音追加」と判定されたモーラ単位の情報のカナ文字についてはその末尾に長音「ー」を追加し、「長音置換」と判定されたモーラ単位の情報のカナ文字についてはその末尾を長音「ー」に置換し、最終的なカナ表記文字列を出力する。
【００４０】
なお、第１及び第２の実施の形態において、対応表変換部２に入力されるローマ字表記文字列が元々、同一のカナ文字に対応するローマ字として、正規化表３中の置換後の１種類のみを含むものである場合、前述した正規化表３は不要であり、行・段情報付与部５１における正規化処理（Ｓ４）も不要であることはいうまでもない。
［処理例１］
図６は第１の実施の形態によるローマ字カナ変換処理の一例を示すもので、ここでは長母音判定モデル４の学習器としてはＳＶＭを用い、長母音判定モデル４における判定に用いる情報としては、判定しようとするモーラ単位の一の情報の行情報及び段情報と、モーラ単位でその前後の２つの情報の行情報及び段情報と、モーラ単位でその前の２つの情報の判定結果とした。なお、前後情報をどこまで使うかは一例であり、さらに多くの情報を使っても良い。
【００４１】
図６に示すようなローマ字表記文字列６１「Ｈｏｋｋａｉｄｏ」が対応表変換部２に入力されると、ローマ字カナ対応表１を用いて、「ｋｋ」の部分の子音連続の部分には促音が追加され、図６に示すようなローマ字カナ対応文字列６２が長母音判定部５の行・段情報付与部５１へ渡される。
【００４２】
行・段情報付与部５１では、図５のフローに従い、次のようにして行情報及び段情報が付与される。即ち、Ｎｏ．１，３，５のモーラの情報はステップＳ１→ステップＳ２→ステップＳ３→ステップＳ４→ステップＳ５とたどり、また、Ｎｏ．２のモーラの情報はステップＳ１→ステップＳ２→ステップＳ７とたどり、さらにまた、Ｎｏ．４のモーラの情報はステップＳ１→ステップＳ６とたどり、行情報及び段情報が付与され、図６に示すような行情報及び段情報６３が、ローマ字カナ対応文字列６２とともにモデル判定部５２へ渡される。なお、この例では正規化表３による置換が適用される情報は存在しない。
【００４３】
モデル判定部５２では、モーラ単位の各情報に対してそれぞれ、長母音判定モデル４を用いた判定が行われる。
【００４４】
例えば、Ｎｏ．１のモーラの情報を判定する場合は、
−２モーラ：行情報＝なし
−２モーラ：段情報＝なし
−１モーラ：行情報＝なし
−１モーラ：段情報＝なし
０モーラ：行情報＝ｈ
Ｏモーラ：段情報＝ｏ
１モーラ：行情報＝Ｔ
１モーラ：段情報＝Ｔ
２モーラ：行情報＝ｋ
２モーラ：段情報＝ａ
という情報が長母音判定モデル４に入力され、「通常」という判定結果が得られる。
【００４５】
同様にして、Ｎｏ．２〜５のモーラの情報も判定され、図６に示すようなモデル判定結果６４が得られ、ローマ字カナ対応文字列６２とともにカナ文字置換・追加部５３へ渡される。
【００４６】
カナ文字置換・追加部５３では、ローマ字カナ対応文字列６２のカナ文字のうち、モデル判定結果６４で「長母音追加」と判定されたＮｏ．５のモーラに対応するカナ文字「ド」の末尾に‘ｏ’に対応する‘ウ’を追加して「ドウ」とし、全てのモーラに対応するカナ文字をつなげて、最終的にカナ表記文字列６５「ホッカイドウ」を出力する。
［処理例２］
図７は第２の実施の形態によるローマ字カナ変換処理の一例を示すもので、ここでは処理例１と同様、長母音判定モデル４の学習器としてはＳＶＭを用い、長母音判定モデル４における判定に用いる情報としては、判定しようとするモーラ単位の一の情報の行情報及び段情報と、モーラ単位でその前後の２つの情報の行情報及び段情報と、モーラ単位でその前の２つの情報の判定結果とした。なお、前後情報をどこまで使うかは一例であり、さらに多くの情報を使っても良いことはいうまでない。
【００４７】
図７に示すようなローマ字表記文字列７１「ＨＥＩＳＥＩＣＨＯ」が対応表変換部２に入力されると、ローマ字カナ対応表１を用いて、図７に示すようなローマ字カナ対応文字列７２が長母音判定部５の行・段情報付与部５１へ渡される。
【００４８】
行・段情報付与部５１では、図５のフローに従い、次のようにして行情報及び段情報が付与される。即ち、Ｎｏ．１，３，５のモーラの情報はステップＳ１→ステップＳ２→ステップＳ３→ステップＳ４→ステップＳ５とたどり、また、Ｎｏ．２，４のモーラの情報はステップＳ１→ステップＳ６とたどり、行情報及び段情報が付与される。このうち、Ｎｏ．５のモーラの情報はステップＳ４において、正規化表３のＮｏ．８の表現とマッチするため、ローマ字「ｃｈｏ」が「ｔｙｏ」に置換される。このようにして付与された図７に示すような行情報及び段情報７３が、ローマ字カナ対応文字列７２とともにモデル判定部５２へ渡される。
【００４９】
モデル判定部５２では、モーラ単位の各情報に対してそれぞれ、長母音判定モデル４を用いた判定が行われる。
【００５０】
例えば、Ｎｏ．３のモーラの判定を行う場合には、
−２モーラ：行情報＝ｈ
−２モーラ：段情報＝ｅ
−１モーラ：行情報＝ａ
−１モーラ：段情報＝ｉ
０モーラ：行情報＝ｓ
０モーラ：段情報＝ｅ
１モーラ：行情報＝ａ
１モーラ：段情報＝ｉ
２モーラ：行情報＝ｔｙ
２モーラ：段情報＝ｏ
という情報が長母音判定モデル４に入力される。長母音判定モデル４ではＮｏ．１，２のモーラに対する判定結果（Ｎｏ．１＝通常、Ｎｏ．２＝長音置換）も判定情報に加えて「通常」という判定結果が得られる。
【００５１】
同様にして、Ｎｏ．１，２，４，５のモーラの情報も判定され、図７に示すようなモデル判定結果７４が得られ、ローマ字カナ対応文字列７２とともにカナ文字置換・追加部５３へ渡される。
【００５２】
カナ文字置換・追加部５３では、ローマ字カナ対応文字列７２のカナ文字のうち、モデル判定結果７４で「長音置換」と判定されたＮｏ．２，４のモーラに対応するカナ文字「イ」を「ー」に置換、「長音追加」と判定されたＮｏ．５のモーラに対応するカナ文字「チョ」の末尾に長音を追加して「チョー」とし、全てのモーラに対応するカナ文字をつなげて、最終的にカナ表記文字列７５「ヘーセーチョー」を出力する。
【図面の簡単な説明】
【００５３】
【図１】本発明のローマ字カナ変換装置の第１の実施の形態を示す機能ブロック図
【図２】ローマ字カナ変換表の一例を示す説明図
【図３】正規化表の一例を示す説明図
【図４】長母音判定部の詳細を示す機能ブロック図
【図５】行・段情報付与手段における処理の流れ図
【図６】第１の実施の形態によるローマ字カナ変換処理の一例を示す説明図
【図７】第２の実施の形態によるローマ字カナ変換処理の一例を示す説明図
【符号の説明】
【００５４】
１：ローマ字カナ変換表、２：対応表変換部、３：正規化表、４：長母音判定モデル、５：長母音判定部、５１：行・段情報付与部、５２：モデル判定部、５３：カナ文字置換・追加部。
【図１】
2005235100.tif 000003
【図２】
2005235100.tif 000004
【図３】
2005235100.tif 000005
【図４】
2005235100.tif 000006
【図５】
2005235100.tif 000007
【図６】
2005235100.tif 000008
【図７】
2005235100.tif 000009