FACULTY OF ENGINEERING
CONTENTS

機械学習・ニューラルネット

小川毅彦教授

「人間の思考・行動能力をまねる」
~機械学習・ニューラルネット~
Q
なぜ、研究を?
A
「なんとなくわかる」、「理由はわからないけどできる」。身の回りでそういうことはありませんか?
コンピュータにそのような処理をやらせようとすると、あいまいなことは許されず、きちんと手順を踏んだプログラムを作成しなければなりません。 ところが、人間には「まねをする」「学習する」という能力があり、それによって問題を解決することができます。人間はコンピュータに負けない優れた能力の持ち主なのです。

学習をコンピュータにやらせる

そのような学習を機械(コンピュータ)にやらせようという技術のことを機械学習といいます。

機械学習の技法の1つとしてニューラルネットがあります。 これは、図1のように生物の神経ネットワークの構造をさまざまにモデル化することで、学習の機能を実現しようとする方法です。 この方法は、例えば図2のように文字や画像の認識などに応用できます。

近年では、ニューラルネットは深層学習(ディープラーニング)と呼ばれる技法へと発展しています。
図1 いろいろなニューラルネット図1 いろいろなニューラルネット

ニューラルネットの高次元化

機械学習やニューラルネットにはいろいろな手法や応用がありますが、私のところでは複素数や、さらに高次元の四元数という数を取り扱うニューラルネットを研究しています。 電気や機械の分野ではさまざまな部分で複素数が使われています。

また、コンピュータグラフィックスやロボット制御などの分野では3次元空間内の座標系の表現のために四元数が使われます。

そこで、複素数や四元数をベースにしたニューラルネットが使えると効率がいいのです。
図2 文字認識プログラム図2 文字認識プログラム

ロボットアーム制御への応用

高次元ニューラルネットの応用の1つとして、3次元空間内で動作するロボットアームの制御に、四元数ニューラルネットを使うにはどうしたらいいかを研究しています。

例えば、図3のように空間内の目的の場所にものを運ぶための適切な軌道を決めるのに、ニューラルネットを使うことを研究しています。

人間がなんとなく腕を動かすのと同じように、ロボットアームが柔軟に障害物を避けたり、適切な軌道を選んだりできるようになるのか調べています。
図3 ロボットアーム制御図3 ロボットアーム制御