目次
第 1 章 序論 ...................................................................................................................................3
1-1 背景 ......................................................................................................................................3
1-2 電気推進機 ..........................................................................................................................4
1-3 研究目的 ..............................................................................................................................5
第 2 章 ホールスラスタ ...............................................................................................................7
2-1 原理 ......................................................................................................................................7
2-2 ホールスラスタの基本設計 ..............................................................................................8
2-3 ホールスラスタの推進性能 ............................................................................................10
2-4 ホールスラスタの最適磁場 ............................................................................................11
第 3 章 ニューラルネットワーク .............................................................................................12
3-1 順伝播型ネットワーク ....................................................................................................12
3-2 活性化関数 ........................................................................................................................13
3-3 ニューラルネットワークの学習方法 ............................................................................14
3-4 確率的勾配降下法(SGD) .................................................................................................15
3-5 学習係数 ............................................................................................................................16
3-6 誤差逆伝播法 ....................................................................................................................17
3-7 過学習 ................................................................................................................................19
3-8 勾配消失問題 ....................................................................................................................20
第 4 章 学習のテクニック .........................................................................................................21
4-1 重みの正則化 ....................................................................................................................21
4-2 重みの初期値 ....................................................................................................................22
4-2-1 ランダム値 ................................................................................................................22
4-2-2 自己符号化器 ............................................................................................................22
4-3 ハイパーパラメータの設定 ............................................................................................27
4-4 遺伝的アルゴリズム ........................................................................................................28
第 5 章 結果 .................................................................................................................................30
5-1 放電電流の時間変化に関する実験 ................................................................................30
5-1-1 実験体系 ........................................................................................................................30
5-1-2 予測に用いたネットワークモデル ............................................................................31
5-1-3 放電電流の予測結果 ....................................................................................................32
5-1-4 モデルの再選定 ............................................................................................................33
5-1-5 放電電流の予測結果 ....................................................................................................341

5-2 様々な作動条件における放電電流の時間変化予測 ................................................... 35
5-2-1 実験体系 ........................................................................................................................ 35
5-2-2 放電電流の予測結果 .................................................................................................... 37
第 6 章 結論 ................................................................................................................................ 41
参考文献 ...................................................................................................................................... 43

2

第1章 序論
1-1 背景近年, 米国や EU, 日本をはじめとして多くの国で深宇宙探査が行われている. 最近では, 2018 年 10 月 20 日に ESA と JAXA が合同で水星探査機ベピコロンボ[1]の打ち上げに成功したり, 中国やインドでも深宇宙探査が行われようとしたりしている. 中国は2018 年 12 月 8 日に, 嫦娥４号を月の裏側への着陸を目指して打ち上げ, 2019 年 1 月 3 日に着陸を成功させており[2], 2020 年ごろには火星探査の実施を計画している[3]. インド
でも同様に, チャンドラヤーン 2 を月へと打ち上げ, インド初の天体着陸に挑もうとしている[2].
このような探査機を運用するには主推進や軌道制御, 姿勢制御のために推進機を搭載する必要がある. 深宇宙探査においては長時間ミッションとなるが, 燃料を途中で補給することが出来ないため, 搭載する推進機には燃費を表す比推力がなるべく高いのものが望まれる. そこで, 比推力が化学推進機よりも 2~10 倍高い電気推進機が必要不可欠である[4].
電気推進機には多くの種類があり, それらの中でも次世代の推進機として期待されているのがホールスラスタである. ホールスラスタの特徴は, 推力密度と比推力のバラン
スが良いことや構造がほかの推進機に比べて簡単であることなどがあげられる.

3

1-2 電気推進機
電気推進機は電気エネルギーによってキセノンなどの推進剤を電離させプラズマ
化し, そのプラズマを加速させ反作用で推力を得る推進機である. 電気推進機には, イ
オンスラスタやホールスラスタ, アークジェットなどがある. 図 1.1 に代表的な各種推進機の推力密度と比推力の関係を示す[4]. イオンスラスタは比推力がほかの電気推進機に比べて高い代わりに, 空間電荷制限電流則の影響を受けるために推力密度が低くなってしまう. アークジェットは電流の集中によって電極が損耗してしまい, 耐久性に不安がある. 一方で, ホールスラスタはイオン加速領域に電子が存在するので電気的に準中性が保たれ, 空間電荷制限則を受けることなく, 推力密度を高くすることが出来る. ホールスラスタは, 月探査用の技術試験衛星である SMART-1[5]の主推進や静止衛星の南北制御などに搭載されているほか, 国際競争力ある衛星システムを実現することを目的として打ち上げを目指している術試験衛星 9 号機(ETS9)に採用された[6]ことなどから,
今後の宇宙推進機として広く使われることが予想される.

図 1.1 各種推進機の推力密度と比推力の関係[4]41-3 研究目的
ホールスラスタはホール電流を利用した推進機であり, 推進機内部の磁場形状や磁場強度が推進性能に大きな影響を及ぼす[7]. 最適な磁場形状や強度は, 放電電圧や推進剤流量などの作動条件だけではなく, 用いるホールスラスタの個体, さらにはチャネル壁の損耗による推進機の形状変化によって変化し, その変化の仕方はそれぞれの推進機の使われ方や表面粗さ, 加工精度によって異なる. つまり, 最適な磁場特性が時間的に非線形変化し,その変化の仕方も個体ごとに様々である. そのため, PID 制御のような自動制御が難しく, 現在は手動で制御されている. しかし, 深宇宙探査においては通信にかなりの時間遅延が生じるため, 地上から手動でしか制御が行えないことはデメリットであり, 自動制御システムを作ることが必要である. ホールスラスタを自動制御する手段として考えられるものに, ニューラルネットワークがある.
ニューラルネットワークを用いたホールスラスタの自動制御に関する研究はすでに本研究室で行われており, 先行研究では, 時々刻々と変化する最適磁場をニューラルネ
ットワークによって予測し, 自動制御の可能性を検証した[8]. 図 1.2 に先行研究の結果を示す. 図 1.2 で示しているのはホールスラスタの推進性能の 1 つである放電電流の実験値とその実験値の予測である. 用いた実験データの詳細については 5-1 節で後述する.
先行研究では, 放電電流の実験値を正確に予測出来るのかを検証しており, 異常放電と呼ばれる電流の大きさが突然飛んでしまう場所以外の予測は概ね正確で, 相対平均誤差が約 1 %となっている. しかし, 先行研究では放電電流の予測に対して以下の問題点を持っている.
1. 予測するのに 30~60 分程度の時間を要する
2. 放電電流の予測を 1 つの作動条件でしか検証していない
1 つ目の問題に関しては, 宇宙で実際に自動制御する際には電力の問題などにより,最新型の CPU を搭載することが出来ず, 地上で予測するのにかかる時間の何倍もの時間がかかってしまうのでより早い予測が必要である. 2 つ目の問題に関しては, ホールス
ラスタは図 1.3 に示すように作動条件によっては放電電流の大きさが非線形的に変わってしまうことがあり, このような放電電流値であっても予測することが出来るのかを検証する必要がある. 図 1.3 に示している実験値は 5-2 節で後述する推進剤流量 1.02 mg/s,
放電電圧 250 V のときのものである. 本研究では以上を踏まえ, ホールスラスタの放電
電流予測にかかる時間の短縮および様々な作動条件下で放電電流予測を行うことで, ホールスラスタのニューラルネットワークを用いた自動制御の可能性について検証することを目的とした.
5

図 1.2 先行研究の結果[8]図 1.3 異なる作動条件での放電電流の実験値

6第2章 ホールスラスタ
2-1 原理図 2.1 にホールスラスタの概略図を示す. ホールスラスタは円環状のプラズマ加速チャネルおよびアノード, カソードを有しており, 図に示すように加速チャネルの半径方向に磁場, 軸方向に電場がかけられていることにより, プラズマは軸方向に加速され推力を得ることが出来る[4]. このとき, チャネルの長さをイオンのサイクロトロン半径よ
りも短く, また, 電子のサイクロトロン半径よりも長くすることで, イオンを電場の力によって軸方向に加速させ, 電子を電場と磁場の力で E×B ドリフトさせてチャネル内に閉じ込めることが出来る. このドリフトによる周方向の電子電流はホール電流と呼ばれており, ホールスラスタの名前の由来になっている[9]. このホール電流と磁場との相互作用によって発生するローレンツ力により電子の軸方向への運動が妨げられ, チャネル内に強い電場が維持されていると考えられる.
ホールスラスタはカソードからチャネル内だけでなく, チャネルの外にも電子を排出している. これは, イオンのみがチャネル外に排出されると, スラスタが負に帯電してしまいイオンがスラスタに引き戻されてしまうので, 電子を同時に排出してイオンを中和することで引き戻されないようにするためである.
以上の理由により, ホールスラスタはチャネル内が準中性に保たれているので, 空間
電荷制限則の影響を受けずに電流密度を高めることが出来る. その結果, 高い推力密度が得られる.

図 2.1 ホールスラスタの概略図

7

2-2 ホールスラスタの基本設計
ホールスラスタは加速チャネル内において以下の条件を満たすように設計される.
𝜔𝑒 𝜏𝑒 ≫ 1

(2.1)

𝑟𝑒 ≪ 𝐿 ≪ 𝑟𝑖

(2.2)

𝐿 ≪ 𝜆𝑚(2.3)

ここで, 𝜔𝑒 [Hz]は電子のサイクロトロン周波数, 𝜏𝑒 [sec]は電子の衝突時間, 𝑟𝑒 [m]と𝑟𝑖 [m]はそれぞれ電子とイオンのラーマ―半径, 𝐿[m]は加速チャネル長, 𝜆𝑚 [m]はイオンの平均自由行程である.
この条件を満たすように設計をすることで, 電子は周方向に E×B ドリフトしてチャネル内にトラップされ, イオンは磁場の影響を無視して電場の力で軸方向に加速される.
以下に, 式(2.1)～(2.3)について説明する.
1) 𝜔𝑒 𝜏𝑒 ≫ 1
この式はチャネル内部で電子が E×B ドリフトするための条件を示している. 𝜔𝑒 𝜏𝑒 はホールパラメータと呼ばれており, 電子が中性粒子と一回衝突するまでの旋回運動の回数を表している. 一般的にチャネル内部のホール電流が主に流れている領域では 200～
300 程である[10]. 𝜔𝑒 と𝜏𝑒 については以下のように書き換えられる.
1
𝜏𝑒 =𝜎e 𝑛𝑣e𝜔e =ここで, 𝜎𝑒 [𝑚2 ]は電子の衝突断面積,

𝑒𝐵
𝑚e

(2.4)
(2.5)

𝑛[𝑚−3 ]は中性粒子密度, 𝑣𝑒 [𝑚/𝑠]は電子の速度,𝑒[𝐶]は電気素量, 𝐵[𝑇]は磁場, 𝑚𝑒 [𝑘𝑔]は電子の質量である. また, チャネル内の電子がボルツマン分布に従うと仮定すると, 電子の速度𝑣𝑒 は次式のように表される.
2𝑘𝐵 𝑇𝑒𝑣e = √𝑚e(2.6)2) 𝑟𝑒 ≪ 𝐿 ≪ 𝑟𝑖
この式は, チャネル内に電子のみがトラップされ, イオンが電場の力によりチャネルの外に排出される条件を示している. 電子とイオンのラーマ―半径は次式で書ける[11].
𝑚𝑒 𝑣𝑒
𝑟e =
(2.7)
𝑒𝐵
𝑟𝑖 =

𝑚𝑖 𝑣𝑖
𝑒𝐵
8

(2.8)

ここで, 𝑚𝑖 [𝑘𝑔]はイオンの質量, 𝑣𝑖 [𝑚/𝑠]はイオンの速度である. イオンの熱速度が電場による速度と比べて無視できるほど小さいとすると, イオンの速度𝑣𝑖 は次式で書ける.
2𝑒𝑉𝑚
𝑣𝑖 = √𝑚𝑖(2.9)

ここで𝑉𝑚 [𝑉]はイオンの平均加速電圧である.
式(2.6)および式(2.9)より, 式(2.2)は次のように表される.
2𝑚𝑖 𝑉𝑚√2𝑚𝑒 𝑘𝐵 𝑇𝑒≪ 𝐿𝐵 ≪ √𝑒𝑒(2.10)

3) 𝐿 ≪ 𝜆𝑚
この式はチャネル内のイオンが中性粒子と衝突せずに, チャネル外に排出される条件を示している. イオンの平均自由行程𝜆𝑚 [𝑚]は,.
𝜆𝑚 =

1

1

4√2 𝜎𝑖𝑛 𝑛(2.11)と表される. ここで𝜎𝑖𝑛 [𝑚2 ]はイオンと中性粒子の衝突断面積を表しており, ホールスラス タ で の 代 表 的 な パ ラ メ ー タ 𝜎𝑖𝑛 = 1.2 × 10−19 [𝑚] , 𝑛 = 5 × 1019 [𝑚−3 ] を 代 入 す ると, 𝜆𝑚 = 3 × 10−2 [𝑚]となる.

9

2-3 ホールスラスタの推進性能
ホールスラスタの推進性能に関わってくるものには, 推力, 比推力, 電力, 推進効率がある[4].
まず, 推力𝐹[𝑁]は以下の式で表される.
𝐹 = 𝑚̇𝑖 𝑣𝑏(2.12)

ここで, 𝑚̇𝑖 [𝑘𝑔/𝑠]はイオンの質量流量, 𝑣𝑏 [𝑚/𝑠]はイオンビーム速度を表す.
比推力𝐼𝑠𝑝 [𝑠]は以下の式で表される
𝐼𝑠𝑝 =

𝐹
𝑚̇𝑔

(2.13)

ここで, 𝑚̇[𝑘𝑔/𝑠]は推進剤流量, 𝑔[𝑚/𝑠 2 ]は重力加速度を表す. 比推力は第 1 章でも述べたように, 推進機の燃費を示すものである.
次に, 電力𝑃[𝑊]は次式で表される.
𝑃 ≅ 𝑉𝑑 𝐼𝑑(2.14)

ここで, 𝑉𝑑 [𝑉]は放電電圧, 𝐼𝑑 [𝐴]は放電電流を表している. 放電電圧は電源によって制御しているので, この式から, 電力を評価したい場合には放電電流のみを計測すればよいことが分かる.
最後に, 推進効率𝜂𝑡 は次式で表される.
𝜂𝑡 ≅𝐹22𝑚̇𝑉𝑑 𝐽𝑑

推進効率は, 推進機に投入した電力の運動エネルギーへの変換効率を表す．

10(2.15)

2-4 ホールスラスタの最適磁場
ホールスラスタでは, 半径方向に印加した磁場の強度や形状がスラスタの推進性能に大きく影響を与える. 最適な磁場特性は常に一定になっているわけではなく, チャネル
壁の損耗により時々刻々と変化していく.
ホールスラスタの耐久性を検証した実験における推進効率の時間変化を図 2.2 および
図 2.3 に示す. 図 2.2 で示しているのは SPT-100 と呼ばれるホールスラスタの耐久試験における推進効率であり, この実験では作動条件を一定に保っていたが, 作動直後ではおよそ 50 %あった推進効率が 1000 時間後にはおよそ 42 %まで落ち, その後は緩やかに上がった後で, 再び 45 %程まで落ちるといった動きを見せた[12]. 図 2.3 で示しているのは PPS-1350 と呼ばれるホールスラスタの耐久試験であり,この実験でも作動条件を一定に保っていたが, 作動直後ではおよそ 52 %あった推進効率が 1500 時間後にはおよそ
46 %まで落ち, その後は緩やかに上がり, およそ 49 %まで戻った[13].
これらの耐久試験から, ホールスラスタを自動制御する際には, 磁場を常に最適化する必要があるということが分かる.

図 2.2 SPT-100 の推進効率の時間変化[12]図 2.3

PPS-1350 の推進効率の時間変化[13]11第3章 ニューラルネットワーク
3-1 順伝播型ネットワーク
ニューラルネットワークとは生物の神経回路網を模したネットワークモデルであり,画像認識や天気用法の予測など様々な分野で応用されている. 最近では, AI による創薬の試みなども始められている[14].
本研究ではニューラルネットワークのうち, 最も基本的なモデルである順伝播型ネッ
トワークを用いた. 順伝播型ネットワークは層状に並べたユニットが隣接層間でのみ結合した構造を持っており, 情報が入力層側から出力層側に 1 方向にのみ伝播するネット
ワークである[15]. 図 3.1 に順伝播型ネットワークのモデル図を示す.
ネットワークを構成する各ユニットは図 3.2 のように, 複数の入力を受け取り, 1 つの出力を次の層へと受け渡す. ユニットが受け取る総入力 u は,
u = 𝑤1 𝑥1 + 𝑤2 𝑥2 + 𝑤3 𝑥3 + 𝑏(3.1)と表される. ここで重み w とは, 次の層へと受け渡す信号の強度を調整するパラメータであり, 重みが大きいほど受け渡す信号が大きくなる. ユニットが次の層へと受け渡す
出力値は, 受け取った総入力 u を活性化関数 f に代入することで得られる.
(3.2)

𝑧 = 𝑓(𝑢)活性化関数 f は線形結合された入力を非線形変換するために用いられ, これによりニューラルネットワークが様々な問題に適応することが出来る.
第𝑙 − 1層のユニットを𝑖 = 1, 2, ⋯ , 𝐼 , 第𝑙層のユニットを𝑗 = 1, 2, ⋯ , 𝐽 で表すと, 第𝑙 −1層のユニットの出力および第𝑙層のユニットの出力は次のように一般化される.
𝐼

𝑢

(𝑙)

= ∑ 𝑤𝑗𝑖 (𝑙) 𝑧𝑖 (𝑙−1) + 𝑏𝑗
𝑖=1
(𝑙)

𝑧

= 𝑓(𝑢(𝑙) )図 3.1 ネットワークのモデル図[4]

(𝑙)

(3.3)
(3.4)

図 3.2 ユニット間の信号の受け渡し[4]123-2 活性化関数
活性化関数には, 単調増加する非線形関数を用いるのが基本となっている. よく使われる関数には, 次式で示すようにロジスティック関数や双曲線正接関数がある[15].
1(3.5)
𝑓(𝑢) =
1 + exp(−𝑢)𝑓(𝑢) = tanh(𝑢)(3.6)

これらの関数の特徴は入力値の絶対値が大きくなっても, 出力値は発散せずに一定値に漸近していくことであり, これは生物の神経細胞の性質を模倣している.
近年ではこれらの関数に代わって, 式(3.7)に示す正規化線形関数(ReLU)[16]や, 式(3.8)に示している Parametric ReLU(PReLU)[17]がよく使われている.
(𝑢 > 0)(𝑢 ≤ 0)(3.7)

𝑢 (𝑢 > 0)𝑓(𝑢) = {𝑎𝑢 (𝑢 ≤ 0)

(3.8)

𝑓(𝑢) = {𝑢0

ここで, a は正の定数である. これらの関数の特徴は, 式(3.5)および式(3.6)に比べて単純で, 学習が進みやすく, 最終的な精度も良いことである. 本研究では, 𝑎 = 0.01として,
PReLU を用いた.

図 3.3 活性化関数の形

13

3-3 ニューラルネットワークの学習方法
ニューラルネットワークでは, 与えられた訓練データを用いて学習することで, 希望する出力値が得られるようになる. ここで述べている訓練データとは, 入力データ x お
よび x 対して望ましい出力 d のデータセット(x, d)の集合を示しており, 学習とは, x が入力されたときに d になるべく近い出力されるように重みを調整することである. ここで,(x, d)1 つ 1 つのデータセットは訓練サンプルと呼ばれる.
このとき, 重みを調整するために, ネットワークで出力される値 y と目標値 d の近さを測る尺度が必要になってくる. この尺度として誤差関数という指標が用いられる. 誤差関数には出力値と目標値の二乗誤差の総和が使われており, 1 つの訓練データに対する出力を yn, 目標値を dn とすると,
1
𝐸 = ∑(𝑦𝑛 − 𝑑𝑛 )2
2

(3.9)

𝑛

という式で表され, この二乗誤差が小さくなるように学習を行う. ここで, n はデータセットの番号を示している.
ネットワークの学習は誤差関数が最小になるまで行うのが理想であるが, 誤差関数は単純な凸関数になっているわけではないので, 最小値を得るのは困難である. そこで勾配降下法を用いて極小値を求める. 勾配降下法とは, 現在の重み w を負の勾配方向に動かし, これを繰り返すことで極小値を求める方法であり, 次式にこれを示す.

∇E ≡𝒘𝑡+1 = 𝒘𝑡 − 𝜀∇𝐸(3.10)

𝜕𝐸
𝜕𝐸
𝜕𝐸
=(
,⋯,
)
𝒕
𝑡
𝜕𝒘
𝜕𝑤1
𝜕𝑤𝑚 𝑡

(3.11)

ここで, ε は 1 回の学習での重みの更新量を表すパラメータで学習係数と呼ばれ, t は更新
回数を, M は w の成分数を示している. 学習係数 ε の大きさを適切に選ぶことはニュー
ラルネットワークの学習において重要であり, 適切に選ぶことで学習を早く, かつより小さな極小値を求めることが出来る. もし, 学習係数 ε が小さすぎると, 1 回の更新量が小さくなるので学習にかかる時間が長くなってしまい, 逆に大きすぎると, 1 回の更新量が大きくなりすぎて誤差関数の形を上手く捉えられず, 収束に問題が生じる.

14

3-4 確率的勾配降下法(SGD)
3-3 節において誤差関数には二乗誤差の総和 E が使われると述べた. しかし, この E を用いた場合, 最小値しようとする誤差関数は常に同じ E であるので, 誤差関数の値が小さくない場所でいったん収束してしまうと, そこから抜け出すことが出来なくなってしまい, より小さな誤差関数の値を得ることが出来なくなってしまう. この問題を解決するための手法が確率的勾配降下法(SGD: Stochastic Gradient Descent)である. SGD とは, 誤差関数として二乗誤差の総和を用いるのではなく, 一部の訓練サンプル, もしくは 1 つの訓練サンプルを用いる手法である[18]. 1 つの訓練サンプルを用いる場合の誤差関数は次式で表される.
1
𝐸𝑛 = (𝑦𝑛 − 𝑑𝑛 )22(3.12)

SGD を用いた場合の重みの更新式は以下のとおりである.
𝒘𝑡+1 = 𝒘𝑡 − 𝜀

𝜕𝐸𝑛
𝜕𝑤 𝑡

(3.13)

SGD を用いる利点は, 重みを更新するたびに異なる訓練サンプルの誤差関数を用いることにより, 最小化しようとする誤差関数が毎回変わるので, 誤差関数の値が小さくない
ところにトラップされるのを防ぐことが出来る点である.

15

3-5 学習係数式(3.13)で重みを更新する際, 学習係数𝜀の選び方が重要になってくる. 一般的に, 学習係数は常に同じ値を取る定数ではなく, 学習が進むにつれて小さな値に変化させる.
これは, 学習の最初の方は大きな学習係数を用いることにより, 1 回の学習で大幅に重みを更新していき, 学習の最後の方では小さな学習係数を用いることにより, 収束性を高める効果がある.
学習係数の決め方には手動設定する方法と自動で設定する手法がある. 手動で設定する場合, 学習係数をあらかじめ決めておき, 学習がある程度進んだところで学習係数を元の値の 1/10 などに設定する. 自動で設定する場合, あらかじめ決められた式に従って学習係数を変化させる. 自動で学習係数を決める式にはいくつか種類があるが, その内の 1 つである AdaGrad[19]という手法について述べる.
AdaGrad は John Duchi らによって提唱された手法で, 式で表すと以下のようになる.
𝜀0
𝒘𝑡+1 = 𝒘𝑡 −∇𝐸(𝒘𝑡 )
(3.14)√ℎ𝑡ℎ𝑡 = ℎ𝑡−1 + ∇𝐸(𝒘𝑡 )2(3.15)ℎ0 には, 値を発散させないために10−8 などの小さな値を設定する. 𝜀0 は初期学習係数であり, あらかじめ決めておく必要がある. √ℎ𝑡 の部分はこれまでに現れた誤差関数の勾配を 2 乗和として組み込んでやることで, 学習が進むにつれて学習係数を小さくすることができる. 本研究では, 学習係数の決定方法として AdaGrad を用いた. ℎ0 は10−8に設
定した.

16

3-6 誤差逆伝播法
式(3.13)によって重みを更新していく際, 二乗誤差の重み勾配𝜕𝐸(𝒘)⁄𝜕𝒘を計算する必要がある. ネットワークの層数を L 層とし, 1 つの訓練サンプル(𝒙𝑛 , 𝑑𝑛 )に対する第 l 層の勾配について考えてみると, 二乗誤差は𝐸𝑛 = 1⁄2 (𝒚(𝒙𝑛 ) − 𝒅𝑛 )2であるので, 第 l 層の勾配は二乗誤差を重み𝑤𝑗𝑖 (𝑙) で微分することで,
𝜕𝐸𝑛
𝜕𝒚
(𝒚(𝒙
)
)
=
−
𝒅
𝑛
𝑛
(𝑙)
(𝑙)
𝜕𝑤𝑗𝑖
𝜕𝑤𝑗𝑖

(3.16)となる. ここで, 添え字の j と i はそれぞれ, 第 l 層と第 l-1 層のユニットの番号を示している. 式(3.16)はさらに, 𝜕𝒚⁄𝜕𝑤𝑗𝑖 (𝑙) を求める必要があるが, 𝒚(𝒙)を展開すると,
𝒚(𝒙) = 𝑓(𝒖𝐿 )= 𝑓(𝒘(𝐿) 𝒛(𝐿−1) + 𝒃(𝐿) )= 𝑓(𝒘(𝐿) 𝑓(𝒘(𝐿−1) 𝒛(𝐿−2) + 𝒃(𝐿−1) ) + 𝒃(𝐿) )⋮(3.17)= 𝑓 (𝒘(𝐿) 𝑓 (𝒘(𝐿−1) 𝑓(⋯ 𝑓(𝒘(𝑙) 𝒛(𝑙−1) + 𝒃(𝑙) ) ⋯ )) + 𝒃(𝐿) )となる. この式から, 出力層および出力層に近い層であれば比較的簡単に𝜕𝒚⁄𝜕𝑤𝑗𝑖 (𝑙) について計算することが出来るが, 入力層に近づくにつれて計算が複雑になり, 計算にかかる時間が莫大なものになってしまう. この問題を解決するために提案されたのが誤差逆伝播法である[20].
誤差逆伝播法とは, 図 3.4 に示すようにニューラルネットワークの出力層を除く各層に, 常に+1 を出力する第 0 番目のユニットを配置し, そのユニットと次の層でつながっているユニットの重み𝑤𝑗0 をバイアス b であると考える手法である.

図 3.4 0 番目のユニットが+1 を出力するネットワーク
17

誤差逆伝播法を用いて以下で誤差関数の重み勾配を計算する. 第 l 層の重み𝑤𝑗𝑖 (𝑙) について考えると, 誤差関数の重み勾配は,
(𝑙)

𝜕𝐸𝑛

=

(𝑙)

𝜕𝑤𝑗𝑖

𝜕𝐸𝑛 𝜕𝑢𝑗(𝑙)(3.18)(𝑙)𝜕𝑢𝑗 𝜕𝑤𝑗𝑖と書ける. この式において右辺第 1 項および右辺第 2 項について考える.
まず, 右辺第 1 項𝜕𝐸𝑛 ⁄𝜕𝑢𝑗 (𝑙) について考える. 第𝑙層の j 番目のユニットはそのユニットからの出力𝑧𝑗 (𝑙) が, 第𝑙 + 1層の各ユニットの入力𝑢𝑘 (𝑙+1) を変化させるので,
𝜕𝐸𝑛
(𝑙)

𝜕𝑢𝑗

(𝑙+1)

𝜕𝐸𝑛 𝜕𝑢𝑘

=∑

(𝑙+1)

𝜕𝑢𝑘
𝑘=1

(𝑙)

𝜕𝑢𝑗

(3.19)と書き換えることが出来る. ここで, 式(3.3)と式(3.4)を用いると,𝜕𝑢𝑘 (𝑙+1)= 𝑤𝑘𝑗 (𝑙+1) 𝑓′(𝑢𝑗 (𝑙) )𝜕𝑢𝑗 (𝑙)(3.20)となる. また,
𝛿𝑗

(𝑙)

≡

𝜕𝐸𝑛

(3.21)(𝑙)𝜕𝑢𝑗と定義すると, 式(3.19)は式(3.21)と式(3.22)を用いて,
𝛿𝑗(𝑙)= ∑ 𝛿𝑘(𝑙+1)(𝑤𝑘𝑗 (𝑙+1) 𝑓′(𝑢𝑗 (𝑙) ))(3.22)𝑘=1(𝑙)のようになる. この式から, 𝛿𝑗 は次の層の𝛿𝑘(𝑙+1)を求めることで計算できることが分

かる. つまり, 出力層の各ユニットの𝛿を求めれば, 式(3.23)を繰り返し用いることで任意の層の𝛿を求めることが出来る. 出力層の𝛿は誤差関数が二乗誤差であり, 出力層の活性化関数は恒等写像であるので,
𝛿𝑘

(𝐿)

=

𝜕𝐸𝑛
(𝐿)
𝜕𝑢𝑘

= 𝑢𝑘 (𝐿) − 𝑑𝑘 = 𝑦𝑘 − 𝑑𝑘

(3.23)となる.
次に式(3.16)の右辺第 2 項の𝜕𝑢𝑗 (𝑙) ⁄𝜕𝑤𝑗𝑖 (𝑙) は𝑢𝑗 (𝑙) = ∑𝑖 𝑤𝑗𝑖 (𝑙) 𝑧𝑖 (𝑙−1) なので,
(𝑙)

𝜕𝑢𝑗

(𝑙)
𝜕𝑤𝑗𝑖

= 𝑧𝑖 (𝑙−1)(3.24)となる. この式と式(3.23)を式(3.16)に代入することで, 求める誤差関数の重み勾配は,𝜕𝐸𝑛(𝑙)= 𝛿𝑗 𝑧𝑖 (𝑙−1)(3.25)(𝑙)𝜕𝑤𝑗𝑖と表される. 以上が誤差逆伝播法の学習プロセスであり, 本研究でも誤差逆伝播法を用いて二乗誤差の重み勾配を計算した.
18

3-7 過学習
ニューラルネットワークの学習における目的は, 学習に用いたデータ(訓練データ)の二乗誤差(訓練誤差)をできるだけ小さくすることではなく, 未知のデータ(テストデー
タ)の二乗誤差(テスト誤差)をできるだけ小さくすることである. つまり, 現在学習しているデータのみならず, 学習を行っていないデータに対しても精度よく予測する必要がある. ここで問題になってくるのが過学習という問題である[21]. 過学習とは, 学習の最
初の方は訓練誤差とテスト誤差がほぼ一致するが, 学習が進むにつれて訓練誤差は小さな値に収束するにもかかわらず, テスト誤差は値が収束するどころか増大して, 訓練誤差の値とかけ離れていくという問題である. 図 3.5 に過学習の様子を示す. 過学習が起こる原因として考えられるのが, 訓練データ数の不足, もしくは大きすぎるネットワー
クモデルである. 大きすぎるネットワークモデルとは中間層の層数やユニット数を必要以上に大きくしてしまうことである. 中間層の層数やユニット数を増やすことにより,複雑で表現力の高いネットワークを作ることが出来るが, 過学習を起こしやすくなってしまうため, 過学習を起こさず, かつ表現力の高いネットワークモデルを作ることが重要である.

図 3.5 過学習の様子[4]193-8 勾配消失問題
ニューラルネットワークでは, 誤差逆伝播法を用いることにより中間層を多層にしても容易に計算が出来るようになった. しかし, 中間層の数を増やしすぎると勾配消失問
題が生じてしまう[22]. 勾配消失問題とは, 誤差逆伝播法において, 𝛿の値が急速に小さくなってしまい, 学習を進めるのが困難になってしまう問題である. 式(3.23)に示しているように, 𝛿には𝑓′(𝑢)と𝑤が含まれており, これらの値が小さいと, 入力層側へと伝播す
る前にほとんど 0 となってしまう.
この問題を緩和するためには, 活性化関数を慎重に選ぶ必要がある. 式(3.5)に示しているロジスティック関数の場合,
𝑓′(𝑢) = 𝑓(𝑢)(1 − 𝑓(𝑢))(3.26)となり, 入力 u の絶対値が大きくなると, 𝑓′(𝑢)の値は 0 に収束してしまう. 一方, 式(3.7)
や式(3.8)の ReLU 系統の関数を用いた場合, その微分形は定数となり, 入力 u の大きさに左右されることなく, 入力層側へと誤差の逆伝播計算を受け渡すことが出来る. このような理由から, 近年では ReLU 系統の活性化関数が使われている.

20

第4章 学習のテクニック
4-1 重みの正則化
3-7 節で述べたように, ニューラルネットワークはモデルが複雑であるほど表現能力は高くなるが, 過学習を引き起こしやすくなる. しかし, 過学習を抑えるためにモデルを小さくすると表現能力が落ちてしまう. そこで, モデルをできるだけ小さくせず, 過学習も起こさないようにするために, 重みの自由度を制約するための正則化手法が提案されている. その正則化手法のうちの 1 つとして提案されているのが重み減衰（weightdecay）[23]という手法である. この手法では以下のように, 重みの二乗和を誤差関数に加え, その誤差関数の極小値を求める.
𝜆𝐸̃ (𝒘) ≡ 𝐸(𝒘) + ‖𝒘‖2
2

(4.1)

ここで, λは正則化の強度を表す係数である. この係数の値を大きく設定すると, 大きな値をもつ重みに強い制約をかけることができる. λの値は 0.01～0.00001 程度の範囲で設定する. 𝐸̃ (𝒘)を用いた場合の勾配降下法の更新式は,
𝒘𝑡+1 = 𝐸̃ (𝒘)= 𝒘𝑡 − 𝜀(𝐸(𝒘) + 𝜆𝒘)(4.2)となる. この式から, 重みは自身の大きさに比例した速さで減衰していくことがわかる.

21

4-2 重みの初期値
ニューラルネットワークを用いて学習を始める際, 重みの初期値を設定する必要がある. この重みをどのように設定するかによって学習の進む速度や最終的な収束具合が異なってくる. 一般的に重みの初期値の設定には 2 通りの手法がある. まず 1 つ目はガウス分布などに従ってランダムな値を設定する手法である. 2 つ目は, 実際の学習とは別に,重みの初期値を取得するための学習をあらかじめ行い, 重みの初期値を決定するという手法(事前学習)であり, この手法には主に自己符号化器[24]と制限ボルツマンマシンという 2 種類の方法がある. 以下では, ランダムな値を設定する手法および自己符号化器について述べる.

4-2-1 ランダム値
ガウス分布に従ってランダムな値を選ぶ場合, 標準偏差σをどう設定するのかが学習に影響を与える. 標準偏差を大きくし, 重みのばらつきを大きくしてしまうと学習が始めのうちは早く進むが, 誤差関数の減少が早い段階で止まってしまい, 収束したときの誤差関数の値がそれほど小さくならない傾向がある. そのため, 標準偏差が 0.01 のような小さな値を持つガウス分布を用いるが, 用いる活性化関数によって最適な値が異なっている. 例えば, 活性化関数にシグモイド関数などの値域に上下限がある関数を用いる
場合には, Xavier Glorot と Yoshua Bengio が提唱した「Xavier の初期値」[25]が適しており, ReLU 関数を活性化関数として用いる場合は Kaiming He らが提唱した「He の初期値」[26]が適している. Xavier の初期値では, 前層のユニット数が n 個であれば, 1⁄√𝑛の標準偏差を持つガウス分布を用いており, . He の初期値では前層のユニット数が n 個であれば, √2⁄𝑛の標準偏差を持つガウス分布を用いている. He の初期値での標準偏差が Xavierの初期値よりも大きい理由は, ReLU 関数は負の領域が 0 であるため, 倍の係数をかけることでその分の広がりを持たせるためである. 先行研究では, He の初期値を用いて重みを取得していた.

4-2-2 自己符号化器
自己符号化器(AE: Auto Encoder)とは, 重みの初期値を決定する際の事前学習として用いる方法の 1 つで, 入力信号を一度符号化させた後に, 復号化によって元の信号に戻す
ニューラルネットワークの一種であり, ランダムな値を取得するよりも良い精度で学習

22

が進むという報告がされている[27]. 図 4.1 と図 4.2 に元のネットワークおよび自己符号化器の概略図を示す.

図 4.2 自己符号化器の概略図

図 4.1 元のネットワーク

事前学習として自己符号化器を用いる場合には, 元のネットワークの出力層を軸として鏡のように折り返してネットワークを形成し, 前半部分を信号の符号化側, 新たに形成した後半部分を復号化側とする. 自己符号化器における信号の入出力を式で表すと以下のようになる.
𝑥 → 𝑦 = 𝑓(𝑊𝑥 + 𝑏)
̃ 𝑦 + 𝑏̃)𝑦 → 𝑥̂ = 𝑓̂(𝑊

(4.3)
(4.4)

式(4.1)が符号化側の信号の入出力を表しており, 式(4.2)が復号化側の信号の入出力を表している. 事前学習では, 新たに作られたネットワークに事前学習用のデータを入力し,復号化側での出力値が入力値に近くなるまで学習を行い, 学習後の符号化側の重み W を元のネットワークの重み初期値として用いる.
しかし, 図 4.1 のような自己符号化器をそのまま用いると問題が生じる. それは, 勾配消失問題や過学習である. 上述したような自己符号化器は, 元のネットワークと比べて層の数がおよそ 2 倍になっている. 第 3 章で述べたようにネットワークが複雑になればなるほど勾配消失問題や過学習が生じやすくなり学習を行うのが困難になるため, 層の数が 2 倍になると, 学習が上手く進まない可能性が高い. そこでこの問題を解決するために用いるのが積層自己符号化器である.
積層自己符号化器とは, 元のネットワークをそのまま折り返すのではなく, 入力層側から順に単層ネットワークを抜き出し, 抜き出したネットワークで自己符号化器を作ってそれらのネットワークを積み重ねたものである. 以下に, その詳しい手順を述べる.

23

(1) まず, 元のネットワークから第 1, 2 層だけを抜き出し, 抜き出したネットワークに入力層と同じユニット数の層を加えて自己符号化器を作って, 訓練データを入力して学習させる. 学習後, 符号化側の重みを W(2), 復号化側の層を取り除き, 第 2 層からの出力を zn(2)とする.

図 4.3 第 1, 2 層から作った自己符号化器

図 4.4 学習後の自己符号化器からの出力(2) 次に, 第 2, 3 層を抜き出し, (1)と同じように自己符号化器を作って学習を行う. 入力
するデータは zn(2)である. 学習後も(1)と同じように, 符号化側の重みを W(3), 復号化
側の層を取り除き, 第 3 層からの出力を zn(3)とする.

図 4.5 第 1, 2 層から作った自己符号化器

図 4.6 学習後の自己符号化器からの出力(3) 同じ操作を第 L-2 層と第 L-1 層のネットワークまで行い, それまでに取得していた重み W(2)～W(L-1)をもとのネットワークの重みの初期値として用いる. 第 L-1 層と第 L層の間の重みの初期値は 4-1-1 節で述べたようなランダムな値を用いる.

24

以上が自己符号化器を事前学習として用いる際の手順である.
上述したような自己符号化器を用いる際に気をつけなければならないことがある. 自己符号化器では, 入力データを符号化する際, データを圧縮することによってデータ変換を行っている. つまり, 自己符号化器の入力層および出力層のユニット数を d1, 中間
層のユニット数を d2 とすると, d1>d2 である必要がある. もし, d1≤d2 であるとすると, データはただ単に素通りするだけで何の意味も持たなくなってしまう.
しかし, d1≤d2 である場合でも, スパース自己符号化器を用いることにより事前学習を上手く進めることが出来る[28]. 以下では, 話を簡単にするために入出力が 0 と 1 しかな
い二値入力について考える.
スパース自己符号化器とはどのような入力が来ても中間層の大半のユニットが 0 しか出力しない自己符号化器のことである. スパース自己符号化器において, 中間層ユニッ
トがどれくらいの確率で 1 を出力しているかを示す平均活性度𝜌̂𝑗 は次式で書ける.
𝑁1𝜌̂𝑗 = ∑ 𝑧𝑛 (𝑙)
𝑁

(4.5)

𝑛=1

また, 平均活性度は確率𝜌̂𝑗 で 1, (1-𝜌̂𝑗 )で 0 を出力するため, ベルヌーイ分布で表現できる.
𝜌̂𝑗 (𝑥) = (𝜌̂𝑗 )𝑥 (1 − 𝜌̂𝑗 )1−𝑥
(4.6)
同様にして, 理想の活性度𝜌もベルヌーイ分布で表現できる.
𝜌(𝑥) = (𝜌)𝑥 (1 − 𝜌)1−𝑥(4.7)

この 2 つの活性度を近づけることによって, 中間層からの大半の出力を 0 にしたスパー
ス自己符号化器を作ることが出来る.
2 つの活性度の近さを測る指標としては, カルバックライブラーダイバージェンス
DKL というものが使われる. DKL は以下で定義される.
𝜌
𝐷𝐾𝐿 (𝜌‖𝜌̂𝑗 ) ≡ ∫ 𝜌 𝑙𝑜𝑔 𝑑𝑥𝜌̂𝑗
これに, 式(4.4)と式(4.5)を代入して整理すると,1−𝜌𝜌
𝐷𝐾𝐿 (𝜌‖𝜌̂𝑗 ) = (1 − 𝜌)𝑙𝑜𝑔+ 𝜌𝑙𝑜𝑔1 − 𝜌̂𝑗
𝜌̂𝑗

(4.8)

(4.9)

となる. DKL は比較する 2 つの指標の値が近いほど 0 に近づき, 離れれば離れるほど大きくなっていく. 図 4.7 に𝜌=0.3 のときの𝜌̂𝑗 と𝐷𝐾𝐿 (𝜌‖𝜌̂𝑗 )の関係を示す.

25

3

DKL

2

1

0
0.0

0.5

1.0

ρj

図 4.7 𝜌=0.3 のときの𝜌̂𝑗 と𝐷𝐾𝐿 (𝜌‖𝜌̂𝑗 )の関係
𝐷𝐾𝐿 (𝜌‖𝜌̂𝑗 )をできるだけ小さくするために, 誤差関数のペナルティ項としてこれを導入する. しかし, スパース自己符号化器では, 𝜌̂𝑗 に訓練データ全体の平均を用いるため, 訓練サンプル 1 つ 1 つに対して重みを更新していく SGD を用いることが出来ない. そのため, 式(3.10)のようにすべての訓練サンプルについて順伝播計算を行った後で重みの更新していく. スパース自己符号化器における誤差関数は,
𝐸𝑠𝑝 (𝒘) ≡ 𝐸(𝒘) + 𝛼 ∑𝑑2
𝑗=1

𝐷𝐾𝐿 (𝜌‖𝜌̂𝑗 )(4.10)となる. ここで, 𝛼はスパース正則化の強度を示す係数である. 4-1 節で述べた重み減衰も同様に導入すると次式で書ける.
𝐸̃𝑠𝑝 (𝒘) ≡ 𝐸̃ (𝒘) + 𝛼 ∑この誤差関数の重み勾配は,
𝜕𝐸̃𝑠𝑝

=
(𝑙)

𝜕𝑤𝑗𝑖
(𝑙)

𝛿𝑠𝑝.𝑗 = ∑

𝑑1

(𝑙+1)

𝑑2
𝑗=1

𝐷𝐾𝐿 (𝜌‖𝜌̂𝑗 )𝑁1(𝑙) (𝑙−1)∑
𝛿𝑠𝑝.𝑗 𝑧𝑖
𝑁
𝑛=1
(𝑙+1)

(𝛿𝑠𝑝.𝑘 𝑤𝑘𝑗

+ 𝛼(−

𝑘=1

となる.

26

𝜌
1−𝜌
+
)) 𝑓′(𝑢𝑗 (𝑙) )𝜌̂𝑗 1 − 𝜌̂𝑗(4.11)(4.12)(4.13)

4-3 ハイパーパラメータの設定
ニューラルネットワークを用いて学習を行う際, 始めに自分で設定しなければならないパラメータがいくつかある. そのようなパラメータをハイパーパラメータという. 例
えば, 中間層の数やユニット数, 学習係数などがハイパーパラメータとして挙げられる.
これらの値は適切に設定しなければ, 過学習や勾配消失問題を引き起こしたり, 学習がなかなか進まなくなったりするなど, 様々な問題が生じてしまう. ハイパーパラメータの設定は, 手探りで最適な値を探したり, ランダム探索や確率的探索で探したりする手法が一般的である. 本研究では手探りで最適な値を探索した後に, 確率的探索の 1 つである遺伝的アルゴリズム[29]という手法も用いており, この手法について次節で紹介する.

27

4-4 遺伝的アルゴリズム
遺伝的アルゴリズム(GA: Genetic Algorithm)とは生物の進化を模したモデルによって最適解を求める手法である. 図 4.8 に遺伝的アルゴリズムのフローチャートを示す.

図 4.8 遺伝的アルゴリズムのフローチャート
遺伝的アルゴリズムでは, 個体と呼ばれる解の集合に対して, 選択・交叉・突然変異と呼ばれる遺伝的操作を繰り返し行うことで最適解を探索する. 遺伝的操作を繰り返し行
う中で最初の母集団を第 1 世代, 次の母集団を第 2 世代と呼び, 世代が更新されるにつれて同世代の中で適応度の高い個体が多く生成されるようになり, 最適解に近づいていく. 本研究において個体とはハイパーパラメータを表し, 適応度とは実験値との相対平均誤差を表している.

1.

個体生成

遺伝的アルゴリズムでは, 始めに初期集団を生成する. このとき, 初期集団の値の大きさは範囲を決めて, その中からランダムで選び取る. 本研究では初期集団のハイパーパラメータに, 中間層の数, 中間層のユニット数, 学習係数 𝜀0 , 重み減衰の強度を示す
係数 λ, 自己符号化器中で用いる理想の活性度 𝜌およびスパース正則化項の強度を示す
係数 α の 6 つを選んだ. また, 1 世代で生成した個体数は 8 である.

28

2. 評価・終了判定
個体を生成後, 決められた評価方法に従ってそれぞれの個体について適応度評価を行う. 個体の評価後に終了条件に従い, 遺伝的操作を終了するか続行するかを決定する.
一般的に, 終了条件としては以下のようなものが挙げられる[30].


母集団の最高適応度や平均適応度が一定値以上になった



適応度が収束した

世代更新の回数があらかじめ設定した回数を超えた本研究では, 世代更新の回数をあらかじめ設定して遺伝的操作を終了させた. 適応度

評価には, 5-1 節で後述する実験データを用いた.
3. 選択
個体の終了判定を行って終了しなかった場合, 個体の遺伝的操作を行う. まず始めにどの個体を次世代の個体の元にするかを決める. これを選択という. この選択方法には代表的なものにルーレット選択, ランキング選択, トーナメント選択, エリート選択などがあり, 本研究ではランキング選択を用いた. 以下で, ランキング選択についての説
明を行う.
ランキング手法では適応度に従って順位をつけ, その順位に従って選択される確率が決まる. この選択方法では, 適応度の低い個体であっても選択される可能性があり, 多様性を保つことが出来る. 本研究で用いたランキング選択での選択確率を表 4.1 に示す.
表 4.1 選択確率
順位

1位

2位

3位

4位

5位

6位

7位

8位

確率 [%]

21

19

17

15

10

8

6

4

4. 交叉
この遺伝的操作では, 選ばれた個体から次世代の個体を生成する. 本研究では中間組
み換えという手法により交叉を行った[31]. この交叉手法では選択において 2 つの個体を選び取り. 選び取った個体の間もしくはその少し外側領域の個体を生成する.
5. 突然変異
交叉によって生成された次世代の個体には, 一定確率で突然変異と呼ばれる遺伝的操作を行う. 突然変異とは個体のもつパラメータを変動させて異なる個体へと変化させる操作である. 本研究では, 20 %の確率で突然変異が起こるように設定した.
29

第5章 結果
5-1 放電電流の時間変化に関する実験
5-1-1 実験体系
本実験では, 外径 56 mm, 内径 40 mm の 200 W 級マグネチックレイヤ型ホールスラス
タを用いた. 図 5.1 に使用したホールスラスタの概観を示す. 本実験で用いたホールス
ラスタは, 中心部に 1 つ, 外側に 4 つのソレノイドコイルを設置することで磁気回路を作っており, この磁気回路によって半径方向の磁場を形成している. 磁場の強度及び形
状は内側コイルと外側コイルに流す電流の大きさと比を変えることで変更できる.
本実験では, 推進剤流量を 1.02 mg/s, 放電電圧を 150 V で固定し, ホールスラスタの内側コイルと外側コイルの比を 1：4 に保ちつつ, コイルの電流値を変化させ, 時間経過に伴う放電電流の電流値を計測した. 図 5.2 に結果を示す. 今回はこの実験値を学習し,予測するのにかかる時間を調査し, 先行研究と比較した.

図 5.1

マグネチックレイヤ型ホールスラスタの概観

図 5.2 コイル電流の変化に伴う放電電流の変化

305-1-2 予測に用いたネットワークモデル
図 5.2 で見られる時間変化に伴う放電電流の変化を, ニューラルネットワークを用いて予測した. 本研究では, 先行研究で用いていたネットワークモデルを元に 2 つのネッ
トワークモデルを考えた, 1 つ目が中間層ユニットの数を減らしたモデル, 2 つ目が中間層ユニットの数を減らし, さらに重みの初期値を自己符号化器で取得したモデルである.
先行研究及び本研究でのモデルを表 5.1 にまとめる. 中間層ユニットを減らした理由としては, 中間層ユニットの数を減らしても放電電流を予測するのに必要な表現能力を十分満たすことができ, これにより先行研究よりも学習にかかる時間を減らすことが出来ると考えたからである.
ニューラルネットワークに入力したデータは, 入力層側が推進剤流量𝑚̇ , 時間𝑇 , 放電
電圧𝑉𝑑 , 内側コイル電流𝐼𝑖𝑛 , 外側コイル電流𝐼𝑜𝑢𝑡 , の 5 つであり, 出力層側が放電電流𝐼𝑑である. 訓練データとして用いたのは図 5.2 に示してある800~1310秒のデータであり,予測するテストデータは1335~1460秒のデータである. また, 訓練データの後半部分およびテストデータに見られる放電電流値が突然突出している箇所は異常放電と呼ばれるものであり, 学習を妨げる原因になるので学習時には除いてある.
表 5.1 先行研究および本研究のモデル
先行研究

モデル 1

モデル 2

ネットワーク

順伝播型

順伝播型

順伝播型

活性化関数

PReLU (a=0.01)

PReLU (a=0.01)

PReLU (a=0.01)

中間層数

5

5

5

中間層ユニット数

100

15

15

重みの初期値He の初期値

He の初期値

重みの更新手法

SGD

学習係数

AdaGrad (𝜀0 = 0.001)

正則化手法

重み減衰
(λ=1.0 × 10−6 )SGD
AdaGrad(𝜀0 = 0.001)
重み減衰(λ=1.0 × 10−6 )31

自己符号化器(𝛼 = 0.1, 𝜌 = 0.3)
SGD
AdaGrad(𝜀0 = 0.001)
重み減衰(λ=1.0 × 10−6 )5-1-3 放電電流の予測結果
5-1-2 節で述べたネットワークモデルによる予測結果を図 5.4 および図 5.5 に示す. モ
デル 1 では相対平均誤差が約 1.9 %までしか落ちなかったが, モデル 2 では相対平均誤差が約 0.7 %という結果が出た. このモデル 2 について先行研究の結果と比較するために, 図 5.6 に先行研究及びモデル 2 の実験値との誤差の時間経過を示す. 図 5.6 でモデル
2 の最初の約 60 秒間がないのは, その間に事前学習を行っていたためである. この図より, モデル 2 では約 67 秒の学習で誤差が約 0.7%まで落ちており, 先行研究と比べてかなり早く学習が進んでいるが, その後に誤差がいったん上昇しており, 過学習の兆候が見られる. この傾向は先行研究でも同様に見られており, どちらのモデルでも中間層ユニットの数が大きすぎた可能性がある.

図 5.4 モデル 1 での予測結果

図 5.5 モデル 2 での予測結果

図 5.6 先行研究とモデル 2 の誤差の時間経過

32

5-1-4 モデルの再選定
過学習が起こる場合には, そのような兆候が見られた時点で学習を打ち切るのが一般的であるが, 過学習を起こさないモデルを用いるのが理想的であるので, モデルの再選定を行い, より最適なモデルの探索を行った. 今回のモデルの選定では, 中間層のユニット数だけではなく, 中間層の数, 学習係数の初期値 𝜀0 , 重み減衰の強度を示す係数 λ,自己符号化器中で用いる理想の活性度 𝜌およびスパース正則化項の強度を示す係数 α の
5 つについても選定を行った. この 6 つのハイパーパラメータの選定手法として用いたのが遺伝的アルゴリズムである. 遺伝的アルゴリズムに入力される初期のパラメータを
表 5.2 のように設定し, 選び取ったハイパーパラメータが表 5.3 のとおりであり, このパラメータで生成したネットワークをモデル 3 とする.
表 5.2 ハイパーパラメータの初期設定範囲
中間層の数

1~7

中間層のユニット数5~50

ε0.001~0.01

λ

1 × 10−8 ~1 × 10−6𝜌

0.1~0.8α0.1~0.5

表 5.3 選び取ったハイパーパラメータの値 (モデル 3)
中間層の数

5

中間層のユニット数

7ε0.00682617

λ9.39024 × 10−7𝜌0.449049

α0.1591833

5-1-5 放電電流の予測結果
モデル 3 による予測結果を図 5.7 に, 先行研究およびモデル 2,モデル 3 の誤差の時間経過を図 5.8 に示す. モデル 3 の実験値と予測値の相対平均誤差は約 0.8%であり, モデ
ル 2 に比べて少し精度が落ちているが, 過学習が起きておらず, 安定的に学習が進んでいる.

図 5.7 放電電流の予測結果

図 5.8 先行研究およびモデル 2,モデル 3 の誤差の時間経過
34

5-2 様々な作動条件における放電電流の時間変化予測
5-2-1 実験体系
本実験で使用したホールスラスタは 5-1 節で述べたものと同様である. 5-1 節では, 1 つの作動条件における放電電流の時間変化を予測した. この節では, ホールスラスタの作
動条件が異なっていても予測が出来るのかについて検証するため, 様々な作動条件でホールスラスタを作動させた.
本実験では, 内側コイル電流と外側コイル電流の比は 5.1 節と同じく, 1:4 に保ったま
まコイル電流の大きさを変化させた. また, 推進剤流量は 1.02 mg/s, 0.87 mg/s, 0.68mg/sの 3 パターン, 放電電圧は 150 V, 200 V, 250 V, 300 V の 4 パターン用意し, 計 12 パター
ンの作動条件で実験を行った. 図 5.7~5.9 に内側コイル電流値とともにこれらの作動条
件での放電電流の実験値を示す. (a)~(d)は放電電圧の大きさを示している.

(a) 150 V(b) 200 V(c) 250 V(d) 300 V

図 5.9 推進剤流量 0.68 mg/s のときの放電電流値

35(a) 150 V(b) 200 V(c) 250 V(d) 300 V

図 5.10 推進剤流量 0.87 mg/s のときの放電電流値(a) 150 V(b) 200 V(c) 250 V(d) 300 V

図 5.11 推進剤流量 1.02 mg/s のときの放電電流値
365-2-2 放電電流の予測結果
今回の放電電流の実験値予測の結果を図 5.12 に示す. 今回用いたネットワークは 5-1
節で選びとったモデル 3 である. 図 5.12 は, 今回用意した 12 パターンの実験値をそれぞれ学習し, 学習によって得られた予測値との誤差をもとにして作ったカラーマップである. 学習の時間はどのデータでも約 200 s であり, 実験値のうちの前半の約 70 %を訓練
データ, 後半の約 30 %をテストデータとした. この図から見てわかるように, 放電電圧が 250 V, 推進剤流量が 0.9 mg/s 周辺の予測精度があまり良くない. この原因を探るため,放電電圧が 250 V, 推進剤流量が 0.87 mg/s のときの予測結果を図 5. 13 に示す. この実験値は図に示されているように非線形性が強く, その部分をネットワークで表現しきれていないため, 予測誤差が約 6.6 %と精度の悪い結果になっている.

図 5.12 様々な作動条件での相対平均誤差37図 5.13 放電電圧 250 V, 推進剤流量 0.87 mg/s のときの放電電流の実験値と予測値
非線形性の強いデータを予測するには, モデル 3 のような小さなネットワークモデル
では難しく, ネットワークの表現能力を高めることが必要であると考え, 放電電圧が250 V, 推進剤流量が 0.87 mg/s のときの実験データを使ってネットワークモデルの選定を再度行った. モデルの選定には, 遺伝的アルゴリズムを用いた. ハイパーパラメータの初期設定は以下のとおりである.
表 5.4 ハイパーパラメータの設定範囲
中間層の数

4~7

中間層のユニット数

20~80

ε

0.001~0.01

λ

1 × 10−8 ~1 × 10−6𝜌

0.1~0.65

α0.1~1

図 5.14 にこのハイパーパラメータ設定で生み出された個体ごとの相対平均誤差を示す.
この図から, 精度よく予測できているパラメータセットは見つかっておらず, 中間層のユニット数を増やすなどのハイパーパラメータの設定だけでは上手く予測できないと考えられる.

38

図 5.14 遺伝的アルゴリズムを用いた個体ごとの誤差
次に, この実験の放電電流値は増加するときと減少するときで異なる挙動を見せていることに注目し, 電流値が増加しているときと減少しているときの実験値をそれぞれ別々に学習させて予測を行った. ネットワークはモデル 3 を用いた. その結果を図 5.15に示す. この図を見てわかるとおり, 上での予測に比べるとかなり正確に予測が出来ており, 相対平均誤差は約 1.3 %となっている. しかし, 放電電流の増加中に現れている不連続変化している部分の予測があまり上手く出来ていなかったり, 放電電流の下限値の予測精度が上での予測に比べて落ちていたりなど, 予測があまり上手くいっていない部
分もある. この原因としては, 訓練データ数が不足していたこと, またはネットワーク
モデルがあまり適当ではなかったことなどが考えられる.

39

図 5.15 電流値の増加部分と減少部分を別々で予測した結果

40

第6章 結論
本研究では, ニューラルネットワークを用いたホールスラスタの自動制御の可能性の検証を目的として, 放電電流の時間変化予測にかかる時間を先行研究と比較し, その後,様々な作動条件での放電電流値の時間変化予測の精度について検証した. 今回用いたネットワークモデルは先行研究で用いたものを改良したものであり, 主な改良点としては,重みの初期値を変えたことと, ハイパーパラメータを変えたことの 2 点である.
重みの初期値には, He の初期値や Xavier の初期値のようにガウス分布などに則ってランダムに決定する手法と自己符号化器や制限ボルツマンマシンを用いてあらかじめ決
めておく手法の 2 種類がある. 今回は自己符号化器を用いて重みの初期値を決定したが,制限ボルツマンマシンを含め, まだ検討していない手法もありこれらについては検討の余地がある.
ハイパーパラメータに関しては, 今回は中間層の数, 中間層ユニットの数, ε0 , λ, 𝛼, 𝜌の 6 つについて遺伝的アルゴリズムを用いて決定した. ハイパーパラメータに関しては用いるデータの種類や学習手法などによって, 自分で決定しなければならない数や最適な値が異なるので, 今後のネットワークモデルの変更やデータセットの種類に合わせて決定しなおす必要がある.
上述したようにネットワークモデルを改良し, 最終的に中間層数が 5, 中間層ユニッ
ト数が 7 のネットワークを用いて放電電流の時間変化予測について先行研究と比較した.
先行研究では, 30 分~1 時間程度の学習時間で平均相対誤差 1 %程度という結果が出ていた. 本研究では, 予測精度については先行研究よりも良い結果を出しつつ, 学習にかかる時間を約 100 秒まで短縮することが出来た. 次に同じネットワークを用いて, ホール
スラスタを異なる作動条件で作動させたときの放電電流の時間変化を予測した. その結果, 放電電流値に強い非線形性が現れたデータについての予測精度が乏しく, 相対平均
誤差が約 6.6 %となった. その原因としてネットワークの表現能力が不足していたと考え, 遺伝的アルゴリズムを用いてハイパーパラメータを再決定したが, 予測精度に向上は見られなかった. そのため, ネットワークモデルの再選定ではなく入力データセット
について工夫することを考え, コイル電流を増加させる部分と減少させる部分を分けてそれぞれについて予測を行った. その結果, 相対平均誤差が約 1.3 %となりコイル電流を分ける前と比べて精度の良いものとなった. しかし, コイル電流の増減で分けたデータ
予測であっても, 非線形性がより強く現れている部分についてはまだ予測誤差が大きかったので, 今後はその部分に着目してより精度の良い予測を行うとともに, コイル電流の増減部分を分けずに予測できるようにすることが必要である. そのためには, 重みの初期値やハイパーパラメータだけでなく, 今回は用いなかった様々な学習テクニックなどについて検討する必要がある.
41

今回は, ホールスラスタの推進性能の 1 つである放電電流についてのみ予測をおこなったが, 今後は, 放電電流予測の精度を高めていくとともに推力や比推力などのほかの推進性能についても予測できるかについて検証していく必要がある.

42

参考文献
(1) JAXA ベピコロンボ国際水星探査計
http://fanfun.jaxa.jp/jaxatv/files/mmo_20170706.pdf(2) https://www.sankei.com/life/news/190106/lif1901060003-n1.html(3) http://j.people.com.cn/n3/2018/1106/c95952-9515569.html(4) 栗木恭一, 荒川義博: 電気推進ロケット入門, 東京大学出版会 (2003).
(5) C. R. Koppel and D. Estublier: The SMART-1 Electric Propulsion Subsystem, In Proc.
39th AIAA/ASME/SAE/ASEE Joint Propulsion Conference and Exhibit, July 2003, AIAA
paper 2003-4545.
(6) Ikkoh Funaki et al : オール電化衛星向けホールスラスタの開発状況, Vol. 66, No.
11, pp. 346-351 (2018).
(7) 弓削政郎, 白崎篤司, 田原弘一: ホールスラスタの推進効率および内部効率に与える磁場特性, 日本航空宇宙学会論文集, Vol. 55, No. 636, pp.8-16 (2007).
(8) 淵上太貴, 長野公勇, 山本直嗣: ホールスラスタにおけるニューラルネットワー
クを用いた放電電流の予測, 日本航空宇宙学会論文集, Vol. 66, No. 5, pp. 143-145(2018).
(9) Dan M. Goebel and Ira Katz: Fundamentals of Electric Propulsion: Ion and Hall
Thrusters, Wiley (2008).
(10) V. Kim: Main Physicsl Features and Processes Determing the Performance of Stationary
Plasma Thrusters, Journal of Propulsion and Power, Vol. 14, No. 5, pp. 736-743 (1998).
(11) Francis F. Chen: Introduction to plasma physics and controlled fusion, Springer
International Publishing (2015).
(12) Charles Garner et al : A 5, 730-hr cyclic endurance test of the SPT-100, In Proc. 24th
IEPC, September 1995, 179, pp. 1233-1244.
(13) D. Valentian and N. Maslennikov: THE PPS 1350 PROGRAM, In Proc. 25th IEPC,
October 1997, 134, pp. 855-861.
(14) 長谷川明彦: 特集「AI 創薬の可能性について」の企画にあたって（その２）, 日
本化学会情報化学部学会誌, vol. 35, No. 3, pp. 198 (2017).
(15) 岡谷貴之: 深層学習, 講談社 (2015).
(16) X. Glorot, A. Bordes, and Y. Bengio: Deep sparse rectifier neural networks, In Proc.
AISTAT, April 2011, vol. 15, pp. 315-323.
(17) Kaiming He et al : Delving Deep into Rectifiers: Surpassing Human-Level Performanceon ImageNet Classification, In Proc. IEEE International Conference on Computer Vision,
2015(18) L´eon Bottou: Large-scale machine learning with stochastic gradient descent, In Yves
Lechevallier and Gilbert Saporta, editors, In Proc. the 19th International Conference on
Computational Statistics (COMPSTAT’2010), August 2010, pages 177–187.
(19) John Duchi, Elad Hazan, and Yoram Singer: Adaptive Subgradient Methods for Online
Learning and Stochastic Optimization, Journal of Machine Learning Research 12, July11, 2121-2159 (2011).
(20) D. E. Rumelhart, G. E. Hinton, and R. J. Williams: Learning representations bybackpropagating errors, Nature, Vol. 323, No. 9, pp. 533-536 (1986).
(21) R. Caruana, S. Lawrence, and C. Lee Giles: Overfitting in neural networks:
Backpropagation, conjugate gradient, and early stopping, In Proc. the 13th International
Conference on Neural Information Processing Systems, 2000, pages 381-387.

43

(22) Yoshua Bengio, Patrice Simard, and Paolo Frasconi: Learning long-term dependencies
with gradient descent is difficult, IEEE Transactions on Neural Networks, 5(2):157–166(1994).
(23) Anders Krogh and John A. Hertz: A simple weight decay can improve generalization, In
Advances in Neural Information Processing Systems, Vol. 4, pp. 950-957. Morgan
Kaufmann (1992).
(24) G. E. Hinton, R. R. Salakhutdinov: Reducing the Dimensionality of Data with Neural
Networks, SCIENCE, Vol.313, Issue.5786, pp.504-507 (2006).
(25) Xavier Glorot and Yoshua Bengio: Understanding the difficulty of training deep
feedforward neural networks, In Proc. the International Conference on Artificial
Intelligence and Statistics (AISTATS2010), May 2010, Vol. 9, pp. 249-256.
(26) Kaiming He et al : Delving Deep into Rectifiers: Surpassing Human-Level Performanceon ImageNet Classification, In 10261034 (2015).
(27) Y. Bengio, P. Lamblin, D. Popovici, and H. Larochelle: Greedy layer-wise training of deep
networks, In Proc. NIPS, 2006.
(28) 瀧雅人: これならわかる深層学習入門, 講談社 (2017).
(29) J. H. Holland: Adaptation in Natural and Artificial Systems, MIT Press (1975).
(30) 花田良子：遺伝的アルゴリズム，関西大学理工学会 理工学と技術 Vol.15(2008)，
pp.13-19(31) Cody Coffman Farnell: PERFORMANCE AND LIFETIME SIMULATION OF ION
THRUSTER OPTICS, Doctoral Thesis, The Colorado State University (2007).

44