以下、本発明を実施するための形態について図面を用いて詳細に説明する。
〔全体システム〕
まず、全体システムについて説明する。図1は、本発明の実施形態による符号化装置及び復号装置を含む全体システムの構成例を示す概略図である。このシステムは、M個の符号化装置及びN個の復号装置を備えて構成される。M,Nは自然数である。M個の符号化装置とN個の復号装置とは、無線または有線の回線を介して接続される。
M個の符号化装置は、第1符号化装置1-1、・・・、第m符号化装置1-m、・・・、第M符号化装置1-Mである。N個の復号装置は、第1復号装置2-1、・・・、第n復号装置2-n、・・・、第N復号装置2-Nである。mは、1以上M以下の自然数であり、nは、1以上N以下の自然数である。M個の符号化装置を総称して第m符号化装置1-mとし、N個の復号装置を総称して第n復号装置2-nとする。
第m符号化装置1-mは、図示しない観測対象5を観測する複数のセンサー(図示せず)から観測値y(m)を入力する。そして、第m符号化装置1-mは、観測値y(m)を符号化することで、観測値y(m)を、全体システムで共通に使用する中間表現である共通符号x(m)に変換し、共通符号x(m)を出力する。
これにより、M個の符号化装置により出力される共通符号x(1~M)は、全体システムにおいて統合化したデータとして取り扱うことができる。尚、観測値y(1~M)のそれぞれは、同じ種類のデータ(例えば映像信号)であってもよいし、異なる種類のデータ(例えば映像信号及び温度)であってもよい。
ここで、観測値y(m)及び共通符号x(m)、並びに、後述する復号データz(n)、構成結果の共通符号x’(n)、中間形式値u(m) ,v(n)、期待データw(n)及びパラメータp(m) ,q,r,s(n)は、それぞれ複数のデータにより構成される。
第n復号装置2-nは、M個の符号化装置のうち1個以上の符号化装置から共通符号x(m)を入力する。そして、第n復号装置2-nは、1個以上の共通符号x(m)を復号することで、1個以上の共通符号x(m)を復号データz(n)に変換し、復号データz(n)を出力する。
復号データz(n)は、M個の符号化装置のうちいずれかの符号化装置が担当するセンサーが出力することを期待される観測値の推定値であってもよい。また、復号データz(n)は、いずれの符号化装置が担当するセンサーとは異なる仮想のセンサーが出力することを期待される観測値の推定値であってもよい。また、復号データz(n)は、所定の意味を表すデータ(例えば名称、識別子、品質の評価値)であってもよい。つまり、復号データz(n)は、センサーが出力する数値、及び名称等のテキストデータを含む広い概念である。
このように、M個の符号化装置とN個の復号装置との間で、全体システムにおいて統合化した共通符号x(1~M)を伝送するようにした。これにより、様々なセンサーが出力する観測値y(1~M)の間の変換を、レート歪特性について効率的な共通符号x(1~M)を介して実現することができる。つまり、全体として符号化による圧縮率が向上してレート歪を低減することができ、符号化効率が向上するから、観測値y(1~M)の伝送処理、及び観測値y(1~M)から復号データz(1~N)への変換処理を、効率的に実現することができる。
〔実施例1〕
次に、第1の実施形態(実施例1)の符号化装置及び復号装置について説明する。実施例1は、図1に示した全体システムにおいて、1個以上の符号化装置と1個の復号装置(各復号装置)とを接続して構成されるシステムを前提とするものである。
図2は、実施例1の符号化装置及び復号装置の接続例及び構成例を示すブロック図である。このシステムは、図1に示した全体システムにおいて、N個の復号装置のうちn番目の復号装置である第n復号装置2a-nに着目した例であり、M個の全ての第1符号化装置1a-1~第M符号化装置1a-Mと単数の第n復号装置2a-nとが接続された系にて構成される。以下、M個の符号化装置を総称した第m符号化装置1a-m、及びN個の復号装置を総称した第n復号装置2a-nについて説明する。
(第m符号化装置1a-m)
第m符号化装置1a-mは、第m個別符号化部11-m及び共通符号化部12-mを備えている。
第m個別符号化部11-mは、担当する複数のセンサーから観測値y(m)を入力し、予め設定されたパラメータp(m)に基づいて、観測値y(m)を符号化することで、観測値y(m)を中間形式値u(m)に変換する。そして、第m個別符号化部11-mは、中間形式値u(m)を共通符号化部12-mに出力する。
パラメータp(m)は、第m個別符号化部11-mの挙動(入力から出力への写像、処理)を規定するための情報である。パラメータp(m)は、第m符号化装置1a-mが担当する複数のセンサー(観測値y(m))に応じて、他の個別符号化部が使用するパラメータとは独立して調整される。つまり、第m1個別符号化部11-m1と第m2個別符号化部11-m2とは、異なる写像を実行するものであってもよい。
例えば、第m個別符号化部11-mは、多層パーセプトロン、畳み込みニューラルネットワーク、残差ネットワーク等のニューラルネットワークにより構成することができる。
共通符号化部12-mは、第m個別符号化部11-mから中間形式値u(m)を入力し、予め設定されたパラメータqに基づいて、中間形式値u(m)を符号化することで、中間形式値u(m)を共通符号x(m)に変換する。そして、共通符号化部12-mは、共通符号x(m)を第n復号装置2a-nへ出力する。
パラメータqは、共通符号化部12-mの挙動を規定するための情報である。パラメータqは、第m符号化装置1a-mが担当する複数のセンサー(観測値y(m))に関わらず、第1符号化装置1a-1~第M符号化装置1a-Mのそれぞれが担当する複数のセンサー(観測値y(1~M))に共通のパラメータ(共通符号化部12-1~12-Mが共通に使用するパラメータ)として調整される。つまり、全ての共通符号化部12-1~12-Mは、同じ写像を実行する。
例えば、共通符号化部12-mは、多層パーセプトロン、畳み込みニューラルネットワーク、残差ネットワーク等のニューラルネットワークにより構成することができる。
以上のように、実施例1の第m符号化装置1a-mによれば、第m個別符号化部11-mは、他の個別符号化部とは独立して設定されたパラメータp(m)に基づいて、観測値y(m)を符号化して中間形式値u(m)に変換する。そして、共通符号化部12-mは、他の共通符号化部と共通に設定されたパラメータqに基づいて、中間形式値u(m)を符号化して共通符号x(m)に変換し、共通符号x(m)を第n復号装置2a-nへ出力する。
これにより、予め設定されたパラメータp(m)に基づいて、観測値y(m)が中間形式値u(m)に変換される。前述の特許文献1の手法では、観測値と状態値(中間形式値u(m)に相当)との間の関係について、木構造によって観測値及び状態種別等をその種類に応じて階層的に定義しておく必要があった。実施例1では、観測値y(m)の種類に関わることなくパラメータp(m)のみを定義しておけば済むから、観測値y(m)及び中間形式値u(m)等のデータを明示的に定義しておく必要がなく、負荷を低減することができる。
また、第n復号装置2a-nは、M個の符号化装置から共通符号x(1~M)を入力し、共通符号x(1~M)のそれぞれに対して共通の復号処理を行えばよいから、M個の符号化装置のそれぞれに対応する復号処理を行う必要がない。
また、複数の符号化装置及び複数の復号装置からなるシステムにおいて、異なる種類の観測値y(1~M)に紐づいた共通符号x(1~M)への変換を行う際に、観測値y(1~M)の差異への対応を個別符号化部に分担させ、情報の圧縮を共通符号化部に分担させることができる。
したがって、取り扱うデータを定義するための負荷を低減することができると共に、第m符号化装置1a-mの入力信号である観測値y(m)の伝送処理、及び、観測値y(1~M)から第n復号装置2a-nの出力信号である復号データz(n)への変換処理を効率的に実現することができる。
(第n復号装置2a-n)
第n復号装置2a-nは、合成部40-n、共通復号部41-n及び第n個別復号部42-nを備えている。
合成部40-nは、第1符号化装置1a-1~第M符号化装置1a-Mから共通符号x(1~M)を入力し、共通符号x(1~M)を合成して合成結果の共通符号x’(n)を生成する。例えば、合成部40-nは、共通符号x(1~M)の(例えばベクトルとしての)相加平均を算出し、合成結果の共通符号x’(n)を求める。そして、合成部40-nは、合成結果の共通符号x’(n)を共通復号部41-nに出力する。
この合成部40-nは、M個の共通符号化部12-1~12-Mと1個の共通復号部41-nとを接続するために設けられる。尚、1個の共通符号化部12-mと1個の共通復号部41-nとを接続する場合には、第n復号装置2a-nは、合成部40-nを備える必要はない(後述する図10の第n復号装置2a’-nを参照)。この場合、第n復号装置2a-nの共通復号部41-nは、第m符号化装置1a-mの共通符号化部12-mが出力した共通符号x(m)をそのまま入力する。
共通復号部41-nは、合成部40-nから合成結果の共通符号x’(n)を入力し、予め設定されたパラメータrに基づいて、共通符号x’(n)を符号化することで、共通符号x’(n)を中間形式値v(n)に変換する。そして、共通復号部41-nは、中間形式値v(n)を第n個別復号部42-nに出力する。
パラメータrは、共通復号部41-nの挙動を規定するための情報である。パラメータrは、第n復号装置2a-nが担当する復号データz(n)に関わらず、第1復号装置2a-1~第N復号装置2a-Nのそれぞれが担当する復号データz(1~N)に共通のパラメータ(共通復号部41-1~41-Nが共通に使用するパラメータ)として調整される。つまり、全ての共通復号部41-1~41-Nは、同じ写像を実行する。
例えば、共通復号部41-nは、多層パーセプトロン、畳み込みニューラルネットワーク、残差ネットワーク等のニューラルネットワークにより構成することができる。
第n個別復号部42-nは、共通復号部41-nから中間形式値v(n)を入力し、予め設定されたパラメータs(n)に基づいて、中間形式値v(n)を符号化することで、中間形式値v(n)を復号データz(n)に変換する。そして、第n個別復号部42-nは、復号データz(n)を出力する。
パラメータs(n)は、第n個別復号部42-nの挙動を規定するための情報である。パラメータs(n)は、第n復号装置2a-nが担当する復号データz(n)に応じて、他の個別復号部が使用するパラメータとは独立して調整される。つまり、第n1個別復号部42-n1と第n2個別復号部42-n2とは、異なる写像を実行するものであってもよい。
例えば、第n個別復号部42-nは、多層パーセプトロン、畳み込みニューラルネットワーク、残差ネットワーク等のニューラルネットワークにより構成することができる。
以上のように、実施例1の第n復号装置2a-nによれば、合成部40-nは、M個の符号化装置から入力した共通符号x(1~M)を合成して共通符号x’(n)を生成し、共通復号部41-nは、他の共通復号部と共通に設定されたパラメータrに基づいて、共通符号x’(n)を符号化して中間形式値v(n)に変換する。第n個別復号部42-nは、他の個別復号部とは独立して設定されたパラメータs(n)に基づいて、中間形式値v(n)を符号化して復号データz(n)に変換する。
これにより、予め設定されたパラメータs(n)に基づいて、中間形式値v(n)が復号データz(n)に変換される。つまり、復号データz(n)の種類に関わることなくパラメータs(n)のみを定義しておけば済むから、木構造によって観測値及び状態種別等をその種類に応じて階層的に定義しておく必要がある前述の特許文献1の手法に比べ、負荷を低減することができる。
また、第n復号装置2a-nは、M個の符号化装置から共通符号x(1~M)を受信し、共通符号x(1~M)のそれぞれに対して共通の復号処理を行えばよいから、M個の符号化装置のそれぞれに対応する復号処理を行う必要がない。
また、複数の符号化装置及び複数の復号装置からなるシステムにおいて、複数の復号装置に紐づいた異種の復号データz(1~N)への変換を行う際に、情報の伸張を共通復号部に分担させ、復号データの差異への対応を個別復号部に分担させることができる。
したがって、取り扱うデータを定義するための負荷を低減することができると共に、第m符号化装置1a-mの入力信号である観測値y(m)の伝送処理、及び、観測値y(1~M)から第n復号装置2a-nの出力信号である復号データz(n)への変換処理を効率的に実現することができる。
図11は、図2に示した実施例1の適用例を説明する概略図である。この適用例は、M台のカメラ6-1~6-Mにより撮影される観測対象5の映像信号を観測値y(1~M)とし、仮想カメラ7により撮影される観測対象5の映像信号を復号データz(n)とした場合に、観測値y(1~M)を用いて復号データz(n)を生成する例である。
図示しない第n復号装置2a-nは、第1符号化装置1a-1~第M符号化装置1a-Mがカメラ6-1~6-Mから入力した観測値y(1~M)を、共通符号x(1~M)を介して入力し、仮想カメラ7により撮影される映像信号として復号データz(n)を生成する。これにより、実際には存在しない他の視点位置の仮想カメラ7により撮影される映像信号を、復号データz(n)として推定することができる。
尚、第1符号化装置1a-1~第M符号化装置1a-M及び図示しない第n復号装置2a-nが用いるパラメータp(1~M),q,r,s(n)は、後述する図5に示す学習装置3により予め設定される。学習装置3が機械学習を行う際には、後述する図7に示すNN構成部32aの構成において、所定位置のカメラ6-1~6-Mにより撮影された映像信号の観測値y(1~M)に加え、仮想カメラ7の位置に実際のカメラを配置して撮影された映像信号の観測値が期待データw(n)として用いられる。
〔実施例2〕
次に、第2の実施形態(実施例2)の符号化装置及び復号装置について説明する。実施例2は、実施例1と同様に、図1に示した全体システムにおいて、1個以上の符号化装置と1個の復号装置(各復号装置)とを接続して構成されるシステムを前提とするものである。
図3は、実施例2の符号化装置及び復号装置の接続例及び構成例を示すブロック図である。このシステムは、図1に示した全体システムにおいて、N個の復号装置のうちn番目の復号装置である第n復号装置2b-nに着目した例であり、M個の全ての第1符号化装置1b-1~第M符号化装置1b-Mと単数の第n復号装置2b-nとが接続された系にて構成される。以下、M個の符号化装置を総称した第m符号化装置1b-m、及びN個の復号装置を総称した第n復号装置2b-nについて説明する。
(第m符号化装置1b-m)
第m符号化装置1b-mは、第m個別符号化部11-mを備えている。図2に示した実施例1の第m符号化装置1a-mとこの第m符号化装置1b-mとを比較すると、両第m符号化装置1a-m,1b-mは、第m個別符号化部11-mを備えている点で共通する。一方、この第m符号化装置1b-mは、共通符号化部12-mを備えていない点で、図2の第m符号化装置1a-mと相違する。
第m個別符号化部11-mは、図2に示した第m個別符号化部11-mと同様であるから、ここでは説明を省略する。第m個別符号化部11-mは、観測値y(m)を変換して得られた中間形式値u(m)を共通符号x(m)として、共通符号x(m)を第n復号装置2b-nへ出力する。
以上のように、実施例2の第m符号化装置1b-mによれば、予め設定されたパラメータp(m)に基づいて、観測値y(m)が中間形式値u(m)である共通符号x(m)に変換される。つまり、観測値y(m)の種類に関わることなくパラメータp(m)のみを定義しておけば済むから、前述の特許文献1の手法に比べ、負荷を低減することができる。
また、第n復号装置2b-nは、M個の符号化装置から共通符号x(1~M)を入力し、共通符号x(1~M)のそれぞれに対して共通の復号処理を行えばよいから、M個の符号化装置のそれぞれに対応する復号処理を行う必要がない。
したがって、取り扱うデータを定義するための負荷を低減することができると共に、第m符号化装置1b-mの入力信号である観測値y(m)の伝送処理、及び、観測値y(1~M)から第n復号装置2b-nの出力信号である復号データz(n)への変換処理を効率的に実現することができる。
(第n復号装置2b-n)
第n復号装置2b-nは、合成部40-n、共通復号部41-n及び第n個別復号部42-nを備えている。図2に示した実施例1の第n復号装置2a-nとこの第n復号装置2b-nとを比較すると、両第n復号装置2a-n,2b-nは、同一の構成をなしている。
合成部40-n、共通復号部41-n及び第n個別復号部42-nは、図2に示した合成部40-n、共通復号部41-n及び第n個別復号部42-nと同様であるから、ここでは説明を省略する。
以上のように、実施例2の第n復号装置2b-nによれば、実施例1と同様の効果を奏する。すなわち、取り扱うデータを定義するための負荷を低減することができると共に、第m符号化装置1b-mの入力信号である観測値y(m)の伝送処理、及び、観測値y(1~M)から第n復号装置2b-nの出力信号である復号データz(n)への変換処理を効率的に実現することができる。
〔実施例3〕
次に、第3の実施形態(実施例3)の符号化装置及び復号装置について説明する。実施例3は、実施例1,2と同様に、図1に示した全体システムにおいて、1個以上の符号化装置と1個の復号装置(各復号装置)とを接続して構成されるシステムを前提とするものである。
図4は、実施例3の符号化装置及び復号装置の接続例及び構成例を示すブロック図である。このシステムは、図1に示した全体システムにおいて、N個の復号装置のうちn番目の復号装置である第n復号装置2c-nに着目した例であり、M個の全ての第1符号化装置1c-1~第M符号化装置1c-Mと単数の第n復号装置2c-nとが接続された系にて構成される。以下、M個の符号化装置を総称した第m符号化装置1c-m、及びN個の復号装置を総称した第n復号装置2c-nについて説明する。
(第m符号化装置1c-m)
第m符号化装置1c-mは、第m個別符号化部11-m及び共通符号化部12-mを備えている。図2に示した実施例1の第m符号化装置1a-mとこの第m符号化装置1c-mとを比較すると、両第m符号化装置1a-m,1c-mは、同一の構成をなしている。
第m個別符号化部11-m及び共通符号化部12-mは、図2に示した第m個別符号化部11-m及び共通符号化部12-mと同様であるから、ここでは説明を省略する。共通符号化部12-mは、共通符号x(m)を第n復号装置2c-nへ出力する。
以上のように、実施例3の第m符号化装置1c-mによれば、実施例1と同様の効果を奏する。すなわち、取り扱うデータを定義するための負荷を低減することができると共に、第m符号化装置1c-mの入力信号である観測値y(m)の伝送処理、及び、観測値y(1~M)から第n復号装置2c-nの出力信号である復号データz(n)への変換処理を効率的に実現することができる。
(第n復号装置2c-n)
第n復号装置2c-nは、合成部40-n及び第n個別復号部42-nを備えている。図2に示した実施例1の第n復号装置2a-nとこの第n復号装置2c-nとを比較すると、両第n復号装置2a-n,2c-nは、合成部40-n及び第n個別復号部42-nを備えている点で共通する。一方、この第n復号装置2c-nは、共通復号部41-nを備えていない点で、図2の第n復号装置2a-nと相違する。
合成部40-nは、合成結果の共通符号x’(n)を第n個別復号部42-nに出力する。合成部40-nは、図2に示した合成部40-nと同様であるから、ここでは説明を省略する。
第n個別復号部42-nは、合成部40-nから合成結果の共通符号x’(n)を入力し、予め設定されたパラメータs(n)に基づいて、共通符号x’(n)を符号化して復号データz(n)に変換し、復号データz(n)を出力する。第n個別復号部42-nは、図2に示した第n個別復号部42-nと同様であるから、ここでは説明を省略する。
以上のように、実施例3の第n復号装置2c-nによれば、予め設定されたパラメータs(n)に基づいて、共通符号x’(n)が復号データz(n)に変換される。つまり、復号データz(n)の種類に関わることなくパラメータs(n)のみを定義しておけば済むから、前述の特許文献1の手法に比べ、負荷を低減することができる。
したがって、取り扱うデータを定義するための負荷を低減することができると共に、第m符号化装置1c-mの入力信号である観測値y(m)の伝送処理、及び、観測値y(1~M)から第n復号装置2c-nの出力信号である復号データz(n)への変換処理を効率的に実現することができる。
〔学習装置〕
次に、パラメータp(1~M),q,r,s(1~N)を機械学習にて生成する本発明の実施形態による学習装置について説明する。
図1~図4において、M個の符号化装置及びN個の復号装置を動作させるためには、これらの構成部である第1個別符号化部11-1~第M個別符号化部11-M、共通符号化部12-1~12-M、共通復号部41-1~41-N及び第1個別復号部42-1~第N個別復号部42-Nが使用するパラメータp(1~M),q,r,s(1~N)を予め適切に設定しておく必要がある。
例えば、パラメータp(1~M),q,r,s(1~N)は、第m符号化装置1a-mへ与える入力信号であるテスト用の観測値y(m)と、そのときの第n復号装置2a-nから出力される出力信号として期待される復号データz(n)の期待データw(n)との対に基づいて、機械学習を行うことで設定される。
第1個別符号化部11-1~第M個別符号化部11-M、共通符号化部12-1~12-M、共通復号部41-1~41-N及び第1個別復号部42-1~第N個別復号部42-Nのそれぞれをニューラルネットワークにより構成した場合には、パラメータp(1~M),q,r,s(1~N)は、ニューラルネットワークの結合重み係数列となる。
図5は、学習装置の構成例を示すブロック図である。この学習装置3は、学習部31、NN(ニューラルネットワーク)構成部32及び記憶部33を備えている。
学習装置3は、1個以上の符号化装置及び2個以上の復号装置により構成される全体システム、または2個以上の符号化装置及び1個以上の復号装置により構成される全体システムを前提とする。学習装置3は、1個の第m個別符号化部11-m及び1個の第n個別復号部42-nを選択することで、第m個別符号化部11-mから第n個別復号部42-nまでの入出力端子を相互接続して1系統のNNを構成し、当該1系統のNNに対し、観測値y(m)を入力データ、期待データw(n)を出力データとして与えることで、第m個別符号化部11-mから第n個別復号部42-nまでの一連の構成部が最適に動作するように、パラメータp(m),q,r,s(n)を最適化する。そして、学習装置3は、1個の第m個別符号化部11-m及び1個の第n個別復号部42-nを、ランダムにまたは所定の順序で順次選択することで、パラメータp(1~M),q,r,s(1~N)を最適化する。
学習部31は、1個の符号化装置及び1個の復号装置を選択するための指示をNN構成部32に出力することで、NN構成部32に1系統のNNを構成させ、観測値y(m)及び期待データw(n)を入力する。そして、学習部31は、観測値y(m)及び期待データw(n)をNN構成部32に出力することで、1系統のNNに対して観測値y(m)を入力データ、期待データw(n)を出力データとして与え、NN構成部32に、1系統のNNの機械学習を行わせる。
学習部31は、これらの処理を、指示に応じて構成された1系統のNNについて繰り返し行い、NN構成部32から、機械学習により最適化されたパラメータp(1~M),q,r,s(1~N)を入力する。そして、学習部31は、パラメータp(1~M),q,r,s(1~N)を記憶部33に格納する。
記憶部33に格納されたパラメータp(1~M),q,r,s(1~N)は、図1~図4に示したM個の符号化装置及びN個の復号装置における各構成部に、予め設定されたパラメータとして与えられる。
図6は、学習装置3の処理例を示すフローチャートである。学習部31は、機械学習を開始すると、1個の第m個別符号化部11-m及び1個の第n個別復号部42-nを選択するための指示をNN構成部32に出力する(ステップS601)。
NN構成部32は、学習部31から指示を入力すると、乱数を用いて、M個の個別符号化装置のうち1個の第m個別符号化部11-m、及びN個の個別復号部のうち1個の第n個別復号部42-nを選択する(ステップS602)。
NN構成部32は、第m個別符号化部11-mから第n個別復号部42-nまでの一連の構成部の入出力端子を相互に接続し、1系統のNNを構成する(ステップS603)。このNNは、M個の個別符号化装置のうち1個の第m個別符号化部11-mが選択され、かつN個の個別復号部のうち1個の第n個別復号部42-nが選択されているという意味で、1系統である。
学習部31は、第m個別符号化部11-mの入力信号である観測値y(m)、及び第n個別復号部42-nの出力信号である復号データz(n)として期待される期待データw(n)を入力する(ステップS604)。
NN構成部32は、学習部31から観測値y(m)及び復号データz(n)を入力し、1系統のNNに対して観測値y(m)を入力データ、期待データw(n)を出力データとして与え、1系統のNNの機械学習を行い、パラメータp(m),q,r,s(n)を調整する(ステップS605)。
学習部31は、機械学習が完了したか否かを判定し(ステップS606)、機械学習が完了していないと判定した場合(ステップS606:N)、ステップS601へ移行し、新たな選択のための指示をNN構成部32に出力する。機械学習が完了するまでの間、ステップS601~ステップS605の処理(選択処理、構成処理、調整処理等)が繰り返される。これにより、最適なパラメータp(1~M),q,r,s(1~N)が決定される。
一方、学習部31は、ステップS606において、機械学習が完了していると判定した場合(ステップS606:Y)、NN構成部32から、機械学習により決定された最適なパラメータp(1~M),q,r,s(1~N)を入力する。そして、学習部31は、パラメータp(1~M),q,r,s(1~N)を記憶部33に格納する(ステップS607)。
(実施例1に適用する機械学習)
図7は、図2に示した実施例1の符号化装置及び復号装置に対応するNN構成部32の接続例及び構成例を示すブロック図である。このNN構成部32aは、M個の第1個別符号化部11-1~第M個別符号化部11-M、共通符号化部12、共通復号部41、N個の第1個別復号部42-1~第N個別復号部42-N、乱数発生部34、切替部35,36、及びN個の減算部37-1~37-Nを備えている。切替部35は、S1個(第m個別符号化部11-mの出力データの数、共通符号化部12の入力データの数、中間形式値u(m)を構成するデータの数)のスイッチを備えている。切替部36は、S2個(共通復号部41-nの出力データの数、第n個別復号部42-nの入力データの数、中間形式値v(n)を構成するデータの数)のスイッチを備えている。
M個の第1個別符号化部11-1~第M個別符号化部11-Mにおける出力端子(個別符号化部毎の出力端子)と、切替部35に備えたS1個のスイッチの入力端子とが接続されている。また、切替部35に備えたS1個のスイッチの出力端子と、共通符号化部12の入力端子(入力データ毎の入力端子)とが接続されている。また、共通符号化部12の出力端子(出力データ毎の入力端子)と、共通復号部41の入力端子(入力データ毎の入力端子)とが接続されている。
共通復号部41の出力端子(出力データ毎の出力端子)と、切替部36に備えたS2個のスイッチの入力端子とが接続されている。また、切替部36に備えたS2個のスイッチの出力端子と、N個の第1個別復号部42-1~第N個別復号部42-Nの入力端子(個別復号部毎の入力端子)とが接続されている。さらに、N個の第1個別復号部42-1~第N個別復号部42-Nの出力端子(個別復号部毎の出力端子)と、N個の減算部37-1~37-Nの入力端子(減算部毎の入力端子)とが接続されている。
乱数発生部34は、学習部31から、1個の第m個別符号化部11-m及び1個の第n個別復号部42-nを選択するための指示を入力する。そして、乱数発生部34は、1からMまでの整数の一様乱数(または一様乱数を近似する擬似乱数)を発生し、乱数mを切替部35に出力する。また、乱数発生部34は、1からNまでの整数の一様乱数(または一様乱数を近似する擬似乱数)を発生し、乱数nを切替部36に出力する。
切替部35は、乱数発生部34から乱数mを入力し、第m個別符号化部11-mの出力端子のそれぞれと、共通符号化部12の入力端子のそれぞれとを接続するように、S1個のスイッチを切り替える。
切替部36は、乱数発生部34から乱数nを入力し、共通復号部41の出力端子のそれぞれと、第n個別復号部42-nの入力端子のそれぞれとを接続するように、S2個のスイッチを切り替える。
これにより、NN構成部32aにおいて、学習部31から入力した指示にて、第m個別符号化部11-mから、切替部35、共通符号化部12、共通復号部41、切替部36、第n個別復号部42-nを介して減算部37-nまでを接続した1系統のNNが構成される。
NN構成部32aは、学習部31から観測値y(m)及び期待データw(n)を入力し、これらを学習用データとして、1系統のNNにおける第m個別符号化部11-mに観測値y(m)の入力データを与え、減算部37-nに期待データw(n)の出力データを与える。NN構成部32aは、1系統のNNを機械学習する。
具体的には、NN構成部32aは、機械学習時に、第m個別符号化部11-mに観測値y(m)を与え、第m個別符号化部11-mから、切替部35、共通符号化部12、共通復号部41及び切替部36を経て、第n個別復号部42-nへと信号を流し、復号データz(n)を算出する。これにより、図2に示した実施例1の符号化装置及び復号装置の場合と同様に、復号データz(n)が算出される。
NN構成部32aは、減算部37-nに期待データw(n)を与える。減算部37-nは、第n個別復号部42-nから復号データz(n)を入力すると共に、期待データw(n)を入力し、期待データw(n)から復号データz(n)を減算して差分を求め、これを誤差w(n)-z(n)とする。
第n個別復号部42-nは、誤差w(n)-z(n)に基づいて、パラメータs(n)を更新する。例えば、第n個別復号部42-nは、誤差逆伝播法により誤差w(n)-z(n)を逆伝播させることで、パラメータs(n)である結合重み係数を更新する。
共通復号部41は、第n個別復号部42-nから誤差逆伝播法による信号を、切替部36を介して入力し、入力した信号に基づいて、誤差逆伝播法によりパラメータrである結合重み係数を更新する。
共通符号化部12は、共通復号部41から誤差逆伝播法による信号を入力し、入力した信号に基づいて、誤差逆伝播法によりパラメータqである結合重み係数を更新する。
第m個別符号化部11-mは、共通符号化部12から誤差逆伝播法による信号を、切替部35を介して入力し、入力した信号に基づいて、誤差逆伝播法によりパラメータp(m)である結合重み係数を更新する。
これにより、学習部31からの指示に応じて、1系統のNNに対して最適なパラメータp(m),q,r,s(n)が決定される。
更なる学習を行う場合には、NN構成部32aは、学習部31から、1個の第m個別符号化部11-m及び1個の第n個別復号部42-nを選択するための新たな指示を入力する。
これにより、乱数発生部34により新たな乱数m,nが出力され、新たな第m個別符号化部11-mから、切替部35、共通符号化部12、共通復号部41、切替部36、新たな第n個別復号部42-nを介して新たな減算部37-nまでを接続した1系統のNNが構成される。そして、新たな観測値y(m)及び期待データw(n)が学習用データとして与えられ、新たな1系統のNNが機械学習され、最適なパラメータp(m),q,r,s(n)が決定される。
このような学習部31からの指示に応じた処理を適宜繰り返すことで、M個の第1個別符号化部11-1~第M個別符号化部11-M、共通符号化部12、共通復号部41及びN個の第1個別復号部42-1~第N個別復号部42-Nの系における復号データz(1~N)の推定精度が向上するように、パラメータp(1~M),q,r,s(1~N)が更新される。
この場合、共通符号化部12により更新されるパラメータqは、M個の共通符号化部12-1~12-Mで共通に使用されるパラメータである。このため、パラメータqは、乱数発生部34により発生した乱数mに応じて選択される第m個別符号化部11-mによることなく、共通的に更新される。
また、共通復号部41により更新されるパラメータrは、N個の共通復号部41-1~41-Nで共通に使用されるパラメータである。このため、パラメータrは、乱数発生部34により発生した乱数nに応じて選択される第n個別復号部42-nによることなく、共通的に更新される。
一方、第m個別符号化部11-mにより更新されるパラメータp(m)は、乱数発生部34により発生した乱数mに応じて当該第m個別符号化部11-mが選択された場合にのみ、更新される。同様に、第n個別復号部42-nにより更新されるパラメータs(n)は、乱数発生部34により発生した乱数nに応じて当該第n個別復号部42-nが選択された場合にのみ、更新される。
以上のように、本発明の実施形態の学習装置3によれば、実施例1に適用する機械学習を行う場合に、学習部31は、1系統のNNを構成させるための指示をNN構成部32aに出力し、NN構成部32aは、学習部31からの指示により発生した乱数m,nに従い、1個の第m個別符号化部11-m及び1個の第n個別復号部42-nを選択する。そして、NN構成部32aは、図2に示した実施例1の符号化装置及び復号装置に対応して、第m個別符号化部11-m、共通符号化部12、共通復号部41及び第n個別復号部42-nによる1系統のNNを構成する。
NN構成部32aは、観測値y(m)を入力データ、期待データw(n)を出力データとして、1系統のNNを機械学習し、パラメータp(m),q,r,s(n)を更新する。そして、NN構成部32aは、学習部31からの新たな指示に従って処理を繰り返すことで、最適なパラメータp(1~M),q,r,s(1~N)を決定する。
これにより、図2に示した実施例1の符号化装置及び復号装置に対応した機械学習が行われ、第1個別符号化部11-1~第M個別符号化部11-Mがそれぞれ使用するパラメータp(1~M)、共通符号化部12-1~12-Mが共通に使用するパラメータq、共通復号部41-1~41-Nが共通に使用するパラメータr、及び第1個別復号部42-1~第N個別復号部42-Nがそれぞれ使用するパラメータs(1~N)が決定される。
(実施例2に適用する機械学習)
図8は、図3に示した実施例2の符号化装置及び復号装置に対応するNN構成部32の接続例及び構成例を示すブロック図である。このNN構成部32bは、M個の第1個別符号化部11-1~第M個別符号化部11-M、共通復号部41、N個の第1個別復号部42-1~第N個別復号部42-N、乱数発生部34、切替部35,36、及びN個の減算部37-1~37-Nを備えている。
図7に示したNN構成部32aとこのNN構成部32bとを比較すると、両NN構成部32a,32bは、M個の第1個別符号化部11-1~第M個別符号化部11-M、共通復号部41、N個の第1個別復号部42-1~第N個別復号部42-N、乱数発生部34、切替部35,36、及びN個の減算部37-1~37-Nを備えている点で共通する。一方、NN構成部32aは共通符号化部12を備えているが、NN構成部32bは、共通符号化部12を備えていない点でNN構成部32aと相違する。
M個の第1個別符号化部11-1~第M個別符号化部11-M、共通復号部41、N個の第1個別復号部42-1~第N個別復号部42-N、乱数発生部34、切替部35,36、及びN個の減算部37-1~37-Nは、図7と同様であるから、ここでは説明を省略する。
ここで、切替部35は、乱数発生部34から乱数mを入力することで、図7と同様に、スイッチを切り替える。これにより、第m個別符号化部11-mの出力端子のそれぞれと共通復号部41の入力端子のそれぞれとが接続される。
NN構成部32bは、学習部31から入力した指示にて、第m個別符号化部11-mから、切替部35、共通復号部41、切替部36、第n個別復号部42-nを介して減算部37-nまでを接続した1系統のNNを構成する。
NN構成部32bは、学習部31から観測値y(m)及び期待データw(n)を入力し、これらを学習用データとして、1系統のNNにおける第m個別符号化部11-mに観測値y(m)の入力データを与え、減算部37-nに期待データw(n)の出力データを与える。NN構成部32bは、1系統のNNを機械学習する。
更なる学習を行う場合には、NN構成部32bは、学習部31から、1個の第m個別符号化部11-m及び1個の第n個別復号部42-nを選択するための新たな指示を入力する。
このような学習部31からの指示に応じた処理を適宜繰り返すことで、M個の第1個別符号化部11-1~第M個別符号化部11-M、共通復号部41及び第1個別復号部42-1~第N個別復号部42-Nの系における復号データz(1~N)の推定精度が向上するように、パラメータp(1~M),r,s(1~N)が更新される。
以上のように、本発明の実施形態の学習装置3によれば、実施例2に適用する機械学習を行う場合に、学習部31は、1系統のNNを構成させるための指示をNN構成部32bに出力し、NN構成部32bは、学習部31からの指示により発生した乱数m,nに従い、1個の第m個別符号化部11-m及び1個の第n個別復号部42-nを選択する。そして、NN構成部32bは、図3に示した実施例2の符号化装置及び復号装置に対応して、第m個別符号化部11-m、共通復号部41及び第n個別復号部42-nによる1系統のNNを構成する。
NN構成部32bは、観測値y(m)を入力データ、期待データw(n)を出力データとして、1系統のNNを機械学習し、パラメータp(m),r,s(n)を更新する。そして、NN構成部32bは、学習部31からの新たな指示に従って処理を繰り返すことで、最適なパラメータp(1~M),r,s(1~N)を決定する。
これにより、図3に示した実施例2の符号化装置及び復号装置に対応した機械学習が行われ、第1個別符号化部11-1~第M個別符号化部11-Mがそれぞれ使用するパラメータp(1~M)、共通復号部41-1~41-Nが共通に使用するパラメータr、及び第1個別復号部42-1~第N個別復号部42-Nがそれぞれ使用するパラメータs(1~N)が決定される。
(実施例3に適用する機械学習)
図9は、図4に示した実施例3の符号化装置及び復号装置に対応するNN構成部32の接続例及び構成例を示すブロック図である。このNN構成部32cは、M個の第1個別符号化部11-1~第M個別符号化部11-M、共通符号化部12、N個の第1個別復号部42-1~第N個別復号部42-N、乱数発生部34、切替部35,36、及びN個の減算部37-1~37-Nを備えている。
図7に示したNN構成部32aとこのNN構成部32cとを比較すると、両NN構成部32a,32cは、M個の第1個別符号化部11-1~第M個別符号化部11-M、共通符号化部12、N個の第1個別復号部42-1~第N個別復号部42-N、乱数発生部34、切替部35,36、及びN個の減算部37-1~37-Nを備えている点で共通する。一方、NN構成部32aは共通復号部41を備えているが、NN構成部32cは、共通復号部41を備えていない点でNN構成部32aと相違する。
M個の第1個別符号化部11-1~第M個別符号化部11-M、共通符号化部12、N個の第1個別復号部42-1~第N個別復号部42-N、乱数発生部34、切替部35,36、及びN個の減算部37-1~37-Nは、図7と同様であるから、ここでは説明を省略する。
ここで、切替部36は、乱数発生部34から乱数nを入力することで、図7と同様に、スイッチを切り替える。これにより、共通符号化部12の出力端子のそれぞれと第n個別復号部42-nの入力端子のそれぞれとが接続される。
NN構成部32cは、学習部31から入力した指示にて、第m個別符号化部11-mから、切替部35、共通符号化部12、切替部36、第n個別復号部42-nを介して減算部37-nまでを接続した1系統のNNを構成する。
NN構成部32cは、学習部31から観測値y(m)及び期待データw(n)を入力し、これらを学習用データとして、1系統のNNにおける第m個別符号化部11-mに観測値y(m)の入力データを与え、減算部37-nに期待データw(n)の出力データを与える。NN構成部32cは、1系統のNNを機械学習する。
更なる学習を行う場合には、NN構成部32cは、学習部31から、1個の第m個別符号化部11-m及び1個の第n個別復号部42-nを選択するための新たな指示を入力する。
このような学習部31からの指示に応じた処理を適宜繰り返すことで、M個の第1個別符号化部11-1~第M個別符号化部11-M、共通符号化部12及び第1個別復号部42-1~第N個別復号部42-Nによる系における復号データz(1~N)の推定精度が向上するように、パラメータp(1~M),q,s(1~N)が更新される。
以上のように、本発明の実施形態の学習装置3によれば、実施例3に適用する機械学習を行う場合に、学習部31は、1系統のNNを構成させるための指示をNN構成部32cに出力し、NN構成部32cは、学習部31からの指示により発生した乱数m,nに従い、1個の第m個別符号化部11-m及び1個の第n個別復号部42-nを選択する。そして、NN構成部32cは、図4に示した実施例3の符号化装置及び復号装置に対応して、第m個別符号化部11-m、共通符号化部12及び第n個別復号部42-nによる1系統のNNを構成する。
NN構成部32cは、観測値y(m)を入力データ、期待データw(n)を出力データとして、1系統のNNを機械学習し、パラメータp(m),q,s(n)を更新する。そして、NN構成部32cは、学習部31からの新たな指示に従って処理を繰り返すことで、最適なパラメータp(1~M),q,s(1~N)を決定する。
これにより、図4に示した実施例3の符号化装置及び復号装置に対応した機械学習が行われ、第1個別符号化部11-1~第M個別符号化部11-Mがそれぞれ使用するパラメータp(1~M)、共通符号化部12-1~12-Mが共通に使用するパラメータq、及び第1個別復号部42-1~第N個別復号部42-Nがそれぞれ使用するパラメータs(1~N)が決定される。
〔変換装置〕
次に、観測値y(m)を復号データz(n)に変換する本発明の実施形態による変換装置について説明する。
図10は、本発明の実施形態による変換装置の構成例を示すブロック図である。この変換装置4は、第m符号化装置1a-m及び第n復号装置2a’-nを備えている。第m符号化装置1a-mは、第m個別符号化部11-m及び共通符号化部12-mを備えており、第n復号装置2a’-nは、共通復号部41-n及び第n個別復号部42-nを備えている。
変換装置4は、センサーから観測値y(m)を入力し、予め設定されたパラメータp(m),qに基づいて、観測値y(m)を共通符号x(m)に変換し、予め設定されたパラメータr,s(n)に基づいて、共通符号x(m)を復号データz(n)に変換する。つまり、変換装置4は、共通符号x(m)を介して、センサーからの観測値y(m)を復号データz(n)に変換する写像装置である。
変換装置4は、例えば図5に示した学習装置3により機械学習された第m個別符号化部11-m及び共通符号化部12(12-m)を備えた第m符号化装置1a-mと、同様に機械学習された共通復号部41(41-n)及び第n個別復号部42-nを備えた第n復号装置2a’-nとが接続されて構成される。
第m符号化装置1a-mは、図2に示した第m符号化装置1a-mと同様であるからここでは説明を省略する。共通符号化部12-mは、共通符号x(m)を共通復号部41-nに出力する。
第n復号装置2a’-nの共通復号部41-nは、共通符号化部12-mから共通符号x(m)を入力し、図2に示した共通復号部41-nと同様に、予め設定されたパラメータrに基づいて、共通符号x(m)を中間形式値v(n)に変換する。
第n個別復号部42-nは、共通復号部41-nから中間形式値v(n)を入力し、図2に示した第n個別復号部42-nと同様に、予め設定されたs(n)に基づいて、中間形式値v(n)を復号データz(n)に変換する。
ここで、例えば機械学習時に、学習装置3は、第m個別符号化部11-mに対し、ある物理量を測定するセンサーによる観測値y(m)を与え、第n個別復号部42-n(減算部37-n)に対し、別の数量(物理量であっても構わない)として推定されるべき期待データw(n)を与える。
このような機械学習により調整されたパラメータp(m),q,r,s(n)を用いることで、変換装置4は、ある物理量から別の数量への写像を実行することができる。
例えば、変換装置4は、部屋の壁に設置された温度センサーにより測定された温度を観測値y(m)として入力し、これを復号データz(n)に変換する。これにより、部屋の中央部分の温度を復号データz(n)として推定することができる。
また、変換装置4は、あるセンサー(m番目のセンサー)から観測値y(m)を入力し、これを復号データz(n)に変換する。これにより、他のセンサー(n番目のセンサー)が観測する観測値を、復号データz(n)として推定することができる。
図12は、変換装置4の適用例を説明する図であり、他のセンサー(n番目のセンサー)が観測する観測値を推定する例である。この適用例は、1台のカメラ6-mにより撮影される観測対象5の映像信号を観測値y(m)とし、仮想カメラ7により撮影される観測対象5の映像信号を復号データz(n)とした場合に、観測値y(m)を用いて復号データz(n)を生成する例である。
図示しない変換装置4は、所定位置のカメラ6-m(m番目のセンサー)により撮影された映像信号の観測値y(m)を入力し、実際には存在しない他の視点位置の仮想カメラ7(n番目のセンサー)により撮影される映像信号を、復号データz(n)として推定する。
尚、変換装置4が用いるパラメータp(m),q,r,s(n)は、例えば図5に示した学習装置3により予め設定される。学習装置3が機械学習を行う際には、図7に示したNN構成部32aの構成において、所定位置のカメラ6-mにより撮影された映像信号の観測値y(m)に加え、仮想カメラ7の位置に実際のカメラを配置して撮影された映像信号の観測値が期待データz(n)として用いられる。
以上のように、本発明の実施形態の変換装置4によれば、観測値y(m)を、当該観測値y(m)と同じ種類のデータまたは異なる種類のデータに変換することができる。また、取り扱うデータを定義するための負荷を低減することができると共に、第m符号化装置1a-mの入力信号である観測値y(m)を、共通符号x(m)を介して第n復号装置2a’-nへ出力する処理、及び、観測値y(m)から第n復号装置2a’-nの出力信号である復号データz(n)への変換処理を効率的に実現することができる。
以上、実施形態を挙げて本発明を説明したが、本発明は前記実施形態に限定されるものではなく、その技術思想を逸脱しない範囲で種々変形可能である。例えば、前記実施形態では、第m符号化装置1a-mに備えた第m個別符号化部11-m及び共通符号化部12-mをNNにより構成する場合、いずれか一方または両方の構成部において、出力層の素子数が入力層の素子数より少なくなるように構成してもよい。第m符号化装置1b-mに備えた第m個別符号化部11-mをNNにより構成する場合も同様である。
同様に、第n復号装置2a-nに備えた共通復号部41-n及び第n個別復号部42-nをNNにより構成する場合、いずれか一方または両方の構成部において、出力層の素子数が入力層の素子数より多くなるように構成してもよい。第n復号装置2c-nに備えた第n個別復号部42-n部をNNにより構成する場合も同様である。
このような構成により、第m符号化装置1a-m及び第n復号装置2a-nを接続した変換装置4を、オートエンコーダとすることができ、第m符号化装置1a-mにデータ圧縮の機能、第n復号装置2a-nにデータ伸張の機能をそれぞれ付与することができる。また、共通符号x(1~M)のデータ量を削減することができる。
また、前記実施形態では、学習装置3のNN構成部32は、乱数を用いて、M個の個別符号化装置のうち1個の第m個別符号化部11-m、及びN個の個別復号部のうち1個の第n個別復号部42-nを選択するようにした。本発明は、乱数を用いることに限定されるものではなく、乱数を用いる手法以外の手法により、1個の第m個別符号化部11-m及び1個の第n個別復号部42-nを選択するようにしてもよい。
尚、本発明の実施形態による第m符号化装置1a-m,1b-m,1c-m(mは1~Mの自然数)、第n復号装置2a-n,2b-n,2c-n,2a’-n(nは1~Nの自然数)、学習装置3及び変換装置4のハードウェア構成としては、通常のコンピュータを使用することができる。第m符号化装置1a-m,1b-m,1c-m、第n復号装置2a-n,2b-n,2c-n,2a’-n、学習装置3及び変換装置4は、CPU、RAM等の揮発性の記憶媒体、ROM等の不揮発性の記憶媒体、及びインターフェース等を備えたコンピュータによって構成される。
第m符号化装置1a-m,1c-mに備えた第m個別符号化部11-m及び共通符号化部12-mの各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。また、第m符号化装置1b-mに備えた第m個別符号化部11-mの機能は、この機能を記述したプログラムをCPUに実行させることにより実現される。
第n復号装置2a-n,2b-nに備えた合成部40-n、共通復号部41-n及び第n個別復号部42-nの各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。また、第n復号装置2c-nに備えた合成部40-n及び第n個別復号部42-nの各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。また、第n復号装置2a’-nに備えた共通復号部41-n及び第n個別復号部42-nの各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。
学習装置3に備えた学習部31、NN構成部32及び記憶部33の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。また、変換装置4に備えた第m符号化装置1a-m及び第n復号装置2a’-nの各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。
これらのプログラムは、前記記憶媒体に格納されており、CPUに読み出されて実行される。また、これらのプログラムは、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD-ROM、DVD等)、半導体メモリ等の記憶媒体に格納して頒布することもでき、ネットワークを介して送受信することもできる。