5. モデル構築の具体例と結果
5.5. 異なる環境で実装されたモデルの結合例
(E)
Fig. 32: Raspberry Piでのモデル構築例.(A)は結合関係の全体像である.個々のコ
ンポーネントが異なるモデルを実装しており,網膜イメージ,網膜モデル,V1モ
デル,AITモデルから構成される.これらはLANケーブルを介してデータの授受 を行う.(B)(C)(D)(E)はそれぞれのコンポーネントの様子を拡大した画像である.
しかし他の研究者が作成したモデルを動作させるには,そのための環境を用意しなけれ
ばならない.必要なライブラリや無償ソフトウェアの導入には手間がかかり,さらにOS が異なる場合や有償のソフトウェアを必要とする場合はそれ以上の手間やコストを必 要とする.また複数のモデルを結合させるには,同一環境上に動作環境の異なるモデル を協調的に動作させる必要がある.結合させるモデルの数に応じて手間は膨大となるた め,協調的モデル研究がより困難となる.本研究で構築したソフトウェア基盤は,様々 な環境上への導入,複数の計算機を使用した並列分散処理を可能とすることで実装環境 の違いによるモデル結合の手間を解消する.
本節では単一の環境上に実装しなおすのではなく,異なる環境同士の結合によるモデ
ル結合を本基盤が可能にすることを示す.本基盤は様々な OS(Windows, MacOS, Linux など)やプログラミング言語(C++, Java, Pythonなど)に対応しており,様々なハードウェ ア及びソフトウェア環境でのモデル実装が可能である.本基盤はこれら異なる環境上の モデルの結合を可能とする.具体的には,入出力データを記述するデータフォーマット
が一致していればモデル同士を結合させることができる.またLANケーブルを介した データ通信によって,異なる計算機上のモデル同士のデータ授受が可能である.そのた め本基盤が導入された様々な環境のモデルであっても協調的に動作させることが可能 である. それを確認するために,一般的なノートPC2 台と, RaspberryPiを使用した モデル結合を行った.Fig. 33は実装した計算機を結合させた様子と,モデルの結合図を
示す.Fig. 33(A)はモデル実装に使用した計算機を結合順に並べてものである.Linux ディストリビューションであるRaspbianとUbuntu,Microsoft社のWindows10をそれぞ
(A)
(B)
Fig. 33: 異なる計算機やOS上で実装されたモデルを結合させた様子.(A)は使用し
たた計算機をモデルの結合関係と同様に並べたものである.(B)は実装させたモデ ルの結合関係を示す.
れインストールしている.RaspberryPiには画像を出力するコンポーネントを,中央のノ ートPC上には網膜モデルを,右のノートPCにはSaliencyモデルコンポーネントをそ れぞれ実装している.Fig. 33(B)はOpenRTM-aistのツールの一つであるRT System Editor が各ハードウェア上のモデルを認識している様子である.RT System Editorは3台のハ ードウェアのうちWindows10 をインストールした PC上で動作させた.Fig. 33(A)の右 端のディスプレイからもその様子がわかる.このように同一ネットワーク上のハードウ ェアに実装されたモデルであれば,同一計算機上に存在しているようにモデルの操作や 結合関係の編集を行うことができる.
一般的にモデル同士を結合させる場合,単一のハードウェア及びソフトウェア環境で モデルを動作させ,入出力関係をプログラミングまたは手作業で制御する必要がある.
モデル研究者の開発環境を限定させることで解決可能であるが現実的ではない.しかし
本基盤を導入することで,様々な環境(ハードウェアやOS,モデルを記述するプログラ ミング言語)でモデル構築を行うことができ,またこれら環境同士のネットワーク結合 によって,同一環境上のモデルのように結合させ動作させることができる.このことは,
本基盤の利用者に対してハードウェアやOSを制限させずにモデル開発を行なわせ,モ デル結合に必要な労力を削減できることを意味する.