(57)【要約】      （修正有）【課題】同一の構成を有する一群の動作装置を適切に制御することが可能な汎用的学習済モデルを生成するシステム及び方法を提供する。【解決手段】方法は、所定の機械学習モデルについて所定の初期データに基づいて学習を行って初期学習済モデルを生成する初期学習ステップと、所定の動作装置の制御を行う初期学習済モデルを複数の動作装置へと組み込み、かつ、各前記動作装置を夫々動作させることにより得られた個別の動作データに基づいて夫々追加学習を行って得られた複数の個別学習済モデルを統合処理して汎用学習済モデルを得る。【選択図】図５
2020038699.tif 000002
【特許請求の範囲】
【請求項１】
所定の機械学習モデルについて所定の初期データに基づいて学習を行って初期学習済モデルを生成する、初期学習ステップと、
所定の動作装置の制御を行う前記初期学習済モデルを複数の前記動作装置へと組み込み、かつ、各前記動作装置を夫々動作させることにより得られた個別の動作データに基づいて夫々追加学習を行って得られた複数の個別学習済モデルを統合処理して汎用学習済モデルを得る、統合ステップと、を備える汎用学習済モデルの生成方法。
【請求項２】
前記初期学習済モデルの生成は、ネットワークと接続された所定の初期学習サーバにおいて行われ、
前記初期学習済モデルの前記動作装置への組み込みは、前記初期学習サーバから前記ネットワークを介して各前記動作装置へとダウンロードすることにより行われる、請求項１に記載の汎用学習済モデルの生成方法。
【請求項３】
前記初期学習済モデルの前記動作装置への組み込みは、前記初期学習済モデルを集積回路へと搭載し、当該集積回路を各前記動作装置へと組み込むことにより行われる、請求項１に記載の汎用学習済モデルの生成方法。
【請求項４】
前記汎用学習済モデルの生成方法は、さらに、
前記汎用学習済モデルを各前記動作装置へと組み込む、再組込ステップ、を含む請求項１に記載の汎用学習済モデルの生成方法。
【請求項５】
前記機械学習モデルは、階層的に分割された状態空間へとそれぞれ対応付けられた複数のノードを階層的に配置することにより構成された木構造を有する学習モデルである、請求項１に記載の汎用学習済モデルの生成方法。
【請求項６】
前記集積回路は、所定の統合処理サーバとの通信を行う通信部を備え、
前記個別学習済モデルは、各前記動作装置から各前記通信部を介して前記統合処理サーバへと送信され、
前記統合処理は、前記統合処理サーバにおいて実行される、請求項１に記載の汎用学習済モデルの生成方法。
【請求項７】
前記初期データは、テスト用の前記動作装置又は前記動作装置のシミュレーションに基づいて生成されたデータである、請求項１に記載の汎用学習済モデルの生成方法。
【請求項８】
前記統合ステップは、さらに、
各前記個別学習済モデルに対応する付随情報に基づいて、前記個別学習済モデルを選択的に統合処理する選択的統合ステップを備える、請求項１に記載の汎用学習済モデルの生成方法。
【請求項９】
所定の機械学習モデルについて所定の初期データに基づいて学習を行って初期学習済モデルを生成する、初期学習ステップと、
所定の動作装置の制御を行う前記初期学習済モデルを複数の前記動作装置へと組み込む、組込ステップと、
各前記動作装置を夫々動作させることにより得られた個別の動作データに基づいて夫々追加学習を行って複数の個別学習済モデルを生成する追加学習ステップと、
各前記個別学習済モデルを統合処理して汎用学習済モデルを得る、統合ステップと、
前記汎用学習済モデルを各前記動作装置へと再度組み込む、再組込ステップと、
を備える汎用学習済モデルの生成方法。
【請求項１０】
所定の機械学習モデルについて所定の初期データに基づいて学習を行って初期学習済モデルを生成する、初期学習部と、
所定の動作装置の制御を行う前記初期学習済モデルを複数の前記動作装置へと組み込み、かつ、各前記動作装置を夫々動作させることにより得られた個別の動作データに基づいて夫々追加学習を行って得られた複数の個別学習済モデルを統合処理して汎用学習済モデルを得る、統合部と、を備える汎用学習済モデルの生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、機械学習技術を利用した動作装置の制御、特に、木構造を有する機械学習器を用いた動作装置の制御に関する。
【背景技術】
【０００２】
近年、大量のデータの存在、計算機の演算機能の飛躍的な向上、アルゴリズムの進歩等により機械学習の分野が高い注目を集めている。このような中、木構造を有する新たな機械学習の枠組みが注目されている（特許文献１）。
【０００３】
図１８は、新たな機械学習の枠組みに係る学習木の基本的構成について示す説明図である。図１８（ａ）には、当該学習手法における学習木の構造が示されており、図１８（ｂ）には、当該構造に対応する状態空間のイメージが示されている。同図から明らかな通り、学習木構造は、階層的に分割された各状態空間に対応する各ノードを、最上位ノード（始端ノード又は根ノード）から最下端ノード（末端ノード又は葉ノード）まで、樹形状乃至格子状に配置することにより構成されている。なお、同図は、Ｎ階層ｄ次元ｎ分割の学習木においてＮが２、ｄが２、ｎが２の場合の例を示しており、図１８（ａ）に記載の学習木の１階層目の４つの末端ノードに付された１〜４の番号は、それぞれ、図１８（ｂ）に記載の４つの状態空間に対応している。
【０００４】
上記学習木を用いて学習処理を行う際には、入力されるデータが、逐次、分割された各状態空間に対応付けられ、それらが各状態空間に蓄積されていくこととなる。このとき、それまでデータが存在しなかった状態空間に新たにデータが入力された場合には、新たなノードが順次生成されていく。一方、予測出力は、新たな入力データに対応するノードへと対応する状態空間に内包される各データからそれぞれ遷移ベクトルを算出し、それらの遷移ベクトルの相加平均を取ることにより算出される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−１７３６８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、近年、工場内のロボットアーム等、様々な動作装置へと機械学習技術を適用しようとする試みがあり、例えば、同一の構成を有する一群の動作装置へと、事前学習を行った学習済モデルを組み込むことがよく行われる。
【０００７】
しかしながら、たとえ同一の構成を有する動作装置であっても、個々の動作装置においては、個体差や経年変化等による機械的又は電気的な特性のばらつきが存在し、それにより事前学習済モデルでは全ての動作装置を適切に制御できないおそれがあった。
【０００８】
本発明は、上述の技術的背景の下になされたものであり、その目的とするところは、動作装置の個別の特性に対応可能な汎用的学習済モデルを生成するシステム、方法等を提供することにある。
【０００９】
本発明のさらに他の目的並びに作用効果については、明細書の以下の記述を参照することにより、当業者であれば容易に理解されるであろう。
【課題を解決するための手段】
【００１０】
上述の技術的課題は、以下の構成を有する方法、システムにより解決することができる。
【００１１】
本開示に係る汎用学習済モデルの生成方法は、所定の機械学習モデルについて所定の初期データに基づいて学習を行って初期学習済モデルを生成する、初期学習ステップと、所定の動作装置の制御を行う前記初期学習済モデルを複数の前記動作装置へと組み込み、かつ、各前記動作装置を夫々動作させることにより得られた個別の動作データに基づいて夫々追加学習を行って得られた複数の個別学習済モデルを統合処理して汎用学習済モデルを得る、統合ステップと、を備えている。
【００１２】
このような構成によれば、初期学習として共通の学習を行った後に、個別の動作装置に合わせて追加学習を行い、それらを統合するので、所定の動作装置の個別の特性にも対応できる汎用的な学習済モデルを生成することができる。また、初期学習を行っているため一定の精度を担保することができるので、動作装置の使用を継続しつつ汎用的な学習済モデルを生成することができる。
【００１３】
前記初期学習済モデルの生成は、ネットワークと接続された所定の初期学習サーバにおいて行われ、前記初期学習済モデルの前記動作装置への組み込みは、前記初期学習サーバから前記ネットワークを介して各前記動作装置へとダウンロードすることにより行われる、ものであってもよい。
【００１４】
また、前記初期学習済モデルの前記動作装置への組み込みは、前記初期学習済モデルを集積回路へと搭載し、当該集積回路を各前記動作装置へと組み込むことにより行われる、ものであってもよい。
【００１５】
前記汎用学習済モデルの生成方法は、さらに、前記汎用学習済モデルを各前記動作装置へと組み込む、再組込ステップ、を含むものであってもよい。
【００１６】
前記機械学習モデルは、階層的に分割された状態空間へとそれぞれ対応付けられた複数のノードを階層的に配置することにより構成された木構造を有する学習モデルである、ものであってもよい。
【００１７】
前記集積回路は、所定の統合処理サーバとの通信を行う通信部を備え、前記個別学習済モデルは、各前記動作装置から各前記通信部を介して前記統合処理サーバへと送信され、前記統合処理は、前記統合処理サーバにおいて実行される、ものであってもよい。
【００１８】
前記初期データは、テスト用の前記動作装置又は前記動作装置のシミュレーションに基づいて生成されたデータであってもよい。
【００１９】
前記統合ステップは、さらに、各前記個別学習済モデルに対応する付随情報に基づいて、前記個別学習済モデルを選択的に統合処理する選択的統合ステップを備える、ものであってもよい。
【００２０】
また、本開示は、下記のような方法としても観念することができる。すなわち、本開示に係る方法は、所定の機械学習モデルについて所定の初期データに基づいて学習を行って初期学習済モデルを生成する、初期学習ステップと、所定の動作装置の制御を行う前記初期学習済モデルを複数の前記動作装置へと組み込む、組込ステップと、各前記動作装置を夫々動作させることにより得られた個別の動作データに基づいて夫々追加学習を行って複数の個別学習済モデルを生成する追加学習ステップと、各前記個別学習済モデルを統合処理して汎用学習済モデルを得る、統合ステップと、を備えている。
【００２１】
さらに、本開示は、システムとしても観念することができる。すなわち、本開示に係るシステムは、所定の機械学習モデルについて所定の初期データに基づいて学習を行って初期学習済モデルを生成する、初期学習部と、所定の動作装置の制御を行う前記初期学習済モデルを複数の前記動作装置へと組み込み、かつ、各前記動作装置を夫々動作させることにより得られた個別の動作データに基づいて夫々追加学習を行って得られた複数の個別学習済モデルを統合処理して汎用学習済モデルを得る、統合部と、を備えている。
【発明の効果】
【００２２】
本開示によれば、動作装置の個別の特性にも対応できる汎用的な学習済モデルを生成することができる。
【図面の簡単な説明】
【００２３】
【図１】図１は、システムの全体構成に関する説明図である。
【図２】図２は、情報処理装置の構成に関する説明図である。
【図３】図３は、動作装置の構成に関する説明図である。
【図４】図４は、汎用学習済モデル生成に関するゼネラルフローチャートである。
【図５】図５は、学習処理に関するゼネラルフローチャートである。
【図６】図６は、誤差の演算処理に関するフローチャートである。
【図７】図７は、動作装置の動作に関するフローチャートである。
【図８】図８は、予測処理に関するフローチャートである。
【図９】図９は、統合処理に関するフローチャートである。
【図１０】図１０は、統合処理に関する詳細フローチャートである。
【図１１】図１１は、統合処理に関する概念図（その１）である。
【図１２】図１２は、統合処理に関する概念図（その２）である。
【図１３】図１３は、システムの全体構成図である（第２の実施形態）。
【図１４】図１４は、汎用学習済モデル生成に関するゼネラルフローチャートである（第２の実施形態）。
【図１５】図１５は、統合する学習済モデルの選択処理に関するフローチャートである。
【図１６】図１６は、付随情報に基づく統合処理の概念図である。
【図１７】図１７は、付随情報を用いて行われる多段階の統合処理の概念図である。
【図１８】図１８は、学習木の基本的構成に関する説明図である。
【発明を実施するための形態】
【００２４】
以下、本発明の実施の一形態を、添付の図面を参照しつつ、詳細に説明する。
【００２５】
＜１．第１の実施形態＞
図１〜図１３を参照しつつ、本開示の第１の実施形態について説明する。
【００２６】
＜１．１  装置構成＞
図１〜図３を参照しつつ、本実施形態に係る汎用学習済モデル生成システム５の装置構成について説明する。
【００２７】
図１は、本実施形態に係る汎用学習済モデル生成システム５の全体構成に関する説明図である。同図から明らかな通り、汎用学習済モデル生成システム５は、後述の学習処理等の情報処理を行う情報処理装置１と、学習済モデルの統合を行う統合処理サーバ２と、ロボットアーム等の複数の動作装置３とを有し、各装置１〜３は互いにインターネットを介して接続されている。なお、後述するように、集積回路４には、情報処理装置１において学習処理がなされた所定の学習済モデルが搭載され、学習済モデル搭載後の集積回路は各動作装置３へと搭載される。
【００２８】
図２は、情報処理装置１の概略構成に関する説明図である。同図から明らかな通り、情報処理装置１は、ディスプレイ等を含む表示部１１、スピーカ等を介して音声出力を行う音声出力部１２、キーボード、マウス等の入力を受け付ける入力部１３、ＣＰＵ等から成る制御部１４、動作プログラムや所定のデータの記憶を行うＲＯＭ、ＲＡＭ、フラッシュメモリ、ハードディスク等のメモリから成る記憶部１５、外部装置との間の通信を行うための通信部１とを有し、それらは互いにシステムバスを介して接続されている。制御部１４は、記憶部１５からプログラムや所定のデータを読み出して機械学習を含む所定の情報処理を行う。なお、統合処理サーバ２のハードウェア構成も情報処理装置１と略同一であるので、ここでは構成の説明を省略する。
【００２９】
図３は、動作装置３の内部に搭載される集積回路４の構成に関する説明図である。同図から明らかな通り、集積回路４は、ＭＰＵ等から成る制御部４１、ＲＯＭ、ＲＡＭ等から成る記憶部４２、統合処理サーバ２等の外部装置との通信を行うための通信ユニット等から成る通信部４３、動作装置３の動作回路等と接続され制御出力を提供する出力部４４、外部装置との入出力を行うＩ／Ｏ部４５とから構成され、それらは互いにシステムバス等を介して電気的に接続されている。すなわち、制御部４１は、記憶部４２から読み出した学習済モデルを用いて所定の動作装置３の制御を行うことができる。
【００３０】
＜１．２  動作＞
次に、図４〜図１２を参照しつつ、本実施形態に係る汎用学習済モデル生成システム５の動作について説明する。
【００３１】
＜１．２．１  初期学習ステップ＞
図４は、汎用学習済モデルを生成する方法に関するゼネラルフローチャートである。同図から明らかな通り、処理が開始すると、情報処理装置１において、木構造を有するモデルの学習処理が行われる（Ｓ１０）。
【００３２】
図５は、学習処理（Ｓ１０）の詳細フローチャートである。同図から明らかな通り、処理が開始すると、まず、初期データの読込みと学習モデルへの入力処理が行われる（Ｓ１０１）。ここで、初期データは、入力データと対応する教師データとから成り、教師データは、実際に動作装置３を動作させることにより得られた実際のデータ群や、物理シミュレータ等によるシミュレーションにより得られたデータ群である。例えば、動作装置３がロボットアームであれば、制御態様に応じて、出力トルクの指令値、角度センサにより得られた実際の関節角度データ、カメラで撮影された手先位置等が教師データとなり得る。学習モデルへの入力処理が完了すると、次に、入力データが属すべき状態空間とその状態空間に対応するノードが特定され、これにより、複数のノード、すなわち、根ノードから末端ノードへと至る一の経路が特定される（Ｓ１０２）。このとき、過去にアクティブとなったことのないノードが当該経路上に存在する場合には、当該位置に新たなノードが生成される。その後、経路上の各ノードについて、各ノードの予測誤差に相当する誤差の演算処理が行われる（Ｓ１０３）。その後、各ノードに関する全てのデータとパラメータをファイルとして保存する処理（Ｓ１０４）が行われて処理は終了する。尚、ここでパラメータとは例えば、学習対象となる値域（学習空間）、すなわち、入出力データの最大値及び最小値、ネットワークの構造（階層数、次元数、分割数）等に関する情報である。
【００３３】
図６は、誤差の演算処理（Ｓ１０３）の詳細について示したフローチャートである。処理が開始すると、まず、根ノードが着目ノードとして設定される（Ｓ１０３１）。次に、着目ノードについて、Ｅｔ＋１＝（１−α）Ｅｔ＋α｜Ｏ−Ｏ'｜の式より誤差の更新処理が行われる（Ｓ１０３２）。ここで、Ｅｔ＋１は更新後の誤差、Ｅｔは更新前の誤差、αは忘却係数（０＜α＜１）を表し、同式から明らかな通り、更新後の誤差Ｅｔ＋１は、更新前の誤差Ｅｔと、入力データに基づく予測出力Ｏと着目ノードに包含されたデータに基づく予測出力Ｏ'との差分の絶対値とを、忘却係数αを用いて重み付け加算することにより演算される。すなわち、入力データに基づく予測出力Ｏと、着目ノードに包含された過去のデータに基づく予測出力Ｏ'との差分が小さい程、Ｅｔ＋１は小さくなるので、誤差Ｅｔ＋１が小さい程、予測精度が良いということとなる。更新された誤差Ｅｔ＋１は、当該着目ノードと対応付けられて誤差Ｅとして記憶部１５へと保存される（Ｓ１０３３）。
【００３４】
その後、この着目ノードが最下層のノードであるか否かの判定処理が行われ（Ｓ１０３４）、最下層ノードでない場合には着目ノードを１つ下位のノードへと変更する処理が行われる（Ｓ１０３５）。この一連の処理、着目ノードの経路上の１つ下位のノードへの変更処理（Ｓ１０３５）、誤差の更新処理（Ｓ１０３２）、保存処理（Ｓ１０３３）は、最下層ノードへと至るまで（Ｓ１０３４ＮＯ）、繰り返し行われる。一方、着目ノードが最下層ノード（末端ノード）へと至った場合（Ｓ１０３４ＹＥＳ）、処理は終了する。すなわち、この一連の処理によれば、経路上のすべてのノードについてそれぞれ予測精度に相当する誤差Ｅが生成されることとなる。
【００３５】
なお、誤差Ｅの算出手法は上記に限定されない。従って、例えば、着目ノードより下位の経路上に存在するノードを参照する等して得られた誤差等を利用してもよい。
【００３６】
＜１．２．２  搭載ステップ＞
図４に戻り、学習処理が完了すると、学習結果に相当する学習済モデルを集積回路（ＩＣ）４へと搭載する処理がなされ、その後、当該集積回路４を各動作装置３へと搭載する処理が行われる（Ｓ２０）。具体的には、上述の初期データに基づいて学習済の木構造モデルは、制御部４１により読み出されて実行可能な態様にて記憶部４２へと記憶される。また、学習済モデルはさらに、追加学習が可能な態様にて構成され、各動作装置３において新たなデータが得られた場合には、当該データに基づいてさらなる追加学習を行うことができるよう構成されている。
【００３７】
＜１．２．３  追加学習ステップ＞
動作装置３への搭載処理の完了後、搭載された学習済モデルを用いて実際に動作装置３の制御が行われると共に、当該動作により得られた実際の動作データに基づいて、追加的な学習処理が行われる（Ｓ３０）。
【００３８】
図７は、動作装置３の動作（Ｓ３０）に関する詳細フローチャートである。同図から明らかな通り、処理が開始すると、学習済モデルを用いた予測処理により動作装置３の動作制御が行われる（Ｓ３０１）。
【００３９】
図８は、予測処理（Ｓ３０１）の詳細に関するフローチャートである。同図から明らかな通り、処理が開始すると、まず、動作装置３に関する新たなデータを取得し、当該データを入力データとする（Ｓ３０１１）。次に、当該入力データに基づいて、属すべき状態空間（ノード）が特定され、それにより、複数の一連のノードから成る一の経路が特定される（Ｓ３０１２）。一の経路が特定されると、当該経路上において誤差Ｅが最小となるノードが特定され（Ｓ３０１３）、当該誤差Ｅ最小ノードに対応する各データの遷移ベクトルの相加平均（遷移ベクトルの合成ベクトル）に基づいて、予測出力が生成される（Ｓ３０１４）。この予測出力は出力部４４を介して動作装置３の動作回路へと指令値として伝達され、動作装置３はこれに応じて動作する。すなわち、経路上の誤差最小ノードに基づいて予測出力が生成され、これにより、予測精度が比較的良いと見込まれるノードに基づいて予測出力を生成することができる。
【００４０】
なお、本実施形態においては、予測出力は、経路上の誤差最小ノードに対応するデータに基づいて生成したが、このような処理に限定されない。従って、例えば、常に末端ノードに対応するデータに基づいて予測出力を生成するような構成としてもよい。
【００４１】
図７に戻り、予測処理が終了すると動作装置３の実機動作データが記憶される（Ｓ３０２）。この予測処理（Ｓ３０１）と動作データの記憶処理（Ｓ３０２）を含む一連の処理は、所定の動作終了条件を満たすまで繰り返される（Ｓ３０３ＮＯ）。所定の動作終了条件を満たした場合（Ｓ３０３）、一連の動作は終了し、記憶した動作データを教師データとする追加学習処理が行われる（Ｓ３０４）。この追加学習処理は図２に示した処理（Ｓ１０１〜Ｓ１０４）と略同一であるので、ここでは説明を省略する。その後、処理は終了する。
【００４２】
図７における動作をより具体的に説明するため、初期状態において関節角度が所定の基準において０度をなしている一関節のロボットアームの関節角度を３０度の状態へと移行するタスクを例に説明する。まず、処理が開始して、初期角度（０度）と目標角度（３０度）が、それらと出力トルクの指令値との間の関係を学習した学習済モデルへと与えられると、出力トルクの指令値の予測処理が行われ、その予測出力に応じてロボットアームが動作制御される（Ｓ３０１）。動作制御後、ロボットアームに備えられたセンサは、実際の動作データとして角度データを検出する（Ｓ３０２）。その後、ロボットアームの実際の駆動をもってタスクが終了すると動作が終了し（Ｓ３０３ＹＥＳ）、センサから得られた実際の角度値を用いて追加学習処理が行われる（Ｓ３０４）。以上の通り、ロボットアームは、実際の各動作につき追加学習を行い、精度の向上を図るものである。なお、ここでは、初期角度と目標角度を入力として出力トルクを予測する構成としたが、本開示はそのような学習構成に限定されない。従って、他の組み合わせの入出力構成を採用してもよいことは勿論である。
【００４３】
＜１．２．４  統合処理ステップ＞
図４に戻り、各動作装置３における個別の追加学習処理（Ｓ３０）が終了すると、各動作装置３から追加学習済モデルに関するデータ、すなわち、ノードとパラメータに関するデータをネットワークを介して統合処理サーバ２へと送信する処理が行われる（Ｓ４０）。統合処理サーバ２は、当該データを受信すると、各追加学習済モデル同士を統合する処理を行う（Ｓ５０）。
【００４４】
図９は、統合処理（Ｓ５０）に関する詳細フローチャートである。処理が開始すると、学習済モデルを生成する際に生成されたパラメータファイルが、２つの異なる学習済モデルについて、読み出される（Ｓ５０１）。このパラメータファイルに基づいて学習区間が一致又はおよそ一致するか否かを判定し（Ｓ５０２）、一致しない場合には（Ｓ５０２ＮＯ）、ユーザに対して図示しないディスプレイなど介して統合を行うことが出来ない旨を通知するエラーメッセージを出力し（Ｓ５０５）、続けて、すべての学習木同士の統合処理が完了したか否かを判定する（Ｓ５０６）。一方、この学習空間が一致又はおよそ一致する場合には、２つの学習済モデルのノードに関するデータファイルの読み出しが行われる（Ｓ５０３）。その後、後述する２つの異なる学習済モデルに係る学習木の統合処理が行われた後（Ｓ５０４）、すべての学習木同士の統合処理が完了したか否かが判定される（Ｓ５０６）。すべての学習木同士の統合処理が完了していないと判定された場合（Ｓ５０６ＮＯ）、別の学習木の組み合わせで統合処理がなされる（Ｓ５０６ＮＯ）。一方、すべての学習木同士の統合処理が完了したと判定された場合（Ｓ５０６ＹＥＳ）、処理は終了する。なお、ここで、学習空間のおよその一致とは、例えば、一方の学習済モデルに含まれるデータの最大値・最小値に所定割合（例えば、１０％程度）の余裕を持たせた範囲内に、他の学習済モデルに含まれるデータの最大値・最小値が含まれることをいう。
【００４５】
図１０は、統合処理（Ｓ５０４）に関する詳細フローチャートである。処理が開始すると、第１番目のノード位置を着目位置として設定する（Ｓ５０４１）。次に、着目位置において、いずれの学習木においてもノードが存在するかについての判定処理を行う（Ｓ５０４２）。着目位置において、いずれの学習木においてもノードが存在する場合には（Ｓ５０４２ＹＥＳ）、当該２つのノードの統合処理を行う（Ｓ５０４３）。
【００４６】
ここで、本実施形態に係るノードの統合処理の態様について説明する。図１２は、ノードの統合処理（Ｓ５０４３）に関する概念図である。図１２（ａ）は、上方左右の２つの着色されたノードを下方の１つの着色されたノードへと統合する場合の第１の統合例である。同図において、Ｅは前述の誤差を表し、Ｃはこれまでに包含したデータ数を表している。上方左側のノードの誤差Ｅはα（＞０）、データ数Ｃはｋ（０以上の整数）であり、上方右側のノードの誤差Ｅはβ（＞０）、データ数Ｃはｍ（０以上の整数）である。これらのノードを統合する際、各ノードに対応付けられたデータは１つのノードに対応付けられるように統合される。また、統合後の誤差Ｅは、上述の各誤差αとβとを各データ数ｋ及びｍを用いて重み付け加算することにより算出される。さらに、統合後のデータ数Ｃは各データ数ｋ及びｍを足し合わせることにより算出される。
【００４７】
このような構成によれば、ノード同士の統合は包含されるデータ数に応じて重み付け加算を行うことにより行われるので、データ数に基づく信頼性に応じた学習関連パラメータの統合を行うことができる。
【００４８】
図１２（ｂ）は、上方左右の２つの着色されたノードを下方の１つの着色されたノードへと統合する場合の第２の統合例である。上方左側のノードの誤差Ｅはα（＞０）、データ数Ｃはｎ（０以上の整数）であり、上方右側のノードの誤差Ｅは∞、データ数Ｃは１である。ここで、誤差Ｅが∞となっているのは、当該ノードに対応付けられたデータ数が未だ１個であり、誤差が定義されていないことから便宜的に付与された値である。これらのノードを統合する際、各ノードに対応付けられたデータは１つのノードに対応付けられるように統合される。また、統合後の誤差Ｅは、上述の各誤差αと∞とに基づき、αとして算出される。さらに、統合後のデータ数Ｃは各データ数ｎ及び１を足し合わせることによりｎ＋１として算出される。
【００４９】
なお、本実施形態においては、ノードの統合処理を行う上で、各ノードに対応付けられる各データ、誤差Ｅ、及びデータ数Ｃが統合の対象となるものとしたが、統合の対象はこれらのパラメータに限定されるものではない。従って、ノードの統合に際して、ノードへと対応付けられた他のパラメータを統合の対象としてもよいことは勿論である。
【００５０】
図１０に戻り、ノードの統合処理（Ｓ５０４３）が完了すると、統合後のノードが記憶部へと記憶される（Ｓ５０４４）。その後、全てのノード位置が処理されたか否かの判定処理が行われる（Ｓ５０４５）。
【００５１】
一方、着目位置において、いずれの学習木においてもノードが存在する場合でない場合（Ｓ５０４２ＮＯ）、次に、いずれか一方の学習木においてノードが存在するか否かの判定処理が行われる（Ｓ５０４７）。いずれの学習木においてもノードが存在しない場合（Ｓ５０４７ＮＯ）、その後何らの処理も行わずに、続けてすべてのノード位置が処理されたか否かの判定処理が行われる（Ｓ５０４７ＮＯ）。いずれか一方の学習木の着目位置においてノードが存在する場合（Ｓ５０４７ＹＥＳ）、存在する一方の学習木のデータの着目ノード以下のノードを統合後のデータとして複製・保存する（Ｓ５０４８）。その後、全てのノード位置が処理されたか否かの判定処理が行われる（Ｓ５０４５）。
【００５２】
このような構成によれば、あるノードが一方の学習済モデルのみに存在する場合には当該ノード以下のノードについても当該一方の学習済モデルにのみに存在することを利用して、効率的な統合処理を行うことができる。
【００５３】
すべてのノード位置について処理が行われた場合（Ｓ５０４５ＹＥＳ）、処理は終了する。一方、未だすべてのノード位置について処理が行われていない場合（Ｓ５０４５ＮＯ）、着目位置を所定の次のノード位置へと変更設定する処理が行われ（Ｓ５０４６）、再び、ノードの統合処理（Ｓ５０４３）、或いは一方のノードの複製処理（Ｓ５０４８）等が行われる。なお、このとき、上位のノード位置から順に着目位置の設定（深さ優先探索）が行われる。これは、一方の学習木のみにノードが存在する場合に（Ｓ５０４７ＹＥＳ）、着目ノード以下のノードの複製を行うことから（Ｓ５０４８）、上位のノード位置から探索を行った方が効率的なためである。
【００５４】
図１１は、学習木の統合に関する概念図である。同図から明らかな通り、同図左上の第１の学習木と、同図右上の第２の学習木とを統合すると、同図下段に示されるように、黒色のノードについては統合処理が行われ、一方、白色のノードについては第１の学習木又は第２の学習木のノードが複製されることとなる。
【００５５】
このような構成によれば、木構造を基本とした学習モデル同士の統合であるので、ニューラルネットワーク等と比べて容易な統合処理が可能となる。
【００５６】
また、このような構成によれば、追加学習を行った多数の動作装置３から統合処理サーバ２へと各個別学習済モデルを集約して統合できるので、その種の動作装置に汎用的に使用できる学習済モデルを生成することができる。
【００５７】
＜１．２．５  ダウンロードステップ＞
図４に戻り、統合処理サーバ２における学習済モデルの統合処理（Ｓ５０）が終了すると、統合処理サーバ２から統合済モデル（汎用学習済モデル）をネットワークを介して各動作装置３へとダウンロードする処理が行われる（Ｓ６０）。具体的には、所定期間経過後、動作装置３の所有者等は、図示しないパーソナル・コンピュータ等の情報処理装置へと統合済モデルをダウンロードし、当該情報処理装置からＩ／Ｏ部４５を介して当該統合済モデルを各動作装置３へと転送して動作装置３の各記憶部４２へと記憶させる。その後、処理は終了する。
【００５８】
このような構成によれば、様々な動作装置３の特性を学習した統合済モデルを用いてより精度良く動作装置３の制御を行うことができる。また、動作装置３の所有者は、既に搭載されている学習済モデルを使用するか、又は、統合済モデルを使用するかを選択することもできる。
【００５９】
なお、本実施形態においては、動作装置３の所有者等が統合済モデルを図示しないパーソナル・コンピュータ等の情報処理装置へと一旦ダウンロードする構成としたが、本開示はそのような構成に限定されない。従って、例えば、動作装置３の所有者等が動作装置３へとダウンロード指令を行い、それにより、動作装置３が通信部４３を介して最新の統合済モデルをダウンロードするような構成としてもよい。
【００６０】
＜２．第２の実施形態＞
次に、図１３〜図１６を参照しつつ、本発明の第２の実施形態について説明する。本実施形態においては、学習済モデル同士の統合処理を行う際に種々の付随情報が使用される。
【００６１】
図１３は、本実施形態に係る汎用学習済モデル生成システム１００の全体構成図である。同図から明らかな通り、汎用学習済モデル生成システム１００は、第１の情報処理装置１０１と、第２の情報処理装置１０２と、情報処理端末１０３とを、インターネット等のネットワークを介して接続することにより構成されている。各装置は互いに通信を介して情報のやり取りを行う。
【００６２】
第１の情報処理装置１０１は、後述の通り、主に学習処理を担当し、初期学習や学習済モデルの統合処理などを行う。第２の情報処理装置１０２は、アプリケーションサーバとして機能し、例えば、所定のアプリケーションプログラムの情報処理端末１０３への提供処理や所定のサーバ側の処理等を担い、また、第１の情報処理装置１０１及び情報処理端末３と情報の通信を行う。情報処理端末１０３は、スマートフォンやタブレットコンピュータ等の情報処理装置であり、第２の情報処理端末１０２から所定のアプリケーションプログラムをダウンロードすることができる。情報処理端末１０３は、第２の情報処理装置１０２と協働して、ユーザへと所定のアプリケーションを提供する。情報処理端末１０３は、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の規格によりペアリング可能なウェアラブル端末１０４と接続されている。ウェアラブル端末１０４は血圧、心拍数、体温、歩数等のセンシングを行う種々のセンサを備えており、取得されたセンサ情報は、情報処理端末３へと送信される。なお、各装置の装置構成は、図２に示した構成と略同一であるのでここでは記載を省略する。
【００６３】
ここで、アプリケーションプログラムの内容として種々の例が考え得るものの、本実施形態においては、ウェアラブル端末１０４から取得された各種のセンサ情報を入力として、ウェアラブル端末１０４のユーザの所定の病気リスク等を予測するアプリケーションプログラムである。センサから取得された情報には、血圧、心拍数、体温等のバイタルサイン情報と歩数等の活動量情報が含まれる。
【００６４】
図１４は、本実施形態に係る、汎用学習済モデル生成に関するゼネラルフローチャートである。
【００６５】
処理が開始すると、第１の情報処理装置１０１において、実施形態１と同様の木構造を有する学習モデルを用いて初期学習が行われる（Ｓ８１）。学習処理の詳細は図５及び図６と略同一であるのでその詳細に関する説明は省略する。
【００６６】
ただし、本実施形態における学習処理は、血圧、心拍数、体温等のバイタル情報と歩数等の活動量情報を入力とし、実際の様々なユーザの病気情報（各種の数値、診断結果、健康状態に関する評価など）を教師データとして、教師あり学習を行うことにより行われる。すなわち、学習処理により、バイタル情報と活動量情報とに基づいて、ユーザにおいて予測される病気リスク等の病気情報を出力する学習済モデルを得ることができる。
【００６７】
第１の情報処理装置１０１において生成された学習済モデルは、情報処理端末１０３上で実行されるアプリケーションソフトウェアを介して各情報処理端末１０３へとダウンロードされる（Ｓ８２）。なお、アプリケーションサーバとして機能する情報処理端末１０２からの指令に応じて各情報処理端末１０３へとダウンロードされてもよい。
【００６８】
このとき、情報処理端末１０３は、アプリケーションプログラムにより、ユーザに関する付随情報の入力を受け付け、内部の記憶部へと記憶している。付随情報とは、例えば、年齢、性別又は住んでいる地域に関する情報等である。
【００６９】
その後、各情報処理端末１０３では、個別に追加学習が行われる（Ｓ８３）。追加学習処理の詳細は図７及び図８に示したものと略同一であるのでその詳細に関する説明は省略する。ただし、本実施形態における追加学習処理においては、実際の動作データとして、アプリケーションソフトウェアを介して入力される各ユーザの実際の病気情報が用いられる。また、動作終了（Ｓ３０３）は、例えば、所定の期間の経過により判定される。
【００７０】
所定の期間が経過すると、追加学習済の学習済モデルと当該学習済モデルを送信するユーザに関する付随情報とが、第１の情報処理装置１０１へと送信される（Ｓ８４）。
【００７１】
追加学習済の学習済モデルと付随情報とを受信すると、第１の情報処理装置１０１は、付随情報に基づき学習済モデル同士を統合する処理を行う（Ｓ８５）。
【００７２】
統合処理の詳細は図９〜図１２に示したものと略同一であるのでその詳細に関する説明は省略する。ただし、本実施形態における統合処理においては、図９に示す統合処理の前段に、統合対象となる学習済モデルを選択する処理が行われる。
【００７３】
図１５は、統合する学習済モデルの選択処理に関するフローチャートである。同図から明らかな通り、処理が開始すると、第１の情報処理装置１０１は、所定の選択基準と受信した付随情報に応じて統合対象となる学習済モデルを選択する（Ｓ８５１）。ここで、所定の選択基準は、予め第１の情報処理装置１０１に記憶され又は他の装置や端末により設定された選択基準であり、その内容は、例えば、住んでいる地域情報等であってもよい。すなわち、第１の情報処理装置１０１は、例えば、住んでいる地域が同一のユーザに係る学習済モデルのみを選択する処理を行う。
【００７４】
その後、選択された学習済モデルを適宜統合する処理を行って複数の汎用学習済モデルを得る（Ｓ８５２）。すなわち、各汎用学習済モデルは、同一の地域に居住するユーザに関する学習済モデルをそれぞれ統合したものになる。なお、統合する処理は、図９に示したものと略同一であるので、その説明は省略する。
【００７５】
図１６は、付随情報に基づく統合処理（Ｓ８５）の概念図である。同図においては、木構造を有する複数の学習済モデルが上下２段に配置されている。下段（第１階層）は、各情報処理端末１０３において個別に追加学習がなされた複数の学習済モデル１１０−１〜１１０−Ｎ（Ｎは２以上の自然数）である。上段（第２階層）は、下段の学習済モデル１１０−１〜１１０−Ｎを統合することにより生成された木構造を有する複数の学習済モデル１２０−１〜１２０−Ｍ（Ｍは２以上の自然数）である。同図から明らかな通り、例えば、所定の選択基準が住んでいる地域である場合には、同じ地域に住んでいるユーザから得られた下段の複数の学習済モデルに基づいて、複数の学習済モデル同士を統合して上段（第２階層）に示す木構造を有する複数の学習済モデルが生成されることとなる。
【００７６】
図１４に戻り、統合処理（Ｓ８５）が終了すると、統合された各学習済モデルを記憶する処理が行われ、処理は終了する（Ｓ８６）。なお、記憶された各学習済モデルは、その後、各情報処理端末１０３へとダウンロード可能なように構成されてもよい。また、記憶された各学習済モデルは、第２の情報処理装置へと送信されてもよい。なお、この際、付随情報に応じて対応する学習済モデルをダウンロード可能なように構成してもよい。例えば、自らと同一地域に住んでいる者に適した予測モデル（学習済モデル）をダウンロードするといった構成としてもよい。
【００７７】
このような構成によれば、所定の選択基準と付随情報に基づいて、追加学習済モデルを統合するので、付随情報が共通する学習済モデルを統合した汎用学習済モデルを生成することができる。これにより、特定の用途やユーザに適した学習済モデルを生成することができる。
【００７８】
＜３．変形例＞
第１の実施形態においては、動作装置３から追加学習後の学習済モデルを送信することとして説明したが、本開示はそのような構成に限定されない。従って、例えば、動作装置３から動作データを統合処理サーバ２へと送信して統合処理サーバ２において当該動作データを学習することで統合を実現してもよい。
【００７９】
上述の実施形態においては、追加学習後の学習済モデルの送信のタイミングについて特段限定していないものの、その送信のタイミングは、ある程度の追加学習が進行した後であってもよいし、逐次的なものであってもよい。
【００８０】
上述の実施形態においては、ネットワーク上の統合処理サーバ２へと情報を集約するものとしたが、例えば、ネットワークと接続されたＰＬＣ（プログラマブル・ロジック・コントローラ）等に集約してもよい。
【００８１】
第１の実施形態においては、動作装置３としてロボットアームを例示したが、このような動作装置に限定されない。従って、例えば、センサ機器、携帯電話、自動車、ドローン、ＡＩスピーカ、船舶、海上フロート、トンネル掘削シールド、建設重機、鉄道、ＥＶ、空調、コンプレッサー、工場機械、家庭用ロボット、核融合制御、ＰＬＣ、通信ゲートウェイ、スマートハウス、ウェアラブル端末、家電、メーター各種（電気水道ガスなど）、ゲーム機等、様々な動作装置に適用可能である。なお、本開示における動作は、装置の機械的な動作のみに限定されるものではなく、例えば、装置における電気的又は電磁的な動作等も含むものである。
【００８２】
第１の実施形態においては、事前に学習を行った学習済モデルを集積回路４へと搭載し、当該集積回路４を動作装置３へと組み込みその後に個別に追加学習させる構成としたが、本開示はそのような構成に限定されない。従って、例えば、情報処理装置１上にて事前学習を行って学習済モデルを生成した後、当該学習済モデルを直接又は間接に各動作装置３へとダウンロードし、当該ダウンロードした学習済モデルに基づいて各動作装置３において追加学習を行ってもよい。
【００８３】
第１の実施形態においては、情報処理装置１と統合処理サーバ２とは別々の構成として示したが一体であってもよい。また、一部の機能を独立してもよいし、分散的な処理を行ってもよい。
【００８４】
第１の実施形態における集積回路４は、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等で構成してもよい。
【００８５】
第２の実施形態においては、図１６に示したように付随情報に基づく統合処理を２段階で行う構成として説明した。しかしながら、本発明はそのような構成に限定されない。従って、例えば、多段階で統合を行い、そのそれぞれを記憶しておき、情報処理端末１０３等からのリクエストに応じて適切な統合済の学習済モデルを提供するような構成としてもよい。
【００８６】
図１７は、付随情報を用いて行われる多段階の統合処理の概念図である。最下段は、個別の情報処理端末１０３において追加学習することにより得られた学習済モデル１３０−１〜１３０−Ｎから成る第１階層１３０を示している。中段は、直下の階層の学習済モデルを統合処理することにより得られた学習済モデル１４０−１〜１４０−Ｍから成る第２階層１４０を示している。そして、最上段は、直下の階層の学習済モデルを統合処理することにより得られた学習済モデル１５０−１〜１５０−Ｌから成る第Ｋ階層１５０を示している。同図に示すように、付随情報に基づいて多段階的な統合処理を行ってもよい。例えば、第２階層では第１階層の学習済モデルを地域情報等に基づいて統合し、第３階層ではより広域な観点で地域情報に基づいて統合処理を行ってもよい。また、その他の階層では、性別や年齢情報等を基準として段階的に統合処理を行ってもよい。
【００８７】
このような構成によれば、必要に応じて情報処理端末１０３や第２の情報処理装置１０２に対して適切な統合済の学習済モデルを提供することができる。
【００８８】
上述の実施形態においては、学習モデルとして木構造を用いた学習モデルを採用したがこのような手法に限定されない。従って、統合可能な他の学習モデルを採用することができる。
【産業上の利用可能性】
【００８９】
汎用学習済モデルの生成システムを製造等する産業にて利用可能である。
【符号の説明】
【００９０】
１    情報処理装置
２    統合処理サーバ
３    動作装置
４    集積回路
５    汎用学習済モデル生成システム
１００    汎用学習済モデル生成システム
１０１    第１の情報処理装置
１０２    第２の情報処理装置
１０３    情報処理端末
１０４  ウェアラブル端末
【図１】
2020038699.tif 000003
【図２】
2020038699.tif 000004
【図３】
2020038699.tif 000005
【図４】
2020038699.tif 000006
【図５】
2020038699.tif 000007
【図６】
2020038699.tif 000008
【図７】
2020038699.tif 000009
【図８】
2020038699.tif 000010
【図９】
2020038699.tif 000011
【図１０】
2020038699.tif 000012
【図１１】
2020038699.tif 000013
【図１２】
2020038699.tif 000014
【図１３】
2020038699.tif 000015
【図１４】
2020038699.tif 000016
【図１５】
2020038699.tif 000017
【図１６】
2020038699.tif 000018
【図１７】
2020038699.tif 000019
【図１８】
2020038699.tif 000020