(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023087931
(43)【公開日】2023-06-26
(54)【発明の名称】情報処理装置、情報処理方法、及びプログラム
(51)【国際特許分類】
G06N 3/049 20230101AFI20230619BHJP
G06T 7/00 20170101ALI20230619BHJP
【FI】
G06N3/04 190
G06T7/00 350C
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021202492
(22)【出願日】2021-12-14
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成30年度、国立研究開発法人新エネルギー・産業技術総合開発機構「高効率・高速処理を可能とするAIチップ・次世代コンピューティングの技術開発/次世代コンピューティング技術の開発/未来共生社会にむけたニューロモルフィックダイナミクスのポテンシャルの解明」に係る委託事業、産業技術力強化法第17条の適用を受ける特許出願
(71)【出願人】
【識別番号】504174135
【氏名又は名称】国立大学法人九州工業大学
(74)【代理人】
【識別番号】100149548
【弁理士】
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100188592
【弁理士】
【氏名又は名称】山口 洋
(74)【代理人】
【識別番号】100189348
【弁理士】
【氏名又は名称】古都 智
(72)【発明者】
【氏名】田中 悠一朗
(72)【発明者】
【氏名】田向 権
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA06
5L096CA22
5L096DA01
5L096DA02
5L096FA02
5L096GA19
5L096GA51
5L096HA11
5L096JA11
5L096KA04
5L096KA15
(57)【要約】
【課題】機械学習モデルの膨大な学習コストを低くしつつ、機械学習モデルの性能を向上させることができる情報処理装置、情報処理方法、及びプログラムを提供することを目的の一つとする。
【解決手段】実施形態の情報処理装置は、テスト対象の時系列データを取得する取得部と、入力層と、少なくとも1つのリザバー層と、出力層とが含まれる前記リザバーコンピューティングに対して、前記テスト対象の時系列データを入力することで、前記テスト対象の時系列データから対象物を認識する処理部と、を備え、前記処理部は、前記入力層を介して入力された前記時系列データから前記リザバー層が受ける影響の度合いを制御する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
テスト対象の時系列データを取得する取得部と、
トレーニング対象の時系列データに、前記トレーニング対象の時系列データから認識されるべき正解の対象物がラベル付けられたトレーニングデータセットに基づいて学習されたリザバーコンピューティングであって、前記時系列データが入力される入力層と、前記入力層に入力された前記時系列データから前記対象物の特徴を抽出する少なくとも1つのリザバー層と、前記リザバー層によって抽出された前記特徴に基づく前記対象物の認識結果を出力する出力層とが含まれる前記リザバーコンピューティングに対して、前記テスト対象の時系列データを入力することで、前記テスト対象の時系列データから前記対象物を認識する処理部と、を備え、
前記処理部は、前記入力層を介して入力された前記時系列データから前記リザバー層が受ける影響の度合いを制御する、
情報処理装置。
【請求項2】
前記処理部は、ある状態の前記リザバー層に前記時系列データに含まれる第1時刻の観測データが前記入力層を介して入力された場合に前記リザバー層が前記第1時刻の観測データから受ける影響と、前記第1時刻の観測データが入力されるときの前記リザバー層の状態である第1状態と、前記影響の度合いを制御するための時定数とに基づいて、前記第1時刻よりも後の第2時刻の観測データが入力されるときの前記リザバー層の状態である第2状態を算出する、
請求項1に記載の情報処理装置。
【請求項3】
前記処理部は、前記入力層から出力されてから前記リザバー層に入力されるまでの間に重み付けられた前記第1時刻の観測データと、再帰的結合荷重によって重み付けられた前記第1状態とに基づいて、前記影響の度合いを算出する、
請求項2に記載の情報処理装置。
【請求項4】
前記処理部は、1から前記時定数を引いた差を乗算した前記第1状態と、前記時定数を乗算した前記影響の度合いとの和に基づいて、前記第2状態を算出する、
請求項2又は3に記載の情報処理装置。
【請求項5】
前記影響の度合いは、前記時定数が小さいほど低下し、前記時定数が大きいほど増大する、
請求項4に記載の情報処理装置。
【請求項6】
前記リザバーコンピューティングには、前記時定数が互いに異なる複数の前記リザバー層が含まれ、
前記処理部は、
前記時定数が第1の値に設定された第1リザバー層に、前記入力層を介して前記テスト対象の時系列データを入力することで、前記テスト対象の時系列データから、第1の空間周波数の特徴を抽出し、
前記時定数が前記第1の値よりも大きい第2の値に設定された第2リザバー層に、前記入力層を介して前記テスト対象の時系列データを入力することで、前記テスト対象の時系列データから、前記第1の空間周波数よりも高い第2の空間周波数の特徴を抽出する、
請求項2から5のうちいずれか一項に記載の情報処理装置。
【請求項7】
前記リザバーコンピューティングには、前記時定数がある第1の値に設定された1つの前記リザバー層が含まれ、
前記処理部は、
前記リザバー層に、前記入力層を介して前記テスト対象の時系列データを入力することで、前記テスト対象の時系列データから、第1の空間周波数の特徴を抽出し、
前記第1の空間周波数の特徴が抽出された後に前記時定数を前記第1の値よりも大きい第2の値に設定し直し、
前記時定数が前記第2の値に設定された前記リザバー層に、前記入力層を介して前記テスト対象の時系列データを入力することで、前記テスト対象の時系列データから、前記第1の空間周波数よりも高い第2の空間周波数の特徴を抽出する、
請求項2から5のうちいずれか一項に記載の情報処理装置。
【請求項8】
前記処理部は、
ある画像の一部領域を短冊状に切り出し、
前記一部領域から短冊状に切り出した短冊領域を、前記時系列データとする、
請求項1から7のうちいずれか一項に記載の情報処理装置。
【請求項9】
コンピュータが、
テスト対象の時系列データを取得し、
トレーニング対象の時系列データに、前記トレーニング対象の時系列データから認識されるべき正解の対象物がラベル付けられたトレーニングデータセットに基づいて学習されたリザバーコンピューティングであって、前記時系列データが入力される入力層と、前記入力層に入力された前記時系列データから前記対象物の特徴を抽出する少なくとも1つのリザバー層と、前記リザバー層によって抽出された前記特徴に基づく前記対象物の認識結果を出力する出力層とが含まれる前記リザバーコンピューティングに対して、前記テスト対象の時系列データを入力することで、前記テスト対象の時系列データから前記対象物を認識し、
前記入力層を介して入力された前記時系列データから前記リザバー層が受ける影響の度合いを制御する、
情報処理方法。
【請求項10】
コンピュータに、
テスト対象の時系列データを取得すること、
トレーニング対象の時系列データに、前記トレーニング対象の時系列データから認識されるべき正解の対象物がラベル付けられたトレーニングデータセットに基づいて学習されたリザバーコンピューティングであって、前記時系列データが入力される入力層と、前記入力層に入力された前記時系列データから前記対象物の特徴を抽出する少なくとも1つのリザバー層と、前記リザバー層によって抽出された前記特徴に基づく前記対象物の認識結果を出力する出力層とが含まれる前記リザバーコンピューティングに対して、前記テスト対象の時系列データを入力することで、前記テスト対象の時系列データから前記対象物を認識すること、
前記入力層を介して入力された前記時系列データから前記リザバー層が受ける影響の度合いを制御すること、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【0002】
現在,画像認識技術の主流は畳み込みニューラルネットワークである。畳み込みニューラルネットワークは、それが主流となる以前の画像認識技術に大きく差をつけるほど高い認識性能を誇る機械学習モデルである。その一方で、高い性能を獲得するためには膨大な計算コストがかかる学習が必要であり、組込み分野など計算資源が限られる場面では運用が困難な場合がある。畳み込みニューラルネットワークなどの膨大な学習コストが必要な機械学習モデルに対して、近年リザバーコンピューティングと呼ばれる学習コストの低い機械学習モデルが注目されており、これを画像認識に活用する研究が報告されている。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】Herbert Jaeger, Tutorial on training recurrent neural networks, covering BPPT, RTRL, EKF and the" echo state network" approach, GMD-Forschungszentrum Informationstechnik, 2002.
【非特許文献2】N. Schaetti, M. Salomon, and R. Couturier, “Echo state networks-based reservoir computing for MNIST handwritten digits recognition”, IEEE International Conference on Computational Science and Engineering, August 2016.
【非特許文献3】Q. An, K. Bai, L. Liu, F. Shen, and Y. Yi, “A unified information perceptron using deep reservoir computing”, Computers and Electrical Engineering, vol. 85, July 2020.
【非特許文献4】Z. Tong and G. Tanaka, “Reservoir computing with untrained convolutional neural networks for image recognition”, 2018 24th International Conference on Pattern Recognition, pp. 1289-1294, August 2018.
【非特許文献5】Y. Yonemura and Y. Katori, “Image recognition model based on convolutional reservoir computing”, The 34th Annual Conference of the Japanese Society for Artificial Intelligence, June 2020.
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の研究では、単純な手書き数字文字認識のタスクにおいて、ある一定以上の性能が得られているものの、衣類の画像認識タスクや動物や車などの画像認識タスクでは改善の余地がある。また、このような課題は、画像データだけに限られず、リザバーコンピューティングが適用された機械学習モデルに対して入力可能なあらゆる時系列データに対して共通するところである。
【0005】
本発明の一態様は、このような事情を考慮してなされたものであり、機械学習モデルの膨大な学習コストを低くしつつ、機械学習モデルの性能を向上させることができる情報処理装置、情報処理方法、及びプログラムを提供することを目的の一つとする。
【課題を解決するための手段】
【0006】
本発明の一つの態様は、テスト対象の時系列データを取得する取得部と、トレーニング対象の時系列データに、前記トレーニング対象の時系列データから認識されるべき正解の対象物がラベル付けられたトレーニングデータセットに基づいて学習されたリザバーコンピューティングであって、前記時系列データが入力される入力層と、前記入力層に入力された前記時系列データから前記対象物の特徴を抽出する少なくとも1つのリザバー層と、前記リザバー層によって抽出された前記特徴に基づく前記対象物の認識結果を出力する出力層とが含まれる前記リザバーコンピューティングに対して、前記テスト対象の時系列データを入力することで、前記テスト対象の時系列データから前記対象物を認識する処理部と、を備え、前記処理部は、前記入力層を介して入力された前記時系列データから前記リザバー層が受ける影響の度合いを制御する情報処理装置である。
【発明の効果】
【0007】
上記の態様によれば、機械学習モデルの膨大な学習コストを低くしつつ、機械学習モデルの性能を向上させることができる。
【図面の簡単な説明】
【0008】
【
図1】実施形態に係る情報処理システム1の構成の一例を表す図である。
【
図2】実施形態に係る情報処理装置100の構成の一例を表す図である。
【
図3】実施形態に係るリザバーコンピューティングMDLの概要を説明するための図である。
【
図4】典型的なリザバーコンピューティングMDLの一例を表す図である。
【
図5】実施形態に係る情報処理装置100の具体的な処理の流れの一例を表すフローチャートである。
【
図6】実施形態に係るリザバーコンピューティングMDLのリザバー層L
Rに与える時系列データの一例を表す図である。
【
図7】本実施形態に係るリザバーコンピューティングMDLの内部構成を表す図である。
【
図8】実施形態に係る学習装置200の構成の一例を表す図である。
【
図9】実施形態に係る学習装置200の具体的な処理の流れの一例を表すフローチャートである。
【
図10】リザバーコンピューティングMDLの学習方法を説明するための図である。
【
図11】リザバーコンピューティングMDLの各構成のパラメータの一例を表す図である。
【
図12】本実施形態の正答率と従来手法の正答率との比較結果を表す図である。
【
図13】各データセットの入力画像と、本実施形態のリザバーコンピューティングMDLによって出力された特徴画像とを並べた図である。
【
図14】各データセットの入力画像と、本実施形態のリザバーコンピューティングMDLによって出力された特徴画像とを並べた図である。
【
図15】各データセットの入力画像と、本実施形態のリザバーコンピューティングMDLによって出力された特徴画像とを並べた図である。
【発明を実施するための形態】
【0009】
以下、図面を参照し、本発明の情報処理装置、情報処理方法、及びプログラムの実施形態について説明する。
【0010】
[情報処理システムの構成]
図1は、実施形態に係る情報処理システム1の構成の一例を表す図である。実施形態に係る情報処理システム1は、例えば、情報処理装置100と、学習装置200とを備える。これらの装置は、ネットワークNWを介して接続される。ネットワークNWは、例えば、WAN(Wide Area Network)やLAN(Local Area Network)などである。
【0011】
情報処理装置100は、リザバーコンピューティングMDLと呼ばれる機械学習モデルを用いて、認識や分類、予測といった様々なタスクを処理する装置である。つまりリザバーコンピューティングMDLは、様々なタスクに適用することができる。以下、一例として、リザバーコンピューティングMDLが、画像認識というタスクに適用されるものとして説明する。
【0012】
情報処理装置100は、単一の装置であってもよいし、ネットワークNWを介して接続された複数の装置が互いに協働して動作するシステムであってもよい。すなわち、情報処理装置100は、分散コンピューティングシステムやクラウドコンピューティングシステムに含まれる複数のコンピュータ(プロセッサ)によって実装されてもよい。以下、一例として、情報処理装置100が単一の装置であるものとして説明する。
【0013】
学習装置200は、情報処理装置100によって利用されるリザバーコンピューティングMDLを学習する装置である。学習装置200もまた、単一の装置であってもよいし、ネットワークNWを介して接続された複数の装置が互いに協働して動作するシステムであってもよい。
【0014】
[情報処理装置の構成]
図2は、実施形態に係る情報処理装置100の構成の一例を表す図である。
図2のように、情報処理装置100は、例えば、通信部102と、入力部104と、出力部106と、処理部110と、記憶部130とを備える。
【0015】
通信部102は、例えば、NIC(Network Interface Card)や、受信機及び送信機を含む無線通信モジュールなどを含む。通信部102は、ネットワークNWを介して、学習装置200やその他の装置と通信してよい。
【0016】
入力部104は、ユーザからの各種の入力操作を受け付け、受け付けた入力操作を電気信号に変換して処理部110に出力する。例えば、入力部104は、マウス、キーボード、トラックボール、スイッチ、ボタン、ジョイスティック、タッチパネル等を含む。入力部104は、例えば、マイク等の音声入力を受け付けるユーザインタフェースであってもよい。
【0017】
出力部106は、例えば、ディスプレイやスピーカなどを備える。ディスプレイは、処理部110によって生成された画像や、ユーザからの各種の入力操作を受け付けるためのGUI(Graphical User Interface)等を表示する。例えば、ディスプレイは、LCD(Liquid Crystal Display)や、有機EL(Electro Luminescence)ディスプレイ等である。スピーカは、処理部110から入力された情報を音として出力する。
【0018】
処理部110は、例えば、取得部112と、画像処理部114と、タスク処理部116と、出力制御部118とを備える。
【0019】
処理部110のこれら構成要素は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などのプロセッサが記憶部130に格納されたプログラムを実行することにより実現される。処理部110の構成要素の一部または全部は、LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)、またはFPGA(Field-Programmable Gate Array)などのハードウェアにより実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。
【0020】
記憶部130は、例えば、HDD(Hard Disk Drive)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable Read Only Memory)、ROM(Read Only Memory)、RAM(Random Access Memory)などにより実現される。記憶部130には、ファームウェアやアプリケーションプログラムなどの各種プログラムが格納される。記憶部130には、プロセッサによって参照される一つ又は複数のプログラムに加えて、モデルデータなどが格納される。モデルデータとは、リザバーコンピューティングMDLを定義した情報(プログラムまたはアルゴリズム)である。
【0021】
図3は、実施形態に係るリザバーコンピューティングMDLの概要を説明するための図である。実施形態に係るリザバーコンピューティングMDLには、例えば、入力層L
INと、複数のリザバー層L
R(図示の例ではL
R1、L
R2)と、出力層L
OUTが含まれる。リザバーコンピューティングMDLが画像認識というタスクに適用される場合、リザバーコンピューティングMDLの入力層L
INには、ある画像が入力される。複数のリザバー層L
Rは、入力された画像から対象物(図示の例では数字)に関する高次元の特徴を抽出する。出力層L
OUTは、複数のリザバー層L
Rの其々によって抽出された特徴を結合し、その結合された特徴を画像の認識結果に変換して出力する。リザバー層L
Rの基本的な処理について以下に説明する。
【0022】
図4は、典型的なリザバーコンピューティングMDLの一例を表す図である。図示のように、リザバーコンピューティングMDLは、入力層L
INと、一つのリザバー層L
Rと、出力層L
OUTとを含む。
【0023】
入力層LINには、時系列データu(t)が入力される。時系列データu(t)には、ある事象の時間的な変化を連続的に観測することで得られた複数の観測データが含まれる。例えば、時系列データu(t)は、ある時刻tに観測された観測データu(t)、時刻t+1に観測された観測データu(t+1)、時刻t+2に観測された観測データu(t+2)、といったように時間的に連続した観測データが要素として含まれる多次元ベクトルである。入力層LINに入力された時系列データu(t)は、リザバー層LRに出力される。この際、時系列データu(t)は、入力層LINからリザバー層LRの間において、ある結合荷重行列Winによって重み付けられる。結合荷重行列Winは、乱数で初期化され、学習によっては更新されない。
【0024】
各リザバー層LRは、入力層LINにより出力され、重み付けられた時系列データu(t)を、より高次元の時系列データへと非線形変換する。リザバー層LRは、スパース(疎)でランダムな結合(ノード)をもつ再帰的処理を行う中間層である。具体的には、リザバー層LRは、リカレント結合荷重行列Wrecに基づいて時系列データu(t)を処理する。リカレント結合荷重行列Wrecは、結合荷重行列Win同様に、乱数で初期化され、学習によっては更新されない。ただし、リカレント結合荷重行列Wrecは、任意の結合密度ρを満たすようにスパース化され、Echo State Propertyを満たすようにスケーリングされる。
【0025】
リザバー層LRは、時系列データu(t)の時間方向の関係性(依存性)に基づいて処理するために、過去の入力情報を蓄積して記憶している。このような過去の入力情報が蓄積されたリザバー層LRの内部状態は、状態ベクトルx(t)によって表すことができる。状態ベクトルx(t)は、リザバー層LRによる再帰的処理結果を表しており、後段の出力層LOUTへと出力されるデータそのものを表す。
【0026】
出力層LOUTは、リザバー層LRにより出力された各時刻の状態ベクトルx(t)を線形結合し、その線形結合結果y(t)を出力する。状態ベクトルx(t)は、線形結合される際に、ある結合荷重行列Woutによって重み付けられる。結合荷重行列WOUTは、リザバーコンピューティングMDLにおいて唯一の学習対象となる。
【0027】
[情報処理装置の処理フロー]
以下、フローチャートに即して情報処理装置100の具体的な処理の流れを説明する。
図5は、実施形態に係る情報処理装置100の具体的な処理の流れの一例を表すフローチャートである。本フローチャートの処理は所定の周期で繰り返し行われてよい。また、情報処理装置100が、分散コンピューティングシステムやクラウドコンピューティングシステムに含まれる複数のコンピュータによって実装される場合、本フローチャートの処理の一部または全部は、複数のコンピュータによって並列処理されてよい。
【0028】
まず、取得部112は、画像認識テストの対象となる入力画像M0を取得する(ステップS100)。例えば、取得部112は、通信部102を介して他の装置(例えばネットワークストレージなど)から入力画像M0を取得してよい。また、記憶部130に入力画像M0が格納されている場合、取得部112は、記憶部130から入力画像M0を読み出してよい。更に情報処理装置100のドライブ装置に、入力画像M0が格納された非一過性の記憶媒体(例えばフレッシュメモリ等)が接続された場合、取得部112は、記憶媒体から入力画像M0を読み出してもよい。
【0029】
次に、画像処理部114は、取得部112によって取得された入力画像M0から時系列データu(t)を生成する(ステップS102)。
【0030】
図6は、実施形態に係るリザバーコンピューティングMDLのリザバー層L
Rに与える時系列データの一例を表す図である。まず、画像処理部114は、入力画像M0から局所領域M1を切り出す。この切り出された局所領域M1の形状は、(C,K
h,K
w)によって表される。Cは、チャネルを表し、K
h,K
wは縦幅と横幅を表している。入力画像M0が赤、緑、青の3色のカラー画像である場合、チャネルCは3となり、入力画像M0が白黒画像である場合、チャネルCは1となる。次に、画像処理部114は、局所領域M1を短冊状に切り出す。例えば、画像処理部114は、K
w軸方向にそって一画素又は数画素ごとに局所領域M1を短冊状に切り出す。局所領域M1から短冊状に切り出された各領域のことを短冊領域M2と称して説明する。そして、画像処理部114は、短冊領域M2を時系列データu(t)とする。つまり、時系列データu(t)は、C×K
h次元・K
w時刻の時系列データとなる。なお、時系列データu(t)は、C×K
w次元・K
h時刻の時系列データであってもよい。
【0031】
図5のフローチャートの説明に戻る。次に、タスク処理部116は、画像処理部114によって入力画像M0から生成された時系列データu(t)を、リザバーコンピューティングMDLに入力する(ステップS104)。
【0032】
図7は、本実施形態に係るリザバーコンピューティングMDLの内部構成を表す図である。
図7に示すリザバーコンピューティングMDLは、
図3に例示したリザバーコンピューティングMDLの前段部分(リザバー層L
R1)に相当する。前段部分のリザバーコンピューティングMDLは、例えば、入力層L
IN及び結合層L
Cに対して複数のリザバー層L
R1が並列に接続されたモデルである。結合層L
Cとは、複数のリザバー層L
R1のそれぞれの出力xを結合する中間層である。例えば、リザバー層L
R1がN個存在する場合、結合層L
Cは、1~Nまでの各リザバー層L
R1の出力x1~xNを結合する。
図7の例では、複数の入力層L
INを模式的に図示しているが単一の入力層L
INである。
【0033】
本実施形態におけるリザバー層LR1の状態ベクトルx(t)の時間発展は、数式(1)によって計算される。ただしx(0)=0とする。
【0034】
【0035】
数式(1)のfは、活性化関数を表し、例えば、ハイパボリックタンジェント(tanh)を用いることができる。δは、リザバー層LR1の状態ベクトルx(t)の更新速度を制御する制御係数(以下、漏れ率という)を表している。漏れ率δの最大値は1である。複数のリザバー層LR1の其々には、互いに異なる漏れ率δが設定される。例えば、最上段のリザバー層LR1には、漏れ率δ1が設定され、最下段のリザバー層LR1には、漏れ率δNが設定される。漏れ率δは「時定数」の一例である。
【0036】
数式(1)は、ある状態ベクトルx(t)のリザバー層LR1に、ある時刻tの観測データu(t)が入力された場合において、リザバー層LR1が観測データu(t)から受ける影響の度合いと、時刻tの観測データu(t)が入力されるときのリザバー層LR1の状態ベクトルx(t)と、漏れ率δとに基づいて、時刻t+1の観測データu(t+1)が入力されるときのリザバー層LR1の状態ベクトルx(t+1)を算出している。
【0037】
状態ベクトルx(t)のリザバー層LR1が観測データu(t)から受ける影響の度合いは、結合荷重行列Winによって重み付けられた時刻tの観測データu(t)(つまりWinu(t))と、リカレント結合荷重行列Wrecによって重み付けられたリザバー層LR1の状態ベクトルx(t)(つまりWrecx(t))との和によって表される。以下、Winu(t)とWrecx(t)との和の項を、影響項と称して説明する。
【0038】
数式(1)のように、(1-δ)を乗算した状態ベクトルx(t)と、δを乗算した影響項との和に基づいて、次の時刻t+1のリザバー層LR1の状態ベクトルx(t+1)が算出される。漏れ率δがゼロに近づくほど影響項はゼロに近づき、次の時刻t+1のリザバー層LR1の状態ベクトルx(t+1)は、前回時刻tのリザバー層LR1の状態ベクトルx(t)に近づくことになる。一方、漏れ率δが大きくなるほど影響項も増大し、次の時刻t+1のリザバー層LR1の状態ベクトルx(t+1)は、現在時刻tのリザバー層LR1の状態ベクトルx(t)から大きく乖離することになる。漏れ率δを適切に設定又は調整することで、リザバーコンピューティングMDLの精度を向上させることができる。
【0039】
漏れ率δを小さくすると、リザバー層LR1の内部の状態変化が比較的ゆっくりと進むため(状態の更新が遅くなるため)、リザバー層LR1において低い空間周波数の特徴が抽出される。一方、漏れ率δを大きくすると、リザバー層LR1の内部の状態変化が速やかに進むため(状態の更新が速くなるため)、リザバー層LR1において高い空間周波数の特徴が抽出される。
【0040】
したがって、例えば、ある漏れ率δが0.1に設定されたリザバー層LR1に、入力層LINを介して時系列データu(t)を入力した場合、時系列データu(t)から、低空間周波数の特徴が抽出され、漏れ率δが0.9に設定されたリザバー層LR1に、入力層LINを介して時系列データu(t)を入力した場合、時系列データu(t)から、高空間周波数の特徴が抽出される。このように、複数のリザバー層LR1の其々に対して互いに異なる漏れ率δを設定することで、互いに異なる周波数の特徴を抽出することができる。
【0041】
切り出された全ての局所領域M1が短冊状になって入力層LINに時系列データu(t)として入力され終わった場合、リザバーコンピューティングMDLの結合層LCでは、リザバー層LR1によって出力された全状態ベクトルx(t)が一つに結合されて、入力画像の高空間周波数や低空間周波数の特徴のみが抽出された特徴画像となる。結合層LCは、特徴画像をチャンネル方向に展開して後段の複数のリザバー層LR2に出力する。リザバー層LR1の個数をN、各リザバー層LR1のノード数をRとすると、後段のリザバー層LR2に出力される出力画像のチャンネルサイズはN×Rとなる。
【0042】
後段の各リザバー層LR2は、前段のリザバー層LR1と同様に、各空間周波数を有する特徴画像から、低空間周波数及び高空間周波数といったように互いに異なる周波数の特徴を抽出する。後段のリザバー層LR2は、前段のリザバー層LR1同様に数式(1)の計算を行い、特徴画像から特徴を抽出する。
【0043】
出力層LOUTは、後段の各リザバー層LR2によって抽出された特徴を結合し、その結合した特徴を対象物の認識結果に変換して出力する。
【0044】
図5のフローチャートの説明に戻る。次に、タスク処理部116は、時系列データu(t)を入力したリザバーコンピューティングMDLから対象物の認識結果を取得する(ステップS106)。
【0045】
次に、出力制御部118は、対象物の認識結果を出力する(ステップS108)。例えば、出力制御部118は、出力部106のディスプレイに認識結果を表示させてよい。また、出力制御部118は、通信部102を介して他の装置に認識結果を送信してもよい。これによって本フローチャートの処理が終了する。
【0046】
[学習装置の構成]
図8は、実施形態に係る学習装置200の構成の一例を表す図である。学習装置200は、例えば、通信部202と、処理部210と、記憶部230とを備える。
【0047】
通信部202は、例えば、NICや、受信機及び送信機を含む無線通信モジュールなどを含む。通信部202は、ネットワークNWを介して、情報処理装置100やその他の装置と通信してよい。
【0048】
処理部210は、例えば、取得部212と、学習部214と、通信制御部216とを備える。
【0049】
処理部210のこれら構成要素は、例えば、CPUやGPUなどのプロセッサが記憶部230に格納されたプログラムを実行することにより実現される。処理部210の構成要素の一部または全部は、LSI、ASIC、またはFPGAなどのハードウェアにより実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。
【0050】
記憶部230は、例えば、HDD、フラッシュメモリ、EEPROM、ROM、RAMなどにより実現される。記憶部230には、ファームウェアやアプリケーションプログラムなどの各種プログラムが格納される。記憶部230には、プロセッサによって参照される一つ又は複数のプログラムに加えて、未学習のリザバーコンピューティングMDLを定義したモデルデータなどが格納される。
【0051】
[学習装置の処理フロー(リザバーコンピューティングのトレーニング)]
以下、フローチャートに即して学習装置200の具体的な処理の流れを説明する。
図9は、実施形態に係る学習装置200の具体的な処理の流れの一例を表すフローチャートである。本フローチャートの処理は所定の周期で繰り返し行われてよい。また、学習装置200が、分散コンピューティングシステムやクラウドコンピューティングシステムに含まれる複数のコンピュータによって実装される場合、本フローチャートの処理の一部または全部は、複数のコンピュータによって並列処理されてよい。
【0052】
まず、取得部212は、リザバーコンピューティングMDLを学習するためのトレーニングデータセットを取得する(ステップS200)。トレーニングデータセットとは、トレーニング対象である時系列データに、当該トレーニング対象である時系列データから認識されるべき正解(理想)の対象物がラベル付けられたデータセットである。正解の対象物は、教師信号が対応付けられた対象物と読み替えてもよい。例えば、ある数字が描かれた入力画像から、
図6で説明した手法を用いて時系列データが生成されたとする。この場合、トレーニングデータセットは、入力画像由来の時系列データに対して、当該入力画像に描かれた数字がラベル付けられたデータセットとなる。このように、トレーニングデータセットは、トレーニング対象である時系列データを入力データとし、当該トレーニング対象である時系列データから得られる対象物の正解の認識結果を出力データとしたデータセットである。
【0053】
例えば、取得部212は、通信部202を介して他の装置(例えばネットワーク上のオープンデータソース)からトレーニングデータセットを取得してよい。また、記憶部230にトレーニングデータセットが格納されている場合、取得部212は、記憶部230からトレーニングデータセットを読み出してよい。更に学習装置200のドライブ装置に、トレーニングデータセットが格納された非一過性の記憶媒体(例えばフレッシュメモリ等)が接続された場合、取得部212は、記憶媒体からトレーニングデータセットを読み出してもよい。
【0054】
次に、学習部214は、取得部212によって取得されたトレーニングデータセットを用いてリザバーコンピューティングMDLを学習する(ステップS202)。
【0055】
図10は、リザバーコンピューティングMDLの学習方法を説明するための図である。例えば、学習部214は、トレーニングデータセットに入力データとして含まれるトレーニング対象の時系列データu(t)をリザバーコンピューティングMDLに入力し、そのときのリザバーコンピューティングMDLが出力した対象物の認識結果と、正解の認識結果との誤差を算出し、その誤差が小さくなるようにリッジ回帰などを行うことで、出力層L
OUTにおける結合荷重行列W
OUTを調整する。出力層L
OUTは、例えば全結合層である。これによってリザバーコンピューティングMDLは、自身に時系列データが入力されると、当該時系列データから認識されるべき正解の対象物の認識結果を出力することになる。
【0056】
次に、通信制御部216は、学習部214によって学習されたリザバーコンピューティングMDLを定義したモデルデータを、通信部202を介して情報処理装置100に送信する(ステップS204)。これによって本フローチャートの処理が終了する。
【0057】
以上説明した実施形態によれば、複数のリザバー層LRの其々に対して互いに異なる漏れ率δを設定することで、機械学習モデルの膨大な学習コストを低くしつつ、機械学習モデルの性能を向上させることができる。
【0058】
具体的には、ある状態ベクトルx(t)のリザバー層LRに、ある時刻tの観測データu(t)が入力された場合において、リザバー層LRが観測データu(t)から受ける影響の度合いと、時刻tの観測データu(t)が入力されるときのリザバー層LRの状態ベクトルx(t)と、漏れ率δとに基づいて、時刻t+1の観測データu(t+1)が入力されるときのリザバー層LRの状態ベクトルx(t+1)を算出することで、機械学習モデルの膨大な学習コストを低くしつつ、機械学習モデルの性能を向上させることができる。
【0059】
また、上述した実施形態によれば、入力画像の局所部領域を短冊状に切り出し、その短冊状に切り出した各短冊領域を時系列データとするため、局所部領域をそのまま時系列データとして扱う場合と比べて、リザバー層LRのノード数を減らすことができ、計算コストやメモリリソースを抑えることができる。一般的に、時系列データの次元数や時刻長が大きくなるほど、リザバー層LRが記憶しておかなければいけない入力情報の容量が増えるため、リザバー層LRのノード数を多くする必要がある。この結果、計算コストやメモリリソースが増大する。一方、本実施形態のように、局所部領域を短冊状に切り出し、その短冊状に切り出した各短冊領域を時系列データとした場合、画像全体をリザバーに入力する場合に比べて,時系列データの次元数や時刻長を小さくすることができるため、リザバー層LRが記憶しておかなければいけない入力情報の容量を小さくすることができ、リザバー層LRのノード数を減らすことができる。この結果、計算コストやメモリリソースを抑えることができる。
【0060】
[実施例]
以下、実施例として、上記実施形態のリザバーコンピューティングMDLを用いた実験結果を例示する。
図11は、リザバーコンピューティングMDLの各構成のパラメータの一例を表す図である。リザバー層L
Rの各パラメータは、N=5,R=30,ρ=0.8(但しカラー画像が入力の場合,第一層のみR=12,ρ=0.5)とした。MNISTデータセット,Fashion-MNISTデータセット,CIFAR-10データセットを用いて評価した。学習では,各データセットのトレーニングデータセットを実施形態のリザバーコンピューティングMDLに与え,全結合層(Fully Connected 1)の結合荷重のみをリッジ回帰によって最適化した。実験では、各データセットのトレーニングデータセットを学習済のリザバーコンピューティングMDLに与えて、正答率を算出した。
【0061】
図12は、本実施形態の正答率と従来手法の正答率との比較結果を表す図である。図中の[2]~[5]は、非特許文献2~5の其々の手法による正答率を表している。複数のリザバー層L
Rの其々に対して互いに異なる漏れ率δを設定するという本実施形態の手法では、従来手法[2-5]による各データセットに対する正答率を下回ったが、Fashion-MNISTデータセットとCIFAR-10データセットでは従来手法の正答率を上回った。
【0062】
図13から
図15は、各データセットの入力画像と、本実施形態のリザバーコンピューティングMDLによって出力された特徴画像とを並べた図である。
図13の(a)は、MNISTデータセットの入力画像を表し、同図の(b)は、漏れ率δ=0.1のときの特徴画像を表し、同図の(c)は、漏れ率δ=0.9のときの特徴画像を表している。
図14の(a)は、Fashion-MNISTデータセットの入力画像を表し、同図の(b)は、漏れ率δ=0.1のときの特徴画像を表し、同図の(c)は、漏れ率δ=0.9のときの特徴画像を表している。
図15の(a)は、CIFAR-10データセットの入力画像を表し、同図の(b)は、漏れ率δ=0.1のときの特徴画像を表し、同図の(c)は、漏れ率δ=0.9のときの特徴画像を表している。
【0063】
図13から
図15の(b)は、漏れ率δ=0.1のときの特徴画像であり、入力画像上の輪郭や概形などの低空間周波数成分の特徴を表している。
図13から
図15の(c)は、漏れ率δ=0.9のときの特徴画像であり、入力画像上の細かいエッジなどの高空間周波数成分の特徴を表している。このように、複数のリザバー層L
Rの其々に対して互いに異なる漏れ率δを設定することで、入力画像の様々な特徴を捉えることができる。
【0064】
(実施形態の変形例)
以下、上述した実施形態の変形例について説明する。上述した実施形態では、リザバーコンピューティングMDLが、入力層LINと、互いに異なる漏れ率δが設定された複数のリザバー層LRと、出力層LOUTとを含むものとして説明したがこれに限られない。例えば、リザバーコンピューティングMDLは、漏れ率δがある値δXに設定された単一のリザバー層LRを含むものであってもよい。この場合、まず、タスク処理部116は、漏れ率δXに設定されたリザバー層LRに入力層LINを介して時系列データu(t)を入力する。これを受けて、リザバー層LRは、漏れ率δXに応じた空間周波数の特徴を抽出する。タスク処理部116は、漏れ率δXに応じた空間周波数の特徴が抽出された後に、漏れ率δXを他の漏れ率δYに設定し直す。そして、タスク処理部116は、漏れ率δYに設定されたリザバー層LRに入力層LINを介して時系列データu(t)を入力する。これを受けて、リザバー層LRは、漏れ率δYに応じた空間周波数の特徴を抽出する。例えば、漏れ率δXよりも漏れ率δYの方が大きい場合、漏れ率δYに応じた空間周波数の特徴は、漏れ率δXに応じた空間周波数の特徴よりも高空間周波数となる。
【0065】
また上述した実施形態では、情報処理装置100と学習装置200は互いに独立した別体の装置であるものとして説明したがこれに限られない。例えば、情報処理装置100の処理部110は、学習装置200の学習部214を備えていてもよい。
【0066】
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【符号の説明】
【0067】
1…情報処理システム、100…情報処理装置、102…通信部、104…入力部、106…出力部、110…処理部、112…取得部、114…画像処理部、116…タスク処理部、118…出力制御部、130…記憶部、NW…ネットワーク、MDL…リザバーコンピューティング、200…学習装置、202…通信部、210…処理部、212…取得部、214…学習部、216…通信制御部、230…記憶部