異なる背景に対する学習精度の変化

狙い

CNNを利用したネットワークでは認識したい物体の背景が学習に影響を与えると考えられている。
今回の記事ではその現象を実験的に示した。

データ

丸と四角をクラスとする2値分類問題とする。

グループ1(背景差なし)

f:id:kpsdr:20180613212822p:plain:w100f:id:kpsdr:20180613213900p:plain:w100
丸、四角クラス画像の例 背景は均一に赤

グループ2(背景差あり)

f:id:kpsdr:20180613212822p:plainf:id:kpsdr:20180613214438p:plainf:id:kpsdr:20180613213900p:plainf:id:kpsdr:20180613214434p:plain
丸、四角クラス画像の例 背景は赤と青

各グループにおいて、クラス違い、背景違いで等分されるようにTrain,Testに分割した。

モデル

# モデルの定義
model = Sequential()

model.add(Conv2D(32,3,input_shape=(256,256,3),kernel_initializer='glorot_uniform'))
model.add(Activation('sigmoid'))
model.add(Conv2D(32,3,kernel_initializer='glorot_uniform'))
model.add(Activation('relu'))
model.add(MaxPool2D(pool_size=(2,2)))

model.add(Conv2D(64,3,kernel_initializer='glorot_uniform'))
model.add(Activation('relu'))
model.add(MaxPool2D(pool_size=(2,2)))

model.add(Conv2D(128,3,kernel_initializer='glorot_uniform'))
model.add(Activation('relu'))
model.add(MaxPool2D(pool_size=(2,2)))

model.add(Conv2D(64,3,kernel_initializer='glorot_uniform'))
model.add(Activation('relu'))
model.add(MaxPool2D(pool_size=(2,2)))

model.add(Conv2D(64,3,kernel_initializer='glorot_uniform'))
model.add(Activation('relu'))
model.add(MaxPool2D(pool_size=(2,2)))

model.add(Conv2D(64,3,kernel_initializer='glorot_uniform'))
model.add(Activation('relu'))
model.add(MaxPool2D(pool_size=(2,2)))

model.add(Flatten())
model.add(Dense(1024))
model.add(Activation('relu'))
model.add(Dropout(1.0))

model.add(Dense(2, activation='softmax'))

rms = RMSprop(lr=0.0005, rho=0.9, epsilon=None, decay=0.0)
run_options = tf.RunOptions(report_tensor_allocations_upon_oom = True)
model.compile(optimizer=rms, loss='binary_crossentropy', metrics=["accuracy"],options=run_options)

結果

グループごとのvalidation error

val_error 1回目 2回目 3回目
G1 (背景差なし) 81.25% 81.25% 87.50%
G2 (背景差あり) 62.50% 56.25% 68,75%

まとめ

実験結果からもわかるように背景差がないグループの方が高い汎化性能を示している。
背景差がないということは画素値の変化が各画像間で少ないことを示し,モデルがフィッティグする際の変数が少ないとも言い換えられる。
機械学習チュートリアル的データセットであるMNISTは1チャンネルのモノクロ画像であるが、背景差なしのデータセットと考えることもできるだろう。

背景差に対応する手段としては、背景変化がある画像を大量に用意することやコントラスト正規化等の手法が想定されるであろう。