社団法人 電子情報通信学会
THE INSTITUTE OF ELECTRONICS,
INFORMATION AND COMMUNICATION ENGINEERS

信学技報
TECHNICAL REPORT OF IEICE.

アニーリングノイズを利用した BP による CNN テンプレート設計
那賀川

雅†

上手

洋子†

西尾

芳文†

† 徳島大学工学部 〒 770–8506 徳島県徳島市南常三島町 2-1
E-mail: †{miyabi, uwate, nishio}@ee.tokushima-u.ac.jp
あらまし

我々はこれまでの研究で，バックプロパゲーション (Back Propagation: BP) を用いたセルラニューラル

ネットワーク (Cellular neural Networks: CNN) のテンプレート設計を提案した．本提案手法では，設計されたテンプレートによって出力された画像と教師画像との平均誤差を用いてテンプレートを更新することで，学習を行う．本
研究では，テンプレート更新時に局所解に陥ることを防ぐためにアニーリングノイズを提案し，CNN の状態方程式に加える場合と BP に加える場合とを比較することでその精度を示す．
キーワード

セルラニューラルネットワーク，バックプロパゲーション，アニーリング

Template Design of CNN by BP with Annealing Noise
Masashi NAKAGAWA† , Yoko UWATE† , and Yoshifumi NISHIO†† Department of Electrical and Electronic Engineering, Tokushima University
2-1 Minami-Josanjima, Tokushimashi, Tokushima, 770-8506, Japan
E-mail: †{miyabi, uwate, nishio}@ee.tokushima-u.ac.jp
Abstract In previous study, we proposed template design method of cellular neural networks with back propagation algorithm. In this proposed method, template learns by using the average error which corresponds to thediﬀerence between the outputted image produced by the designed template and the teacher image. In this study,
we propose an annealing noise, in order to prevent getting into a local minimum when template updated. And weshow accuracy of annealing noise with comparing the case it adding to state equation of cellular neural networks
with the case it adding to back propagation algorithm.
Key words Cellular Neural Networks, Back Propagation, Annealing

1. は じ め に

Algorithm: BP) を用いたものを提案し，その精度を評価した[6]．BP は階層型ニューラルネットワークに用いられる学習ア

セルラニューラルネットワーク (Cellular Neural Networks:

ルゴリズムの一つである [7]．これまでの研究では，出力画像とCNN)[1] は 1988 年に L.O.Chua らによって開発された．CNN

教師画像との誤差から BP を用いることで動的に CNN のテン

はセルラオートマトンの構造とニューラルネットワークを元にプレートの更新を行なった．その結果，2 値化画像を用いた例考えられている．CNN は従来のニューラルネットワークとは

において，教師画像を出力できるテンプレートを設計すること異なり，局所的結合の特性を持つため LSI 化に適しており，まができた．そして，BP における学習回数と学習率を変化させた CNN の構造が動物の網膜の構造に類似しているため，様々ることでより詳細な調査を行ない，より良いテンプレート設計

な画像処理 [2]-[4] を行うのに適している．

の条件を確認することができた．しかしながら，BP には解が

CNN における各セルの関係性はテンプレートと呼ばれるパ局所解に陥り最適解に到達できない問題点がある．

ラメータによって確立される．テンプレートは CNN において

本研究では，焼きなまし法 (Simulated Annealing: SA)[8] の最も重要なパラメータである．なぜなら CNN の振る舞いはテ

考えを元にしたアニーリングノイズを提案し，それを CNN のンプレートによって決められるからである．従って，いくつか状態方程式に加える場合と BP 学習によるテンプレート更新時のテンプレート学習というものも提案されており，その代表とに加える場合を比較することで局所解を抜け出し最適解に到達して Genetic Algorithm(GA)[5] などが有名である．

する条件を確認する．

これまでの研究において，私たちは CNN のテンプレート学
習にバックプロパゲーションアルゴリズム (Back Propagation—1—

を，そして η は学習率と呼ばれるパラメータをそれぞれ示して

2. セルラニューラルネットワーク

いる．

本章では，CNN の基本的な構造について説明する．CNN は

M×N 行列のセルと呼ばれるユニットを持った回路である．あるセルを C(i, j) と示す．この時，i は縦位置における変数で，

j は横位置における変数である．またそれぞれのセルは近傍のこのように，BP は結合荷重を変化させることで出力信号を教師信号へと近づけている．

4. シミュレーテッドアニーリング

セルと繋がっており，テンプレートに従って変化する．一般に，物質を融解状態になるまで加熱し，徐々に冷却する操作を焼テンプレートは境界のセルを除いた全てのセルに適応される．

きなまし (アニーリング) と言う．この焼きなましにより，エネ

また CNN は時間の連続性，非線形性，並列処理能力の特徴を

ルギーが最も少ない状態に分子が配列し，結晶構造を形成する持っている．

ことができる．この物理的なプロセスをシミュレーション上で

CNN には処理を決める重要な 2 式から構成されており，状態方程式と出力方程式と呼ぶ．それらを以下に示す．

模擬して最適化問題を解く手法をシミュレーテッドアニーリン
グ (Simulated Annealing: SA) と呼ぶ．

状態方程式：SA の基本アルゴリズムは温度 T を初期設定した後，与えら∑
dvxij (t)= −vxij (t) +
dt
i+r

j+r
∑

れた状態 x0 から次の状態 x0 を生成し，そのエネルギー E 0 を計算する．そしてエネルギー差分 ∆E(= E − E 0 ) と温度 Tk にA(i,j;k,l) vykl (t)k=i−r k=j−r

i+r
∑

+

j+r
∑

応じて受理か否かを判断し，受理ならば次の状態に移る．このB(i,j;k,l) vukl (t) + I(1)

処理を式 (5) に示す．

{

k=i−r k=j−r
0

ACCEP T (E, E , T ) =出力方程式：

vyij (t) =1(|vxij + 1| − |vxij − 1|)
2(2)

ここで，Vx ，Vy ，Vu はそれぞれセルの状態と出力，そして初期の入力を示す変数である．式 (1) において，A，B ，I をテ

1(∆E < 0))exp(− ∆ET

(otherwise)(5)

この処理を繰り返して，現在の温度で安定すると次の温度

Tk+1 に移り，再び安定するまで処理を続ける．
Tk+1 = γTk (0.8 <= γ < 1)

(6)ンプレートと呼び，A にはフィードバックテンプレート，B にはコントロールテンプレート，I にはバイアスという名前がそれぞれ付いている．このテンプレートの値により，CNN の振る舞いが決定される．

こうして温度が十分冷えて終了条件に達すればその時の状態
を最適状態，最適値として出力する．

5. 提 案 手 法

3. バックプロパゲーション

本章では，提案手法である BP を用いたテンプレート学習に

BP はフィードフォワードネットワークにおける最も有名なついて説明する．私たちのテンプレート学習方法は，BP アル

学習方法の一つである．BP は出力信号と教師信号の間の誤差

ゴリズムの動的で柔軟な点を元に考えられている．BP ニューを用いて学習を行う．ネットワークにおける合計の誤差 E は以

ラルネットワークでは，出力と教師信号の間にある誤差を用い下の式で定義される．
{ N
}
P
P
∑
∑
1∑
2
E=
Ep =
(tpi − opi )
2 i=1
p=1
p=1

てパラメータを変化させることで出力信号を教師信号へと近づけている．この学習方法から，本提案手法では CNN のテンプ

(3)

レートを出力画像と教師画像の誤差を用いて変化させることで教師画像を得られる．また，本提案手法におけるテンプレート

ここで P は入力データの数，N は出力層におけるニューロ

は常に学習し続けているため動的であると言える．

ンの数，tpi は p 番目の入力データに対する教師データ，そし

以下，学習方法について説明する．まずはじめに BP を用いて opi は p 番目の入力データに対する出力データを示している．

たテンプレートの学習方法に付いて説明し，続いて 4 つのパ

学習の最終目標は誤差 E が最小となるようなネットワークのターンでパラメータを変化させた学習結果を示す．

すべての層の間にある結合荷重 w を見つけ出すことである．E5. 1 テンプレート学習の手順を最小とするためには，以下の式を用いて結合荷重を調整してBP を用いたテンプレート学習の手順について示す．
Step 1: 入力画像と教師画像の準備やる必要がある．
k−1,k
k−1,k
wi,j
(m + 1) = wi,j
(m) +

P
∑

まず入力画像と，それに対する教師画像を用意する．テンプ
k−1,kδp wi,j(m)

レートの初期値はランダムで決定される．これはいかなる初期

p=1
k−1,k
δp wi,j(m) = −η

∂Ep
k−1,k
∂wi,j

値からでも学習できることを示すためである．しかし，この学

(4)

k−1,k
ここで wi,j
は k − 1 層目の i 番目のニューロンと k 層目

習においては CNN が収束する安定条件についても考慮している．つまり A テンプレートの中心要素は 1 で，左右対称となっている．

の j 番目のニューロンの間にある結合荷重を，m は学習回数—2—平均誤差 D は A テンプレートと B テンプレートの真ん中の一

Step 2: CNN 処理
CNN はルンゲクッタ法を用いて処理される．この時ルンゲ

列の要素に加えられる．しかし，安定条件を保つために A テン

クッタ法の刻み幅はできるだけ小さくし，常に変化し続けていプレートの中心要素とバイアス I は含まれていない．つまり，る状態を作ることでより動的に学習する状態を作っている．

どのようにテンプレートが学習されたとしても安定条件は満たされているため，CNN の収束は保証されている．

Step 3: 出力画像と教師画像の誤差計算
出力画像と教師画像のそれぞれのピクセルにおける誤差を計

Step 2 から Step 6 までを学習回数分繰り返す．

算する．誤差 Ep は以下の式で計算される．

Ep = (tp − op )Step 7: 繰り返し

(7)
この学習アルゴリズムを用いることで，それぞれのセルのテ

ここで p は入力画像のピクセル数，tp と op は教師画像と出力画像の p 番目のピクセルの値を示している．

ンプレートは更新され，教師画像へと近づいていく．

5. 2 4 種類の学習パターンにおける手順
本研究では，BP の学習回数と学習率に着目し 4 種類の学習

Step 4: 修正方向の決定パターンと 7 種類の学習率を準備した．4 種類の学習パターン

修正する方向 δp は誤差 Ep を用いて以下の式で表される．

δp = Ep × (V xnow
− V xpast)ppを以下の表 1 に示す．

(8)
表1

ここで V xnowと V xpast
は V xp の現在の値と V xp のひとpp
つ前の値を示している．この差分を取ることでどの方向へ修正すべきかを決定する．

Step 5: 修正量の計算
それぞれのピクセルにおける修正量 ∆p は以下の式で表さ

学習パターン

入力画像の学習回数 パターン数

グループの繰り返し回数 合計学習回数

Pattern 1

10

20

10

2000

Pattern 2

25

20

4

2000

Pattern 3

50

20

2

2000

Pattern 4

100

20

1

2000

れる．

∆p = η × δp × V ypnow(9)

学習回数とは BP の学習回数を，入力画像のパターン数は 1
グループにおける入力と教師画像のセット数を，繰り返し回数

ここで η は学習率を示している．

は 1 グループの繰り返し回数をそれぞれ示している．
以下に処理の手順を示す．

Step 6: 平均誤差の計算

Step 1. 入力画像と教師画像の準備

すべてのピクセルの誤差は一度合計され，その平均誤差 D が以下の式で表される．

まず最初に，入力画像と教師画像のセットを 20 種類用意す
る．これを 1 グループと定義する．

1∑
D=
∆i
p i=1
p

(10)
Step 2. 学習率とテンプレートの初期値の決定

本研究では，テンプレートのそれぞれの要素は式 (11) を用

学習率を 0.01, 0.05, 0.1, 0.25, 0.5, 0.75, 1 の 7 種類から選いている．これは，入力画像に一次元画像を用いているためでぶ．そしてテンプレートの初期値の値はランダムで決定される．

ある．




0


A = 
 a21
0

0


B =  b21
0

0
a22
0
0
b22
0

Step 3. CNN

0


a23 

0

0

b23 

0

I = i

20 種類の入力画像と教師画像のセットの内 1 つを選び，
Step 2 で設定されたテンプレート初期値を用いて CNN 処理を行う．

Step 4. BP
初期設定されたテンプレートが BP によって学習される．4(11)

そして，テンプレートの更新式は以下で表される．

aRenewed
21

種類の学習回数である 10, 25, 50, 100 回の内一つを選んで学習を行う．この時，学習率は Step 2 で決められた値を用いる．

ore= aBef+D
21

Step 5. 入力画像と教師画像のセットを変更する

ore
aRenewed= aBef+D
23
23

BP を用いてテンプレート学習を行った後，入力画像と教師

orebRenewed= bBef+D
21
21

画像のセットを次の組み合わせに変更する．また，学習後のテ

orebRenewed= bBef+D
22
22
orebRenewed= bBef+D
23
23

ンプレートを次の CNN 処理のテンプレートに設定する．

(12)
—3—

Step 6. 繰り返し
Step 3 から Step 5 までを 20 セットすべてが終了するまで

6. シミュレーション結果

繰り返す．この時，最後の学習によって更新されたテンプレー

6. 1 学習に使われたパラメータ

トを最終的なテンプレートとする．

このシミュレーションにおいて用いられたパラメータを表 2に示す．

Step 7. グループ繰り返し

表 2 パラメータ

BP の学習回数が 10, 25, 50 回の時には，それぞれグループ

パラメータを 10, 4, 2 回繰り返す．この時，Step 6 で学習を終えたテンプ
レートを次のループの初期テンプレートと設定する．

刻み幅

0.01

繰り返し最大回数

1000

画像のピクセル数40

学習率5.2 章 Step 2. に記載

Step 8. 学習されたテンプレートの獲得

SN 比

0.1

ランダムノイズ-1.0〜1.0

すべての学習が終えた後，得られたテンプレートを最終的なテンプレートとする．
学習のパターンは異なるが，どのパターンも最終的には 2000

値

刻み幅と繰り返し最大数はルンゲクッタ法におけるパラメー
タである．また学習率は式 (9) における η のことを示す．

回の学習を行ったと言える．

6. 2 入力画像と教師画像

5. 3 アニーリングノイズ
本研究では，BP を用いる時に発生する局所解の問題を解決

本研究では，1 次元 2 値化画像を用いてシミュレーションをするためにアニーリングノイズを提案する．アニーリングノイ行った．40 個のピクセルはすべてランダムに配置されている．

ズを加えることで，解が局所解に陥ることを阻止し最適解へと

また黒ピクセルはシミュレーション上では+1，白ピクセルは-1収束することができる．

をそれぞれ示す．

実際に加えるアニーリングノイズ  を以下の式で表す．

現在の学習回数
 = SN 比 × 1 −全体の学習回数

× ランダムノイズ(13)

実際の SA では温度パラメータ T をスケジュールによって減らすことで加えるノイズを減少させているが，本研究では学習回数を時間軸と見立て，学習を増すごとに加えるノイズを減らしていくように提案した．

次に，教師画像は以下のルールに従って作成する．

Rule 1. あるセルの両隣が同じ色ならば，そのセルは両隣の色に変化する．

Rule 2. あるセルの両隣が異なる色ならば，そのセルの色がそのまま出力される．
つまり，オセロのルールに従って教師画像を作成した．
図 1 と図 2 に，入力画像と教師画像の一例を示す．
入力画像：

例えば，全体の学習回数が 100 回であるとき，現在が 1 回目
図1 入力画像99
ならば 100= 99% とほとんどすべてのノイズを加えることに1
なるが，学習がほぼ終わる 99 回目ならば 100= 1% とほぼ 0

教師画像：に近いノイズを加えることになる．
本研究では，このアニーリングノイズを次の二つに加えた場合を比較して，最適解に到達する条件を確認する．

6. 3 提案手法のシミュレーション結果

Pattern 1. CNN の状態方程式
dvxij (t)= −vxij (t) +
dt
+

i+r
∑

i+r
∑

図2 教師画像

はじめに，入力画像とは異なる 10 種類の入力画像を用意し∑た．この画像もピクセルはランダムに並びかえられている．こj+r

A(i,j;k,l) vykl (t)れらの画像は，シミュレーションによって作成された 28 種類の

k=i−r k=j−r

j+r∑

テンプレートの精度を確認するためである．そのため，それぞB(i,j;k,l) vukl (t) + I + (14)

k=i−r k=j−r

処理を行った．その時のそれぞれの教師画像との誤差を平均した平均誤差を表 3 に示す．

Pattern 2. テンプレートの更新式(A, B)Renewed = (A, B)Bef ore + D + 

れのテンプレートを使用して 10 種類の入力画像に対して CNN

この結果より，以下のことが言える．

(15)

CNN の状態方程式に加えた場合では，CNN の収束を意図的に妨げることで最適な出力画像を得られるかを調査する．

結果 1. 学習率が高いほど良い
学習率が高いほど良い結果となった．これは，学習率が高くなればなるほど学習によって更新する幅が大きくなるため，よまた，テンプレートの更新式では，通常の SA が行われる場

り動的な学習が行われているためだと思われる．ただし，更新

合と同様に BP に加えることで BP が局所解に陥ることを妨げ，幅が大きいと最適解に近づく速度は速くなるが，収束しにくく最適解に得られるかを調査する．

なる可能性がある．

—4—

表3

6. 5 テンプレート更新時にアニーリングノイズを加えた

平均誤差 [%]

平均誤差 [%]
学習回数

10

場合
50

100

0.01 15.75 30.75 35.75

25

0.05

21.5

21.75 11.75

23

0.1

0

18.5

14.75

27

8.75

18.5

11.75 21.75

0.5

4

12.75

9.5

21.75

0.75

4

8.75

13.5

12.75

1

3.25

3.75

5.5

14

学習率 0.25

25

結果 2. 学習が少ないほど良い
学習回数が少なく，全体のループ数が多いほど良い結果と次に，アニーリングノイズをテンプレート更新時に加えてシミュレーションを行った結果を表 5 に示す．評価方法は 6.3 章，

6.4 章と同様の評価方法を行った．
表5

テンプレート更新時に加えた場合
平均誤差 [%]

学習回数

10

25

50

100

0.01 9.75

12

2.25

5

0.05 5.25 15.25 4.75

4.5

0.1

1.25

1.5

1.5

2

学習率 0.25

5.25

5

4.75 1.25

0.5

4.5

5.25

1.25

5

なった．これは，学習回数が多い場合には収束をし切ってしま

0.75

5

4.5

1.25

5

い無駄な学習が出てしまう，さらに全体のループ数が少ないた

1

4.5

5.25

4.5

4.5

めその分を補えないからで，学習回数が少なくループ数が多いとより動的に動き続けて常に更新している状態を保てるため良い結果が出たと思われる．

この結果より，以下のことが言える．
結果 1. 学習率と学習回数

これらの結果より，学習率が高く学習回数が少ないほど良い結果が出るということがわかった．

6.4 章と同じく，学習率が小さく，学習回数が多いほど良い結果が出ることがわかった．

6. 4 CNN の状態方程式にアニーリングノイズを加えた場合

結果 2. 局所解と最適解
表 4 と比べて，より誤差の小さいところが多くある．これは次に，アニーリングノイズを CNN の状態方程式に加えてシ

BP によるテンプレート更新時に加える方がノイズが有効で，ミュレーションを行った結果を表 4 に示す．評価方法は 6.3 章

局所解に陥りにくく最適解に陥りやすいということを示していと同様の評価方法を行った．

る．さらに，表 4 と表 5 より，誤差が 4.5%〜5.25%の部分が

表 4 CNN の状態方程式に加えた場合思われる．そのため，アニーリングノイズをテンプレート更新

平均誤差 [%]
学習回数

10

25

50

100

0.01 15.75 12.25 5.25 5.25

学習率

多いことがわかる．これらは最適解に最も近い局所解であると

0.05

2.25

19

5

5.25

0.1

12.25

2.25

5.25

0.5

0.25

4.5

4.5

1.5

1.25

0.5

4.5

4.75

5.25 5.25

0.75

4.75

4.5

5.25 4.25

1

5.25

5.25

4.5

4.5

時に加えた方がこの局所解も多く，さらに最適解も多い結果になったのではないかと思われる．

7. ま と め
本研究では，BP をテンプレート更新に適用し細かな条件下でシミュレーションを行った結果と，アニーリングノイズを

CNN の状態方程式に加えた場合，テンプレート学習時に加えた場合の結果との比較を行った．

この結果より，以下のことが言える．
結果 1. 学習率
最も良い結果が学習率が 0.1〜0.25 の時に集まっていることがわかる．本研究ではニューラルネットワークにおける BP を元に考えられているので，ニューラルネットワークにおける適切な学習率に近づいたと言えるため，BP が有効であることを示していると思われる．
結果 2. 学習回数
学習回数が多いほど良い結果が出ていることがわかる．6.3
章の結果と反することになるが，学習回数が少ない場合はノイズが大きく少しづつ加えられていないため，それほど良い結果に繋がらなかったのではないかと思われる．逆に学習回数が多
いとノイズが有効で，また細かく影響しているため良い結果を得られたのではないかと思われる．

その結果，アニーリングノイズが有効であることがわかり，
さらに BP によるテンプレート更新時の場合が良い結果が出やすいことがわかった．この結果はさらに発展させた複雑な条件
下の入力画像や教師画像の組み合わせや，グレースケール画像などにも利用出来ると考えられる．
文

献[1] L.O. Chua and L. Yang, “Cellular Neural Networks: Theory,” IEEE Trans. Circuits Syst., vol. 32, pp. 1257-1272,
Oct. 1988.
[2] F. Dirk and T. Ronald, “Coding of Binary Image Data using
Cellular Neural Networks and Iterative Annealing,” Proc. of
ECCTD’03, vol. 1, pp. 229-232, Sep. 2003.
[3] M. Namba and Z. Zhang, “Cellular Neural Network for
Associative Memory and Its Application to Braille Image
Recognition,” Proc. of IJCNN’06, pp. 4716-4721, Jul. 2006.
[4] H. Koeppl and L.O. Chua, “An Adaptive Cellular Nonlinear Network and its Application,” Proc. of NOLTA’07, pp.
15-18, Sep. 2007.
[5] T. Kozek, T. Roska and L.O. Chua, “Genetic Algorithm for—5—

CNN Template Learning,” IEEE Trans. Circuits Syst., vol.
40, pp. 392-401, Jun. 1993.
[6] M. Nakagawa, T. Inoue and Y. Nishio, “CNN Template Design Using Back Propagation Algorithm,” Proc. of
CNNA’10, pp. 47-51, Feb. 2010.
[7] D.E. Rumelhart, G.E. Hinton and R.J. Williams, “Learning Internal Representations by Error Propagation,” Parallel Distributed Processing, vol. 1, pp. 318-362, 1986.
[8] S.Kirkpatrick, C.D.Gelatt and M.P.Vecchi, “Optimization
by simulated annealing,” Science, vol. 220, pp. 671-680,
1983.

—6—