JPH02234573A - ニューラルネットを用いた符号化伝送方法およびその装置 - Google Patents
ニューラルネットを用いた符号化伝送方法およびその装置Info
- Publication number
- JPH02234573A JPH02234573A JP1055579A JP5557989A JPH02234573A JP H02234573 A JPH02234573 A JP H02234573A JP 1055579 A JP1055579 A JP 1055579A JP 5557989 A JP5557989 A JP 5557989A JP H02234573 A JPH02234573 A JP H02234573A
- Authority
- JP
- Japan
- Prior art keywords
- layer
- neural network
- output
- vector
- units
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 25
- 230000005540 biological transmission Effects 0.000 title claims description 17
- 230000001537 neural effect Effects 0.000 title abstract 2
- 239000013598 vector Substances 0.000 claims abstract description 77
- 238000013139 quantization Methods 0.000 claims abstract description 30
- 238000006243 chemical reaction Methods 0.000 claims abstract description 9
- 230000006870 function Effects 0.000 claims description 42
- 238000013528 artificial neural network Methods 0.000 claims description 36
- 230000009466 transformation Effects 0.000 claims description 8
- 238000012549 training Methods 0.000 abstract description 6
- 230000008878 coupling Effects 0.000 abstract description 2
- 238000010168 coupling process Methods 0.000 abstract description 2
- 238000005859 coupling reaction Methods 0.000 abstract description 2
- 238000013461 design Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000005192 partition Methods 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 238000000638 solvent extraction Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 210000000653 nervous system Anatomy 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 102000005717 Myeloma Proteins Human genes 0.000 description 1
- 108010045503 Myeloma Proteins Proteins 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
「産業上の利用分野」
この発明は、例えば、画像信号や音声信号を高能率符号
化(データ圧縮)して伝送する場合等に用いて好適なニ
ューラルネットを用いた符号化伝送方法およびその装置
に関する。
化(データ圧縮)して伝送する場合等に用いて好適なニ
ューラルネットを用いた符号化伝送方法およびその装置
に関する。
「従来の技術」
従来、アイ・シー・エス レポート8702(G .W
CotLrell,P .Munro add D .
Z ipser.19g?−.lsagecompre
ssion by back propagation
: an exaa+pleor externa
l programing.I C S Rep
.8702,Univof California.
San Diego, I nstitute
forCognitive Science.)に
おいて論じられているように、ニューラルネット(人間
の脳神経系に似たネットワークで、その基本構底素子で
あるユニットは脳神経系のニューロンに対応している)
を用いた変換符号化により画像情報等の圧縮を行う試み
がなされている。その中では、ニューラルネットに対し
て、バックプロパケーション・アルゴリズムによって各
ユニット間の結合の強さを学旨する方法がとられている
。
CotLrell,P .Munro add D .
Z ipser.19g?−.lsagecompre
ssion by back propagation
: an exaa+pleor externa
l programing.I C S Rep
.8702,Univof California.
San Diego, I nstitute
forCognitive Science.)に
おいて論じられているように、ニューラルネット(人間
の脳神経系に似たネットワークで、その基本構底素子で
あるユニットは脳神経系のニューロンに対応している)
を用いた変換符号化により画像情報等の圧縮を行う試み
がなされている。その中では、ニューラルネットに対し
て、バックプロパケーション・アルゴリズムによって各
ユニット間の結合の強さを学旨する方法がとられている
。
例えば、入力層と出力層のユニットの個数が同じで、中
間層のユニットの個数が人出力層のユニットの個数より
も少ない3層の階層構造(各ユニットが入力層から出力
層へ向かう方向へのみ結合している構造)のニューラル
ネットを用意し、バックプロバゲーション・アルゴリズ
ムにより、入力層と出力層に、同iのパターンを与えて
学習を進め、入力パターンに対して、同一のパターンが
出力されるように各ユニット間の結合の強さを変化させ
る。すなわち、入力層の各ユニットに入力データを与え
ると、その信号は各ユニットで変換され中間層の各ユニ
ットに伝搬され、さらに出力層の各ユニットに伝搬され
て出力されるが、その出力値と、望ましい出力値とを比
較し、その差を減らすように各ユニット間の結合の強さ
を変化させる。バックプロバケーションはこうした多層
のネットワークの学習アルゴリスムである。
間層のユニットの個数が人出力層のユニットの個数より
も少ない3層の階層構造(各ユニットが入力層から出力
層へ向かう方向へのみ結合している構造)のニューラル
ネットを用意し、バックプロバゲーション・アルゴリズ
ムにより、入力層と出力層に、同iのパターンを与えて
学習を進め、入力パターンに対して、同一のパターンが
出力されるように各ユニット間の結合の強さを変化させ
る。すなわち、入力層の各ユニットに入力データを与え
ると、その信号は各ユニットで変換され中間層の各ユニ
ットに伝搬され、さらに出力層の各ユニットに伝搬され
て出力されるが、その出力値と、望ましい出力値とを比
較し、その差を減らすように各ユニット間の結合の強さ
を変化させる。バックプロバケーションはこうした多層
のネットワークの学習アルゴリスムである。
このような学習によって、ユニット数の少ない中間層に
おいては、入力パターンを効率良く表現して出力層へ伝
達しようとする機能が自己組織され、この結果、入力層
と中間層の間で情報圧縮が行なわれ、中間層と出力層の
間で情報復元が行なわれるニューラルネットが構築され
る。この学習を終えたニューラルネットを入力層から中
間層に至るコーディング機能都分と中間層から出力層に
至るデコーディング機能部分とに分離し、送信側ではニ
ューラルネットのコーディング機能部分を通して変換係
数(中間層の出力値)を求め、この変換係数を量子化し
て受信側へ送り、受信側ではデコーディング機能部分を
通して変換係数を逆変換して元の信号を復元することに
より、ニューラルネットを用いた符号化伝送が実現され
る。
おいては、入力パターンを効率良く表現して出力層へ伝
達しようとする機能が自己組織され、この結果、入力層
と中間層の間で情報圧縮が行なわれ、中間層と出力層の
間で情報復元が行なわれるニューラルネットが構築され
る。この学習を終えたニューラルネットを入力層から中
間層に至るコーディング機能都分と中間層から出力層に
至るデコーディング機能部分とに分離し、送信側ではニ
ューラルネットのコーディング機能部分を通して変換係
数(中間層の出力値)を求め、この変換係数を量子化し
て受信側へ送り、受信側ではデコーディング機能部分を
通して変換係数を逆変換して元の信号を復元することに
より、ニューラルネットを用いた符号化伝送が実現され
る。
「発明が解決しようとする課題」
ところで、上述したアイ・シー・エス レポート870
2におけるニューラルネットを用いた変換符号化におい
ては、量子化の際、線形スカラー量子化を行っている。
2におけるニューラルネットを用いた変換符号化におい
ては、量子化の際、線形スカラー量子化を行っている。
伝送レートを一定にして量子化する場合、スカラー量子
化よりもベクトル量子化の方が効率が良いことが知られ
ている。
化よりもベクトル量子化の方が効率が良いことが知られ
ている。
ここで、線形スカラー量子化とは、M個の各ユニットの
出力値(実数)が区間(a,b)の値をとる場合、各ユ
ニットについて、この区間をL等分し、( b−3−i
, ’−”(i+ 1 ))にある出力値を、L
L b−a(t+ 1 )で代表させる量子化のことである
。
出力値(実数)が区間(a,b)の値をとる場合、各ユ
ニットについて、この区間をL等分し、( b−3−i
, ’−”(i+ 1 ))にある出力値を、L
L b−a(t+ 1 )で代表させる量子化のことである
。
L2
但し、i=o.l,・・・.L−1.
上記スカラー量子化に対して、ベクトル量子化とは、M
次元の空間の領域(上記の例では、一辺がb−aの超立
方体)をいくつかの領域に分割し、それぞれの領域内に
ある全ての点を、その領域内のあるひとつの代表点で代
表さける張子化のことである。この代表点のことを代表
ベクトルと呼び、代表ベクトルの集まりをコードブック
と呼ぶ。また、これらの代表ベクトルに付けた番号のこ
とをインデックスと呼ぶ。
次元の空間の領域(上記の例では、一辺がb−aの超立
方体)をいくつかの領域に分割し、それぞれの領域内に
ある全ての点を、その領域内のあるひとつの代表点で代
表さける張子化のことである。この代表点のことを代表
ベクトルと呼び、代表ベクトルの集まりをコードブック
と呼ぶ。また、これらの代表ベクトルに付けた番号のこ
とをインデックスと呼ぶ。
そして、伝送レート一定にして量子化する場合、スカラ
ー量子化よりもベクトル量子化の方が効率が良いのは、
以下の理由による。
ー量子化よりもベクトル量子化の方が効率が良いのは、
以下の理由による。
M次元空間内のある点(ベクトル)を転送する場合を考
える。スカラー量子化の場合、logLの符号長をもっ
た成分をM個送り、ベクトル量子化の場合1ogLMの
符号長をもったインデックスを1個送れば、M log
L = logL ’!であるから、どちらも伝送レー
トは同じになる。このとき再現できるベクトルの種類を
考えると、スカラー量子化の場合L種類の成分の組み合
わせでできるベクトルに限られてしまうが、ベクトル量
子化の場合しM個の異なったベクトルが利用できる。ま
た、このことをM次元空間の領域分割で考えると、スカ
ラー量子化では、LM個の小さな(一辺か甲の)超立方
体に分割される(各ユニット毎に分割数を変えても構わ
ないが、この場合、領域は超直方体になる)が、ベクト
ル量子化では、同じ個数の任意の形の領域に分割できる
ため、より忠実に再現されるように量子化することがで
きる。
える。スカラー量子化の場合、logLの符号長をもっ
た成分をM個送り、ベクトル量子化の場合1ogLMの
符号長をもったインデックスを1個送れば、M log
L = logL ’!であるから、どちらも伝送レー
トは同じになる。このとき再現できるベクトルの種類を
考えると、スカラー量子化の場合L種類の成分の組み合
わせでできるベクトルに限られてしまうが、ベクトル量
子化の場合しM個の異なったベクトルが利用できる。ま
た、このことをM次元空間の領域分割で考えると、スカ
ラー量子化では、LM個の小さな(一辺か甲の)超立方
体に分割される(各ユニット毎に分割数を変えても構わ
ないが、この場合、領域は超直方体になる)が、ベクト
ル量子化では、同じ個数の任意の形の領域に分割できる
ため、より忠実に再現されるように量子化することがで
きる。
このように、スカラー量子化よりも伝送効率の良いベク
トル量子化を実現するためには、コードブックが必要と
なるが、ニューラルネットを用いた変換符号化のように
、非線形の変換に適したコードブックの設計方法は未だ
提案されていなかった。例えば、中間層を絞って学習さ
せた後、変換係数の空間で、LBGアルゴリズム(アイ
・イー・イー・イー トランザクションオン コミュニ
ケーションンズ ( I E E E T rans
actions onC ommunicat ion
)誌.1980年1月号84〜95頁に記載された[ア
ン アルゴリズム フオーベクトル クアンタイザー
デザイン(A n A Igorithmfor V
ecLor Q uarrtizer D esign
)Jを参照の事)でコードブックの設計を行う方法も考
えられるが、このようにするとボロノイ領域は中間層に
現れ、それらをマップさせてできる部分空間では一般に
ボロノイ分割にはなっておらず、劣化が生じる。
トル量子化を実現するためには、コードブックが必要と
なるが、ニューラルネットを用いた変換符号化のように
、非線形の変換に適したコードブックの設計方法は未だ
提案されていなかった。例えば、中間層を絞って学習さ
せた後、変換係数の空間で、LBGアルゴリズム(アイ
・イー・イー・イー トランザクションオン コミュニ
ケーションンズ ( I E E E T rans
actions onC ommunicat ion
)誌.1980年1月号84〜95頁に記載された[ア
ン アルゴリズム フオーベクトル クアンタイザー
デザイン(A n A Igorithmfor V
ecLor Q uarrtizer D esign
)Jを参照の事)でコードブックの設計を行う方法も考
えられるが、このようにするとボロノイ領域は中間層に
現れ、それらをマップさせてできる部分空間では一般に
ボロノイ分割にはなっておらず、劣化が生じる。
このLBGアルゴリズムは、ベクトル量子化において、
上述した領域分割と、代表ベクトルを求める(コードブ
ックを設計する)アルゴリズムのひとつであり、与えら
れた入力ベクトルのセットに対して、入力ベクトルと代
表ベクトルとの誤差が小さくなるように決めるわけであ
るが、必要条件として、分割がボロノイ分割になってい
なければならない。ボロノイ分割とは、領域同士の境界
而が代表ベクトルの垂直二等分面上に位置し、代表ベク
トルがその領域内の全てのベクトルの重心に位置するよ
うな分割のことであり、このようにしてできた領域はボ
ロノイ領域と呼ばれる。LBGアルゴリズムでは、初め
に適当な位置に代表ベクトルを配置し、クラスタリング
(領域分割)と代表ベクトルの重心の移動とを繰り返し
実行することにより、ボロノイ分割を求める。(尚、こ
のようにしてできた分割は、必要条件を満たしていると
いうだけで、誤差が最小になっているという保証はない
。実際、初期条件に依存して良い分割ができたり、でき
なかったりする。)さて、ニューラルネットの中間層に
おいて、このようなボロノイ分割ができたとする。これ
を出力層にマップすると、出力層の空間に埋め込まれた
M次元の空間である分割ができているわけであるが、こ
れはボロノイ分割になっていない。なぜなら、中間層の
空間で領域同士の境界面が代表ベクトルの垂直二等分面
上に位置していても、マップされた空間では非線形性に
よって、そうはならないからである。これは、非線形の
マッピングをr(κ)で表すと、非線形の定義から、 理解されよう。
上述した領域分割と、代表ベクトルを求める(コードブ
ックを設計する)アルゴリズムのひとつであり、与えら
れた入力ベクトルのセットに対して、入力ベクトルと代
表ベクトルとの誤差が小さくなるように決めるわけであ
るが、必要条件として、分割がボロノイ分割になってい
なければならない。ボロノイ分割とは、領域同士の境界
而が代表ベクトルの垂直二等分面上に位置し、代表ベク
トルがその領域内の全てのベクトルの重心に位置するよ
うな分割のことであり、このようにしてできた領域はボ
ロノイ領域と呼ばれる。LBGアルゴリズムでは、初め
に適当な位置に代表ベクトルを配置し、クラスタリング
(領域分割)と代表ベクトルの重心の移動とを繰り返し
実行することにより、ボロノイ分割を求める。(尚、こ
のようにしてできた分割は、必要条件を満たしていると
いうだけで、誤差が最小になっているという保証はない
。実際、初期条件に依存して良い分割ができたり、でき
なかったりする。)さて、ニューラルネットの中間層に
おいて、このようなボロノイ分割ができたとする。これ
を出力層にマップすると、出力層の空間に埋め込まれた
M次元の空間である分割ができているわけであるが、こ
れはボロノイ分割になっていない。なぜなら、中間層の
空間で領域同士の境界面が代表ベクトルの垂直二等分面
上に位置していても、マップされた空間では非線形性に
よって、そうはならないからである。これは、非線形の
マッピングをr(κ)で表すと、非線形の定義から、 理解されよう。
このように、LBGアルゴリズム等の従来の方法で変換
係数に対してコードブックの設計を行っても、変換した
後には一般に最適なものにはなっておらず、従って、ニ
ューラルネットを用いた変換符号化のように、非線形の
変換に適したコードブックの設計方法を開発することが
重要な課題となっていた。
係数に対してコードブックの設計を行っても、変換した
後には一般に最適なものにはなっておらず、従って、ニ
ューラルネットを用いた変換符号化のように、非線形の
変換に適したコードブックの設計方法を開発することが
重要な課題となっていた。
この発明は上述した事情に鑑みてなされたもので、変換
係数の空間における量子化の点について配慮し、ニュー
ラルネットによる非線形変換の特性に適したコードブッ
クが設計されるニューラルネットを用いた符号化伝送方
法およびその装置を提供することを目的としている。
係数の空間における量子化の点について配慮し、ニュー
ラルネットによる非線形変換の特性に適したコードブッ
クが設計されるニューラルネットを用いた符号化伝送方
法およびその装置を提供することを目的としている。
「課題を解決するための手段」
この発明は、階層構造であって中間層のユニット数が入
出力層のユニット数よりも少ないニューラルネットに予
めバックプロパケーション・アルゴリズムによって学習
を行った後、該ニューラルネットを入力層から中間層に
至るコーディング機能部分と中間層から出力層に至るデ
コーディング機能部分に分離し、送信側では而記ニュー
ラルネットのコーディング機能部分を通して変換係数を
求め、該変換係数を量子化して受信側へ送り、受信側で
は前記デコーディング機能部分を通して前記変換係数を
逆変換して元の信号を復元するニューラルネットを用い
た符号化伝送方法において、前記学習時に、中間層の出
力値である変換係数が、,ベクトル量子化におけるコー
ドブックの所定個数の代表ベクトルの中のいずれかの値
となるように、所定のコスト関数を用いて、ベクトル量
子化に適した変換係数とコードブックの,学腎を同時に
行うことを特徴としている。
出力層のユニット数よりも少ないニューラルネットに予
めバックプロパケーション・アルゴリズムによって学習
を行った後、該ニューラルネットを入力層から中間層に
至るコーディング機能部分と中間層から出力層に至るデ
コーディング機能部分に分離し、送信側では而記ニュー
ラルネットのコーディング機能部分を通して変換係数を
求め、該変換係数を量子化して受信側へ送り、受信側で
は前記デコーディング機能部分を通して前記変換係数を
逆変換して元の信号を復元するニューラルネットを用い
た符号化伝送方法において、前記学習時に、中間層の出
力値である変換係数が、,ベクトル量子化におけるコー
ドブックの所定個数の代表ベクトルの中のいずれかの値
となるように、所定のコスト関数を用いて、ベクトル量
子化に適した変換係数とコードブックの,学腎を同時に
行うことを特徴としている。
また、この発明によるニューラルネットを用いた符号化
伝送装置においては、而記送信側のニューラルネットの
コーディング機能部分を通して得られる変換係数を入力
とし、ハッシュ関数によりインデックスを出力するベク
トル量子化器を具備することを特徴としている。
伝送装置においては、而記送信側のニューラルネットの
コーディング機能部分を通して得られる変換係数を入力
とし、ハッシュ関数によりインデックスを出力するベク
トル量子化器を具備することを特徴としている。
「作用」
ニューラルネットの学旨時において、中間層の出力値で
ある変換係数が、ベクトル量子化におけるコードブック
の所定個数の代表ベクトルの中のいずれかの値となるよ
うに、所定のコスト関数を導入することによ・って、ベ
クトル量子化に適した変換係数とコードブックの学習と
が同時に行われ、変換係数に處じた最適なコードブック
が生成される。
ある変換係数が、ベクトル量子化におけるコードブック
の所定個数の代表ベクトルの中のいずれかの値となるよ
うに、所定のコスト関数を導入することによ・って、ベ
クトル量子化に適した変換係数とコードブックの学習と
が同時に行われ、変換係数に處じた最適なコードブック
が生成される。
「実施例」
以下、図面を参照し、この発明の実施例について説明す
る。
る。
第i図はこの発明の一実施例であるニューラルネットの
学M時における構成図である。この実施例において、ニ
ューラルネットは5層の階層構造となっており、第1層
(入力層)と第5層(出力層)のユニット(図中Oで示
す部分)の個数は同じで、第3層(中間層)のユニット
の個数が人出力層のユニットの個数よりム少なく設定さ
れている。そして、図に矢印で示すように、各ユニット
は入力層から出力層へ向かう方向へのみ結合している。
学M時における構成図である。この実施例において、ニ
ューラルネットは5層の階層構造となっており、第1層
(入力層)と第5層(出力層)のユニット(図中Oで示
す部分)の個数は同じで、第3層(中間層)のユニット
の個数が人出力層のユニットの個数よりム少なく設定さ
れている。そして、図に矢印で示すように、各ユニット
は入力層から出力層へ向かう方向へのみ結合している。
ここで、第n層における第i番目のユニットの出力値を
U″、第n−1層の第i番目のユニットから第nIR
の第j番目のユニットへの結合の強さを表す荷重(変換
係数)をWril−l とずる。すると、第n層におけ
るユニットの出力値は、第n−1層におけるユニットの
出力値から次式により求まる。但し、各ユニットは複数
のユニットからの入力の総和netを所定の関数r(X
)に適用して変換するものとする。
U″、第n−1層の第i番目のユニットから第nIR
の第j番目のユニットへの結合の強さを表す荷重(変換
係数)をWril−l とずる。すると、第n層におけ
るユニットの出力値は、第n−1層におけるユニットの
出力値から次式により求まる。但し、各ユニットは複数
のユニットからの入力の総和netを所定の関数r(X
)に適用して変換するものとする。
U ワ ー f (net ’F)
− ・” (l)! r(κ)一e−+1 ・・・・・・
(2)net”= )?: w”−’u ’−’十t
o’!”−’ −・−(3)』』II lso ここで、j〉0であるが、u卜1ミ!として、上記(3
)式を次式のように書き換える。
− ・” (l)! r(κ)一e−+1 ・・・・・・
(2)net”= )?: w”−’u ’−’十t
o’!”−’ −・−(3)』』II lso ここで、j〉0であるが、u卜1ミ!として、上記(3
)式を次式のように書き換える。
このように、入力層におけるユニットの値が与えられる
と、各ユニットの荷重mfip−″′に応じて種々の値
が出力層へ伝搬されていくが、本実施例においては、入
力層に与えられたトレーニングセット(学質用の複数の
入力パターンの組)に対して、後述するコスト関数C(
第7式参照)の値が小さくなるように、荷重のセット(
w1υ1}と、中間層のユニットと相互作用する補助的
なベクトルのセット(σ1′)をパックプロパケーンヨ
ンアルゴリズムによって学習させる。この学習が終了し
たと・き、(El+’}は、コードブック(ill +
)となる。
と、各ユニットの荷重mfip−″′に応じて種々の値
が出力層へ伝搬されていくが、本実施例においては、入
力層に与えられたトレーニングセット(学質用の複数の
入力パターンの組)に対して、後述するコスト関数C(
第7式参照)の値が小さくなるように、荷重のセット(
w1υ1}と、中間層のユニットと相互作用する補助的
なベクトルのセット(σ1′)をパックプロパケーンヨ
ンアルゴリズムによって学習させる。この学習が終了し
たと・き、(El+’}は、コードブック(ill +
)となる。
二こで、従来のニューラルネットによる変換符号化にお
いて用いられるコスト関数Cerrorは、次式のよう
になっていた。
いて用いられるコスト関数Cerrorは、次式のよう
になっていた。
C error= C error((ta 冒−’)
)一” II fN−t7 ’l t ・
・・・・・(5)上記(5)式において、uNおよびi
′は最終出力層(第N層)および入力層(第1層)に
おけるユニットの出力値である。
)一” II fN−t7 ’l t ・
・・・・・(5)上記(5)式において、uNおよびi
′は最終出力層(第N層)および入力層(第1層)に
おけるユニットの出力値である。
本実施例においては、上記(5)式で示したコスト関数
C errorに、中間層(第M層)におけるユニット
の出力値,7MがL個の代表ベクトルU(からなるコー
ドブック(U +}(+・1,2,・・・.L)の中の
いずれか値に近い値をとるとコストが下がり(ほぼ0)
、それ以外はコストが上がる(ほぼ1)という性質をも
ったコスト関数C quantizeを追加している。
C errorに、中間層(第M層)におけるユニット
の出力値,7MがL個の代表ベクトルU(からなるコー
ドブック(U +}(+・1,2,・・・.L)の中の
いずれか値に近い値をとるとコストが下がり(ほぼ0)
、それ以外はコストが上がる(ほぼ1)という性質をも
ったコスト関数C quantizeを追加している。
このような性質をもつコスト関数には、例えば、次式の
ようなものがある。
ようなものがある。
C quantize= C quantize((t
a ’;’,−’}, {i7 +})L lly7”
−i7+ll’ ・=.++i・一J・11・・・一(L− 1)= Σ ・・・・・・(6) 上記(6)式において、ε(〉0)は適当に小さな値を
もつ正の定数である。
a ’;’,−’}, {i7 +})L lly7”
−i7+ll’ ・=.++i・一J・11・・・一(L− 1)= Σ ・・・・・・(6) 上記(6)式において、ε(〉0)は適当に小さな値を
もつ正の定数である。
これら二つのコスト関数の例えば一次結合をとF)、(
turP−1,υl}の空間でグローバルミニマムを求
めれば、自乗誤差が小さく、かつ中間層のユニットの出
力が、常にコードブック{jj +}(+= 1 .
2 ,・・・.L)の中のいずれかの代表ベクトルσ1
に極めて近い値をとるようなネットワークが生成される
。
turP−1,υl}の空間でグローバルミニマムを求
めれば、自乗誤差が小さく、かつ中間層のユニットの出
力が、常にコードブック{jj +}(+= 1 .
2 ,・・・.L)の中のいずれかの代表ベクトルσ1
に極めて近い値をとるようなネットワークが生成される
。
すなわち、歪を最小にするコードブック(L)を生成す
ることができる。
ることができる。
このような方法を、第1図に示す一実施例に適用する場
合は、入力層に与えられたトレーニングセットに対して
、次に示す(7)式のコスト関数Cの値が小さくなるよ
うに荷重のセット(W;j’)とコードブック【D1}
を学習させる。
合は、入力層に与えられたトレーニングセットに対して
、次に示す(7)式のコスト関数Cの値が小さくなるよ
うに荷重のセット(W;j’)とコードブック【D1}
を学習させる。
C=λC error+ ( 1−λ)Cquanti
ze −(7)C error= C error
((Wfip−’})= If U ’− u ’
II ” −(8)C quantize=
C quantizec(w ’;?−’), (E7
l))L ll[’−Uzll” 一乙丁p]〒P]− ( L − 1 )・・・(9)
但し、0〈λく1、0くε《lである。
ze −(7)C error= C error
((Wfip−’})= If U ’− u ’
II ” −(8)C quantize=
C quantizec(w ’;?−’), (E7
l))L ll[’−Uzll” 一乙丁p]〒P]− ( L − 1 )・・・(9)
但し、0〈λく1、0くε《lである。
この場合、学習方法は種々考えられるが、例えば山下り
方法では、次の(10)&および(11)式により、荷
重のセット(tu’;’;””}およびコードブック{
0l}を更新する。
方法では、次の(10)&および(11)式により、荷
重のセット(tu’;’;””}およびコードブック{
0l}を更新する。
″。 ・・・・・(10)W01:
−7−1 1j σl oc− θ0−・− ・−(l I)t9U1 乱数により(w貿−’}、(iz)の初期値を設定し、
コスト関散Cの変動δCが、所定の値Ctより小さくな
るまで上記(10)および(11)式を繰り返し適用す
ることにより、最適な荷重(変換係数)とコードブック
の両方が同時に生成されることになる。
−7−1 1j σl oc− θ0−・− ・−(l I)t9U1 乱数により(w貿−’}、(iz)の初期値を設定し、
コスト関散Cの変動δCが、所定の値Ctより小さくな
るまで上記(10)および(11)式を繰り返し適用す
ることにより、最適な荷重(変換係数)とコードブック
の両方が同時に生成されることになる。
以上の学習手順をフローチャートで示せば第2図の通り
である。
である。
次に、信号を伝送するときのニューラルネットの構成図
を第3図に示す。この図に示すネットワークは、第1図
において、入力層(第Il!)から中[1(13層)に
至るコーディング機能部分と、中間層から出力NI(第
5層)に至るデコーディング機能部分を分離し、これら
コーディング機能部分とデコーディング機能部分を送信
側と受信側に各々設け、中間層を送信側と受信側で共用
するようにしたものである。
を第3図に示す。この図に示すネットワークは、第1図
において、入力層(第Il!)から中[1(13層)に
至るコーディング機能部分と、中間層から出力NI(第
5層)に至るデコーディング機能部分を分離し、これら
コーディング機能部分とデコーディング機能部分を送信
側と受信側に各々設け、中間層を送信側と受信側で共用
するようにしたものである。
まず、送信側の入力層のユニットに送信すべきパターン
νを入力する。但し、このパターンνは学習時に用いた
トレーニングセットと同等の統計性をもった集合の中の
一要素になっているとする。
νを入力する。但し、このパターンνは学習時に用いた
トレーニングセットと同等の統計性をもった集合の中の
一要素になっているとする。
このパターンνが、ニューラルネットのコーディング機
能部分を通して送信側の出力層(第1図においては中間
層である第3層に相当する)まで伝わっていき、そこに
コードブック(L)のL個の代表ベクトルの中の一つの
ある代表ベクトルFJlttに近いベクトル01p+δ
Utrtが出力される。受信側へは、そのインデックス
Zがのみを伝送する。
能部分を通して送信側の出力層(第1図においては中間
層である第3層に相当する)まで伝わっていき、そこに
コードブック(L)のL個の代表ベクトルの中の一つの
ある代表ベクトルFJlttに近いベクトル01p+δ
Utrtが出力される。受信側へは、そのインデックス
Zがのみを伝送する。
ここで、インデックスIβの算出は、一般的には、出力
値に最も近い代表ベクトル’01をコードブック{D,
}の中から探索することによって行われるが、本実施例
によれば、 11σJ rt II > Ifδi7zpll
・・・・・・(12)となっているので、そ
の必要はない。代表ベクトルUlrtに近いベクトルO
lβ+δU,戸からインデックスlvを算出するインデ
ックス算出器T.を用意しておくだけでよい。従来の方
法では、中間層にありとあらゆるベクトル値が出力され
るため、それらがどの代表ベクトルに一番近いか探索す
る必要があった。すなわち、ある一つのベクトル値に対
して、毎回全ての代表ベクトルとの距離を計算し、最小
値を与える代表ベクトルのインデックスを求める必要が
あった。これに対し、本実施例では、中間層に直接代表
ベクトルに近いベクトル値が出力されるので、あとはそ
のベクトル値に対応したインデックスを算出(検索)す
るだけでよい。
値に最も近い代表ベクトル’01をコードブック{D,
}の中から探索することによって行われるが、本実施例
によれば、 11σJ rt II > Ifδi7zpll
・・・・・・(12)となっているので、そ
の必要はない。代表ベクトルUlrtに近いベクトルO
lβ+δU,戸からインデックスlvを算出するインデ
ックス算出器T.を用意しておくだけでよい。従来の方
法では、中間層にありとあらゆるベクトル値が出力され
るため、それらがどの代表ベクトルに一番近いか探索す
る必要があった。すなわち、ある一つのベクトル値に対
して、毎回全ての代表ベクトルとの距離を計算し、最小
値を与える代表ベクトルのインデックスを求める必要が
あった。これに対し、本実施例では、中間層に直接代表
ベクトルに近いベクトル値が出力されるので、あとはそ
のベクトル値に対応したインデックスを算出(検索)す
るだけでよい。
但し、代表ベクトルに近いベクトル値が出力されるもの
の、代表ベクトルそのものが(誤差0で)出力されるわ
けではないので、この誤差が大きすぎるとインデックス
が見つからない場合もある。
の、代表ベクトルそのものが(誤差0で)出力されるわ
けではないので、この誤差が大きすぎるとインデックス
が見つからない場合もある。
以下、上記インデックス算出器THの設計方法について
述べる。代表ベクトルD(を以下のように、成分表示す
る。
述べる。代表ベクトルD(を以下のように、成分表示す
る。
I7I一(υI1.υlt+・・・.υLK)
・・・・・・(13)但し、Kは成分の数(次元数
)で、中間層のユニットの数である。
・・・・・・(13)但し、Kは成分の数(次元数
)で、中間層のユニットの数である。
上記(13)式において、まず、各成分を整数化して、
σl→V ,一(V ,,,v ,2,・・・,V+K
) ・・・・・・(l4)とする。但しv1は各
成分が整数であり、Vl≠Vm(l≠ m)となるベク
トルである。
) ・・・・・・(l4)とする。但しv1は各
成分が整数であり、Vl≠Vm(l≠ m)となるベク
トルである。
このような整数化の方法としては種々の方法があるか、
例えば、各成分υ,を定数倍して小数点以下を丸める方
法を用いればよい。これにより中間層の出力J,に少々
誤差が生じていても、これを吸収することができる。こ
のようにして求めた整数の組(VII.VJ!.・・・
,V1K)から、インデックスl(整数)を算出するに
は、ハッシュ関数(Niklaus11irth著片山
卓也訳「アルゴリズム+データ構造=PASCALプロ
グラム」日本コンピュータ協会参照)を用いる。
例えば、各成分υ,を定数倍して小数点以下を丸める方
法を用いればよい。これにより中間層の出力J,に少々
誤差が生じていても、これを吸収することができる。こ
のようにして求めた整数の組(VII.VJ!.・・・
,V1K)から、インデックスl(整数)を算出するに
は、ハッシュ関数(Niklaus11irth著片山
卓也訳「アルゴリズム+データ構造=PASCALプロ
グラム」日本コンピュータ協会参照)を用いる。
ここで、ハッシュ関数とはキー値から添え字を求める関
数のことである。キー値とは、例えば、文字列のことで
、文字列中の文字コードを合計してからある数nで割っ
た余りをとるなどのことが行われる。一般には、キー値
と添え字は一対多の関係にあるが、配列全体を検索する
かわりに、特定のグループ内だけで検索すればよいので
、検索時間が削減される。各グループ内の要素数が等し
く、全体のl/nになれば、検索時間らほぼI/nとな
る。また、それぞれのグループでハブンユ関数を用いて
グループ分けを行い、さらにまたそれらのグループでハ
ッシュ関数を用いてグループ分けを行い、・・・という
具合にハッシュ関数を何段階か実行することによって添
え字を求めることも可能である。本実施例においては、
このようなハッシュ法を用いてインデックスの算出を行
っている。
数のことである。キー値とは、例えば、文字列のことで
、文字列中の文字コードを合計してからある数nで割っ
た余りをとるなどのことが行われる。一般には、キー値
と添え字は一対多の関係にあるが、配列全体を検索する
かわりに、特定のグループ内だけで検索すればよいので
、検索時間が削減される。各グループ内の要素数が等し
く、全体のl/nになれば、検索時間らほぼI/nとな
る。また、それぞれのグループでハブンユ関数を用いて
グループ分けを行い、さらにまたそれらのグループでハ
ッシュ関数を用いてグループ分けを行い、・・・という
具合にハッシュ関数を何段階か実行することによって添
え字を求めることも可能である。本実施例においては、
このようなハッシュ法を用いてインデックスの算出を行
っている。
一般に、ハッシュ法では、文字列などのキーから所要の
要素を見つけだすわけであるが、ここで、文字列に対応
するのが代表ベクトルの成分を並べたらの、要素に対応
するのがインデックスである。
要素を見つけだすわけであるが、ここで、文字列に対応
するのが代表ベクトルの成分を並べたらの、要素に対応
するのがインデックスである。
実際、文字列として、文字コードの並び(整数の集まり
)を使うので、このような対応づけかできるが、ここに
一つ問題が生じる。それは、代表ベクトル0.の成分は
実数であり、整数化しないとこの手法が使えないことで
ある。そこで、代表ベクトルblの成分を、定数倍して
、小数点以下を丸めて、整数の組<Vx.Vlt.・・
・.Vtg)を求める。
)を使うので、このような対応づけかできるが、ここに
一つ問題が生じる。それは、代表ベクトル0.の成分は
実数であり、整数化しないとこの手法が使えないことで
ある。そこで、代表ベクトルblの成分を、定数倍して
、小数点以下を丸めて、整数の組<Vx.Vlt.・・
・.Vtg)を求める。
尚、トレーニングに用いたデータのセットと統計性が著
しく異なり、コードブックの中の代表ベクトルで代表さ
せるのが不適当な場合でも、従来のベクトル量子化では
、強引に一番近い代表ベクトルが選ばれてしまったが、
上述した方法によれば、出力されるインデックスlの範
囲をチェックし、範囲外の場合には鵠例えば、インデッ
クス1を送らずにベクトルそのものを送るなどの他の方
法に適宜切り替えることらできる。
しく異なり、コードブックの中の代表ベクトルで代表さ
せるのが不適当な場合でも、従来のベクトル量子化では
、強引に一番近い代表ベクトルが選ばれてしまったが、
上述した方法によれば、出力されるインデックスlの範
囲をチェックし、範囲外の場合には鵠例えば、インデッ
クス1を送らずにベクトルそのものを送るなどの他の方
法に適宜切り替えることらできる。
ここで、範囲外であるか否かのチェックは、以下のよう
な方法で行う。インデックスlは、コードブック{Ol
}の中の代表ベクトルDHの数だけあるので、■からレ
ベル数Lまでの整数値をとる。
な方法で行う。インデックスlは、コードブック{Ol
}の中の代表ベクトルDHの数だけあるので、■からレ
ベル数Lまでの整数値をとる。
これらの値が出力されれば範囲内である。一対一のハッ
シュ関数を用いる場合、その値を直接チェックすればよ
いわけだが、一対多のハッシュ関数を用いて検索する場
合は、配列の要素にインデックスlをいれておくことに
なるので、対応するインデックスlが見つからないこと
で範囲外ということが判る。
シュ関数を用いる場合、その値を直接チェックすればよ
いわけだが、一対多のハッシュ関数を用いて検索する場
合は、配列の要素にインデックスlをいれておくことに
なるので、対応するインデックスlが見つからないこと
で範囲外ということが判る。
一方、受信側では、インデックスlと代表ベクトルOl
のルックアップテーブル(対応表)TLを用意しておき
、インデックスlpから代表ベクトルfpを取り出す。
のルックアップテーブル(対応表)TLを用意しておき
、インデックスlpから代表ベクトルfpを取り出す。
これを、受信側の入力層(第1図においては中間層の第
3層に相当する)に入力すると、これがニューラルネッ
トのデコーディング機能部分を伝わって受信側の出力層
(第1図においては第5層に相当する)から、送信側で
入力された入力パターンγに極めて近い出力パターンp
′が出力される。
3層に相当する)に入力すると、これがニューラルネッ
トのデコーディング機能部分を伝わって受信側の出力層
(第1図においては第5層に相当する)から、送信側で
入力された入力パターンγに極めて近い出力パターンp
′が出力される。
なお、上述したー実施例においては、5層のニューラル
ネットワークを例に説明したが、N(≧3)層の場合も
同様に適用可能である。
ネットワークを例に説明したが、N(≧3)層の場合も
同様に適用可能である。
「発明の効果」
以上説明したように、この発明によれば、ニューラルネ
ットを用いた符号化伝送方法において、学と時に、中間
層の出力値である変換係数が、ベクトル量子化における
コードブックの所定個数の代表ベクトルの中のいずれか
の値となるように、所定のコスト関数を用いて、ベクト
ル量子化に適した変換係数とコードブックの学習を同時
に行うようにしたので、変換係数に応じた最適なコード
ブックが生成されるという効果が得られ、さらに、送信
側の出力層に、伝送すべき代表ベクトルに極めて近いベ
クトルが出力されるため、コードブックの中から適切な
代表ベクトルを捜し出すための処理が極めて容易になる
という効果ら得られる。
ットを用いた符号化伝送方法において、学と時に、中間
層の出力値である変換係数が、ベクトル量子化における
コードブックの所定個数の代表ベクトルの中のいずれか
の値となるように、所定のコスト関数を用いて、ベクト
ル量子化に適した変換係数とコードブックの学習を同時
に行うようにしたので、変換係数に応じた最適なコード
ブックが生成されるという効果が得られ、さらに、送信
側の出力層に、伝送すべき代表ベクトルに極めて近いベ
クトルが出力されるため、コードブックの中から適切な
代表ベクトルを捜し出すための処理が極めて容易になる
という効果ら得られる。
第1図はこの発明の一実施例による学習時のニューラル
ネットの構成図、第2図は同実施例における学習時の処
理手順を示すフa−チャート、第3図は同実施例による
学習後の伝送時のニューラルネットの構成図である。 U ・・・ w ’!n− J1 第n層の第i番目のユニットの出力値、・・・第n−1
層の第i番目のユニットから第n層の第j番目のユニッ
トへの結 合の強さを表す荷重、 代表ベクトル、 コードブック、 インデックス、 ・・従来のコスト関数、 ・・・・・・新たに導入したコスト関数、全体のコスト
関数、 インデックス算出器、 ルックアップテーブル。 U l ′゛゛′ (U r)・・・・・・ l ・・・ C error −゛ C quantize C ・・・ TH ・・・ TL ・・・・・・
ネットの構成図、第2図は同実施例における学習時の処
理手順を示すフa−チャート、第3図は同実施例による
学習後の伝送時のニューラルネットの構成図である。 U ・・・ w ’!n− J1 第n層の第i番目のユニットの出力値、・・・第n−1
層の第i番目のユニットから第n層の第j番目のユニッ
トへの結 合の強さを表す荷重、 代表ベクトル、 コードブック、 インデックス、 ・・従来のコスト関数、 ・・・・・・新たに導入したコスト関数、全体のコスト
関数、 インデックス算出器、 ルックアップテーブル。 U l ′゛゛′ (U r)・・・・・・ l ・・・ C error −゛ C quantize C ・・・ TH ・・・ TL ・・・・・・
Claims (2)
- (1)階層構造であって中間層のユニット数が入出力層
のユニット数よりも少ないニューラルネットに予めバッ
クプロパケーション・アルゴリズムによって学習を行っ
た後、該ニューラルネットを入力層から中間層に至るコ
ーディング機能部分と中間層から出力層に至るデコーデ
ィング機能部分に分離し、送信側では前記ニューラルネ
ットのコーディング機能部分を通して変換係数を求め、
該変換係数を量子化して受信側へ送り、受信側では前記
デコーディング機能部分を通して前記変換係数を逆変換
して元の信号を復元するニューラルネットを用いた符号
化伝送方法において、 前記学習時に、中間層の出力値である変換係数が、ベク
トル量子化におけるコードブックの所定個数の代表ベク
トルの中のいずれかの値となるように、所定のコスト関
数を用いて、ベクトル量子化に適した変換係数とコード
ブックの学習を同時に行うことを特徴とするニューラル
ネットを用いた符号化伝送方法。 - (2)前記送信側のニューラルネットのコーディング機
能部分を通して得られる変換係数を入力とし、ハッシュ
関数によりインデックスを出力するベクトル量子化器を
具備することを特徴とするニューラルネットを用いた符
号化伝送装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1055579A JPH02234573A (ja) | 1989-03-08 | 1989-03-08 | ニューラルネットを用いた符号化伝送方法およびその装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1055579A JPH02234573A (ja) | 1989-03-08 | 1989-03-08 | ニューラルネットを用いた符号化伝送方法およびその装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH02234573A true JPH02234573A (ja) | 1990-09-17 |
Family
ID=13002649
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1055579A Pending JPH02234573A (ja) | 1989-03-08 | 1989-03-08 | ニューラルネットを用いた符号化伝送方法およびその装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH02234573A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018163011A1 (ja) * | 2017-03-09 | 2018-09-13 | 株式会社半導体エネルギー研究所 | 半導体装置および放送システム |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5717083A (en) * | 1980-06-17 | 1982-01-28 | Ibm | Device for generating vector indication for input word |
-
1989
- 1989-03-08 JP JP1055579A patent/JPH02234573A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5717083A (en) * | 1980-06-17 | 1982-01-28 | Ibm | Device for generating vector indication for input word |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018163011A1 (ja) * | 2017-03-09 | 2018-09-13 | 株式会社半導体エネルギー研究所 | 半導体装置および放送システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210125070A1 (en) | Generating a compressed representation of a neural network with proficient inference speed and power consumption | |
Ho et al. | Compression with flows via local bits-back coding | |
Sonehara et al. | Image data compression using a neural network model | |
CN100463522C (zh) | 图像和视频编码用的改进的块变换和量化 | |
CN101237579B (zh) | 上变换解码的帧的帧频的设备和方法 | |
US11544881B1 (en) | Method and data processing system for lossy image or video encoding, transmission and decoding | |
Ayoobkhan et al. | Lossy image compression based on prediction error and vector quantisation | |
US20200311548A1 (en) | Learning compressible features | |
TWI249957B (en) | Method and system for two-pass video encoding using sliding windows | |
CN113450421B (zh) | 一种基于增强深度学习的无人机侦察图像压缩与解压方法 | |
CN108197707A (zh) | 基于全局误差重建的卷积神经网络的压缩方法 | |
Ahanonu | Lossless image compression using reversible integer wavelet transforms and convolutional neural networks | |
Hussain et al. | Recurrent pi-sigma networks for DPCM image coding | |
TW200529040A (en) | Method for transforming a digital signal from the time domain into the frequency domain and vice versa | |
CN114238765B (zh) | 一种基于区块链的位置注意力推荐方法 | |
Hsieh et al. | C3-SL: Circular convolution-based batch-wise compression for communication-efficient split learning | |
JPH09500749A (ja) | 低電力アナログ絶対差分回路および構造 | |
JPH02234573A (ja) | ニューラルネットを用いた符号化伝送方法およびその装置 | |
CN101345530B (zh) | 一种矢量量化方法及矢量量化器 | |
Yang | Constrained-storage multistage vector quantization based on genetic algorithms | |
WO2024199477A1 (zh) | 图像解码和编码方法、装置、设备及存储介质 | |
Altabeiri et al. | Image compression approach for improving deep learning applications | |
Rizvi et al. | Finite-state residual vector quantization using a tree-structured competitive neural network | |
Iyengar et al. | Systolic array architecture for Gabor decomposition | |
Mohsenian et al. | Predictive vector quantization using a neural network |