14
147 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 Implementation of a Neural Network for Retrieving Atmospheric Parameters from Remote Sensing フィリップ バロン  ヤナ メンドロック  笠井康子 P. Baron, J. Mendrok, and KASAI Yasuko 要旨 教師あり学習を行うフィードフォワードニューラルネットワーク(NN)の数値モデルを実装した。目 的は、将来打ち上げられるリム放射サウンダ JEM/SMILES の観測の逆問題を解く、NN 型リトリーバ ルアルゴリズムの性能を調べることにある。このモデルは研究目的で設計された。柔軟性と拡張性が 重視されているが、同時にその計算能力が衛星データ解析に多く用いられる規模のネットワークに十 分対応する必要があるという点についても考慮されている。プログラムは Python で書かれている。 本稿では NN の生成・使用手続きを示したあと、学習手続きのアルゴリズムについて詳述する。MLP の学習は、Levenberg-Marquardt 法または最急降下法を用い、モデルパラメータの最適値を入出力の 例にしたがって探索する。本モデルには、データの基準化を行う関数やその主成分を使用するための 関数が備わっている。MLP が教師信号に過度に従うことを防止するため、複数の手法がある。コスト 関数に正規化項を追加すれば、ベイズ統計の法則を用いたハイパーパラメータの最適化が行える。ま た相互検証データセットを用いた学習の早期打ち切り手続きも設定可能である。アルゴリズム構築の 正しさをシミュレーションによって実証し、結果について論じる。 A numerical model of a supervised feedforward Neural Network (NN) has been implemented. The purpose is to study the capabilities of a NN based retrieval algorithm to inverse the measurements performed by the future JEM/SMILES limb sounder. The model has been designed for research purpose with a special care given to its flexibility and extension facility, but keeping in mind that the computational performances must allow the use of a network with the size of those commonly used for satellite data inversion. The code is written in the Python language. The procedure to create and use a NN is presented and the algorithms of the training procedure are described in detail. The MLP is trained using either the Levenberg- Marquardt or the steepest descent method to find the optimal value of the model parameters according to some examples of the inputs and outputs. The model also provides a set of functions to scale the data or to use their principal components. In order to prevent the MLP to overfit the training data, several solutions are available. A regularization term can be added to the cost function with the possibility to optimize the hyperparameters using a Bayesian method. Also, an early stopping procedure can be set using a cross-validation data set. The correctness of the algorithms implementation is demonstrated with simulations and the results are discussed. [キーワード] ニューラルネットワーク,多層パーセプトロン,教師あり学習,衛星リモートセンシング, リトリーバル Neural network, Multilayer Perceptron, Supervised learning, Satellite remote sensing, Retrieval 中層・上層大気観測技術特集 特集

特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

147

特集

サブミリ波地球環境計測技術/

リモートセンシングから大気パラメータを得るニューラルネットワークの実装

リモートセンシングから大気パラメータを得るニューラルネットワークの実装Implementation of a Neural Network for RetrievingAtmospheric Parameters from Remote Sensing

フィリップ バロン  ヤナ メンドロック  笠井康子P. Baron, J. Mendrok, and KASAI Yasuko

要旨教師あり学習を行うフィードフォワードニューラルネットワーク(NN)の数値モデルを実装した。目

的は、将来打ち上げられるリム放射サウンダ JEM/SMILES の観測の逆問題を解く、NN 型リトリーバ

ルアルゴリズムの性能を調べることにある。このモデルは研究目的で設計された。柔軟性と拡張性が

重視されているが、同時にその計算能力が衛星データ解析に多く用いられる規模のネットワークに十

分対応する必要があるという点についても考慮されている。プログラムは Python で書かれている。

本稿では NN の生成・使用手続きを示したあと、学習手続きのアルゴリズムについて詳述する。MLP

の学習は、Levenberg-Marquardt 法または最急降下法を用い、モデルパラメータの最適値を入出力の

例にしたがって探索する。本モデルには、データの基準化を行う関数やその主成分を使用するための

関数が備わっている。MLP が教師信号に過度に従うことを防止するため、複数の手法がある。コスト

関数に正規化項を追加すれば、ベイズ統計の法則を用いたハイパーパラメータの最適化が行える。ま

た相互検証データセットを用いた学習の早期打ち切り手続きも設定可能である。アルゴリズム構築の

正しさをシミュレーションによって実証し、結果について論じる。

A numerical model of a supervised feedforward Neural Network (NN) has beenimplemented. The purpose is to study the capabilities of a NN based retrieval algorithm toinverse the measurements performed by the future JEM/SMILES limb sounder. The model hasbeen designed for research purpose with a special care given to its flexibility and extensionfacility, but keeping in mind that the computational performances must allow the use of anetwork with the size of those commonly used for satellite data inversion. The code is written inthe Python language. The procedure to create and use a NN is presented and the algorithms ofthe training procedure are described in detail. The MLP is trained using either the Levenberg-Marquardt or the steepest descent method to find the optimal value of the model parametersaccording to some examples of the inputs and outputs. The model also provides a set offunctions to scale the data or to use their principal components. In order to prevent the MLP tooverfit the training data, several solutions are available. A regularization term can be added tothe cost function with the possibility to optimize the hyperparameters using a Bayesian method.Also, an early stopping procedure can be set using a cross-validation data set. The correctnessof the algorithms implementation is demonstrated with simulations and the results arediscussed.

[キーワード]ニューラルネットワーク,多層パーセプトロン,教師あり学習,衛星リモートセンシング,リトリーバルNeural network, Multilayer Perceptron, Supervised learning, Satellite remote sensing, Retrieval

中層・上層大気観測技術特集特集

Page 2: 特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

中層・上層大気観測技術特集

148 情報通信研究機構季報Vol.53 No.1/2 2007

特集

1 背景

超伝導サブミリ波リム放射サウンダ(SMILES)

は 2009 年に打ち上げが予定されている高感度放

射計で、中層大気(約 10 km~80 km)の化学の研

究を目的としている[1]。SMILES は国際宇宙ス

テーションの日本実験棟「きぼう」(JEM)に搭載さ

れ、微量気体を地球規模で観測する。独立行政法

人宇宙航空研究開発機構(JAXA)では現在、最適

推定法(OEM)[2]によるデータ処理チェーンを開

発中である。このプロシージャは非線形フォワー

ドモデルを使って逆問題を解くに当たり、時間の

かかる逐次解法を用いている[3]。

ニューラルネットワーク(NN)を用いたリト

リーバルアルゴリズムが JEM/SMILES のデータ

をどの程度処理できるのかを調べる研究が現在、

NICT において実施されている。そのために、

NN の特殊なグループである、教師あり学習を行

うフィードフォワード NN[4]が開発された。フィー

ドフォワードネットワークはニューロン層が継続

的に連結されたものであり、第 1 層から最終層ま

で一切のフィードバックをすることなく情報が処

理されていく。本稿では主として多層パーセプト

ロン(MLP)1を扱う。これはリトリーバルによく

使用される、特殊なケースのフィードフォワード

ネットワークである。また「教師あり」とは、モデ

ルパラメータが学習手続きを通して幾つかの入出

力例について最適化されることを意味する。

NN は、非線形のリトリーバル問題を解く代替

的な手法である。NN の出力計算は高速であると

同時に、必要なメモリ量が少ない。計算時間コス

トは、データ処理段階の前に独立して実施される

学習段階に費やされる。学習データはフォワード

モデルを使って作成でき、実測値を必要としない。

また、解の変数に関する荷重関数も不要である。

衛星観測に関する理論的研究では、MLPを用い

たアルゴリズムが従来の統計的手法に近い性能(精

度、確度、垂直分解能など)を発揮することが示さ

れている[5]-[9]。実際に幾つかのアルゴリズムが

実測値に適用され、既に成功している[6][10]-[14]。

なかでも特に注目されているのが、衛星 Odin に

搭載されたサブミリ波放射計(SMR:Submillimeter

Radiometer)の観測値に対する逆問題解析であ

る[15]。JEM/SMILES の観測値は Odin/SMR に類

似すると思われるが、そのリトリーバル手法は同

等の問題に対応できるはずである。

本稿ではモデルそのものに的を絞り、JEM/

SMILES データ処理への適用については扱わな

い。なお、モデルの用途は JEM/SMILES のリト

リーバル解析にとどまらず、非線形回帰問題の解

析、より一般的には関数近似問題や分類問題の解

析にも使用できる[16]。

2では、本モデルの基本的特徴、その生成法及

び使用法について述べる。モデルの実現について

も触れる。3では学習手続きのアルゴリズムにつ

いて、また 4 ではネットワークの学習時に学習

データに追随しすぎるという一般的問題の回避方

法について論じる。最後に 5ではアルゴリズム適

用の有効性をシミュレーションによって実証する。

2 基本的特徴

学習を施した MLP は、JEM/SMILES のリト

リーバル問題における未知の逆関数を次式のよう

に近似することができる。

(1)

ここに、ynは未知の大気状態を表す n 次元ベ

クトルである。これには、未知の装置パラメータ

も含む。xmはノイズを含んだ観測値を表す m 次

元ベクトル、wpは MLP パラメータの p 次元ベ

クトルである2。

MLP は、サンプリングした q 個の要素のグ

リッド(すなわち学習データセット{xm,yn}q)に

対して定義される任意の正則関数の補間器として

作用する。このアナロジーから本モデルの限界が

明らかとなる。具体的には、i)m 次元空間のうち

学習データセットが張る空間の外では誤った結果

となる。ii)学習データが希薄な場合に良好な結果

が得られないことがある。iii)学習データに含まれ

るノイズや誤りに影響される。

JEM/SMILES のリトリーバル解析では、学習

データセットがフォワードモデルを使って生成さ

れる。そこには測器による観測誤差と大気変動の

1 MLP は少なくとも一つの中間層を持つ。中間ニューロンは入力の微分可能な非線形関数を実行し、出力ニューロンは線形演算を実行する。MLP は任意の正則関数をある精度で近似できることが示されている。

Page 3: 特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

149

特集

サブミリ波地球環境計測技術/

リモートセンシングから大気パラメータを得るニューラルネットワークの実装

統計に関する知識が盛り込まれる。なお、そのよ

うな作業を行わずに実際の観測値を使用すること

も可能である[12]。

図 1 に示すように、MLP はニューロンが多層

に結合した構造をしている。第 1 層と最終層をそ

れぞれ入力層及び出力層という。両層の間に中間

層(隠れ層ともいう)がある。入力層のニューロン

は何の演算も行わず、単に第 1 中間層のニューロ

ンへの入力となる。それ以外の層のニューロンは

次式のような演算を実行する。

(2)

ここに、a [ i]とa [ j]は i 番目と j 番目のニューロ

ンが持つ発火の強さである。番号「i」は、j 番目の

ニューロンが所属する層の直前の層にあるすべて

のニューロンに対応する。また wjiは i 番目と j

番目のニューロンをつなぐ結合の重み、θ[j]は

バイアスである。重み w とバイアス θ は本モデ

ルの自由パラメータである。最終層ニューロンの

発火がMLP の出力となる。

デフォルトの f は中間ニューロン(中間層に存

在するニューロン)において f(x)=tanh であり、

出力ニューロンでは恒等関数である。ユーザは独

自の発火関数を定義することができる。ただし、

同一層の全ニューロンに対して同じ関数を与えね

ばならない。

本稿では、ネットワークの大きさは中間層と出

力層を合わせた層数と定義する。ニューロンの個

数は Ni×N1×N2...×No の形で表す。ここに、

Ni は入力層のニューロン数、N1と N2 は第 1 及

び第 2 の中間層のニューロン数、No は出力層の

ニューロン数である。例えば図 1 は 1×2×2 個の

ニューロンを持つ 2 層ネットワークを示してい

る。なお、バイアスは一定の発火強度を持つ仮想

ニューロンで表されるが、ニューロンの表示にお

いてバイアスはカウントされない。

2.1 データの基準化と圧縮

学習手続きの質と頑健性(外部影響の受けにく

さ)は、学習アルゴリズムを適用するデータを基準

化及び圧縮することによって改善できる[6][9][17]。

本モデルはこれらの変換が実施できる。これらの

オプションはオンにしてもユーザから見えないた

めにモデルの入出力は変わらない。

基準化入力データ x-mは次式によって計算され

る。

(3)

ここに x~は入力を代表するサンプルである。

データの圧縮には主成分分析(PCA)を用いる。

圧縮した入力κaは、ある代表サンプル x~の共分

散行列に対する最初の a 個の固有関数から成る基

底で xmを表したものである。すなわち、

(4)

行列 Ua,mの行は、最初の a 個の正規直交固有関

数を固有値(成分の分散)の大きい順に並べたもの

である。

圧縮レベル(a/m の比)は、次式の逆変換を実

施して得られる再構成入力 xrmの誤差に左右され

る。

(5)

2 本稿では下付きの添え字はベクトルないし行列の次元を、また上付きの添え字 T と-1 はそれぞれ転置と逆行列を表す。

図1 1×2×2個のニューロン(具体的には、入力ニューロン1個、出力ニューロン2個及び中間層のニューロン2個)とバイアスを持つ2層ネットワークの模式図バイアスは、発火の強さが常に1である仮想ニューロンと実ニューロンとをつなぐ結合の重みで表される。実ニューロンは濃い円(1,3,4,6,7)で、バイアスは薄い円(2,5)で表している。結合の重み(w1~w10)はモデルにおける可変パラメータである。

Page 4: 特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

中層・上層大気観測技術特集

150 情報通信研究機構季報Vol.53 No.1/2 2007

特集

自乗誤差の和 に関するしき

い値はユーザが指定する。

この方法は、分散が小さい(固有値が小さい)主

成分は情報の重要度が低く、したがって無視でき

ることを前提にしている。言い換えると、観測値

において分散の小さいパラメータの情報は圧縮手

続きにおいて捨てられる可能性がある。観測値で

分散が小さくなる原因として、学習データセット

の大気パラメータにばらつきが少ないことや、観

測値の感度が悪いことが考えられる。

ここでは入力に対する基準化及び主成分(PC)

変換にしか触れなかったが、出力 ynについても

同様の操作を行うことができる。

2.2 実装について

本モデルは研究目的で作成され、柔軟性と拡張

性に重点が置かれている。一方で、本モデルは衛

星観測値の逆問題解析によく使用される規模の

MLP を扱える必要がある。例えば Odin/SMR の

観測値に対する逆問題解析には 30×10×1 のMLP

と 4,000 件の例を持つ学習データセットが使用さ

れ[10]、1 ネットワークごとに一つの大気パラメー

タを取得する。Aires ら[18]の解析では 671×50×

30の MLPと 2,700 件の例を持つ学習データセット

を使用し、大気サウンディング赤外干渉計(IASI:

Infrared Atmospheric Sounding Interferometer)の

観測値をシミュレートしたものから温度プロファ

イルを求めている。Odin/SMR の学習手続きでは

4,000 個の方程式からパラメータ 321 個分のパラ

メータの最適値を推定しなければならない。しか

し IASI の場合、システムの大きさは 35,130 個の

パラメータと 81,000 個の方程式になる。

こうした制約の下、Python を使ってプログラ

ムコードが書かれた。Python はインタープリタ

のオブジェクト指向言語である(http://www.

python.org/)。コードそのものは三つのファイル

で構成されるが、NumPy という外部ライブラリ

(http://www.scipy.org/)を利用することで基本的

な数学関数の使用や配列操作が可能になり、イン

タープリタ言語の欠点である遅いループを減らす

ことができる。Python が NumPy 及び 2 次元プ

ロットライブラリ matplotlib(http://matplotlib.

sourceforge.net/)によって今回の分析にとって実

用的かつ十分な環境となる点に留意したい。本モ

デルはすでに Linux と Windows において試験さ

れている。現在のところ、Odin/SMR ネットワー

クの学習に要する CPU 時間は通常の PC で数分

であり、IASI の学習で数日である。後者のケー

スが本モデルの限界だと考えてよい。しかしコー

ドのインプリメンテーションは今後更に改善され

る上、そのパフォーマンスは JEM/SMILES のリ

トリーバルを実行するのに十分良好である。

MLP は Python のオブジェクトインスタンスで

ある。これは、各ニューロンの発火の強さ、重み

やトポロジーといったアトリビュート(属性やプ

ロパティのこと)を変更及び参照する一連のメ

ソッド(関数のこと)を提供する。モデルを設定な

いし実行する様々な操作は Python のスクリプト

で書くことができ、通常のプログラムとして実行

できる。スクリプトは Python シェルから直接実

行することもできる。その場合、MLP は対話形

式で実行されるため、操作が終わるたびに MLP

の属性分析を行うことができる。

例として表 1 に幾つかの命令を示す。これは関

数 Y2=f(X4)を 4×3×2の MLP で近似するスク

リプトである。なお、表に示したメソッド群は完

全なものではない。

この例では、最初にMLP モジュールを Python

のモジュールとしてインポートしている(1行目)。

次に、バイアスを持つ 4×3×2の MLP のオブ

ジェクトを m という名前で生成する(2 行目)。

中間ニューロンと出力ニューロンに対してそれぞ

れ tanhと linear の発火関数を設定している。入力

データは q 個の例を持つサンプル Xt4,qの主成分

に変換され(3 行目)、出力データはサンプルYt2,q

に関してスケールされる(4 行目)。出力データの

表1 4×3×2 の MLP と q 個の例を持つ学習データセット{Xt4,q,Yt2,q}で関数Y2= f(X4)を近似する処理シーケンス。コードの意味は本文中に説明している

Page 5: 特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

151

特集

サブミリ波地球環境計測技術/

リモートセンシングから大気パラメータを得るニューラルネットワークの実装

圧縮レベルに対する制御しきい値は 10-6に設定し

ている。重みを無作為に初期化し(5 行目)、学習

データセット{Xt4,Yt2}qに従って重みを計算する

(6 行目)。最後に、このモデルを使って入力 X4

を計算し(7行目)、出力Y2を求める(8行目)。

3 学習アルゴリズム

3.1 回帰アルゴリズム

学習手続きの目的は、q 個の入力 xm及び期待

値 znを持つ学習データセット{xm,zn}qからMLP

パラメータ wpの最適値を推定することであった。

解は、次式で与えられるコスト関数ε2を最小化する。

(6)

ここに、ο=n×q、z~oは期待値の集合{zn}qで作ら

れるベクトル、y~oはすべての学習入力{xm}qをモ

デルに与えたときの出力である。解を安定化させ

るためと、wpは小さな値が好ましいために Ewの

項を含めている。

コスト関数が最小となるパラメータは、最急降

下(SD)法(勾配法ともいう)[2][4]又は Levenberg-

Marquardt(LM)法[2][19]を用いて求める。いずれ

も逐次アルゴリズムであり、逐次操作のたびに重

みを下記のように修正する。

(7)

コスト関数の導関数は次式で与えられる。

(8)

ここに、 は標準的な誤差逆伝播

(バックプロパゲーション)法[4]を用いて計算さ

れる。またパラメータηは次式となる。

SD法の場合

LM法の場合

ここに、Ip,pは p×p単位行列、μ はステップ幅パ

ラメータの逆数(SD法の場合)又はMarquardt パ

ラメータ(LM法の場合)である。LM法でのパラ

メータ η は、コスト関数のヘッセ行列のガウス

近似から導かれる。具体的には次式となる。

(9)

μ の初期値はユーザが設定し(デフォルト値は

10)、コスト関数の最小値に向かって収束するよ

う逐次操作が終わるごとに更新される。SD 法及

び LM 法のいずれでも μ の更新にはMarquardt

の方法が使用される。wqの更新後にコスト関数

(式 6)が増加した場合は、あるユーザ定義値(デ

フォルト値は 10)をパラメータ μ に乗じ、新たな

重み推定を行う(式 7)。コスト関数が減少した場

合は μ を別のユーザ定義値で割り、ヤコビアン及

びヘッセ行列を計算してから wqを更新する。収

束状態に達するまでこの過程を繰り返す。LM法

の場合は収束状態に達した後も μ をゼロに設定す

ることで新たなループが実行できる。

二つの連続する逐次操作 iから i+1 までのコス

ト関数変化が小さいときに収束状態に達したとい

う。収束の判定基準は

で定義される。しきい値 thr はユーザによって定

義される(デフォルト値は 10-5)。収束状態に達す

る前に逐次過程を停止する他のメカニズムについ

ては 4で幾つか提示している。

逐次過程の開始時においてバイアスはゼロに設

定され、結合の重みは-1 から 1 までの値が無作

為に設定される。入力データを基準化すると、文

献[20]で提唱される方法を使って入力層と第 1 中

間層の間の重みとバイアスを初期化することも可

能になる。

LM 法は安定しており、SD 法よりも短時間で

解に収束する。一方、SD法ではヘッセ行列(式 9)

の計算と逆演算が不要であるため、2.2で触れた

IASI のケースのようにパラメータが多いネット

ワークの学習に適している。

行列 Jo,p(式 8)は規模が大きいが、ヘッセ行列

(式 9)とコスト関数のヤコビアン(式 8)しか使用

しないためにメモリには保存されない。本モデル

において学習データセットは q 個の要素を持つ

n 個の部分集合に分割される。それぞれの部分集

合は一つのニューロン出力に対応する。ヘッセ行

列とヤコビアン行列は次式を用いて計算される。

Page 6: 特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

中層・上層大気観測技術特集

152 情報通信研究機構季報Vol.53 No.1/2 2007

特集

及び

ここに、Jip,qはヤコビアン行列、y~iqは q個の

学習データについて推定される i 番目のネット

ワーク出力の発火である。

3.2 ベイズの正規化

正規化した回帰アルゴリズムを確率論的に見れ

ば、ハイパーパラメータα 及び β(式 6)はそれぞ

れ MLP パラメータ wpが学習前に持つ分散の逆

数及び誤差 の逆数と

解釈される。パラメータ wpは wpの最確値である。

wpを用いて推定されるパラメータには今後「^」記

号を付けることにする。

ハイパーパラメータの最適値の推定は、ベイズ

の定理[21][22]を用いて行う。

(10)

ここに Hp,pはコスト関数のヘッセ行列(式 9)で

あり、また、

(11)

は の固有値 λkから計算できる有効

パラメータ数である。

LM法を使用する場合は、逐次過程の各段階が

終わるごとに現段階で使用できる wpと Hp,pの値

を用いてハイパーパラメータを更新するアルゴリ

ズムが提唱されている[23]。SD 法を選択する場合

にはヘッセ行列の計算が必要になる。しかしその

アルゴリズムではαの値が過大になって解に対し

て制約がかかりすぎることがある。そのため、よ

り安定であるとされる次の二つの方法がある。

一つ目[24]は、下記の逐次過程からパラメータ

を推定する方法である。

(12)

ここに、iは反復番号である。ループ回数 imaxは

ユーザ定義値であり、デフォルトは 1 に設定され

ている。この値は文献[23]で提唱されている解で

ある。パラメータ β は最後の推定値 γ(imax)を用

いて(式 10)から算出される。

二つめの方法[25]ではαを次式で近似する。

γ とβ はこの新しい αを使って計算される。

α、β、γ に対する初期値はそれぞれ 0、1、p

が使われる。文献[25]の記載のように、ハイパー

パラメータの更新が行われるのはユーザが指定し

た反復回数後である(デフォルト値は 3)。

ハイパーパラメータが更新されるとコスト関数

の定義が変わるため、Marquardt ループサイクル

を続ける前にその推定をやり直す必要がある。新

しいコスト関数の値は γ の値に等しくなる(式 6

と式 10 を参照)。

有効パラメータ数 γ はネットワークの自由度で

ある。それは常にパラメータ wpの個数より小さ

い。そのためその最適値は、ネットワークの最適

な大きさを推定する際の客観的基準を与える。

ニューロン数が極めて少ないネットワークの場

合、γの値はパラメータ wpの個数に近い。γは

ネットワークが大きくなるにつれて増大し、最適

な自由度に近づいていく。ネットワークにとって

最良の大きさは、パラメータ wpの個数が γの最

大値を若干超えるときの大きさである。

学習手続きの全体を表 2にまとめる。

4 過剰学習の問題

過剰学習は、ノイズの多いデータでMLP を学

習させるときに多くみられる問題である。学習

データのノイズパターンは完璧に再現されるが、

新しい入力データを与えるとMLP の性能が低下

する。本モデルには、この問題に対処し、MLP

Page 7: 特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

153

特集

サブミリ波地球環境計測技術/

リモートセンシングから大気パラメータを得るニューラルネットワークの実装

が学習データを滑らかに再現する方法が幾つか実

装されている。

4.1 構造的安定化と正規化

MLP の複雑さ、言い換えると複雑なパターン

を持つ関数を表す能力は、パラメータ wpの個数

とその振幅によって制御される。モデルの複雑さ

は、パラメータ数を超えられない自由度によって

決まる。モデルの自由度をコントロールする類似

の方法に、正規化したコスト関数(式 6)を用いる

方法とパラメータ数を操作する方法がある。なお、

モデルの自由度が低すぎると関数を正しく近似で

きないので注意が必要である。

リトリーバル問題を解くには 2 層のネットワー

クで十分である[14][18]。3.2で述べたようにベイ

ズ流の学習手続きを用いれば自由度γ(有効パラ

メータ数)の最適値が求まり、ひいては最良の中

間ニューロン数を推定することが可能になる。

4.2 学習の早期打ち切り

学習アルゴリズムの逐次過程は収束状態の到達

前に打ち切ることができる。早期打ち切り手続き

を実行することでパラメータ wpが過大な値にな

ることを防止することができる。学習手続きを打

ち切るには最大反復回数を定義すればよい。ある

いは、モデルの一般化能力が劣化し始めたことを

示す相互検証データセットを使用するという方法

もある。ユーザが設定したある反復回数の間、相

互検証コスト関数が減少しないと、学習過程が打

ち切られる。

5 アルゴリズムの検証

5.1 ニューロンの発火強度と出力のヤコブ行列

ニューロンの発火強度と出力のヤコビアンの計

算を行う本アルゴリズム実装を、既知パラメータ

を持つ参照 MLP を用いて検証した。参照 MLP

は図 1 のような 1×2×2 の単純なネットワークで

ある。パラメータ wpの値を表 4 に示す。発火関

数は中間ニューロンが tanh で、出力ニューロン

が恒等関数である。図 2 に、-50 から 50 の入力

に対する二つのネットワーク出力を示す。

このネットワークは規模が小さいためにニュー

ロンの発火強度と出力のヤコビアンを計算する数

式を解析的に容易に導くことができる。表 3 に、

中間ニューロン及び出力ニューロンの発火強度を

表2 学習アルゴリズムの主要ステップのまとめ。「*」印はオプション

図2 参照MLP の第 1出力(右)と第 2出力(左)赤い四角のデータはアルゴリズムの検証に使用される。

Page 8: 特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

中層・上層大気観測技術特集

154 情報通信研究機構季報Vol.53 No.1/2 2007

特集

求める関数 a [3]と a [6]を示した。またパラメー

タ w[1],w[5],w[7],w[9]に対する第 1 モデ

ル出力 o[1]≡a [6] のヤコビアン関数の計算も示

してある。

-50 から 50 までの等間隔の 10 点についてモ

デル出力と解析関数を計算した。全ニューロンの

発火強度及び出力ヤコブ行列の要素をチェックし

た。比較を行ったところ振幅は数値ノイズのレベ

ル(~10-16)であり、両計算値の差は無視できるこ

とが分かる。ニューロン 3,4,6,7 の発火強度

及び出力 1 のヤコビアン行列に関する結果を表 5

に示す。各パラメータの最小値と最大値及び最大

誤差も記載する。

5.2 コスト関数の最小化

モデルパラメータ wpの計算における LM法と

SD 法のアルゴリズム実装を前節で定義した参照

MLP を用いて検証した。同じ大きさと同じ発火

関数を持つ新たなMLP を用意し、参照モデルが

再現されるように学習を施した。学習データは参

照 MLPの 10 個の出力から成る。これは-50と

50 の間の等間隔の入力を用いて算出されたもので

ある(図 2を参照)。学習について 3種類の設定を

定義した。具体的には、(1)LM法を使用、(2)基

準化した学習データを用いて LM 回帰法を実施、

(3)基準化したデータを用いて SD 回帰法を実施。

設定内容と結果を表 6 にまとめた。コスト関数に

は正規化項を用いていない(β=1、α=0)。二つ

の連続する逐次操作においてコスト関数の変化が

小さくなった時点で逐次過程を打ち切る。具体的

な値は設定による(表 6 を参照)。反復総数は

40,000 が上限である。各設定を 100 回繰り返す。

パラメータ wpの初期値は Nguyen アルゴリズム

を使って毎回変更する(3.1を参照)。

ニューロンの置換及び wpの符号変更を行って

もモデル出力が不変となる場合がある点は指摘し

ておく価値がある(表 4 を参照)。そのため求めた

表4 参照MLP におけるパラメータ wpの値と、同じモデル出力を与える他の二つの組合せバイアスの番号は太字で示した。

表5 -50 から 50 の間に等間隔の 10 個の入力について解析的計算とモデルの比較モデルは図1のMLPである。a[3],a[4],a[6],a[7]の発火強度及び10個の重みとバイアスに対する第1出力o[1]≡a[6]のヤコビアンに関する結果を示す。左側が変数の範囲で、右側が最大誤差である。

表3 図1のようなMLPについてニューロンの発火強度を算出する解析的数式 a[3]と a[6]及びパラメータw[1],w[5],w[7],w[9]に対する第 1出力 o[1]≡a[6]のヤコビアン。中間ニューロン及び出力ニューロンによってそれぞれtanhと線形の発火関数が実行される

Page 9: 特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

155

特集

サブミリ波地球環境計測技術/

リモートセンシングから大気パラメータを得るニューラルネットワークの実装

パラメータを参照モデルのものと直接比較しても

あまり意味がない。学習手続きの質は、検定用

データセットから推論される学習後出力の自乗誤

差の和によって推定する。検定用データは-50 か

ら 50 までの等間隔の 100 個の入力を用いて計算

する。

図 3の上の図は、第 1の学習設定を用いて学習

させたMLP の誤差を示したものである。誤差は

実行番号と検定用セットの入力に対して示してあ

る。100 回の実行中、88 回が 10-15未満という無

視できる大きさの誤差のモデルを生成した。それ

以外の 12 回の実行では、全入力に対して誤差が

0.5 を超える誤った MLP モデルが生成されてい

る。そのような誤ったモデルは明確に検知され、

見逃されることはない。

図 3 の下の図は、コスト関数(学習データセッ

トに対して計算)とMarquardt パラメータにおけ

る変動の様子を代表的な 5 回の実行について反復

番号に対して示したものである。4 回の実行にお

いては 30 回から 60 回の反復で約 10-27という小

さいコスト関数に収束している。5 回目のケース

は上記の 12 回の誤った学習を施した MLP の一

つに該当する。10-2を超えるコスト関数によって

別の極小値にトラップされている。

図 4 は第 2 の学習設定に対する結果である。

データの基準化によって結果が改善されている。

すなわち学習後の全MLPが 10-14未満の誤差で参

照モデルを完璧に再現している。いずれのケース

も 35 回以内で収束状態に達している。成功した

逐次操作数の平均は 13 である。

最初の 2 種類の設定で得られた結果は、

Levenberg-Marquardt 法によるアルゴリズム実装

が有効であることを示している。

最後の学習設定に対する結果を図 5 に示す。学

習は基準化したデータに SD 法を施して行った。

収束はなかなか進まず、99 回の実行において収束

状態に達する前に学習が打ち切られた。成功した

逐次操作数の平均は約 18,000 である。シミュレー

ション番号(Simulation index)が 10 の付近にある

濃い赤色の横線に相当する実行では、コスト関数

の変化が小さいために学習手続きが収束したと勘

違いし、逐次過程が早期に打ち切られた。とはい

表6 3種類の設定に対する内容と結果結果は、各設定について実行した100回の平均値。学習手続き終了時におけるコスト関数を示す。コスト関数が0.01を超える実行は失敗(incorrect)とした。成功(コスト関数が減少)した逐次操作の回数と成功した逐次操作の割合も示す。後者は成功した逐次操作の回数を総数で割った比である。

図3 第1の学習設定に対する結果上:学習後のMLPの出力誤差。ここでいう誤差とは、各検定データについて推定される両出力の自乗誤差の和の平方根である。Levenberg-Marquardt法を使用し、学習データは基準化していない。学習データの位置は黒い丸で示した。下:学習データセットに対して推定されるコスト関数及び100回の実行中の五つのネットワークに対するパラメータμを反復番号に対して表示した。

Page 10: 特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

中層・上層大気観測技術特集

156 情報通信研究機構季報Vol.53 No.1/2 2007

特集

え、学習後の全MLPが 10-2未満の誤差で誤差パ

ターンを再現しているため、収束は安定している。

最急降下法のアルゴリズムは正しく実現されてい

るものの、逐次操作が終わるたびに行われるス

テップ幅パラメータ(μ-1)の更新を改善すること

によって収束速度を早める必要があると結論づけ

られる。

5.3 ベイズの正規化の検証

この節では、ベイズ的正規化アルゴリズムを提

唱する文献[23]に示される三角波関数の近似法を

流用する。三角波関数は-0.5から0.5の間の三つ

の線形部分で構成される(図 6)。学習データセッ

トは等間隔の100個の入力と、0.01の分散のノイズ

を持つ出力から成る。我々は幾つかの 1×Nh×1

ネットワークに学習を施した。Nhは 2,3,4,5,

6,8,10,14に設定した。各ネットワークについ

て α と β の初期値はそれぞれ10-6と 1 である。

その値は逐次操作が 1 回終わるごとに(式 12)の

ように更新する。Marquardt パラメータμ の初期

値は 1に設定し、収束状態に応じて 2を乗じるか、

または 10 で割る。

図 6 の上の図は、コスト関数に正規化項を加え

ずに学習させた 1×6×1 のネットワークによる関

数近似の様子である。-0.4 から-0.2 にかけて過

剰学習の影響がみられる。下の図は同じ近似だが、

基準化したコスト関数とベイズ的アルゴリズムを

使用した。過剰学習の影響は消え、近似された関

数はノイズのない元の関数とよく一致している。

八つの学習済みネットワークの結果を表 7 にま

とめる。これらのネットワークのパフォーマンス

は、ノイズのない学習データセットについて評価

した自乗誤差の和 Eaによって推定される。MLP

の大きさを増やすと誤差 Eaは 0.16 まで下がる。

ネットワークの中間ニューロン数が 4 を超えると

誤差 Ea は一定に近くなる。中間ニューロンの数

図4 第2の学習設定に対する結果上:図3の上の図と同じだが、基準化した学習データを用いた。下:図3の下の図と同じだが、基準化した学習データを用いた。

図5 最後の学習設定に対する結果上:図3の上の図と同じだが、最急降下法及び基準化した学習データを用いた。下:図3の下の図と同じだが、最急降下法及び基準化した学習データを用いた。

Page 11: 特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

157

特集

サブミリ波地球環境計測技術/

リモートセンシングから大気パラメータを得るニューラルネットワークの実装

が増えると有効パラメータ数は 10.3 まで上がり、

ネットワークの中間ニューロン数が 4 を超えると

やはり一定に近くなる。γ の最大値は中間ニュー

ロン数が 3 のケースに対応するが、このことは、

四つの中間ニューロン(13 個のパラメータ)を持

つモデルがこの関数の近似にとって適切な選択で

あることを示している。したがってγ の推定値は

誤差 Ea のばらつきと合致している。

オリジナルの分析で得られた結果も表 7 に示し

ている。誤差 Ea の最小値は 0.11 で、今回の分

析の計算値(0.17)より小さい。Ea におけるこの

ような違いは、学習データにノイズが混入するこ

とによって説明できる。図 7 は、ノイズの出現が

異なる 100 の学習データセットを使って 1×6×1

の MLP を学習させたときの誤差のヒストグラム

を示す。ノイズの分散はどのデータセットにおい

ても 0.01 である。100 件のケース中の 15 件にお

いて誤差は 0.10と 0.12 の間である。オリジナル

の分析結果は今回の分析の最良ケースに対応す

る。

6 今後の展望

本稿ではフィードフォワードネットワークのモ

デルを適用し、それについて説明した。アルゴリ

ズムが正しく構築されたことが示された。ネット

ワークパラメータの計算に用いる最急降下アルゴ

リズムは改善が必要である。このほか、よりよい

圧縮アルゴリズムの採用や、コスト関数の正規化

パラメータにスカラーではなく共分散行列を使用

図6 上:ノイズの多い三角波関数(点線)を正規化なしの 1×6×1 で近似した結果(赤線)ノイズのない元の関数も示す(濃い青線)。計算は文献[23]のものを改めて実施した。下:上の図と同じだがベイズ的正規化の方法を適用した。

図7 100 セットの学習データを用いたときの1×6×1ネットワークの誤差のヒストグラム学習データによる違いは、初期重みと学習データ上のノイズである。正規化した MLP 出力の誤差はEa=0.17である。

表7 1×Nh×1個のニューロンから成る八つのネットワークの学習結果Nwはパラメータwpの個数、EaはMLP出力と無ノイズの関数の間の自乗誤差の和である。またパラメータγは有効パラメータ数である。

Page 12: 特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

中層・上層大気観測技術特集

158 情報通信研究機構季報Vol.53 No.1/2 2007

特集

するといった改善が施されることになろう。

しかし、本モデルの現状からすれば、JEM/

SMILES のリトリーバル研究を開始することが可

能である。研究の次のステップは、10,000 種類の

大気シナリオと測器ノイズによる観測シミュレー

ションのデータベース作成である。データベース

の一部は学習手続きに、残りは結果の検証に使用

されることになる。Odin/SMR の分析に用いた設

定と同様に、ネットワークは一つのパラメータの

みを与えるように設定する。SMILES の観測値を

十分に表現するように入力の圧縮レベルを定義

し、中間ニューロンの最良の個数を推定する。

高度分解能、リトリーバル確度及びフォワード

モデルパラメータ数の誤差についてリトリーバル

手法の性能を研究する。

謝辞

独立行政法人日本学術振興会には大変お世話に

なった。ここに感謝の意を申し述べたい。

参考文献

01 M. Shiotani, H. Masuko, the SMILES Science Team, and the SMILES Mission Team,

"JEM/SMILES mission plan. NASDA Rep. Version 2.1, National Space Development Agency

(NASDA), Communications Research Laboratory (CRL)", Nov.,15 2002.

http://www2.nict.go.jp/y/y222/SMILES/Mission_Plan/

02 C. D. Rodgers, "Inverse Methods for Atmospheric Sounding: Theory and practice, volume 2 of

Series on Atmospheric, Oceanic and Planetery Physics", World Scientific. Singapore-New

Jersey-London-Hong-Kong, 2000.

03 Y. Kasai, C. Takahashi, S. Ochiai, P. Baron, J. Urban, T. Motoki, Y. Irimajiri, and A. Kleinboehl,

"SMOCO: a retrieval code for Super-conductive Sub-Millimetr Limb Emision Sounder (SMILES)

on the International Space Station", JQSRT, 2007. submitted.

04 C. M. Bishop, "Neural networks and their applications", Rev Sci Instrum, 65(6):1803-1832, Jun.

1994.

05 F. Aires, C. Prigent, W. B. Rossow, and M. Rothstein, "A new neural network approach

including first guess for retrieval of atmospheric water vapor, cloud liquid water path, surface

temperature, and emissivities over land from satellite microwave observations", J. Geophys.

Res., 106:14887-14908, 2001.

06 W. J. Blackwell, "A neural-network technique for the retrieval of atmospheric temperature and

moisture profiles from high spectral resolution sounding data", IEEE Transactions on

geoscience and remote sensing, 43:2535-2546, 2005.

07 C. Clerbaux, J. Hadji-Lazaro, S. Payan, C. Camy-Peyret, J. Wang, D. P. Edwards, and M. Luo,

"Retrieval of CO from nadir remote-sensing. measurements in the infrared by use of four.

different inversion algorithms", Applied Optics, 41(33), 2002.

08 C. Jiménez, "A neural network technique for retrieving atmospheric species from microwave

limb sounders", PhD thesis, Chalmers University, Göteborg, Sweden, 2003.

09 C. Jimépnez and P. Eriksson, "A neural network technique for retrieving atmospheric species

from microwave limb sounders", Radio Sci., 36(5):941-953, 2001.

10 C. Jiménez, P. Eriksson, and D. Murtagh, "First inversions of observed sub-millimetre limb

sounding radiances by neural networks", J. Geophys. Res., 108(24):4791, 2003.

11 F. Karbou, F. Aires, C. Prigent, and L. Eymard, "Potential of Advanced Microwave Sounding

Unit-A (AMSU-A) and AMSU-B measurements for atmospheric temperature and humidity

profiling over land", Journal of Geophysical Research, 110(D9):7109-+, Apr. 2005.

Page 13: 特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

159

特集

サブミリ波地球環境計測技術/

リモートセンシングから大気パラメータを得るニューラルネットワークの実装

12 M. D. Müller, A. K. Kaifel, M. Weber, S. Tellmann, J. P. Burrows, and D. Loyola, "Ozone profile

retrieval from GOME data using a neural network approach (NNORSY)", J. Geophys. Res.,

108:4497, 2003.

13 J. Escobar Munoz, "Base de Données pour la Restitution de Paramètres Atmosphériques à

l'Échelle Globale - Étude sur l'Inversion par Réseaux de Neurones des Données des

Sondeurs Verticaux Atmosphériques Satellitaires présents et à venir", PhD thesis, Université de

Paris Ⅶ, France, 1993.

14 C. Jiménez, P. Eriksson, and D. Murtagh, "Inversion of Odin limb sounding sub-millimeter

observations by a neural network technique", Radio Sci., 38(4):8602, 2003.

15 D. P. Murtagh, U. Frisk, F. Merino, M. Ridal, A. Jonsson, J. Stegman, G. Witt, P. Eriksson,

C. Jiménez, G. Mégie, J. de La Noë, P. Ricaud, P. Baron, J. R. Pardo, A. Hauchecorne,

E. J. Llewellyn, D. A. Degenstein, R. L. Gattinger, N. D. Lloyd, W. F. J. Evans, I. C. McDade,

C. S. Haley, C. Sioris, C. von Savigny, B. H. Solheim, J. C. McConnell, K. Strong,

E. H. Richardson, G. W. Leppelmeier, E. Kyrölä, H. Auvinen, and L. Oikarinen, "An overview of

the Odin atmospheric mission", Can. J. Phys., 80(4):309-318, 2002.

16 M. Van der Baan and C. Jutten, "Neural networks in geophysical applications", Geophysics,

65:1032-1047, 2000.

17 F. Aires, W. B. Rossow, N. Scott, and A. Chedin, "Remote sensing from the iasi instrument. 1

compression, de-noising, and first-guess retrieval algorithms", J. Geophys. Res., 107(D22),

2002.

18 F. Aires, A. Chedin, N. Scott, and W. B. Rossow, "A regularized neural network approach for

retrieval of atmospheric and surface temperatures with the iasi instrument", Journal of Applied

Meteorology, 41(2):144-159, 2002.

19 M. T. Hagan and M. B. Menhaj, "Training feedforward networks with the marquardt algorithm",

IEEE Transactions on Neural Networks, 5:989-993, 1994.

20 D. Nguyen and B. Widrow, "Improving the learning speed of 2-layer neural networks by

choosing initial values of the adaptive weights", International Joint Conference of Neural

Network, 3:21-26, 1990.

21 D. J. C. MacKay, "Bayesian interpolation", Neural Comput., 4(3):415-447, 1992.

22 D. J. C. MacKay, "Probable networks and plausible predictions - a review of practical

Bayesian methods for supervised neural networks", Network: Computation in Neural Systems,

6:469-505, 1995.

23 F. D. Foresee and M. T. Hagan, "Gauss-newton approximation to bayesian learning", In

Proceedings of the 1997 IEEE International Conference on Neural Networks., pages 1930-

1935, 1997.

24 S. Gutjahr, "Improving the determination of the hyperparameters in bayesian learning", In

Proceedings of the ACNN '98, Brisbane, 1998.

25 Jan Poland, "On the robustness of update strategies for the bayesian hyperparameter alpha",

2001.

Page 14: 特集 中層・上層大気観測技術特集 リモートセンシングから大気パラメータを得る ニューラルネットワークの実装 · ニューラルネットワークの実装

中層・上層大気観測技術特集

160 情報通信研究機構季報Vol.53 No.1/2 2007

特集

Jana Mendrok電磁波計測研究センター環境情報センシング・ネットワークグループ専攻研究員 Ph.D.放射伝達モデルと雲のリモートセンシング

かさ い やす

子こ

笠井康電磁波計測研究センター環境情報センシング・ネットワークグループ主任研究員 博士(理学)大気分光リモートセンシング

Philippe Baron電磁波計測研究センター環境情報センシング・ネットワークグループ特別研究員 Ph.D.大気リモートセンシングのためのフォワード・リトリーバルモデルの開発