低次機能を融合する発達型人工神経回路網構築への取り組み
岩井遥(指導教員：小林 一郎)

はじめに

1

本研究では，複数のネットワークの合成を通じて新たなネットワークを構築するため，基本機能を表現するネットワークをできるだけ単純な構造で表現する．また，WANN では構造を学習した後，獲得されたネットワークの結合荷重の学習が可能である．学習された結合荷重が大きいものは，ネットワークのハブとして重要なエッジとみなされ，小さいものは削除しても支障が少ないものとして，エッジの優先順位を決める．優先順位が低いものから候補を選出し，それぞれのエッジを削除した場合の評価を試算し，最も評価が高いものを採用する．この時，候補として選出されるエッジの本数は，ネットワーク全体の大きさによって決定される．

従来の深層学習では，ノード間の結合荷重の学習によってネットワークのトポロジーを捉えようとするため，本来，不必要なノード間の結合も学習対象となり，無駄な学習を多くする手法となっている．一方で，生物は本能と呼ばれる生得的な基本知識を環境における経験から発達させ，高次の機能を有する行動知識を獲得する．このような知能の発達は学習ではなく「発達」という形で捉えることができる．
本研究では，ネットワークの発達によってそのトポロジーを捉えるモデルである Weight Agnostic NeuralNetworks (WANN) [1] を基盤技術として採用し，既得の低次機能から複雑な技能を表現する高次機能が発現された，機能の階層関係を獲得する発達型人工神経回路網（Developmental Artiﬁcial Neural Networks,DANN）の構築を目指す．

2

提案手法 – 発達型人工神経回路網

2.1

概要

2.3

複雑な技能を表現する高次機能を，それらを構成する低次機能に分解して表現し，またその表現を元に低次機能の構造を組み合わせることで高次機能を再構築する．図 1 に示したように，目的とする高次元の動作を行うネットワークの入力と，既に学習済みの基底動作の構造と接続し，係数のノードを介して基底動作の出力と目的動作のネットワークの出力を結ぶ．こうして得たネットワークをさらに発達させ，基底動作の構造を一部として持つ高次機能を実現するネットワーク構造を獲得する．また，この高次機能を基底として持つ更に高次の機能を実現する構造を獲得することを繰り返す．これにより低次機能から高次機能へと階層性を有し，ネットワーク構造の一部を再利用可能とする．

本研究の概要を図 1 に示す．本研究では，生物が生得的に有している行動知識を発達させていく過程を模して，ニューラルネットワーク（NN）において明示的な結合荷重の学習を行わずとも，与えられたタスクを遂行可能なネットワークトポロジーを，遺伝的アルゴリズムおよび強化学習を用いて獲得する手法である
WANN [1] を用いて，低次の複数の機能が組み上がることにより，高次の機能が顕現する，機能の階層性をともなう知識の発達を WANN におけるネットワークトポロジー獲得の枠組みにおいて実現する DANN を構築する．

DANN 実現のための準備実験として，ロボットの動作を対象とし，低次機能の動作を表現する NN の組み合わせで得られた高次機能の動作を表現するの NN の性能を検証する．

/0123456789:;!"#$%&'()*実験

3!"#

1" $%&'+23456789:;(<=低次機能の組み合わせによる高次機能の獲得

実験設定!-#$ *'()*3.1!-#$ +'( +実験データ 人動作を表すデータとして，カーネギー
メロン大学 Graphics Lab. で公開されているモーションキャプチャデータセット1 を利用する．

!-#$ ,'( ,)*!+%,!"#$%&-.

動作姿勢情報変換 動作機能を学習する枠組みとして，
WANN と物理演算エンジン PyBullet2 二足歩行ロボッ
ト Humanoid を用いた．Humanoid は腹部や肩をはじめとする合計 9 の関節を持ち，その関節の x 軸・y 軸・z 軸といった各回転軸におけるトルクを入力として動作をシュミレートする．シュミレート結果として，関節角や身体パーツの座標を出力する．
WANN は特定の関節の位置について Humanoid の観測値がモーションキャプチャによって得られた実際の人動作の観測データになるべく近くなるよう，Humanoidの各関節にかけるトルクを学習する．具体的には，まず各観測点の 3 次元座標を元に，モーションキャプ!"#$%&'()*+,-.%&'(/0#!"#$%&!"#$!"#$%&'(!" %図 1: 提案手法概要

2.2

低次機能を表現するネットワークの獲得

WANN のネットワークを組み上げていく過程では，より単純な構造が高く評価されるものの，エッジやノードは増加と変化のみであるため，得られるネットワー
クは大抵必要とするものよりも大きくなる傾向にある．

1 http://mocap.cs.cmu.edu/
2 https://pybullet.org/wordpress/1図 2: 合成ネットワークの評価分布
図 3: 結合荷重の学習推移
チャデータと Humanoid のそれぞれについて身体パーツから身体パーツへの位置ベクトル ⃗u, ⃗v を算出する．
ここで身体スケールがモーションキャプチャデータとHumanoid で異なるため，単位ベクトルに正規化して用いている．この位置ベクトルについて，モーションキャプチャデータと Humanoid における同じ観測点同士で距離をとったもの |⃗v − ⃗u| を学習時における損失の算出に利用する．併せて，全身の姿勢を方向ベクトルと回転角で表現するクォータニオン ⃗q を用いる．
PyBullet の Humanoid は簡素な部位で構成され，観測点は頭，肘や肩など比較的大きな部位のみに限られるため，観測点はモーションキャプチャデータ内にも含まれる 14 点と少ない．ロボットの学習に限って，この 14 の観測点のみを扱う．式 1 に示すように，これら 14 の観測点の位置ベクトル 13 本に加え，クォータニオンで表した 4 次元ベクトル 1 本の合計 14 本のベクトル同士の距離を損失として，実際の人動作データからロボットの動作機能獲得の学習を行なう．

Loss = Σ13⃗k | + |qrobot⃗ − qhuman⃗ |k=1 |v⃗k − u

において獲得されたそれぞれのネットワークを評価し比較する．これら評価には前述の 6 種の共通結合荷重における報酬の平均を用いた．
実験 2 同様の条件で作成したランダム生成ネットワー
ク 9 個と合成ネットワークのそれぞれについて，
CMA-ES を用いて結合荷重の学習を 100 世代分行い，学習推移を観察した．

3.2

実験結果

実験 1 において，300 個の合成ネットワークのうち，137 個が合成ネットワークを上回る評価となった．この 300 個のネットワークの評価の分布を図 2 に示す．
図中の黒破線は合成ネットワークでのスコアを示す．
実験 2 における学習の推移を図 3 に示す．グラフ中の朱色の線が合成ネットワークの評価の推移であり，その他の色の線がランダム生成ネットワークの推移を示す．

3.3

(1)

考察

実験 1 においてランダム生成ネットワークの約 4 割が合成ネットワークよりも評価が高くなる結果となった．これは高次機能の低次機能での表現において表現が十分ではないこと，また，高次機能と低次機能の結び付けにおいても再検討の必要があることを示唆していると考える．さらに，個々の低次機能のネットワークにおいても学習が不十分であった可能性がある．実験 2 における結合荷重学習の推移においても，学習の経過やその評価にもランダム生成ネットワークと合成ネットワークとの間に有意な差は見られなかった．

高次機能動作の獲得 今回の実験では，大きく前方に飛んで進む動作 (jump forward) を獲得対象の高次機能動作とした．低次機能の動作とみなす学習済の walkと jump の NN を組み合わせて作成したネットワークと，同じサイズのランダムに生成したネットワークそれぞれの学習を通じて，jump forward の動作獲得の精度と効率を比較する．
合成に使用した walk の NN は 1,536 世代学習したものであり，jump の NN は 1,024 世代学習したものである．いずれのネットワークも WANN を用いた構造学習のみを行い，結合荷重については未学習のものを使用した．今実験では基底動作として選出された動作全てを組み合わせた合成ネットワークではないため，それぞれのタスクにおいて，WANN [1] での実験設定に倣い，-2, -1, -0.5, 0.5, 1, 2，の 6 種の共通結合荷重の内，最も精度の高かった値をネットワークを融合する際の重み係数として用いた．ランダム生成のネットワークは，合成ネットワークと同数のノード数を有し，エッジも同程度の本数になるよう確率で無作為に接続した．結合荷重はいずれも未学習である．この設定において，以下の 2 つの実験を行った．

4

まとめ

本研究では，生物の生得的な知識を発達させて高次の機能を獲得する過程を模倣して，機能の階層性を踏まえた発達型人工神経回路網（DANN）モデルの構築を WANN の枠組みに基づき提案した．WANN の枠組
みにおいて，低次機能の組み合わせにおける高次機能の表現について，ロボットの動作知識獲得を対象に検証を行なった．今後は，検証結果を踏まえて高次機能と低次機能の結び付けの見直しを行い，提案手法の改良を進めるつもりである．

参考文献[1] Adam Gaier and David Ha. Weight agnostic neuralnetworks. In Advances in NeurIPS2019, Vol. 32, 2019.

実験 1 ランダム生成のネットワークを 300 個用意し，合成ネットワークと共に jump forward のタスク

2