(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024129002
(43)【公開日】2024-09-26
(54)【発明の名称】ディープニューラルネットワークを用いた適応ブロックスイッチング
(51)【国際特許分類】
G10L 19/022 20130101AFI20240918BHJP
G10L 25/30 20130101ALI20240918BHJP
【FI】
G10L19/022
G10L25/30
【審査請求】未請求
【請求項の数】1
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024075696
(22)【出願日】2024-05-08
(62)【分割の表示】P 2023522982の分割
【原出願日】2021-10-15
(31)【優先権主張番号】63/092,685
(32)【優先日】2020-10-16
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】20206462.2
(32)【優先日】2020-11-09
(33)【優先権主張国・地域又は機関】EP
(71)【出願人】
【識別番号】507236292
【氏名又は名称】ドルビー ラボラトリーズ ライセンシング コーポレイション
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ジョウ,ツォーン
(72)【発明者】
【氏名】ダヴィッドソン,グラント エー.
(72)【発明者】
【氏名】ヴィントン,マーク エス.
(57)【要約】 (修正有)
【課題】ニューラルネットワークを用いて、適応ブロック長メディア信号、特に適応ブロック長汎用オーディオ信号の変換係数を予測するための方法を提供する。
【解決手段】方法は、量子化された変換係数を含むフレームを受信するステップと、第2の数の変換係数をもつ少なくとも1つのブロックを、第2の数より大きい第1の数の変換係数をもつ変換済みブロックに変換するステップと、変換済みブロックの量子化された変換係数を表す情報を用いて条件付けニューラルネットワークを条件付けするステップと、条件付けニューラルネットワークの少なくとも1つの出力変数を使用してメインニューラルネットワークを条件付けするステップと、メインニューラルネットワークの少なくとも1つの出力変数を使用して、少なくとも1つの変換係数を予測するステップと、を含む。
【選択図】
図4
【特許請求の範囲】
【請求項1】
コンピュータ実装ニューラルネットワークシステムを用いて、適応ブロック長メディア信号の周波数コンテンツを表す少なくとも1つの変換係数を予測するための方法であって、
1つ又は複数のブロックを含むフレームを受信するステップであって、前記フレームの各ブロックは、前記メディア信号の部分的な時間セグメントを表す量子化された変換係数のセットを含む、ステップと、
前記フレームの各ブロックについての量子化された変換係数の数を示すブロック長情報を受信するステップであって、前記量子化された変換係数の数は、第1の数又は第2の数のうちの1つであり、前記第1の数は、前記第2の数より大きい、ステップと、
前記フレームの少なくとも第1のブロックが前記第2の数の量子化された変換係数をもつと決定するステップと、
少なくとも前記第1のブロックを、前記第1の数の量子化された変換係数をもつ変換済みブロックに変換するステップと、
少なくとも1つの条件付け変数が与えられると、少なくとも1つの出力変数を予測するようにトレーニングされたメインニューラルネットワークを条件付けするステップであって、前記少なくとも1つの条件付け変数は、条件付け情報に基づき、前記条件付け情報は、前記変換済みブロックの表現と、前記第1のブロックについてのブロック長情報の表現とを含む、ステップと、
前記少なくとも1つの出力変数から少なくとも1つの予測された変換係数を提供するように構成された出力段に、前記少なくとも1つの出力変数を提供するステップと
を含む方法。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
本出願は、2020年10月16日に出願された米国仮特許出願第63/092,685号及び2020年11月9日に出願された欧州特許出願第20206462.2号の優先権の利益を主張し、これらは参照により本明細書に組み込まれる。
【0002】
[発明の属する技術分野]
本発明は、生成モデルを、メディア信号のための既存の高効率コーディング方式と組み合わせることに関する。具体的には、本発明は、トレーニングされたニューラルネットワークを用いて適応ブロック長メディア信号の変換係数を予測するための方法に関する。
【背景技術】
【0003】
低レート適応ブロック長符号化及び復号では、エンコーダは、周波数と時間分解能との間のトレードオフを最適化するように構成される。これは、エンコーダが、信号サンプルブロックごとに変換長を選択することによって達成され得る。一般に、エンコーダは、ゆっくりと発展する時間特性をもつ信号を表す信号サンプルブロックに対しては、より多くの数の変換係数をもつ長いブロックを選択し、急速に発展する時間特性をもつ信号を表す信号サンプルブロックに対しては、より少ない数の変換係数をそれぞれがもつ短いブロックのセットを選択する。
【0004】
適応ブロック長信号を符号化及び復号することに伴う問題は、復号されるべきブロックが、メディア信号の様々な持続時間にわたってメディア信号の周波数コンテンツを表す様々な数の変換係を含み得ることにある。従って、適応ブロック長は、固定ブロック長信号のために開発された従来の復号方式と互換性がない。また、信号サンプルブロックを形成するためにエンコーダにおいてサンプリングされ、様々な数の変換係数のブロックに適応的に分割された元のメディア信号のより正確な表現をデコーダにおいて得ることが有益であろう。
【発明の概要】
【0005】
従って、上記に基づき、本発明の目的は、ニューラルネットワークを用いて、適応ブロック長メディア信号、特に適応ブロック長汎用オーディオ信号の変換係数を予測するための方法を提供することである。
【0006】
本発明の第1の態様によれば、コンピュータ実装ニューラルネットワークシステムを用いて、適応ブロック長メディア信号の周波数コンテンツを表す変換係数を予測するための方法が提供される。方法は、フレームのブロックを受信するステップであって、フレームの各ブロックが、メディア信号の部分的な時間セグメントを表す少なくとも1つの量子化された変換係数(又は量子化された変換係数のセット)を含む、ステップと、フレームの各ブロックについての量子化された変換係数の数を示すブロック長情報を受信するステップであって、量子化された変換係数の数は、第1の数又は第2の数のうちの1つであり、第1の数は、第2の数より大きい、ステップと、フレームの少なくとも第1のブロックが第2の数の量子化された変換係数をもつと決定するステップと、少なくとも第1のブロックを、第1の数の量子化された変換係数をもつ変換済みブロックに変換するステップと、少なくとも1つの条件付け変数(conditioning variable)が与えられると、少なくとも1つの出力変数を予測するようにトレーニングされたメインニューラルネットワークを条件付けするステップであって、少なくとも1つの条件付け変数は、条件付け情報に基づき、条件付け情報(conditioning information)は、変換済みブロックの表現と、第1のブロックについてのブロック長情報の表現とを含む、ステップと、少なくとも1つの出力変数から少なくとも1つの予測された変換係数を提供するように構成された出力段(出力ニューラルネットワーク)に、少なくとも1つの出力変数を提供するステップとを含む。
【0007】
量子化された変換係数の代替として、変換係数が歪められたり損なわれたりし得る。出力段(出力ニューラルネットワーク)によって出力される変換係数は、それらが変換係数の元のセットに酷似しているという意味で、及び/又は時間領域に逆変換された強化された変換係数が、量子化された変換係数によって記述される時間領域メディア信号と比較してより高品質のメディア信号として知覚されるメディア信号を記述するという意味で、強化される。更に、本明細書で言及されるフレームは、1つ又は複数のブロック(例えば、ブロックのセット)を含み得る。
【0008】
本発明は、少なくとも部分的には、(短い)第1のブロックを、第1の数の変換係数をもつ(長い)変換済みブロックに変換することによって、トレーニングされたメインニューラルネットワークの生成特性が、可変ブロックスイッチング復号に導入され得るという理解に基づく。ニューラルネットワークは、それらの出力層において固定された次元を有するので、適応長ブロックと互換性がない。量子化された変換係数の第1のブロックを変換済みブロックに変換し、変換済みブロックの表現とブロック長情報の表現とを使用してメインニューラルネットワークを条件付けすることによって、ニューラルネットワークは、ブロック長に基づく動的な方法で少なくとも1つの(強化された又は非量子化)変換係数を予測し得る。すなわち、ブロック長情報の表現が(少なくとも1つの条件付け変数が基づく)条件付け情報に含まれるので、メインニューラルネットワークは、第1の数の変換係数を含むように変換されたブロックに適切に応答するようにトレーニングされることになる。
【0009】
追加的に、フレームのブロックが第1の数の量子化された変換係数を含むことが更に決定され得る。そのような(長い)ブロックは、変換済みブロックに変換されなくてもよく、代わりに、第1の数の量子化された変換係数をもつブロックの表現が、条件付け情報に含まれる。長いブロックを変換しないことに加えて、長いブロックは、決定された短いブロックと同様に扱われ得る。出力段によって出力される変換係数は、第1の数の変換係数をもつ量子化された変換係数ブロック、又は第1の数の量子化された変換係数の変換済みブロックのいずれかを表す第1の数の変換係数を含み、これは、第2の数の変換係数をもつ少なくとも1つの量子化された変換係数ブロックを表す。
【0010】
メインニューラルネットワークは、可変長ブロックの各々について少なくとも1つの変換係数を順に予測し得るので、メインニューラルネットワークは、時間依存性及び/又は周波数依存性を考慮に入れる。メインニューラルネットワークは、前の入力が現在の処理に影響を与えるように、及び現在の(強化された)少なくとも1つの変換係数の予測が前の変換係数の影響を受けるように、メモリ機能を有し得る。
【0011】
適応長ブロックは、周波数と時間との間のトレードオフを表す。より長いブロックは、より多くの変換係数を含み、メディア信号のより長い持続期間を表し、より短いブロックは、より少ない変換係数を含み、メディア信号のより短い持続期間を表す。
【0012】
本発明の第2の態様によれば、適応ブロック長メディア信号の少なくとも1つの変換係数を予測するようにコンピュータ実装ニューラルネットワークシステムをトレーニングするための少なくとも1つのトレーニングブロックを取得するための方法が提供される。方法は、メディア信号の周波数コンテンツを表すいくつかの数の変換係数を各々が含む変換ブロックのセットを取得するステップであって、各ブロック中の変換係数の数は、第1の数又は第2の数であり、第1の数は、第2の数より大きい、ステップと、第1のブロックが第2の数の変換係数を含むと決定するステップと、第1のブロックを、第1の数の変換係数をもつ変換済みブロックに変換するステップと、変換済みブロックからターゲット予測ブロックを取得するステップと、変換済みブロックを量子化するステップと、量子化された変換済みブロックからトレーニングブロックを取得するステップとを含む。
【0013】
変換ブロックの取得されたセットは更に、関連付けられた時間領域窓関数(短い、長い、ブリッジイン又はブリッジアウト)のシーケンスを表し得る。
【0014】
本発明の第3の態様によれば、適応ブロック長メディア信号の周波数コンテンツを表す少なくとも1つの変換係数を予測するためのコンピュータ実装ニューラルネットワークシステムが提供される。ニューラルネットワークシステムは、メディア信号の部分的な時間セグメントを表す量子化された変換係数のセットを含むフレームを受信することと、フレーム中の各ブロックについての量子化された変換係数の数を示すブロック長情報を受信することであって、量子化された変換係数の数は、第1の数又は第2の数のうちの1つであり、第1の数は、第2の数より大きい、受信することと、少なくとも第1のブロックが第2の数の変換係数をもつと決定することと、少なくとも第1のブロックを、第1の数の量子化された変換係数をもつ変換済みブロックに変換することとを行うように構成された適応ブロック前処理ユニットを備える。ニューラルネットワークシステムは、メインニューラルネットワークであって、メインニューラルネットワークは、条件付け情報に基づいて少なくとも1つの条件付け変数が与えられると、少なくとも1つの出力変数を予測するようにトレーニングされ、条件付け情報は、変換済みブロックの表現と、第1のブロックについてのブロック長情報の表現とを含む、メインニューラルネットワークと、少なくとも1つの出力変数から少なくとも1つの予測された変換係数を提供するように構成された出力段とを更に備える。
【0015】
いくつかの実装形態では、上記で説明したニューラルネットワークシステムは、ターゲット予測ブロックのセットとトレーニングブロックのセットとを使用することによってトレーニングされている。トレーニングブロックのセットは、ターゲット予測ブロックの損なわれた表現であり、トレーニングブロックは、第1の数の変換係数をもつ少なくとも1つのトレーニングブロックと、第2の数の変換係数をもつ少なくとも1つのトレーニングブロックとを備える。トレーニングブロックのセットは、ニューラルネットワークシステムの適応ブロック前処理ユニットに提供され、トレーニングブロックのセットからの予測ブロックのセットが、ニューラルネットワークシステムの出力段から取得される。ターゲット予測ブロックのセットに対する予測ブロックの尺度が計算され、ニューラルネットワークシステムの重みが、尺度を減少させるように修正される。
【0016】
予測ブロックの尺度に応答してニューラルネットワークシステムの重みを修正することによって、トレーニングで、ニューラルネットワークシステムは、少なくとも1つの量子化された変換係数から少なくとも1つの変換係数を予測する(生成する)ことを学習するようになる。トレーニングにより、ニューラルネットワークシステムは、短いブロック(複数可)を表す少なくとも1つの条件付け変数を適切に認識し、結果として得られる少なくとも1つの予測された変換係数がメディア信号の少なくとも1つの変換係数に酷似するような方法でそれを処理することを学習するようになる。
【0017】
尺度を取得することに基づいて、ニューラルネットワークシステムは、満足のいく小さい尺度が達成されるまで、各ニューラルネットワークのパラメータ(例えば、重み)を修正することによって、好ましくは反復的に、トレーニングされ得ることを理解されたい。
【0018】
第2及び第3の態様による発明は、第1の態様による発明と同じ又は同等の実施形態及び利点を特徴とする。更に、方法に関して説明された任意の機能は、コンピュータプログラム製品においてそのような機能を実行するためのシステム又はコードにおいて対応する構造的特徴を有し得る。
【0019】
固定ブロック長及び適応ブロック長を有する基準メディア信号を符号化及び復号するために実験を行った。固定ブロック長の場合は、固定長ニューラルネットワークシステムがデコーダに実装され、適応ブロック長の場合は、本発明の実装形態によるニューラルネットワークシステムがデコーダに実装された。固定ブロック長符号化は、256MDCT係数ブロックを使用し、適応ブロック長符号化は、適応256/128MDCT係数ブロックを使用した。復号された信号を比較すると、デコーダにおいて本発明のニューラルネットワークシステムを用いた適応ブロック長スイッチングは、固定ブロック長の対応物と比較して、プリエコー歪みが低減されたことを示した。
【図面の簡単な説明】
【0020】
本発明は、本発明の現在好ましい実施形態を示す添付の図面を参照してより詳細に説明される。
【
図1】本発明の実施形態によるニューラルネットワークシステムを実装する適応ブロック長エンコーダ及びデコーダを示す。
【
図2】本発明の実施形態によるニューラルネットワークシステムを示す。
【
図4】本発明の一実施形態による、量子化された変換係数から少なくとも1つの変換係数を予測するための方法を示すフローチャートを示す。
【
図5】本発明の実施形態によるニューラルネットワークシステムをトレーニングするためのトレーニングブロックを取得するための方法を示すフローチャートを示す。
【
図6】本発明の実施形態によるニューラルネットワークシステムをトレーニングするためのトレーニングブロックを取得するための方法を示すフローチャートを示す。
【発明を実施するための形態】
【0021】
図1は、エンコーダ1及びデコーダ2を含む適応ブロック長エンコーダ/デコーダシステムを示す。メディア信号は、過渡検出器101において、入力ポートで受信される。メディア信号は、一連の時間領域フレームに分割され得、複数の時間領域セグメントに細分され得、各セグメントは、いくつかの数のメディア信号サンプルを含む。例えば、時間領域フレームは、16000個の信号サンプルを含み、4000個のサンプルからなる4つのセグメントに分割される。時間領域フレーム及びセグメント内の信号サンプルの数(そのため、時間領域フレーム内のセグメントの数も)は例示にすぎず、任意の数であってもよい。過渡検出器101は、各セグメントについて、変換長を選択することによって周波数と時間分解能との間のトレードオフを最適化するように構成される。一般に、過渡検出器101は、ゆっくりと発展する時間特性又は静止した時間特性をもつ信号を含むセグメントに対しては長い変換長を選択し、急速に発展する時間特性をもつ信号を含むセグメントに対してはより短い変換長を選択する。短い信号クラスと長い信号クラスの両方について「知覚コーディング利得」を最適化することによって、この手法は、時不変変換長を用いたコーディングに勝る基本的な利点を提供する。
【0022】
メディア信号のセグメントの時間特性に応じて、過渡検出器101は、セグメントが、第1の数の変換係数をもつ変換領域ブロック(ゆっくりと発展する時間的信号セグメントについて)又はそれぞれが第2の数の変換係数を含む複数の変換領域ブロック(急速に発展する時間的信号セグメントについて)で表されるべきであるという要求を選択し得、ここで、第1の数は、第2の数より大きい。例えば、過渡検出器101は、ゆっくり発展するセグメントが256の変換係数Xkで表され、急速に発展するセグメントが128の変換係数Xkの2つのセット(変換領域ブロック)又は64の変換係数Xkの4つのセットで表されることを要求し得る。選択される変換係数の数は、含まれる例に限定されず、任意の数が選択され得る。過渡検出器101は、ブロック長のセットの中から変換係数の数を要求し得、ブロック長のセットは、256/128などの少なくとも2つの長さを含む。いくつかの実装形態では、ブロック長のセットは、256/128/64など、少なくとも3つ以上の長さを含み、過渡検出器101は、その中から、ブロックに適した長さを選択し得る。例えば、過渡検出器101は、セグメントが様々な長さの短いブロックの組合せで表されることを要求し得る。例えば、ゆっくりと発展するセグメントは、256の変換係数Xkで表され、後続の急速に発展するセグメントは、128の変換係数Xkをもつ1つのブロック及び64の変換係数Xkをもつ2つのブロックで表される。過渡検出器101は、時間領域セグメントが表されるべきである変換領域ブロックの要求された数(及び/又は、各ブロックについての変換係数Xkの数)を表すブロック長情報を生成する。ブロック長情報は、デコーダ2に送信される。過渡検出器101は、ブロック長情報を変換ユニット102に渡す。
【0023】
変換ユニット102は、ブロック長情報に従ってセグメントを変換し、変換係数Xkを含む適応長変換ブロックを量子化器103に出力する。上述の例の場合、4つの4000個のサンプルのセグメントに分割された16000個のサンプルの時間フレームは、それぞれ256、256、128、128、及び256の変換係数Xkをもつ一連の変換ブロックに変換される。次いで、これらの変換ブロックは、エンコーダ1及び/又はデコーダ2において変換領域フレーム(フレーム)を形成し得る。言い換えると、フレームは、1つ又は複数の変換ブロック及び/又は1つ又は複数のセグメントのセットと呼ばれることがある。エンコーダ1の一部及びデコーダ2において、変換ブロックが属するフレームは、それらのそれぞれの時間又は変換領域フレームに関わらず変換ブロックを連続して扱うのに十分であるので、明示的に示されないか、又は考慮されなくてもよい。
【0024】
受信されたメディア信号は、マスキング閾値を計算する知覚モデル111によって更に受信される。マスキング閾値は、ビット割当てユニット112に渡される。
【0025】
ビット割当てユニット112において、量子化される予定の変換係数に対するビット割当ては、知覚モデル111から受信された、受信された知覚マスキング閾値情報に基づいて割り当てられる。ビット割当てユニット112は、量子化雑音を低減又は最小化するようにビットを割り当て得る。ビット割当てユニット112は、ビット割当て情報を量子化器103に渡す。
【0026】
量子化器103は、受信されたビット割当て情報に従って各変換係数にビットを割り当てることによって、適応ブロック長ブロックの中の各ブロックの変換係数X
kを量子化して、量子化された変換係数
【数1】
ブロックを形成する。量子化器103は、量子化された変換係数(X
~
k)を含む適応ブロック長ブロックをデコーダ2に送信する。
【0027】
デコーダ2において、ニューラルネットワーク(NN)システム201は、フレームを受信し、フレームの各ブロックは、エンコーダ1の量子化器103からの少なくとも1つの量子化された変換係数X
~
kと、エンコーダの過渡検出器101からのブロック長情報とを含む。ニューラルネットワークシステム201は、メインニューラルネットワークと、量子化された変換係数X
~
kから少なくとも1つの変換係数(少なくとも1つの予測された変換係数
【数2】
)を予測するようにトレーニングされた出力段(例えば、出力ニューラルネットワーク)とを備える。ニューラルネットワークシステム201の変換段は、第2の数の量子化された変換係数X
~
kをもつブロックを、第1の数の量子化された変換係数X
~
kを含む変換済みブロックに変換する。いくつかの実装形態では、変換段ニューラルネットワークシステム201は、第1の数の量子化された変換係数X
~
kをもつブロックを単に受け渡す。従って、ニューラルネットワークシステム201の出力段は、(例えば、それぞれが第1の数の予測された変換係数X
~
kを含む)静的長さのブロックのシーケンスを出力し得、ここにおいて、いくつかのブロックは、同じ長さの量子化されたブロックを表し、いくつかのブロックは、少なくとも1つの、いくつかの実装形態では2つ以上の、異なる(より短い)長さの短いブロックを表す。
【0028】
少なくとも1つの予測された変換係数X―
kは、各変換領域ブロックの少なくとも1つの予測された変換係数X―
kを時間領域セグメント(すなわち、予測された時間領域セグメント)に変換するように構成された逆変換ユニット202で受信される。逆変換ユニット202は、いくつかの実装形態では、エンコーダ1の過渡検出器101からブロック長情報を受信し得る。
【0029】
上記で説明したように、逆変換ユニット202にブロックとして到着する少なくとも1つの予測された変換係数X―
kは、いくつかのブロックが、元の(変換前の)より短い長さの1つ又は複数の量子化されたブロックを表すにもかかわらず、静的な所定の長さのものであり得る。逆変換ユニット202は、この元の変換領域ブロック長の情報をブロック長情報の形で受信するので、逆変換ユニット202は、必要な逆変換前処理ステップを行うことができる。例えば、予測された長いブロックが、変換ユニットにおいて変換済みブロックを形成するためにアップサンプリングされた元の短いブロックに関連付けられることに応答して、逆変換ユニット202は、短いブロックを時間領域に逆変換するより前に、予測された長いブロックを予測された短いブロックにダウンサンプリングし得る。別の例では、量子化された変換係数X~
kをもつ少なくとも2つの短いブロックは、変換ユニットにおいて単一の変換済みブロックに変換され、少なくとも1つの予測された変換係数X―
kの単一の長いブロックとしてニューラルネットワークシステムによって予測される。そのような場合、逆変換ユニット202は、予測された長いブロックが実際には(組み合わされている)少なくとも2つの短いブロックに基づく予測であることをブロック長情報から決定し、それに応答して、エンコーダ1中の過渡検出器101によって決定されたものと同じ長さの予測ブロックを取得するために、分割すること、又は逆変換プロシージャ、すなわち、ニューラルネットワークシステム201において実行された変換の逆を実行することなど、逆変換前処理ステップを実行し得る。逆変換前処理ステップは、適応ブロック長メディア信号に対する何らかの既存のコーディング方式のための逆変換ユニットに先行する別個の(図示せず)ユニットによって実行され得る。例えば、ニューラルネットワークシステムは(逆変換前処理と共に)、例えば、AC-4変換係数を洗練するために任意の既存のコーデックと共に実装されてもよいし、それを、ニューラルネットワークシステム201による復号のために設計された新たなコーデックと共に使ってもよい。
【0030】
更なる実装形態では、逆変換ユニット202は、例えば、予測ブロックのセットが静的長さのメディア信号からのものである場合、各予測ブロック(静的長さのものである)を時間領域に変換する。そのような実装形態では、逆変換ユニットは、ブロック長情報を考慮する必要がなく、ニューラルネットワークシステムは、適応ブロックスイッチングメディア信号を静的ブロック長メディア信号に効果的に変換する。ニューラルネットワークシステム201は、様々な長さのブロックを受信し、固定長ブロックを出力するようにトレーニングされる。逆変換ユニット202は、静的長さのブロックを時間領域メディア信号に変換する。
【0031】
逆変換ユニット202は、再生デバイス(図示せず)による再生に適した時間領域メディア信号(又は時間領域メディア信号ブロックのシーケンス)を出力する。ニューラルネットワークシステム201は、ブロック中の少なくとも1つの量子化された変換係数を受信し、少なくとも1つの変換係数を予測するように構成される。
【0032】
図2を参照すると、
図1のコンピュータ実装ニューラルネットワークシステム201の一実施形態がより詳細に示されている。ニューラルネットワークシステム201は、メディア信号の部分的な時間セグメントの周波数コンテンツを表す量子化された変換係数X
~
kのセットをそれぞれ含む適応長ブロック20のセットと、フレーム20中の各ブロックについての量子化された変換係数の数を示すブロック長情報21とを受信するように構成され、量子化された変換係数の数は、第1の数又は第2の数のうちの1つである。コンピュータ実装ニューラルネットワークシステム201は、少なくとも第1のブロックが第2の数の量子化された変換係数をもつと決定し、少なくとも第1のブロックを、第1の数の量子化された変換係数をもつ変換済みブロックに変換するように構成された変換段11を更に備える。フレーム20から変換段11へ、フレーム20が、第2の数の量子化された変換係数をもつ少なくとも1つのブロックを有する場合、変換段は、出力フレーム20’を生成し、出力フレーム中の出力ブロックは全て、第1の数の量子化された変換係数をもつ。
【0033】
ニューラルネットワークシステム201は、フレーム20中の各ブロックについての量子化された変換係数の数を示すブロック長情報21を更に受信する。これにより、ブロック長情報21は、第1又は第2の数の変換係数を含むブロックのシーケンスを示す。ブロック長情報21は、整数又はシンボルのシーケンスであり得、各整数又はシンボルは、ブロックを表し、各整数の値(又はシンボルのタイプ)は、そのブロックの量子化された変換係数X~
kの数を表す。
【0034】
ブロック長情報21は、3つ以上の代替ブロック長を含み得る。いくつかの実装形態では、第2の数の変換係数Xkをもつブロックに先行する第1の数の変換係数Xkをもつブロックは、ブリッジインブロックとしてラベル付けされ得、第2の数の変換係数Xkをもつブロックに後続する第1の数の変換係数Xkをもつブロックは、ブリッジアウトブロックとしてラベル付けされ得る。従って、ブロック長情報21は、4つ(又はそれ以上)の異なる整数のシーケンスであり得、長いブロック(第1の数の変換係数Xk)、短いブロック(第2の数の変換係数Xk)、ブリッジインブロック、及びブリッジアウトブロックの各々に対して1つである。
【0035】
ニューラルネットワークシステム201は、条件付け情報に基づいて少なくとも1つの条件付け変数15を形成し、条件付け情報は、(i)変換済みブロックを表す(又は、第1の数の量子化された変換係数を含むブロックを表す)情報と、(ii)ブロック長情報21を表す情報という少なくとも2つの構成要素を含む。単純なケースでは、変換済みブロックを表す情報は、それ自体が、量子化された変換係数X~
kであり、ブロック長情報表現は、整数である。少なくとも1つの条件付け変数15及びメインニューラルネットワーク16は、各条件付け情報について別個の次元を特徴としてもよいし、各条件付け情報が投影される単一の次元を特徴としてもよい。
【0036】
少なくとも1つの条件付け変数15は、メインニューラルネットワーク16を条件付けするために使用される。メインニューラルネットワーク16は、少なくとも1つの条件付け変数15が与えられると、少なくとも1つの出力変数を予測するようにトレーニングされ、少なくとも1つの出力変数は、メインニューラルネットワーク16から少なくとも1つの出力変数が与えられると、少なくとも1つの変換係数の最終予測を行う(すなわち、少なくとも1つの予測された変換係数X―
kを出力する)ようにトレーニングされた出力ニューラルネットワーク17に提供される。出力ニューラルネットワーク17は、1つ又は複数の隠れ層を備え得る。
【0037】
メインニューラルネットワーク16は、任意のタイプのニューラルネットワーク、例えば、ディープニューラルネットワーク、リカレントニューラルネットワーク、又は任意のニューラルネットワークシステムであり得る。メインニューラルネットワーク16は、回帰モデルであり得る。メディア信号は、オーディオ信号を又はビデオ信号を含む任意のタイプのメディア信号であり得る。メディア信号がオーディオ信号である場合、メインニューラルネットワーク16は、好ましい実施形態では、変換領域における一般的なオーディオ生成モデルとして機能する。メインニューラルネットワーク16は、変換領域で動作するように構成され、少なくとも1つの条件付け変数が与えられると、少なくとも1つの出力変数を予測するようにトレーニングされる。少なくとも1つの出力変数は、隠れ状態と考えられ得、出力ニューラルネットワーク17に提供され、出力ニューラルネットワーク17は、少なくとも1つの出力変数が与えられると、少なくとも1つの予測された変換係数を出力するように構成される(例えば、トレーニングされる)。出力ニューラルネットワーク17は、単一のユニットとして、例えば、メインニューラルネットワーク16の出力段として、又は別個のニューラルネットワークとして、メインニューラルネットワーク16と共に実装され得る。いずれにせよ、出力ニューラルネットワーク17とメインニューラルネットワーク16とは、隠れ状態情報を交換する。従って、少なくとも1つの変換係数X―
kは、量子化された変換係数の表現の時間及び/又は周波数依存性を把握することによって、メインニューラルネットワーク16及び出力ニューラルネットワーク17によって少なくとも1つの量子化された変換係数X~
kから予測される。すなわち、メインニューラルネットワーク16及び出力ニューラルネットワーク17は、メインニューラルネットワーク16によって処理された変換係数の前の表現が現在の少なくとも1つの変換係数の予測に影響を与え得るようにトレーニングされ得る。追加的又は代替的に、メインニューラルネットワーク16及び出力ニューラルネットワーク17は、現在のブロック中の変換係数と過去のブロック中の変換係数との間の相互依存性が考慮されるようにトレーニングされる。変換係数は周波数コンテンツを表すので、メインニューラルネットワーク16及び出力ニューラルネットワーク17は、第1の周波数帯域の(変換係数において表される)周波数コンテンツが第2の周波数帯域の周波数コンテンツにどのように影響を与えるかを学習することによって、少なくとも1つの変換係数を予測するようにトレーニングされ得る。
【0038】
いくつかの実装形態では、ニューラルネットワークシステム201は、変換ユニット11から出力を受信し、ブロック長情報ニューラルネットワーク14からブロック長情報を受信するように接続された条件付けニューラルネットワーク(conditioning neural network)12などの追加のニューラルネットワークを更に備える。条件付けニューラルネットワーク12及びブロック長情報ニューラルネットワーク14は、それぞれの条件付け情報を予測するために使用され、任意のタイプのニューラルネットワーク、例えば、畳み込み層であってよく、一方のタイプを使用することは他方のタイプを必要とするものではない。
【0039】
条件付けニューラルネットワーク12及び/又はブロック長情報ニューラルネットワーク14は、それぞれの少なくとも1つの出力変数を予測するようにトレーニングされ得、ここで、少なくとも1つの条件付け変数15は、その後、それぞれの少なくとも1つの予測された出力変数の和として得られる。更に、メインニューラルネットワーク16に渡される少なくとも1つの条件付け変数15(例えば、条件付けニューラルネットワーク12及びブロック長ニューラルネットワーク14からのそれぞれの少なくとも1つの出力変数の和である)は、隠れニューラルネットワーク層と見なされ得る。メインニューラルネットワーク16の入力次元に一致する隠れ層のための(ハイパーパラメータとして)内部次元(inner dimension)を確立することに加えて、ニューラルネットワークシステム201は、隠れ層の解釈可能性に対するいかなる制約もなしに動作(及びトレーニング)され得る。例えば、量子化された変換係数を表す条件付け情報及びブロック長情報の表現はそれぞれ、内部次元に一致する次元の行列の形の少なくとも1つの出力変数であり得る。少なくとも1つの条件変数15は、少なくとも1つの行列出力変数の和であり得る。更なる例では、行列は、2次元であり、単一の行又は列(すなわちベクトル)を含む。
【0040】
条件付けニューラルネットワーク12は、ブロックの量子化された変換係数X~
kが与えられると、出力フレーム20’からブロックの表現を予測するようにトレーニングされる。表現を予測するようにトレーニングされた条件付けニューラルネットワーク12を用いて、変換済みブロックの量子化された変換係数の表現を予測することによって、メインニューラルネットワーク16による予測を更に容易にする表現が達成され得る。量子化された変換係数X~
kを表す情報に変換する静的な変換関数を量子化された変換係数X~
kに割り当てることとは対照的に、条件付けニューラルネットワーク15は、メインニューラルネットワーク16及び出力ニューラルネットワーク17によって最終予測を行うことを容易にする表現を予測するようにトレーニングされ得る。
【0041】
同様にして、ブロック長情報ニューラルネットワーク14は、ブロック長情報21が与えられると、ブロック長情報の表現を予測するようにトレーニングされる。少なくとも第1のブロックのブロック長情報21が与えられると、ブロック長情報の表現を予測するようにトレーニングされたブロック長ニューラルネットワーク14を実装することによって、メインニューラルネットワーク16を条件付けするために使用される条件付け情報は、メインニューラルネットワーク16及び出力ニューラルネットワーク17による少なくとも1つの変換係数X―
kの予測を容易にする形式で第1のブロックにおいて量子化された変換係数X~
kの数を示す情報を搬送することとなる。一例では、ブロック長ニューラルネットワーク14は、第1の数の変換係数Xkをもつブロックを示すブロック長情報の表現を出力する。従って、メインニューラルネットワーク16は、第1の数の変換係数X~
kをもつ変換済みブロック又は量子化されたブロックからの表現された量子化された変換係数X~
kが1であるとき、異なって条件付けられ、異なって応答することとなる。メインニューラルネットワーク16及び出力ニューラルネットワーク17は、変換ユニット11と共に、量子化された変換係数X~
kを表す情報から少なくとも1つの変換係数を予測するようにトレーニングされているので、少なくとも1つの変換係数の予測は、変換済みブロックが少なくとも第1のブロックから構築された方法にかかわらず達成され得る。
【0042】
例えば、整数のシーケンスからの整数を用いてブロック長ニューラルネットワークを条件付けすることとは対照的に、ニューラルネットワークシステム201のいくつかの実装形態は、ワンホットエンコーダ13を備え、ワンホットエンコーダ13は、ブロック長情報21をワンホットベクトルに変換し、ワンホットベクトルは、ブロック長ニューラルネットワーク14を条件付けするために使用される。ブロック長情報はカテゴリ別であり、各ブロックについて別個の状態(例えば、長い、短い、ブリッジイン又はブリッジアウト)を示す。ワンホット符号化により、これらのカテゴリは、個々のベクトル要素に分けられ、これは、異なる可能な状態を明確に区別することによって、ブロック長ニューラルネットワーク14のトレーニング及び予測を容易にする。例えば、ワンホット符号化は、予測された少なくとも1つの出力変数と、ワンホット(オン状態)ベクトル要素を受信したのがブロック長ニューラルネットワークの入力層のどの入力要素であるかということとの間の強力な空間依存性を促進する。
【0043】
いくつかの実装形態では、ニューラルネットワークシステム201は、各ブロックについて、知覚モデル係数pEnvQ及び/又はスペクトル包絡線を更に受信する。従って、条件付け情報は、知覚モデル係数pEnvQ及び/又はスペクトル包絡線情報の表現である付加的な情報を更に含み得る。知覚モデル係数pEnvQ及び/又はスペクトル包絡線は、ブロック長情報及び量子化された変換係数と並行して処理され、少なくとも1つの条件付け変数15内の他の情報と組み合わされるか、又は別の次元のサイド情報としてメインニューラルネットワーク16に提供され得る。
【0044】
知覚モデル係数のセットpEnvQは、エンコーダにおいて生じるような知覚モデルから導出され得る。知覚モデル係数pEnvQは、周波数帯域ごとに計算され、処理を容易にするために、好ましくは、ブロックの周波数係数と同じ解像度にマッピングされる。
【0045】
単一の短いブロックが変換済みブロックに変換されている実装形態では、pEnvQ係数は、類似の変換手順によって同等の長いブロック表現に変換され、条件付け情報として使用される。例えば、短いブロックがアップサンプリングされる場合、pEnvQ係数は、同じ方法でアップサンプリングされる。
【0046】
2つ以上のニューラルネットワークを特徴とする実装形態において「トレーニングされた」ニューラルネットワークシステム201では、システム内の全てのニューラルネットワークは、トレーニングの少なくとも一部の間、一緒にトレーニングされることに留意されたい。例えば、ブロック長ニューラルネットワーク14は、メインニューラルネットワーク16と共にトレーニングされ得、各ニューラルネットワーク14、16の内部パラメータ(例えば、重み)は、元の非量子化変換係数Xkなどのいくつかのターゲット予測された少なくとも1つの変換係数と比較して、予測された少なくとも1つの変換係数X―
kの何らかの尺度を最適化するように修正される。次に、ブロック長ニューラルネットワーク14は、メインニューラルネットワーク16及び出力ニューラルネットワーク17の予測された少なくとも1つの変換係数を元の変換係数に可能な限り近似させる少なくとも1つの条件付け変数15を出力するようにトレーニングされる。メインニューラルネットワーク16及び出力ニューラルネットワーク17は、元の変換係数Xkに可能な限り近似している少なくとも1つの変換係数X―
kを予測するように同時にトレーニングされる。
【0047】
第2の数の変換係数をもつブロックの変換ユニット11における変換は、第1の数の量子化された変換係数X~
kをもつブロックを変換済みブロックにアップサンプリングすることを含み得る。アップサンプリングは、第1の数の量子化された変換係数への第2の数の量子化された変換係数の線形補間又は多項式補間(及び随意で外挿)を含み得る。代替的に、変換済みブロックを形成するためにアップサンプリングすることは、各量子化された変換係数を所定の回数繰り返すこと、非ゼロ要素間にゼロ要素を追加すること、又は量子化された変換係数X~
kをインターリーブすることのうちの1つを含んでいてもよい。代替的に、任意の他の適切なアップサンプリング、拡張、又は補間技法が適用可能である。いくつかの実装形態では、変換ユニット11は単に、ブロックの量子化された変換係数X~
kをメインニューラルネットワーク16に転送し、メインニューラルネットワーク16は、出力ニューラルネットワーク17の少なくとも1つの出力パラメータを予測するようにトレーニングされる。この場合、メインニューラルネットワーク16は、第2の数の量子化された変換係数X~
kをもつブロックを認識するように学習し、変換器の機能をトレーニングすることによって吸収する。
【0048】
変換ユニット11において、第2の数の量子化された変換係数X~
kを含む第1のブロックを、それぞれが第2の数の量子化された変換係数X~
kを含む第1のブロック及び第2のブロックという少なくとも2つのブロックに変換する代わりに、第1のブロック及び第2のブロックは、第1の数の量子化された変換係数X~
kを含む変換済みブロックへと一緒に変換され得る。従って、メインニューラルネットワーク16及び出力ニューラルネットワーク17は、第1の数の量子化された変換係数X~
kを含む変換済みブロックの表現が与えられると、少なくとも1つの変換係数X―
kを予測するようにトレーニングされ得、変換済みブロックの量子化された変換係数X~
kは、少なくとも第1のブロック及び第2のブロックの量子化された変換係数X~
kに由来する。
【0049】
一般に、第2の数の量子化された変換係数X~
kをもつ少なくとも第1のブロック及び第2のブロックは、第2の数の量子化された変換係数X~
kをもつN個の連続したブロックであり、第1の数は、第2の数の倍数Nである。次いで、N個の連続したブロックは、第1の数の量子化された変換係数X~
kをもつ変換済みブロックに変換され得る。適応ブロックスイッチングメディア信号は、例えば、256に等しい第1の数の量子化された変換係数X~
k及び128に等しい第2の数を含み得、すなわち、N=2である。第1の数が256に等しく、N=4である場合、それぞれが64個の量子化された変換係数X~
kを含む4つの短いブロックが1つの変換済みブロックに変換されることになる。また更なる例では、N=8であり、変換係数の第1の数が1024である場合、量子化された変換係数X~
kの第2の数は、128である。
【0050】
少なくとも第1のブロック及び第2のブロックを変換済みブロックに変換することは、少なくとも第1の及び第2のブロックを変換済みブロックに連結することを含み得る。連結は、少なくとも第1のブロック及び第2のブロックを変換済みブロックに変換する効率的で容易に実装される方法である。
【0051】
いくつかの実装形態では、変換ユニット11は、各ブロックについて、それぞれの時間領域窓関数の表現を受信し、ここで、第1のブロック及び第2のブロックの窓関数は、部分的に重複する。
【0052】
窓関数は、量子化された変換係数X~
kと共に、又は(変換ユニット11に渡される)ブロック長情報21と共に受信され得る。代替的に、窓関数は、(変換ユニット11に渡される)ブロック長情報21から構築されてもよい。又は、窓関数は、ブロック内の量子化された変換係数の数と、各ブロック内の少なくとも第1の数及び第2の数の量子化された変換係数をもつブロックのシーケンスとの間の相関を利用することで、変換ユニット11において各ブロックについて量子化された変換係数X~
kの数を決定することによって構築され得る。例えば、第1の数の量子化された変換係数X~
kをもつブロックは、長い窓関数に関連付けられ、第2の数の変換量子化された係数X~
kをもつブロックは、短い窓関数に関連付けられる。更なる例では、第1の数の量子化された変換係数X~
kをもつブロックは、このブロックが、第2の数の量子化された変換係数X~
kをもつブロックに先行する場合、ブリッジイン窓関数に関連付けられ得る。
【0053】
図2において、(オプションの)条件付けニューラルネットワーク12及び(オプションの)ブロック長情報ニューラルネットワーク14の上流で動作するものとして説明される機能及びユニットの全ては、前処理ユニット又は適応ブロック前処理ユニットと呼ばれることがある。従って、前処理ユニットは、例えば、ブロック長情報12及び量子化された変換係数X
~
kを受信する、多入力多/単出力ユニットであり得、個別の情報(少なくとも1つの変数)又は結合された情報(少なくとも1つの変数)として、量子化された変換係数X
~
kを表し、ブロック長情報12を表す情報を出力する。
【0054】
図6を更に参照すると、ニューラルネットワークシステム、例えば、
図2に示された実施形態をトレーニングするための方法を示すフローチャートが示されている。S311において、適応長ターゲット予測(真)ブロックのセットが提供される。これは、S321での、ターゲット予測ブロックの損なわれた表現(例えば、量子化された表現)であるトレーニングブロックのセットを提供することと並行して行われる。ターゲット予測ブロックは、変換係数X
kの非量子化セットを含む。トレーニングブロックは、ニューラルネットワークシステム201に提供され、S331において予測ブロックのセットが取得されるように処理される。少なくとも1つの予測された変換係数X
―
kを含む出力された予測ブロックをターゲット予測ブロックと比較することによって、S332において、例えば、類似性の尺度が取得される。尺度は、誤差測度(error measure)であり得、低い誤差測度は、高いレベルの類似性を示す。尺度は、負の対数尤度(NLL)などの負の尤度であり得、低い尺度は、高レベルの類似性を示す。尺度は、平均絶対誤差(MAE)又は平均二乗誤差(MSE)であり得、高いレベルの類似性は、低いMAE又はMSEによって示される。S333において、尺度を使用して、尺度を低減又は最小化するようにニューラルネットワークシステム201の重みを修正する。
【0055】
一例では、尺度は、以下のようにNLLとして直接計算されるので、損失関数又は「損失」と呼ばれる:
【数3】
【0056】
NLL損失を計算する際、予測された少なくとも1つの変換係数X―
kは、少なくとも1つの予測された変換係数X―
kの少なくとも1つの分布パラメータによって表される。従って、NLL関数は、予測された少なくとも1つの変換係数X―
kを表す少なくとも1つの分布パラメータに適用される。少なくとも1つの分布パラメータは、少なくとも1つの予測された変換係数X―
kのうちの少なくとも1つに対する確率分布をパラメータ化する。
【0057】
他の実装形態では、損失は、次式に従ってMSEとして計算されるか、
【数4】
又は、損失は、次式に従ってMAEとして計算され得る:
【数5】
【0058】
MSE及びMAE損失を計算する際、少なくとも1つの予測された変換係数X―
kはそのまま使用される。
【0059】
場合によっては、予測ブロックは、単一の予測された変換済みブロックをもつ2つ以上のトレーニングブロック(及び関連するターゲット予測ブロック)を表し得、そのような場合、予測ブロックは、尺度が計算され得るように、トレーニングブロック(及び関連するターゲット予測ブロック)に個々に対応するブロックに逆変換され得る。
【0060】
図3aを参照すると、時間領域窓関数31、32a、32b、33のシーケンスが示されている。
図3aは、典型的な2:1ブロック長スイッチの窓シーケンスを示す。第1の長い窓31の後に2つの短い窓32a、32bが続き、これらの窓の後に第2の長い窓33が続く。短い時間領域窓関数32a、32bは、50%重複し得、ここで、二乗された短い窓関数を加算すると、重複部分について値が1になる。追加的に、各窓関数31、32a、32b、33の二乗の和は、全ての重複について値が1になる。
【0061】
いくつかの実装形態では、長い窓31、33は更に、それぞれ、短い窓32a、32bにそれぞれ先行及び後続するように特に適合されたブリッジイン窓31及びブリッジアウト窓33であり得る。窓関数31、32a、32b、33は、少なくとも部分的に時間的に重なっている。各窓関数31、32a、32b、33は、変換係数ブロックのセット、長い窓関数31、33をもつ長い変換係数ブロック、及び短い窓関数32a、32bをもつ短い変換係数ブロックに関連付けられる。
【0062】
いくつかの追加の実装形態では、各ブロック中の変換係数の数が3つ以上の選択肢のうちの1つ(例えば、上述のように256、128、及び64の係数のうちの1つ)である場合、ブリッジイン窓31及びブリッジアウト窓33の機能は、3つ以上のブリッジング窓関数、例えば、可変長ブロックの間の遷移のタイプごとに1つ、を含み得る。ブロックが256、128、及び64のうちの1つの長さを有する場合、256から128、256から64、及び128から64の各々に対してイン及びアウトのブリッジング窓関数が定義され得る。
【0063】
図3bを更に参照すると、2つの短い窓関数32a、32b(及び2つの短い変換係数ブロック)の変換の結果である長い変換済み窓32(関連する長い変換済みブロックを有する)が示されている。
【0064】
第1及び第2の(短い)ブロック(それらのそれぞれの窓関数は
図3aにおいて32a及び32bとして示されている)の量子化された変換係数を、窓化された時間領域表現に逆変換することによって、それらは長い変換済みブロックにマージされ得る。これは、第1のブロック及び第2のブロックの窓化された時間領域表現を重複加算し、第1のブロック及び第2のブロックの重複加算された時間領域表現を、第1の数の量子化された変換係数をもつ変換済みブロックに変換することによって達成され得る。
【0065】
例えば、変換係数が修正離散コサイン変換(MDCT)係数である場合、(窓関数32a、32bに関連付けられた)介在する短いブロックは、MDCTを短い時間領域セグメントに反転させ、短い時間領域セグメントを重複加算することによって、単一の長いブロックにマージされ得る。次いで、DCTタイプ4を使用して、フラットトップ窓を有する同等の変換済みの長いブロック32の変換係数を計算し得る。このマージ/変換動作後の窓シーケンスを
図3bに示す。この変換手順は、(量子化がない場合に)変換係数の完全な再構成特性を維持しながら達成され得ることに更に留意されたい。
【0066】
図4を参照すると、本発明の一実施形態による、量子化された変換係数から少なくとも1つの変換係数を予測するための方法を示すフローチャートが示されている。S111において、ニューラルネットワークシステムは、量子化された変換係数を含むフレームを受信する。ニューラルネットワークシステムは、S112において、フレームの少なくとも1つのブロックが第2の数の変換係数を含むと決定し、続けて、S113において、第2の数の変換係数をもつ少なくとも1つのブロックを、第1の数の変換係数をもつ変換済みブロックに変換する。変換済みブロックの量子化された変換係数を表す情報は、S131においてメインニューラルネットワークを条件付けするために使用される少なくとも1つの条件付け変数が基づく1つの情報である。任意選択で、方法は、S114において、変換済みブロックの量子化された変換係数を表す情報を用いて条件付けニューラルネットワークを条件付けするステップと、S131において、条件付けニューラルネットワークの少なくとも1つの出力変数を使用してメインニューラルネットワークを条件付けするステップとを含む。
【0067】
更に、方法は、S121においてブロック長情報を受信するステップを含む。ブロック長情報の表現は、S131においてメインニューラルネットワークを条件付けするための1つの情報として使用される。任意選択で、ブロック長情報は、S123において最初にブロック長ニューラルネットワークを条件付けするために使用され、ブロック長ニューラルネットワークの予測された少なくとも1つの出力変数は、S131においてメインニューラルネットワークを条件付けするために使用される。また、いくつかの実施形態は、S122でのブロック長情報のワンホット符号化を含み、ワンホット符号化されたブロック長情報は、S123においてブロック長ニューラルネットワークを条件付けするために使用されるか、又はS131においてメインニューラルネットワークを条件付けするために使用される情報の一部である情報として使用される。
【0068】
S131において、メインニューラルネットワークは、少なくとも1つの条件付け変数が与えられると、少なくとも1つの出力変数を予測し、少なくとも1つの出力変数は、S132において出力段(例えば、出力ニューラルネットワーク)に提供される。S132における出力段は、少なくとも1つの変換係数を予測する。
【0069】
図5は、本発明の実施形態による、適応ブロック長メディア信号の変換係数を予測するためのニューラルネットワークシステムをトレーニングするためのトレーニングブロック(入力のためのトレーニングブロック及び出力との比較のためのターゲット予測ブロック)を取得するための方法を示すフローチャートを示す。S211において、変換ブロックのセットが取得される。例えば、波形のバッチ又はメディア信号は、(例えば、時間領域フレームを形成する)時間領域セグメントのセットに分割されており、各時間領域セグメントは、様々な長さの変換ブロックのセット(例えば、変換領域フレーム)に変換されている。代替的に、波形のバッチ又はメディア信号は、各ブロックの長さを決定するために、上記で説明したような過渡検出器を用いて処理されている。S212において、第1のブロックが第2の数の変換係数を含むことが決定され、このブロックは、S213において、第1の数の変換係数をもつ変換済みブロックに変換される。S221において、ターゲット予測ブロックが取得される。S221で取得されるターゲット予測ブロックは、変換済みブロックそのものであり得る。
【0070】
S231において、変換済みブロックが量子化されて、量子化されたブロックが形成される。すなわち、量子化されたブロックは、決定された第1のブロック中に元々存在する完全な情報を表さず、従って、量子化されたブロックは、損なわれていないブロックの予測に使用するためにニューラルネットワークが学習すべき損なわれたブロックと呼ばれることがある。S232において、S231で取得された量子化されたブロックからトレーニングブロックが取得される。トレーニングブロックは、そのような量子化されたブロックであり得る。いくつかの実装形態では、トレーニング中にニューラルネットワークへの入力としてターゲットトレーニングブロックを使用するステップと、トレーニングとしてターゲット予測ブロックを使用するステップが更に含まれる。
【0071】
第1の数の変換係数を含むと決定されたブロックは、トレーニングブロック及びターゲット予測ブロックを取得するために同様に処理され得、ステップS213は省略される。
【0072】
いくつかの実装形態では、メディア信号又は波形のバッチは、上記で説明したように変換長を決定する過渡検出器を用いて処理される。従って、変換ブロックのセットは、全ての異なるタイプのブロック及び窓関数を含むこととなる。
【0073】
上記では、入力オーディオサンプルのオーディオ品質の指示を決定するための深層学習ベースのシステムをトレーニング及び動作させる可能な方法、並びにそのようなシステムの可能な実装形態について説明した。加えて、本開示はまた、これらの方法を実行するための装置に関する。そのような装置の例は、プロセッサ(例えば、中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、デジタルシグナルプロセッサ(DSP)、1つ又は複数の特定用途向け集積回路(ASIC)、1つ又は複数の無線周波数集積回路(RFIC)、又はこれらの任意の組合せ)と、プロセッサに結合されたメモリとを備え得る。プロセッサは、本開示全体にわたって説明した方法のステップの一部又は全部を実行するように適応され得る。
【0074】
装置は、サーバコンピュータ、クライアントコンピュータ、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、携帯情報端末(PDA)、携帯電話、スマートフォン、ウェブアプライアンス、ネットワークルータ、スイッチ若しくはブリッジ、又はその装置によって行われるアクションを指定する(順次的な又は別様の)命令を実行することが可能な任意のマシンであり得る。更に、本開示は、本明細書で説明される方法のうちの任意の1つ又は複数を実行するための命令を個々に又は共同で実行する装置の任意のセットに関するものとする。
【0075】
本開示は更に、プロセッサによって実行されると、プロセッサに、本明細書に説明される方法のステップの一部又は全部を行わせる命令を備える、プログラム(例えば、コンピュータプログラム)に関する。
【0076】
また、本発明は、上記プログラムを記録したコンピュータ可読(又はマシン可読)記録媒体に関する。ここで、「コンピュータ可読記憶媒体」という用語は、例えば、ソリッドステートメモリ、光媒体、及び磁気媒体の形態のデータリポジトリを含むが、これらに限定されない。
【0077】
特に明記しない限り、以下の説明から明らかなように、本開示全体を通して、「処理」、「コンピューティング」、「計算」、「決定」、「分析」などの用語を利用した説明は、電子量などの物理量として表されるデータを、物理量として同様に表される他のデータに操作及び/又は変換するコンピュータ若しくはコンピューティングシステム、又は同様の電子コンピューティングデバイスの動作及び/又はプロセスを指すことが理解される。
【0078】
同様に、「プロセッサ」という用語は、例えば、レジスタ及び/又はメモリからの電子データを処理して、その電子データを、例えば、レジスタ及び/又はメモリに記憶され得る他の電子データに変換する、任意のデバイス又はデバイスの一部を指し得る。「コンピュータ」又は「コンピューティングマシン」又は「コンピューティングプラットフォーム」は、1つ又は複数のプロセッサを含み得る。
【0079】
本明細書で説明される方法は、1つの例示的な実施形態では、プロセッサのうちの1つ又は複数によって実行されたときに、本明細書で説明される方法のうちの少なくとも1つを実行する命令のセットを含むコンピュータ可読(マシン可読とも呼ばれる)コードを受け入れる1つ又は複数のプロセッサによって実行可能である。実行すべきアクションを指定する(順次的な又は別様の)命令のセットを実行することが可能な任意のプロセッサが含まれる。従って、一例は、1つ又は複数のプロセッサを含む典型的な処理システムである。各プロセッサは、CPU、グラフィックス処理ユニット、及びプログラマブルDSPユニットのうちの1つ又は複数を含み得る。処理システムは、メインRAM及び/若しくはスタティックRAM、並びに/又はROMを含むメモリサブシステムを更に含み得る。構成要素間の通信のためにバスサブシステムが含まれ得る。処理システムは更に、ネットワークによって結合されたプロセッサを有する分散処理システムであり得る。処理システムがディスプレイを必要とする場合、そのようなディスプレイ、例えば、液晶ディスプレイ(LCD)又は陰極線管(CRT)ディスプレイが含まれ得る。手動データ入力が必要とされる場合、処理システムはまた、入力デバイス、例えば、キーボードなどの英数字入力ユニット、マウスなどのポインティング制御デバイスなどのうちの1つ又は複数を含む。処理システムはまた、ディスクドライブユニットなどの記憶システムを包含し得る。いくつかの構成における処理システムは、サウンド出力デバイスと、ネットワークインターフェースデバイスとを含み得る。従って、メモリサブシステムは、1つ又は複数のプロセッサによって実行されたときに、本明細書で説明される方法のうちの1つ又は複数を実行させるための命令のセットを含むコンピュータ可読コード(例えば、ソフトウェア)を搬送するコンピュータ可読キャリア媒体を含む。方法がいくつかの要素、例えば、いくつかのステップを含む場合、特に明記されない限り、そのような要素の順序は暗示されないことに留意されたい。ソフトウェアは、ハードディスク内に存在してもよいし、コンピュータシステムによるその実行中にRAM内及び/又はプロセッサ内に完全に又は少なくとも部分的に存在してもよい。従って、メモリ及びプロセッサは、コンピュータ可読コードを搬送するコンピュータ可読キャリア媒体も構成する。更に、コンピュータ可読キャリア媒体は、コンピュータプログラム製品を形成するか、又はそれに含まれ得る。
【0080】
代替の例示的な実施形態では、1つ又は複数のプロセッサは、スタンドアロンデバイスとして動作するか、又は、接続される、例えば、ネットワーク化された展開において、他のプロセッサにネットワーク化されてもよく、1つ又は複数のプロセッサは、サーバ-ユーザネットワーク環境におけるサーバ若しくはユーザマシンとして又はピアツーピア若しくは分散ネットワーク環境におけるピアマシンとして動作し得る。1つ又は複数のプロセッサは、パーソナルコンピュータ(PC)、タブレットPC、携帯情報端末(PDA)、携帯電話、ウェブアプライアンス、ネットワークルータ、スイッチ若しくはブリッジ、又はそのマシンが実行すべきアクションを指定する(順次的な又は別様の)命令のセットを実行することが可能な任意のマシンを形成し得る。
【0081】
「マシン(machine)」という用語はまた、本明細書で議論される方法のいずれか1つ又は複数を実行するための命令の1つのセット(又は複数のセット)を個々に又は共同で実行するマシンの任意の集合を含むものと解釈されるべきであることに留意されたい。
【0082】
従って、本明細書で説明される方法の各々の1つの例示的な実施形態は、命令のセット、例えば、1つ又は複数のプロセッサ、例えば、ウェブサーバ配置の一部である1つ又は複数のプロセッサ上で実行するためのコンピュータプログラムを搬送するコンピュータ可読キャリア媒体の形態である。従って、当業者によって理解されるように、本開示の例示的な実施形態は、方法、専用装置などの装置、データ処理システムなどの装置、又はコンピュータ可読キャリア媒体、例えば、コンピュータプログラム製品として具現化され得る。コンピュータ可読キャリア媒体は、1つ又は複数のプロセッサ上で実行されたときに、1つ又は複数のプロセッサに、方法を実行させる命令のセットを含むコンピュータ可読コードを搬送する。従って、本開示の態様は、方法、完全にハードウェアの例示的な実施形態、完全にソフトウェアの例示的な実施形態、又はソフトウェア態様とハードウェア態様とを組み合わせた例示的な実施形態の形態をとり得る。更に、本開示は、媒体において具現化されるコンピュータ可読プログラムコードを搬送するキャリア媒体(例えば、コンピュータ可読記憶媒体上のコンピュータプログラム製品)の形態をとり得る。
【0083】
ソフトウェアは更に、ネットワークインターフェースデバイスを介してネットワーク上で送信又は受信され得る。キャリア媒体は、例示的な実施形態では単一の媒体であるが、「キャリア媒体(carrier medium)」という用語は、命令の1つ又は複数のセットを記憶する単一の媒体又は複数の媒体(例えば、集中型若しくは分散型データベース並びに/又は関連するキャッシュ及びサーバ)を含むものと解釈されるべきである。「キャリア媒体」という用語はまた、プロセッサのうちの1つ又は複数による実行のための命令のセットを記憶、符号化、又は搬送することが可能であり、1つ又は複数のプロセッサに、本開示の方法のいずれか1つ又は複数を実行させる任意の媒体を含むものと解釈されるべきである。キャリア媒体は、限定はしないが、不揮発性媒体、揮発性媒体、及び伝送媒体を含む多くの形態をとり得る。不揮発性媒体は、例えば、光ディスク、磁気ディスク、及び光磁気ディスクを含む。揮発性媒体は、メインメモリなどの動的メモリを含む。伝送媒体は、バスサブシステムを構成するワイヤを含む、同軸ケーブル、銅線、及び光ファイバを含む。伝送媒体はまた、電波及び赤外線データ通信中に生成されるものなど、音波又は光波の形態をとり得る。結果的に、例えば、「キャリア媒体」という用語は、限定はしないが、固体メモリ、光媒体及び磁気媒体で具現化されるコンピュータ製品、少なくとも1つのプロセッサ又は1つ若しくは複数のプロセッサによって検出可能な伝搬信号を担持し、実行されたときに、方法を実施する命令のセットを表す媒体、並びに1つ又は複数のプロセッサのうちの少なくとも1つのプロセッサによって検出可能な伝搬信号を担持し、命令のセットを表すネットワーク内の伝送媒体を含むものと解釈されものとする。
【0084】
説明される方法のステップは、1つの例示的な実施形態では、ストレージに記憶された命令(コンピュータ可読コード)を実行する処理(例えば、コンピュータ)システムの適切な1つのプロセッサ(又は複数のプロセッサ)によって実行されることが理解されよう。本開示は、いかなる特定の実装形態又はプログラミング技法にも限定されず、本開示は、本明細書で説明する機能を実装するための任意の適切な技法を使用して実装され得ることも理解されよう。本開示は、いかなる特定のプログラミング言語又はオペレーティングシステムにも限定されない。
【0085】
本開示全体を通して、「1つの例示的な実施形態(one example embodiment)」、「いくつかの例示的な実施形態(some example embodiments)」、又は「例示的な実施形態(an example embodiment)」への言及は、例示的な実施形態に関連して説明される特定の特徴、構造、又は特性が、本開示の少なくとも1つの例示的な実施形態に含まれることを意味する。従って、本開示全体を通して様々な場所での「1つの例示的な実施形態では」、「いくつかの例示的な実施形態では」、又は「例示的な実施形態では」という表現の出現は、必ずしも全てが同じ例示的な実施形態を指すとは限らない。更に、特定の特徴、構造、又は特性は、1つ又は複数の例示的な実施形態では、本開示から当業者には明らかであるように、任意の適切な方法で組み合わせられ得る。
【0086】
本明細書で使用される場合、別段の指定がない限り、共通の物体を説明するための序数形容詞「第1の(first)」、「第2の(second)」、「第3の(third)」などの使用は、同様の物体の異なる例が言及されていることを示すにすぎず、そのように説明された物体が、時間的に、空間的に、ランキングで、又は任意の他の方法で、所与の順序でなければならないことを暗示するよう意図されているものではない。
【0087】
以下の特許請求の範囲及び本明細書の説明において、「備える/含む(comprising)」、「~から構成される(comprised of)」、又は「備える/含む(which comprises)」という用語のいずれか1つは、少なくともその後に続く要素/特徴を含むが、他のものを除外しないことを意味するオープンタームである。従って、「備える/含む(comprising)」という用語は、特許請求の範囲で使用される場合、その後に列挙される手段又は要素又はステップに限定されるものとして解釈されるべきではない。例えば、A及びBを含むデバイス(a device comprising A and B)という表現の範囲は、要素A及びBのみから構成されるデバイスに限定されるべきではない。また、本明細書で使用される「含む(including)」又は「含む(which includes)」又は「含む(that includes)」という用語はいずれも、少なくとも、その用語に続く要素/特徴を含むが、他のものを除外しないことを意味するオープンタームである。従って、含む(including)は、備える/含む(comprising)と同義であり、それを意味する。
【0088】
本開示の例示的な実施形態の上記の説明では、本開示の様々な特徴は、本開示を合理化し、様々な発明の態様のうちの1つ又は複数の態様の理解を助けるために、単一の例示的な実施形態、図、又はその説明においてひとまとめにされることがあることを理解されたい。しかしながら、開示のこの方法は、特許請求の範囲が各請求項に明示的に記載されているものより多くの特徴を必要とするという意図を反映するものとして解釈されるべきではない。むしろ、以下の特許請求の範囲が反映するように、発明の態様は、単一の前述の開示された例示的な実施形態の全ての特徴より少ない特徴にある。従って、本明細書に続く特許請求の範囲は、本明細書に明示的に組み込まれ、各請求項は、本開示の別個の例示的な実施形態として自立している。
【0089】
更に、本明細書で説明されるいくつかの例示的な実施形態は、他の例示的な実施形態に含まれるいくつかの特徴を含むが、他の特徴は含まず、当業者によって理解されるように、異なる例示的な実施形態の特徴の組合せは、本開示の範囲内にあり、異なる例示的な実施形態を形成することが意図される。例えば、以下の特許請求の範囲において、特許請求の範囲に記載された例示的な実施形態のいずれかは、任意の組合せで使用され得る。
【0090】
本明細書に提供される説明では、多数の具体的な詳細が記載される。しかしながら、本開示の例示的な実施形態は、これらの具体的な詳細なしに実施され得ることが理解される。他の事例では、この説明の理解を曖昧にしないために、周知の方法、構造、及び技法は詳細には示されていない。
【0091】
従って、本開示の最良の形態であると考えられるものが説明されたが、当業者は、本開示の趣旨から逸脱することなく、他の及び更なる修正がなされ得ることを認識し、本開示の範囲内にあるような全ての変更及び修正を請求することが意図されている。例えば、上で与えられた任意の式は、使用され得る手順の単なる代表である。機能は、ブロック図から追加又は削除されてもよく、動作は、機能ブロック間で交換されてもよい。ステップは、本開示の範囲内で説明される方法に追加又は削除されてもよい。
【0092】
本発明の様々な態様は、列挙された例示的な実施形態(EEE)の以下のリストから理解され得る:
【0093】
EEE1.コンピュータ実装ニューラルネットワークシステムを用いて、適応ブロック長メディア信号の周波数コンテンツを表す少なくとも1つの変換係数を予測するための方法であって、
フレームのブロックを受信するステップであって、フレームの各ブロックは、上記メディア信号の部分的な時間セグメントを表す量子化された変換係数のセットを含む、ステップと、
フレームの各ブロックについての量子化された変換係数の数を示すブロック長情報を受信するステップであって、量子化された変換係数の数は、第1の数又は第2の数のうちの1つであり、上記第1の数は、上記第2の数より大きい、ステップと、
フレームの少なくとも第1のブロックが上記第2の数の量子化された変換係数をもつと決定するステップと、
少なくとも上記第1のブロックを、上記第1の数の量子化された変換係数をもつ変換済みブロックに変換するステップと、
少なくとも1つの条件付け変数が与えられると、少なくとも1つの出力変数を予測するようにトレーニングされたメインニューラルネットワークを条件付けするステップであって、少なくとも1つの条件付け変数は、条件付け情報に基づき、上記条件付け情報は、上記変換済みブロックの表現と、上記第1のブロックについてのブロック長情報の表現とを含む、ステップと、
上記少なくとも1つの出力変数から少なくとも1つの予測された変換係数を提供するように構成された出力段に、上記少なくとも1つの出力変数を提供するステップと
を含む方法。
【0094】
EEE2.フレームの各ブロックについての知覚モデル係数のセットを受信するステップを更に含み、条件付け情報が上記知覚モデル係数のセットを更に含む、EEE1の方法。
【0095】
EEE3.上記フレームの各ブロックについてのスペクトル包絡線を受信するステップを更に含み、条件付け情報が上記スペクトル包絡線を更に含む、EEE1の方法。
【0096】
EEE4.上記第1のブロックについてのブロック長情報の上記表現を用いて、ブロック長ニューラルネットワークを条件付けするステップであって、上記ブロック長ニューラルネットワークは、ブロック長情報が与えられると、上記第1のブロックについてのブロック長情報の上記表現を出力するようにトレーニングされる、ステップ
を更に含む、EEE1の方法。
【0097】
EEE5.上記ブロック長情報を用いてブロック長ニューラルネットワークを条件付けするステップは、上記ブロック長情報をワンホットベクトルとして符号化するステップと、上記ワンホットベクトルを用いて上記ブロック長ニューラルネットワークを条件付けするステップとを含む、EEE4の方法。
【0098】
EEE6.上記変換済みブロックの上記量子化された変換係数を用いて条件付けニューラルネットワークを条件付けするステップであって、条件付けニューラルネットワークは、量子化された変換係数が与えられると、上記変換済みブロックの上記表現を出力するようにトレーニングされる、ステップ
を更に含む、EEE1の方法。
【0099】
EEE7.少なくとも上記第1のブロックを上記変換済みブロックに変換するステップは、上記第1のブロックをアップサンプリングするステップを含む、EEE1の方法。
【0100】
EEE8.少なくとも上記第1のブロック及び後続の第2のブロックが上記第2の数の変換係数をもつと決定するステップを更に含み、少なくとも上記第1のブロックを上記変換済みブロックに変換するステップは、少なくとも上記第1のブロック及び第2のブロックを変換済みブロックに変換するステップを含む、EEE1の方法。
【0101】
EEE9.周波数コンテンツを表す量子化された変換係数は、離散コサイン変換(DCT)係数である、先行するEEEのいずれかの方法。
【0102】
EEE10.逆変換ユニットが、上記予測された変換係数及び上記ブロック長情報を受信するステップと、
上記予測された変換係数を時間領域信号に変換するステップと
を更に含む、先行するEEEのいずれかの方法。
【0103】
EEE11.上記第1の数は上記第2の数の倍数Nであり、少なくとも上記第1のブロック及び上記後続の第2のブロックが上記第2の数の量子化された変換係数をもつと決定するステップは、
フレームのN個の連続したブロックが上記第2の数の量子化された変換係数をもつと決定するステップ
を含む、EEE8の方法。
【0104】
EEE12.少なくとも上記第1のブロック及び第2のブロックを上記変換済みブロックに変換するステップは、少なくとも上記第1のブロック及び第2のブロックを連結して変換済みブロックにするステップを含む、EEE8の方法。
【0105】
EEE13.ブロック長情報を受信するステップは、
フレームの各ブロックについて、それぞれの時間領域窓関数の表現を受信するステップであって、上記第1のブロック及び第2のブロックの窓関数は部分的に重複する、ステップ
を含む、EEE8の方法。
【0106】
EEE14.少なくとも上記第1のブロック及び第2のブロックを上記変換済みブロックに変換するステップは、
量子化された変換係数を、第1のブロック及び第2のブロックの窓化された時間領域表現に逆変換するステップと、
第1のブロック及び第2のブロックの窓化された時間領域表現を重複加算するステップと、
第1のブロック及び第2のブロックの重複加算された時間領域表現を、上記第1の数の量子化された変換係数をもつ変換済みブロックに変換するステップと
を含む、EEE13の方法。
【0107】
EEE15.適応ブロック長メディア信号の少なくとも1つの変換係数を予測するようにコンピュータ実装ニューラルネットワークシステムをトレーニングするための少なくとも1つのトレーニングブロックを取得するための方法であって、
メディア信号の周波数コンテンツを表すいくつかの数の変換係数を各々が含む変換ブロックのセットを取得するステップであって、各ブロック中の変換係数の数は、第1の数又は第2の数であり、第1の数は、第2の数より大きい、ステップと、
第1のブロックが第2の数の変換係数を含むと決定するステップと、
第1のブロックを、第1の数の変換係数をもつ変換済みブロックに変換するステップと、
変換済みブロックからターゲット予測ブロックを取得するステップと、
変換済みブロックを量子化するステップと、
量子化された変換済みブロックからトレーニングブロックを取得するステップと
を含む方法。
【0108】
EEE16.適応ブロック長メディア信号の周波数コンテンツを表す変換係数を予測するためのコンピュータ実装ニューラルネットワークシステムであって、
メディア信号の部分的な時間セグメントを表す量子化された変換係数のセットを含むフレームを受信することと、
上記フレーム中の各ブロックについての量子化された変換係数の数を示すブロック長情報を受信することとであって、量子化された変換係数の数は、第1の数又は第2の数のうちの1つであり、上記第1の数は、上記第2の数より大きい、受信することと、
少なくとも第1のブロックが上記第2の数の変換係数をもつと決定することと、
少なくとも上記第1のブロックを、上記第1の数の量子化された変換係数をもつ変換済みブロックに変換することと
を行うように構成された適応ブロック前処理ユニットと、
メインニューラルネットワークであって、上記メインニューラルネットワークは、条件付け情報に基づいて少なくとも1つの条件付け変数が与えられると、少なくとも1つの出力変数を予測するようにトレーニングされ、上記条件付け情報は、上記変換済みブロックの表現と、上記第1のブロックについてのブロック長情報の表現とを含む、メインニューラルネットワークと、
上記少なくとも1つの出力変数から少なくとも1つの予測された変換係数を提供するように構成された出力段と
を備えるニューラルネットワークシステム。
【0109】
EEE17.EEE16のコンピュータ実装ニューラルネットワークシステムを備えるニューラルネットワークデコーダ。
【0110】
EEE18.逆変換ユニットを更に備え、
上記逆変換ユニットは、
上記少なくとも1つの予測された変換係数及びブロック長情報を受信することと、
上記少なくとも1つの予測された変換係数を時間領域信号に変換することと
を行わせるように構成される、EEE17のニューラルネットワークデコーダ。
【0111】
EEE19.上記ニューラルネットワークシステムは、
ターゲット予測ブロックのセットを提供することと、
上記第1の数の変換係数をもつ少なくとも1つのトレーニングブロックと上記第2の数の変換係数をもつ少なくとも1つのトレーニングブロックとを含むトレーニングブロックのセットを上記適応ブロック前処理ユニットに提供することであって、トレーニングブロックのセットは、上記ターゲット予測ブロックのセットの損なわれた表現である、提供することと、
上記トレーニングブロックのセットからの予測ブロックのセットを上記出力段から取得することと、
上記ターゲット予測ブロックのセットに対する予測ブロックのセットの尺度を計算することと、
尺度を減少させるように上記ニューラルネットワークシステムの重みを修正することと
を行うことによってトレーニングされている、EEE16のニューラルネットワークシステム。
【0112】
EEE20.上記尺度は、負の尤度、平均二乗誤差、又は絶対誤差のうちの1つである、EEE19のニューラルネットワークシステム。
【外国語明細書】