• 検索結果がありません。

i iv vi

N/A
N/A
Protected

Academic year: 2021

シェア "i iv vi"

Copied!
104
0
0

読み込み中.... (全文を見る)

全文

(1)

2015

年度 修士論文

Convolutional Neural Network

による衛星画像上の地物認識

指導教員

石川 博 教授

早稲田大学大学院 基幹理工学研究科 情報理工・情報通信専攻

5114F009-8

石井 智大

(2)

目 次

目 次 i 図 目 次 iv 表 目 次 vi 第 1 章 はじめに 1 1.1 背景 . . . . 1 1.2 目的 . . . . 4 1.3 本論文の構成 . . . . 5 第 2 章 関連研究 6 2.1 衛星画像解析 . . . . 6 2.1.1 Landsat 8 衛星画像 . . . . 6 2.1.2 分光指標による解析 . . . . 7 2.1.3 機械学習手法による自動解析 . . . . 8 2.2 CNN による画像認識手法 . . . . 12 2.2.1 基本構造 . . . . 12 2.2.2 代表的な要素技術 . . . . 16 2.2.3 超パラメータ . . . . 17 2.2.4 既存の CNN モデル . . . . 18 第 3 章 提案する地物認識手法 21 3.1 地物認識手法の概要 . . . . 21 3.2 データセット . . . . 22 3.2.1 目視判読で対象地物を少しでも含むセルを正例とする教師データ 23 3.2.2 目視判読で対象地物を 33% 以上含むセルを正例とする教師データ 23 3.2.3 自動判読で対象地物を 20% 以上含むセルを正例とする教師データ 25

(3)

3.2.4 3.2.3 項の負例から正例に含まれない対象地物を除外した教師データ 25 3.3 提案する地物認識手法の CNN モデル . . . . 25 3.3.1 cifar10-11pct . . . . 27 3.3.2 cifar10-full . . . . 30 3.3.3 提案する CNN モデル . . . . 31 第 4 章 実験 34 4.1 ゴルフ場を対象とした地物認識実験 . . . . 34 4.1.1 Landsat 8 衛星画像の対象領域 . . . . 34 4.1.2 データセット . . . . 34 4.1.3 評価方法 . . . . 36 4.1.4 負例のランダムアンダーサンプリングによる認識結果の比較 . . . 37 4.1.5 入力するバンドの違いによる認識結果の比較 . . . . 38 4.1.6 入力するセルサイズの違いによる認識結果の比較 . . . . 40 4.1.7 入力画像の切り出しの有無による認識結果の比較 . . . . 43 4.1.8 CNN の出力するクラス確率の調査 . . . . 45 4.1.9 CNN のフィルタと特徴マップの可視化 . . . . 48 4.2 メガソーラーを対象とした地物認識実験 . . . . 54 4.2.1 Landsat 8 衛星画像の対象領域 . . . . 54 4.2.2 データセット . . . . 55 4.2.3 評価方法 . . . . 60 4.2.4 入力バンドの違いによる認識結果の比較 . . . . 60 4.2.5 近赤外バンドによる認識結果の比較 . . . . 62 4.2.6 1 バンドによる認識結果の比較 . . . . 63 4.2.7 目視判読のデータセットと自動作成のデータセットによる認識結果 の違い . . . . 65 4.2.8 3 層の CNN についてモデルの構成要素を変更した場合の認識結果 の比較 . . . . 67 4.2.9 CNN の層の数を変更した場合の認識結果の比較 . . . . 69 4.2.10 修正したデータセットを用いて CNN の層の数を変更した場合の認 識結果の比較 . . . . 72 4.2.11 ミニバッチ内のクラス比率を変更した場合の認識結果の比較 . . . 76

(4)

4.2.12 日本全体のデータセットを用いて CNN の層の数を変更した場合の 認識結果の比較 . . . . 78 4.2.13 CNN のソフトマックスの閾値を変更した場合の認識結果の比較 . 79 4.2.14 日本全体のデータセットを用いた既存の認識手法と CNN との比較 81 4.3 推定分類精度評価に対する考察 . . . . 87 第 5 章 おわりに 88 謝辞 90 参考文献 91 付 録 A 実験環境 94 A.1 ソフトウェア . . . . 94 A.1.1 cuda-convnet . . . . 94 A.1.2 cuda-convnet2 . . . . 94 A.1.3 Caffe . . . . 94 A.1.4 Torch7 . . . . 94 A.1.5 LIBSVM . . . . 95 A.1.6 LIBLINEAR . . . . 95 A.2 実験装置 . . . . 95 A.2.1 GTX680 を搭載した PC . . . . 95

A.2.2 TITAN BLACK を搭載した PC . . . . 95

(5)

図 目 次

1.1 ピクセル単位の画像解析の例 . . . . 3 1.2 セル単位の解析の例 . . . . 4 1.3 本研究で行う地物認識 . . . . 5 2.1 NN の基本的な構成 . . . . 9 2.2 多層 NN の構成図 . . . . 10 2.3 CNN の全体図 . . . . 12 2.4 CNN の概念図 . . . . 13 2.5 畳込みとプーリングの図 . . . . 14 2.6 CIFAR-10 の誤認識率 11% のネットワーク構造 . . . . 18 2.7 Krizhevsky らの研究のネットワーク構造 . . . . 19 3.1 CNN による地物認識手法の概要図 . . . . 22 3.2 目視判読で対象地物を少しでも含むセルを正例とする教師データの作成方法 24 3.3 目視判読で対象地物を 33% 以上含むセルを正例とする教師データの作成方法 24 3.4 自動判読で対象地物を 20% 以上含むセルを正例とする教師データの作成方法 26 3.5 3.2.3 項の負例から正例に含まれない対象地物を除外した教師データの作成 方法 . . . . 26 3.6 cifar10-11pct のネットワーク構造 . . . . 27 3.7 cifar10-full のネットワーク構造 . . . . 30 3.8 提案する CNN のネットワーク構造 . . . . 32 4.1 ゴルフ場の実験で使用する Landsat 8 衛星画像 . . . . 35 4.2 アンダーサンプリングを行った際の実験結果 . . . . 39 4.3 バンドの組み合わせを変えた際の実験結果 . . . . 41 4.4 入力サイズと切り出しサイズを変えた際の実験結果 . . . . 44 4.5 セルサイズが 48× 48 ピクセルの時の実験の可視化結果 . . . . 45 4.6 前処理における切り出しの有無の比較 . . . . 46

(6)

4.7 KG を認識した際に CNN の出力するクラス確率のヒストグラム . . . . . 47 4.8 KG の認識結果の例 . . . . 48 4.9 正例の画像を入力した際の CNN の内部処理の可視化結果の例 . . . . 50 4.10 第 1 層の畳込み層の特徴マップの比較 . . . . 51 4.11 第 2 層の畳込み層の特徴マップの比較 . . . . 52 4.12 第 3 層の畳込み層の特徴マップの比較 . . . . 53 4.13 メガソーラーの実験で使用する Landsat 8 衛星画像 . . . . 55 4.14 実験で使用する 20 枚の Landsat 8 衛星画像 . . . . 57 4.15 バンド 5, 6, 7 を用いた場合の実験結果 . . . . 64 4.16 異なるデータセットで学習した場合の認識結果の比較 . . . . 68

4.17 Batch normalization と Dropout を用いた場合の実験結果 . . . . 70

4.18 追加要素ごとの実験時のコストの遷移 . . . . 71 4.19 Data augmentation なしでハードネガティブマイニングの有無による性能 の検証結果 . . . . 73 4.20 Data augmentation ありでハードネガティブマイニングの有無による性能 の検証結果 . . . . 74 4.21 ハードネガティブマイニングなしで data augmentation の有無よる性能の 検証結果 . . . . 75 4.22 修正したデータセット MSD-16-v4 による認識結果と修正前との比較 . . . 77 4.23 ミニバッチ内のクラス比率を調整した場合の実験結果 . . . . 78 4.24 検証データに対する実験結果 . . . . 80 4.25 テストデータに対する実験結果 . . . . 80 4.26 検証用データに対する実験結果 . . . . 82 4.27 テストデータ用に対する実験結果 . . . . 83 4.28 閾値を 0.999 にした際の認識結果の false positive の例 . . . . 84 4.29 各認識手法による実験結果の比較 . . . . 86

(7)

表 目 次

2.1 Landsat 8 の観測するバンド . . . . 6 2.2 CIFAR-10 の誤認識率 11% のネットワーク構造 . . . . 19 2.3 Krizhevsky らの研究のネットワーク構造 . . . . 20 3.1 教師データの作成方法の一覧 . . . . 23 3.2 cifar10-11pct のネットワーク構造 . . . . 27 3.3 cifar10-11pct の重みの更新式のパラメータ . . . . 28 3.4 cifar10-11pct のバイアスの更新式のパラメータ . . . . 29 3.5 cifar10-full のネットワーク構造 . . . . 31 3.6 cifar10-full の重みの更新式のパラメータ . . . . 31 3.7 cifar10-full のバイアスの更新式のパラメータ . . . . 31 3.8 提案する 4 層の CNN のネットワーク構造 . . . . 32 3.9 提案するモデルの重みの更新式のパラメータ . . . . 33 4.1 ゴルフ場を対象とした実験で使用する 2 枚の Landsat 8 衛星画像 . . . . . 34

4.2 Golf Course Dataset 16 ver.1 の詳細 . . . . 35

4.3 Golf Course Dataset 24 の詳細 . . . . 36

4.4 Golf Course Dataset 32 の詳細 . . . . 36

4.5 Confusion matrix . . . . 36 4.6 アンダーサンプリングを行った際の実験結果 . . . . 38 4.7 実験に使用するバンドの組み合わせ . . . . 40 4.8 バンドの組み合わせを変えた際の実験結果 . . . . 42 4.9 入力サイズと切り出しサイズを変えた際の実験結果 . . . . 43 4.10 KG を認識した際の confusion matrix . . . . 47 4.11 メガソーラーを対象とした実験で使用する 2 枚の Landsat 8 衛星画像 . . 54 4.12 実験で使用する 20 枚の Landsat 8 衛星画像の一覧 . . . . 56

(8)

4.14 Mega Solar Dataset 16 ver.2 の詳細 . . . . 58

4.15 Mega Solar Dataset 16 ver.3 の詳細 . . . . 59

4.16 Mega Solar Dataset 16 ver.4 の詳細 . . . . 60

4.17 Mega Solar Dataset 16 Japan ver.1 の詳細 . . . . 61

4.18 Mega Solar Dataset 16 Japan ver.2 の詳細 . . . . 62

4.19 バンド 5, 6, 7 を用いた場合の実験結果 . . . . 62 4.20 バンド 5, 6, 7 を用いた場合の実験結果 . . . . 63 4.21 単バンドを用いた場合の実験結果 . . . . 66 4.22 最も性能が良かったモデルによる認識結果の confusion matrix . . . . 72 4.23 閾値が 0.999 の場合の認識結果の confusion matrix . . . . 81 A.1 GTX680 を搭載した PC の詳細 . . . . 95

A.2 TITAN BLACK を搭載した PC の詳細 . . . . 95

(9)

1

章 はじめに

1.1

背景

衛星画像は上空から地球表面を観測した画像であり,特徴として広域同時性,反復性, 多波長性の 3 つがある [28].広域同時性は「広い範囲をほぼ同時に観測できる」こと,反 復性は「決まった周期で反復して観測できる」こと,多波長性は「可視光だけでなく様々 な波長帯で観測できる」ことである.衛星画像は Google Earth に代表されるように画像 として閲覧するだけでなく,画像から情報を抽出することで多くの分野に応用すること ができる.その 1 つの応用が地球の陸域地表面の解析であり,具体的な応用例としては, 土地利用・土地被覆分類,地図作成,災害対策,農業利用,自然環境解析など多岐にわ たる. 地表面の観測を目的とした衛星の一つとしては Landsat と呼ばれる地球観測衛星があ る.Landsat は NASA が開発し,米国地質調査所 (US Geological Survey, USGS) が運用 する衛星である.1 号機が 1972 年に打ち上げられてから,40 年以上にわたって継続的 に運用がなされており,長期間にわたってデータを収集している.Landsat の最新である 8 号機(Landsat 8)は 2013 年に打ち上げられ,地球全域を 16 日間で観測している [21]. また,この衛星の大きな特徴としては,2008 年にデータポリシーが変更されたことで, 以降は無償で Landsat の観測したデータを入手することが可能となり,データの利用可 能性が高いことが挙げられる.しかし,地球全域の画像を人間が目視判読で解析するこ とは困難であり,自動的な解析手法が求められている. 衛星画像の解析手法としては,多波長性を活かした衛星画像に特有のものから,一般 画像の解析手法を衛星画像に適用したものがある.多波長性より得られるスペクトル情 報を利用した手法の1つとして,目的とする有用情報に関係の深い波長を用いて指数を 作成する手法がある.地表面に限らず,物質はその成分ごとに光の波長域ごとの反射率 が異なるため,スペクトル情報を利用することで物質を区別することが可能である.こ の性質から観測したい地表の物質(以下,地物)に対する感度が大きくなるようなバンド 間の演算値(以下,分光指数)が専門家によって提案されており,代表的なものに植物を 観測するための正規化植生指数 (NDVI: normalized difference vegetation index)[23] があ

(10)

る.また,一般画像の解析手法を適用したものとしては,主に衛星画像の空間情報を利 用するものが多い.フィルタ処理などで土地利用の境界を検出する基本的な手法 [28] か ら,Bag-of-visual-words を利用して特徴を抽出したうえで機械学習による識別器などで 土地利用の種類を分類する手法 [24] など一般的な画像の認識手法も多く利用されている. 実際に衛星画像について解析を行う上では,適した解析手法を選択する必要がある.例 えば植生を観測するだけであれば上述の NDVI を用いることで可能である.しかし,任 意の対象に関する解析や多クラス分類を行う場合に分光指標等をその都度設計するのは 手間であり,このような目的には機械学習が適している.機械学習とは既存のデータを 学習して未知のデータを予測することであり,一般的なアプローチとしては,ある入力 データ x と望ましい出力 d があった時に,出力が d となるような関数 y(x) を得ること である. 機械学習による衛星画像の解析は主にピクセル単位の解析とセル単位の解析に分けられ る.ピクセル単位の解析とは,図 1.1 のように衛星画像のピクセルごとにラベル付けをす る問題である.その最終的な目的は主に 2 つあり,1 つは衛星画像を建物や道,木,芝生, 水域などのクラスに分類することで意味付けまで含めたセグメンテーション (semantic segmentation) を行うもの [12, 13] である.もう 1 つは道路検出や建物検出など 1 つの物 体とそれ以外を分類する二値分類を行うもの [6, 18, 19] である.セル単位の解析とは,図 1.2 のように,衛星画像から一部を切り出した小領域(以下,セル)に対してラベル付け をする問題である.セル単位の解析の最終的な目的も主に 2 つあり,1 つはセルのシー ンを港やゴルフ場,野球場などピクセル単位の解析より複雑な構造を持つクラスに分類 するもの [24, 3] である.もう 1 つはゴルフ場やコーヒー畑など 1 つの対象地物とそれ以 外に分類する二値分類を行うもの [20, 3, 11] である.セル単位で二値分類を行うことを 特に地物認識と呼ぶ. 機械学習による一般的な画像認識では,従来,画像から Bag-of-visual-words などの特 徴量を抽出し,support vector machine などの識別器で分類する手法が用いられていた. しかし,2012 年以降,Krizhevsky らの研究 [15] を契機として deep learning (深層学習) による手法が注目されている.Deep learning は 多層の neural network (以下,NN)の モデルを用いた機械学習手法の総称である.NN は神経細胞の構造を模したネットワーク モデルのことであり,画像認識だけでなく音声認識など多くの分野で高い性能が出るこ とが示されている [27].特に画像認識で優れている手法は convolutional neural network (以下,CNN)であり,上述した Krizhevsky らの研究 [15] でも用いられている.CNN の 基となったのは猫の初期視野覚をモデル化したものであり,具体的には特定の傾きを持 つ線分に選択的に反応する単純細胞と,同様の選択性を持ちつつ,一定の並進移動不変

(11)

樹林

水域

人工物

図 1.1: ピクセル単位の画像解析の例. 入力画像 [1] に対し,ピクセル毎に水域や樹木など のクラスを推定している. 性を持つ複雑細胞の 2 つの細胞の振る舞いをモデル化したものである [8].その後,CNN は LeCun らによって完成され,手書き文字認識において高い性能を示していた [16].

衛星画像解析でも deep learning による手法は注目されており,Penatti ら [20] は一 般画像で学習した CNN のモデルを衛星画像からの特徴抽出器として使用し,高い精度 が出ることを示している.また,Castelluccio ら [3] は一般物体認識で高い精度を出した GoogleNet[22] を衛星画像で一から学習しても高い精度がでることを示している. 地物認識を行う上で考慮すべき衛星画像の特徴の 1 つに多波長性がある.一般的に衛 星画像は可視域以外に近赤外域などの光の波長域も観測しており,画像としては 4 チャ ンネル以上であることが多い.CNN は 4 チャンネル以上の画像を入力する様なモデル を設計することも可能ではあるが,既存の優れた CNN モデル [15] は 3 チャンネルであ ることが多い.地物の特徴が近赤外域にある場合も考えられるため,地物認識を行う上 では多波長を考慮した CNN のモデルの設計が有効であると考えられる. Deep learning では教師あり学習が主な手法であるが,衛星画像を対象とするうえでは, 教師データの用意が大きなコストとなる.特に deep learning は教師あり学習の枠組みの 中でもより多くの教師データが必要と言われている [27].例えば,図 1.1 の様な土地利用・ 土地被覆分類を行うとすると,対象とする領域について正確な教師付けが必要になるが, 広範囲の地表面についてその教師データを作成するには膨大な時間がかかる.また,衛 星画像はある時点での地表の様子を撮影したものであるが,その時点での地表の情報を さかのぼって収集することは現実的に困難である [28].ここに一般画像と違った衛星画像 の問題点があり,教師データに間違いが含まれる可能性があることに注意が必要となる. また,一般に提供されている土地利用・土地被覆分類図などは,それ自体が既存の分類

(12)

農地

建物

飛行機

ゴルフ場

図 1.2: セル単位の解析の例. セルを入力画像とし,セルに対して農地や建物などのクラ スを推定している.ここで示している画像は文献 [24] で用いられたデータセットの一部 である. 手法によって作成されたものである場合が多く,教師データには向かないと考えられる. 地物認識を行う上で用いる特定の地物とそれ以外の二値分類の教師データは,多値分類 よりも教師データの作成が比較的容易であり,評価を行いやすいという利点がある.し かし,地物認識において二値分類の教師データを作成する際の問題点としてデータの不 均衡化がある.例えば,ゴルフ場を対象地物として地物認識を行う際の教師データはゴ ルフ場とそれ以外になるが,ゴルフ場を含むセルとそれ以外のセルをそれぞれ二値分類 の正例と負例とすると,負例の方が圧倒的に多くなり,このことがデータの不均衡化と 呼ばれる.不均衡データの問題点の1つとして,機械学習などで偏った学習がされてし まうことが挙げられ,負例は 100% 近い分類の正確度 (accuracy) になるのに対して,正例 は 0 – 10% の正確度になることが報告されている [9].また,評価においても正確度を使 用すると,正例の分類の正確度に関わらず,負例の正確度が良いだけで 100% に近い正確 度になってしまう.

1.2

目的

本研究では,地表面を観測した衛星画像を入力として,地物の自動認識を行う新しい手 法を提案する.地物認識は地表上に存在する特定の物体の分布を調べることであり,地

(13)

入力

出力

図 1.3: 本研究で行う地物認識.入力画像上のセル単位で対象地物かどうかを識別する. この図 [1] はメガソーラーを対象地物とした場合で,黄色のセルは対象地物として識別さ れたセルである. 物認識の方法は,入力として 1 枚の衛星画像を与え,出力として衛星画像上の小領域(以 下,セル)ごとに対象地物であるかどうかの二値分類結果を得るものである.例えば,図 1.3 は対象地物を大規模太陽光発電所(以下,メガソーラー)とした地物認識の例である. 本研究では地物認識の手法に convolutional neural network (以下,CNN)を導入し,地 物認識手法において既存の CNN モデルを用いた際の傾向を解析する.そして,4 チャン ネル以上の多波長の衛星画像を入力するように CNN のモデルを拡張し,地物認識にお いて有効な波長情報も自動で学習できることを示す.加えて,CNN のモデル自体を改良 し,地物認識の性能を向上する.

1.3

本論文の構成

ここでは,本論文の構成について述べる.第 2 章では本研究の関連研究について述べ, 特に本研究と関係のある CNN について詳しく述べる.第 3 章では提案する地物認識手 法について述べ,第 4 章では実験について述べる.第 5 章では本研究のまとめについて 述べ,最後に付録では本研究で用いた実験環境について述べる.

(14)

2

章 関連研究

2.1

衛星画像解析

2.1.1

Landsat 8

衛星画像

衛星画像は衛星に搭載されたセンサによって観測される画像であり,それらを解析する ことで地表面の様子や気象に関するデータを得ることが出来る.多くの衛星画像は RGB 画像ではなく,複数の電磁波の波長帯を観測したマルチバンド画像である.バンドとは 衛星の複数のセンサでそれぞれ観測される波長帯のことである.可視光領域については 細かい光の波長領域ごとに観測されることが多く,熱赤外センサを搭載した衛星では地 表や大気の熱放射も観測される. 本研究で用いる Landsat 8 の衛星画像は 185km × 180km の範囲を 1 枚の画像として 撮影したマルチバンド画像であり,主なバンドの空間分解能は 30m である.Landsat 8 衛星画像のバンド情報を表 2.1 に示す.また,Landsat 8 衛星画像のピクセル値は 16bit である.

表 2.1: Landsat 8 の観測するバンド.OLI は可視から近赤外を観測し,TIRS は熱赤外を 観測する. センサー名 バンド 波長 (µm) 解像度 (m) OLI 1 0.43-0.45 30 2 0.45-0.51 30 3 0.53-0.59 30 4 0.64-0.67 30 5 0.85-0.88 30 6 1.57-1.65 30 7 2.11-2.29 30 8 0.53-0.68 15 9 1.36-1.38 30 TIRS 10 10.60-11.19 100 11 11.50-12.51 100

(15)

2.1.2

分光指標による解析

衛星画像の特徴として多波長性がある.地表面に限らず,物質はその成分ごとに光の 波長域ごとの反射率が異なるため,スペクトル情報を利用することで物質を区別するこ とが可能である.リモートセンシングの分野ではそのスペクトル情報を活かして特徴を 抽出する手法が研究されており,その方法の 1 つに目的とする有用情報に関係の深い波 長を用いて指数を作成する方法 [28] がある.これは観測したい物質に対する感度が大き くなるようなバンド間の演算を設計し,その演算値を利用するものである.その演算値 のことを分光指標 (spectral index) と呼ぶ. 分光指標の代表的なものに植物を観測するための正規化植生指数 (NDVI: normalized difference vegetation index)[23] がある.これは衛星画像の赤と近赤外のバンドの値をそ れぞれ R, NIR とした際に, NDVI = NIR− R NIR + R (2.1) と定義される.この計算は衛星画像のピクセル単位で行う.これは,赤 R と近赤外 NIR の2バンドの反射率が植物に対する感度が高いことを利用して設計された指標である. NDVI の設計の背景は文献 [28] に詳しく述べられている. このように観測したい物体ごとにそのスペクトル情報を調査し,最適な分光指標を設 計することで,衛星画像の解析が可能となる.しかし,衛星画像に対してピクセル単位 で計算するため,空間方向の情報を考慮することができず,形状に特徴があるような物 体は観測できない.また,スペクトル情報に特徴がない物体も指標の設計が困難となる. さらに,分光指標の設計には専門的な知識と解析が必要である. 本研究で地物認識の対象とするメガソーラーについては,産業技術総合研究所におけ る研究でスペクトル情報に特徴があることがわかっている.特に近赤外に顕著な特徴が あり,Landsat 8 衛星画像に対して以下のようなメガソーラーの分光指標 (MI: Megasolar Index) が設計されている [29]. MI = B3 B7 · B3 B4 · B6− 0.5 · (B5+ B7) B6 (2.2) ここで,Bi, i = 3, 4, 5, 6, 7 は Landsat 8 衛星画像のそれぞれバンド 3, 4, 5, 6, 7 のピクセ ル値を表す.

(16)

2.1.3

機械学習手法による自動解析

分光指標による衛星画像の解析は専門家による手動での解析が必要となり,解析対象 が複数ある場合などはその分だけコストが大きくなる.そのため,機械学習手法によっ て解析の自動化が行われている.代表的な機械学習手法としては support vector machine (以下,SVM) による手法 [20] や neural network (以下,NN) による手法 [3] がある.

Support vector machine

SVM [2] は最大マージンを実現する 2 クラス問題の線形識別関数の学習法である.識 別対象が線形分離不可能な場合も,スラック変数の導入で誤り最小の線形識別関数を得 られる.また,線形分離不可能な場合のより良い方法として,非線形写像を用いて特徴 空間に写像し,その空間内で線形識別関数を用いるものがある.非線形写像を用いた代 表的な手法として radial basis function (以下,RBF)を使用したカーネル法 [17] があ る.RBF を用いたカーネル法で必要なパラメータ (C, γ) はグリッドサーチにより求める. SVM を用いた画像認識では,入力として画像特徴量をベクトルで与え,出力として画像 の属するクラスを得る.入力としては,画像をそのままベクトルに変形して与えること もできる. Neural network NN は神経細胞の構造を模したネットワークモデルである.NN の基本的な構成は図 2.1 に示すような構造であり,神経細胞の 1 つを模したユニット(図中の丸印)を層状に 並べ,これらを互いに結合したものである.ただし,同じ層の間では結合せず,情報の 伝播は入力から出力方向にのみ行われる,順伝播構造のネットワークモデルである. 例えば図 2.1 では,入力データ x = (x0, x1, ..., xd)T が,まず入力層のそれぞれのユニッ トに入力される. 入力層のユニットは基本的に受け取った入力データをそのまま次の層に 出力する. そして,出力されたデータにはそれぞれに対応する重み w = (w0, w1, ..., wd)T がかけられることになる. 具体的な計算としては,出力層のユニットで h =d i=0wixi が 計算されて出力される.より一般には図 2.1 の出力を後述する活性化関数に入力する. また,NN では一般的に入力層は層の数としては数えず,それ以外の層の数で,その NN の層の数とする.図 2.1 の場合は,入力層以外の層は出力層のみのため,1 層の NN となる.なお,層の呼び方として,入力層側の層を下位層,出力層側の層を上位層と呼 ばれ,また,入力層と出力層の間の層は,中間層や隠れ層と呼ばれる.

(17)

݄

ݔ

ݔ

ݔ

ݔ

ݓ

ݓ

ݓ

ݓ

ධຊᒙ

ฟຊᒙ

図 2.1: NN の基本的な構成.xi は各ユニットへの入力,wi は各ユニットの出力にかか る重みである.h は出力であり,h =d i=0wixiである. 図 2.1 の入力層のすべてのユニットと出力層の 1 個のユニットによる NN を考えると, 線形識別関数 f (x) = wTx を用いて,f (x)≥ 0 のとき x ∈ C 1, f (x) < 0 のとき x∈ C2 とする 2 クラス問題を考えることができる.そして,本来 x1 ∈ C2 である学習データ x1 を入力した際に出力が f (x1) ≥ 0 であった場合,学習データ x1 が正しいクラスに分類 されるよう,重み w を調整する [25]. NN を用いた多くの手法では図 2.1 の構造を多層にして用いる.図 2.2 は多層 NN の構 成のうち,第 k− 1 層から第 k + 1 層を表したものであり,第 k 層の i 番目のユニット の出力 hk i は以下のように計算される. hki = f (bki +∑ j wkijhkj−1). (2.3) ここで,f は活性化関数,bk i はバイアス(ユニットにいつも 1 を入力する仮想的なユ ニット),wk ij は第 k− 1 層の j 番目のユニットの出力にかかる重み,そして,hkj−1 は第 k− 1 層の j 番目のユニットの出力である. 通常,活性化関数には非線形関数が用いられる.それは,活性化関数が線形であると, 多層 NN を構成しても等価的に 1 層の NN で表現できてしまうためである. 一般的に活 性化関数には, f (x) = tanh(x). (2.4)

(18)





௞ିଵ



௜௝







௞ାଵ

➨ᒙ

➨  1ᒙ

➨  1ᒙ

нϭ нϭ

䞉䞉䞉

䞉䞉䞉

図 2.2: 多層 NN の構成図.第 k−1 層から第 k+1 層における構成であり,hk = [hk 1, hk2, ...] は第 k 層のそれぞれのユニットの出力であり,wk ij は第 k− 1 層の j 番目のユニットの 出力にかかる重みである.bk i は第 k 層の i 番目のユニットに入力されるバイアスである.

(19)

などのシグモイド関数を用いる. NN を用いてクラス分類を行う場合,最終層に分類すべきクラスと同数のユニットを配 置し,あるクラスに対応する画像が入力された場合は,そのクラスに対応するユニット の出力が大きくなるようにすることでクラス分類を行う.実際には最終層のそれぞれの ユニットの出力 {hi} に対してソフトマックスを用い,クラス確率 {pi} に変換する.ソ フトマックスは以下のように定義される. pi = exp(hi) ∑ jexp(hj) . (2.5) ソフトマックス関数はマックス関数を滑らかにしたものであり,すべての i ̸= j に対し て,hi ≫ hj である場合には,pi ≃ 1 であり,pj ≃ 0 となる. NN の学習最適化は,NN の出力が望んだものとなるように各層の重みを最適化するこ とである.ここでは,誤差逆伝播法を用いて学習最適化を行うことを考える.最適化を 行う際は,学習画像を NN に入力した際の出力と望みの出力の差異をコストとして定義 し,そのコストを小さくすることを考える.クラス分類の場合,一例としてコスト C を 以下のように定義する. C =−i dilog pi. (2.6) ここで,入力に対して正しいクラスを k とするとき,dk = 1 でそれ以外の di = 0 と する符号化を行う.学習画像が複数あり,それらの学習を一度に行う場合は,全学習画 像について C を計算し,それらの総和をコストとする.しかし,一般的にはすべての学 習を一度に行わず,学習画像を一定数集めたミニバッチを作り,ミニバッチごとにコス トを求めて学習を行う. 学習自体は,コストの勾配に比例した微小変化を各層の重みに加えることで学習を行 う勾配降下法が用いられる.このとき,各層の重み wij について,ミニバッチ t に対す る重みの修正量 ∆w(t) ij を,直前のミニバッチ t− 1 に対する修正量 ∆w (t−1) ij を用いて滑 らかにすることが行われる.ミニバッチについて勾配降下法を行うことを特に確率的勾 配降下法と呼ぶ. ∆wij(t) = α∆w(tij−1)− ϵ ∂C ∂w(t)ij . (2.7) wij(t) = w(tij−1)+ ∆w(t)ij . (2.8)

(20)

 W ➨ ϭᒙ ධຊ ⏬ീ  W & 䝬䝑䜽䝇䝋䝣䝖 ➨ Ϯᒙ ➨ ϯᒙ 䜽䝷䝇 ☜⋡ ␚㎸䜏ᒙ 䝥䞊䝸䞁䜾ᒙ ඲⤖ྜᒙ 図 2.3: CNN の全体図.C は畳込み層,P はプーリング層,F は全結合層を表す. ここで,第 1 項の α (0 < α < 1) はモメンタムと呼ばれ,平滑化を担う.第 2 項の ϵ は更 新のステップ幅であり,学習係数と呼ばれる. また,重みが大きくなりすぎないような正則化を行うことがあり,具体的には式 (2.7) の右辺に−ϵλw(t−1) ij を追加する.ここで,λ は任意のパラメータである.バイアスについ ても同様に学習を行うが,上述の正規化は行わない.

2.2

CNN

による画像認識手法

機械学習による画像認識手法としては Krizhevsky らの研究 [15] 以降,convolutional neural network (以下,CNN)が注目されている.

2.2.1

基本構造

CNN は畳込みとプーリングの 2 つの計算を交互に繰り返す順伝播型のネットワークで ある.基本的な CNN は,全体の構造として図 2.3 に示すような構造となり,始めは入力 画像に対するフィルタの畳込みを行う層と,その出力に対するプーリングを行う層を交 互に何度か繰り返す(図中での 1 層目,2 層目).最終層(図中での 3 層目)はタスクに 応じた数のユニットを置き,その前の何層かは全結合層とすることが多い.そして,最 終層の出力にソフトマックスを適用し,入力画像に対するクラス確率を得る.図 2.4 は, 図 2.3 のネットワーク構造における NN の結合の概念図である. それぞれの層については以下で説明する.なお,本論文での層の数え方としては,プー リング層と正規化層は層の数に数えず,畳込み層と同一の層として考える.

(21)

Ɛ

Ž

Ĩƚ

ŵ

Ă

dž

␚㎸䜏ᒙ 䝥䞊䝸䞁䜾ᒙ ඲⤖ྜᒙ ධຊᒙ ฟຊᒙ ␚㎸䜏ᒙ 䝥䞊䝸䞁䜾ᒙ 図 2.4: CNN の概念図.畳込み層は結合重みを共有しており,図中の線の色は同じ結合 重みをもっていることを意味している.プーリング層は畳込み層の内の小領域から出力 を得てプーリングを行う.全結合層は隣り合う層のすべてのユニットと結合する. 畳込み 畳込み層は特定のフィルタを入力画像に畳込む処理を行う層である.画素数 nx× nx入力画像 x に対する,画素数 nw× nw のフィルタ w の畳込みを考える.この畳込みの出 力を h として,h = x∗w と書く.このとき,出力 h のサイズは一般的に nh ≡ nx−nw+1 となるが,画像周囲にパディングを行うことで,nh = nx とする場合も多い.図 2.5 の左 側は畳込みの様子を表している.CNN はこのようなフィルタを複数持っており,また, フィルタごとに異なる出力のセット (特徴マップと呼ばれる) を持つ.図 2.4 においては, 入力画像の画素が NN の 1 つのユニットに相当し,畳込むフィルタがユニットにかかる 重みに相当する.CNN の特徴は,層間の結合がフィルタの範囲の位置ごとに局所的に行 われ,その結合重みが上位層のユニット間で共有されていることである.実際の処理に おいては,フィルタのサイズのほかに,フィルタの数やフィルタの動かす間隔(ストラ イド)を決める必要がある. プーリング プーリング層は,畳込みの出力に対しプーリングを行う層である.プーリングとは,抽 出した特徴から認識に余分な情報を捨て,認識に必要な情報を保った新たな表現に変換す ることと定義されている [26].図 2.5 の右側はプーリングの様子を表しており,畳込みの 出力である特徴マップの小領域から最大値を取り出している.このプーリングはマック

(22)

呍 呍 呍 呍 呍 呍 呍 呍 呍 呍 呍 呍 E䝬䝑䝥 E䝣䜱䝹䝍 ϯϮ ϯϮ ϳ ϳ ϯϮ ϯϮ ϴ ϴ ␚㎸䜏 䝥䞊䝸䞁䜾 ධຊ⏬ീ ϰdžϰїϭ 図 2.5: 畳込みとプーリングの図.図の左側は畳込みの様子を表しており,入力画像に N 枚のフィルタを畳込むことで N 枚の特徴マップが生成される.図の右側はプーリングの 様子を表しており,畳込みで生成された特徴マップの小領域から最大値を取り出してい る.

(23)

スプーリングと呼ばれ,プーリング層のユニット i の出力 h′i が小領域 Pi についてプー リングを行ったものとすると, h′i = max j∈Pi hj. (2.9) と表される. また,他のプーリングの方法として,平均プーリングがある.平均プーリングとは小 領域 Pi の平均を出力するものであり, h′i = 1 |Pi|j∈Pi hj (2.10) と表される. 加えて,マックスプーリングと平均プーリングの中間的なプーリングとして,Lp プー リングが存在し, h′i = ( 1 |Pi|j∈Pi hPj )1 P (2.11) と表される. 実際の処理においては,畳込みと同様に,プーリングのサイズのほかに,プーリング のストライドを決定する.プーリングのストライドがプーリングのサイズと等しい場合 はプーリングを行う小領域が重ならないため,プーリング層のユニット数は,畳込み層 のユニット数よりも減少することになる. 局所コントラスト正規化 CNN で用いられる特徴的な処理として,畳込みとプーリング以外に局所コントラスト 正規化 [26] がある.CNN の畳込みでは画像にフィルタを畳込み,出力として特徴マップ を得るが,その特徴マップは畳込んだフィルタの数だけ存在する.それらの特徴マップ 間で画素ごとに正規化を行うことを考える. CNN で画像に複数のフィルタを畳込んで得られる出力(特徴マップ)を考え,入力画 像 xjk (j, k は画像の座標) に,あるフィルタ (i = 1, ...) を畳込んで得られる出力の集合 を hijk とする.このとき,局所コントラスト正規化は, h′ijk = hijk−ipqwpqhi,j+p,k+qc +ipqwpq ( hijk−ipqwpqhi,j+p,k+q )2 (2.12)

(24)

で表される.ここで,wpq は ∑ pqwpq = 1 となる重みであり,c は任意のパラメータで ある. 全結合 全結合層は,前の層のすべてのユニットと結合する層であり,図 2.4 に示す様な形と なる.

2.2.2

代表的な要素技術

ReLU nonlinearity NN の活性化関数 f には,前述したシグモイド関数を用いるのが一般的である.しか し,勾配降下法による学習時間の観点からすると,シグモイド関数よりも活性化関数 f に以下に定義される正規化線形関数を用いることで学習を高速化できる. f (x) = max(0, x). (2.13) CIFAR-10 を用いて学習画像に対する誤認識率が 25% に到達する時間を,シグモイド関 数と正規化線形関数で比較したところ,正規化線形関数の方が 6 倍近い速さであったと されている. CIFAR-10[14] は, Alex Krizhevsky らによって作成されたデータセットであ り, 10 種類のカテゴリーについて, 画素数 32× 32 の 60000 枚の画像から構成されている.

Local response normalization

Local response normalization は,正規化線形関数の様な制限のない活性化関数のユニッ トを使用する際に有用であるとされている正規化の手法であり,以下のように定義される. bix,y = a i x,y ( k + αmin(N−1,i+ n 2) j=max(0,i−n2)(a j x,y)2 )β. (2.14) ここで,ai x,y はマップ i 上の座標 (x, y) のユニットの出力,N は層にあるマップの総数, n は隣接するマップの数である.また,k, α, β は任意のパラメータである.

(25)

Batch normalization Batch normalization (バッチ正規化)[10] はミニバッチに含まれる画像の特徴マップ間 で正規化を行う手法であり,高速化と正則化の効果があるとされている手法である.ミニ バッチの数を m とし,NN のある層における入力を x1, x2, ..., xmとし,batch normalization を行った出力を y1, y2, ..., ym とすると,出力は以下のように求められる. µB 1 m mi=1 xi (2.15) σ2B 1 m mi=1 (xi− µB)2 (2.16) ˆ xi xi− µBσ2 B+ ϵ (2.17) yi ← γ ˆxi + β (2.18) ここで,γ と β は誤差逆伝播法で学習するパラメータであり,ϵ は定数である. Dropout Dropout は中間層のユニットの出力を一定の確率で 0 にする方法のことである.Dropout が行われたユニットは,学習画像が入力された際に情報を伝播せず,また,誤差逆伝搬法 による重みの更新も行われない.そのため,学習で画像が入力されるたびにネットワー ク構造が異なることになるが,それらのすべての異なる構造において,重みは共有される ことになる.これにより,ユニットがほかのユニットに強く依存しなくなることで,ユ ニットの複雑な共適応が少なくなる.テスト画像の認識を行う際には,全てのユニット を使用するが,そのときはユニットの出力を 0.5 倍する.実際のネットワーク構造にお いては全結合層で dropout が行われている.

2.2.3

超パラメータ

CNN を使用する際には超パラメータを多く決める必要がある.特に本研究に関連する 超パラメータを以下に述べる.

(26)

1st layer 入力 𝑥 : 𝟐𝟒 × 𝟐𝟒 の画像 softma x: 1 0 2nd layer 5thlayer 出力 𝑦 : クラス 確率 平均画像 との差分 𝑥 − 𝜇 fc5 co nv1 nor m1 pool1 co nv2 nor m2 po o l2 3rd layer loca l3 4th layer loca l4

図 2.6: CIFAR-10 の誤認識率 11% のネットワーク構造.conv は畳込み層,pool はプー リング層,norm は正規化層を表し,fc は全結合層を表す. ミニバッチ 前述したように確率的勾配降下法を用いて CNN を学習する際にはミニバッチを用い る.一般的な問題の場合は良いが,データが不均衡である問題に対して確率的勾配降下 法で学習を行うと,ミニバッチ内のクラス比率に偏りが出来ていまい,また,場合によっ てはミニバッチが多数のクラスだけとなってしまい,少数のクラスをうまく学習できな い可能性がある.その場合は,ミニバッチ内のクラス比率を超パラメータとして扱い,ミ ニバッチに少数のクラスを多く含むようにすることで偏った学習の解消に寄与すること が考えられている.

2.2.4

既存の

CNN

モデル

CIFAR-10 用の CNN モデル Krizhevsky らの研究 [15] で CIFAR-10 の実験に用いられ,誤認識率が 11% であった ネットワーク構造である.図 2.6 はこのネットワーク構造を表したものである.また,図 2.6 のネットワーク構造のパラメータについては,表 2.2 に示す.図 2.6 において,local と表記している層は畳込み層の一種であり,通常の畳込み層と違って重みを共有しない 層である.

また,図 2.6 において,norm と表記している層は,local response normalization を行っ ているが,文献 [15] において示されている計算式とは定義が異なっている.A.1.1 項の cuda-convnet で実装されている local response normalization の定義は,

bix,y = a i x,y ( 1 + αnmin(N−1,i+ n 2) j=max(0,i−n2)(a j x,y)2 )β (2.19) である.ここで,今回の構成においては,n = 9, α = 0.001, β = 0.75 である.

(27)

表 2.2: CIFAR-10 の誤認識率 11% のネットワーク構造.conv は畳込み層,pool はプー リング層,fc は全結合層を表す. 層種・名称 パッチ ストライド パディング 出力マップサイズ 関数 パラメータ data - - - 24× 24 × 3 - -conv1 5× 5 1 2 24× 24 × 64 ReLU 4,800 pool1 3× 3 2 - 12× 12 × 64 - 0 conv2 5× 5 1 2 12× 12 × 64 ReLU 102,400 pool2 3× 3 2 - 6× 6 × 64 - 0 local3 3× 3 1 1 6× 6 × 64 ReLU 1,327,104 local4 3× 3 1 1 6× 6 × 32 ReLU 663,552 fc5 - - - 1× 1 × 10 softmax 11,520 1st layer 入力 𝑥 : 𝟐𝟐𝟕 × 𝟐𝟐𝟕 の画像 so ft max 2nd layer 5thlayer 出力 𝑦 : クラス 確率 平均画像 との差分 𝑥 − 𝜇 co n v3 fc6 co n v1 n orm1 p oo l1 3rd layer co n v2 n orm2 p oo l2 co n v5 p oo l5 co n v4 4th layer fc7 fc8 6thlayer 7thlayer 8thlayer

図 2.7: Krizhevsky らの研究 [15] のネットワーク構造.conv は畳込み層,pool はプーリ ング層,N は正規化層を表し,fc は全結合層を表す.

AlexNet

Krizhevsky ら [15] によって設計された CNN のネットワーク構造を図 2.7 に示す.こ こで示している CNN のネットワーク構造は厳密には [15] の構造と異なるが,AlexNet と いうと図 2.7 の構造を指すことが多い.また,図 2.7 のネットワーク構造のパラメータに ついては,表 2.3 に示す.また,正規化層は,local response normalization によるもので あり,各パラメータは,k = 2, n = 5, α = 10−4, β = 0.75 である.

(28)

表 2.3: Krizhevsky らの研究 [15] のネットワーク構造.conv は畳込み層,pool はプーリ ング層,fc は全結合層を表す. 層種・名称 パッチ ストライド 出力マップサイズ 関数 パラメータ data - - 227× 227 × 3 - -conv1 11× 11 4 55× 55 × 96 ReLU 34,848 pool 3× 3 2 27× 27 × 96 - 0 conv2 5× 5 1 27× 27 × 256 ReLU 614,400 pool2 3× 3 2 13× 13 × 256 - 0 conv3 3× 3 1 13× 13 × 384 ReLU 884,736 conv4 3× 3 1 13× 13 × 384 ReLU 1,327,104 conv5 3× 3 1 13× 13 × 256 ReLU 884,736 pool5 3× 3 2 6× 6 × 256 - 0 fc6 - - 1× 1 × 4096 ReLU 37,748,736 fc7 - - 1× 1 × 4096 ReLU 16,777,216 fc8 - - 1× 1 × 1000 softmax 4,096,000

(29)

3

章 提案する地物認識手法

3.1

地物認識手法の概要

地物認識とは一般的に衛星画像上の各点について対象地物かそれ以外かの二値を与え るものである.衛星画像のピクセル単位で地物を認識することが理想であるが,衛星画 像はサイズが大きく,ピクセル単位での認識には計算コストがかかる.また,ピクセル単 位では複雑な形状を持つ地物の認識が難しく,例えば,ゴルフ場や林などはピクセル単 位ではどちらも樹木になり判断が困難である.本研究では衛星画像の小領域(セル)を 切り出し,そのセル単位で 1 つのクラスを与えることとする. 2.2 節で述べたように,二値分類問題における CNN は画像を入力し,その画像に対し て正例と負例のクラス確率を出力する.本研究における CNN による地物認識手法の概 要を図 3.1 に示す.CNN の詳細については 3.3 節で述べる.なお,クラス確率に対する 閾値処理は基本的に 0.5 とする. 地物認識を行う衛星画像としては Landsat 8 衛星画像を用いる.一般的に CNN の入 力層の画像サイズやチャンネル数は固定であるため,本研究で設計する CNN モデル自 体は Landsat 8 に特化したものになるが,基本的な考え方は他の衛星画像にも通じるも のであると考える. 本研究では対象地物を予め設定したうえで地物認識手法の解析と改良を行う.対象地 物としてゴルフ場と大規模太陽光発電所(以下,メガソーラー)の 2 つを設定する.そ れらの対象地物については性能評価のためのデータセットを用意する必要がある.ゴル フ場は産業技術総合研究所において地物認識を想定したデータセットが作成されており, これを利用することで学習と評価を行う.メガソーラーはエレクトリカル・ジャパン1 おいて,その位置と発電の出力の情報がある程度公開されているため,その情報を参考 にすることで教師データの作成作業の一部を省略することが可能である.データセット の作成方法の詳細については 3.2 節で述べる. 1 http://agora.ex.nii.ac.jp/earthquake/201103-eastjapan/energy/electrical-japan/

(30)

CNN

0 0.5 1 正例 負例 ク ラ ス 確 率

16ピクセル

7バンド

閾値処理

入力

出力

対象地物(正例)と認識

Landsat 8

衛星画像

CNNの入力画像

可視

近赤外

セルの切り出し

16ピクセル

図 3.1: CNN による地物認識手法の概要図.全体の処理としては,Landsat 8 衛星画像を 入力し,衛星画像のセル単位に対象地物かどうかの認識結果を得る.具体的には,まず 衛星画像からセルを切り出して CNN に入力し,そのセルは可視域だけでなく近赤外域も 含めた最大 7 バンドを持つ.CNN は正例と負例のクラス確率をそれぞれ出力し,正例の クラス確率について一定の閾値以上の場合に入力したセルを対象地物と認識する.

3.2

データセット

教師データは対象地物を正例,それ以外を負例として,正例と負例をそれぞれ作成す る.まず,正例の作成方法を以下に示す. 1. セルを切り出すグリッドの原点を衛星画像の左上に設定 2. グリッドの原点にオフセットを加える 3. セルに含まれる対象地物の割合を計算 4. 対象地物を含む割合が一定数以上のセルを正例に選択 次に,負例の作成方法を以下に示す.

(31)

表 3.1: 教師データの作成方法の一覧.本研究では 4 種類の方法で教師データを作成する. 作成方法の詳細は 3.2.1 項から 3.2.4 項で述べる.表中の N は切り出すセルのサイズとす る. 方法 オフセット 対象地物の割合 除外領域 A (3.2.1 項) (0, 0) 少しでも含む 無し B (3.2.2 項) 対象地物ごとに調整 33% 無し C (3.2.3 項) (4i, 4j), 0≤ i, j < N4, i, j ∈ Z 20% 無し D (3.2.4 項) (4i, 4j), 0≤ i, j < N4, i, j ∈ Z 20% 有り 2. セルに含まれる対象地物と除外領域の割合を計算 3. 対象地物と除外領域をまったく含まないセルを負例に選択 この作成方法では,グリッドの原点に加えるオフセット,正例とする対象地物の割合,除 外領域の有無の 3 つが変数となる.また,オフセットを加えない,つまり,オフセットが (0, 0) の場合は正例と負例を同時に作成できる.本研究で作成した教師データの作成方法 は 4 種類あり,それらの関係を表 3.1 に示す.以降の 3.2.1 項から 3.2.4 項ではそれぞれの 教師データの作成方法の詳細を述べ,対象地物ごとの具体的なデータセットの詳細は各 実験の説明で述べる.

3.2.1

目視判読で対象地物を少しでも含むセルを正例とする教師データ

まず,衛星画像から対象地物の位置と形状を人が目視で判読する.そして,衛星画像 を画像座標の左上を原点としたグリッドで区切り,少しでも対象地物を含むセルを正例, 対象地物をまったく含まないセルを負例とした教師データを作成する.この作成方法を 図 3.2 に示す.

3.2.2

目視判読で対象地物を

33%

以上含むセルを正例とする教師データ

3.2.1 項の作成方法と比べて,なるべく対象地物をセルに含むような正例の教師データ を考える.まず,衛星画像をグリッドで区切る際に,グリッドの原点にオフセットを加 え対象地物をなるべくセルに含むようにする.これは,対象地物 1 つずつに手動で調整 する.そして,対象地物を 33% 以上含むセルを目視判読して正例とすることで,正例に なるべく対象地物が含まれる.この教師データの作成方法を図 3.3 に示す.なお,負例は 3.2.1 項と同一である.

(32)

𝑗 𝑖 0 0 𝑗 𝑖 0 0 正例 負例 対象地物を 少しでも含 むセル 対象地物を含まないセル 対象地物の形状 を目視判読 図 3.2: 目視判読で対象地物を少しでも含むセルを正例とする教師データの作成方法. 𝑗 𝑖 6 9 𝑗 𝑖 6 9 正例 𝑗 𝑖 0 0 𝑗 𝑖 0 0 負例 対象地物を33% 以上含むセル 対象地物を含まないセル 対象地物の形状 を目視判読 グリッドの原点にオ フセットを加える 図 3.3: 目視判読で対象地物を 33% 以上含むセルを正例とする教師データの作成方法.

(33)

3.2.3

自動判読で対象地物を

20%

以上含むセルを正例とする教師データ

3.2.1 項および 3.2.2 項の作成方法では,対象地物を含むかどうかの判定を目視判読で行 う.そのため,判定に誤差が生じやすく,また,セルを切り出すグリッドを変更しよう とすると,新たに目視で判定しなおす必要がある.その問題の解消のため,対象地物の 輪郭をポリゴンとしてあらかじめ用意し,セルに対象地物を含む割合を自動で判定でき るようにする. まず,衛星画像と対応した対象地物の形状のポリゴンがあるものとする.グリッドで 衛星画像を区切る際,グリッドの原点に加えるオフセットは縦横それぞれ 4 ピクセルずつ 変更して,それぞれの場合についてセルとポリゴンが重なる領域からセルに含まれる対 象地物の割合を計算し,対象地物を 20% 以上含んで入りセルを正例とする.例えば,セ ルサイズが 16× 16 ピクセルであれば,4 ピクセルずつ動かして,合計 16 通りのグリッド を用いることになる.負例は判読方法が自動になるだけであり,基本的には 3.2.1 項およ び 3.2.2 項と変わらない.この教師データの作成方法を図 3.4 に示す.

3.2.4

3.2.3

項の負例から正例に含まれない対象地物を除外した教師デー

3.2.3 項の作成方法では対象地物のポリゴンから正例を自動で判定して作成し,負例は ポリゴンをまったく含まないようにして作成していた.しかし,対象地物すべてについ てポリゴンを用意するのは容易ではなく,ポリゴンが作成されていない対象地物は 3.2.3 項の作成方法では負例に含まれてしまう可能性がある.そのようなポリゴンがない対象 地物でも,その位置だけはわかっている場合がある.その際はその周辺を除外領域とし, その領域を負例に含めないようにすることでより正確なデータセットが作成する.その 除外領域を考慮した教師データ作成方法を図 3.5 に示す.

3.3

提案する地物認識手法の

CNN

モデル

本研究では主に 3 つの CNN のモデルを用いる.そのうち 2 つは既存の一般物体認識の CNN モデルについて,その入力層の画像サイズとチャンネル数および出力層の分類する クラス数を地物認識に合わせて変更したモデルである.もう 1 つは一から設計した本研 究で提案する CNN モデルである.以下ではそれらについて詳しく述べる.

(34)

𝑗 𝑖 0 0 𝑗 𝑖 0 0 対象地物を 20%以上 含むセル 対象地物を含まないセル 正例 負例 対象地物の形状 のポリゴン + オフセットを 加えた場合の正例 図 3.4: 自動判読で対象地物を 20% 以上含むセルを正例とする教師データの作成方法. 𝑗 𝑖 0 0 𝑗 𝑖 0 0 対象地物と除外領域 を含まないセル 負例 対象地物の形状 のポリゴン 除外領域 対象地物を 20%以上 含むセル 正例 + オフセットを 加えた場合の正例 図 3.5: 3.2.3 項の負例から正例に含まれない対象地物を除外した教師データの作成方法.

(35)

1st layer 入力 𝑥 : 𝟏𝟒 × 𝟏𝟒 の画像 sof tm ax :2 2nd layer 5thlayer 出力 𝑦 : クラス 確率 平均画像 との差分 𝑥 − 𝜇 fc5 co nv1 nor m1 pool1 co nv2 nor m2 po o l2 3rd layer loca l3 4th layer loca l4

図 3.6: cifar10-11pct のネットワーク構造.conv は畳込み層,pool はプーリング層,norm は正規化層を表し,fc は全結合層を表す. 表 3.2: cifar10-11pct のネットワーク構造. 層種 パッチ ストライド パディング 出力マップサイズ 関数 パラメータ data - - - 14× 14 × 3 - -conv1 5× 5 1 2 14× 14 × 64 ReL 4,800 pool1 3× 3 2 - 7× 7 × 64 Max 0 conv2 5× 5 1 2 7× 7 × 64 ReL 102,400 pool2 3× 3 2 - 3× 3 × 64 Max 0 local3 3× 3 1 1 3× 3 × 64 ReL 331,776 local4 3× 3 1 1 3× 3 × 32 ReL 165,888 fc5 - - - 1× 1 × 2 softmax 576

3.3.1

cifar10-11pct

2.2.4 項に示した,文献 [15] で CIFAR-10 の実験に用いられ, 誤認識率が 11% であった CNN モデルを地物認識に合わせて変更したモデルであり,以降 cifar10-11pct と呼ぶ. CIFAR-10 のモデルを基にした理由は,CIFAR-10 に含まれる画像のサイズが 32× 32 ピ クセルであり,今回の地物認識で対象とするセルと近いサイズであるためである. ネットワーク構造 表 3.2 および図 3.6 にこの CNN モデルのネットワーク構造を示す.入力する画像サイ ズはこのネットワーク構造を用いる実験の多くの場合 14× 14 × 3 であるが,それ以外の サイズを入力する場合は,入力層 (表 3.2 中の data) のサイズを変更する.その際は,表 3.2 の data 以降の層の出力マップサイズとパラメータ数も変わることに注意する.図 3.6 において, local と表記している層は畳込み層の一種であり, 通常の畳込み層と違って重み を共有しない層である.

(36)

表 3.3: cifar10-11pct の重みの更新式のパラメータ 層番号 ε α λ conv1 0.001 0.9 0.00 conv2 0.001 0.9 0.00 local3 0.001 0.9 0.04 local4 0.001 0.9 0.04 fc5 0.001 0.9 0.01 前処理 CNN の学習を行う際に, 元々画素数 16× 16 である学習画像からランダムに画素数 14× 14 のパッチを切り出して学習に用いている.切り出したパッチに対して 50% の確 率で左右反転を行っている.また, 学習画像全体の平均画像の画素値を各学習画像の画素 値から引いて CNN に入力している. テスト画像を認識する際, テスト画像から画素数 14× 14 のパッチを 10 枚切り出し て使用し, それらのクラス確率の平均を取っている.ここで, 10 枚のパッチとは, 元の 画像の 4 つの角のパッチと中心のパッチ, そして, それらを左右反転したパッチである. cuda-convnet2 では,標準のテスト時のパッチの切り出しの方法が異なっており, テス ト画像から画素数 14× 14 のパッチを 9 枚切り出して使用し, それらのクラス確率の平均 を取っている.ここで,9 枚のパッチとは,4 つの角のパッチと,それらの 4 つのパッチ から任意の 2 つのパッチを選択したときのその中間となる 5 つのパッチである. 学習規則 本実験における CNN の学習では確率的勾配降下法を用いており, 各層の重みは以下の 更新式で計算される.バイアスについても同様の更新式で計算される.ただし, バイアス の計算では正則化項を含まない.cifar10-11pct における更新式の各パラメータについ ては表 3.3,3.4 に示す. ∆wij(t) = α∆wij(t−1)− ϵλw(tij−1)− ϵ ∂C ∂wij(t). (3.1) wij(t) = w(tij−1)+ ∆w(t)ij . (3.2)

(37)

表 3.4: cifar10-11pct のバイアスの更新式のパラメータ 層番号 ε α conv1 0.002 0.9 conv2 0.002 0.9 local3 0.002 0.9 local4 0.002 0.9 fc5 0.002 0.9 学習手順

まず,学習用データセット Dtrain,検証用データセット Dval,評価用データセット Dtest

の3つのデータセットを用意する.そして,これらを用いて以下のように学習を行う. 1. CNN の重みの初期値として, 平均 0, 分散 σ2 の正規分布に従う乱数を与える

W0 = (wki,j), wi,jk ∼ N (0, σ2). (3.3)

2. Dtrain を使用して 1 回目に N1 epochs の学習を行う.

W1 = train(W0, ε, Dtrain). (3.4)

3. Dtrain, Dval を使用して 2 回目に N2 epochs の学習を行う.

W2 = train(W1, ε, Dtrain, Dval). (3.5)

4. 学習係数 ε を 0.1 倍して 3 回目に N3 epochs の学習を行う.

W3 = train(W2, 0.1ε, Dtrain, Dval). (3.6)

5. 学習係数 ε を更に 0.1 倍して 4 回目に N4 epochs の学習を行う.

W4 = train(W3, 0.01ε, Dtrain, Dval). (3.7)

6. W4 の重みの CNN の認識精度を Dtest を用いてテストをする.

ここで, W0, ..., W4 はそれぞれ CNN 全体の重みを表し, 関数 train は誤差逆伝播法によ

(38)

1st layer 入力 𝑥 : 𝟏𝟒 × 𝟏𝟒 の画像 sof tm ax :2 2nd layer 4thlayer 出力 𝑦 : クラス 確率 平均との 差分 𝑥 − 𝜇 co nv3 poo l3 fc4 co nv1 nor m1 po o l1 co nv2 nor m2 po o l2 3rd layer

図 3.7: cifar10-full のネットワーク構造.conv は畳込み層,pool はプーリング層,norm は正規化層を表し,fc は全結合層を表す.

の学習はこれらをすべて行ったうえで 1 回の学習とする.具体的な epoch 数は実験ごと に設定し,N1 − N2 − N3 − N4 と表す.N1 = 500, N2 = 250, N3 = 10, N4 = 10 の場

合は 500− 250 − 10 − 10 と表記する.また,実験によっては,1 回目の学習を行わず, W1 = W0として,Dvalを用いずに Dtrainだけを用いて学習を行う.その際の epoch 数は,

N2− N3− N4 と表す.一般的に Dval は Dtrain を用いた学習の終了判定のみに用いるが,

cifar10-11pct の学習では cuda-convnet (付録 A.1.1 項) の学習方法に倣って Dval も

学習に用いている.

3.3.2

cifar10-full

Caffe で標準で与えられている CIFAR-10 のネットワーク構造を地物認識に合わせて 変更したモデルであり,以降 cifar10-full と呼ぶ. ネットワーク構造 表 3.5 および図 3.7 にこの CNN モデルのネットワーク構造を示す.cifar10-full で実 装されている local response normalization (within channel) の定義は,

bix,y = a i x,y ( 1 + nα2 ∑min(S,x+n2) x′=max(0,x−n2) ∑min(S,y+n2) y′=max(0,y−n2)(a j x′,y′)2 )β (3.8) である.今回の構成においては, n = 3, α = 0.00005, β = 0.75 としている. 前処理 前処理としては 3.3.1 項の cifar10-11pct と同様の手法を取っている.

(39)

表 3.5: cifar10-full のネットワーク構造. 層種 パッチ ストライド パディング 出力マップサイズ 関数 パラメータ data - - - 14× 14 × 3 - -conv1 5× 5 1 2 14× 14 × 32 - 2,400 pool1 3× 3 2 - 7× 7 × 32 Max+ReL 0 conv2 5× 5 1 2 7× 7 × 32 ReL 25,600 pool2 3× 3 2 - 3× 3 × 32 Average 0 conv3 5× 5 1 2 3× 3 × 64 ReL 51,200 pool3 3× 3 2 - 1× 1 × 64 Average 0 fc4 - - - 1× 1 × 2 softmax 128 表 3.6: cifar10-full の重みの更新式のパラメータ 層番号 ε α λ conv1 0.001 0.9 0.004 conv2 0.001 0.9 0.004 conv3 0.001 0.9 0.004 fc4 0.001 0.9 1 学習規則 学習方法は基本的に 3.3.1 項と同様であり,cifar10-full における更新式の各パラメー タについては表 3.6,3.7 に示す. 学習手順 学習手順は基本的に 3.3.1 項と同様である.

3.3.3

提案する

CNN

モデル

本研究で新たに提案する CNN のモデルについて述べる. 表 3.7: cifar10-full のバイアスの更新式のパラメータ 層番号 ε α conv1 0.002 0.9 conv2 0.002 0.9 conv3 0.002 0.9 fc4 0.002 0.9

表 2.1: Landsat 8 の観測するバンド. OLI は可視から近赤外を観測し, TIRS は熱赤外を 観測する. センサー名 バンド 波長 (µm) 解像度 (m) OLI 1 0.43-0.45 30 2 0.45-0.51 30 3 0.53-0.59 30 4 0.64-0.67 30 5 0.85-0.88 30 6 1.57-1.65 30 7 2.11-2.29 30 8 0.53-0.68 15 9 1.36-1.38 30 TIRS 10 10.60-11.19 100 11 11
図 2.6: CIFAR-10 の誤認識率 11% のネットワーク構造. conv は畳込み層, pool はプー リング層,norm は正規化層を表し,fc は全結合層を表す
表 2.2: CIFAR-10 の誤認識率 11% のネットワーク構造. conv は畳込み層, pool はプー リング層,fc は全結合層を表す. 層種・名称 パッチ ストライド パディング 出力マップサイズ 関数 パラメータ data - - - 24 × 24 × 3 -  -conv1 5 × 5 1 2 24 × 24 × 64 ReLU 4,800 pool1 3 × 3 2 - 12 × 12 × 64 - 0 conv2 5 × 5 1 2 12 × 12 × 64 ReLU 102,40
表 2.3: Krizhevsky らの研究 [15] のネットワーク構造. conv は畳込み層, pool はプーリ ング層, fc は全結合層を表す . 層種・名称 パッチ ストライド 出力マップサイズ 関数 パラメータ data - - 227 × 227 × 3 -  -conv1 11 × 11 4 55 × 55 × 96 ReLU 34,848 pool 3 × 3 2 27 × 27 × 96 - 0 conv2 5 × 5 1 27 × 27 × 256 ReLU 614,400 poo
+7

参照

関連したドキュメント

以上の結果について、キーワード全体の関連 を図に示したのが図8および図9である。図8

を塗っている。大粒の顔料の成分を SEM-EDS で調 査した結果、水銀 (Hg) と硫黄 (S) を検出したこと からみて水銀朱 (HgS)

(b) 肯定的な製品試験結果で認証が見込まれる場合、TRNA は試験試 料を標準試料として顧客のために TRNA

( 同様に、行為者には、一つの生命侵害の認識しか認められないため、一つの故意犯しか認められないことになると思われる。

本アルゴリズムを、図 5.2.1 に示すメカニカルシールの各種故障モードを再現するために設 定した異常状態模擬試験に対して適用した結果、本書

図表 5-1-6 評価シート.. 検査方法基本設計 (奈留港に適合した寸法)工場試験結果追加試験結果対応内容

1200V 第三世代 SiC MOSFET と一般的な IGBT に対し、印可する V DS を変えながら大気中を模したスペクトルの中性子を照射 した試験の結果を Figure

工場設備の計測装置(燃料ガス発熱量計)と表示装置(新たに設置した燃料ガス 発熱量計)における燃料ガス発熱量を比較した結果を図 4-2-1-5 に示す。図