(57)【要約】【課題】従来の演算処理装置においては、少ないメモリで、少ない計算負荷で、実数の逆数が計算できない、という課題があった。【解決手段】実数ｘの逆数演算を行う演算処理装置であって、浮動小数点演算回路を用いずに、乗算回路、除算回路、加算回路、減算回路を用いて、自然数の逆数演算を行い、かかる演算を組み合わせることにより実数の逆数を算出する演算処理装置により、少ないメモリで、少ない計算負荷で、実数の逆数が計算できる。【選択図】図１
2008139538.tif 000002
【特許請求の範囲】
【請求項１】
実数ｘの逆数演算を行う演算処理装置であって、
数値をスケーリングする最小の定数である最小値を格納している最小値格納部と、
演算する最高次数（ｎ（ｎは自然数））を格納している最高次数格納部と、
実数ｘを受け付ける受付部と、
実数ｘが負であるか否かを判断する第一判断部と、
前記第一判断部が、実数ｘが負であると判断した場合に、実数ｘを（−ｘ）とし、記憶媒体に格納する第一正負逆転部と、
前記最小値格納部の最小値を用いて、「Ｌ・ｘ＞＝最小値」となる自然数Ｌを取得する自然数取得部と、
実数ｘに対してＬを乗算し、ｘを「Ｌ・ｘ」とする第一乗算部と、
実数ｘを超えない最大の整数ｘ１を取得し、かつ、実数ｘを下回らない最小の整数ｘ２を取得する整数取得部と、
「ｐ１＝ｘ−ｘ１」「ｐ２＝ｘ２−ｘ」により、ｐ１、およびｐ２を算出する差演算部と、
「ｐ１＜＝ｐ２」であるか否かを判断する第二判断部と、
前記第二判断部が「ｐ１＜＝ｐ２」であると判断した場合、前記最高次数格納部の最高次数（ｎ）を用いた数式１を演算し、ｙを取得し、かつ
【数１】
2008139538.tif 000030
前記第二判断部が「ｐ１＜＝ｐ２」でないと判断した場合、前記最高次数（ｎ）を用いた数式２を演算し、ｙを取得する第一演算部と、
【数２】
2008139538.tif 000031
前記第一演算部が取得したｙに対してＬを乗算し、ｙを「Ｌ・ｙ」とし、記憶媒体に格納する第二乗算部と、
前記第一判断部が、実数ｘが負であると判断した場合に、前記第二乗算部が取得したｙの正負を逆転させた（−ｙ）を取得し、当該（−ｙ）をｙとし、記憶媒体に格納する第二正負逆転部と、
前記第二正負逆転部が取得したｙ、または前記第二乗算部が取得したｙを出力する出力部を具備する、浮動小数点演算を行わずに、実数の逆数演算を行う演算処理装置。
【請求項２】
音声を受け付ける音声受付部と、
前記音声受付部が受け付けた音声から音声離散時間信号を取得し、記憶媒体に格納する音声離散時間信号取得部と、
前記音声離散時間信号から短区間部分を切り出した第一短区間離散時間信号（Ｓｎ（ｎ＝０，１，２，...，Ｎ−１））を得て、記憶媒体に格納する短区間切出部と、
前記第一短区間離散時間信号（Ｓｎ）に対して高域強調処理を施し、第二短区間離散時間信号（Ｓｎ'）を得て、記憶媒体に格納する高域強調処理部と、
前記第二短区間離散時間信号（Ｓｎ'）に対して、予め決められた窓関数（Ｗｎ（ｎ＝０，１，２，...，Ｎ−１））を用いて、窓操作を行い、処理対象信号（ｘｎ）を得て、記憶媒体に格納する窓操作部と、
前記処理対象信号（ｘｎ）の各値を、数式３に代入し、自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を算出し、記憶媒体に格納する自己相関関数値算出部と、
【数３】
2008139538.tif 000032
実数である自己相関関数値（ｒ０）を前記記憶媒体から読み出し、請求項１記載の演算処理装置に前記自己相関関数値（ｒ０）を与え、自己相関関数値（ｒ０）の逆数（１／ｒ０）を取得し、記憶媒体に格納する第一逆数取得部と、
前記逆数（１／ｒ０）と、前記自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を読み出し、数式４に代入し、ｋ１，Ｊ１，α１（１）を得て、記憶媒体に格納するレビンソン・ダービン初期化処理部と、
【数４】
2008139538.tif 000033
前記ｋ１，Ｊ１，α１（１）を読み出し、ｍ＝２からＰまでの自然数を繰り返し代入し、数式５に従って線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を算出し、記憶媒体に格納するレビンソン・ダービン演算部と、
【数５】
2008139538.tif 000034
前記レビンソン・ダービン演算部が取得した線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を出力する線形予測係数出力部を具備する音声処理装置であって、
前記レビンソン・ダービン演算部は、
前記ｋｍを算出する場合に、実数Ｊｍ−１を前記請求項１記載の演算処理装置に与え、実数Ｊｍ−１の逆数（１／Ｊｍ−１）を取得し、記憶媒体に格納する第二逆数取得部を具備する音声処理装置。
【請求項３】
前記レビンソン・ダービン演算部が取得した予測残差（ＪＰ）を取得する予測残差取得部と、
前記予測残差（ＪＰ）の自然対数「ｌｏｇＪＰ」を算出し、特徴値（ｃ０）として記憶媒体に格納する第一特徴値算出部と、
前記線形予測係数出力部が出力した線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を取得する線形予測係数取得部と、
前記線形予測係数取得部が取得した線形予測係数（ａ１）の正負を逆転させ、特徴値（ｃ１）を得て、記憶媒体に格納する第二特徴値算出部と、
前記線形予測係数取得部が取得した線形予測係数（ａ１からａＰ）を用いて、数式６により、特徴値（ｃ２からＣＰ）を算出し、記憶媒体に格納する第三特徴値算出部と、
【数６】
2008139538.tif 000035
前記線形予測係数取得部が取得した線形予測係数（ａ１からａＰ）を用いて、数式７により、特徴値（ｃＰ＋１以降のｃｎ）を算出し、記憶媒体に格納する第四特徴値算出部と、
【数７】
2008139538.tif 000036
前記第一特徴値算出部、前記第二特徴値算出部、前記第三特徴値算出部、および前記第四特徴値算出部が得た特徴値（ｃｎ（ｎ＝０，１，２，・・・，w））を出力する特徴ベクトル出力部をさらに具備する請求項２記載の音声処理装置。
【請求項４】
前記請求項３記載の音声処理装置を具備する発音評定装置であって、
比較される対象の音声に関するデータであり、1以上の音韻毎のデータである教師データを１以上格納している教師データ格納部と、
前記請求項３記載の音声処理装置を用いて、音声を受け付け、当該音声をフレーム毎の音声データに区分し、当該区分されたフレーム毎の音声データである特徴値（ｃｎ（ｎ＝０，１，２，・・・，w））を得て、
前記教師データと前記特徴値を用いて、前記請求項３記載の音声処理装置が受け付けた音声の評定を行う評定部と、
前記評定部の評定結果を出力する出力部を具備する発音評定装置。
【請求項５】
コンピュータに、
実数ｘを受け付ける受付ステップと、
実数ｘが負であるか否かを判断し、判断結果を記憶媒体に格納する第一判断ステップと、
前記第一判断ステップで、実数ｘが負であると判断した場合に、実数ｘを（−ｘ）とし、記憶媒体に格納する第一正負逆転ステップと、
格納されている最小値Ａを用いて、「Ｌ・ｘ＞＝最小値Ａ」となる自然数Ｌを取得し、記憶媒体に格納する自然数取得ステップと、
実数ｘに対してＬを乗算し、ｘを「Ｌ・ｘ」とする第一乗算ステップと、
実数ｘを超えない最大の整数ｘ１を取得し、かつ、実数ｘを下回らない最小の整数ｘ２を取得し、記憶媒体に格納する整数取得ステップと、
記憶媒体のｘ，ｘ１，ｘ２を読み出し、式「ｐ１＝ｘ−ｘ１」「ｐ２＝ｘ２−ｘ」にｘ，ｘ１，ｘ２を代入し、式を演算することにより、ｐ１、およびｐ２を算出し、当該ｐ１、およびｐ２を記憶媒体に格納する差演算ステップと、
記憶媒体のｐ１，ｐ２を読み出し、「ｐ１＜＝ｐ２」であるか否かを判断する第二判断ステップと、
前記第二判断ステップで「ｐ１＜＝ｐ２」であると判断した場合、最高次数（ｎ）を用いた上記の数式１を演算し、ｙを取得し、当該ｙを記憶媒体に格納し、
前記第二判断ステップで「ｐ１＜＝ｐ２」でないと判断した場合、最高次数（ｎ）を用いた数式２を演算し、ｙを取得し、当該ｙを記憶媒体に格納する第一演算ステップと、
前記第一演算ステップで取得したｙに対してＬを乗算し、ｙを「Ｌ・ｙ」とし、記憶媒体に格納する第二乗算ステップと、
前記第一判断ステップで、実数ｘが負であると判断した場合に、前記第二乗算ステップで取得したｙの正負を逆転させた（−ｙ）を取得し、当該（−ｙ）をｙとし、記憶媒体に格納する第二正負逆転ステップと、
前記第二正負逆転ステップで取得したｙ、または前記第二乗算ステップで取得したｙを記憶媒体から読み出し、出力する出力ステップを実行させるためのプログラムであり、
浮動小数点演算を行わずに、実数の逆数の演算を行うプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、実数の逆数演算を行う演算処理装置等に関するものである。
【背景技術】
【０００２】
従来の実数の演算を行う演算処理装置において、積和演算器を少なくとも４個備えた演算処理装置において、実数の積和演算等を並列に高速に実行する演算処理装置があった（例えば、特許文献１参照）。
【０００３】
また、実数の逆数演算を行う演算処理装置を内部に組み込んだ発音評定装置として、比較対象の音声に関するデータである教師データを格納している教師データ格納部と、教師データに対応する音声を出力する音声出力部と、前記音声出力部が音声データの少なくとも一部を出力した後、音声の入力を受け付ける音声受付部と、前記音声受付部が受け付けた音声と、前記教師データに基づいて、前記音声受付部が受け付けた音声の評定を行う評定部と、前記評定部の評定結果を出力する出力部を具備する発音評定装置により、追唱を行いながら、練習対象の模範の音声と、練習者が発声する音声との類似度を把握できる発音評定装置があった（特許文献２参照）。
【特許文献１】特開２００２−０７３５８６号公報（第１頁、第１図等）
【特許文献２】特開２００６−２０１４９１号公報（第１頁、第１図等）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の演算処理装置においては、実数の逆数演算を行う場合に、多くのメモリ量が必要となり、かつ、計算負荷が多大である、という課題があった。
【課題を解決するための手段】
【０００５】
本第一の発明の演算処理装置は、実数ｘの逆数演算を行う演算処理装置であって、数値をスケーリングする最小の定数である最小値を格納している最小値格納部と、演算する最高次数（ｎ（ｎは自然数））を格納している最高次数格納部と、実数ｘを受け付ける受付部と、実数ｘが負であるか否かを判断する第一判断部と、前記第一判断部が、実数ｘが負であると判断した場合に、実数ｘを（−ｘ）とし、記憶媒体に格納する第一正負逆転部と、
前記最小値格納部の最小値を読み出し、「Ｌ・ｘ＞＝最小値」となる自然数Ｌを取得する自然数取得部と、実数ｘに対してＬを乗算し、ｘを「Ｌ・ｘ」とする第一乗算部と、実数ｘを超えない最大の整数ｘ１を取得し、かつ、実数ｘを下回らない最小の整数ｘ２を取得する整数取得部と、「ｐ１＝ｘ−ｘ１」「ｐ２＝ｘ２−ｘ」により、ｐ１、およびｐ２を算出する差演算部と、「ｐ１＜＝ｐ２」であるか否かを判断する第二判断部と、前記第二判断部が「ｐ１＜＝ｐ２」であると判断した場合、前記最高次数格納部の最高次数（ｎ）を用いた数式８を演算し、ｙを取得し、かつ
【数８】
2008139538.tif 000003
前記第二判断部が「ｐ１＜＝ｐ２」でないと判断した場合、前記最高次数（ｎ）を用いた数式９を演算し、ｙを取得する第一演算部と、
【数９】
2008139538.tif 000004
前記第一演算部が取得したｙに対してＬを乗算し、ｙを「Ｌ・ｙ」とし、記憶媒体に格納する第二乗算部と、前記第一判断部が、実数ｘが負であると判断した場合に、前記第二乗算部が取得したｙの正負を逆転させた（−ｙ）を取得し、当該（−ｙ）をｙとし、記憶媒体に格納する第二正負逆転部と、前記第二正負逆転部が取得したｙ、または前記第二乗算部が取得したｙを出力する出力部を具備する演算処理装置であって、自然数の逆数演算を用いて、実数の逆数演算を行う演算処理装置である。
【０００６】
かかる構成により、浮動小数点回路を用いることなく、少ないメモリ量で、計算負荷が小さく、実数の逆数を演算できる。
【０００７】
また、本第二の発明の音声処理装置は、第一の発明の演算処理装置を用いた音声処理装置である。つまり、本音声処理装置は、音声を受け付ける音声受付部と、前記音声受付部が受け付けた音声から音声離散時間信号を取得し、記憶媒体に格納する音声離散時間信号取得部と、前記音声離散時間信号から短区間部分を切り出した第一短区間離散時間信号（Ｓｎ（ｎ＝０，１，２，...，Ｎ−１））を得て、記憶媒体に格納する短区間切出部と、前記第一短区間離散時間信号（Ｓｎ）に対して高域強調処理を施し、第二短区間離散時間信号（Ｓｎ'）を得て、記憶媒体に格納する高域強調処理部と、前記第二短区間離散時間信号（Ｓｎ'）に対して、予め決められた窓関数（Ｗｎ（ｎ＝０，１，２，...，Ｎ−１））を用いて、窓操作を行い、処理対象信号（ｘｎ）を得て、記憶媒体に格納する窓操作部と、前記処理対象信号（ｘｎ）の各値を、数式１０に代入し、自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を算出し、記憶媒体に格納する自己相関関数値算出部と、
【数１０】
2008139538.tif 000005
実数である自己相関関数値（ｒ０）を前記記憶媒体から読み出し、第一の発明の演算処理装置に前記自己相関関数値（ｒ０）を与え、自己相関関数値（ｒ０）の逆数（１／ｒ０）を取得し、記憶媒体に格納する第一逆数取得部と、前記逆数（１／ｒ０）と、前記自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を読み出し、数式１１に代入し、ｋ１，Ｊ１，α１（１）を得て、記憶媒体に格納するレビンソン・ダービン初期化処理部と、
【数１１】
2008139538.tif 000006
前記ｋ１，Ｊ１，α１（１）を読み出し、ｍ＝２からＰまでの自然数を繰り返し代入し、数式１２に従って線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を算出し、記憶媒体に格納するレビンソン・ダービン演算部と、
【数１２】
2008139538.tif 000007
前記レビンソン・ダービン演算部が取得した線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を出力する線形予測係数出力部を具備する音声処理装置であって、前記レビンソン・ダービン演算部は、前記ｋｍを算出する場合に、実数Ｊｍ−１を第一の発明の演算処理装置に与え、実数Ｊｍ−１の逆数（１／Ｊｍ−１）を取得し、記憶媒体に格納する第二逆数取得部を具備する音声処理装置である。なお、上記レビンソン・ダービン演算部は、第二逆数取得部が取得した（１／Ｊｍ−１）を、数式「ｋｍ＝Δｍ−１×（１／Ｊｍ−１）」に代入し、ｋｍを算出するなど、上記数式１２に従って演算を行い、ａｉを算出する。
【０００８】
かかる構成により、浮動小数点回路を用いることなく、少ないメモリで、少ない計算負荷で、実数の逆数が計算でき、その結果、少ないメモリで、高速に音声処理を行い、線形予測係数を得ることができる。
【０００９】
また、本第三の発明の音声処理装置は、第二の発明に対して、前記レビンソン・ダービン演算部が取得した予測残差（ＪＰ）を取得する予測残差取得部と、前記予測残差（ＪＰ）の自然対数「ｌｏｇＪＰ」を算出し、特徴値（ｃ０）として記憶媒体に格納する第一特徴値算出部と、前記線形予測係数出力部が出力した線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を取得する線形予測係数取得部と、前記線形予測係数取得部が取得した線形予測係数（ａ１）の正負を逆転させ、特徴値（ｃ１）を得て、記憶媒体に格納する第二特徴値算出部と、前記線形予測係数取得部が取得した線形予測係数（ａ１からａＰ）を用いて、数式１３により、特徴値（ｃ２からＣＰ）を算出し、記憶媒体に格納する第三特徴値算出部と、
【数１３】
2008139538.tif 000008
前記線形予測係数取得部が取得した線形予測係数（ａ１からａＰ）を用いて、数式１４により、特徴値（ｃＰ＋１以降のｃｎ）を算出し、記憶媒体に格納する第四特徴値算出部と、
【数１４】
2008139538.tif 000009
前記第一特徴値算出部、前記第二特徴値算出部、前記第三特徴値算出部、および前記第四特徴値算出部が得た特徴値（ｃｎ（ｎ＝０，１，２，・・・，ｗ））を出力する特徴ベクトル出力部をさらに具備する音声処理装置である。
【００１０】
かかる構成により、浮動小数点回路を用いることなく、少ないメモリで、少ない計算負荷で、実数の逆数が計算でき、その結果、少ないメモリで、高速に音声の特徴抽出を行うことができる。
【００１１】
また、本第四の発明の発音評定装置は、前記第三の発明の音声処理装置を具備する発音評定装置であって、比較される対象の音声に関するデータであり、1以上の音韻毎のデータである教師データを１以上格納している教師データ格納部と、前記第三の発明の音声処理装置を用いて、音声を受け付け、当該音声をフレーム毎の音声データに区分し、当該区分されたフレーム毎の音声データである特徴値（ｃｎ（ｎ＝０，１，２，・・・，ｗ））を得て、前記教師データと前記特徴値に基づいて、前記第三の発明の音声処理装置が受け付けた音声の評定を行う評定部と、前記評定部の評定結果を出力する出力部を具備する発音評定装置、である。
【００１２】
かかる構成により、浮動小数点回路を用いることなく、少ないメモリで、少ない計算負荷で、実数の逆数が計算でき、その結果、少ないメモリで、高速に発音評定を行うことができる。
【発明の効果】
【００１３】
本発明による演算処理装置によれば、少ないメモリで、少ない計算負荷で、実数の逆数が計算できる。
【発明を実施するための最良の形態】
【００１４】
以下、演算処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
（実施の形態1）
【００１５】
本実施の形態における演算処理装置１０は、浮動小数点演算を行わずに、実数の逆数演算が可能な演算処理装置である。
【００１６】
図１は、本実施の形態における演算処理装置１０のブロック図である。本演算処理装置１０は、最小値格納部１０１、最高次数格納部１０２、受付部１０３、第一判断部１０４、第一正負逆転部１０５、自然数取得部１０６、第一乗算部１０７、整数取得部１０８、差演算部１０９、第二判断部１１０、第一演算部１１１、第二乗算部１１２、第二正負逆転部１１３、出力部１１４を具備する。
【００１７】
最小値格納部１０１は、数値（ここでは、処理対象の実数ｘ）をスケーリングする最小の定数である最小値を格納している。最小値は、例えば、１０である。また、最小値格納部１０１は、ハードディスクやＲＯＭ等の不揮発性の記録媒体が好適であるが、ＲＡＭ等の揮発性の記録媒体でも実現可能である。なお、例えば、本演算処理装置の演算処理をコンピュータが実行可能なプログラムで実現する場合、最小値は、プログラム中に埋め込まれていても良いことは言うまでもない。かかる場合も、最小値は、プログラムが格納されている記憶媒体に記憶されている、と言える。
【００１８】
最高次数格納部１０２は、演算する最高次数（ｎ（ｎは自然数））を格納している。最高次数は、テイラー展開の最高次数である。テイラー展開の最高次数とは、上記の数式８、数式９におけるｎである。最高次数格納部１０２は、ハードディスクやＲＯＭ等の不揮発性の記録媒体が好適であるが、ＲＡＭ等の揮発性の記録媒体でも実現可能である。なお、最高次数ｎは、記憶媒体に格納されている上記の数式８、数式９の情報の中に埋め込まれていても良いし、上記の数式８、数式９とは別途、格納されていても良い。また、例えば、本演算処理装置の演算処理をコンピュータが実行可能なプログラムで実現する場合、最高次数ｎは、プログラム中に埋め込まれていても良いことは言うまでもない。かかる場合も、最高次数ｎは、プログラムが格納されている記憶媒体に記憶されている、と言える。
【００１９】
受付部１０３は、実数ｘを受け付ける。ここで「受け付け」とは、ユーザからのキーボードなどの入力手段からの入力受け付けや、外部の装置からの通信手段を用いた受信や、本演算処理装置が行う演算処理が実行されるコンピュータシステム内の他のアプリケーションからの受け付け（関数の引数渡しや、メッセージ受信など）など、種々の態様による受け付けを含む。受付部１０３は、例えば、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
【００２０】
第一判断部１０４は、受付部１０３が受け付けた実数ｘが負であるか否かを判断する。第一判断部１０４は、ハードウェア（判断回路）で実現しても良いし、ソフトウェアとＭＰＵ等で実現しても良い。
【００２１】
第一正負逆転部１０５は、第一判断部１０４が、実数ｘが負であると判断した場合に、実数ｘを（−ｘ）とし、記憶媒体に格納する。なお、判断前の実数ｘを格納する記憶媒体の領域と、実数ｘを（−ｘ）とした後の値を格納する記憶媒体の領域が、異なる領域でも良いし、同じ領域に（−ｘ）を上書きしても良い。また、第一正負逆転部１０５は、第一判断部１０４が、実数ｘが正であると判断した場合に、実数ｘをそのまま予め決められた記憶媒体に格納しても良い。また、第一正負逆転部１０５が（−ｘ）を書き込む記憶媒体は、図示されておらず、メインメモリなどの揮発性の記録媒体でも、ハードディスク等の不揮発性の記録媒体でも良い。第一正負逆転部１０５は、通常、ＭＰＵやメモリ等から実現され得る。第一正負逆転部１０５の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、第一正負逆転部１０５は、ハードウェア（正負逆転回路）で実現しても良い。
【００２２】
自然数取得部１０６は、第一正負逆転部１０５が記憶媒体に格納した実数ｘを読み出し、かつ、最小値を最小値格納部１０１から読み出し、実数ｘ、および最小値を用いて、「Ｌ・ｘ＞＝最小値」となる自然数Ｌを取得する。なお、Ｌは、「Ｌ・ｘ＞＝最小値」を満たす最小の自然数であることが好適である。例えば、自然数取得部１０６は、Ｌを１から１ずつインクリメントして行き、「Ｌ・ｘ＞＝最小値」を満たす最小のＬを取得しても良い。また、自然数取得部１０６は、Ｌを１から、「Ｌ←Ｌ＋Ｌ」の更新を行いながら、「Ｌ・ｘ＞＝最小値」を満たす最小のＬを取得しても良い。かかる場合、Ｌは、「Ｌ・ｘ＞＝最小値」を満たす最小の自然数であるとは限らないが、好適な数値となっている。その他、自然数取得部１０６が「Ｌ・ｘ＞＝最小値」となる自然数Ｌを取得するアルゴリズムは問わない。また、通常、式「Ｌ・ｘ＞＝最小値」は記憶媒体に格納されており、自然数取得部１０６は、かかる式の情報を読み出して、実数ｘ、および最小値を代入して、上述のようにＬを取得する。自然数取得部１０６は、通常、ＭＰＵやメモリ等から実現され得る。自然数取得部１０６の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００２３】
第一乗算部１０７は、実数ｘ（ここでは、正の実数になっている）に対してＬを乗算し、ｘを「Ｌ・ｘ」とする。つまり、第一乗算部１０７は、まず、第一正負逆転部１０５が記憶媒体に格納した実数ｘ（元のｘが負の場合）、または受付部１０３が受け付けた実数ｘ（元のｘが正の場合）を、記憶媒体から読み出す。次に、第一乗算部１０７は、自然数取得部１０６が取得したＬを記憶媒体から読み出す。そして、第一乗算部１０７は、乗算回路により「Ｌ・ｘ」を演算し、その演算結果を記憶媒体に格納する。この記憶媒体に格納された値を以下の処理で「ｘ」に置き換える。なお、「ｘ」に置き換えるとは、元の実数ｘが格納されている記憶領域に、必ずしも「Ｌ・ｘ」の演算結果を上書きする意味ではない。第一乗算部１０７は、「Ｌ・ｘ」の演算結果を、元の実数ｘが格納されている記憶領域に上書きしても良いし、他の記憶領域に書き込んでも良い。第一乗算部１０７は、通常、ＭＰＵやメモリ等から実現され得る。第一乗算部１０７の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（乗算回路など）で実現しても良い。
【００２４】
整数取得部１０８は、実数ｘを超えない最大の整数ｘ１を取得し、かつ、実数ｘを下回らない最小の整数ｘ２を取得し、ｘ１およびｘ２を記憶媒体に格納する。整数取得部１０８は、例えば、実数ｘの整数部分を取得する処理を行い、ｘ１を取得し、かつ加算回路による演算を行い、「ｘ１＋１」を取得し、ｘ２を得る。ただし、整数取得部１０８がｘ１およびｘ２を取得するアルゴリズムは問わない。整数取得部１０８は、通常、ＭＰＵやメモリ等から実現され得る。整数取得部１０８の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（例えば、実数から整数部分をフィルタリングする回路や加算回路を含む）で実現しても良い。
【００２５】
差演算部１０９は、「ｐ１＝ｘ−ｘ１」「ｐ２＝ｘ２−ｘ」により、ｐ１、およびｐ２を算出し、かかるｐ１、およびｐ２を記憶媒体に格納する。差演算部１０９は、通常、ＭＰＵやメモリ等から実現され得る。差演算部１０９の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（減算回路）で実現しても良い。
【００２６】
第二判断部１１０は、「ｐ１＜＝ｐ２」であるか否かを判断し、判断結果を記憶媒体に格納する。例えば、第二判断部１１０は、「ｐ１＜＝ｐ２」である場合にフラグを「１」とし、第二判断部１１０は、「ｐ１＜＝ｐ２」でない場合にフラグを「０」とする。第二判断部１１０は、通常、ＭＰＵやメモリ等から実現され得る。第二判断部１１０の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（比較回路）で実現しても良い。
【００２７】
第一演算部１１１は、第二判断部１１０が「ｐ１＜＝ｐ２」であると判断した場合、最高次数格納部１０２の最高次数（ｎ）を用いた数式１５を演算し、ｙを取得し、かつ
【数１５】
2008139538.tif 000010
第二判断部１１０が「ｐ１＜＝ｐ２」でないと判断した場合、第一演算部１１１は最高次数（ｎ）を用いた数式１６を演算し、ｙを取得する。
【数１６】
2008139538.tif 000011
【００２８】
第一演算部１１１は、例えば、上記の数式１５、１６の式の情報を格納している。また、数式１５、１６において、例えば、最高次数（ｎ）は予め決められている。そして、第二判断部１１０における判断結果を示すフラグの値を読み取り、当該フラグの値が「ｐ１＜＝ｐ２」であることを示す値（例えば、「１」）であれば、上記の数式１５の情報を読み取り、数式１５にｐ１、ｘ１を代入し、ｙを取得する。そして、第一演算部１１１は、フラグの値が「ｐ１＜＝ｐ２」でないことを示す値（例えば、「０」）であれば、上記の数式１６の情報を読み取り、数式１６にｐ２、ｘ２を代入し、ｙを取得する。第一演算部１１１は、例えば、乗算回路、除算回路、加算回路で実現され得る。また、第一演算部１１１は、取得したｙを、通常、記憶媒体に格納する。また、第一演算部１１１は、例えば、ＭＰＵとやメモリ等、およびソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されていても良い。
【００２９】
第二乗算部１１２は、第一演算部１１１が取得したｙに対してＬを乗算し、ｙを「Ｌ・ｙ」とし、記憶媒体に格納する。つまり、第二乗算部１１２は、通常、記憶媒体に格納されているｙ、Ｌを読み出す。次に、予め格納されている式「Ｌ・ｙ」を読み出し、ｙ、Ｌを代入し、乗算し、その結果を記憶媒体に書き込む。第二乗算部１１２は、通常、ＭＰＵやメモリ等から実現され得る。第二乗算部１１２の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（乗算回路）で実現しても良い。
【００３０】
第二正負逆転部１１３は、第一判断部１０４が、実数ｘが負であると判断した場合に、第二乗算部１１２が取得したｙの正負を逆転させた（−ｙ）を取得し、当該（−ｙ）をｙとし、記憶媒体に格納する。第二正負逆転部１１３は、例えば、第一判断部１０４の判断結果を格納したフラグを読み出し、当該フラグの値から、受付部１０３が受け付けた実数ｘが負であると判断していたことを検知した場合、第二乗算部１１２が取得したｙを読み出し、（−ｙ）を取得し、当該（−ｙ）をｙとし、記憶媒体に格納する。なお、（−ｙ）を取得した場合、必ずしも（ｙ）が記憶されている領域に（−ｙ）を上書きする必要はなく、他の記憶領域に（−ｙ）を書き込んでも良い。第二正負逆転部１１３は、通常、ＭＰＵやメモリ等から実現され得る。第二正負逆転部１１３の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（正負逆転回路）で実現しても良い。なお、第二正負逆転部１１３は、第一正負逆転部１０５と、物理的に同じ回路で実現しても良い。
【００３１】
出力部１１４は、第二正負逆転部１１３が取得したｙ、または第二乗算部１１２が取得したｙを出力する。ここで、出力とは、外部の装置への送信、他のアプリケーションへの引渡し、プログラムにおける関数の引数渡し、値ｙのメッセージ送信、ディスプレイへの表示、プリンタへの印字、音出力、記録媒体への蓄積等を含む概念である。また、出力とは、実施の形態２などで述べる音声処理装置にｙを渡す処理でも良い。出力部１１４は、例えば、ＭＰＵやメモリ等から実現され得る。
【００３２】
なお、上記各構成要素が取得するデータ（ｙやｐ１など）が格納される記憶媒体は、揮発性の記憶媒体でも、不揮発性の記憶媒体でも良い、各構成要素が共有しても良いし、別の記憶媒体でも良い。
【００３３】
次に、演算処理装置の動作について図２のフローチャートを用いて説明する。
【００３４】
（ステップＳ２０１）演算処理装置１０は、初期化処理を行う。初期化処理とは、例えば、フラグを０とする処理である。また、初期化処理は、最小値格納部１０１に最小値Ａを設定する処理（書き込む処理）を含んでも良い。また、初期化処理は、最高次数格納部１０２に最高次数ｎを設定する処理を含んでも良い。なお、上記フラグとは、実数ｘの正負を示すフラグであり、例えば、実数ｘが正の場合は「０」、負の場合は「１」となるフラグである、とする。また、例えば、最小値Ａや最高次数ｎは、ユーザがキーボード等の入力手段を用いて、入力しても良い。
【００３５】
（ステップＳ２０２）受付部１０３は、実数ｘを受け付けたか否かを判断する。実数ｘを受け付ければステップＳ２０３に行き、実数ｘを受け付けなければステップＳ２０２に戻る。
【００３６】
（ステップＳ２０３）第一判断部１０４は、受付部１０３が受け付けた実数ｘをメモリ上に一時格納する。
【００３７】
（ステップＳ２０４）第一判断部１０４は、受付部１０３が受け付けた実数ｘが負であるか否かを判断する。実数ｘが負であれば、フラグを「１」に書き換えて、ステップＳ２０５に行き、実数ｘが負でなければステップＳ２０６に行く。
【００３８】
（ステップＳ２０５）第一正負逆転部１０５は、ステップＳ２０４で、実数ｘが負であると判断した場合に、実数ｘを（−ｘ）とし、メモリに格納する。
【００３９】
（ステップＳ２０６）自然数取得部１０６は、第一正負逆転部１０５がメモリに格納した実数ｘを読み出し、かつ、最小値Ａを最小値格納部１０１から読み出し、実数ｘ、および最小値Ａを用いて、「Ｌ・ｘ＞＝Ａ」となる自然数Ｌを取得する。
【００４０】
（ステップＳ２０７）第一乗算部１０７は、ｘに対してＬ（ステップＳ２０６で取得）を乗算し、「Ｌ・ｘ」を算出し、その値をｘとし、メモリに格納する。
【００４１】
（ステップＳ２０８）整数取得部１０８は、実数ｘを超えない最大の整数ｘ１を取得し、メモリ上に配置する。
【００４２】
（ステップＳ２０９）整数取得部１０８は、実数ｘを下回らない最小の整数ｘ２を取得し、メモリ上に配置する。
【００４３】
（ステップＳ２１０）差演算部１０９は、式「ｐ１＝ｘ−ｘ１」「ｐ２＝ｘ２−ｘ」を読み出す。そして、差演算部１０９は、既にメモリ上に格納されているｘ、ｘ１、ｘ２を読み出し、上記読み出した式に代入し、演算「ｐ１＝ｘ−ｘ１」「ｐ２＝ｘ２−ｘ」を実行し、ｐ１、ｐ２を得て、当該ｐ１、ｐ２をメモリに格納する。
【００４４】
（ステップＳ２１１）第二判断部１１０は、メモリ上に格納されているｐ１、ｐ２を読み出し、「ｐ１＜＝ｐ２」であるか否かを判断する。「ｐ１＜＝ｐ２」であればステップＳ２１２に行き、「ｐ１＜＝ｐ２」でなければステップＳ２１６に行く。
【００４５】
（ステップＳ２１２）第一演算部１１１は、上記数式１５の情報を読み出す。
【００４６】
（ステップＳ２１３）第一演算部１１１は、ｐ１、ｘ１をメモリ上から読み出し、読み出した数式１５にｐ１、ｘ１を代入し、数式１５を実行し、ｙを算出する。そして、第一演算部１１１は、算出したｙをメモリ上に一時格納する。
【００４７】
（ステップＳ２１４）第一演算部１１１は、上記数式１６の情報を読み出す。
【００４８】
（ステップＳ２１５）第一演算部１１１は、ｐ２、ｘ２をメモリ上から読み出し、読み出した数式１６にｐ２、ｘ２を代入し、数式１６を実行し、ｙを算出する。そして、第一演算部１１１は、算出したｙをメモリ上に一時格納する。
【００４９】
（ステップＳ２１６）第二乗算部１１２は、ステップＳ２１３、またはステップＳ２１５において、第一演算部１１１が取得したｙに対してＬを乗算し、ｙを「Ｌ・ｙ」とし、メモリに格納する。
【００５０】
（ステップＳ２１７）第二正負逆転部１１３は、フラグを読み出し、フラグが「１」（ｘが負）であるか否かを判断する。フラグが「１」（ｘが負）であればステップＳ２１８に行き、フラグが「０」であればステップＳ２１９に行く。
【００５１】
（ステップＳ２１８）第二正負逆転部１１３は、第二乗算部１１２が取得したｙの正負を逆転させた（−ｙ）を取得し、当該（−ｙ）をｙとし、メモリに格納する。
【００５２】
（ステップＳ２１９）出力部１１４は、メモリ上のｙを読み出し、ｙを出力する。処理を終了する。
【００５３】
なお、図２のフローチャートにおいて、最高次数ｎは、固定であったが、実数ｘの値に応じて動的に変更しても良い。つまり、下記のようにβの値に応じて、最高次数ｎを動的に変更しても良い。つまり、例えば、図示しない判断手段は、βを取得し、βが「０〜０．１未満」であれば「ｎ＝２」とし、βが「０．１以上０．２未満」であれば「ｎ＝３」とし、βが「０．２以上０．３未満」であれば「ｎ＝４」とし、βが「０．３以上０．4未満」であれば「ｎ＝５」とし、βが「０．４以上０．５以下」であれば「ｎ＝６」とし、そのｎの値を最高次数格納部１０２に書き込む。かかる場合、最高次数ｎは、βの値（つまり、実数ｘの値）により動的に決められることとなる。なお、βの範囲に対応したｎの値は、例えば、最高次数管理表に格納されている、とする。最高次数管理表は、「βの範囲」「最高次数ｎ」の属性を有するレコードを１以上格納している。最高次数管理表は、演算処理装置１０が予め記憶媒体に保持している。また、最高次数管理表は、図示しない最高次数管理表格納部に格納されている。
【００５４】
以下、本実施の形態における演算処理装置の動作の理論について説明する。
【００５５】
まず、実数ｘを０．５以上の正の実数とする。そして、実数ｘを超えない最大の整数をｘ１、かつ、実数ｘを下回らない最小の整数をｘ２とする。そして、「ｐ１＝ｘ−ｘ１」「ｐ２＝ｘ２−ｘ」とする。
【００５６】
すると、テイラー展開により、以下の数式１７、数式１８が成り立つ。なお、テイラー展開は公知の定理であるので、詳細な説明を省略する。
【数１７】
2008139538.tif 000012
【数１８】
2008139538.tif 000013
【００５７】
また、上記数式１７、数式１８において、「０＜＝β１，β２＜＝０．５」であり、数式１７、数式１８の収束は早い。したがって、数式１７、数式１８において、有限項で演算を打ち切っても、演算結果の近似は良好である。
【００５８】
ただし、ｘが０．５未満の場合、実数ｘを超えない最大の整数ｘ１は「０」となり、演算ができない。
【００５９】
そこで、ｘがある定数（上記Ａであり、例えば、「１０」）以上になるようにスケーリングしてから数式１７、または数式１８を適用する。そして、最後にスケーリングの影響を解除し、元のスケールに戻す。また、ｘが負の場合、まずは、正にしてから上記の数式１７、または数式１８を適用し、最後に答えを負に戻す。
【００６０】
かかる理論で、実数ｘの逆数演算を行う装置が、上記の演算処理装置である。
【００６１】
以上、本実施の形態によれば、浮動小数点演算を行うことなく、自然数の逆数を算出することにより、実数の逆数が計算できる。つまり、本演算処理装置は、少ないメモリで、少ない計算負荷で、実数の逆数が計算できる。
【００６２】
なお、本実施の形態によれば、上述したように、βにより、演算する最高次数（ｎ）を動的に変更することにより、さらに高速に、精度高く、実数の逆数が計算できる。
【００６３】
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをＣＤ−ＲＯＭなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータに、実数ｘを受け付ける受付ステップと、実数ｘが負であるか否かを判断し、判断結果を記憶媒体に格納する第一判断ステップと、前記第一判断ステップで、実数ｘが負であると判断した場合に、実数ｘを（−ｘ）とし、記憶媒体に格納する第一正負逆転ステップと、格納されている最小値Ａを用いて、「Ｌ・ｘ＞＝最小値Ａ」となる自然数Ｌを取得し、記憶媒体に格納する自然数取得ステップと、実数ｘに対してＬを乗算し、ｘを「Ｌ・ｘ」とする第一乗算ステップと、実数ｘを超えない最大の整数ｘ１を取得し、かつ、実数ｘを下回らない最小の整数ｘ２を取得し、記憶媒体に格納する整数取得ステップと、記憶媒体のｘ，ｘ１，ｘ２を読み出し、式「ｐ１＝ｘ−ｘ１」「ｐ２＝ｘ２−ｘ」にｘ，ｘ１，ｘ２を代入し、式を演算することにより、ｐ１、およびｐ２を算出し、当該ｐ１、およびｐ２を記憶媒体に格納する差演算ステップと、記憶媒体のｐ１，ｐ２を読み出し、「ｐ１＜＝ｐ２」であるか否かを判断する第二判断ステップと、前記第二判断ステップで「ｐ１＜＝ｐ２」であると判断した場合、最高次数（ｎ）を用いた上記の数式１５を演算し、ｙを取得し、当該ｙを記憶媒体に格納し、前記第二判断ステップで「ｐ１＜＝ｐ２」でないと判断した場合、最高次数（ｎ）を用いた数式１６を演算し、ｙを取得し、当該ｙを記憶媒体に格納する第一演算ステップと、前記第一演算ステップで取得したｙに対してＬを乗算し、ｙを「Ｌ・ｙ」とし、記憶媒体に格納する第二乗算ステップと、前記第一判断ステップで、実数ｘが負であると判断した場合に、前記第二乗算ステップで取得したｙの正負を逆転させた（−ｙ）を取得し、当該（−ｙ）をｙとし、記憶媒体に格納する第二正負逆転ステップと、前記第二正負逆転ステップで取得したｙ、または前記第二乗算ステップで取得したｙを記憶媒体から読み出し、出力する出力ステップを実行させるためのプログラムであり、浮動小数点演算を行わずに、実数の逆数の演算を行うプログラム、である。
（実施の形態２）
【００６４】
本実施の形態において、実施の形態１で説明した演算処理装置を用いて、線形予測係数の出力を行う音声処理装置について説明する。
【００６５】
図３は、本実施の形態における音声処理装置１１のブロック図である。
【００６６】
音声処理装置１１は、演算処理装置１０、音声受付部１１０１、音声離散時間信号取得部１１０２、短区間切出部１１０３、高域強調処理部１１０４、窓操作部１１０５、自己相関関数値算出部１１０６、第一逆数取得部１１０７、レビンソン・ダービン初期化処理部１１０８、レビンソン・ダービン演算部１１０９、線形予測係数出力部１１１０を具備する。
【００６７】
レビンソン・ダービン演算部１１０９は、第二逆数取得部１１０９１を具備する。
【００６８】
音声受付部１１０１は、音声を受け付ける。音声の受け付けは、通常、マイクからの音声の受け付けである。ただし、マイクから受け付けた音声を、音声受付部１１０１は、図示しない外部装置から受信しても良い。音声は、例えば、ユーザが発声した音声である。音声受付部１１０１は、マイクのドライバーソフトまたは、マイクとそのドライバーソフトで実現され得る。
【００６９】
音声離散時間信号取得部１１０２は、音声受付部１１０１が受け付けた音声から音声離散時間信号を取得し、記憶媒体に格納する。音声から音声離散時間信号を取得する処理は公知技術であるので詳細な説明を省略する。音声離散時間信号取得部１１０２は、通常、ハードウェアで実現される。
【００７０】
短区間切出部１１０３は、音声離散時間信号取得部１１０２が記憶媒体に格納した音声離散時間信号を読み出し、当該音声離散時間信号から短区間部分を切り出した第一短区間離散時間信号（Ｓｎ（ｎ＝０，１，２，...，Ｎ−１））を得て、記憶媒体に格納する。音声離散時間信号から短区間部分を切り出す処理も公知技術であるので詳細な説明を省略する。短区間切出部１１０３は、通常、ＭＰＵやメモリ等から実現され得る。短区間切出部１１０３の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００７１】
高域強調処理部１１０４は、短区間切出部１１０３が取得した第一短区間離散時間信号（Ｓｎ）に対して高域強調処理を施し、第二短区間離散時間信号（Ｓｎ'）を得て、記憶媒体に格納する。高域強調処理は公知技術であるので詳細な説明を省略する。第一短区間離散時間信号（Ｓｎ）に対して高域強調処理を施した信号が第二短区間離散時間信号（Ｓｎ'）である。高域強調処理部１１０４は、通常、ＭＰＵやメモリ等から実現され得る。高域強調処理部１１０４の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００７２】
窓操作部１１０５は、第二短区間離散時間信号（Ｓｎ'）に対して、予め決められた窓関数（Ｗｎ（ｎ＝０，１，２，...，Ｎ−１））を用いて、窓操作を行い、処理対象信号（ｘｎ）を得て、記憶媒体に格納する。窓関数は、ハミング窓、ハニング窓などがあり、どのような窓関数を用いるかは問わない。窓関数については公知技術であるので詳細な説明を省略する。窓操作部１１０５は、通常、ＭＰＵやメモリ等から実現され得る。窓操作部１１０５の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００７３】
自己相関関数値算出部１１０６は、窓操作部１１０５が取得した処理対象信号（ｘｎ）の各値を記憶媒体から読み出し、かつ、予め格納している数式１９の情報を読み出し、当該数式１９に処理対象信号（ｘｎ）の各値を代入し、予め保持しているＰを記憶媒体から読み出し、「ｉ＝０」から「ｉ＝Ｐ」まで繰り返し実行し、「ｒｏ」「ｒ１」・・・「ｒｐ」を取得する。つまり、自己相関関数値算出部１１０６は、自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を取得し、当該取得した自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を記憶媒体に格納する。自己相関関数値算出部１１０６は、通常、ＭＰＵやメモリ等から実現され得る。自己相関関数値算出部１１０６の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【数１９】
2008139538.tif 000014
【００７４】
第一逆数取得部１１０７は、実数である自己相関関数値（ｒ０）を記憶媒体から読み出し、演算処理装置１０に、読み出した自己相関関数値（ｒ０）を与え、自己相関関数値（ｒ０）の逆数（１／ｒ０）を取得し、記憶媒体に格納する。第一逆数取得部１１０７が、演算処理装置１０に自己相関関数値（ｒ０）を与える処理は、演算処理装置１０を実現する関数に引数として与えても良いし、メッセージ送信によっても良いし、演算処理装置１０に通信手段により自己相関関数値（ｒ０）を与えても良い。通信手段により自己相関関数値（ｒ０）を与える場合、演算処理装置１０は、音声処理装置１１の外部に存在しても良い。第一逆数取得部１１０７は、通常、ＭＰＵやメモリ等から実現され得る。第一逆数取得部１１０７の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００７５】
レビンソン・ダービン初期化処理部１１０８は、記憶媒体に格納されている逆数（１／ｒ０）と、自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を読み出し、数式２０に代入し、数式２０を実行し、ｋ１，Ｊ１，α１（１）を得て、当該ｋ１，Ｊ１，α１（１）を記憶媒体に格納する。レビンソン・ダービン初期化処理部１１０８は、通常、ＭＰＵやメモリ等から実現され得る。レビンソン・ダービン初期化処理部１１０８の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【数２０】
2008139538.tif 000015
【００７６】
レビンソン・ダービン演算部１１０９は、記憶媒体からｋ１，Ｊ１，α１（１）を読み出し、ｍ＝２からＰまでの自然数を繰り返し代入し、数式２１に従って線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を算出し、記憶媒体に格納する。なお、レビンソン・ダービン演算部１１０９は、Ｐを自己相関関数値算出部１１０６から取得し、当該Ｐの値を用いて、ｍ＝２からＰの分だけループし、線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を算出する。また、数式２１の情報も、レビンソン・ダービン演算部１１０９は予め格納しており、かかる数式の情報を読み出す。レビンソン・ダービン演算部１１０９は、通常、ＭＰＵやメモリ等から実現され得る。レビンソン・ダービン演算部１１０９の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【数２１】
2008139538.tif 000016
【００７７】
第二逆数取得部１１０９１は、ｋｍを算出する場合に、実数Ｊｍ−１を演算処理装置１０に与え、実数Ｊｍ−１の逆数（１／Ｊｍ−１）を取得し、記憶媒体に格納する。第二逆数取得部１１０９１は、通常、ＭＰＵやメモリ等から実現され得る。実数Ｊｍ−１を演算処理装置１０に与える方法は、第一逆数取得部１１０７の処理と同様で良い。第二逆数取得部１１０９１の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００７８】
線形予測係数出力部１１１０は、レビンソン・ダービン演算部１１０９が取得した線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を、記憶媒体から読み出し、出力する。ここで出力とは、他のアプリケーションへの値の引渡し（関数引渡しやメッセージ送信など）、ディスプレイへの表示、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積等を含む概念である。
【００７９】
次に、音声処理装置１１の動作について図４のフローチャートを用いて説明する。
【００８０】
（ステップＳ４０１）音声受付部１１０１は、音声を受け付けたか否かを判断する。音声を受け付ければステップＳ４０２に行き、音声を受け付けなければステップＳ４０１に戻る。
【００８１】
（ステップＳ４０２）音声離散時間信号取得部１１０２は、ステップＳ４０１で受け付けた音声から音声離散時間信号を取得し、記憶媒体に格納する。
【００８２】
（ステップＳ４０３）短区間切出部１１０３は、ステップＳ４０２で記憶媒体に格納した音声離散時間信号を読み出し、当該音声離散時間信号から短区間部分を切り出した第一短区間離散時間信号（Ｓｎ（ｎ＝０，１，２，...，Ｎ−１））を得て、記憶媒体に格納する。
【００８３】
（ステップＳ４０４）高域強調処理部１１０４は、ステップＳ４０３で取得した第一短区間離散時間信号（Ｓｎ）に対して高域強調処理を施し、第二短区間離散時間信号（Ｓｎ'）を得て、記憶媒体に格納する。
【００８４】
（ステップＳ４０５）窓操作部１１０５は、ステップＳ４０４で取得した第二短区間離散時間信号（Ｓｎ'）を記憶媒体から読み込み、当該第二短区間離散時間信号（Ｓｎ'）に対して、予め決められた窓関数（Ｗｎ（ｎ＝０，１，２，...，Ｎ−１））を用いて、窓操作を行い、処理対象信号（ｘｎ）を得て、記憶媒体に格納する。
【００８５】
（ステップＳ４０６）自己相関関数値算出部１１０６は、窓操作部１１０５が取得した処理対象信号（ｘｎ）の各値を記憶媒体から読み出し、かつ、予め格納している数式１９の情報を読み出す。
【００８６】
（ステップＳ４０７）自己相関関数値算出部１１０６は、数式１９に処理対象信号（ｘｎ）の各値を代入し、数式１９を実行し、自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を取得し、当該取得した自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を記憶媒体に格納する。
【００８７】
（ステップＳ４０８）第一逆数取得部１１０７は、実数である自己相関関数値（ｒ０）を記憶媒体から読み出し、演算処理装置１０に、読み出した自己相関関数値（ｒ０）を与える。
【００８８】
（ステップＳ４０９）演算処理装置１０は、第一逆数取得部１１０７から自己相関関数値（ｒ０）を受け付け、逆数（１／ｒ０）を取得する。演算処理装置１０の処理は、実施の形態１で説明したので、ここでの説明は省略する。
【００８９】
（ステップＳ４１０）第一逆数取得部１１０７は、演算処理装置１０がステップＳ４０９で算出した逆数（１／ｒ０）を取得する。
【００９０】
（ステップＳ４１１）レビンソン・ダービン初期化処理部１１０８は、記憶媒体に格納されている逆数（１／ｒ０）と、自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を読み出し、上記の数式２０に代入し、数式２０を実行し、ｋ１，Ｊ１，α１（１）を得て、当該ｋ１，Ｊ１，α１（１）を記憶媒体に格納する。
【００９１】
（ステップＳ４１２）レビンソン・ダービン演算部１１０９は、記憶媒体からｋ１，Ｊ１，α１（１）を読み出し、当該読み出したｋ１，Ｊ１，α１（１）を用いて、ｍ＝２からＰまでの自然数を繰り返し数式２１に代入し、数式２１に従って線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を算出し、記憶媒体に格納する。なお、第二逆数取得部１１０９１は、ｋｍを算出する場合に、実数Ｊｍ−１を演算処理装置１０に与え、実数Ｊｍ−１の逆数（１／Ｊｍ−１）を取得し、記憶媒体に格納する。
【００９２】
（ステップＳ４１３）線形予測係数出力部１１１０は、ステップＳ４１２で取得した線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を記憶媒体から読み出し、出力する。処理を終了する。
【００９３】
以下、本実施の形態における音声処理装置の動作の理論について説明する。本音声処理装置は、実施の形態１で説明した演算処理装置を用いた一適用例である。つまり、本音声処理装置は、実数の逆数演算を自然数の逆数演算に基づいて行なう方法を適用して音声処理を行う装置である。そして、音声処理の内容が、線形予測分析法（ＬＰＣ法）である。
【００９４】
線形予測分析法（ＬＰＣ法）とは、以下の処理を言う。つまり、音声離散時間信号から短区間部分を切り出した短区間離散時間信号をＳｎ（ｎ＝０，１，２，...，Ｎ−１）とする。ここで、ｎは離散時間インデクスである。そして、まず、短区間離散時間信号Ｓｎに対して高域強調処理を施す。この処理は，例えば数式２２を用いて、行なわれる。
【数２２】
2008139538.tif 000017
【００９５】
ただし、「Ｓ０'＝Ｓ０」である。
【００９６】
また、μは１に近い０以上１未満の実数であり、例えば、「μ＝０．９８」などである。次に、数２３の窓関数ｗｎを使って、窓操作を行なう。
【数２３】
2008139538.tif 000018
【００９７】
数式２３において、Ｎは、フレーム長である。窓関数ｗｎとしては、例えば、数式２４のハミング窓であるが、他の窓関数でも良い。
【数２４】
2008139538.tif 000019
【００９８】
そして、線形予測分析は、ｘｎに対して行なう。まず、数式２５の自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を計算する。
【数２５】
2008139538.tif 000020
【００９９】
ここで、ＰはＬＰＣ次数を表わす。そして、数式２６の連立一次方程式を解くことにより，線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を得る。
【数２６】
2008139538.tif 000021
【０１００】
この連立一次方程式を解く計算方法は、好適には、レビンソン・ダービンの算法である。
【０１０１】
本実施の形態における音声処理装置は、レビンソン・ダービンの算法により線形予測係数を算出する装置である。また、本音声処理装置における実数の逆数の演算について、実施の形態１で述べた演算処理装置を用いる。そのことにより、浮動小数点演算を行うことなく実数の逆数が計算できる。つまり、本演算処理装置は、少ないメモリで、少ない計算負荷で、実数の逆数が計算できる。
【０１０２】
以上、本実施の形態によれば、少ないメモリで、少ない計算負荷で、実数の逆数が計算できる。その結果、少ないメモリで、少ない計算負荷で、音声処理を行い、線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を得ることができる。なお、この線形予測係数を導く過程で算出されるｋ（ＰＡＲＣＯＲ係数）は、音声通信などに利用され得る。従って、本音声処理装置は、電話などの音声通信装置に利用され得る。なお、線形予測係数を導く過程で算出されるｋのみを出力する場合、本演算処理装置は、線形予測係数を出力する必要がなく、ｋのみを出力すれば良い。
【０１０３】
なお、本実施の形態によれば、音声処理装置１１は、演算処理装置１０を具備していた。しかし、音声処理装置１１は演算処理装置１０を具備せず、演算処理装置１０に対して実数の逆数計算を指示し、その演算結果を受け取る構成でも良い。かかる場合、音声処理装置１１は、音声受付部１１０１、音声離散時間信号取得部１１０２、短区間切出部１１０３、高域強調処理部１１０４、窓操作部１１０５、自己相関関数値算出部１１０６、第一逆数取得部１１０７、レビンソン・ダービン初期化処理部１１０８、レビンソン・ダービン演算部１１０９、線形予測係数出力部１１１０を具備する。そして、第一逆数取得部１１０７と第二逆数取得部１１０９１は、演算処理装置１０に実数の逆数演算を指示し、演算結果を受け取る。
【０１０４】
さらに、本実施の形態における音声処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータに、マイクからの音声を受け付ける音声受付ステップと、前記音声受付ステップで受け付けた音声から音声離散時間信号を取得し、記憶媒体に格納する音声離散時間信号取得ステップと、前記音声離散時間信号から短区間部分を切り出した第一短区間離散時間信号（Ｓｎ（ｎ＝０，１，２，...，Ｎ−１））を得て、記憶媒体に格納する短区間切出ステップと、前記第一短区間離散時間信号（Ｓｎ）に対して高域強調処理を施し、第二短区間離散時間信号（Ｓｎ'）を得て、記憶媒体に格納する高域強調処理ステップと、前記第二短区間離散時間信号（Ｓｎ'）に対して、予め決められた窓関数（Ｗｎ（ｎ＝０，１，２，...，Ｎ−１））を用いて、窓操作を行い、処理対象信号（ｘｎ）を得て、記憶媒体に格納する窓操作ステップと、前記処理対象信号（ｘｎ）の各値を、数式１９に代入し、自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を算出し、記憶媒体に格納する自己相関関数値算出ステップと、実数である自己相関関数値（ｒ０）を前記記憶媒体から読み出し、演算処理装置１０に前記自己相関関数値（ｒ０）を与え、自己相関関数値（ｒ０）の逆数（１／ｒ０）を取得し、記憶媒体に格納する第一逆数取得ステップと、前記逆数（１／ｒ０）と、前記自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を読み出し、数式２０に代入し、ｋ１，Ｊ１，α１（１）を得て、記憶媒体に格納するレビンソン・ダービン初期化処理ステップと、前記ｋ１，Ｊ１，α１（１）を読み出し、ｍ＝２からＰまでの自然数を繰り返し代入し、数式２１に従って線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を算出し、記憶媒体に格納するレビンソン・ダービン演算ステップと、前記レビンソン・ダービン演算ステップで取得した線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を出力する線形予測係数出力ステップを実行させるプログラムであって、前記レビンソン・ダービン演算ステップは、前記ｋｍを算出する場合に、実数Ｊｍ−１を前記演算処理装置１０に与え、実数Ｊｍ−１の逆数（１／Ｊｍ−１）を取得し、記憶媒体に格納する第二逆数取得ステップを具備するプログラム、である。
（実施の形態３）
【０１０５】
本実施の形態において、実施の形態２で説明した音声処理装置を用いて、特徴ベクトルの抽出を行う音声処理装置について説明する。
【０１０６】
図５は、本実施の形態における音声処理装置２１のブロック図である。
【０１０７】
音声処理装置２１は、演算処理装置１０、音声受付部１１０１、音声離散時間信号取得部１１０２、短区間切出部１１０３、高域強調処理部１１０４、窓操作部１１０５、自己相関関数値算出部１１０６、第一逆数取得部１１０７、レビンソン・ダービン初期化処理部１１０８、レビンソン・ダービン演算部１１０９、線形予測係数出力部１１１０、予測残差取得部２１０１、第一特徴値算出部２１０２、線形予測係数取得部２１０３、第二特徴値算出部２１０４、第三特徴値算出部２１０５、第四特徴値算出部２１０６、特徴ベクトル出力部２１０７を具備する。
【０１０８】
予測残差取得部２１０１は、レビンソン・ダービン演算部１１０９が線形予測係数を算出する過程で取得した予測残差（ＪＰ）を取得し、記憶媒体に格納する。予測残差取得部２１０１は、通常、ＭＰＵやメモリ等から実現され得る。予測残差取得部２１０１の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【０１０９】
第一特徴値算出部２１０２は、予測残差（ＪＰ）の自然対数「ｌｏｇＪＰ」を算出し、特徴値（ｃ０）として記憶媒体に格納する。第一特徴値算出部２１０２は、ハードウェア（自然対数算出回路）または、ＣＰＵやメモリ等から実現され得る。つまり、第一特徴値算出部２１０２の処理手順は、通常、ソフトウェアで実現されても良い。
【０１１０】
線形予測係数取得部２１０３は、線形予測係数出力部１１１０が出力した線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を取得する。この取得は、関数の引数渡しや、メッセージの受信や、通信手段を用いた受信などである。線形予測係数取得部２１０３は、通常、ＭＰＵやメモリ等から実現され得る。線形予測係数取得部２１０３の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【０１１１】
第二特徴値算出部２１０４は、線形予測係数取得部２１０３が取得した線形予測係数（ａ１）の正負を逆転させ、特徴値（ｃ１）を得て、記憶媒体に格納する。第二特徴値算出部２１０４は、例えば、ハードウェア（正負逆転回路）や、ソフトウェアとＭＰＵやメモリ等から実現され得る。
【０１１２】
第三特徴値算出部２１０５は、線形予測係数取得部２１０３が取得した線形予測係数（ａ１からａＰ）を読み出し、当該線形予測係数（ａ１からａＰ）を用いて、以下の数式２７により、特徴値（ｃ２からｃＰ）を算出し、記憶媒体に格納する。第三特徴値算出部２１０５は、通常、数式２７の情報を格納しており、読み出した線形予測係数（ａ１からａＰ）を数式２７に代入し、数式２７を実行し、特徴値（ｃ２からｃＰ）を得る。第三特徴値算出部２１０５は、通常、ＭＰＵやメモリ等から実現され得る。第三特徴値算出部２１０５の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（四則演算を行う回路などを含む専用回路）で実現しても良い。
【数２７】
2008139538.tif 000022
【０１１３】
第四特徴値算出部２１０６は、線形予測係数取得部２１０３が取得した線形予測係数（ａ１からａＰ）を用いて、数式２８により、特徴値（ｃＰ＋１以降のｃｎ）を算出し、記憶媒体に格納する。第四特徴値算出部２１０６は、通常、数式２８の情報を格納しており、読み出した線形予測係数（ａ１からａＰ）を数式２８に代入し、数式２８を実行し、特徴値（ｃＰ＋１以降のｃｎ）を得る。なお、第四特徴値算出部２１０６は、予め決められた最終の特徴値（ｃｘ）まで、算出する。第四特徴値算出部２１０６は、通常、ＭＰＵやメモリ等から実現され得る。第四特徴値算出部２１０６の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（四則演算を行う回路などを含む専用回路）で実現しても良い。
【数２８】
2008139538.tif 000023
【０１１４】
特徴ベクトル出力部２１０７は、第一特徴値算出部２１０２、第二特徴値算出部２１０４、第三特徴値算出部２１０５、および第四特徴値算出部２１０６が得た特徴値（ｃｎ（ｎ＝０，１，２，・・・，ｗ））を出力する。ここで出力とは、他のアプリケーションへの値の引渡し（関数引渡しやメッセージ送信など）、ディスプレイへの表示、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積等を含む概念である。
【０１１５】
次に、音声処理装置２１の動作について図６のフローチャートを用いて説明する。なお、図６のフローチャートにおいて、図４のステップＳ４０１からステップＳ４１３の処理を含む。
【０１１６】
（ステップＳ６０１）予測残差取得部２１０１は、レビンソン・ダービン演算部１１０９が線形予測係数を算出する過程で取得した予測残差（ＪＰ）を取得し、記憶媒体に格納する。
【０１１７】
（ステップＳ６０２）第一特徴値算出部２１０２は、ステップＳ６０１で取得した予測残差（ＪＰ）を読み出し、当該予測残差（ＪＰ）の自然対数「ｌｏｇＪＰ」を算出し、特徴値（ｃ０）として記憶媒体に格納する。
【０１１８】
（ステップＳ６０３）線形予測係数取得部２１０３は、ステップＳ４１３で線形予測係数出力部１１１０が出力した線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を取得し、記憶媒体に格納する。
【０１１９】
（ステップＳ６０４）第二特徴値算出部２１０４は、線形予測係数取得部２１０３が取得した線形予測係数（ａ１）を記憶媒体から読み出し、線形予測係数（ａ１）の正負を逆転させ、特徴値（ｃ１）を得て、特徴値（ｃ１）を記憶媒体に格納する。
【０１２０】
（ステップＳ６０５）第三特徴値算出部２１０５は、予め格納されている数式２７の情報を読み取る。そして、ｎ＝２からｎ＝Ｐまで、順に数式２７に代入し、ｃｎを算出し、主メモリ等の記憶媒体に一時格納する。なお、第三特徴値算出部２１０５は、ｃｎを算出する際に、線形予測係数（ａ１からａＰ）のうち必要な係数を記憶媒体から読み出す。第三特徴値算出部２１０５は、例えば、算出したｃｎをメモリ上の配列に書き込む。
【０１２１】
（ステップＳ６０６）第四特徴値算出部２１０６は、予め格納されている数式２８の情報を読み取る。そして、ｎ＝Ｐ＋１からｎ＝ｘまで、順に数式２８に代入し、ｃｎを算出し、主メモリ等の記憶媒体に一時格納する。
【０１２２】
（ステップＳ６０７）特徴ベクトル出力部２１０７は、ステップＳ６０２、ステップＳ６０４、ステップＳ６０５、およびステップＳ６０６で得た特徴値（ｃｎ（ｎ＝０，１，２，・・・，ｗ））から、特徴ベクトルを構成する。なお、ステップＳ６０２、ステップＳ６０４、ステップＳ６０５、およびステップＳ６０６において、例えば、特徴ベクトルを格納する配列に、各特徴値を書き込んでいた場合など、本ステップは省略され得る。
【０１２３】
（ステップＳ６０８）特徴ベクトル出力部２１０７は、ステップＳ６０７で構成した特徴ベクトルを出力する。処理を終了する。
【０１２４】
以下、本実施の形態における音声処理装置の動作の理論について説明する。本音声処理装置は、実施の形態１で説明した演算処理装置を用いた一適用例である。つまり、本音声処理装置は、実数の逆数演算を自然数の逆数演算に基づいて行なう方法を適用して音声処理を行う装置である。そして、音声処理の内容が、ＬＰＣケプストラム係数（ｃｎ（ｎ＝０，１，２，...））を出力する処理である。このＬＰＣケプストラム係数は、実施の形態４で述べる発音評定処理や、音声認識処理などの音声処理に広く利用され得る。
【０１２５】
以下、ＬＰＣケプストラム係数（ｃｎ（ｎ＝０，１，２，...））を算出する処理について説明する。まず、線形予測分析で得られる線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））から処理対象信号（ｘｎ（ｎ＝０，１，２，...，Ｎ−１））のパワースペクトルの概形：Ｘ〜（ｆ）が、以下の数式２９により算出される。なお、数式２９において、「Ｘ〜（ｆ）」の「〜」は、Ｘの上部に位置しているが、同様に、パワースペクトルの概形である。
【数２９】
2008139538.tif 000024
【０１２６】
ここでＦｓは、サンプリング周波数である。ＬＰＣケプストラム係数ｃｎ（ｃ＝０，１，２，...，Ｎ−１）は、パワースペクトルの概形の対数を逆フーリエ変換して得られるものであり、数式３０の関係がある。
【数３０】
2008139538.tif 000025
【０１２７】
ただし、対数は自然対数（底がｅの対数）である。ｃｎ（ｎ＝０，１，２，...）は、線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を用いて、以下の数式３１の１．から４．の式により、再帰的アルゴリズムで求めるのが望ましい。
【数３１】
2008139538.tif 000026
【０１２８】
本実施の形態における音声処理装置２１は、上記の数式３１をコンピュータにより実行させ、音声処理を行う装置である。また、本音声処理装置２１における実数の逆数の演算について、実施の形態１で述べた演算処理装置を用いる。そのことにより、浮動小数点演算を行うことなく実数の逆数が計算できる。つまり、本演算処理装置は、少ないメモリで、少ない計算負荷で、実数の逆数が計算できる。
【０１２９】
以上、本実施の形態によれば、少ないメモリで、少ない計算負荷で、実数の逆数が計算できる。その結果、少ないメモリで、少ない計算負荷で、音声処理を行い、ＬＰＣケプストラム係数（ｃｎ（ｎ＝０，１，２，...））を得ることができる。なお、このＬＰＣケプストラム係数（ｃｎ（ｎ＝０，１，２，...））は、特徴ベクトルとも言い、発音評定処理や音声認識処理など、広く音声処理に利用され得る。
【０１３０】
なお、本実施の形態における音声処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータに、マイクからの音声を受け付ける音声受付ステップと、前記音声受付ステップで受け付けた音声から音声離散時間信号を取得し、記憶媒体に格納する音声離散時間信号取得ステップと、前記音声離散時間信号から短区間部分を切り出した第一短区間離散時間信号（Ｓｎ（ｎ＝０，１，２，...，Ｎ−１））を得て、記憶媒体に格納する短区間切出ステップと、前記第一短区間離散時間信号（Ｓｎ）に対して高域強調処理を施し、第二短区間離散時間信号（Ｓｎ'）を得て、記憶媒体に格納する高域強調処理ステップと、前記第二短区間離散時間信号（Ｓｎ'）に対して、予め決められた窓関数（Ｗｎ（ｎ＝０，１，２，...，Ｎ−１））を用いて、窓操作を行い、処理対象信号（ｘｎ）を得て、記憶媒体に格納する窓操作ステップと、前記処理対象信号（ｘｎ）の各値を、数式１９に代入し、自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を算出し、記憶媒体に格納する自己相関関数値算出ステップと、実数である自己相関関数値（ｒ０）を前記記憶媒体から読み出し、演算処理装置１０に前記自己相関関数値（ｒ０）を与え、自己相関関数値（ｒ０）の逆数（１／ｒ０）を取得し、記憶媒体に格納する第一逆数取得ステップと、前記逆数（１／ｒ０）と、前記自己相関関数値（ｒｉ（ｉ＝０，１，２，...，Ｐ））を読み出し、数式２０に代入し、ｋ１，Ｊ１，α１（１）を得て、記憶媒体に格納するレビンソン・ダービン初期化処理ステップと、前記ｋ１，Ｊ１，α１（１）を読み出し、ｍ＝２からＰまでの自然数を繰り返し代入し、数式２１に従って線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を算出し、記憶媒体に格納するレビンソン・ダービン演算ステップと、前記レビンソン・ダービン演算ステップで取得した線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を出力する線形予測係数出力ステップと、前記レビンソン・ダービン演算ステップで取得した予測残差（ＪＰ）を取得する予測残差取得ステップと、前記予測残差（ＪＰ）の自然対数「ｌｏｇＪＰ」を算出し、特徴値（ｃ０）として記憶媒体に格納する第一特徴値算出ステップと、前記線形予測係数出力ステップで出力した線形予測係数（ａｉ（ｉ＝０，１，２，...，Ｐ））を取得する線形予測係数取得ステップと、前記線形予測係数取得ステップで取得した線形予測係数（ａ１）の正負を逆転させ、特徴値（ｃ１）を得て、記憶媒体に格納する第二特徴値算出ステップと、前記線形予測係数取得ステップで取得した線形予測係数（ａ１からａＰ）を用いて、数式２７により、特徴値（ｃ２からＣＰ）を算出し、記憶媒体に格納する第三特徴値算出ステップと、前記線形予測係数取得ステップで取得した線形予測係数（ａ１からａＰ）を用いて、数式２８により、特徴値（ｃＰ＋１以降のｃｎ）を算出し、記憶媒体に格納する第四特徴値算出ステップと、前記第一特徴値算出ステップ、前記第二特徴値算出ステップ、前記第三特徴値算出ステップ、および前記第四特徴値算出ステップで得た特徴値（ｃｎ（ｎ＝０，１，２，・・・，ｗ））を出力する特徴ベクトル出力ステップを実行させるためのプログラム、である。
（実施の形態４）
【０１３１】
本実施の形態において、実施の形態３で述べた音声処理装置２１が取得した特徴ベクトルを用いて、発音評定を行う発音評定装置について説明する。本発音評定装置は、比較対象の音声と入力音声の類似度の評定を精度高く、かつ高速にできる発音評定装置である。本発音評定装置が算出する事後確率を、ｔ-ｐ−ＤＡＰと呼ぶ。
【０１３２】
図７は、本実施の形態における発音評定装置のブロック図である。本発音評定装置は、入力受付部７０１、教師データ格納部７０２、音声処理装置２１、評定部７０３、出力部７０４を具備する。評定部７０３は、最適状態決定手段７０３１、発音区間フレーム音韻確率値取得手段７０３２、評定値算出手段７０３３を具備する。
【０１３３】
入力受付部７０１は、発音評定装置の動作開始を指示する動作開始指示や、入力した音声の評定結果の出力態様の変更を指示する出力態様変更指示や、処理を終了する終了指示などの入力を受け付ける。かかる指示等の入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。入力受付部７０１は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
【０１３４】
教師データ格納部７０２は、比較される対象の音声に関するデータであり、1以上の音韻毎のデータである教師データを１以上格納している。教師データは、音韻毎の隠れマルコフモデル（ＨＭＭ）を連結したＨＭＭに基づくデータであることが好適である。また、教師データは、入力される音声を構成する音素に対応するＨＭＭを、入力順序に従って連結されているＨＭＭに基づくデータであることが好適である。ただし、教師データは、必ずしも、音韻毎のＨＭＭを連結したＨＭＭに基づくデータである必要はない。教師データは、全音素のＨＭＭの、単なる集合であっても良い。また、教師データは、必ずしもＨＭＭに基づくデータである必要はない。教師データは、単一ガウス分布モデルや、確率モデル（ＧＭＭ：ガウシャンミクスチャモデル）や、統計モデルなど、他のモデルに基づくデータでも良い。ＨＭＭに基づくデータは、例えば、フレーム毎に、状態識別子と遷移確率の情報を有する。また、ＨＭＭに基づくデータは、例えば、複数の学習対象言語を母国語として話す外国人が発声した２以上のデータから学習した（推定した）モデルでも良い。教師データ格納部７０２は、ハードディスクやＲＯＭなどの不揮発性の記録媒体が好適であるが、ＲＡＭなどの揮発性の記録媒体でも実現可能である。
【０１３５】
評定部７０３は、教師データ格納部７０２の教師データと、音声処理装置２１が取得した１以上のフレームのフレームごとの特徴ベクトル（特徴ベクトル系列）を用いて、音声受付部１１０１が受け付けた音声の評定を行う。評定方法の具体例は、後述する。評定部７０３は、通常、ＭＰＵやメモリ等から実現され得る。評定部７０３の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【０１３６】
評定部７０３を構成している最適状態決定手段７０３１は、１以上のフレームごとの特徴ベクトル系列のうちの少なくとも一の特徴ベクトル系列に対する最適状態を決定する。最適状態決定手段７０３１は、例えば、全音韻ＨＭＭから、比較される対象（学習対象）の単語や文章などの音声を構成する1以上の音素に対応するＨＭＭを取得し、当該取得した1以上のＨＭＭを、音素の順序で連結したデータ（比較される対象の音声に関するデータであり、音韻毎の隠れマルコフモデルを連結したＨＭＭに基づくデータ）を構成する。そして、最適状態決定手段７０３１は、構成した当該データ、および取得した特徴ベクトル系列を構成する各特徴ベクトルｏｔに基づいて、所定のフレームの最適状態（特徴ベクトルｏｔに対する最適状態）を決定する。なお、最適状態を決定するアルゴリズムは、例えば、Ｖｉｔｅｒｂｉアルゴリズムである。また、教師データは、上述の比較される対象の音声に関するデータであり、音韻毎の隠れマルコフモデルを連結したＨＭＭに基づくデータと考えても良いし、連結される前のデータであり、全音韻ＨＭＭのデータと考えても良い。
【０１３７】
発音区間フレーム音韻確率値取得手段７０３２は、最適状態決定手段７０３１が決定した各フレームの最適状態を有する音韻全体の状態における１以上の確率値を、発音区間毎に取得する。
【０１３８】
評定値算出手段７０３３は、発音区間フレーム音韻確率値取得手段７０３２が取得した１以上の発音区間毎の１以上の確率値をパラメータとして音声の評定値を算出する。評定値算出手段７０３３は、例えば、最適状態決定手段７０３１が決定した各フレームの最適状態を有する音韻全体の状態における１以上の確率値の総和を、フレーム毎に得て、当該フレーム毎の確率値の総和に基づいて、発音区間毎の確率値の総和の時間平均値を１以上得て、当該１以上の時間平均値をパラメータとして音声の評定値を算出する。
【０１３９】
最適状態決定手段７０３１、発音区間フレーム音韻確率値取得手段７０３２、および評定値算出手段７０３３は、通常、ＭＰＵやメモリ等から実現され得る。最適状態決定手段７０３１等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【０１４０】
出力部７０４は、評定部７０３の評定結果を出力する。出力部７０４の出力態様は、種々考えられる。出力とは、ディスプレイへの表示、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積等を含む概念である。出力部７０４は、例えば、評定部７０３の評定結果を視覚的に表示する。出力部７０４は、例えば、フレーム単位、または／および音素・単語単位、または／および発声全体の評定結果を視覚的に表示する。出力部７０４は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。出力部７０４は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
【０１４１】
次に、発音評定装置の動作について図８のフローチャートを用いて説明する。
【０１４２】
（ステップＳ８０１）入力受付部７０１は、発音評定装置の動作開始を指示する動作開始指示を受け付けたか否かを判断する。動作開始指示を受け付ければステップＳ８０２に行き、動作開始指示を受け付けなければステップＳ８２０に飛ぶ。
【０１４３】
（ステップＳ８０２）音声処理装置２１の音声受付部１１０１は、音声の入力を受け付けたか否かを判断する。音声の入力を受け付ければステップＳ８０３に行き、音声の入力を受け付けなければステップＳ８１９に飛ぶ。
【０１４４】
（ステップＳ８０３）音声処理装置２１は、ステップＳ８０２で受け付けた音声のデータを図示しないバッファに一時格納する。
【０１４５】
（ステップＳ８０４）音声処理装置２１は、バッファに一時格納した音声データをフレームに区分し、フレームごとに特徴ベクトルを取得し、記憶媒体に特徴ベクトル系列（２以上のフレームの特徴ベクトル）を格納する。音声処理装置２１が行うフレーム分割の処理は、例えば、評定部７０３がフレーム音声データを取り出す際の前処理であり、入力された音声のデータを、すべてのフレームに一度に分割するとは限らない。また、音声処理装置２１が特徴ベクトルを取得する処理は、実施の形態３で説明した処理である。
【０１４６】
（ステップＳ８０５）評定部７０３は、全フレームの特徴ベクトルである特徴ベクトル系列を、記憶媒体から読み出す。特徴ベクトルは、例えば、実施の形態３で説明した音声処理装置が取得したＬＰＣケプストラム係数であり、その静的パラメータ、デルタパラメータおよびデルタデルタパラメータをそれぞれ１２次元、さらに正規化されたパワーとデルタパワーおよびデルタデルタパワー（３９次元）を有する。ただし、特徴ベクトルは、上記に限らない。なお、静的パラメータ、デルタパラメータおよびデルタデルタパラメータ等を取得する処理は公知技術であるので詳細な説明を省略する。
【０１４７】
（ステップＳ８０６）最適状態決定手段７０３１は、全フレームの最適状態を決定する。最適状態決定手段７０３１が最適状態を決定するアルゴリズムは、例えば、Ｖｉｔｅｒｂｉアルゴリズムによる。Ｖｉｔｅｒｂｉアルゴリズムは、公知のアルゴリズムであるので、詳細な説明は省略する。
【０１４８】
（ステップＳ８０７）発音区間フレーム音韻確率値取得手段７０３２は、全フレームの全状態の前向き尤度と後向き尤度を算出する。そして、全フレーム、全状態の確率値を得る。具体的には、発音区間フレーム音韻確率値取得手段７０３２は、例えば、各特徴ベクトルが対象の状態から生成された事後確率を算出する。この事後確率は、ＨＭＭの最尤推定におけるＢａｕｍ−Ｗｅｌｃｈアルゴリズムの中で現れる占有度数に対応する。Ｂａｕｍ−Ｗｅｌｃｈアルゴリズムは、公知のアルゴリズムであるので、説明は省略する。
【０１４９】
（ステップＳ８０８）発音区間フレーム音韻確率値取得手段７０３２は、全フレームの最適状態確率値を算出する。
【０１５０】
（ステップＳ８０９）発音区間フレーム音韻確率値取得手段７０３２は、ｊに１を代入する。
【０１５１】
（ステップＳ８１０）発音区間フレーム音韻確率値取得手段７０３２は、次の評定対象の発音区間である、ｊ番目の発音区間が存在するか否かを判断する。ｊ番目の発音区間が存在すればステップＳ８１１に行き、ｊ番目の発音区間が存在しなければステップＳ８０２に行く。
【０１５２】
（ステップＳ８１１）発音区間フレーム音韻確率値取得手段７０３２は、カウンタｋに１を代入する。
【０１５３】
（ステップＳ８１２）発音区間フレーム音韻確率値取得手段７０３２は、ｋ番目のフレームが、ｊ番目の発音区間に存在するか否かを判断する。ｋ番目のフレームが存在すればステップＳ８１３に行き、ｋ番目のフレームが存在しなければステップＳ８１６に飛ぶ。
【０１５４】
（ステップＳ８１３）発音区間フレーム音韻確率値取得手段７０３２は、ｋ番目のフレームの最適状態を含む音韻の全ての確率値を取得する。
【０１５５】
（ステップＳ８１４）評定値算出手段７０３３は、ステップＳ８１３で取得した１以上の確率値をパラメータとして、１フレームの音声の評定値を算出する。
【０１５６】
（ステップＳ８１５）発音区間フレーム音韻確率値取得手段７０３２は、ｋを１、インクメントする。ステップＳ８１２に戻る。
【０１５７】
（ステップＳ８１６）評定値算出手段７０３３は、ｊ番目の発音区間の評定値を算出する。評定値算出手段７０３３は、例えば、最適状態決定手段７０３１が決定した各フレームの最適状態を有する音韻全体の状態における１以上の確率値の総和を、フレーム毎に得て、当該フレーム毎の確率値の総和に基づいて、発音区間の確率値の総和の時間平均値を、当該発音区間の音声の評定値として算出する。
【０１５８】
（ステップＳ８１７）出力部７０４は、ステップＳ８１６で算出した評定値を出力する。出力部７０４は、ステップＳ８１４における評定結果（ここでは、音声の評定値）を、設定されている出力モードに従って、出力する。出力モードとは、評定値を数値で画面に表示するモード、評定値の遷移をグラフで画面に表示するモード、評定値を音声で出力するモード、評定値が所定の数値より低い場合に警告を示す情報を表示するモードなど、何でも良い。なお、ここでの出力モードは、ステップＳ８２１で設定されるモードである。
【０１５９】
（ステップＳ８１８）発音区間フレーム音韻確率値取得手段７０３２は、ｊを１、インクメントし、ステップＳ８１０に戻る。
【０１６０】
（ステップＳ８１９）音声受付部１１０１は、タイムアウトか否かを判断する。つまり、音声受付部１１０１は、所定の時間以上、音声の入力を受け付けなかったか否かを判断する。タイムアウトであればステップＳ８０１に戻り、タイムアウトでなければステップＳ８０２に戻る。
【０１６１】
（ステップＳ８２０）入力受付部７０１は、出力態様変更指示を受け付けたか否かを判断する。出力態様変更指示を受け付ければステップＳ８２１に行き、出力態様変更指示を受け付なければステップＳ８２２に飛ぶ。出力態様変更指示は、出力モードを有する情報である。
【０１６２】
（ステップＳ８２１）出力部７０４は、ステップＳ８２０で受け付けた出力態様変更指示が有する出力モードを示す情報を書き込み、出力モードを設定する。ステップＳ２０１に戻る。
【０１６３】
（ステップＳ８２２）入力受付部７０１は、終了指示を受け付けたか否かを判断する。終了指示を受け付ければ処理を終了し、終了指示を受け付なければステップＳ８０１に戻る。
【０１６４】
なお、図８のフローチャートにおいて、本発音評定装置は、出力モードの設定機能を有しなくても良い。
【０１６５】
以下、本実施の形態における発音評定装置の具体的な動作について説明する。本具体例において、発音評定装置が語学学習に利用される場合について説明する。
【０１６６】
まず、本発音評定装置において、図示しない手段により、ネイティブ発音の音声データベースからネイティブ発音の音韻ＨＭＭを学習しておく。ここで、音韻の種類数をＬとし、ｌ番目の音韻に対するＨＭＭをλｌとする。なお、かかる学習の処理については、公知技術であるので、詳細な説明は省略する。
【０１６７】
そして、学習したＬ種類の音韻ＨＭＭから、学習対象の単語や文章などの音声を構成する１以上の音素に対応するＨＭＭを取得し、当該取得した１以上のＨＭＭを、音素の順序で連結した教師データを構成する。そして、当該教師データを教師データ格納部７０２に保持しておく。ここでは、例えば、比較される対象の音声は、単語「ｒｉｇｈｔ」の音声である。
【０１６８】
次に、学習者が、語学学習の開始の指示である動作開始指示を入力する。かかる指示は、例えば、マウスで所定のボタンを押下することによりなされる。
【０１６９】
次に、学習者は、学習対象の音声「ｒｉｇｈｔ」を発音する。そして、音声処理装置２１の音声受付部１１０１は、学習者が発音した音声の入力を受け付ける。
【０１７０】
次に、音声処理装置２１は、音声受付部１１０１が受け付けた音声を、短時間フレームに区分する。なお、フレームの間隔は、予め決められている、とする。
【０１７１】
そして、音声処理装置２１は、区分した音声データを、スペクトル分析し、実施の形態３で説明した処理と、デルタパラメータ、デルタデルタパラメータ、パワー、デルタパワー、デルタデルタパワーを算出する処理により、特徴ベクトル系列「Ｏ＝ｏ１，ｏ２，・・・，ｏＴ」を算出する。なお、Ｔは、系列長である。ここで、特徴ベクトル系列は、各フレームの特徴ベクトルの集合である。また、スペクトル分析において、ケプストラム平均除去を施すことは好適である。
【０１７２】
次に、発音区間フレーム音韻確率値取得手段７０３２は、各フレームの各状態の事後確率（確率値）を算出する。つまり、発音区間フレーム音韻確率値取得手段７０３２は、下記の数式３２の情報を記憶媒体から読み出し、実行する。
【数３２】
2008139538.tif 000027
【０１７３】
なお、数式３２において、「αｔ（ｊ）」[βｔ（ｊ）]は、全部のＨＭＭを用いて、ｆｏｒｗａｒｄ−ｂａｃｋｗａｒｄアルゴリズムにより算出される。ｆｏｒｗａｒｄ−ｂａｃｋｗａｒｄアルゴリズムは、公知のアルゴリズムであるので、詳細な説明を省略する。また、「αｔ（ｊ）」は前向き尤度、[βｔ（ｊ）]は後向き尤度である。
【０１７４】
また、数式３２において、Ｎは、全ＨＭＭにわたる状態の総数を示す。
【０１７５】
次に、最適状態決定手段７０３１は、取得した特徴ベクトル系列を構成する各特徴ベクトルｏｔに基づいて、所定のフレームの最適状態（特徴ベクトルｏｔに対する最適状態）を決定する。最適状態決定手段７０３１が最適状態を決定するアルゴリズムは、例えば、Ｖｉｔｅｒｂｉアルゴリズムによる。かかる場合、最適状態決定手段７０３１は、上記で連結したＨＭＭを用いて最適状態を決定する。つまり、最適状態決定手段７０３１は、最適状態系列を得る。なお、各フレームの各状態の事後確率（確率値）の算出と、最適状態の決定の順序は問わない。
【０１７６】
次に、発音区間フレーム音韻確率値取得手段７０３２は、発音区間ごとに、当該発音区間に含まれる各フレームの最適状態（ｑｔ＊）を含む音韻の全ての確率値を取得する。そして、評定値算出手段７０３３は、各フレームの最適状態を含む音韻の全ての確率値の総和を、フレーム毎に算出する。具体的には、評定値算出手段７０３３は、数式３３により評定値を算出する。
【数３３】
2008139538.tif 000028
【０１７７】
なお、数式３３において、Ｐ（ｉ）は、ｉ番目の状態を有しているＨＭＭの持つ全状態の集合を示す。
【０１７８】
そして、評定値算出手段７０３３は、各フレームの最適状態を含む音韻の全ての確率値の総和を、フレーム毎に算出する。そして、評定値算出手段７０３３は、フレーム毎に算出された確率値の総和を、発音区間毎に時間平均し、発音区間毎の評定値を算出する。また、数式３４において、Τ（ｑｔ＊）は、状態ｑｔ＊を含むＨＭＭが含まれる評定対象の発音区間である。｜Τ（ｑｔ＊）｜は、Τ（ｑｔ＊）の区間長である。また、τは、発音区間Τ（ｑｔ＊）内のある時刻を示す。そして、数式３４の分子は、Τ（ｑｔ＊）内において、時刻τのにおけるｐ−ＤＡＰ（τ）の総和をとったものである。数式３４において、ｔ−ｐ−ＤＡＰは、最適状態を含む音韻の中の全状態の確率値を発音区間で評価して、算出される評定値である。
【数３４】
2008139538.tif 000029
【０１７９】
そして、出力部７０４は、算出した発音区間ごと（ここでは、音素毎）の評定値を、順次出力する。かかる出力例は、図９である。
【０１８０】
以上、本実施の形態によれば、ユーザが入力した発音を、教師データに対して、如何に似ているかを示す類似度（評定値）を、少ないメモリで、少ない計算負荷で算出し、出力できる。それは、少ないメモリで、少ない計算負荷で、実数の逆数が計算できるためである。
【０１８１】
なお、本実施の形態によれば、発音評定をｔ−ｐ−ＤＡＰという事後確率を用いて行ったが、発音評定のアルゴリズムは問わない。例えば、特許文献２に記載されているＤＡＰ、ｔ−ＤＡＰ、ｐ−ＤＡＰなどの他の評価方法により、発音評定を行っても良い。
【０１８２】
さらに、本実施の形態における発音評定装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータに、比較される対象の音声に関するデータであり、1以上の音韻毎のデータである教師データを１以上格納しており、音声処理装置２１に、音声を受け付け、当該音声をフレーム毎の音声データに区分し、当該区分されたフレーム毎の音声データである特徴値（ｃｎ（ｎ＝０，１，２，・・・，ｗ））を取得させ、前記教師データと前記特徴値を用いて、音声処理装置２１が受け付けた音声の評定を行う評定ステップと、前記評定ステップにおける評定結果を出力する出力ステップを実行させるためのプログラム、である。
【０１８３】
また、上記プログラムにおいて、前記教師データは、音韻毎の隠れマルコフモデル（ＨＭＭ）を連結したＨＭＭに基づくデータであり、前記評定ステップは、前記1以上のフレーム音声データの最適状態を決定する最適状態決定サブステップと、前記最適状態決定サブステップで決定した各フレームの最適状態を有する音韻全体の状態における１以上の確率値を、発音区間毎に取得する発音区間フレーム音韻確率値取得サブステップと、前記発音区間フレーム音韻確率値取得サブステップで取得した１以上の発音区間毎の１以上の確率値をパラメータとして音声の評定値を算出する評定値算出サブステップを具備するプログラム、である。
【０１８４】
また、上記各実施の形態において、各処理（各機能）は、単一の装置（システム）によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【０１８５】
また、図１０は、本明細書で述べたプログラムを実行して、上述した種々の実施の形態の演算処理装置や音声処理装置を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図１０は、このコンピュータシステム３４０の概観図であり、図１１は、コンピュータシステム３４０のブロック図である。
【０１８６】
図１０において、コンピュータシステム３４０は、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ）ドライブ、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）ドライブを含むコンピュータ３４１と、キーボード３４２と、マウス３４３と、モニタ３４４と、マイク３４５とを含む。
【０１８７】
図１１において、コンピュータ３４１は、ＦＤドライブ３４１１、ＣＤ−ＲＯＭドライブ３４１２に加えて、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３４１３と、ＣＤ−ＲＯＭドライブ３４１２及びＦＤドライブ３４１１に接続されたバス３４１４と、ブートアッププログラム等のプログラムを記憶するためのＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）３４１５と、ＣＰＵ３４１３に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）３４１６と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク３４１７とを含む。ここでは、図示しないが、コンピュータ３４１は、さらに、ＬＡＮへの接続を提供するネットワークカードを含んでも良い。
【０１８８】
コンピュータシステム３４０に、上述した実施の形態の演算処理装置や音声処理装置の機能を実行させるプログラムは、ＣＤ−ＲＯＭ３５０１、またはＦＤ３５０２に記憶されて、ＣＤ−ＲＯＭドライブ３４１２またはＦＤドライブ３４１１に挿入され、さらにハードディスク３４１７に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ３４１に送信され、ハードディスク３４１７に記憶されても良い。プログラムは実行の際にＲＡＭ３４１６にロードされる。プログラムは、ＣＤ−ＲＯＭ３５０１、ＦＤ３５０２またはネットワークから直接、ロードされても良い。
【０１８９】
プログラムは、コンピュータ３４１に、上述した実施の形態の情報処理装置の機能を実行させるオペレーティングシステム（ＯＳ）、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能（モジュール）を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム３４０がどのように動作するかは周知であり、詳細な説明は省略する。
【０１９０】
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【０１９１】
また、上記各実施の形態において、一の装置に存在する２以上の通信手段（情報送信部など）は、物理的に一の媒体で実現されても良いことは言うまでもない。
【０１９２】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【０１９３】
以上のように、本発明にかかる演算処理装置は、少ないメモリで、少ない計算負荷で、実数の逆数が計算できる、という効果を有し、数値演算処理装置等として有用である。
【図面の簡単な説明】
【０１９４】
【図１】実施の形態１における演算処理装置のブロック図
【図２】同演算処理装置の動作について説明するフローチャート
【図３】実施の形態２における音声処理装置のブロック図
【図４】同音声処理装置の動作について説明するフローチャート
【図５】実施の形態３における音声処理装置のブロック図
【図６】同音声処理装置の動作について説明するフローチャート
【図７】実施の形態４における発音評定装置のブロック図
【図８】同発音評定装置の動作について説明するフローチャート
【図９】同発音評定結果の出力例を示す図
【図１０】同演算処理装置や音声処理装置を実現するコンピュータの外観図
【図１１】同演算処理装置や音声処理装置を実現するコンピュータシステムのブロック図
【符号の説明】
【０１９５】
１０  演算処理装置
１１、２１  音声処理装置
１０１  最小値格納部
１０２  最高次数格納部
１０３  受付部
１０４  第一判断部
１０５  第一正負逆転部
１０６  自然数取得部
１０７  第一乗算部
１０８  整数取得部
１０９  差演算部
１１０  第二判断部
１１１  第一演算部
１１２  第二乗算部
１１３  第二正負逆転部
１１４，７０４  出力部
７０１  入力受付部
７０２  教師データ格納部
７０３  評定部
１１０１  音声受付部
１１０２  音声離散時間信号取得部
１１０３  短区間切出部
１１０４  高域強調処理部
１１０５  窓操作部
１１０６  自己相関関数値算出部
１１０７  第一逆数取得部
１１０８  レビンソン・ダービン初期化処理部
１１０９  レビンソン・ダービン演算部
１１１０  線形予測係数出力部
２１０１  予測残差取得部
２１０２  第一特徴値算出部
２１０３  線形予測係数取得部
２１０４  第二特徴値算出部
２１０５  第三特徴値算出部
２１０６  第四特徴値算出部
２１０７  特徴ベクトル出力部
７０３１  最適状態決定手段
７０３２  発音区間フレーム音韻確率値取得手段
７０３３  評定値算出手段
１１０９１  第二逆数取得部
【図１】
2008139538.tif 000037
【図２】
2008139538.tif 000038
【図３】
2008139538.tif 000039
【図４】
2008139538.tif 000040
【図５】
2008139538.tif 000041
【図６】
2008139538.tif 000042
【図７】
2008139538.tif 000043
【図８】
2008139538.tif 000044
【図１０】
2008139538.tif 000045
【図１１】
2008139538.tif 000046
【図９】
2008139538.tif 000047