(57)【要約】【課題】  木構造を有する新たな機械学習の枠組みを利用して得られた複数の学習済モデル同士を統合することにより単一の学習済モデルを生成すること。【解決手段】  木構造を有する学習モデルに対して所定のデータ群を学習させることにより得られた複数の異なる学習済モデルを統合する学習済モデル統合方法であって、所定の記憶部から前記複数の異なる学習済モデルに関するデータを読み出す、データ読出ステップと、前記複数の異なる学習済モデルに係る木構造を構成する各ノードについて、一の学習済モデルのみにノードが存在する場合には当該ノードを複製し、複数の学習済モデルの対応する位置にそれぞれノードが存在する場合には対応する各前記ノード同士を統合することにより、前記複数の異なる学習済モデル同士を単一の学習済モデルへと統合する、統合ステップと、を備える学習済モデル統合方法が提供される。【選択図】図７
2019026703.tif 000002
【特許請求の範囲】
【請求項１】
階層的に分割された状態空間へとそれぞれ対応付けられた複数のノードを階層的に配置することにより構成された木構造を有する学習モデルに対して所定のデータ群を学習させることにより得られた複数の異なる学習済モデルを統合する学習済モデル統合方法であって、
所定の記憶部から前記複数の異なる学習済モデルに関するデータを読み出す、データ読出ステップと、
前記複数の異なる学習済モデルに係る木構造を構成する各ノードについて、一の学習済モデルのみにノードが存在する場合には当該ノードを複製し、複数の学習済モデルの対応する位置にそれぞれノードが存在する場合には対応する各前記ノード同士を統合することにより、前記複数の異なる学習済モデル同士を単一の学習済モデルへと統合する、統合ステップと、
を備える学習済モデル統合方法。
【請求項２】
前記統合ステップにおいて、
一の学習済モデルのみにノードが存在する場合には当該ノードと共に当該ノード以下に存在するすべてのノードが複製される、請求項１に記載の学習済モデル統合方法。
【請求項３】
前記複数の異なる学習済モデルの各前記ノードには、前記学習の過程において生成された学習関連パラメータと、各前記ノードに対応する状態空間に包含されるデータ数と、が対応付けられており、
前記統合ステップは、さらに、
前記ノードを統合するに際して統合対象となる複数のノードの前記データ数をそれぞれ加算するデータ数加算ステップと、
前記ノードを統合するに際して統合対象となる複数のノードに対応付けられた各前記学習関連パラメータを前記各データ数に応じて重み付け加算する誤差量加算ステップと、を備える請求項１に記載の学習済モデル統合方法。
【請求項４】
前記学習関連パラメータは、各前記ノードにおいて前記学習の過程において生成され、かつ予測精度に相当する誤差量である、請求項３に記載の学習済モデル統合方法。
【請求項５】
前記データ読出ステップは、さらに、
各前記学習済モデルの各学習条件に相当するパラメータを含むパラメータファイルを読み出すパラメータファイル読出ステップを含み、
前記学習済モデル統合方法は、さらに、
各前記学習条件に相当する各パラメータのうちの所定のパラメータが互いに一致する場合には前記統合ステップを行い、かつ、各前記所定のパラメータが互いに一致しない場合には前記統合ステップを行わない判定ステップ、を含む請求項１に記載の学習済モデル統合方法。
【請求項６】
階層的に分割された状態空間へとそれぞれ対応付けられた複数のノードを階層的に配置することにより構成された木構造を有する学習モデルに対して所定のデータ群を学習させることにより得られた複数の異なる学習済モデルを統合する学習済モデル統合装置であって、
所定の記憶部から前記複数の異なる学習済モデルに関するデータを読み出す、データ読出部と、
前記複数の異なる学習済モデルに係る木構造を構成する各ノードについて、一の学習済モデルのみにノードが存在する場合には当該ノードを複製し、複数の学習済モデルの対応する位置にそれぞれノードが存在する場合には対応する各前記ノード同士を統合することにより、前記複数の異なる学習済モデル同士を単一の学習済モデルへと統合する、統合部と、
を備える学習済モデル統合装置。
【請求項７】
コンピュータを、階層的に分割された状態空間へとそれぞれ対応付けられた複数のノードを階層的に配置することにより構成された木構造を有する学習モデルに対して所定のデータ群を学習させることにより得られた複数の異なる学習済モデルを統合する学習済モデル統合装置として機能させる学習済モデル統合プログラムであって、
所定の記憶部から前記複数の異なる学習済モデルに関するデータを読み出す、データ読出ステップと、
前記複数の異なる学習済モデルに係る木構造を構成する各ノードについて、一の学習済モデルのみにノードが存在する場合には当該ノードを複製し、複数の学習済モデルの対応する位置にそれぞれノードが存在する場合には対応する各前記ノード同士を統合することにより、前記複数の異なる学習済モデル同士を単一の学習済モデルへと統合する、統合ステップと、
を備える学習済モデル統合プログラム。
【請求項８】
階層的に分割された状態空間へとそれぞれ対応付けられた複数のノードを階層的に配置することにより構成された木構造を有する学習モデルに対して所定のデータ群を学習させることにより得られた複数の異なる学習済モデルを統合する機能を有するＩＣチップであって、
所定の記憶部から前記複数の異なる学習済モデルに関するデータを読み出す、データ読出部と、
前記複数の異なる学習済モデルに係る木構造を構成する各ノードについて、一の学習済モデルのみにノードが存在する場合には当該ノードを複製し、複数の学習済モデルの対応する位置にそれぞれノードが存在する場合には対応する各前記ノード同士を統合することにより、前記複数の異なる学習済モデル同士を単一の学習済モデルへと統合する、統合部と、
を備えるＩＣチップ。
【請求項９】
階層的に分割された状態空間へとそれぞれ対応付けられた複数のノードを階層的に配置することにより構成された木構造を有する学習モデルに基づいて所定のデータ群に基づく学習処理を行い学習済モデルを生成する学習装置を１又は２以上備える学習装置層と、
前記学習装置層と通信を介して接続され、各前記学習装置にて生成された各前記学習済モデルを統合する学習済モデル統合装置を１又は２以上備える統合装置層と、から成る統合処理システムであって、
前記学習済モデル統合装置は、
所定の記憶部から前記異なる学習済モデルに関するデータを読み出す、データ読出部と、
前記異なる学習済モデルに係る木構造を構成する各ノードについて、一の学習済モデルのみにノードが存在する場合には当該ノードを複製し、複数の学習済モデルの対応する位置にそれぞれノードが存在する場合には対応する各前記ノード同士を統合することにより、前記異なる学習済モデル同士を統合する、統合部と、
を備える統合処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、所定の学習処理により生成された学習済モデルの統合処理を行う学習済モデル統合方法、装置、プログラム、ＩＣチップ、及びシステムに関し、特に、木構造を有する学習済モデルの統合を行う学習済モデル統合方法、装置、プログラム、ＩＣチップ、及びシステムに関する。
【背景技術】
【０００２】
近年、計算機の演算機能の飛躍的な向上等により機械学習の分野が高い注目を集めている。このような背景の中、本願の発明者らは、木構造を有する新たな機械学習の枠組みを提唱している（特許文献１）。【０００３】
図１３は、上記新たな機械学習の枠組みについて示す説明図、すなわち、学習木の構造について示す説明図である。図１３（ａ）には、当該学習手法における学習木の構造が示されており、図１３（ｂ）には、当該構造に対応する状態空間のイメージが示されている。同図から明らかな通り、学習木構造は、階層的に分割された各状態空間に対応する各ノードを、最上位ノード（始端ノード又は根ノード）から最下端ノード（末端ノード又は葉ノード）まで、樹形状乃至格子状に配置することにより構成されている。なお、同図は、Ｎ階層ｄ次元ｎ分割の学習木においてＮが２、ｄが２、ｎが２の場合の例を示しており、図１３（ａ）に記載の学習木の１階層目の４つの末端ノードに付された１〜４の番号は、それぞれ、図１３（ｂ）に記載の４つの状態空間に対応している。【０００４】
上記学習木を用いて学習処理を行う際には、入力されるデータが、逐次、分割された各状態空間に対応付けられ、それらが各状態空間に蓄積されていくこととなる。このとき、それまでデータが存在しなかった状態空間に新たにデータが入力された場合には、新たなノードが順次生成されていく。予測出力は、学習後に各状態空間に内包される各データの値又はベクトルの相加平均を取ることで算出されることとなる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−１７３６８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、近年の機械学習の普及に伴い、既に学習済のモデル同士を統合してより包括的な予測を行うことが可能な学習済モデルを生成することが要望されている。【０００７】
しかしながら、例えばニューラルネットワーク等の従前の機械学習手法を用いた学習済モデル同士を統合することはその性質上困難であった。【０００８】
本発明は、上述の技術的背景の下になされたものであり、その目的とすることころは、木構造を有する新たな機械学習の枠組みを利用して得られた複数の学習済モデル同士を統合することにより単一の学習済モデルを生成する装置、方法、プログラム、ＩＣチップ及びシステム等を提供することにある。【０００９】
本発明のさらに他の目的並びに作用効果については、明細書の以下の記述を参照することにより、当業者であれば容易に理解されるであろう。
【課題を解決するための手段】
【００１０】
上述の技術的課題は、以下の構成を有する情報処理装置により解決することができる。【００１１】
すなわち、本開示に係る学習済モデル統合方法は、階層的に分割された状態空間へとそれぞれ対応付けられた複数のノードを階層的に配置することにより構成された木構造を有する学習モデルに対して所定のデータ群を学習させることにより得られた複数の異なる学習済モデルを統合する学習済モデル統合方法であって、所定の記憶部から前記複数の異なる学習済モデルに関するデータを読み出す、データ読出ステップと、前記複数の異なる学習済モデルに係る木構造を構成する各ノードについて、一の学習済モデルのみにノードが存在する場合には当該ノードを複製し、複数の学習済モデルの対応する位置にそれぞれノードが存在する場合には対応する各前記ノード同士を統合することにより、前記複数の異なる学習済モデル同士を単一の学習済モデルへと統合する、統合ステップと、を備えている。【００１２】
このような構成によれば、木構造を有する学習済モデルが統合に好適であるという性質を利用して、異なる学習済モデル同士の統合を行うことができ、これにより、部分的な学習を行った複数の学習済モデルから単一のより完全な学習済モデルを生成することができる。【００１３】
前記統合ステップにおいて、一の学習済モデルのみにノードが存在する場合には当該ノードと共に当該ノード以下に存在するすべてのノードが複製される、ように構成してもよい。【００１４】
このような構成によれば、あるノードが一の学習済モデルのみに存在する場合には当該ノード以下のノードについても当該一の学習済モデルにのみに存在することを利用して、効率的な統合処理を行うことができる。【００１５】
前記複数の異なる学習済モデルの各前記ノードには、前記学習の過程において生成された学習関連パラメータと、各前記ノードに対応する状態空間に包含されるデータ数と、が対応付けられており、前記統合ステップは、さらに、前記ノードを統合するに際して統合対象となる複数のノードの前記データ数をそれぞれ加算するデータ数加算ステップと、前記ノードを統合するに際して統合対象となる複数のノードに対応付けられた各前記学習関連パラメータを前記各データ数に応じて重み付け加算する誤差量加算ステップと、を備えてもよい。【００１６】
このような構成によれば、ノード同士の統合に際して包含されるデータ数に応じて重み付け加算を行うので、信頼性に応じた学習関連パラメータの統合を行うことができる。【００１７】
前記学習関連パラメータは、各前記ノードにおいて前記学習の過程において生成され、かつ予測精度に相当する誤差量であってもよい。【００１８】
このような構成によれば、ノード同士の統合に際しての誤差量の統合をデータ数に応じて行うので、信頼性に応じた誤差量の統合を行うことができる。【００１９】
前記データ読出ステップは、さらに、各前記学習済モデルの各学習条件に相当するパラメータを含むパラメータファイルを読み出すパラメータファイル読出ステップを含み、前記学習済モデル統合方法は、さらに、各前記学習条件に相当する各パラメータのうちの所定のパラメータが互いに一致する場合には前記統合ステップを行い、かつ、各前記所定のパラメータが互いに一致しない場合には前記統合ステップを行わない判定ステップ、を含むものであってもよい。【００２０】
このような構成によれば、学習条件に相当するパラメータを含むパラメータファイルのうちの所定のパラメータに基づいて、学習済モデル同士の統合の可否を事前に判定するので、統合の前提条件が揃った適切な統合処理のみを行うことができる。【００２１】
また、本開示は、学習済モデル統合装置として観念することもできる。すなわち、本開示に係る学習済モデル統合装置は、階層的に分割された状態空間へとそれぞれ対応付けられた複数のノードを階層的に配置することにより構成された木構造を有する学習モデルに対して所定のデータ群を学習させることにより得られた複数の異なる学習済モデルを統合する学習済モデル統合装置であって、所定の記憶部から前記複数の異なる学習済モデルに関するデータを読み出す、データ読出部と、前記複数の異なる学習済モデルに係る木構造を構成する各ノードについて、一の学習済モデルのみにノードが存在する場合には当該ノードを複製し、複数の学習済モデルの対応する位置にそれぞれノードが存在する場合には対応する各前記ノード同士を統合することにより、前記複数の異なる学習済モデル同士を単一の学習済モデルへと統合する、統合部と、を備えている。【００２２】
さらに、本開示は、学習済モデル統合プログラムとして観念することもできる。すなわち、本開示に係る学習済モデル統合プログラムは、コンピュータを、階層的に分割された状態空間へとそれぞれ対応付けられた複数のノードを階層的に配置することにより構成された木構造を有する学習モデルに対して所定のデータ群を学習させることにより得られた複数の異なる学習済モデルを統合する学習済モデル統合装置として機能させる学習済モデル統合プログラムであって、所定の記憶部から前記複数の異なる学習済モデルに関するデータを読み出す、データ読出ステップと、前記複数の異なる学習済モデルに係る木構造を構成する各ノードについて、一の学習済モデルのみにノードが存在する場合には当該ノードを複製し、複数の学習済モデルの対応する位置にそれぞれノードが存在する場合には対応する各前記ノード同士を統合することにより、前記複数の異なる学習済モデル同士を単一の学習済モデルへと統合する、統合ステップと、を備えている。【００２３】
加えて、本開示は、ＩＣチップとして観念することもできる。本開示に係るＩＣチップは、階層的に分割された状態空間へとそれぞれ対応付けられた複数のノードを階層的に配置することにより構成された木構造を有する学習モデルに対して所定のデータ群を学習させることにより得られた複数の異なる学習済モデルを統合する機能を有するＩＣチップであって、所定の記憶部から前記複数の異なる学習済モデルに関するデータを読み出す、データ読出部と、前記複数の異なる学習済モデルに係る木構造を構成する各ノードについて、一の学習済モデルのみにノードが存在する場合には当該ノードを複製し、複数の学習済モデルの対応する位置にそれぞれノードが存在する場合には対応する各前記ノード同士を統合することにより、前記複数の異なる学習済モデル同士を単一の学習済モデルへと統合する、統合部と、を備えている。【００２４】
また、本開示は、学習済モデルの統合処理システムとして観念することもできる。すなわち、本開示に係る統合処理システムは、階層的に分割された状態空間へとそれぞれ対応付けられた複数のノードを階層的に配置することにより構成された木構造を有する学習モデルに基づいて所定のデータ群に基づく学習処理を行い学習済モデルを生成する学習装置を１又は２以上備える学習装置層と、前記学習装置層と通信を介して接続され、各前記学習装置にて生成された各前記学習済モデルを統合する学習済モデル統合装置を１又は２以上備える統合装置層と、から成る統合処理システムであって、前記学習済モデル統合装置は、所定の記憶部から前記異なる学習済モデルに関するデータを読み出す、データ読出部と、前記異なる学習済モデルに係る木構造を構成する各ノードについて、一の学習済モデルのみにノードが存在する場合には当該ノードを複製し、複数の学習済モデルの対応する位置にそれぞれノードが存在する場合には対応する各前記ノード同士を統合することにより、前記異なる学習済モデル同士を統合する、統合部と、を備えている。【００２５】
このような構成によれば、１又は２以上学習装置を含む学習装置層にて生成された学習済モデルを統合装置層の１又は２以上の学習済モデル統合装置により適宜統合することができるシステム、特に、大規模な学習・統合処理に好適なシステムを提供することができる。
【発明の効果】
【００２６】
本開示によれば、木構造を有する学習済モデルが統合に好適であるという性質を利用して、異なる学習済モデル同士の統合を行うことができ、これにより、複数の学習済モデルから単一の包括的な学習済モデルを生成することができる。
【図面の簡単な説明】
【００２７】
【図１】図１は、ハードウェア構成について示す説明図である。
【図２】図２は、学習処理に関するゼネラルフローチャートである。
【図３】図３は、誤差の演算処理に関するフローチャートである。
【図４】図４は、予測処理に関するフローチャートである。
【図５】図５は、統合処理に関するゼネラルフローチャートである。
【図６】図６は、統合処理に関する詳細フローチャートである。
【図７】図７は、学習木の統合に関する概念図である。
【図８】図８は、統合処理に関する概念図である。
【図９】図９は、実験結果（その１）である。
【図１０】図１０は、実験結果（その２）である。
【図１１】図１１は、大規模統合処理システムの概略構成図である。
【図１２】図１２は、情報処理システムの概略構成図である。
【図１３】図１３は、学習木の構造について示す説明図である。
【発明を実施するための形態】
【００２８】
以下、本発明に係る統合処理装置の実施の一形態を、添付の図面を参照しつつ、詳細に説明する。
【００２９】
＜１．第１の実施形態＞
＜１．１  装置構成＞
図１は、本実施形態に係る統合処理装置１０のハードウェア構成について示す説明図である。同図から明らかな通り、統合処理装置１０は、制御部１、外部装置との間の入出力を制御するＩ／Ｏ部２、無線又は有線の通信を制御する通信部３、及び記憶部４とを含み、それらはシステムバスを介して接続されている。制御部１は、ＣＰＵから成り、後述の木構造を有する学習済モデルの統合処理を行うプログラムを含む各種プログラムを実行する。なお、このＣＰＵ等の代わりにマイクロプロセッサやマイクロコントローラ、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等を用いてもよい。また、記憶部４は、例えば、ＲＯＭ、ＲＡＭ、フラッシュメモリ、ハードディスク等を含む各種の記憶装置であって、例えば、木構造を有する学習済モデルに関する各種のデータ、教師データに相当するデータ、学習済モデルの統合処理を行う機能を有するプログラム等を一時的又は非一時的に記憶している。
【００３０】
なお、統合処理装置１０の構成は、同図の構成に限定されず、出願時の技術常識の範囲で自在に変更可能である。従って、例えば、記憶部４を外部ストレージ等として別途配置してもよい。また、制御部１についても、他の情報処理装置の制御部等と協働して分散処理等を行ってもよい。さらに仮想化技術を用いた処理等が行われてもよい。
【００３１】
＜１．２  装置の動作＞
＜１．２．１  学習処理＞
図２〜図３を参照しつつ、統合処理装置１０により統合される対象となる学習済モデルを生成するための学習処理の一例について説明する。
【００３２】
図２は、学習処理に関するゼネラルフローチャートである。処理が開始すると、まず、学習対象となるデータが木構造を有する学習モデルへと入力される（Ｓ１０１）。次に、入力されたデータについて、当該データが属すべき状態空間とその状態空間に対応するノードが特定され、これにより、複数のノード、すなわち、根ノードから末端ノードへと至る一の経路が特定される（Ｓ１０２）。このとき、過去にアクティブとなったことのないノードが当該経路上に存在する場合には、当該位置に新たなノードが生成される。その後、当該経路上の各ノードについて、各ノードの予測誤差に相当する誤差の演算処理が行われる（Ｓ１０３）。
【００３３】
図３は、誤差の演算処理（Ｓ１０３）の詳細について示したフローチャートである。処理が開始すると、まず、根ノードが着目ノードとして設定される（Ｓ１０３１）。次に、着目ノードについて、次式より誤差の更新処理が行われる（Ｓ１０３２）。
【００３４】
【数１】
2019026703.tif 000003
【００３５】
ここで、Ｅｔ＋１は更新後の誤差、Ｅｔは更新前の誤差、αは忘却係数（０＜α＜１）を表し、同式から明らかな通り、更新後の誤差Ｅｔ＋１は、更新前の誤差Ｅｔと、着目ノードに包含された各データの値又はベクトルに基づく予測出力Ｏ（例えば、着目ノードに包含された各データの値又はベクトルの相加平均値）と教師データに相当する値又はベクトルとの差分の絶対値とを、忘却係数αを用いて重み付け加算することにより演算される。すなわち、着目ノードに包含された各データの値又はベクトルに基づく予測出力Ｏと、教師データに相当する値又はベクトルとの差分が小さい程、Ｅｔ＋１は小さくなるので、誤差Ｅｔ＋１が小さい程、予測精度が良いということとなる。更新された誤差Ｅｔ＋１は、当該着目ノードと対応付けられて誤差Ｅとして記憶部４へと保存される（Ｓ１０３３）。
【００３６】
その後、この着目ノードが最下層のノードであるか否かの判定処理が行われ（Ｓ１０３４）、最下層ノードでない場合には着目ノードを１つ下位のノードへと変更する処理が行われる（Ｓ１０３５）。この一連の処理、着目ノードの経路上の１つ下位のノードへの変更処理（Ｓ１０３５）、誤差の更新処理（Ｓ１０３２）、保存処理（Ｓ１０３３）は、最下層ノードへと至るまで（Ｓ１０３４ＮＯ）、繰り返し行われる。一方、着目ノードが最下層ノード（末端ノード）へと至った場合（Ｓ１０３４ＹＥＳ）、処理は終了する。すなわち、この一連の処理によれば、経路上のすべてのノードについてそれぞれ予測精度に相当する誤差Ｅが生成されることとなる。
【００３７】
なお、誤差Ｅの算出手法は上記に限定されない。従って、例えば、着目ノードより下位の経路上に存在するノードを参照する等して得られた誤差等を利用してもよい。
【００３８】
＜１．２．２  予測処理＞
次に、図４を参照しつつ、上述の学習処理が行われた学習済モデルを用いた予測処理の一例について説明する。図４は、予測処理に関するフローチャートである。同図から明らかな通り、処理が開始すると、まず、新たな入力データが記憶部４から読み出される（Ｓ２０１）。次に、当該入力データに基づいて、属すべき状態空間（ノード）が特定され、それにより、複数の一連のノードがから成る一の経路が特定される（Ｓ２０２）。一の経路が特定されると、当該経路上において誤差Ｅが最小となるノードが特定され（Ｓ２０３）、当該誤差Ｅ最小ノードに対応する各データの値又はベクトルの相加平均に基づいて、予測出力が生成される（Ｓ２０４）。すなわち、経路上の誤差最小ノードに基づいて予測出力が生成される。これにより、予測精度が比較的良いと見込まれるノードに基づいて予測出力を生成することができる。
【００３９】
なお、本実施形態においては、予測出力は、経路上の誤差最小ノードに対応するデータに基づいて生成したが、このような処理に限定されない。従って、例えば、常に末端ノードに対応するデータに基づいて予測出力を生成するよう構成してもよい。
【００４０】
＜１．２．３  複数の学習済モデルの統合処理＞
次に、図５〜図８を参照しつつ、本実施形態に係る統合処理装置１０を用いた学習済モデルの統合処理について説明する。
【００４１】
図５は、統合処理に関するゼネラルフローチャートである。処理が開始すると、学習済モデルを生成する際に生成されたパラメータファイルが、２つの異なる学習済モデルについて、読み出される（Ｓ３０１）。このパラメータファイルは、例えば、学習対象となる値域（学習空間）、すなわち、入出力データの最大値及び最小値や、学習モデルの構造情報（Ｎ階層ｄ次元ｎ分割）等を含んでいる。この学習区間が一致又はおよそ一致するか否かを判定し（Ｓ３０２）、一致しない場合には（Ｓ３０２ＮＯ）、ユーザに対して図示しないディスプレイなど介して統合を行うことが出来ない旨を通知するエラーメッセージを出力し（Ｓ３０３）、処理は終了する。一方、この学習空間が一致又はおよそ一致する場合には。２つの学習済モデルのノードに関するデータファイルの読み出しが行われる（Ｓ３０４）。その後、後述する２つの異なる学習済モデルに係る学習木の統合処理が行われた後（Ｓ３０５）、処理が終了する。なお、ここで、学習区間のおよその一致とは、例えば、一方の学習済モデルに含まれるデータの最大値・最小値に所定割合（例えば、１０％程度）の余裕を持たせた範囲内に、他の学習済モデルに含まれるデータの最大値・最小値が含まれることをいう。
【００４２】
このような構成によれば、学習条件に相当するパラメータを含むパラメータファイルのうちの所定のパラメータに基づいて、学習済モデル同士の統合の可否を事前に判定することができるので、統合の前提条件が合致する適切な統合処理のみを行うことができる。
【００４３】
図６は、統合処理（Ｓ３０５）に関する詳細フローチャートである。処理が開始すると、第１番目のノード位置を着目位置として設定する（Ｓ３０５１）。次に、着目位置において、いずれの学習木においてもノードが存在するかについての判定処理を行う（Ｓ３０５２）。着目位置において、いずれの学習木においてもノードが存在する場合には（Ｓ３０５２ＹＥＳ）、当該２つのノードの統合処理を行う（Ｓ３０５３）。
【００４４】
ここで、本実施形態に係るノードの統合処理の態様について説明する。図８は、ノードの統合処理（Ｓ３０５３）に関する概念図である。図８（ａ）は、上方左右の２つの着色されたノードを下方の１つの着色されたノードへと統合する場合の第１の統合例である。同図において、Ｅは前述の誤差を表し、Ｃはこれまでに包含したデータ数を表している。上方左側のノードの誤差Ｅはα（＞０）、データ数Ｃはｋ（０以上の整数）であり、上方右側のノードの誤差Ｅはβ（＞０）、データ数Ｃはｍ（０以上の整数）である。これらのノードを統合する際、各ノードに対応付けられたデータは１つのノードに対応付けられるように統合される。また、統合後の誤差Ｅは、上述の各誤差αとβとを各データ数ｋ及びｍを用いて重み付け加算することにより算出される。さらに、統合後のデータ数Ｃは各データ数ｋ及びｍを足し合わせることにより算出される。
【００４５】
このような構成によれば、ノード同士の統合は包含されるデータ数に応じて重み付け加算を行うことにより行われるので、データ数に基づく信頼性に応じた学習関連パラメータの統合を行うことができる。
【００４６】
図８（ｂ）は、上方左右の２つの着色されたノードを下方の１つの着色されたノードへと統合する場合の第２の統合例である。上方左側のノードの誤差Ｅはα（＞０）、データ数Ｃはｎ（０以上の整数）であり、上方右側のノードの誤差Ｅは∞、データ数Ｃは１である。ここで、誤差Ｅが∞となっているのは、当該ノードに対応付けられたデータ数が未だ１個であり、誤差が定義されていないことから便宜的に付与された値である。これらのノードを統合する際、各ノードに対応付けられたデータは１つのノードに対応付けられるように統合される。また、統合後の誤差Ｅは、上述の各誤差αと∞とに基づき、αとして算出される。さらに、統合後のデータ数Ｃは各データ数ｎ及び１を足し合わせることによりｎ＋１として算出される。
【００４７】
なお、本実施形態においては、ノードの統合処理を行う上で、各ノードに対応付けられる各データ、誤差Ｅ、及びデータ数Ｃが統合の対象となるものとしたが、統合の対象はこれらのパラメータに限定されるものではない。従って、ノードの統合に際して、ノードへと対応付けられた他のパラメータを統合の対象としてもよいことは勿論である。
【００４８】
図６に戻り、ノードの統合処理（Ｓ３０５３）が完了すると、統合後のノードが記憶部４へと記憶される（Ｓ３０５３）。その後、全てのノード位置が処理されたか否かの判定処理が行われる（Ｓ３０５５）。
【００４９】
一方、着目位置において、いずれの学習木においてもノードが存在する場合でない場合（Ｓ３０５２ＮＯ）、次に、いずれか一方の学習木においてノードが存在するか否かの判定処理が行われる（Ｓ３０５７）。いずれか一方の学習木においてノードが存在しない場合（Ｓ３０５７ＮＯ）、すべてのノード位置が処理されたか否かの判定処理が行われる（Ｓ３０５５）。いずれか一方の学習木の着目位置においてノードが存在する場合（Ｓ３０５７ＹＥＳ）、存在する一方の学習木のデータの着目ノード以下のノードを統合後のデータとして複製・保存する（Ｓ３０５８）。その後、全てのノード位置が処理されたか否かの判定処理が行われる（Ｓ３０５５）。
【００５０】
このような構成によれば、あるノードが一方の学習済モデルのみに存在する場合には当該ノード以下のノードについても当該一方の学習済モデルにのみに存在することを利用して、効率的な統合処理を行うことができる。
【００５１】
すべてのノード位置について処理が行われた場合（Ｓ３０５５ＹＥＳ）、処理は終了する。一方、未だすべてのノード位置について処理が行われていない場合（Ｓ３０５５）、着目位置を所定の次のノード位置へと変更設定する処理が行われ（Ｓ３０５６）、再び、ノードの統合処理（Ｓ３０５３）、或いは一方のノードの複製処理（Ｓ３０５８）等が行われる。なお、このとき、上位のノード位置から順に着目位置の設定（深さ優先探索）が行われる。これは、一方の学習木のみにノードが存在する場合に（Ｓ３０５７）、着目ノード以下のノードの複製を行うことから（Ｓ３０５８）、上位のノード位置から探索を行った方が効率的なためである。
【００５２】
図７は、学習木の統合に関する概念図である。同図から明らかな通り、同図左上の第１の学習木と、同図右上の第２の学習木とを統合すると、同図下段に示されるように、黒色のノードについては統合処理が行われ、一方、白色のノードについては第１の学習木又は第２の学習木のノードが複製されることとなる。
【００５３】
＜１．３  実験結果＞
以下では、図９〜図１０を参照しつつ、本実施形態に係る統合処理装置１０を用いて、２つの学習済モデルの統合処理を行った場合の実験結果を示す。
【００５４】
＜１．３．１  実験結果（その１）＞
図９は、２つの学習済モデルの統合処理を行った場合の実験結果（その１）である。図９（ａ）は、正弦曲線（サインカーブ）について、−πから０の範囲まで１／２周期分学習させた場合の第１の学習済モデルの予測出力である。一方、図９（ｂ）は、正弦曲線（サインカーブ）について、０からπまでの１／２周期分学習させた場合の第２の学習済モデルの予測出力である。これらの２つの学習済モデルを統合処理装置１０を用いて統合すると単一の学習済モデルとなり、その予測出力は図９（ｃ）に示す通りとなる。すなわち、これらの図から明らかな通り、−πから０までの半周期分と、０からπまでの半周期分とを統合することにより、−πからπまでの１周期分の正弦曲線をその全領域にわたり精度良く予測できる学習済モデルが生成されたことが確認される。
【００５５】
＜１．３．２  実験結果（その２）＞
図１０は、２つの学習済モデルの統合処理を行った場合の実験結果（その２）である。図１０（ａ）は、−πからπの１周期分、荒い精度で学習させた場合の第１の学習済モデルの予測出力である。一方、図１０（ｂ）は、−π／２からπ／２の範囲においては精度良く正弦曲線を学習しているものの、−πから−π／２の範囲、及びπ／２からπまでの範囲においてはおよそそれぞれの延長となるように横軸に平行な線分となるよう学習している場合の第２の学習済モデルの予測出力である。これらの２つの学習済モデルを統合処理装置１０を用いて統合すると単一の学習済モデルとなり、その予測出力は図１０（ｃ）に示す通りとなる。すなわち、−πから−π／２の範囲においては、荒く正弦曲線が再現されており、−π／２からπ／２の範囲においては、精度良く正弦曲線が再現されており、π／２からπまでの範囲においては、荒く正弦曲線が再現されている。これより、精度良く学習させた範囲については精度よく、荒く学習させた範囲については大まかな予測出力を生成する学習済モデルを生成することができることが確認される。
【００５６】
＜２．その他＞
上述の実施形態においては、単一の統合処理装置１０内で２つの異なる学習済モデルを統合する処理について説明したが、本開示はそのような構成に限定されない。従って、例えば、大規模な統合処理システムとして構成してもよい。
【００５７】
図１１は、大規模統合処理システム８０の概略構成図である。同図から明らかな通り、大規模統合処理システム８０は、上位から、１又は２以上の統合処理装置１０を含む最上位層８１、１又は２以上の統合処理装置１０を含む第１の中間層８２、１又は２以上の学習処理装置を含む第２の中間層８３、及び、複数のデバイスを含むデバイス層８４から構成され、各層は互いに、有線又は無線通信により接続されている。
【００５８】
デバイス層８４の各デバイスにて取得された学習対象となるデータ（例えば、センサデータ等）は、第２の中間層８３へと送信され、第２の中間層８３では、当該データに基づいて、木構造を有する学習モデル上で学習処理が行われる。この学習処理の結果、第２の中間層８３上には、複数の学習済モデルが生成されることとなる。第１の中間層は、上記第２の中間層上の学習済モデルに関するデータを受信すると共に、各学習済モデルの統合処理を行う。これにより、第１の中間層８２上には、複数の統合した学習済モデルが生成されることとなる。第１の中間層８２上の学習済モデルに関するデータは、その後、最上位層へと送信され、最上位層の統合処理装置において再度統合処理が行われる。以上のような構成によれば、大規模なシステムであっても、各層の学習処理乃至統合処理の負荷は小さく、かつ、最上位層８１には包括的な学習済モデルが生成されることとなる。
【００５９】
このような構成によれば、１又は２以上学習装置を含む学習装置層（第２の中間層）にて生成された学習済モデルを統合装置層（最上位層８１又は第１の中間層８２）の１又は２以上の学習済モデル統合装置により適宜統合することができるシステム、特に、大規模な学習・統合処理に好適なシステムを提供することができる。
【００６０】
また、上述の実施形態では、学習済モデルの統合処理は、いずれも統合処理装置１０内にて行う構成とした。しかしながら、本開示はそのような構成に限定されない。従って、例えば、サーバ装置４０とクライアント装置３０とから構成される情報処理システム（サーバ・クライアント・システム或いはＳａａＳシステム）として構成してもよい。
【００６１】
図１２は、上記情報処理システム１００の概略構成図である。クライアント装置３０は、クライアント装置３０の制御を行う制御部３１、入出力を行うためのＩ／Ｏ部３２、サーバ装置４０と通信を行う通信部３３、及び種々の情報を記憶する記憶部３４とから構成されている。また、サーバ装置４０は、サーバ装置４０の制御を行う制御部４１、入出力を行うためのＩ／Ｏ部４２、クライアント装置３０と通信を行う通信部４３、及び種々の情報を記憶する記憶部４４とから構成されている。
【００６２】
このような情報処理システム１００において、ユーザがクライアント装置３０から学習対象となるデータファイルをサーバ装置４０へと送信すると、サーバ装置４０は、当該データファイルに基づいて学習処理を実行する。当該学習処理の完了後、サーバ装置４０は、学習条件（入出力次元や種々のパラメータ等）を含むパラメータファイルと、学習済モデルに関するデータファイルとをバイナリファイルとしてユーザへと返送する。
【００６３】
その後、ユーザは、複数（例えば、２つ）の異なるパラメータファイルとデータファイルをサーバ装置４０へと送信すると共に、サーバ装置４０へと通信を介して統合処理指令を行うことで、ユーザはサーバ装置４０上でデータの統合処理を行うことができる。このような構成によれば、クライアント装置３０が高い演算能力や記憶能力を持つ必要がないので学習処理乃至統合処理が行いやすくなる。
【産業上の利用可能性】
【００６４】
所定の学習処理により生成された学習済モデルの統合処理を行う学習済モデル統合方法、装置、プログラム、ＩＣチップ、及びシステム、特に、木構造を有する学習済モデルの統合を行う学習済モデル統合方法、装置、プログラム、ＩＣチップ、及びシステムを製造等する産業にて利用可能である。
【符号の説明】
【００６５】
１    制御部
２    Ｉ／Ｏ部
３    通信部
４    記憶部
１０    統合処理装置
３０    クライアント装置
３１    制御部
３２    Ｉ／Ｏ部
３３    通信部
３４    記憶部
４０    サーバ装置
４１    制御部
４２    Ｉ／Ｏ部
４３    通信部
４４    記憶部
８０    大規模統合処理システム
８１    最上位層
８２    第１の中間層
８３    第２の中間層
８４    デバイス層
１００    情報処理システム（サーバ・クライアント・システム）
【図１】
2019026703.tif 000004
【図２】
2019026703.tif 000005
【図３】
2019026703.tif 000006
【図４】
2019026703.tif 000007
【図５】
2019026703.tif 000008
【図６】
2019026703.tif 000009
【図７】
2019026703.tif 000010
【図８】
2019026703.tif 000011
【図９】
2019026703.tif 000012
【図１０】
2019026703.tif 000013
【図１１】
2019026703.tif 000014
【図１２】
2019026703.tif 000015
【図１３】
2019026703.tif 000016
【国際調査報告】
2019026703.tif 000017
2019026703.tif 000018
2019026703.tif 000019
2019026703.tif 000020