JP2020115311A - モデル統合装置、モデル統合方法、モデル統合プログラム、推論システム、検査システム、及び制御システム - Google Patents

モデル統合装置、モデル統合方法、モデル統合プログラム、推論システム、検査システム、及び制御システム Download PDF

Info

Publication number
JP2020115311A
JP2020115311A JP2019006777A JP2019006777A JP2020115311A JP 2020115311 A JP2020115311 A JP 2020115311A JP 2019006777 A JP2019006777 A JP 2019006777A JP 2019006777 A JP2019006777 A JP 2019006777A JP 2020115311 A JP2020115311 A JP 2020115311A
Authority
JP
Japan
Prior art keywords
learning
integration
model
learned
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019006777A
Other languages
English (en)
Other versions
JP7036049B2 (ja
Inventor
竜 米谷
Ryo Yonetani
竜 米谷
正樹 諏訪
Masaki Suwa
正樹 諏訪
宏之 宮浦
Hiroyuki Miyaura
宏之 宮浦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP2019006777A priority Critical patent/JP7036049B2/ja
Priority to PCT/JP2019/045161 priority patent/WO2020148998A1/ja
Priority to CN201980082141.3A priority patent/CN113196313A/zh
Priority to US17/414,972 priority patent/US20220058525A1/en
Priority to EP19910689.9A priority patent/EP3913549A4/en
Publication of JP2020115311A publication Critical patent/JP2020115311A/ja
Application granted granted Critical
Publication of JP7036049B2 publication Critical patent/JP7036049B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Image Analysis (AREA)

Abstract

【課題】能力のより高い学習済みの学習モデルを構築するための技術を提供する。【解決手段】本発明の一側面に係るモデル統合装置は、複数の学習装置それぞれから学習済みの学習モデルを収集するモデル収集部と、各学習済みの学習モデルに対して、共通部分内に設定された統合範囲に反映された機械学習の結果を統合する統合処理を実行する統合処理部と、統合処理の結果を各学習装置に送信し、各学習装置に対して、各学習済みの学習モデル内の統合範囲に統合処理の結果を適用させることで、各学習装置の保持する学習済み学習モデルを更新するモデル更新部と、を備える。【選択図】図1

Description

本発明は、モデル統合装置、モデル統合方法、モデル統合プログラム、推論システム、検査システム、及び制御システムに関する。
従来、製造ライン等の製品を製造する場面では、製造される製品を撮影装置により撮影し、得られた画像データに基づいて製品の良否を検査する技術が利用されている。例えば、特許文献1では、学習済みの第1のニューラルネットワークに基づいて画像に写る検査対象物が正常であるか異常であるかを判定し、検査対象物が異常であると判定した場合に、学習済みの第2のニューラルネットワークに基づいて当該異常の種類を分類する検査装置が提案されている。
特開2012−026982号公報
本件発明者は、上記のような、ニューラルネットワーク等の学習モデルを利用した従来の検査方法には、次のような問題点があることを見出した。
すなわち、個々の現場では、学習データの収集するのには限界があるため、検査能力の向上に価値ある学習データ(例えば、製品に異常が発生した時のデータ)を短期間で数多く収集するのは困難である。そこで、この問題を解決するために、多数の現場で得られた学習データを集結し、集結した学習データを利用した機械学習を実施することで、より検査能力の高い学習済みの学習モデルを構築することが考えられる。
しかしながら、各現場は、個々の事情に基づいて、独自に運営される。各現場は、基本的には他の現場とは無関係に学習データを収集する。そのため、そもそも各現場で同じ目的の検査が実施されているとは限らない。よって、各現場で得られた画像データそのままでは共通の機械学習に使用できない可能性があり、また、そもそも機械学習に利用される学習モデルの構造が各現場で一致しているとは限らない。加えて、各現場で得られた大量の学習データをサーバに集結すると、サーバにかかる通信コストが膨大になってしまう。また、集結された大量の学習データを使用した機械学習の計算コストが大きくなってしまう。そのため、計算処理に利用するメモリの不足が生じてしまう、計算処理の時間が長くなってしまう、計算処理が所定時間内に完了しない等の不具合が生じてしまう可能性がある。
このように、機械学習を実施するために学習データを集結するのには様々な技術的な障害が存在する。そのため、この学習データを集結する方法により、より検査能力の高い学習済みの学習モデルを構築するのは現実的ではない。したがって、従来の方法では、学習モデルに獲得させる検査能力の向上には限界がある、換言すると、検査能力のより高い学習済みの学習モデルを構築するのが困難であるという問題点があることを本件発明者は見出した。これに起因して、従来の方法では、画像データを利用した高精度な製品の外観検査を実現するのは困難である。
なお、この問題点は、製品の状態(良否)を判定する能力を学習モデルに習得させる場面に特有のものではない。ローカルの学習データを利用した機械学習により所定の能力を学習モデルに習得させるあらゆる場面で同様の問題点が生じる。所定の能力を学習モデルに習得させる場面とは、例えば、植物の栽培状況に応じて植物の栽培装置に与える制御指令を決定する能力を学習モデルに習得させる場面、運転者を観察することで得られたデータから当該運転者の状態を推定する能力を学習モデルに習得させる場面、気象に関するデータから発電装置の発電量を予測する能力を学習モデルに習得させる場面、対象者のバイタルデータから当該対象者の健康状態を推定する能力を学習モデルに習得させる場面等、である。これらの場面で利用されるローカルの学習データは、例えば、画像データ、音データ、数値データ、テキストデータ、その他センサにより得られる測定データ等である。これらの場面でも、個々の現場では、能力の向上に価値ある学習データを短期間で数多く収集するのは困難である。また、機械学習を実施するために、多数の現場で得られた学習データを集結するのには様々な技術的な障害がある。そのため、従来の方法では、能力のより高い学習済みの学習モデルを構築するのが困難であるという問題がある。
本発明は、一側面では、このような実情を鑑みてなされたものであり、その目的は、能力のより高い学習済みの学習モデルを構築するための技術を提供することである。
本発明は、上述した課題を解決するために、以下の構成を採用する。
すなわち、本発明の一側面に係るモデル統合装置は、複数の学習装置それぞれから学習済みの学習モデルを収集するモデル収集部であって、前記各学習装置は、ローカル学習データを収集し、かつ収集したローカル学習データを利用した機械学習により所定の能力を獲得した学習済みの学習モデルを構築し、前記各学習済みの学習モデルは、共通の構造を有する共通部分を含み、前記各学習済みの学習モデルのうちのいずれかの組み合わせは、前記共通部分以外の部分において異なる構造を有する、モデル収集部と、前記各学習済みの学習モデルに対して、前記共通部分内に設定された統合範囲に反映された前記機械学習の結果を統合する統合処理を実行する統合処理部と、前記統合処理の結果を前記各学習装置に配信し、前記各学習装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各学習装置の保持する前記学習済み学習モデルを更新するモデル更新部と、を備える。
当該構成に係るモデル統合装置は、各学習装置により収集されたローカル学習データそのものではなく、ローカル学習データを利用した機械学習により構築された学習済みの学習モデルを各学習装置から収集する。各学習済みの学習モデルは、共通の構造を有する共通部分を含むように構成される。つまり、各学習済みの学習モデルは、共通部分の構造を共有するように構成される。当該構成に係るモデル統合装置は、各学習済みの学習モデルに対して、共通部分内に設定された統合範囲に反映された機械学習の結果を統合する統合処理を実行する。
よって、当該構成では、ローカル学習データそのものを集結するのではなく、各学習装置により構築された各学習済みの学習モデルを収集し、収集された各学習済みの学習モデルに対して統合処理を実行する。そのため、モデル統合装置にかかる通信コスト及び計算コストを抑えることができる。また、統合処理は、各学習済みの学習モデルに含まれる共通部分に設定された統合範囲に対して実行されるに過ぎないため、各学習モデルの構造が相違していることが許容される。つまり、個々の事情により、各学習モデルの構造が不一致であったとしても、各学習モデルに対する統合処理は実行可能であり、この統合処理によって、各学習モデルに反映された機械学習の結果を他の学習モデルに適切に反映させることができる。これにより、統合処理後の各学習済みの学習モデルは、他の学習済みの学習モデルにおける機械学習の結果に基づいて、各学習装置単独では得られないようなデータに対しても、所定の能力を適切に発揮することができるようになる。したがって、当該構成によれば、学習データを集結する上記の方法に生じ得る種々の問題を解決することができるため、能力のより高い学習済みの学習モデルを構築する環境を実現することができる。
なお、学習モデルは、機械学習により所定の能力を獲得可能なモデルであり、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。学習モデルには、例えば、ニューラルネットワーク等が用いられてよい。学習済みの学習モデルには、推定器、識別器等、用途に応じて異なる呼称が用いられてよい。機械学習の種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。ローカル学習データは、各学習装置において、学習モデルの機械学習に使用される学習データである。ローカル学習データの構成は、学習モデルの種類、学習モデルに獲得させる能力等に応じて適宜選択されてよい。
所定の能力は、与えられたデータに対して何らかの情報処理を実行する能力である。所定の能力は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。一例では、所定の能力は、未知の対象データに対して何らかの推定(回帰又は識別)を行う推論能力である。推論能力は、例えば、未知の対象データに含まれる何らかの特徴を推定する能力である。特徴は、データから推論可能なあらゆる要素を含んでよい。このような推論能力として、例えば、画像データに写る製品の状態(良否)を推定する能力、植物の栽培状況に応じて栽培装置に与える制御指令を決定する能力、運転者を観察することで得られたデータから当該運転者の状態を推定する能力、気象に関するデータから発電装置の発電量を予測する能力、対象者のバイタルデータから当該対象者の健康状態を推定する能力等を挙げることができる。
また、各学習モデルは、所定の能力を発揮するための演算処理に利用される演算パラメータを含む。各学習モデルがニューラルネットワークにより構成される場合、演算パラメータは、例えば、各ニューロン間の結合の重み、各ニューロンの閾値等である。機械学習の結果は、演算パラメータの値に反映される。統合処理は、各学習モデルの統合範囲に含まれる演算パラメータの値を統合することにより、各学習モデルの統合範囲に反映された機械学習の結果を統合する。「モデル更新」は、学習済み学習モデルの更新のために、統合処理の結果を配信することで足り、更新処理を実行するように各学習装置に指示することまでは含まなくてよい。
上記一側面に係るモデル統合装置は、収集した前記各学習済みの学習モデルに含まれる前記共通部分内において前記統合範囲を決定する範囲調整部を更に備えてもよい。当該構成によれば、異なる構造を有する各学習モデルに対して適切な統合範囲を設定することができ、これによって、能力のより高い学習済みの学習モデルを構築することができる。
上記一側面に係るモデル統合装置において、前記各学習済みの学習モデルの構造はテンプレートにより与えられてよく、前記範囲調整部は、前記テンプレートに基づいて、前記統合範囲を決定してもよい。当該構成によれば、異なる構造を有する各学習モデルに対して適切な統合範囲を簡易に設定することができる。なお、テンプレートは、学習モデルのひな型を与える情報を含むものであれば、そのデータ形式は、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。また、テンプレートは、学習モデルの構造に関する情報の他に、学習モデルの演算パラメータの初期値に関する情報を含んでもよい。学習モデルがニューラルネットワークにより構成される場合、ニューラルネットワークにおける層の数、各層に含まれるニューロン(ノード)の数、及び隣接する層のニューロン同士の結合関係が、学習モデルの構造の一例である。また、各ニューロン間の結合の重み及び各ニューロンの閾値が、演算パラメータの一例である。
上記一側面に係るモデル統合装置において、前記各学習済みの学習モデルの前記共通部分は、複数の演算モジュールを備えていてもよい。そして、前記共通部分内において前記統合範囲を決定することは、前記各学習済みの学習モデルに評価用サンプルを入力して、前記共通部分に含まれる前記各演算モジュールから出力を取得すること、前記各学習済みの学習モデルの対応する前記演算モジュール間の、取得された前記出力の類似性及び相関性の少なくともいずれかを算出すること、及び算出された類似性及び相関性の少なくともいずれかが所定の条件を満たす前記演算モジュールを前記統合範囲に指定すること、を含んでもよい。当該構成によれば、異なる構造を有する各学習モデルに対して適切な統合範囲を設定することができる。なお、各演算モジュールは、1又は複数の演算パラメータにより構成されてよい。学習モデルがニューラルネットワークにより構成される場合、各演算モジュールは、最も入力側の第1層から第N番目(Nは1以上の自然数)の層までのネットワークにより構成されてよい。
上記一側面に係るモデル統合装置において、前記範囲調整部は、前記統合処理を実行する前と比べて、前記統合処理を実行した後に前記各学習済みの学習モデルの有する前記所定の能力が向上するように前記統合範囲を最適化してもよい。当該構成によれば、異なる構造を有する各学習モデルに対して最適な統合範囲を設定することができ、これによって、能力のより高い学習済みの学習モデルを構築することができる。
上記一側面に係るモデル統合装置において、前記範囲調整部は、前記共通部分内において暫定統合範囲を指定してもよく、前記統合処理部は、前記各学習済みの学習モデルに対して、指定された前記暫定統合範囲に反映された前記機械学習の結果を統合する統合処理を実行してもよい。そして、前記統合範囲を最適化することは、前記統合処理を実行する前の前記各学習済みの学習モデルが評価用サンプルに対して前記所定の能力を発揮した第1の結果を取得すること、前記統合処理を実行した後の前記各学習済みの学習モデルが前記評価用サンプルに対して前記所定の能力を発揮した第2の結果を取得すること、前記第1の結果及び前記第2の結果を比較することで、前記統合処理を実行する前と比べて、前記統合処理を実行した後に前記各学習済みの学習モデルの有する前記所定の能力が向上しているか否かを判定すること、及び前記統合処理を実行した後に前記各学習済みの学習モデルの有する前記所定の能力が向上していると判定した場合に、前記暫定統合範囲を前記統合範囲に決定すること、を含んでもよい。当該構成によれば、異なる構造を有する各学習モデルに対して最適な統合範囲を設定することができ、これによって、能力のより高い学習済みの学習モデルを構築することができる。
上記一側面に係るモデル統合装置において、前記範囲調整部は、前記共通部分内において複数の暫定統合範囲を指定してもよく、前記統合処理部は、前記暫定統合範囲毎に、前記各学習済みの学習モデルに対する、指定された前記各暫定統合範囲に反映された前記機械学習の結果を統合する統合処理を実行してもよい。そして、前記統合範囲を最適化することは、前記暫定統合範囲毎に、前記統合処理を実行した後の前記各学習済みの学習モデルが評価用サンプルに対して前記所定の能力を発揮した結果を取得すること、取得した前記各結果に基づいて、前記統合処理を実行した後の前記各学習済みの学習モデルの有する前記所定の能力が最も高い暫定統合範囲を特定すること、特定した前記暫定統合範囲を前記統合範囲に決定すること、を含んでもよい。当該構成によれば、異なる構造を有する各学習モデルに対して最適な統合範囲を設定することができ、これによって、能力のより高い学習済みの学習モデルを構築することができる。
上記一側面に係るモデル統合装置は、前記複数の学習装置それぞれを複数のグループのうちの少なくともいずれかに割り当てるグルーピング部を更に備えてもよい。前記モデル収集部は、同一のグループに属する複数の学習装置それぞれから前記学習済みの学習モデルを収集してもよい。前記範囲調整部は、前記同一のグループ内で、収集した前記各学習済みの学習モデルに含まれる共通部分内において前記統合範囲を決定してもよい。前記統合処理部は、前記同一のグループ内で、前記各学習済みの学習モデルに対して、決定された前記統合範囲に反映された前記機械学習の結果を統合する統合処理を実行してもよい。前記モデル更新部は、前記同一のグループ内で、前記統合処理の結果を前記各学習装置に配信し、前記各学習装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各学習装置の保持する前記学習済み学習モデルを更新してもよい。当該構成によれば、各学習装置をグループ分けし、能力のより高い学習済みの学習モデルをグループ毎に構築することができる。
上記一側面に係るモデル統合装置において、前記グルーピング部は、前記複数のグループを示すリストを前記各学習装置に配信して、前記各学習装置に対して、前記リストに示される前記複数のグループのうちから1つ以上のグループを選択させ、選択された前記1つ以上のグループに前記各学習装置を割り当ててもよい。当該構成によれば、簡易な方法により各学習装置をグループ分けすることができる。
上記一側面に係るモデル統合装置において、前記グルーピング部は、前記所定の能力に関する属性データを前記各学習装置から取得し、前記各学習装置から取得した前記属性データをクラスタリングし、前記クラスタリングの結果に基づいて、前記複数の学習装置それぞれを前記複数のグループのうちの少なくともいずれかに割り当ててもよい。当該構成によれば、学習モデルの属性に応じて、各学習装置をグループ分けすることができる。
なお、属性データは、所定の能力に関するあらゆる情報を含んでもよく、例えば、所定の能力の種別を示す情報、学習モデルに要求される仕様に関する情報、等を含んでもよい。所定の能力の種別を示す情報は、例えば、外観検査、栽培装置の制御等の学習モデルに獲得させる能力を識別するための情報を含んでもよい。学習モデルがニューラルネットワークにより構成される場合、ニューラルネットワークの層の数が増えるほど、所定の能力を発揮する精度は高まる一方で、計算コストが増加するため、演算速度は低下する。つまり、学習モデルの構造は、学習モデルの精度、演算速度等の仕様に関連する。そのため、学習モデルに要求される仕様に関する情報は、例えば、精度、演算速度等の学習モデルの構造に関連する情報を含んでもよい。
上記一側面に係るモデル統合装置において、前記グルーピング部は、前記統合処理を実行する前と比べて、前記統合処理を実行した後に前記各学習済みの学習モデルの有する前記所定の能力が向上するように、前記複数のグループに対する前記各学習装置の割り当てを最適化してもよい。当該構成によれば、各学習装置を最適にグループ分けすることができ、これによって、能力のより高い学習済みの学習モデルをグループ毎に構築することができる。
上記一側面に係るモデル統合装置において、前記グルーピング部は、前記複数のグループに対する前記各学習装置の割り当ての異なる複数の暫定グループ分けを行ってもよい。前記範囲調整部は、前記暫定グループ分け毎に、同一のグループ内で、収集した前記各学習済みの学習モデルに含まれる共通部分内において前記統合範囲を決定してもよい。前記統合処理部は、前記暫定グループ分け毎に、前記同一のグループ内で、前記各学習済みの学習モデルに対して、決定された前記統合範囲に反映された前記機械学習の結果を統合する統合処理を実行してもよい。そして、前記各学習装置の割り当てを最適化することは、前記暫定グループ分け毎に、前記同一のグループ内で、前記統合処理を実行した後の前記各学習済みの学習モデルが評価用サンプルに対して前記所定の能力を発揮した結果を取得すること、取得した前記各結果に基づいて、前記同一のグループ内で、前記統合処理を実行した後の前記各学習済みの学習モデルの有する前記所定の能力が最も高い暫定グループ分けを特定すること、及び特定した前記暫定グループ分けに従って、前記複数の学習装置それぞれを複数のグループのうちの少なくともいずれかに割り当てること、を含んでもよい。当該構成によれば、各学習装置を最適にグループ分けすることができ、これによって、能力のより高い学習済みの学習モデルをグループ毎に構築することができる。
上記一側面に係るモデル統合装置において、前記統合範囲に反映された前記機械学習の結果を統合することは、前記統合範囲に含まれる演算パラメータの値を平均化すること又は合計することを含んでもよい。当該構成によれば、各学習済みの学習モデルの統合範囲を適切に統合することができ、これによって、能力のより高い学習済みの学習モデルを構築することができる。
上記一側面に係るモデル統合装置は、前記各学習済みの学習モデルに対して重みを設定する重み設定部であって、前記各重みは、前記統合処理における前記各学習済みの学習モデルの優先度合いを定める、重み設定部を更に備えてもよい。そして、前記統合範囲に反映された前記機械学習の結果を統合することは、設定された前記各重みを使用して、前記各学習済みの学習モデルの前記統合範囲に含まれる演算パラメータの値に重み付けをしてから平均化又は合計することを含んでもよい。当該構成によれば、各学習済みの学習モデルの統合範囲を適切に統合することができ、これによって、能力のより高い学習済みの学習モデルを構築することができる。
上記一側面に係るモデル統合装置において、前記重み設定部は、前記機械学習に利用した前記ローカル学習データの数が多いほど前記重みが大きくなるように、前記各重みを設定してもよい。当該構成によれば、利用したローカル学習データの数の多い機械学習の結果をより優先的に反映するように各学習モデルの統合範囲を統合することができ、これによって、能力のより高い学習済みの学習モデルを構築することができる。
上記一側面に係るモデル統合装置において、前記ローカル学習データは、前記所定の能力における特定の要素に関する特定学習データを含んでもよく、前記重み設定部は、前記機械学習に利用した前記ローカル学習データに含まれる前記特定学習データの比率が高いほど前記重みが大きくなるように、前記各重みを設定してもよい。当該構成によれば、特定学習データの比率の高い機械学習の結果をより優先的に反映するように各学習モデルの統合範囲を統合することができ、これによって、特定の要素に関して能力のより高い学習済みの学習モデルを構築することができる。
なお、特定学習データとは、ローカル学習データのうちの所定の能力における特定の要素に関する学習データである。特定の要素は、特に限定されなくてもよく、所定の能力に関するあらゆる要素から選択されてよい。一例として、画像データに写る製品の外観検査を行う能力を学習モデルに獲得させる場面において、特定の要素は、シミ、汚れ、傷等の欠陥を含むことであってよい。この場合、ローカル学習データは、製品の写る画像データであってよく、特定学習データは、ローカル学習データのうち、欠陥を含む製品の写る画像データであってよい。
上記一側面に係るモデル統合装置において、前記統合範囲に反映された前記機械学習の結果の統合は秘密計算により行われてよい。当該構成によれば、各学習モデルにおける機械学習の結果の秘匿性を確保した上で、各学習モデルの統合範囲を統合することができる。したがって、各学習装置により得られたローカル学習データに秘匿性の高い学習データが含まれている場合に、そのローカル学習データの秘匿性を保証することができる。
上記各形態に係るモデル統合装置の別の態様として、本発明の一側面は、以上の各構成を実現する情報処理方法であってもよいし、プログラムであってもよいし、このようなプログラムを記憶した、コンピュータ等が読み取り可能な記憶媒体であってもよい。ここで、コンピュータ等が読み取り可能な記憶媒体とは、プログラム等の情報を、電気的、磁気的、光学的、機械的、又は、化学的作用によって蓄積する媒体である。また、本発明の一側面に係る推論システムは、上記いずれかの形態に係るモデル統合装置及び複数の学習装置により構成されてよい。
例えば、本発明の一側面に係る推論システムは、複数の学習装置と、モデル統合装置と、を備える。前記各学習装置は、ローカル学習データを収集するステップと、収集した前記ローカル学習データを利用した機械学習により所定の推論能力を獲得した学習済みの学習モデルを構築するステップと、を実行するように構成される。前記各学習済みの学習モデルは、共通の構造を有する共通部分を含む。前記各学習済みの学習モデルのうちのいずれかの組み合わせは、前記共通部分以外の部分において異なる構造を有する。前記モデル統合装置は、前記複数の学習装置それぞれから前記学習済みの学習モデルを収集するステップと、前記各学習済みの学習モデルに対して、前記共通部分内に設定された統合範囲に反映された前記機械学習の結果を統合する統合処理を実行するステップと、前記統合処理の結果を前記各学習装置に配信し、前記各学習装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各学習装置の保持する前記学習済み学習モデルを更新するステップと、を実行するように構成される。
また、例えば、本発明の一側面に係るモデル統合方法は、コンピュータが、複数の学習装置それぞれから学習済みの学習モデルを収集するステップであって、前記各学習装置は、ローカル学習データを収集し、かつ収集したローカル学習データを利用した機械学習により所定の能力を獲得した学習済みの学習モデルを構築し、前記各学習済みの学習モデルは、共通の構造を有する共通部分を含み、前記各学習済みの学習モデルのうちのいずれかの組み合わせは、前記共通部分以外の部分において異なる構造を有する、ステップと、前記各学習済みの学習モデルに対して、前記共通部分内に設定された統合範囲に反映された前記機械学習の結果を統合する統合処理を実行するステップと、前記統合処理の結果を前記各学習装置に配信し、前記各学習装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各学習装置の保持する前記学習済み学習モデルを更新するステップと、を実行する、情報処理方法である。
また、例えば、本発明の一側面に係るモデル統合プログラムは、コンピュータに、複数の学習装置それぞれから学習済みの学習モデルを収集するステップであって、前記各学習装置は、ローカル学習データを収集し、かつ収集したローカル学習データを利用した機械学習により所定の能力を獲得した学習済みの学習モデルを構築し、前記各学習済みの学習モデルは、共通の構造を有する共通部分を含み、前記各学習済みの学習モデルのうちのいずれかの組み合わせは、前記共通部分以外の部分において異なる構造を有する、ステップと、前記各学習済みの学習モデルに対して、前記共通部分内に設定された統合範囲に反映された前記機械学習の結果を統合する統合処理を実行するステップと、前記統合処理の結果を前記各学習装置に配信し、前記各学習装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各学習装置の保持する前記学習済み学習モデルを更新するステップと、を実行させるための、プログラムである。
上記各形態は、機械学習により所定の能力を学習モデルに習得させるあらゆる場面に適用可能である。上記各形態は、例えば、画像データに写る製品の状態(良否)を推定する能力を学習モデルに習得させる場面、植物の栽培状況に応じて植物の栽培装置に与える制御指令を決定する能力を学習モデルに習得させる場面、運転者を観察することで得られたデータから当該運転者の状態を推定する能力を学習モデルに習得させる場面、気象に関するデータから発電装置の発電量を予測する能力を学習モデルに習得させる場面、対象者のバイタルデータから当該対象者の健康状態を推定する能力を学習モデルに習得させる場面等、に適用されてよい。所定のデータは、例えば、画像データ、音データ、数値データ、テキストデータ、その他センサにより得られる測定データ等であってよい。
例えば、本発明の一側面に係る画像システムは、複数の学習装置と、モデル統合装置と、を備える。前記各学習装置は、画像データを含むローカル学習データを収集するステップと、収集した前記ローカル学習データを利用した機械学習により、画像データから所定の特徴を推定する能力を獲得した学習済みの学習モデルを構築するステップと、を実行するように構成される。前記各学習済みの学習モデルは、共通の構造を有する共通部分を含む。前記各学習済みの学習モデルのうちのいずれかの組み合わせは、前記共通部分以外の部分において異なる構造を有する。前記モデル統合装置は、前記複数の学習装置それぞれから前記学習済みの学習モデルを収集するステップと、前記各学習済みの学習モデルに対して、前記共通部分内に設定された統合範囲に反映された前記機械学習の結果を統合する統合処理を実行するステップと、前記統合処理の結果を前記各学習装置に配信し、前記各学習装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各学習装置の保持する前記学習済み学習モデルを更新するステップと、を実行するように構成される。
例えば、本発明の一側面に係るセンサシステムは、複数の学習装置と、モデル統合装置と、を備える。前記各学習装置は、センサにより得られるセンシングデータを含むローカル学習データを収集するステップと、収集した前記ローカル学習データを利用した機械学習により、センシングデータから所定の特徴を推定する能力を獲得した学習済みの学習モデルを構築するステップと、を実行するように構成される。前記各学習済みの学習モデルは、共通の構造を有する共通部分を含む。前記各学習済みの学習モデルのうちのいずれかの組み合わせは、前記共通部分以外の部分において異なる構造を有する。前記モデル統合装置は、前記複数の学習装置それぞれから前記学習済みの学習モデルを収集するステップと、前記各学習済みの学習モデルに対して、前記共通部分内に設定された統合範囲に反映された前記機械学習の結果を統合する統合処理を実行するステップと、前記統合処理の結果を前記各学習装置に配信し、前記各学習装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各学習装置の保持する前記学習済み学習モデルを更新するステップと、を実行するように構成される。
例えば、本発明の一側面に係る検査システムは、複数の検査装置と、モデル統合装置と、を備え、前記各検査装置は、製品の写る画像データを含むローカル学習データを収集するステップと、収集した前記ローカル学習データを利用した機械学習により、前記画像データに写る前記製品の状態を判定する能力を獲得した学習済みの学習モデルを構築するステップと、を実行するように構成され、前記各学習済みの学習モデルは、共通の構造を有する共通部分を含み、前記各学習済みの学習モデルのうちのいずれかの組み合わせは、前記共通部分以外の部分において異なる構造を有し、前記モデル統合装置は、前記複数の検査装置それぞれから前記学習済みの学習モデルを収集するステップと、前記各学習済みの学習モデルに対して、前記共通部分内に設定された統合範囲に反映された前記機械学習の結果を統合する統合処理を実行するステップと、前記統合処理の結果を前記各検査装置に配信し、前記各検査装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各検査装置の保持する前記学習済み学習モデルを更新するステップと、を実行するように構成される。
また、例えば、本発明の一側面に係る制御システムは、植物の生育環境を制御して、当該植物を栽培する栽培装置にそれぞれ接続された複数の制御装置と、モデル統合装置と、を備え、前記各制御装置は、前記植物の栽培状況に関する状況データ及び当該栽培状況に応じた生育環境の制御を前記栽培装置に指令する制御指令を含むローカル学習データを収集するステップと、収集した前記ローカル学習データを利用した機械学習により、前記植物の栽培状況に応じて前記栽培装置に与える制御指令を決定する能力を獲得した学習済みの学習モデルを構築するステップと、を実行するように構成され、前記各学習済みの学習モデルは、共通の構造を有する共通部分を含み、前記各学習済みの学習モデルのうちのいずれかの組み合わせは、前記共通部分以外の部分において異なる構造を有し、前記モデル統合装置は、前記複数の制御装置それぞれから前記学習済みの学習モデルを収集するステップと、前記各学習済みの学習モデルに対して、前記共通部分内に設定された統合範囲に反映された前記機械学習の結果を統合する統合処理を実行するステップと、前記統合処理の結果を前記各制御装置に配信し、前記各制御装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各制御装置の保持する前記学習済み学習モデルを更新するステップと、を実行するように構成される。
本発明によれば、能力のより高い学習済みの学習モデルを構築することができる。
図1は、本発明が適用される場面の一例を模式的に例示する。 図2は、実施の形態に係るモデル統合装置のハードウェア構成の一例を模式的に例示する。 図3は、実施の形態に係る学習装置のハードウェア構成の一例を模式的に例示する。 図4は、実施の形態に係るモデル統合装置のソフトウェア構成の一例を模式的に例示する。 図5は、実施の形態に係る割当情報の構成の一例を模式的に例示する。 図6Aは、実施の形態に学習装置の機械学習に関するソフトウェア構成の一例を模式的に例示する。 図6Bは、実施の形態に学習装置の推論処理に関するソフトウェア構成の一例を模式的に例示する。 図7は、実施の形態に係る学習装置による機械学習の処理手順の一例を例示する。 図8は、実施の形態に係る学習装置による所定の能力の発揮に関する処理手順の一例を例示する。 図9は、実施の形態に係るモデル統合装置の処理手順の一例を例示する。 図10は、実施の形態に係る統合範囲を決定する方法の一例を模式的に例示する。 図11は、実施の形態に係るモデル統合装置による統合範囲の決定に関する処理手順の一例を例示する。 図12は、実施の形態に係る統合範囲を決定する方法の一例を模式的に例示する。 図13は、実施の形態に係るモデル統合装置による統合範囲の決定に関する処理手順の一例を例示する。 図14は、実施の形態に係る統合範囲を決定する方法の一例を模式的に例示する。 図15は、実施の形態に係るモデル統合装置による統合範囲の決定に関する処理手順の一例を例示する。 図16は、実施の形態に係るグルーピング処理を模式的に例示する。 図17は、実施の形態に係るモデル統合装置による学習装置のグルーピングに関する処理手順の一例を例示する。 図18は、実施の形態に係るモデル統合装置による学習装置のグルーピングに関する処理手順の一例を例示する。 図19は、実施の形態に係るモデル統合装置による学習装置のグルーピングに関する処理手順の一例を例示する。 図20は、本発明が適用される他の場面の一例を模式的に例示する。 図21は、他の形態に係る検査装置のハードウェア構成の一例を模式的に例示する。 図22Aは、他の形態に係る検査装置の機械学習に関するソフトウェア構成の一例を模式的に例示する。 図22Bは、他の形態に係る検査装置の検査処理に関するソフトウェア構成の一例を模式的に例示する。 図23は、本発明が適用される他の場面の一例を模式的に例示する。 図24は、他の形態に係る制御装置のハードウェア構成の一例を模式的に例示する。 図25Aは、他の形態に係る制御装置の機械学習に関するソフトウェア構成の一例を模式的に例示する。 図25Bは、他の形態に係る制御装置の制御指令の決定処理に関するソフトウェア構成の一例を模式的に例示する。 図26は、本発明が適用される他の場面の一例を模式的に例示する。 図27は、他の形態に係る監視装置のハードウェア構成の一例を模式的に例示する。 図28Aは、他の形態に係る監視装置の機械学習に関するソフトウェア構成の一例を模式的に例示する。 図28Bは、他の形態に係る監視装置の監視処理に関するソフトウェア構成の一例を模式的に例示する。 図29は、本発明が適用される他の場面の一例を模式的に例示する。 図30は、他の形態に係る予測装置のハードウェア構成の一例を模式的に例示する。 図31Aは、他の形態に係る予測装置の機械学習に関するソフトウェア構成の一例を模式的に例示する。 図31Bは、他の形態に係る予測装置の予測処理に関するソフトウェア構成の一例を模式的に例示する。 図32は、本発明が適用される他の場面の一例を模式的に例示する。 図33は、他の形態に係る診断装置のハードウェア構成の一例を模式的に例示する。 図34Aは、他の形態に係る診断装置の機械学習に関するソフトウェア構成の一例を模式的に例示する。 図34Bは、他の形態に係る診断装置の診断処理に関するソフトウェア構成の一例を模式的に例示する。 図35は、他の形態に係る学習装置の構成の一例を模式的に例示する。 図36Aは、変形例において秘密計算により統合処理を実行する場面の一例を模式的に例示する。 図36Bは、変形例において秘密計算により統合処理を実行する場面の一例を模式的に例示する。
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。ただし、以下で説明する本実施形態は、あらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。つまり、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。なお、本実施形態において登場するデータを自然言語により説明しているが、より具体的には、コンピュータが認識可能な疑似言語、コマンド、パラメータ、マシン語等で指定される。
§1 適用例
まず、図1を用いて、本発明が適用される場面の一例について説明する。図1は、本発明を適用した場面の一例を模式的に例示する。図1に示されるとおり、本実施形態に係る推論システム100は、モデル統合装置1及び複数の学習装置2を備えている。モデル統合装置1及び各学習装置2は、ネットワークを介して互いに接続されてよい。ネットワークの種類は、例えば、インターネット、無線通信網、移動通信網、電話網、専用網等から適宜選択されてよい。
本実施形態に係る各学習装置2は、ローカル学習データ3を利用して、学習モデル4の機械学習を実行するように構成されたコンピュータである。具体的には、本実施形態に係る各学習装置2は、ローカル学習データ3を収集する。そして、本実施形態に係る各学習装置2は、収集したローカル学習データ3を利用した機械学習により所定の能力を獲得した学習済みの学習モデル4を構築する。
所定の能力は、与えられたデータに対して何らかの情報処理を実行する能力である。所定の能力は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。一例では、所定の能力は、未知の対象データに対して何らかの推定(回帰又は識別)を行う推論能力である。推論能力は、例えば、未知の対象データに含まれる何らかの特徴を推定する能力である。特徴は、データから推論可能なあらゆる要素を含んでよい。このような推論能力として、例えば、画像データに写る製品の状態(良否)を推定する能力、植物の栽培状況に応じて栽培装置に与える制御指令を決定する能力、運転者を観察することで得られたデータから当該運転者の状態を推定する能力、気象に関するデータから発電装置の発電量を予測する能力、対象者のバイタルデータから当該対象者の健康状態を推定する能力等を挙げることができる。
本実施形態では、各学習装置2は、センサSにより得られたセンシングデータに含まれる何らかの特徴を推論する能力を所定の能力として各学習モデル4に習得させる。センサSは、例えば、カメラ、マイクロフォン、光度計、温度計、湿度計、バイタルセンサ等であってよい。例えば、製品の外観を撮影するカメラがセンサSとして採用されてよい。この場合、センシングデータは製品の写る画像データであってよく、何らかの特徴を推論する能力は、画像データに写る製品の状態(良否)を推定する能力であってよい。各学習装置2は、学習済みの学習モデル4を利用して、センサSにより得られるセンシングデータに含まれる特徴を推論する。
各学習モデル4は、機械学習により所定の能力を獲得可能なモデルであり、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。機械学習の種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。図1に示されるとおり、本実施形態では、各学習モデル4は、ニューラルネットワークにより構成される。各学習済みの学習モデル4には、推定器、識別器等、用途に応じて異なる呼称が用いられてよい。ローカル学習データ3は、各学習装置2において、学習モデル4の機械学習に使用される学習データである。ローカル学習データ3の構成は、学習モデル4の種類、学習モデル4に獲得させる能力等に応じて適宜選択されてよい。
各学習装置2は、例えば、個別の現場に配置され、異なる利用者により利用されてよい。各学習装置2は、個々の事情に応じた推論の目的で、各学習済みの学習モデル4を構築してもよい。ただし、各学習装置2の配置及び利用者は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、少なくとも一部の学習装置2が、同じ現場に配置され、同じ利用者に利用されてもよい。
本実施形態では、各学習済みの学習モデル4は、共通の構造を有する共通部分40を含むように構成される。つまり、各学習済みの学習モデル4は、共通部分40の構造を共有するように構成される。各学習済みの学習モデル4のうちいずれかの組み合わせは、共通部分40以外の部分において異なる構造を有する。各学習モデル4の構造は、各学習モデル4に獲得させる所定の能力の種別、各学習モデル4に要求される仕様等に応じて適宜決定されてよい。例えば、計算速度を犠牲にして性能を高める場合に、各学習モデル4を構成するニューラルネットワークの層の数が比較的に多く設定されてもよい。一方で、性能を犠牲にして計算速度を高める場合には、各学習モデル4を構成するニューラルネットワークの層の数が比較的に少なく設定されてもよい。
図1の例では、3つの学習装置2a〜2cが存在している。以下、説明の便宜の上、各学習装置を区別する場合に、a、b、c等の更なる符号を付し、そうではない場合には、「学習装置2」等のようにそれらの符号を省略する。各学習装置2a〜2cは、各ローカル学習データ3a〜3cを収集し、得られた各ローカル学習データ3a〜3cを利用した機械学習により、学習済みの学習モデル4a〜4cを構築する。図1の例では、各学習済みの学習モデル4a〜4cは、6層のニューラルネットワークにより構成されており、入力側の第1番目の層から第3番目の層までのネットワークにおいて、ニューロン(ノード)の数及び結合関係が共通している。一方で、その他の第4番目の層から第6番目の層までのネットワークでは、ニューロンの数及び結合関係が異なっている。そのため、第1番目の層から第3番目の層までのネットワークが、共通部分40である。
ただし、学習装置2の数、及び各学習モデル4の構成は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。学習装置2の数は、2つであってもよいし、4つ以上であってもよい。ニューラルネットワークの構造は、6層に限られなくてもよい。また、図1の例では、各学習モデル4a〜4cの全体構造はそれぞれ相違している。しかしながら、各学習モデル4の関係は、このような例に限定されなくてもよく、いずれかの組み合わせが共通部分40以外の部分において異なる構造を有していれば、その他の組み合わせの全体構造が一致していてもよい。
これに対して、本実施形態に係るモデル統合装置1は、各学習装置2から学習済みの学習モデル4を収集する。次に、本実施形態に係るモデル統合装置1は、収集された各学習済みの学習モデル4に対して、共通部分40内に設定された統合範囲41に反映された機械学習の結果を統合する統合処理を実行する。本実施形態に係るモデル統合装置1は、統合処理の結果43を各学習装置2に配信し、各学習装置2に対して、各学習済みの学習モデル4内の統合範囲41に統合処理の結果を適用させることで、各学習装置2の保持する学習済みの学習モデル4を更新する。
図1では、第1番目の層から第3番目の層までのネットワークが統合範囲41に設定されており、各学習済みの学習モデル4a〜4cに対してこの統合範囲41を統合する統合処理が実行された場面が例示されている。統合処理の結果43は、第1番目の層から第3番目の層に含まれる各ニューロンの演算パラメータの値を統合することで得られる。モデル統合装置1は、各学習装置2a〜2cに対して、第1番目の層から第3番目の層に含まれる各ニューロンの演算パラメータに当該統合処理の結果43を適用させることで、各学習済みの学習モデル4a〜4cを更新する。
以上のとおり、本実施形態では、ローカル学習データ3そのものを集結するのではなく、各学習装置2により構築された各学習済みの学習モデル4を収集し、収集された各学習済みの学習モデル4に対して統合処理を実行する。そのため、モデル統合装置1にかかる通信コスト及び計算コストを抑えることができる。また、統合処理は、各学習済みの学習モデル4に含まれる共通部分40に設定された統合範囲41に対して実行されるに過ぎないため、各学習モデル4の構造が相違していることが許容される。例えば、図1の例では、各学習モデル4a〜4cは、共通部分40以外の部分において異なる構造を有している。つまり、ローカル学習データ3の形式及び各学習モデル4の構造が不一致であったとしても、各学習済みの学習モデル4に対する統合処理は実行可能である。
そして、この統合処理によって、各学習済みの学習モデル4に反映された機械学習の結果を他の学習済みの学習モデル4に適切に反映させることができる。これにより、統合処理後の各学習済みの学習モデル4は、他の学習済みの学習モデル4における機械学習の結果に基づいて、各学習装置2単独では得られないようなデータに対しても、所定の能力を適切に発揮することができるようになる。例えば、統合処理後の学習済みの学習モデル4aには、他の学習済みの学習モデル4bを構築する際に利用されたローカル学習データ3bによる機械学習の結果が反映される。これにより、統合処理後の学習済みの学習モデル4aは、ローカル学習データ3aには含まれていないが、ローカル学習データ3bには含まれているようなデータに対して、所定の能力を適切に発揮することができるようになる。したがって、本実施形態によれば、能力のより高い学習済みの学習モデル4を構築する環境を実現することができる。
§2 構成例
[ハードウェア構成]
<モデル統合装置>
次に、図2を用いて、本実施形態に係るモデル統合装置1のハードウェア構成の一例について説明する。図2は、本実施形態に係るモデル統合装置1のハードウェア構成の一例を模式的に例示する。
図2に示されるとおり、本実施形態に係るモデル統合装置1は、制御部11、記憶部12、通信インタフェース13、入力装置14、出力装置15、及びドライブ16が電気的に接続されたコンピュータである。なお、図2では、通信インタフェースを「通信I/F」と記載している。
制御部11は、ハードウェアプロセッサであるCPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)等を含み、プログラム及び各種データに基づいて情報処理を実行するように構成される。記憶部12は、メモリの一例であり、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。本実施形態では、記憶部12は、モデル統合プログラム81、複数件の学習結果データ221、統合結果データ121、グループリスト123、割当情報124、テンプレート126、評価用サンプル129等の各種情報を記憶する。
モデル統合プログラム81は、各学習モデル4の統合に関する後述の情報処理(図9、図11、図13、図15、図17〜図19)をモデル統合装置1に実行させるためのプログラムである。モデル統合プログラム81は、この情報処理の一連の命令を含む。各件の学習結果データ221は、機械学習により構築された各学習済みの学習モデル4に関する情報を示す。統合結果データ121は、統合処理の結果43を示す。統合結果データ121は、モデル統合プログラム81を実行した結果として得られる。グループリスト123は、各学習装置2を割り当てる候補となる複数のグループの一覧を示す。割当情報124は、各学習装置2と各グループとの対応関係を示す。テンプレート126は、学習モデル4の構造のひな型を与える。各学習装置2は、各学習モデル4の構造を決定する際に、このテンプレート126を利用してもよい。評価用サンプル129は、統合処理後の各学習済みの学習モデル4の能力を評価するために利用される。詳細は後述する。
通信インタフェース13は、例えば、有線LAN(Local Area Network)モジュール、無線LANモジュール等であり、ネットワークを介した有線又は無線通信を行うためのインタフェースである。モデル統合装置1は、この通信インタフェース13を利用することで、ネットワークを介したデータ通信を他の情報処理装置(例えば、学習装置2)と行うことができる。
入力装置14は、例えば、マウス、キーボード等の入力を行うための装置である。また、出力装置15は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。オペレータは、入力装置14及び出力装置15を利用することで、モデル統合装置1を操作することができる。
ドライブ16は、例えば、CDドライブ、DVDドライブ等であり、記憶媒体91に記憶されたプログラムを読み込むためのドライブ装置である。ドライブ16の種類は、記憶媒体91の種類に応じて適宜選択されてよい。上記モデル統合プログラム81、複数件の学習結果データ221、グループリスト123、割当情報124、テンプレート126、及び評価用サンプル129の少なくともいずれかは、この記憶媒体91に記憶されていてもよい。
記憶媒体91は、コンピュータその他装置、機械等が、記録されたプログラム等の情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的又は化学的作用によって蓄積する媒体である。モデル統合装置1は、この記憶媒体91から、上記モデル統合プログラム81、複数件の学習結果データ221、グループリスト123、割当情報124、テンプレート126、及び評価用サンプル129の少なくともいずれかを取得してもよい。
ここで、図2では、記憶媒体91の一例として、CD、DVD等のディスク型の記憶媒体を例示している。しかしながら、記憶媒体91の種類は、ディスク型に限定される訳ではなく、ディスク型以外であってもよい。ディスク型以外の記憶媒体として、例えば、フラッシュメモリ等の半導体メモリを挙げることができる。
なお、モデル統合装置1の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部11は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、FPGA(field-programmable gate array)、DSP(digital signal processor)等で構成されてよい。記憶部12は、制御部11に含まれるRAM及びROMにより構成されてもよい。通信インタフェース13、入力装置14、出力装置15及びドライブ16の少なくともいずれかは省略されてもよい。モデル統合装置1は、複数台のコンピュータで構成されてもよい。この場合、各コンピュータのハードウェア構成は、一致していてもよいし、一致していなくてもよい。また、モデル統合装置1は、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、PC(Personal Computer)等であってもよい。
<学習装置>
次に、図3を用いて、本実施形態に係る各学習装置2のハードウェア構成の一例について説明する。図3は、本実施形態に係る各学習装置2のハードウェア構成の一例を模式的に例示する。
図3に示されるとおり、本実施形態に係る各学習装置2は、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。なお、図3では、通信インタフェース及び外部インタフェースをそれぞれ「通信I/F」及び「外部I/F」と記載している。
各学習装置2の制御部21〜ドライブ26はそれぞれ、上記モデル統合装置1の制御部11〜ドライブ16それぞれと同様に構成されてよい。すなわち、制御部21は、ハードウェアプロセッサであるCPU、RAM、ROM等を含み、プログラム及びデータに基づいて各種情報処理を実行するように構成される。記憶部22は、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。記憶部22は、学習プログラム82、推論プログラム83、ローカル学習データ3、学習結果データ221等の各種情報を記憶する。
学習プログラム82は、学習モデル4の機械学習に関する後述の情報処理(図7)を学習装置2に実行させるためのプログラムである。学習プログラム82は、この情報処理の一連の命令を含む。学習結果データ221は、学習プログラム82を実行した結果として得られる。また、推論プログラム83は、学習済みの学習モデル4を利用した所定の推論に関する後述の情報処理(図8)を学習装置2に実行させるためのプログラムである。推論プログラム83は、この情報処理の一連の命令を含む。ローカル学習データ3は、所定の能力を学習モデル4に獲得させるための機械学習に利用される。詳細は後述する。
通信インタフェース23は、例えば、有線LANモジュール、無線LANモジュール等であり、ネットワークを介した有線又は無線通信を行うためのインタフェースである。各学習装置2は、この通信インタフェース23を利用することで、ネットワークを介したデータ通信を他の情報処理装置(例えば、モデル統合装置1)と行うことができる。
入力装置24は、例えば、マウス、キーボード等の入力を行うための装置である。また、出力装置25は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。オペレータは、入力装置24及び出力装置25を利用することで、各学習装置2を操作することができる。
ドライブ26は、例えば、CDドライブ、DVDドライブ等であり、記憶媒体92に記憶されたプログラムを読み込むためのドライブ装置である。上記学習プログラム82、推論プログラム83、及びローカル学習データ3のうちの少なくともいずれかは、記憶媒体92に記憶されていてもよい。また、各学習装置2は、記憶媒体92から、上記学習プログラム82、推論プログラム83、及びローカル学習データ3のうちの少なくともいずれかを取得してもよい。
外部インタフェース27は、例えば、USB(Universal Serial Bus)ポート、専用ポート等であり、外部装置と接続するためのインタフェースである。外部インタフェース27の種類及び数は、接続される外部装置の種類及び数に応じて適宜選択されてよい。本実施形態では、各学習装置2は、外部インタフェース27を介して、センサSに接続される。これにより、各学習装置2は、所定の推論を実行する対象となるセンシングデータをセンサSから取得可能に構成される。ただし、センシングデータを取得するための構成は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、センサSが通信インタフェースを備える場合、各学習装置2は、外部インタフェース27ではなく、通信インタフェース23を介して、センサSに接続されてもよい。
なお、各学習装置2の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部21は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、FPGA、DSP等で構成されてよい。記憶部22は、制御部21に含まれるRAM及びROMにより構成されてもよい。通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27の少なくともいずれかは省略されてもよい。各学習装置2は、複数台のコンピュータで構成されてもよい。この場合、各コンピュータのハードウェア構成は、一致していてもよいし、一致していなくてもよい。本実施形態では、各学習装置2のハードウェア構成は共通している。しかしながら、各学習装置2のハードウェア構成の関係は、このような例に限定されなくてもよい。一の学習装置2と他の学習装置2との間で、ハードウェア構成は異なっていてもよい。また、各学習装置2は、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってもよい。
[ソフトウェア構成]
<モデル統合装置>
次に、図4を用いて、本実施形態に係るモデル統合装置1のソフトウェア構成の一例について説明する。図4は、本実施形態に係るモデル統合装置1のソフトウェア構成の一例を模式的に例示する。
モデル統合装置1の制御部11は、記憶部12に記憶されたモデル統合プログラム81をRAMに展開する。そして、制御部11は、RAMに展開されたモデル統合プログラム81をCPUにより解釈及び実行して、各構成要素を制御する。これによって、図4に示されるとおり、本実施形態に係るモデル統合装置1は、モデル収集部111、範囲調整部112、統合処理部113、モデル更新部114、重み設定部115、及びグルーピング部116をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、モデル統合装置1の各ソフトウェアモジュールは、制御部11(CPU)により実現される。
モデル収集部111は、各学習装置2から学習済みの学習モデル4を収集する。範囲調整部112は、収集された各学習済みの学習モデル4に含まれる共通部分40内において統合範囲41を決定する。統合処理部113は、各学習済みの学習モデル4に対して、共通部分40内に設定された統合範囲41に反映された機械学習の結果を統合する統合処理を実行する。モデル更新部114は、統合処理の結果43を示す統合結果データ121を各学習装置2に配信し、各学習装置2に対して、各学習済みの学習モデル4内の統合範囲41に統合処理の結果43を適用させることで、各学習装置2の保持する学習済みの学習モデル4を更新する。なお、「モデル更新」は、学習済み学習モデル4の更新のために、統合処理の結果43を配信することで足り、更新処理を実行するように各学習装置2に指示することまでは含まなくてよい。
重み設定部115は、各学習済みの学習モデル4に対して重みを設定する。各重みは、統合処理における各学習済みの学習モデル4の優先度合いを定める。これに応じて、統合範囲41に反映された機械学習の結果を統合することは、設定された各重みを使用して、各学習済みの学習モデル4の統合範囲41に含まれる演算パラメータの値に重み付けをしてから平均化又は合計することを含んでよい。
グルーピング部116は、各学習装置2を複数のグループのうちの少なくともいずれかに割り当てる。これに応じて、モデル収集部111は、同一のグループに属する複数の学習装置2それぞれから学習済みの学習モデル4を収集してもよい。範囲調整部112は、同一のグループ内で、収集された各学習済みの学習モデル4に含まれる共通部分40内において統合範囲41を決定してもよい。統合処理部113は、同一のグループ内で、各学習済みの学習モデル4に対して、決定された統合範囲41に反映された機械学習の結果を統合する統合処理を実行してもよい。モデル更新部114は、同一のグループ内で、統合処理の結果43を各学習装置2に配信し、各学習装置2に対して、各学習済みの学習モデル4内の統合範囲41に統合処理の結果43を適用させることで、各学習装置2の保持する学習済みの学習モデル4を更新してもよい。なお、このグループ内の統合処理は、複数のグループを重複するように実行されてもよい。すなわち、統合処理部113は、一のグループ内において学習済みの学習モデル4に対する統合処理を実行した後、その統合処理の結果43を用いて、その一のグループ内に属する学習装置2の属する他のグループ内において学習済みの学習モデル4に対する統合処理を実行してもよい。この場合、一のグループと他のグループとで異なる範囲が統合範囲41に設定されてもよい。これに応じて、一のグループ内において統合処理を実行した統合範囲41と他のグループ内において統合処理を実行した統合範囲41とは異なっていてもよい。本実施形態では、グルーピング部116は、各学習装置2に対するグループの割り当て結果を割当情報124に格納する。
図5は、本実施形態に係る割当情報124のデータ構成の一例を模式的に例示する。本実施形態では、割当情報124は、テーブル形式の構造を有しており、各レコード(行データ)は、「ユーザID」フィールド及び「グループID」フィールドを有している。「ユーザID」フィールドには、各学習装置2を識別するための情報が格納され、「グループID」フィールドには、対象の学習装置2を割り当てたグループを識別するための情報が格納される。1つのレコードは、1つの割り当て結果を示す。ただし、割当情報124のデータ構成は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。
(学習モデル)
次に、各学習モデル4の一例について説明する。図4に示されるとおり、本実施形態では、各学習モデル4は、ニューラルネットワークにより構成される。具体的には、各学習モデル4は、6層構造のニューラルネットワークにより構成され、入力側から順に、入力層51、中間(隠れ)層52〜55、及び出力層56を備えている。ただし、各学習モデル4の構造は、このような例に限定されなくてもよく、各学習装置2において適宜決定されてよい。例えば、各学習モデル4の備える中間層の数は、4つに限定されなくてもよく、3つ以下であってもよいし、5つ以上であってもよい。
各層51〜56に含まれるニューロンの数は、実施の形態に応じて適宜選択されてよい。隣接する層のニューロン同士は適宜結合され、各結合には重み(結合荷重)が設定されている。各ニューロンには閾値が設定されており、基本的には、各入力と各重みとの積の和が閾値を超えているか否かによって各ニューロンの出力が決定される。各層51〜56に含まれる各ニューロン間の結合の重み及び各ニューロンの閾値は、学習モデルの演算パラメータの一例である。なお、図4に示される各層51〜56に含まれるニューロンの数及び隣接する層との結合関係は、説明の便宜のための一例に過ぎず、本発明及び本実施形態を限定するものではない。
図4の例では、モデル収集部111が、3つの学習装置2a〜2cそれぞれから学習済みの学習モデル4a〜4cを収集した場面を想定している。各学習済みの学習モデル4a〜4cでは、入力層51(第1番目の層)から中間層53(第3番目の層)までのネットワークにおいて、ニューロンの数及び隣接する層との結合関係が共通している。一方、中間層54(第4番目の層)から出力層56(第6番目の層)までのネットワークでは、ニューロンの数及び結合関係が異なっている。そのため、入力層51から中間層53までのネットワークが共通部分40である。
範囲調整部112は、この入力層51から中間層53までの範囲(共通部分40)内で統合処理を適用する範囲(統合範囲41)を決定することができる。図4の例では、範囲調整部112が、入力層51から中間層53までの範囲を統合範囲41として決定した場面を想定している。機械学習の結果は、各学習モデル4に含まれる演算パラメータの値に反映されている。そのため、統合処理部113は、各学習モデル4の統合範囲41に含まれる演算パラメータの値を統合することにより、各学習モデル4の統合範囲41に反映された機械学習の結果を統合する。
モデル更新部114は、統合処理の結果43を示す統合結果データ121を各学習装置2a〜2cに配信し、各学習装置2a〜2cに対して、各学習済みの学習モデル4a〜4c内の統合範囲41に統合処理の結果43を適用させる。すなわち、モデル更新部114は、各学習装置2a〜2cに対して、統合範囲41内の各パラメータの値を統合処理により得られた各パラメータの値に置き換えさせる。これにより、モデル更新部114は、各学習装置2a〜2cの保持する各学習済みの学習モデル4a〜4cを更新する。
<学習装置>
(A)学習処理
次に、図6Aを用いて、本実施形態に係る各学習装置2の学習処理に関するソフトウェア構成の一例について説明する。図6Aは、本実施形態に係る各学習装置2の学習処理に関するソフトウェア構成の一例を模式的に例示する。
各学習装置2の制御部21は、記憶部22に記憶された学習プログラム82をRAMに展開する。そして、制御部21は、RAMに展開された学習プログラム82をCPUにより解釈及び実行して、各構成要素を制御する。これによって、図6Aに示されるとおり、本実施形態に係る各学習装置2は、学習データ収集部211、構造決定部212、学習処理部213、及び保存処理部214をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、学習処理に関する各学習装置2の各ソフトウェアモジュールは、制御部21(CPU)により実現される。
学習データ収集部211は、学習モデル4の機械学習に利用するローカル学習データ3を収集する。本実施形態では、学習モデル4はニューラルネットワークにより構成されているため、ローカル学習データ3は、訓練データ31及び正解データ32の組み合わせをそれぞれ含む複数の学習データセット30により構成される。訓練データ31(入力データ)は、所定の能力を発揮する対象となるデータである。正解データ32(教師データ)は、訓練データ31に対して所定の能力を発揮した結果(正解)を示すデータである。正解データ32は、ラベルと称されてもよい。
訓練データ31及び正解データ32は、学習モデル4に習得させる所定の能力に応じて適宜選択されてよい。例えば、画像データに写る製品の状態(良否)を推定する能力を所定の能力として学習モデル4に習得させる場合、訓練データ31は、製品の写る画像データにより構成されてよく、正解データ32は、当該製品の状態(良否)を示すデータにより構成されてよい。本実施形態では、学習モデル4は、センサSにより得られたセンシングデータに含まれる何らかの特徴を推論する能力を所定の能力として習得させられる。そのため、訓練データ31は、センサSにより得られるセンシングデータと同種のデータであり、正解データ32は、訓練データ31に含まれる特徴に対する推論の正解を示すデータである。
構造決定部212は、学習モデル4の構造を決定する。学習モデル4の構造は、演算パラメータによる演算処理を定義する。学習モデル4の構造は、当該学習モデル4の種類に応じて適宜規定されてよい。本実施形態では、学習モデル4は、ニューラルネットワークにより構成される。そのため、学習モデル4の構造は、例えば、ニューラルネットワークの層数、各層に含まれるニューロンの数、各層の結合関係等により規定されてよい。各学習装置2において、各学習モデル4の構造は適宜決定されてよい。その結果、各学習モデル4は、共通の構造を有する共通部分40を含むように構成され得る。また、各学習モデル4のうちのいずれかの組み合わせは、共通部分40以外の部分において異なる構造を有するように構成され得る。
学習処理部213は、収集されたローカル学習データ3を利用した機械学習により所定の能力を獲得した学習済みの学習モデル4を構築する。本実施形態では、学習処理部213は、機械学習により、訓練データ31を入力すると、正解データ32に対応する出力値を出力するように学習モデル4を訓練する。これにより、所定の能力を獲得した学習済みの学習モデル4が構築される。
保存処理部214は、構築された学習済みの学習モデル4に関する情報を所定の記憶領域に保存する。本実施形態では、保存処理部214は、機械学習により構築された学習済みの学習モデル4(ニューラルネットワーク)の構造及び演算パラメータを示す情報を学習結果データ221として生成し、生成した学習結果データ221を所定の記憶領域に保存する。
(B)推論処理
次に、図6Bを用いて、本実施形態に係る各学習装置2の推論処理に関するソフトウェア構成の一例について説明する。図6Bは、本実施形態に係る各学習装置2の推論処理に関するソフトウェア構成の一例を模式的に例示する。
各学習装置2の制御部21は、記憶部22に記憶された推論プログラム83をRAMに展開する。そして、制御部21は、RAMに展開された推論プログラム83をCPUにより解釈及び実行して、各構成要素を制御する。これによって、図6Bに示されるとおり、本実施形態に係る各学習装置2は、対象データ取得部216、推論部217、及び出力部218をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、推論処理に関する各学習装置2の各ソフトウェアモジュールは、制御部21(CPU)により実現される。
対象データ取得部216は、学習済みの学習モデル4に習得させた所定の能力を発揮する対象となる対象データ225を取得する。本実施形態では、対象データ取得部216は、対象データ225をセンサSから取得する。推論部217は、学習結果データ221を保持することで、学習済みの学習モデル4を含んでいる。推論部217は、学習済みの学習モデル4を利用して、対象データ225に含まれる特徴を推論する。具体的には、推論部217は、学習結果データ221を参照して、学習済みの学習モデル4の設定を行う。次に、推論部217は、取得された対象データ225を学習済みの学習モデル4の入力層51に入力し、学習済みの学習モデル4の演算処理を実行する。これにより、推論部217は、対象データ225に含まれる特徴を推論した結果に対応する出力値を学習済みの学習モデル4の出力層56から取得する。本実施形態では、この出力値を得ることが、所定の能力を発揮することに対応する。なお、この「推論」することは、例えば、グループ分け(分類、識別)により離散値(例えば、特定の特徴に対応するクラス)を導出すること、及び回帰により連続値(例えば、特定の特徴が現れている確率)を導出することのいずれかであってよい。出力部218は、特徴を推論した結果に関する情報を出力する。
<その他>
モデル統合装置1及び各学習装置2の各ソフトウェアモジュールに関しては後述する動作例で詳細に説明する。なお、本実施形態では、モデル統合装置1及び各学習装置2の各ソフトウェアモジュールがいずれも汎用のCPUによって実現される例について説明している。しかしながら、以上のソフトウェアモジュールの一部又は全部が、1又は複数の専用のプロセッサにより実現されてもよい。また、モデル統合装置1及び各学習装置2それぞれのソフトウェア構成に関して、実施形態に応じて、適宜、ソフトウェアモジュールの省略、置換及び追加が行われてもよい。
§3 動作例
[学習装置]
(A)学習処理
次に、図7を用いて、機械学習に関する各学習装置2の動作例について説明する。図7は、各学習装置2による機械学習に関する処理手順の一例を示すフローチャートである。ただし、以下で説明する各処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。更に、以下で説明する各処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS101)
ステップS101では、制御部21は、学習データ収集部211として動作し、学習モデル4の機械学習に利用するローカル学習データ3を収集する。本実施形態では、制御部21は、訓練データ31及び正解データ32の組み合わせをそれぞれ含む複数の学習データセット30をローカル学習データ3として収集する。
各学習データセット30を取得する方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、センサSと同種のセンサを用意し、用意したセンサにより様々な条件で観測を行うことで、訓練データ31を取得することができる。そして、取得された訓練データ31に対して、当該訓練データ31に現れる特徴を示す正解データ32を関連付ける。これにより、各学習データセット30を生成することができる。
各学習データセット30は、コンピュータの動作により自動的に生成されてもよいし、オペレータの操作により手動的に生成されてもよい。また、各学習データセット30の生成は、各学習装置2により行われてもよいし、各学習装置2以外の他のコンピュータにより行われてもよい。各学習データセット30を各学習装置2が生成する場合、制御部21は、自動的に又は入力装置24を介したオペレータの操作により手動的に上記一連の処理を実行することで、複数の学習データセット30により構成されるローカル学習データ3を収集する。一方、各学習データセット30を他のコンピュータが生成する場合、制御部21は、例えば、ネットワーク、記憶媒体92等を介して、他のコンピュータにより生成された複数の学習データセット30により構成されるローカル学習データ3を収集する。
収集される学習データセット30の件数は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。ローカル学習データ3を収集すると、制御部21は、次のステップS102に処理を進める。
(ステップS102)
ステップS102では、制御部21は、構造決定部212として動作し、学習モデル4の構造を決定する。本実施形態では、学習モデル4は、ニューラルネットワークにより構成される。そのため、本ステップS102では、制御部21は、学習モデル4を構成するニューラルネットワークの構造を決定する。ニューラルネットワークの構造は、例えば、ニューラルネットワークの層数、各層に含まれるニューロンの数、各ニューロン間の結合関係等により規定される。
学習モデル4の構造を決定する方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、制御部21は、入力装置24を介したオペレータの指定を受け付けることで、ニューラルネットワークの構造、各ニューロン間の結合の重みの初期値、及び各ニューロンの閾値の初期値を決定してもよい。また、例えば、制御部21は、ニューラルネットワークの構造、各ニューロン間の結合の重みの初期値、及び各ニューロンの閾値の初期値をテンプレートにより決定してもよい。この場合、制御部21は、後述するステップS701〜ステップS703の処理に対する回答に応じて、モデル統合装置1からテンプレート126を取得してもよい。テンプレート126は、学習モデル4のひな型を与える情報を含むものであれば、そのデータ形式は、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。テンプレート126は、学習モデル4の構造に関する情報の他に、学習モデル4の演算パラメータの初期に関する情報を含んでもよい。本実施形態では、テンプレート126は、ニューラルネットワークにおける層の数、各層に含まれるニューロン(ノード)の数、及び隣接する層のニューロン同士の結合関係等を示す情報を学習モデル4の構造に関する情報として含んでもよい。また、テンプレート126は、各ニューロン間の結合の重みの初期値、各ニューロンの閾値の初期値等を示す情報を演算パラメータの初期値に関する情報として含んでもよい。制御部21は、取得されたテンプレート126に基づいて、学習モデル4を構成するニューラルネットワークの構造、各ニューロン間の結合の重みの初期値、及び各ニューロンの閾値の初期値を決定してもよい。
各学習装置2において各学習モデル4の構造が適宜決定された結果、各学習済みの学習モデル4は、共通の構造を有する共通部分40を含むように構成される。また、各学習済みの学習モデル4のうちのいずれかの組み合わせは、共通部分40以外の部分において異なる構造を有するように構成される。学習モデル4の構造を決定すると、制御部21は、次のステップS103に処理を進める。
(ステップS103)
ステップS103では、制御部21は、学習処理部213として動作し、収集されたローカル学習データ3を利用した機械学習により、所定の能力を獲得した学習済みの学習モデル4を構築する。本実施形態では、制御部21は、各学習データセット30に含まれる訓練データ31及び正解データ32を利用して、学習モデル4を構成するニューラルネットワークの学習処理を実行する。この学習処理には、確率的勾配降下法等が用いられてよい。
例えば、第1のステップでは、制御部21は、各学習データセット30について、訓練データ31を入力層51に入力し、入力側から順に各層51〜56に含まれる各ニューロンの発火判定を行う。これにより、制御部21は、訓練データ31に対して所定の能力を発揮した結果に対応する出力値を出力層56から取得する。第2のステップでは、制御部21は、取得した出力値と対応する正解データ32との誤差を算出する。第3のステップでは、制御部21は、誤差逆伝播(Back propagation)法により、算出した出力値の誤差を用いて、各ニューロン間の結合の重み及び各ニューロンの閾値それぞれの誤差を算出する。第4のステップでは、制御部21は、算出した各誤差に基づいて、各ニューロン間の結合の重み及び各ニューロンの閾値それぞれの値の更新を行う。
制御部21は、上記第1〜第4のステップを繰り返すことで、各学習データセット30について、訓練データ31を入力すると、対応する正解データ32と一致する出力値が出力層56から出力されるように、学習モデル4を構成するニューラルネットワークの演算パラメータの値を調整する。例えば、制御部21は、各学習データセット30について、出力層56から得られる出力値と正解データ32に対応する値との誤差の和が閾値以下になるまで、上記第1〜第4のステップを繰り返す。正解データ32の値と出力層56の出力値とが一致することは、このような閾値による誤差が正解データ32の値と出力層56の出力値との間に生じることを含んでよい。閾値は、実施の形態に応じて適宜設定されてよい。これにより、制御部21は、訓練データ31の入力に対して、対応する正解データ32と一致する出力値を出力するように訓練された学習済みの学習モデル4を構築することができる。ローカル学習データ3を利用した機械学習が完了すると、制御部21は、次のステップS104に処理を進める。
(ステップS104)
ステップS104では、制御部21は、保存処理部214として動作し、機械学習により構築された学習済みの学習モデル4に関する情報を所定の記憶領域に保存する。本実施形態では、制御部21は、ステップS103の機械学習により構築された学習済みのニューラルネットワーク(学習モデル4)の構造及び演算パラメータを示す情報を学習結果データ221として生成する。そして、制御部21は、生成された学習結果データ221を所定の記憶領域に保存する。
所定の記憶領域は、例えば、制御部21内のRAM、記憶部22、外部記憶装置、記憶メディア又はこれらの組み合わせであってよい。記憶メディアは、例えば、CD、DVD等であってよく、制御部21は、ドライブ26を介して記憶メディアに学習結果データ221を格納してもよい。外部記憶装置は、例えば、NAS(Network Attached Storage)等のデータサーバであってよい。この場合、制御部21は、通信インタフェース23を利用して、ネットワークを介してデータサーバに学習結果データ221を格納してもよい。また、外部記憶装置は、例えば、学習装置2に接続された外付けの記憶装置であってもよい。
また、学習結果データ221には、機械学習に使用された学習データセット30の件数、後述する特定学習データの比率等を示す付加情報が含まれてもよい。これにより、学習結果データ221の保存が完了すると、制御部21は、学習モデル4の機械学習に関する一連の処理を終了する。
(B)推論処理
次に、図8を用いて、推論処理に関する各学習装置2の動作例について説明する。図8は、各学習装置2による推論処理に関する処理手順の一例を示すフローチャートである。ただし、以下で説明する各処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。更に、以下で説明する各処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS201)
ステップS201では、制御部21は、対象データ取得部216として動作し、学習済みの学習モデル4に習得させた所定の能力を発揮する対象となる対象データ225を取得する。本実施形態では、各学習装置2は、外部インタフェース27を介してセンサSに接続されている。そのため、制御部21は、外部インタフェース27を介してセンサSから対象データ225を取得する。
ただし、対象データ225を取得する経路は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、各学習装置2とは異なる他のコンピュータが、センサSに接続されていてもよい。この場合、制御部21は、他のコンピュータから対象データ225の送信を受け付けることで、対象データ225を取得してもよい。対象データ225を取得すると、制御部21は、次のステップS202に処理を進める。
(ステップS202)
ステップS202では、制御部21は、推論部217として動作し、学習済みの学習モデル4を利用して、対象データ225に含まれる特徴を推論する。本実施形態では、制御部21は、学習結果データ221を参照して、学習済みの学習モデル4の設定を行う。次に、制御部21は、取得された対象データ225を学習済みの学習モデル4に入力し、当該学習済みの学習モデル4の演算処理を実行する。すなわち、制御部21は、学習済みの学習モデル4の入力層51に対象データ225を入力し、入力側から順に各層51〜56に含まれる各ニューロンの発火判定を行う。これにより、制御部21は、対象データ225に含まれる特徴を推論した結果に対応する出力値を学習済みの学習モデル4の出力層56から取得する。
本実施形態では、この出力値を得ることが、所定の能力を発揮すること、本実施形態では、対象データ225に含まれる特徴を推論することに対応する。推論の内容は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、学習済みの学習モデル4が、上記機械学習により画像データに写る製品の状態を推定する能力を習得している場合、対象データ225に含まれる特徴を推論することは、当該対象データ225である画像データに写る製品の状態を推定することであってよい。対象データ225に含まれる特徴の推論が完了すると、制御部21は、次のステップS203に処理を進める。
(ステップS203)
ステップS203では、制御部21は、出力部218として動作し、特徴を推論した結果に関する情報を出力する。
出力先及び出力する情報の内容はそれぞれ、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、ステップS202により対象データ225に含まれる特徴を推論した結果をそのまま出力装置25に出力してもよい。また、例えば、制御部21は、特徴を推論した結果に基づいて、何らかの情報処理を実行してもよい。そして、制御部21は、その情報処理を実行した結果を推論の結果に関する情報として出力してもよい。この情報処理を実行した結果の出力には、推論の結果に応じて警告等の特定のメッセージを出力すること、推論の結果に応じて制御対象装置の動作を制御すること等が含まれてよい。出力先は、例えば、出力装置25、制御対象装置等であってよい。推論の結果に関する情報の出力が完了すると、制御部21は、学習済みの学習モデル4を利用した所定の推論処理に関する一連の処理を終了する。
[モデル統合装置]
次に、図9を用いて、モデル統合装置1の動作例について説明する。図9は、モデル統合装置1によるモデル統合に関する処理手順の一例を示すフローチャートである。以下で説明する処理手順は、本発明の「モデル統合方法」の一例である。ただし、以下で説明する各処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。更に、以下で説明する各処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS301)
ステップS301では、制御部11は、モデル収集部111として動作し、各学習装置2から学習済みの学習モデル4を収集する。本実施形態では、各学習済みの学習モデル4を収集することは、各学習装置2により生成された学習結果データ221を収集することにより構成される。
学習結果データ221を収集する方法は、実施の形態に応じて適宜決定されてよい。例えば、制御部11は、ネットワークを介して各学習装置2にアクセスすることで、当該各学習装置2から直接的に学習結果データ221を収集してもよい。また、例えば、各学習装置2により生成された学習結果データ221は、データサーバ等の外部記憶装置に格納されていてもよい。この場合、制御部11は、外部記憶装置から各件の学習結果データ221を取得することで、各学習装置2から間接的に学習結果データ221を収集してもよい。各学習装置2から学習済みの学習モデル4を収集すると、制御部11は、次のステップS302に処理を進める。
(ステップS302)
ステップS302では、制御部11は、範囲調整部112として動作し、収集された各学習済みの学習モデル4に含まれる共通部分40内において統合範囲41を決定する。統合範囲41を決定する方法の詳細については後述する。統合範囲41を決定すると、制御部11は、次のステップS303に処理を進める。
なお、本ステップS302は、ステップS301の前に実行されてもよい。この場合、制御部11は、各学習装置2で利用される各学習モデル4の構造に関する情報を保持していてもよい。各学習モデル4の構造が、テンプレート126により与えられる場合、各学習モデル4の構造に関する情報は、当該テンプレート126により構成されてよい。制御部11は、この各学習モデル4の構造に関する情報に基づいて、各学習モデル4の共通部分40内において統合範囲41を決定してもよい。そして、ステップS301では、制御部11は、学習結果データ221のうち統合範囲41に関するデータのみを取得してもよい。
(ステップS303)
ステップS303では、制御部11は、統合処理部113として動作し、各学習済みの学習モデル4に対して、共通部分40内に設定された統合範囲41に反映された機械学習の結果を統合する統合処理を実行する。
機械学習の結果は、各学習モデル4に含まれる演算パラメータ(例えば、各ニューロン間の結合の重み、各ニューロンの閾値等)の値に反映されている。そのため、本実施形態では、各学習モデル4の統合範囲41に反映された機械学習の結果を統合することは、各学習済みの学習モデル4の統合範囲41に含まれる演算パラメータの値を統合することにより構成される。演算パラメータの値を統合する方法は、実施の形態に応じて適宜決定されてよい。本実施形態では、制御部11は、以下の2つの方法のうちのいずれかの方法により、統合範囲41に含まれる演算パラメータの値を統合する。
(A)第1の方法
第1の方法では、制御部11は、統合範囲41に含まれる演算パラメータの値を平均化又は合計することにより、統合範囲41に含まれる演算パラメータの値を統合する。この第1の方法によれば、各学習済みの学習モデル4の統合範囲41に含まれる演算パラメータの値が均等に反映された統合処理の結果43を得ることができる。
(B)第2の方法
第2の方法では、制御部11は、統合処理において、各学習済みの学習モデル4の統合範囲41に含まれる演算パラメータの値に重み付けを行う。この場合、本ステップS303を実行する前に、制御部11は、重み設定部115として動作し、各学習済みの学習モデル4に対して重みを設定する。各重みは、本ステップS303の統合処理における各学習済みの学習モデル4の優先度合いを定める。本実施形態では、制御部11は、以下の2つの設定方法のうちのいずれかの方法により、各学習済みの学習モデル4に対する重みを設定する。
(I)第1の重み設定方法
機械学習に利用したローカル学習データ3の数(すなわち、学習データセット30の件数)が多いほど、学習済みの学習モデル4の所定の能力を発揮する精度は高く成り得る。そこで、第1の設定方法では、制御部11は、機械学習に利用したローカル学習データ3の数が多いほど重みが大きくなるように、各重みを設定する。これにより、利用したローカル学習データ3の数の多い機械学習の結果をより優先的に反映するように各学習済みの学習モデル4の統合範囲41を統合することができる。
なお、機械学習に利用したローカル学習データ3の数を示す情報は適宜取得されてよい。例えば、各件の学習結果データ221に、各学習装置2の機械学習に利用されたローカル学習データ3の数を示す情報が含まれてもよい。この場合、制御部11は、各件の学習結果データ221に含まれる当該情報を参照することで、各学習済みの学習モデル4の構築に利用されたローカル学習データ3の数を特定し、当該特定の結果に応じて各重みを設定することができる。各学習装置2の機械学習に利用されたローカル学習データ3の数と設定される各重みとの対応関係は、実施の形態に応じて適宜決定されてよい。例えば、各重みは、ローカル学習データ3の数に比例するように設定されてよい。
(II)第2の重み設定方法
例えば、画像データに写る製品の外観検査を行う能力を各学習モデル4に取得させる場面を想定する。この場面において、シミ、汚れ、傷等の欠陥を含む製品の写る画像データがローカル学習データ3に含まれている比率が高いほど、そのローカル学習データ3を利用した機械学習により構築された学習済みの学習モデル4の欠陥を推定する精度は高くなり得る。そこで、第2の設定方法では、ローカル学習データ3が、所定の能力における特定の要素に関する特定学習データを含む場合に、制御部11は、機械学習に利用したローカル学習データ3に含まれる特定学習データの比率が高いほど重みが大きくなるように、各重みを設定する。
ここで、特定学習データとは、ローカル学習データ3のうちの所定の能力における特定の要素に関する学習データである。特定の要素は、特に限定されなくてもよく、所定の能力に関するあらゆる要素から選択されてよい。上記の例のとおり、画像データに写る製品の外観検査を行う能力を学習モデルに獲得させる場面において、特定の要素は、シミ、汚れ、傷等の欠陥を含むことであってよい。この場合、ローカル学習データ3を構成する各学習データセット30に含まれる訓練データ31は、製品の写る画像データであってよい。また、特定学習データを構成する各学習データセット30に含まれる訓練データ31は、欠陥を含む製品の写る画像データ(以下、「欠陥製品の画像データ」とも記載する)であってよい。この場合、特定学習データの比率は、ローカル学習データ3に含まれる欠陥製品の画像データの比率に対応する。この第2の設定方法によれば、特定学習データの比率の高い機械学習の結果をより優先的に反映するように各学習済みの学習モデル4の統合範囲41を統合することができる。
なお、ローカル学習データ3に含まれる特定学習データの比率を示す情報は適宜取得されてよい。上記第1の設定方法と同様に、例えば、各件の学習結果データ221に、各学習装置2の機械学習に利用されたローカル学習データ3に含まれる特定学習データの比率を示す情報が含まれてもよい。この場合、制御部11は、各件の学習結果データ221に含まれる当該情報を参照することで、各学習済みの学習モデル4の構築に利用されたローカル学習データ3に含まれる特定学習データの比率を特定し、当該特定の結果に応じて各重みを設定することができる。各学習装置2の機械学習に利用されたローカル学習データ3に含まれる特定学習データの比率と設定される各重みとの対応関係は、実施の形態に応じて適宜決定されてよい。例えば、各重みは、特定学習データの比率に比例するように設定されてよい。
本実施形態では、以上の2つの方法のいずれかの設定方法により、制御部11は、各学習済みの学習モデル4に対して重みを設定する。ただし、各重みを設定する方法は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、各重みは、オペレータにより指定されてもよい。この場合、制御部11は、入力装置14等を介してオペレータによる各重みの指定を受け付けて、入力された内容に応じて各重みを設定してもよい。
そして、本ステップS303では、制御部11は、設定された各重みを使用して、各学習済みの学習モデル4の統合範囲41に含まれる演算パラメータの値に重み付けしてから平均化又は合計することにより、統合範囲41に含まれる演算パラメータの値を統合する。この第2の方法によれば、設定された重みの大きい学習済みの学習モデル4ほど統合範囲41に含まれる演算パラメータの値が優先的に反映された統合処理の結果43を得ることができる。
以上の2つの方法のうちのいずれかの方法により、統合範囲41に反映された機械学習の結果を統合すると、制御部11は、次のステップS304に処理を進める。
(ステップS304)
ステップS304では、制御部11は、モデル更新部114として動作し、統合処理の結果43を示す統合結果データ121を各学習装置2に配信する。これによって、制御部11は、各学習装置2に対して、各学習済みの学習モデル4内の統合範囲41に統合処理の結果43を適用させることで、各学習装置2の保持する学習済みの学習モデル4を更新する。このとき、制御部11は、配信した統合処理の結果43により学習済みの学習モデル4を更新する指示を各学習装置2に送信するか否かは、実施の形態に応じて適宜選択あれてよい。
統合結果データ121を配信する方法は、実施の形態に応じて適宜決定されてよい。例えば、制御部11は、自身の処理又は各学習装置2からの要求に応じて、ネットワークを介して各学習装置2に統合結果データ121を直接的に配信してもよい。また、例えば、制御部11は、データサーバ等の外部記憶装置に統合結果データ121を送信し、各学習装置2に対して、外部記憶装置に保存された統合結果データ121を取得させるようにしてもよい。このように、制御部11は、各学習装置2に統合結果データ121を間接的に配信してもよい。
各学習装置2の制御部21は、統合結果データ121を取得すると、取得された統合結果データ121を参照して、統合範囲41内の各パラメータの値を統合処理により得られた各パラメータの値に置き換える。これにより、制御部11は、各学習装置2に対して、各学習済みの学習モデル4内の統合範囲41に統合処理の結果43を適用させることで、各学習装置2の保持する各学習済みの学習モデル4を更新する。各学習済みの学習モデル4の更新が完了すると、制御部11は、モデル統合に関する一連の処理を終了する。
なお、統合結果データ121のデータ構成は、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。統合結果データ121は、統合範囲41に含まれる演算パラメータの値のみで構成されてもよいし、統合範囲41以外の演算パラメータの値を含むように構成されてもよい。統合範囲41以外の演算パラメータの値を含むように構成される場合、制御部11は、学習装置2毎に統合結果データ121を生成してもよく、生成された統合結果データ121を各学習装置2に配信してもよい。
<統合範囲の決定方法>
次に、上記ステップS302における統合範囲41を決定する方法の具体例について説明する。本実施形態では、制御部11は、以下の3つの方法のうちの少なくともいずれかの方法により、共通部分40内において統合範囲41を決定する。
(A)第1の方法
各学習装置2における各学習済みの学習モデル4の構造は、テンプレート126により与えられてもよい(ステップS102)。これに対応して、第1の方法では、制御部11は、テンプレート126に基づいて、統合範囲41を決定する。
例えば、構造が異なるものの、共通部分40を有する学習モデル4の構造のひな型を規定した複数のテンプレート126が用意されてよい。各テンプレート126の規定する共通部分40には統合範囲41が予め設定されていてよい。各学習装置2は、上記ステップS102において、複数のテンプレート126のうちのいずれかを利用して、利用する学習モデル4の構造を決定してよい。
この場合に、制御部11は、各学習装置2に利用された各テンプレート126を参照し、設定された統合範囲41を特定することにより、ステップS303の処理の対象となる統合範囲41を決定してもよい。当該第1の方法によれば、制御部11は、簡易な方法で統合範囲41を決定することができる。
(B)第2の方法
次に、図10を用いて、統合範囲41を決定するための第2の方法の一例について説明する。図10は、第2の方法により統合範囲41を決定する場面の一例を模式的に例示する。統合範囲41が予め設定された上で、各学習モデル4の構造が決定されているとは限らない。そこで、第2の方法では、制御部11は、各学習済みの学習モデル4の共通部分40において、演算処理の類似する部分を統合範囲41に決定する。
具体的には、各学習済みの学習モデル4の共通部分40は、複数の演算モジュールを備えている。演算モジュールは、1又は複数の演算パラメータにより構成される。つまり、演算モジュールは、学習モデル4における演算処理を実行する一単位を形成する。本実施形態では、演算モジュールは、例えば、ニューラルネットワークの各層により構成される。図4及び図10の例では、共通部分40は、入力層51から中間層53までを含んでいる。この場合、例えば、入力層51のみで構成される第1ネットワーク、入力層51及び中間層52で構成される第2ネットワーク、及び入力層51及び2つの中間層(52、53)で構成される第3ネットワークそれぞれが演算モジュールに対応する。各演算モジュールは、統合範囲41の候補となる。
第2の方法では、制御部11は、統合範囲41の各候補となる各演算モジュールに評価用サンプル129を与えることで得られる出力が類似しているか否かを判定する。対応する演算モジュール間、すなわち、共通部分40内の同一部分同士の出力が類似しているということは、その同一部分が入力データに対して類似する意図の演算処理を実行していることに対応する。そこで、制御部11は、出力が類似していると判定される候補を統合範囲41に決定する。
ここで、図11を更に用いて、第2の方法の処理手順の一例について説明する。図11は、第2の方法による統合範囲41の決定に関する処理手順の一例を示すフローチャートである。統合範囲41を決定する方法として第2の方法が採用された場合、上記ステップS302の処理は、以下のステップS401〜ステップS404の処理を含む。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
まず、ステップS401を実行する前に、制御部11は、評価用サンプル129を取得する。本実施形態では、評価用サンプル129は記憶部12に格納されているため、制御部11は、評価用サンプル129を記憶部12から取得する。ただし、評価用サンプル129を取得する経路は、このような例に限定されなくてもよい。例えば、評価用サンプル129は、記憶媒体91、外部記憶装置等に保存されていてもよい。この場合、制御部11は、記憶媒体91、外部記憶装置等から評価用サンプル129を取得してもよい。
図10に示されるとおり、評価用サンプル129は、各演算モジュールの出力を評価するために利用され、ローカル学習データ3と同様に構成される。本実施形態では、評価用サンプル129は、各学習データセット30と同様に、入力データ1291及び正解データ1292の組み合わせにより構成される。入力データ1291は、上記訓練データ31及び対象データ225と同種のデータである。正解データ1292は、上記正解データ32と同様に、入力データ1291に対して所定の能力を発揮した結果(正解)を示すデータである。利用する評価用サンプル129の件数は、実施の形態に応じて適宜決定されてよい。1又は複数の評価用サンプル129を取得すると、制御部11は、ステップS401に処理を進める。
(ステップS401)
ステップS401では、制御部11は、各学習済みの学習モデル4に評価用サンプル129を入力して、共通部分40に含まれる各演算モジュールから出力を取得する。本実施形態では、制御部11は、評価用サンプル129に含まれる入力データを入力層51に入力し、入力側から順に各ニューロンの発火判定を行う。これにより、制御部11は、各演算モジュールの出力層に対応する各層51〜53から出力値を取得する。
図10では、各学習装置(2a、2b)から得られた各学習済みの学習モデル(4a、4b)の共通部分40について、入力層51及び中間層52により構成される演算モジュールから出力を得ている場面が例示されている。制御部11は、他の演算モジュールについても同様に出力を得ることができる。各演算モジュールから出力を取得すると、制御部11は、次のステップS402に処理を進める。
(ステップS402)
ステップS402では、制御部11は、各学習済みの学習モデル4の対応する演算モジュール間の、取得された出力の類似性及び相関性の少なくともいずれかを算出する。類似性及び相関性はそれぞれ、公知の方法により算出されてよい。類似性は、例えば、ノルム(距離)等により算出されてよい。相関性は、例えば、相関係数、偏相関係数等により算出されてよい。図10の例では、各学習済みの学習モデル(4a、4b)の入力層51に入力データ1291を入力することで中間層52から得られる出力同士の類似性及び相関性が算出されている。類似性及び相関性の少なくともいずれかを算出すると、次のステップS403に処理を進める。
(ステップS403)
ステップS403では、制御部11は、算出された類似性及び相関性の少なくともいずれかが所定の条件を満たすか否かを判定する。所定の条件は、各学習済みの学習モデル4の対応する演算モジュールの出力が類似しているか否かを評価するように適宜設定される。例えば、所定の条件は、類似性及び相関性それぞれに対する閾値により規定されてよい。この場合、制御部11は、ステップS402により算出された類似性及び相関性の少なくともいずれかと閾値とを比較することで、算出された類似性及び相関性の少なくともいずれかが所定の条件を満たすか否かを判定する。各演算モジュールについて当該判定が完了すると、制御部11は、次のステップS404に処理を進める。
(ステップS404)
ステップS404では、制御部11は、上記判定の結果に基づいて、算出された類似性及び相関性の少なくともいずれかが所定の条件を満たす演算モジュールを統合範囲41に指定する。所定の条件を満たす複数の候補が存在した場合には、制御部11は、複数の候補から統合範囲41に指定する候補を適宜選択してもよい。例えば、制御部11は、最も広い範囲の候補、最も狭い範囲の候補、又は算出された類似性及び相関性の少なくともいずれかの最も高い候補を統合範囲41に指定してもよい。また、例えば、制御部11は、複数の候補を出力装置15に出力し、複数の候補から統合範囲41に指定する候補の選択を、入力装置14を介して受け付け、オペレータ等に選択された候補を統合範囲41に指定してもよい。また、例えば、制御部11は、複数の候補の中から統合範囲41に指定する候補をランダムに選択してもよい。統合範囲41の指定が完了すると、制御部11は、統合範囲41の決定に関する一連の処理を終了する。なお、いずれの演算モジュールの出力間で算出された類似性及び相関性も所定の条件を満たさない場合には、その他の方法により統合範囲41が決定されてもよい。或いは、ステップS303以下の統合処理が省略されてもよい。
これにより、制御部11は、演算処理の類似する部分を統合範囲41に決定することができる。この第2の方法によれば、予め統合範囲41が設定されていない場合であっても、各学習済みの学習モデル4に対して適切な統合範囲41を決定することができる。なお、この第2の方法を採用する場合には、評価用サンプル129において正解データ1292は省略されてよい。
(C)第3の方法
ステップS303の統合処理は、一の学習済みの学習モデルに反映された機械学習の結果を他の学習済みの学習モデルに反映することで、各学習済みの学習モデルの能力の向上を図ることを目的として実行される。そこで、第3の方法では、制御部11は、ステップS303の統合処理を実行する前と比べて、当該統合処理を実行した後に各学習済みの学習モデル4の有する所定の能力が向上する、つまり、所定の能力を発揮する精度が上がるように統合範囲41を最適化する。
具体的には、制御部11は、共通部分40内において暫定的な統合範囲(以下、「暫定統合範囲」とも称する)を指定する。次に、制御部11は、指定された暫定統合範囲に対してステップS303と同様の暫定的な統合処理(以下、「暫定統合処理」とも称する)を実行する。そして、制御部11は、評価用サンプル129を利用して、統合処理後の各学習済みの学習モデル4の能力を評価し、その評価結果に基づいて、統合範囲41を最適化する。最適化の方法は、実施の形態に応じて適宜決定されてよい。本実施形態では、制御部11は、以下の2つの方法のうちの少なくともいずれかの方法により、統合範囲41を最適化する。
(C−1)第1の最適化方法
まず、図12及び図13を用いて、第1の最適化方法の一例について説明する。図12は、第1の最適化方法により統合範囲41を最適化する場面の一例を模式的に例示する。図13は、第1の最適化方法による統合範囲41の決定に関する処理手順の一例を示すフローチャートである。第1の最適化方法では、制御部11は、暫定的な統合処理前の各学習済みの学習モデル4の能力と暫定的な統合処理後の各学習済みの学習モデル4の能力とを比較することで、統合範囲41を最適化する。
なお、統合範囲41を決定する方法としてこの第1の最適化方法が採用された場合、上記ステップS302及びステップS303の処理は、以下のステップS501〜ステップS507の処理を含む。特に、統合範囲41を最適化することは、以下のステップS503〜ステップS507の処理により構成される。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS501)
ステップS501では、制御部11は、範囲調整部112として動作し、各学習済みの学習モデル4の共通部分40内において暫定統合範囲を指定する。例えば、制御部11は、共通部分40内で設定可能な統合範囲41の複数の候補(演算モジュール)の中から暫定統合範囲に指定する候補を選択する。図12では、共通部分40内で指定可能な3つの候補のうち、入力層51及び中間層52により構成される第2ネットワークを暫定統合範囲に指定した場面が例示されている。暫定統合範囲を指定すると、制御部11は、次のステップS502に処理を進める。
(ステップS502)
ステップS502では、制御部11は、統合処理部113として動作し、各学習済みの学習モデル4に対して、指定された暫定統合範囲に反映された機械学習の結果を統合する暫定統合処理を実行する。この暫定統合処理は、上記統合処理と同様に実行される。暫定統合処理において、暫定統合範囲に含まれる演算パラメータの値を統合する方法として、上記2つの方法のうちのいずれかの方法が採用されてよい。これにより、制御部11は、暫定統合範囲に対する暫定統合処理の結果を得ることができる。そして、図12に示されるとおり、制御部11は、この暫定統合処理の結果を各学習済みの学習モデル4の暫定統合範囲に適用することで、統合処理後の各学習済みの学習モデル4を得ることができる。暫定統合処理の結果を適用する方法は、上記統合処理の結果43を適用する方法と同様である。暫定統合処理を実行すると、制御部11は、次のステップS503に処理を進める。
(ステップS503及びステップS504)
ステップS503では、制御部11は、範囲調整部112として動作し、暫定統合処理前の各学習済みの学習モデル4、すなわち、暫定統合処理の結果を適用していない各学習済みの学習モデル4が評価用サンプル129に対して所定の能力を発揮した第1の結果を取得する。ステップS503は、上記ステップS202と同様に実行されてよい。すなわち、制御部11は、暫定統合処理前の各学習済みの学習モデル4の入力層51に入力データ1291を入力し、入力側から順に各層51〜56に含まれる各ニューロンの発火判定を行う。これにより、制御部11は、入力データ1291に対して所定の能力を発揮した結果(本実施形態では、入力データ1291に含まれる特徴を推論した結果)に対応する出力値を暫定統合処理前の各学習済みの学習モデル4の出力層56から取得する。なお、以下のステップS504以降の各処理についても、制御部11は、範囲調整部112として動作し、各処理を実行する。
ステップS504では、制御部11は、暫定統合処理後の各学習済みの学習モデル4、すなわち、暫定統合処理の結果を適用した後の各学習済みの学習モデル4が評価用サンプル129に対して所定の能力を発揮した第2の結果を取得する。第2の結果を取得する方法は、上記ステップS503の第1の結果を取得する方法と同様である。制御部11は、暫定統合処理後の各学習済みの学習モデル4の入力層51に入力データ1291を入力し、入力側から順に各層51〜56に含まれる各ニューロンの発火判定を行う。これにより、制御部11は、入力データ1291に対して所定の能力を発揮した結果に対応する出力値を暫定統合処理後の各学習済みの学習モデル4の出力層56から取得する。
第1の結果及び第2の結果を取得すると、制御部11は、次のステップS505に処理を進める。なお、ステップS503及びステップS504の処理順序は、このような例に限定されなくてもよい。例えば、ステップS503及びステップS504の処理順序は入れ替わってもよい。また、ステップS503及びステップS504において利用する評価用サンプル129の件数は、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。
(ステップS505)
ステップS505では、制御部11は、第1の結果及び第2の結果を比較することで、暫定統合処理を実行する前と比べて、暫定統合処理を実行した後に各学習済みの学習モデル4の有する所定の能力が向上しているか否かを判定する。
当該判定の方法は、実施の形態に応じて適宜決定されてよい。本実施形態では、各学習済みの学習モデル4から得られた出力値が正解データ1292と一致していることは、各学習済みの学習モデル4が入力データ1291に対して所定の能力を適正に発揮できたことを示す。一方で、得られた出力値が正解データ1292と一致していないことは、各学習済みの学習モデル4が入力データ1291に対して所定の能力を適正に発揮できなかったことを示す。つまり、この出力値と正解データ1292とを照合し、各評価用サンプル129の入力データ1291に対する所定の能力を発揮した結果の正答率を算出することで、制御部11は、各学習済みの学習モデル4の所定の能力を評価することができる。
そこで、制御部11は、暫定統合処理を実行する前及び実行した後それぞれについて、各学習済みの学習モデル4の入力データ1291に対する正答率を各結果から算出し、算出された正答率を比較することで、暫定統合処理により各学習済みの学習モデル4の所定の能力が向上したか否かを判定する。暫定統合処理後の各学習済みの学習モデル4の正答率が暫定統合処理前の各学習済みの学習モデル4の正答率よりも高い場合、制御部11は、暫定統合処理を実行する前と比べて、暫定統合処理を実行した後に各学習済みの学習モデル4の有する所定の能力が向上していると判定する。一方、そうではない場合に、制御部11は、暫定統合処理を実行する前と比べて、暫定統合処理を実行した後に各学習済みの学習モデル4の有する所定の能力は向上していないと判定する。当該判定が完了すると、制御部11は、次のステップS506に処理を進める。
(ステップS506)
ステップS506では、制御部11は、ステップS505の判定結果に基づいて、処理の分岐先を決定する。ステップS505において、暫定統合処理を実行する前と比べて、暫定統合処理を実行した後に各学習済みの学習モデル4の有する所定の能力が向上していると判定した場合、制御部11は、次のステップS507に処理を進める。一方、そうではない場合に、制御部11は、ステップS501に処理を戻し、ステップS501以下の処理を繰り返す。この繰り返しでは、制御部11は、ステップS501において、異なる暫定統合範囲を指定することで、暫定統合範囲を変更して、ステップS502以降の処理を実行する。
(ステップS507)
ステップS507では、制御部11は、ステップS501により指定された暫定統合範囲を統合範囲41に決定(採用)する。統合範囲41の決定が完了すると、制御部11は、第1の最適化方法による統合範囲41の決定に関する一連の処理を終了する。なお、この第1の最適化方法を採用する場合、制御部11は、ステップS507まで到達した一連の処理において、ステップS502により得られた暫定統合処理の結果をステップS303の統合処理の結果43として利用する。
これにより、制御部11は、統合処理後に各学習済みの学習モデル4の所定の能力が向上するように統合範囲41を決定することができる。したがって、この第1の最適化方法によれば、予め統合範囲41が設定されていない場合であっても、各学習済みの学習モデル4に対して、統合処理後に所定の能力が向上するような最適な統合範囲41を決定することができる。
(C−2)第2の最適化方法
次に、図14及び図15を用いて、第2の最適化方法の一例について説明する。図14は、第2の最適化方法により統合範囲41を最適化する場面の一例を模式的に例示する。図15は、第2の最適化方法による統合範囲41の決定に関する処理手順の一例を示すフローチャートである。第2の最適化方法では、制御部11は、複数の暫定統合範囲を指定し、指定された複数の暫定統合範囲の中から統合処理により所定の能力が最も向上する暫定統合範囲を特定することで、統合範囲41を最適化する。
なお、統合範囲41を決定する方法としてこの第2の最適化方法が採用された場合、上記ステップS302及びステップS303の処理は、以下のステップS601〜ステップS605の処理を含む。特に、統合範囲41を最適化することは、以下のステップS603〜ステップS605の処理により構成される。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS601)
ステップS601では、制御部11は、範囲調整部112として動作し、各学習済みの学習モデル4の共通部分40内において複数の暫定統合範囲を指定する。暫定統合範囲を指定する方法は、上記ステップS501と同様であってよい。指定する暫定統合範囲の数は、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。図14では、入力層51及び中間層52により構成される第2ネットワーク、並びに入力層51及び2つの中間層(52、53)により構成される第3ネットワークの2つの候補を複数の暫定統合範囲として指定した場面が例示されている。複数の暫定統合範囲を指定すると、制御部11は、次のステップS602に処理を進める。
(ステップS602)
ステップS602では、制御部11は、統合処理部113として動作し、指定された暫定統合範囲毎に、各学習済みの学習モデル4に対する、指定された各暫定統合範囲に反映された機械学習の結果を統合する暫定統合処理を実行する。暫定統合範囲毎の暫定統合処理は、上記ステップS502と同様に実行されてよい。これにより、制御部11は、暫定統合処理の結果を暫定統合範囲毎に得ることができる。そして、図14に示されるとおり、制御部11は、暫定統合範囲毎に、暫定統合処理の結果を各学習済みの学習モデル4に適用することで、暫定統合処理後の各学習済みの学習モデル4を得ることができる。暫定統合処理の結果を適用する方法は、上記統合処理の結果43を適用する方法と同様である。指定された暫定統合範囲毎に暫定統合処理を実行すると、制御部11は、次のステップS603に処理を進める。
(ステップS603)
ステップS603では、制御部11は、範囲調整部112として動作し、指定された暫定統合範囲毎に、暫定統合処理を実行した後の各学習済みの学習モデル4が評価用サンプル129に対して所定の能力を発揮した結果を取得する。各結果を取得する方法は、上記ステップS504と同様であってよい。すなわち、制御部11は、指定された暫定統合範囲毎に、暫定統合処理後の各学習済みの学習モデル4の入力層51に入力データ1291を入力し、入力側から順に各層51〜56に含まれる各ニューロンの発火判定を行う。これにより、制御部11は、指定された暫定統合範囲毎に、入力データ1291に対して所定の能力を発揮した結果に対応する出力値を暫定統合処理後の各学習済みの学習モデル4の出力層56から取得する。各結果を取得すると、制御部11は、次のステップS604に処理を進める。なお、以下のステップS604以降の各処理についても、制御部11は、範囲調整部112として動作し、各処理を実行する。
(ステップS604)
ステップS604では、制御部11は、取得された各結果に基づいて、暫定統合処理を実行した後の各学習済みの学習モデル4の有する所定の能力が最も高い暫定統合範囲を特定する。指定された各暫定統合範囲に対する暫定統合処理により得られた各学習済みの学習モデル4の所定の能力を比較する方法は、上記ステップS505と同様であってよい。すなわち、制御部11は、指定された暫定統合範囲毎に、各学習済みの学習モデル4から得られた出力値と正解データ1292とを照合することで、暫定統合処理後の各学習済みの学習モデル4の入力データ1291に対する正答率を各結果から算出してもよい。次に、制御部11は、暫定統合範囲毎に算出された各学習済みの学習モデル4の正答率を比較してもよい。そして、この比較の結果に基づいて、制御部11は、正答率の最も高い各学習済みの学習モデル4を与えた暫定統合範囲を特定してもよい。これにより、制御部11は、暫定統合処理を実行した後の各学習済みの学習モデル4の有する所定の能力が最も高い暫定統合範囲を特定することができる。所定の能力の最も高い暫定統合処理後の各学習済みの学習モデル4を与える暫定統合範囲を特定すると、制御部11は、次のステップS605に処理を進める。
(ステップS605)
ステップS605では、制御部11は、ステップS604により特定された暫定統合範囲を統合範囲41に決定(採用)する。統合範囲41の決定が完了すると、制御部11は、第2の最適化方法による統合範囲41の決定に関する一連の処理を終了する。なお、この第2の最適化方法を採用する場合、制御部11は、所定の能力の最も高い暫定統合処理後の各学習済みの学習モデル4を与える暫定統合範囲に対してステップS602により暫定統合処理を実行した結果をステップS303の統合処理の結果43として利用する。
これにより、制御部11は、複数の統合範囲の候補の中から統合処理により所定の能力が最も向上する候補を統合範囲41として決定することができる。したがって、この第2の最適化方法によれば、予め統合範囲41が設定されていない場合であっても、各学習済みの学習モデル4に対して、統合処理後に所定の能力が最も向上するような最適な統合範囲41を決定することができる。制御部11は、統合範囲41を決定する方法として、この第2の最適化方法及び上記第1の最適化方法の両方を採用してもよい。また、制御部11は、第1の最適化方法及び第2の最適化方法の少なくとも一方による統合範囲41の決定処理を複数回実行し、統合処理後に所定の能力が最も向上する統合範囲41を特定してもよい。統合範囲41の決定処理を繰り返す回数は、閾値等により適宜設定されてよい。
以上の3つの方法の少なくともいずれかの方法を採用することで、制御部11は、各学習済みの学習モデル4の共通部分40内において統合範囲41を適切に決定することができる。制御部11は、以上の3つの方法を組み合わせて採用し、統合範囲41を決定してもよい。ただし、統合範囲41を決定する方法は、これらの例に限られなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、制御部11は、入力装置14を介したオペレータによる統合範囲41の指定を受け付けてもよい。この場合、制御部11は、オペレータの指定に応じて統合範囲41を決定してもよい。
<学習装置のグルーピング>
次に、図16を用いて、各学習装置2のグルーピングの一例について説明する。図16は、各学習装置2をグルーピングする場面の一例を模式的に例示する。
ステップS303の統合処理は、一の学習済みの学習モデルに反映された機械学習の結果を他の学習済みの学習モデルに反映することで、各学習済みの学習モデルの能力の向上を図ることを目的として実行される。例えば、各学習モデルに習得させる所定の能力が共通している等により、一の学習済みの学習モデル及び他の学習済みの学習モデルの演算処理が類似し得ると想定する。この場合には、上記ステップS303の統合処理により、一の学習済みの学習モデルに反映された機械学習の結果を他の学習済みの学習モデルに適切に反映することができる。一方で、例えば、各学習モデルに習得させる所定の能力が全く異なっている等により、一の学習済みの学習モデル及び他の学習済みの学習モデルの演算処理が極めて相違していると想定する。この場合には、上記ステップS303の統合処理により、一の学習済みの学習モデルに反映された機械学習の結果を他の学習済みの学習モデルに判定することは困難である。
そこで、本実施形態では、制御部11は、グルーピング部116として動作し、各学習装置2を複数のグループのうちの少なくともいずれかに割り当ててもよい。各グループは、適宜設定されてよい。例えば、各グループは、所定の能力の種別、学習モデルに要求される仕様等に応じて適宜設定されてよい。図16では、グループA及びグループBの2つのグループに各学習装置2を割り当てる場面が例示されている。制御部11は、この各学習装置2に対するグループの割り当て結果を割当情報124に格納する。
このグルーピング処理を実行する場合、制御部11は、同一のグループ内で、換言すると、グループ毎に、ステップS301〜S304の処理を実行する。すなわち、ステップS301では、制御部11は、同一のグループに属する複数の学習装置2それぞれから学習済みの学習モデル4を収集する。ステップS302では、制御部11は、同一のグループに属する各学習装置2から収集された各学習済みの学習モデル4に含まれる共通部分40内において統合範囲41を決定する。ステップS303では、制御部11は、同一のグループに属する各学習装置2から収集された各学習済みの学習モデル4に対して、決定された統合範囲41に反映された機械学習の結果を統合する統合処理を実行する。そして、ステップS304では、制御部11は、同一のグループに属する各学習装置2に統合処理の結果43を配信し、各学習装置2に対して、各学習済みの学習モデル4内の統合範囲41に統合処理の結果43を適用させることで、各学習装置2の保持する学習済みの学習モデル4を更新する。なお、この同一グループ内の統合処理は、複数のグループを重複するように実行されてもよい。すなわち、制御部11は、一のグループ内において学習済みの学習モデル4に対する統合処理を実行した後、その統合処理の結果43を用いて、その一のグループ内に属する学習装置2の属する他のグループ内において学習済みの学習モデル4に対する統合処理を実行してもよい。この場合、一のグループと他のグループとで異なる範囲が統合範囲41に設定されてもよい。これに応じて、一のグループ内において統合処理を実行した統合範囲41と他のグループ内において統合処理を実行した統合範囲41とは異なっていてもよい。
グルーピングの方法は、実施の形態に応じて適宜決定されてよい。本実施形態では、制御部11は、以下の3つの方法のちの少なくともいずれかの方法により、各学習装置2を複数のグループのうちの少なくともいずれかに割り当てる。
(A)第1のグルーピング方法
まず、図17を用いて、第1のグルーピング方法の一例について説明する。図17は、第1のグルーピング方法による各学習装置2に対するグループの割り当てに関する処理手順の一例を示すフローチャートである。第1のグルーピング方法では、制御部11は、グループのリストから所望のグループを各学習装置2に選択させることで、各学習装置2を複数のグループのうちの少なくともいずれかに割り当てる。
なお、各学習装置2をグループに割り当てる方法として第1のグルーピング方法が採用された場合、各学習装置2を複数のグループのうちの少なくともいずれかに割り当てることは、以下のステップS701〜ステップS703の処理により構成される。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
ステップS701では、制御部11は、複数のグループを示すグループリスト123を各学習装置2に配信する。これにより、制御部11は、各学習装置2に対して、グループリスト123に示される複数のグループの中から1つ以上のグループを選択させる。グループリスト123に含まれる各グループは、ローカル学習データ3、学習装置2、学習装置2の利用者等の属性に応じて設定されていてもよい。例えば、外観検査の例では、ライン番号、工場名、企業名等の属性に応じてグループが設定されていてもよい。また、各学習装置2からの要求により、グループリスト123に新たなグループが設定されてもよい。各学習装置2のオペレータは、出力装置25に出力されたグループリスト123を参照し、入力装置24を操作して、グループリスト123の中から1つ以上のグループを選択することができる。また、オペレータは、入力装置24を操作して、グループリスト123に新たなグループを追加することができる。各学習装置2の制御部21は、この操作に応じて、グループ選択の回答をモデル統合装置1に返信する。
ステップS702では、制御部11は、この選択の回答を各学習装置2から取得する。そして、ステップS703では、制御部11は、取得された回答に基づいて、選択された1つ以上のグループに各学習装置2を割り当てる。1つ以上のグループの割り当てが完了すると、制御部11は、第1のグルーピング方法によるグループの割り当てに関する一連の処理を終了する。この第1のグルーピング方法によれば、制御部11は、簡易な方法により各学習装置2をグループ分けすることができる。
なお、この場合、モデル統合装置1は、各学習装置2からの回答に基づいて、各学習装置2の利用する学習モデル4の構造をコントロールすることが可能である。そこで、制御部11は、ステップS702により取得された回答に応じて複数のテンプレート126の中から各学習装置2に利用させるテンプレート126を選択し、選択されたテンプレート126を各学習装置2に送信してもよい。これにより、制御部11は、各学習装置2に対して、ステップS102において、選択されたテンプレート126を利用して、各学習モデル4の構造を決定させてもよい。
(B)第2のグルーピング方法
次に、図18を用いて、第2のグルーピング方法の一例について説明する。図18は、第2のグルーピング方法による各学習装置2に対するグループの割り当てに関する処理手順の一例を示すフローチャートである。第2のグルーピング方法では、制御部11は、各学習モデル4の属性に応じて、各学習装置2を適切なグループに割り当てる。
なお、各学習装置2をグループに割り当てる方法として第2のグルーピング方法が採用された場合、各学習装置2を複数のグループのうちの少なくともいずれかに割り当てることは、以下のステップS801〜ステップS803の処理により構成される。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS801)
ステップS801では、制御部11は、各学習モデル4に習得させる所定の能力に関する属性データを各学習装置2から取得する。属性データを取得する方法は、上記ステップS301において学習結果データ221を収集する方法と同様であってよい。制御部11は、各学習装置2から属性データを直接的に又は間接的に取得してよい。また、制御部11は、上記ステップS301において、学習結果データ221に付随して属性データを取得してもよい。
属性データは、所定の能力に関するあらゆる情報を含んでもよく、例えば、所定の能力の種別を示す情報、学習モデル4に要求される仕様に関する情報、等を含んでもよい。所定の能力の種別を示す情報は、例えば、外観検査、栽培装置の制御等の学習モデル4に獲得させる能力を識別するための情報を含んでもよい。また、学習モデル4に要求される仕様に関する情報は、例えば、精度、演算速度等の学習モデル4の構造に関連する情報を含んでもよい。属性データは、各学習装置2において、ステップS102により、学習モデル4の構造を決定する際に生成されてよい。属性データを取得すると、制御部11は、次のステップS802に処理を進める。
(ステップS802及びステップS803)
ステップS802では、制御部11は、各学習装置2から取得された属性データをクラスタリングする。クラスタリングの方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。クラスタリングには、例えば、k平均法(k-meansクラスタリング)等の公知の方法が採用されてよい。
ステップS803では、制御部11は、クラスタリングの結果に基づいて、各学習装置2を複数のグループのうちの少なくともいずれかに割り当てる。一例として、制御部11は、それぞれから取得された属性データが同一のクラスに割り当てられた複数の学習装置2を同一のグループに割り当てる。この場合、各グループは、属性データのクラスに応じて設定されてよい。また、制御部11は、クラスタリングの結果に基づいて、各学習装置2を2つ以上のグループに割り当ててもよい。
クラスタリングの結果に基づくグループの割り当てが完了すると、制御部11は、第2のグルーピング方法によるグループの割り当てに関する一連の処理を終了する。この第2のグルーピング方法によれば、制御部11は、各学習モデル4の属性に応じて、各学習装置2を適切なグループに割り当てることができる。
(C)第3のグルーピング方法
各学習装置2のグルーピングが変更されると、統合処理を適用する学習済みの学習モデル4も変更される。これにより、統合処理を実行することにより、各学習済みの学習モデル4に習得させた能力の向上する度合いが相違し得る。そこで、第3のグルーピング方法では、上記統合範囲41を決定する第3の方法と同様に、制御部11は、ステップS303の統合処理を実行する前に比べて、統合処理を実行した後に各学習済みの学習モデル4の有する所定の能力が向上するように、複数のグループに対する各学習装置2の割当を最適化する。最適化の方法は、上記統合範囲41を決定する第3の方法と同様に、実施の形態に応じて適宜決定されてよい。
図19は、第3のグルーピング方法による各学習装置2に対するグループの割り当てに関する処理手順の一例を示すフローチャートである。なお、各学習装置2に対するグループの割り当てを最適化することは、以下のステップS904〜ステップS906により構成される。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS901)
ステップS901では、制御部11は、グルーピング部116として動作し、複数のグループに対する各学習装置2の割り当ての異なる複数の暫定的なグループ分け(以下、「暫定グループ分け」とも記載する)を行う。各暫定的なグループ分けは、適宜決定されてよい。例えば、制御部11は、複数のグループのうちのいずれかのグループに各学習装置2をランダムに割り当てることで、複数の暫定グループ分けを行ってもよい。また、例えば、制御部11は、上記第1のグルーピング方法及び第2のグルーピング方法の少なくともいずれかの方法により、暫定グループ分けを行ってもよい。割り当ての異なる複数の暫定グループ分けを行うと、制御部11は、次のステップS902に処理を進める。なお、制御部11は、ステップS901の前又は後に、上記ステップS301を実行することで、各学習済みの学習モデル4を各学習装置2から収集する。
(ステップS902)
ステップS902では、制御部11は、範囲調整部112として動作し、暫定グループ分け毎に、同一のグループ内で、収集された各学習済みの学習モデル4に含まれる共通部分40内において統合範囲41を決定する。ステップS902において統合範囲41を決定する方法は、上記ステップS302と同様であってよい。暫定グループ分け毎に同一のグループ内で統合範囲41を決定すると、制御部11は、次のステップS903に処理を進める。
(ステップS903)
ステップS903では、制御部11は、統合処理部113として動作し、暫定グループ分け毎に、同一のグループ内で、各学習済みの学習モデル4に対して、決定された統合範囲41に反映された機械学習の結果を統合する統合処理を実行する。ステップS903における統合処理は、上記ステップS303と同様であってよい。暫定グループ分け毎に同一のグループ内で統合処理を実行すると、制御部11は、次のステップS904に処理を進める。
(ステップS904)
ステップS904では、制御部11は、グルーピング部116として動作し、暫定グループ分け毎に、同一のグループ内で、統合処理を実行した後の各学習済みの学習モデル4が評価用サンプル129に対して所定の能力を発揮した結果を取得する。ステップS904において各結果を取得する方法は、上記ステップS603と同様であってよい。すなわち、制御部11は、暫定グループ分け毎に、同一のグループ内で、統合処理後の各学習済みの学習モデル4の入力層51に入力データ1291を入力し、入力側から順に各層51〜56に含まれる各ニューロンの発火判定を行う。これにより、制御部11は、暫定グループ分け毎に、同一のグループ内で、入力データ1291に対して所定の能力を発揮した結果に対応する出力値を統合処理後の各学習済みの学習モデル4の出力層56から取得する。各結果を取得すると、制御部11は、次のステップS905に処理を進める。なお、以下のステップ905以降の各処理についても、制御部11は、グルーピング部116として動作し、各処理を実行する。
(ステップS905)
ステップS905では、制御部11は、取得した各結果に基づいて、同一のグループ内で、統合処理を実行した後の各学習済みの学習モデル4の有する所定の能力が最も高い暫定グループ分けを特定する。各暫定グループ分けに対する統合処理により各グループ内で得られた各学習済みの学習モデル4の所定の能力を比較する方法は、上記ステップS604と同様であってよい。すなわち、制御部11は、暫定グループ分け毎に、同一のグループ内で、各学習済みの学習モデル4から得られた出力値と正解データ1292とを照合することで、統合処理後の各学習済みの学習モデル4の入力データ1291に対する正答率を各結果から算出してもよい。次に、制御部11は、暫定グループ分け毎に各グループで算出された各学習済みの学習モデル4の正答率を比較してもよい。そして、この比較の結果に基づいて、制御部11は、正答率の最も高い各学習済みの学習モデル4を与えた暫定グループ分けを特定してもよい。これにより、制御部11は、同一のグループ内で、統合処理を実行した後の各学習済みの学習モデル4の有する所定の能力が最も高い暫定グループ分けを特定することができる。所定の能力の最も高い統合処理後の各学習済みの学習モデル4を与える暫定グループ分けを特定すると、制御部11は、次のステップS906に処理を進める。
(ステップS906)
ステップS906では、制御部11は、特定された暫定グループ分けを各学習装置2のグループ分けとして採用する。すなわち、制御部11は、特定された暫定グループ分けに従って、複数のグループのうちの少なくともいずれかに各学習装置2を割り当てる。各学習装置2の割り当てが完了すると、制御部11は、第3のグルーピング方法によるグループの割り当てに関する一連の処理を終了する。
なお、この第3のグルーピング方法を採用する場合、制御部11は、所定の能力が最も高い統合処理後の各学習済みの学習モデル4を与える暫定グループ分けに対してステップS902を実行した結果をステップS302の実行結果として利用する。また、制御部11は、当該暫定グループ分けに対してステップS903を実行した結果をステップS303の実行結果として利用する。
これにより、制御部11は、複数のグループ分けの候補(暫定グループ分け)の中から統合処理により所定の能力が向上する候補を各学習装置2のグループ分けとして採用することができる。したがって、この第3のグルーピング方法によれば、統合処理により所定の能力が最も向上するような最適なグループ分けを行うことができる。
なお、暫定グループ分けに含まれる学習装置2の中に、統合処理後に所定の能力が向上する学習装置2と所定の能力が低下する学習装置2が混在する場合、この暫定グループ分けの取り扱いは、実施の形態に応じて適宜選択されてよい。例えば、制御部11は、当該暫定グループ分けを採用せずに、異なる暫定グループ分けを各学習装置2のグループ分けに採用してもよい。また、例えば、制御部11は、当該暫定グループ分けを各学習装置2のグループ分けと採用すると共に、統合処理後に所定の能力が向上する学習装置2には統合処理の結果43を配信し、所定の能力が低下する学習装置2には統合処理の結果43を配信しないようにしてもよい。
以上の3つの方法の少なくともいずれかの方法を採用することで、制御部11は、各学習装置2を適切にグループ分けすることができる。ただし、グルーピングの方法は、これらの例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、制御部11は、入力装置14を介したオペレータによるグループ分けの指定を受け付けてもよい。この場合、制御部11は、オペレータの指定に応じて各学習装置2のグループ分けを行ってもよい。
なお、各学習装置2は、2つ以上のグループに割り当てられてもよい。この場合、2つ以上のグループに割り当てられた学習装置2は、いずれかのグループ内で実行された統合処理の結果43を、自身の保持する学習済みの学習モデル4の統合範囲41に選択的に適用してよい。例えば、当該学習装置2は、各グループ内で得られた統合処理の結果から所定の能力が最も向上する統合処理の結果を選択し、選択された統合処理の結果を、自身の保持する学習済みの学習モデル4の統合範囲41に適用してもよい。
[特徴]
以上のとおり、本実施形態に係るモデル統合装置1は、ローカル学習データ3そのものを集結するのではなく、ステップS301及びステップS303の処理により、各学習装置2により構築された各学習済みの学習モデル4を収集し、収集された各学習済みの学習モデル4に対して統合処理を実行する。そのため、モデル統合装置1にかかる通信コスト及び計算コストを抑えることができる。また、ステップS303における統合処理は、各学習済みの学習モデル4に含まれる共通部分40に設定された統合範囲41に対して実行されるに過ぎないため、各学習モデル4の構造が相違していることが許容される。つまり、ローカル学習データ3の形式及び各学習モデル4の構造が不一致であったとしても、ステップS303における各学習済みの学習モデル4に対する統合処理は実行可能である。
そして、この統合処理によって、各学習済みの学習モデル4に反映された機械学習の結果を他の学習済みの学習モデル4に適切に反映させることができる。これにより、統合処理後の各学習済みの学習モデル4は、他の学習済みの学習モデル4における機械学習の結果に基づいて、各学習装置2単独では得られないようなデータに対しても、所定の能力を適切に発揮することができるようになる。したがって、本実施形態に係るモデル統合装置1によれば、所定の能力のより高い学習済みの学習モデル4を構築する環境を実現することができる。更に、本実施形態に係るモデル統合装置1によれば、ステップS302及びグルーピングにより、最適な統合範囲41及び最適なグループ分けを決定することで、所定の能力のより高い学習済みの学習モデル4を得ることができる。
§4 変形例
以上、本発明の実施の形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。例えば、以下のような変更が可能である。なお、以下では、上記実施形態と同様の構成要素に関しては同様の符号を用い、上記実施形態と同様の点については、適宜説明を省略した。以下の変形例は適宜組み合わせ可能である。
<4.1>
上記実施形態に係るモデル統合装置1は、センサSにより得られたセンシングデータに含まれる特徴を推論する場面に適用されている。しかしながら、上記実施形態の適用範囲は、このような例に限定される訳ではない。上記実施形態に係るモデル統合装置1は、機械学習により所定の能力を学習モデルに習得させるあらゆる場面に適用可能である。以下、適用場面を限定した5つの変形例を例示する。
(A)外観検査の場面
図20は、第1変形例に係る検査システム100Aの適用場面の一例を模式的に例示する。本変形例は、生産ラインで生産される製品RAの外観検査を行う場面に上記実施形態に係るモデル統合装置1を適用した例である。図20に示されるとおり、本変形例に係る検査システム100Aは、モデル統合装置1及び複数の検査装置2Aを備えている。上記実施形態と同様に、モデル統合装置1及び各検査装置2Aは、ネットワークを介して互いに接続されてよい。
各検査装置2Aは、上記各学習装置2に対応する。取り扱うデータが異なる点を除き、各検査装置2Aは、上記各学習装置2と同様に構成されてよい。本変形例では、各検査装置2Aは、カメラSAに接続される。各検査装置2Aは、カメラSAにより製品RAを撮影することにより、当該製品RAの写る画像データを取得する。カメラSAの種類は、特に限定されなくてもよい。カメラSAは、例えば、RGB画像を取得するよう構成された一般的なデジタルカメラ、深度画像を取得するように構成された深度カメラ、赤外線量を画像化するように構成された赤外線カメラ等であってよい。各検査装置2Aは、得られた画像データに基づいて、製品RAの状態を検査する(つまり、製品RAの良否を判定する)。
<検査装置のハードウェア構成>
図21は、本変形例に係る各検査装置2Aのハードウェア構成の一例を模式的に例示する。図21に示されるとおり、本変形例に係る各検査装置2Aは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。各検査装置2Aは、外部インタフェース27を介してカメラSAに接続される。ただし、各検査装置2Aのハードウェア構成は、このような例に限定されなくてもよい。各検査装置2Aの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各検査装置2Aは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC、PLC(programmable logic controller)等であってもよい。
本変形例に係る各検査装置2Aの記憶部22は、学習プログラム82A、検査プログラム83A、ローカル学習データ3A、学習結果データ221A等の各種情報を記憶する。学習プログラム82A、検査プログラム83A、ローカル学習データ3A、及び学習結果データ221Aは、上記実施形態に係る学習プログラム82、推論プログラム83、ローカル学習データ3、及び学習結果データ221に対応する。学習プログラム82A、検査プログラム83A、及びローカル学習データ3Aのうちの少なくともいずれかは記憶媒体92に記憶されていてもよい。また、各検査装置2Aは、記憶媒体92から、学習プログラム82A、検査プログラム83A、及びローカル学習データ3Aのうちの少なくともいずれかを取得してもよい。
<学習処理>
図22Aは、本変形例に係る各検査装置2Aの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各検査装置2Aの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Aの実行により実現される。図22Aに示されるとおり、取り扱うデータがセンシングデータから画像データに置き換わる点を除き、各検査装置2Aの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各検査装置2Aは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
すなわち、ステップS101では、各検査装置2Aの制御部21は、学習データ収集部211Aとして動作し、学習モデル4Aの機械学習に利用するローカル学習データ3Aを収集する。本変形例では、学習モデル4Aは、上記実施形態に係る学習モデル4と同様に、ニューラルネットワークにより構成される。また、ローカル学習データ3Aは、画像データ31A及び正解データ32Aの組み合わせをそれぞれ含む複数の学習データセット30Aにより構成される。画像データ31Aは、訓練データ31に対応する。
各学習データセット30Aを取得する方法は、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、画像データ31Aは、シミ、汚れ、傷等の欠陥を含む又は含まない製品RAをカメラにより様々な条件で撮影することで画像データ31Aが得られてよい。そして、得られた画像データ31Aに対して、当該画像データ31Aに写る製品RAの状態(正解)を示す正解データ32Aを関連付ける。これにより、各学習データセット30Aが生成されてよい。
ステップS102では、制御部21は、構造決定部212として動作し、学習モデル4Aの構造を決定する。ステップS103では、制御部21は、学習処理部213として動作し、収集されたローカル学習データ3Aを利用した機械学習を実行する。すなわち、制御部11は、各学習データセット30Aについて、画像データ31Aが入力されると、対応する正解データ32Aと一致する出力値を出力するように学習モデル4Aを訓練する。これにより、制御部11は、画像データ31Aに写る製品RAの状態を判定する能力を獲得した学習済みの学習モデル4Aを構築することができる。ステップS104では、制御部21は、保存処理部214として動作し、機械学習により構築された学習済みの学習モデル4Aの構造及び演算パラメータを示す情報を学習結果データ221Aとして生成する。そして、制御部21は、生成された学習結果データ221Aを所定の記憶領域に保存する。
<検査処理>
図22Bは、本変形例に係る各検査装置2Aの検査処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各検査装置2Aの検査処理に関するソフトウェア構成は、制御部21による検査プログラム83Aの実行により実現される。図22Bに示されるとおり、取り扱うデータがセンシングデータから画像データに置き換わる点を除き、各検査装置2Aの検査処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各検査装置2Aは、上記各学習装置2と同様に、検査処理に関する一連の処理を実行する。
すなわち、ステップS201では、制御部21は、対象データ取得部216として動作し、外観検査の対象となる製品RAの写る対象画像データ225AをカメラSAから取得する。ステップS202では、制御部21は、検査部217Aとして動作し、学習済みの学習モデル4Aを利用して、対象画像データ225Aに写る製品RAの状態(良否)を判定する。具体的には、制御部21は、学習結果データ221Aを参照して、学習済みの学習モデル4Aの設定を行う。次に、制御部21は、取得された対象画像データ225Aを学習済みの学習モデル4Aに入力し、入力側から順に各層に含まれる各ニューロンの発火判定を行う。これにより、制御部21は、対象画像データ225Aに写る製品RAの状態を推定した結果に対応する出力値を学習済みの学習モデル4Aから取得する。なお、検査部217Aは、上記推論部217に対応する。検査部217Aは、学習結果データ221Aを保持することで、学習済みの学習モデル4Aを含んでいる。
ステップS203では、制御部21は、出力部218として動作し、製品RAの状態を推定した結果に関する情報を出力する。出力先及び出力情報はそれぞれ、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、製品RAの状態を判定した結果をそのまま出力装置25に出力してもよい。また、例えば、制御部21は、製品RAに欠陥が含まれる場合に、そのことを知らせるための警告を出力装置25に出力してもよい。また、例えば、各検査装置2Aが製品RAを搬送するコンベア装置(不図示)に接続される場合に、製品RAの状態を判定した結果に基づいて、欠陥のない製品RAと欠陥のある製品RAとを別のラインで搬送されるようにコンベア装置を制御してもよい。
<モデル統合>
各学習済みの学習モデル4Aは、上記学習モデル4と同様に、共通の構造を有する共通部分を含むように構成される。また、各学習済みの学習モデル4Aのうちのいずれかの組み合わせは、共通部分以外の部分において異なる構造を有する。このような各学習済みの学習モデル4Aに対して、モデル統合装置1は、上記実施形態と同様に、上記ステップS301〜ステップS304の処理を実行する。
すなわち、ステップS301では、モデル統合装置1は、各学習済みの学習モデル4Aを各検査装置2Aから収集する。ステップS302では、モデル統合装置1は、収集された各学習済みの学習モデル4Aに含まれる共通部分内において統合範囲を決定する。ステップS303では、モデル統合装置1は、各学習済みの学習モデル4Aに対して、共通部分内に設定された統合範囲に反映された機械学習の結果を統合する統合処理を実行する。ステップS304では、モデル統合装置1は、統合処理の結果を各検査装置2Aに配信し、各検査装置2Aに対して、各学習済みの学習モデル4A内の統合範囲に統合処理の結果を適用させることで、各検査装置2Aの保持する学習済みの学習モデル4Aを更新する。
本変形例によれば、画像データに写る製品の状態を検査する場面において、各学習済みの学習モデル4Aに反映された機械学習の結果を他の学習済みの学習モデル4Aに適切に反映させることができる。これにより、統合処理後の各学習済みの学習モデル4Aは、他の学習済みの学習モデル4Aにおける機械学習の結果に基づいて、各検査装置2A単独では得られないような対象画像データ225Aに対しても、製品RAの状態を適切に推定することができるようになる。例えば、ある検査装置2Aにおいて、経験のない欠陥が発生した場面を想定する。この場面において、他の検査装置2Aでその欠陥の経験があれば、当該他の検査装置2Aで構築された学習済みの学習モデル4Aを介して、当該検査装置2Aの学習済みの学習モデル4Aにその経験を反映させることができる。そのため、当該検査装置2Aは、統合処理後の学習済みの学習モデル4Aを利用することで、その経験のない欠陥を製品RAが含むことを推定することができる。したがって、本変形例によれば、製品RAの状態を推定する能力のより高い学習済みの学習モデル4Aを構築することができる。
なお、本変形例において、製品RAの状態を判定するのに利用するデータは、画像データに限られなくてもよい。例えば、画像データと共に又は代わりに、マイクにより得られた音データ、エンコーダにより得られた測定データ等が利用されてもよい。
(B)栽培装置を制御する場面
図23は、第2変形例に係る制御システム100Bの適用場面の一例を模式的に例示する。本変形例は、栽培状況に応じて栽培装置RBの動作を制御する場面に上記実施形態に係るモデル統合装置1を適用した例である。図23に示されるとおり、本変形例に係る制御システム100Bは、モデル統合装置1及び複数の制御装置2Bを備えている。上記実施形態と同様に、モデル統合装置1及び各制御装置2Bは、ネットワークを介して互いに接続されてよい。
各制御装置2Bは、上記各学習装置2に対応する。取り扱うデータが異なる点を除き、各制御装置2Bは、上記各学習装置2と同様に構成されてよい。本変形例では、各制御装置2Bは、栽培装置RB及びセンサSBに接続される。
栽培装置RBは、植物GBの生育環境を制御して、植物GBを栽培するように構成される。栽培装置RBは、植物GBの生育環境を制御可能であれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。生育環境は、植物GBを生育する状況に関し、例えば、植物GBに光を照射する時間、植物GB周囲の温度、植物GBに与える水の量等である。栽培装置RBは、例えば、カーテン装置、照明装置、空調設備、散水装置等であってよい。カーテン装置は、建物の窓に取り付けられたカーテンを開閉するように構成される。照明装置は、例えば、LED(light emitting diode)照明、蛍光灯等である。空調設備は、例えば、エアコンディショナ等である。散水装置は、例えば、スプリンクラ等である。カーテン装置及び照明装置は、植物GBに光を照射する時間を制御するために利用される。空調設備は、植物GB周囲の温度を制御するために利用される。散水装置は、植物GBに与える水の量を制御するために利用される。
各制御装置2Bは、センサSBにより植物GBの栽培状況をセンシングすることにより、植物GBの栽培状況に関する状況データとしてセンシングデータをセンサSBから取得する。栽培状況は、植物GBを栽培するあらゆる要素に関し、例えば、栽培時点までの生育環境、生育状態等により特定されてよい。生育状態は、例えば、植物GBの成長度等により規定されてよい。センサSBは、植物GBの栽培状況をセンシング可能であれば、その種類は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。センサSBは、例えば、光度計、温度計、湿度計、カメラ等であってよい。カメラは、例えば、一般的なカメラ、深度カメラ、赤外線カメラ等であってよい。各制御装置2Bは、得られた状況データに基づいて、植物GBの栽培状況を特定し、特定された栽培状況に適した生育環境を実現するように栽培装置RBの動作を制御する。
<制御装置のハードウェア構成>
図24は、本変形例に係る各制御装置2Bのハードウェア構成の一例を模式的に例示する。図24に示されるとおり、本変形例に係る各制御装置2Bは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。各制御装置2Bは、外部インタフェース27を介して栽培装置RB及びセンサSBに接続される。ただし、各制御装置2Bのハードウェア構成は、このような例に限定されなくてもよい。各制御装置2Bの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各制御装置2Bは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC、PLC等であってもよい。
本変形例に係る各制御装置2Bの記憶部22は、学習プログラム82B、制御プログラム83B、ローカル学習データ3B、学習結果データ221B等の各種情報を記憶する。学習プログラム82B、制御プログラム83B、ローカル学習データ3B、及び学習結果データ221Bは、上記実施形態に係る学習プログラム82、推論プログラム83、ローカル学習データ3、及び学習結果データ221に対応する。学習プログラム82B、制御プログラム83B、及びローカル学習データ3Bのうちの少なくともいずれかは記憶媒体92に記憶されていてもよい。また、各制御装置2Bは、記憶媒体92から、学習プログラム82B、制御プログラム83B、及びローカル学習データ3Bのうちの少なくともいずれかを取得してもよい。
<学習処理>
図25Aは、本変形例に係る各制御装置2Bの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各制御装置2Bの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Bの実行により実現される。図25Aに示されるとおり、取り扱うデータがセンシングデータから植物GBの栽培状況に関する状況データに置き換わる点を除き、各制御装置2Bの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各制御装置2Bは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
すなわち、ステップS101では、各制御装置2Bの制御部21は、学習データ収集部211Bとして動作し、学習モデル4Bの機械学習に利用するローカル学習データ3Bを収集する。本変形例では、学習モデル4Bは、上記実施形態に係る学習モデル4と同様に、ニューラルネットワークにより構成される。また、ローカル学習データ3Bは、状況データ31B及び正解データ32Bの組み合わせをそれぞれ含む複数の学習データセット30Bにより構成される。状況データ31Bは、訓練データ31に対応する。
各学習データセット30Bを取得する方法は、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、状況データ31Bは、植物GBの栽培状況をセンサにより様々な条件でセンシングすることで得られてよい。そして、得られた状況データ31Bに対して、当該状況データ31Bにより示される栽培状況に応じた生育環境の制御を栽培装置RBに指令する制御指令(正解)を示す正解データ32Bを関連付ける。制御指令(正解)は、例えば、植物GBを栽培した実績、オペレータの入力等により与えられてよい。これにより、各学習データセット30Bが生成されてよい。
ステップS102では、制御部21は、構造決定部212として動作し、学習モデル4Bの構造を決定する。ステップS103では、制御部21は、学習処理部213として動作し、収集されたローカル学習データ3Bを利用した機械学習を実行する。すなわち、制御部11は、各学習データセット30Bについて、状況データ31Bが入力されると、対応する正解データ32Bと一致する出力値を出力するように学習モデル4Bを訓練する。これにより、制御部11は、植物GBの栽培状況に応じて栽培装置RBに与える制御指令を決定する能力を獲得した学習済みの学習モデル4Bを構築することができる。ステップS104では、制御部21は、保存処理部214として動作し、機械学習により構築された学習済みの学習モデル4Bの構造及び演算パラメータを示す情報を学習結果データ221Bとして生成する。そして、制御部21は、生成された学習結果データ221Bを所定の記憶領域に保存する。
<制御処理>
図25Bは、本変形例に係る各制御装置2Bの制御処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各制御装置2Bの制御処理に関するソフトウェア構成は、制御部21による制御プログラム83Bの実行により実現される。図25Bに示されるとおり、取り扱うデータがセンシングデータから状況データに置き換わる点を除き、各制御装置2Bの制御処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各制御装置2Bは、上記各学習装置2と同様に、制御処理に関する一連の処理を実行する。
すなわち、ステップS201では、制御部21は、対象データ取得部216として動作し、生育環境を制御する対象となる植物GBの栽培状況に関する対象状況データ225BをセンサSBから取得する。ステップS202では、制御部21は、指令決定部217Bとして動作し、学習済みの学習モデル4Bを利用して、対象状況データ225Bから特定される植物GBの栽培状況に応じて栽培装置RBに与える制御指令を決定する。具体的には、制御部21は、学習結果データ221Bを参照して、学習済みの学習モデル4Bの設定を行う。次に、制御部21は、取得された対象状況データ225Bを学習済みの学習モデル4Bに入力し、入力側から順に各層に含まれる各ニューロンの発火判定を行う。これにより、制御部21は、対象状況データ225Bから特定される植物GBの栽培状況に応じて栽培装置RBに与える制御指令を決定した結果に対応する出力値を学習済みの学習モデル4Bから取得する。なお、指令決定部217Bは、上記推論部217に対応する。指令決定部217Bは、学習結果データ221Bを保持することで、学習済みの学習モデル4Bを含んでいる。
ステップS203では、制御部21は、出力部218として動作し、栽培装置RBに与える制御指定を決定した結果に関する情報を出力する。出力先及び出力情報はそれぞれ、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、決定された制御指令を栽培装置RBに与えて、栽培装置RBの動作を制御してもよい。また、例えば、制御部21は、決定された制御指令を示す情報を出力装置25に出力し、植物GBの管理者に栽培装置RBの動作を制御するように促してもよい。この場合、制御装置2Bは、栽培装置RBに接続されていなくてもよい。
<モデル統合>
各学習済みの学習モデル4Bは、上記学習モデル4と同様に、共通の構造を有する共通部分を含むように構成される。また、各学習済みの学習モデル4Bのうちのいずれかの組み合わせは、共通部分以外の部分において異なる構造を有する。このような各学習済みの学習モデル4Bに対して、モデル統合装置1は、上記実施形態と同様に、上記ステップS301〜ステップS304の処理を実行する。
すなわち、ステップS301では、モデル統合装置1は、各学習済みの学習モデル4Bを各制御装置2Bから収集する。ステップS302では、モデル統合装置1は、収集された各学習済みの学習モデル4Bに含まれる共通部分内において統合範囲を決定する。ステップS303では、モデル統合装置1は、各学習済みの学習モデル4Bに対して、共通部分内に設定された統合範囲に反映された機械学習の結果を統合する統合処理を実行する。ステップS304では、モデル統合装置1は、統合処理の結果を各制御装置2Bに配信し、各制御装置2Bに対して、各学習済みの学習モデル4B内の統合範囲に統合処理の結果を適用させることで、各制御装置2Bの保持する学習済みの学習モデル4Bを更新する。
本変形例によれば、栽培装置の動作を制御する場面において、各学習済みの学習モデル4Bに反映された機械学習の結果を他の学習済みの学習モデル4Bに適切に反映させることができる。これにより、統合処理後の各学習済みの学習モデル4Bは、他の学習済みの学習モデル4Bにおける機械学習の結果に基づいて、各制御装置2B単独では得られないような栽培状況に対しても、栽培装置RBの動作を適切に制御することができるようになる。例えば、温暖な気候の地域で植物GBを生育する制御装置2Bと、寒冷な気候の地域で植物GBを生育する他の制御装置2Bとが存在すると想定する。この場面では、温暖な気候の地域の制御装置2Bでは、寒冷な気候の地域で発生し得る栽培状況に応じて、栽培装置RBの動作を制御し、植物GBを生育する経験が殆どないと想定される。そのため、制御装置2B単独では、そのような経験が殆ど得られないため、異常気象等により温暖な気候の地域で寒冷な気候の地域で発生するような栽培状況になった際に、制御装置2Bは、栽培装置RBを適切に制御することができない可能性がある。これに対して、本変形例によれば、他の制御装置2Bにおいてその経験があれば、当該他の制御装置2Bで構築された学習済みの学習モデル4Bを介して、当該制御装置2Bの学習済みの学習モデル4Bにその経験を反映させることができる。そのため、当該制御装置2Bは、統合処理後の学習済みの学習モデル4Bを利用することで、その地域で殆ど経験が得られないような栽培状況に対しても、栽培装置RBを適切に制御することができる。したがって、本変形例によれば、栽培装置RBを適切に制御する能力のより高い学習済みの学習モデル4Bを構築することができる。
(C)ドライバモニタリングの場面
図26は、第3変形例に係る監視システム100Cの適用場面の一例を模式的に例示する。本変形例は、車両を運転する運転者RCの状態を監視する場面に上記実施形態に係るモデル統合装置1を適用した例である。図26に示されるとおり、本変形例に係る監視システム100Cは、モデル統合装置1及び複数の監視装置2Cを備えている。上記実施形態と同様に、モデル統合装置1及び各監視装置2Cは、ネットワークを介して互いに接続されてよい。
各監視装置2Cは、上記各学習装置2に対応する。取り扱うデータが異なる点を除き、各監視装置2Cは、上記各学習装置2と同様に構成されてよい。各監視装置2Cは、運転者RCを観測することで得られたデータに基づいて、当該運転者RCの状態を推定する。推定に利用するデータは、運転者RCの状態に関するものであれば、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。推定に利用するデータは、例えば、運転者RCのバイタルデータ、運転者RCの写り得る画像データ等であってよい。本変形例では、各監視装置2Cは、運転者RCを撮影可能に配置されたカメラSCに接続される。カメラSCは、例えば、一般的なカメラ、深度カメラ、赤外線カメラ等であってよい。各監視装置2Cは、カメラSCから得られた画像データに基づいて、運転者RCの状態を推定する。推定の対象となる運転者RCの状態は、実施の形態に応じて適宜決定されてよい。推定の対象となる運転者RCの状態は、実施の形態に応じて適宜決定されてよく、例えば、運転者RCの眠気の度合いを示す眠気度、運転者RCの疲労の度合いを示す疲労度、運転者RCの運転に対する余裕の度合いを示す余裕度、又はこれらの組み合わせを含んでもよい。
<監視装置のハードウェア構成>
図27は、本変形例に係る各監視装置2Cのハードウェア構成の一例を模式的に例示する。図27に示されるとおり、本変形例に係る各監視装置2Cは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。各監視装置2Cは、外部インタフェース27を介してカメラSCに接続される。ただし、各監視装置2Cのハードウェア構成は、このような例に限定されなくてもよい。各監視装置2Cの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各監視装置2Cは、提供されるサービス専用に設計された情報処理装置の他、汎用のコンピュータ、スマートフォンを含む携帯電話、車載装置等であってもよい。
本変形例に係る各監視装置2Cの記憶部22は、学習プログラム82C、監視プログラム83C、ローカル学習データ3C、学習結果データ221C等の各種情報を記憶する。学習プログラム82C、監視プログラム83C、ローカル学習データ3C、及び学習結果データ221Cは、上記実施形態に係る学習プログラム82、推論プログラム83、ローカル学習データ3、及び学習結果データ221に対応する。学習プログラム82C、監視プログラム83C、及びローカル学習データ3Cのうちの少なくともいずれかは記憶媒体92に記憶されていてもよい。また、各監視装置2Cは、記憶媒体92から、学習プログラム82C、監視プログラム83C、及びローカル学習データ3Cのうちの少なくともいずれかを取得してもよい。
<学習処理>
図28Aは、本変形例に係る各監視装置2Cの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各監視装置2Cの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Cの実行により実現される。図28Aに示されるとおり、取り扱うデータがセンシングデータから運転者RCの写り得る画像データに置き換わる点を除き、各監視装置2Cの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各監視装置2Cは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
すなわち、ステップS101では、各監視装置2Cの制御部21は、学習データ収集部211Cとして動作し、学習モデル4Cの機械学習に利用するローカル学習データ3Cを収集する。本変形例では、学習モデル4Cは、上記実施形態に係る学習モデル4と同様に、ニューラルネットワークにより構成される。また、ローカル学習データ3Cは、画像データ31C及び正解データ32Cの組み合わせをそれぞれ含む複数の学習データセット30Cにより構成される。画像データ31Cは、訓練データ31に対応する。
各学習データセット30Cを取得する方法は、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、画像データ31Cは、車両を運転する被験者(運転者)をカメラにより様々な状況で撮影することで得られてもよい。そして、得られた画像データ31Cに対して、当該状況における被験者の状態(正解)を示す正解データ32Cを関連付ける。被験者の状態(正解)は、例えば、カメラ以外の他のセンサにより得られたデータ、オペレータの入力等により与えられてよい。これにより、各学習データセット30Cが生成されてよい。
ステップS102では、制御部21は、構造決定部212として動作し、学習モデル4Cの構造を決定する。ステップS103では、制御部21は、学習処理部213として動作し、収集されたローカル学習データ3Cを利用した機械学習を実行する。すなわち、制御部11は、各学習データセット30Cについて、画像データ31Cが入力されると、対応する正解データ32Cと一致する出力値を出力するように学習モデル4Cを訓練する。これにより、制御部11は、画像データ31Cに写る運転者の状態を推定する能力を獲得した学習済みの学習モデル4Cを構築することができる。ステップS104では、制御部21は、保存処理部214として動作し、機械学習により構築された学習済みの学習モデル4Cの構造及び演算パラメータを示す情報を学習結果データ221Cとして生成する。そして、制御部21は、生成された学習結果データ221Cを所定の記憶領域に保存する。
<監視処理>
図28Bは、本変形例に係る各監視装置2Cの監視処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各監視装置2Cの監視処理に関するソフトウェア構成は、制御部21による監視プログラム83Cの実行により実現される。図28Bに示されるとおり、取り扱うデータがセンシングデータから画像データに置き換わる点を除き、各監視装置2Cの監視処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各監視装置2Cは、上記各学習装置2と同様に、監視処理に関する一連の処理を実行する。
すなわち、ステップS201では、制御部21は、対象データ取得部216として動作し、運転者RCの写り得る対象画像データ225CをカメラSCから取得する。ステップS202では、制御部21は、監視部217Cとして動作し、学習済みの学習モデル4Cを利用して、対象画像データ225Cに写る運転者RCの状態を推定する。具体的には、制御部21は、学習結果データ221Cを参照して、学習済みの学習モデル4Cの設定を行う。次に、制御部21は、取得された対象画像データ225Cを学習済みの学習モデル4Cに入力し、入力側から順に各層に含まれる各ニューロンの発火判定を行う。これにより、制御部21は、対象画像データ225Cに写る運転者RCの状態を推定した結果に対応する出力値を学習済みの学習モデル4Cから取得する。なお、監視部217Cは、上記推論部217に対応する。監視部217Cは、学習結果データ221Cを保持することで、学習済みの学習モデル4Cを含んでいる。
ステップS203では、制御部21は、出力部218として動作し、運転者RCの状態を推定した結果に関する情報を出力する。出力先及び出力情報はそれぞれ、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、運転者RCの状態を推定した結果をそのまま出力装置25に出力してもよい。
また、例えば、制御部21は、運転者RCの状態に応じて、警告等の特定のメッセージを出力装置25に出力してもよい。一例として、運転者RCの状態として、眠気度及び疲労度の少なくとも一方を推定した場合、制御部21は、眠気度及び疲労度の少なくとも一方が閾値を超えるか否かを判定してもよい。閾値は適宜設定されてよい。そして、眠気度及び疲労度の少なくとも一方が閾値を超えている場合に、制御部21は、駐車場等に停車し、休憩を取るように運転者RCに促す警告を出力装置25に出力してもよい。
また、例えば、車両が自動運転動作可能に構成されている場合、制御部21は、運転者RCの状態を推定した結果に基づいて、車両の自動運転の動作を制御してもよい。一例として、車両が、システムにより車両の走行を制御する自動運転モード及び運転者RCの操舵により車両の走行を制御する手動運転モードの切り替えが可能に構成されていると想定する。
このケースにおいて、自動運転モードで車両が走行しており、自動運転モードから手動運転モードへの切り替えを運転者RC又はシステムから受け付けた際に、制御部21は、運転者RCの推定された余裕度が閾値を超えているか否かを判定してもよい。そして、運転者RCの余裕度が閾値を超えている場合に、制御部21は、自動運転モードから手動運転モードへの切り替えを許可してもよい。一方、運転者RCの余裕度が閾値以下である場合には、制御部21は、自動運転モードから手動運転モードへの切り替えを許可せず、自動運転モードでの走行を維持してもよい。
また、手動運転モードで車両が走行している際に、制御部21は、眠気度及び疲労度の少なくとも一方が閾値を超えるか否かを判定してもよい。そして、眠気度及び疲労度の少なくとも一方が閾値を超えている場合に、制御部21は、手動運転モードから自動運転モードに切り替えて、駐車場等の安全な場所に停車するように指示する指令を車両のシステムに送信してもよい。一方で、そうではない場合には、制御部21は、手動運転モードによる車両の走行を維持してもよい。
また、手動運転モードで車両が走行している際に、制御部21は、余裕度が閾値以下であるか否かを判定してもよい。そして、余裕度が閾値以下である場合に、制御部21は、減速する指令を車両のシステムに送信してもよい。一方で、そうではない場合には、制御部21は、運転者RCの操作による車両の走行を維持してもよい。
<モデル統合>
各学習済みの学習モデル4Cは、上記学習モデル4と同様に、共通の構造を有する共通部分を含むように構成される。また、各学習済みの学習モデル4Cのうちのいずれかの組み合わせは、共通部分以外の部分において異なる構造を有する。このような各学習済みの学習モデル4Cに対して、モデル統合装置1は、上記実施形態と同様に、上記ステップS301〜ステップS304の処理を実行する。
すなわち、ステップS301では、モデル統合装置1は、各学習済みの学習モデル4Cを各監視装置2Cから収集する。ステップS302では、モデル統合装置1は、収集された各学習済みの学習モデル4Cに含まれる共通部分内において統合範囲を決定する。ステップS303では、モデル統合装置1は、各学習済みの学習モデル4Cに対して、共通部分内に設定された統合範囲に反映された機械学習の結果を統合する統合処理を実行する。ステップS304では、モデル統合装置1は、統合処理の結果を各監視装置2Cに配信し、各監視装置2Cに対して、各学習済みの学習モデル4C内の統合範囲に統合処理の結果を適用させることで、各監視装置2Cの保持する学習済みの学習モデル4Cを更新する。
本変形例によれば、運転者の状態を監視する場面において、各学習済みの学習モデル4Cに反映された機械学習の結果を他の学習済みの学習モデル4Cに適切に反映させることができる。これにより、統合処理後の各学習済みの学習モデル4Cは、他の学習済みの学習モデル4Cにおける機械学習の結果に基づいて、各監視装置2C単独では得られないような運転者RCの属性及び運転環境に対しても、当該運転者RCの状態を適切に推定することができるようになる。したがって、本変形例によれば、運転者RCの状態を適切に推定する能力のより高い学習済みの学習モデル4Cを構築することができる。
(D)発電量予測の場面
図29は、第4変形例に係る予測システム100Dの適用場面の一例を模式的に例示する。本変形例は、発電設備RDにおける発電量を予測する場面に上記実施形態に係るモデル統合装置1を適用した例である。図29に示されるとおり、本変形例に係る予測システム100Dは、モデル統合装置1及び複数の予測装置2Dを備えている。上記実施形態と同様に、モデル統合装置1及び各予測装置2Dは、ネットワークを介して互いに接続されてよい。
各予測装置2Dは、上記各学習装置2に対応する。取り扱うデータが異なる点を除き、各予測装置2Dは、上記各学習装置2と同様に構成されてよい。各予測装置2Dは、発電設備RDの発電に関連するデータに基づいて、当該発電設備RDにおける発電量を予測する。発電設備RDの種類は、特に限定されなくてもよく、例えば、太陽光の発電設備であってよい。発電量の予測に利用するデータは、発電設備RDの発電に関連し得るものであれば、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。本変形例では、発電設備RDは、太陽光の発電設備であり、各予測装置2Dは、気象データに基づいて、発電設備RDの発電量を予測する。
<予測装置のハードウェア構成>
図30は、本変形例に係る各予測装置2Dのハードウェア構成の一例を模式的に例示する。図30に示されるとおり、本変形例に係る各予測装置2Dは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。ただし、各予測装置2Dのハードウェア構成は、このような例に限定されなくてもよい。各予測装置2Dの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各予測装置2Dは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってもよい。
本変形例に係る各予測装置2Dの記憶部22は、学習プログラム82D、予測プログラム83D、ローカル学習データ3D、学習結果データ221D等の各種情報を記憶する。学習プログラム82D、予測プログラム83D、ローカル学習データ3D、及び学習結果データ221Dは、上記実施形態に係る学習プログラム82、推論プログラム83、ローカル学習データ3、及び学習結果データ221に対応する。学習プログラム82D、予測プログラム83D、及びローカル学習データ3Dのうちの少なくともいずれかは記憶媒体92に記憶されていてもよい。また、各予測装置2Dは、記憶媒体92から、学習プログラム82D、予測プログラム83D、及びローカル学習データ3Dのうちの少なくともいずれかを取得してもよい。
<学習処理>
図31Aは、本変形例に係る各予測装置2Dの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各予測装置2Dの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Dの実行により実現される。図31Aに示されるとおり、取り扱うデータがセンシングデータから気象データに置き換わる点を除き、各予測装置2Dの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各予測装置2Dは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
すなわち、ステップS101では、各予測装置2Dの制御部21は、学習データ収集部211Dとして動作し、学習モデル4Dの機械学習に利用するローカル学習データ3Dを収集する。本変形例では、学習モデル4Dは、上記実施形態に係る学習モデル4と同様に、ニューラルネットワークにより構成される。また、ローカル学習データ3Dは、気象データ31D及び正解データ32Dの組み合わせをそれぞれ含む複数の学習データセット30Dにより構成される。気象データ31Dは、訓練データ31に対応する。気象データ31Dは、例えば、天候、気温、降水量、湿度、風量等を示すデータを含んでよい。
各学習データセット30Dを取得する方法は、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、気象データ31Dは、様々な気象条件で得られてよい。そして、得られた気象データ31Dに対して、当該気象条件における発電設備RDの発電量(正解)を示す正解データ32Dを関連付ける。発電量(正解)は、例えば、発電設備RDのセンサ、オペレータの入力等により与えられてよい。これにより、各学習データセット30Dが生成されてよい。
ステップS102では、制御部21は、構造決定部212として動作し、学習モデル4Dの構造を決定する。ステップS103では、制御部21は、学習処理部213として動作し、収集されたローカル学習データ3Dを利用した機械学習を実行する。すなわち、制御部11は、各学習データセット30Dについて、気象データ31Dが入力されると、対応する正解データ32Dと一致する出力値を出力するように学習モデル4Dを訓練する。これにより、制御部11は、気象データ31Dに示される気象条件から発電設備RDの発電量を予測する能力を獲得した学習済みの学習モデル4Dを構築することができる。ステップS104では、制御部21は、保存処理部214として動作し、機械学習により構築された学習済みの学習モデル4Dの構造及び演算パラメータを示す情報を学習結果データ221Dとして生成する。そして、制御部21は、生成された学習結果データ221Dを所定の記憶領域に保存する。
<予測処理>
図31Bは、本変形例に係る各予測装置2Dの予測処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各予測装置2Dの予測処理に関するソフトウェア構成は、制御部21による予測プログラム83Dの実行により実現される。図31Bに示されるとおり、取り扱うデータがセンシングデータから気象データに置き換わる点を除き、各予測装置2Dの予測処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各予測装置2Dは、上記各学習装置2と同様に、予測処理に関する一連の処理を実行する。
すなわち、ステップS201では、制御部21は、対象データ取得部216として動作し、発電量を予測する対象となる発電設備RDにおける気象条件に関する対象気象データ225Dを取得する。対象気象データ225Dの取得先は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、制御部21は、公知の気象データサーバから対象気象データ225Dを取得してもよい。また、例えば、各予測装置2Dが、発電設備RD周辺の気象条件を観測するセンサに接続される場合、制御部21は、当該センサから対象気象データ225Dを取得してもよい。
ステップS202では、制御部21は、予測部217Dとして動作し、学習済みの学習モデル4Dを利用して、対象気象データ225Dに示される気象条件から発電設備RDの発電量を予測する。具体的には、制御部21は、学習結果データ221Dを参照して、学習済みの学習モデル4Dの設定を行う。次に、制御部21は、取得された対象気象データ225Dを学習済みの学習モデル4Dに入力し、入力側から順に各層に含まれる各ニューロンの発火判定を行う。これにより、制御部21は、対象気象データ225Dに示される気象条件から発電設備RDの発電量を予測した結果に対応する出力値を学習済みの学習モデル4Dから取得する。なお、予測部217Dは、上記推論部217に対応する。予測部217Dは、学習結果データ221Dを保持することで、学習済みの学習モデル4Dを含んでいる。
ステップS203では、制御部21は、出力部218として動作し、発電設備RDの発電量を予測した結果に関する情報を出力する。出力先及び出力情報はそれぞれ、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、発電設備RDの発電量を予測した結果をそのまま出力装置25に出力してもよい。また、例えば、制御部21は、発電設備RDの発電量と閾値とを比較し、発電設備RDの発電量が閾値以下である場合に、他の発電設備により発電を行うことを促すメッセージを出力装置25に出力してもよい。閾値は適宜設定されてよい。
<モデル統合>
各学習済みの学習モデル4Dは、上記学習モデル4と同様に、共通の構造を有する共通部分含むように構成される。また、各学習済みの学習モデル4Dのうちのいずれかの組み合わせは、共通部分以外の部分において異なる構造を有する。このような各学習済みの学習モデル4Dに対して、モデル統合装置1は、上記実施形態と同様に、上記ステップS301〜ステップS304の処理を実行する。
すなわち、ステップS301では、モデル統合装置1は、各学習済みの学習モデル4Dを各予測装置2Dから収集する。ステップS302では、モデル統合装置1は、収集された各学習済みの学習モデル4Dに含まれる共通部分内において統合範囲を決定する。ステップS303では、モデル統合装置1は、各学習済みの学習モデル4Dに対して、共通部分内に設定された統合範囲に反映された機械学習の結果を統合する統合処理を実行する。ステップS304では、モデル統合装置1は、統合処理の結果を各予測装置2Dに配信し、各予測装置2Dに対して、各学習済みの学習モデル4D内の統合範囲に統合処理の結果を適用させることで、各予測装置2Dの保持する学習済みの学習モデル4Dを更新する。
本変形例によれば、発電設備における発電量を予測する場面において、各学習済みの学習モデル4Dに反映された機械学習の結果を他の学習済みの学習モデル4Dに適切に反映させることができる。これにより、統合処理後の各学習済みの学習モデル4Dは、他の学習済みの学習モデル4Dにおける機械学習の結果に基づいて、各予測装置2D単独では得られないような気象条件に対しても、発電設備RDの発電量を適切に推定することができるようになる。したがって、本変形例によれば、発電設備RDの発電量を適切に予測する能力のより高い学習済みの学習モデル4Dを構築することができる。
(E)健康状態を診断する場面
図32は、第5変形例に係る診断システム100Eの適用場面の一例を模式的に例示する。本変形例は、対象者REの健康状態を推定(診断)する場面に上記実施形態に係るモデル統合装置1を適用した例である。図32に示されるとおり、本変形例に係る診断システム100Eは、モデル統合装置1及び複数の診断装置2Eを備えている。上記実施形態と同様に、モデル統合装置1及び各診断装置2Eは、ネットワークを介して互いに接続されてよい。
各診断装置2Eは、上記各学習装置2に対応する。取り扱うデータが異なる点を除き、各診断装置2Eは、上記各学習装置2と同様に構成されてよい。各診断装置2Eは、対象者REの健康状態に関連するデータに基づいて、当該対象者REの健康状態を診断する。診断に利用するデータは、対象者REの健康状態に関連し得るものであれば、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。診断に利用するデータは、例えば、画像データ、バイタルデータ等であってよい。バイタルデータは、バイタルに関するものであり、例えば、体温、血圧、脈拍等の測定結果を示すデータであってよい。本変形例では、各診断装置2Eは、バイタルセンサSEに接続される。各診断装置2Eは、バイタルセンサSEから得られたバイタルデータに基づいて、対象者REの健康状態を診断する。推定の対象となる健康状態は、実施の形態に応じて適宜決定されてよく、例えば、健康であるか否か、病気になる予兆があるか否か等を含んでよい。
<診断装置のハードウェア構成>
図33は、本変形例に係る各診断装置2Eのハードウェア構成の一例を模式的に例示する。図33に示されるとおり、本変形例に係る各診断装置2Eは、上記各学習装置2と同様に、制御部21、記憶部22、通信インタフェース23、入力装置24、出力装置25、ドライブ26、及び外部インタフェース27が電気的に接続されたコンピュータである。各診断装置2Eは、外部インタフェース27を介してバイタルセンサSEに接続される。バイタルセンサSEは、例えば、体温計、血圧計、脈拍計等である。ただし、各診断装置2Eのハードウェア構成は、このような例に限定されなくてもよい。各診断装置2Eの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。各診断装置2Eは、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のPC等であってもよい。
本変形例に係る各診断装置2Eの記憶部22は、学習プログラム82E、診断プログラム83E、ローカル学習データ3E、学習結果データ221E等の各種情報を記憶する。学習プログラム82E、診断プログラム83E、ローカル学習データ3E、及び学習結果データ221Eは、上記実施形態に係る学習プログラム82、推論プログラム83、ローカル学習データ3、及び学習結果データ221に対応する。学習プログラム82E、診断プログラム83E、及びローカル学習データ3Eのうちの少なくともいずれかは記憶媒体92に記憶されていてもよい。また、各診断装置2Eは、記憶媒体92から、学習プログラム82E、診断プログラム83E、及びローカル学習データ3Eのうちの少なくともいずれかを取得してもよい。
<学習処理>
図34Aは、本変形例に係る各診断装置2Eの学習処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各診断装置2Eの学習処理に関するソフトウェア構成は、制御部21による学習プログラム82Eの実行により実現される。図34Aに示されるとおり、取り扱うデータがセンシングデータからバイタルデータに置き換わる点を除き、各診断装置2Eの学習処理に関するソフトウェア構成は、上記各学習装置2の学習処理に関するソフトウェア構成と同様である。これにより、各診断装置2Eは、上記各学習装置2と同様に、機械学習に関する一連の処理を実行する。
すなわち、ステップS101では、各診断装置2Eの制御部21は、学習データ収集部211Eとして動作し、学習モデル4Eの機械学習に利用するローカル学習データ3Eを収集する。本変形例では、学習モデル4Eは、上記実施形態に係る学習モデル4と同様に、ニューラルネットワークにより構成される。また、ローカル学習データ3Eは、バイタルデータ31E及び正解データ32Eの組み合わせをそれぞれ含む複数の学習データセット30Eにより構成される。バイタルデータ31Eは、訓練データ31に対応する。
各学習データセット30Eを取得する方法は、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、バイタルデータ31Eは、様々な健康状態の被験者のバイタルをバイタルセンサで測定することで得られてよい。そして、得られたバイタルデータ31Eに対して、当該被験者の健康状態(正解)を示す正解データ32Eを関連付ける。被験者の健康状態(正解)は、例えば、実績データ、オペレータの入力等により与えられてよい。これにより、各学習データセット30Eが生成されてよい。
ステップS102では、制御部21は、構造決定部212として動作し、学習モデル4Eの構造を決定する。ステップS103では、制御部21は、学習処理部213として動作し、収集されたローカル学習データ3Eを利用した機械学習を実行する。すなわち、制御部11は、各学習データセット30Eについて、バイタルデータ31Eが入力されると、対応する正解データ32Eと一致する出力値を出力するように学習モデル4Eを訓練する。これにより、制御部11は、バイタルデータ31Eから対象者の健康状態を診断する能力を獲得した学習済みの学習モデル4Eを構築することができる。ステップS104では、制御部21は、保存処理部214として動作し、機械学習により構築された学習済みの学習モデル4Eの構造及び演算パラメータを示す情報を学習結果データ221Eとして生成する。そして、制御部21は、生成された学習結果データ221Eを所定の記憶領域に保存する。
<診断処理>
図34Bは、本変形例に係る各診断装置2Eの診断処理に関するソフトウェア構成の一例を模式的に例示する。上記実施形態と同様に、各診断装置2Eの診断処理に関するソフトウェア構成は、制御部21による診断プログラム83Eの実行により実現される。図34Bに示されるとおり、取り扱うデータがセンシングデータからバイタルデータに置き換わる点を除き、各診断装置2Eの診断処理に関するソフトウェア構成は、上記各学習装置2の推論処理に関するソフトウェア構成と同様である。これにより、各診断装置2Eは、上記各学習装置2と同様に、診断処理に関する一連の処理を実行する。
すなわち、ステップS201では、制御部21は、対象データ取得部216として動作し、対象者REのバイタルを測定した結果を示す対象バイタルデータ225EをバイタルセンサSEから取得する。ステップS202では、制御部21は、診断部217Eとして動作し、学習済みの学習モデル4Eを利用して、対象バイタルデータ225Eから対象者REの健康状態を診断する。具体的には、制御部21は、学習結果データ221Eを参照して、学習済みの学習モデル4Eの設定を行う。次に、制御部21は、取得された対象バイタルデータ225Eを学習済みの学習モデル4Eに入力し、入力側から順に各層に含まれる各ニューロンの発火判定を行う。これにより、制御部21は、対象バイタルデータ225Eに基づいて対象者REの健康状態を診断した結果に対応する出力値を学習済みの学習モデル4Eから取得する。なお、診断部217Eは、上記推論部217に対応する。診断部217Eは、学習結果データ221Eを保持することで、学習済みの学習モデル4Eを含んでいる。
ステップS203では、制御部21は、出力部218として動作し、対象者REの健康状態を診断した結果に関する情報を出力する。出力先及び出力情報はそれぞれ、上記実施形態と同様に、実施の形態に応じて適宜決定されてよい。例えば、制御部21は、対象者REの健康状態を診断した結果をそのまま出力装置25に出力してもよい。また、例えば、診断された対象者REの健康状態が所定の病気の予兆を示す場合に、制御部21は、病院での診査を促すメッセージを出力装置25に出力してもよい。
<モデル統合>
各学習済みの学習モデル4Eは、上記学習モデル4と同様に、共通の構造を有する共通部分を含むように構成される。また、各学習済みの学習モデル4Eのうちのいずれかの組み合わせは、共通部分以外の部分において異なる構造を有する。このような各学習済みの学習モデル4Eに対して、モデル統合装置1は、上記実施形態と同様に、上記ステップS301〜ステップS304の処理を実行する。
すなわち、ステップS301では、モデル統合装置1は、各学習済みの学習モデル4Eを各診断装置2Eから収集する。ステップS302では、モデル統合装置1は、収集された各学習済みの学習モデル4Eに含まれる共通部分内において統合範囲を決定する。ステップS303では、モデル統合装置1は、各学習済みの学習モデル4Eに対して、共通部分内に設定された統合範囲に反映された機械学習の結果を統合する統合処理を実行する。ステップS304では、モデル統合装置1は、統合処理の結果を各診断装置2Eに配信し、各診断装置2Eに対して、各学習済みの学習モデル4E内の統合範囲に統合処理の結果を適用させることで、各診断装置2Eの保持する学習済みの学習モデル4Eを更新する。
本変形例によれば、対象者の健康状態を診断する場面において、各学習済みの学習モデル4Eに反映された機械学習の結果を他の学習済みの学習モデル4Eに適切に反映させることができる。これにより、統合処理後の各学習済みの学習モデル4Eは、他の学習済みの学習モデル4Eにおける機械学習の結果に基づいて、各診断装置2E単独では得られないような対象者の属性及びバイタルに対しても、当該対象者の健康状態を適切に推定することができるようになる。したがって、本変形例によれば、対象者REの健康状態を適切に診断する能力のより高い学習済みの学習モデル4Eを構築することができる。
(F)その他
以上のとおり、上記実施形態に係るモデル統合装置1は、機械学習により所定の能力を学習モデルに習得させるあらゆる場面に適用可能である。なお、モデル統合装置1は、変形例毎にグルーピングしてもよいし、各変形例内でグルーピングしてもよい。例えば、モデル統合装置1は、各検査装置2Aと制御装置2Bとを異なるグループに割り当ててもよい。また、例えば、モデル統合装置1は、第1製品の検査を行う一の検査装置2Aと第1製品とは異なる第2製品の検査を行う他の検査装置2Aとを異なるグループに割り当ててもよい。これにより、モデル統合装置1は、上記各変形例が併存していても、グループ毎に上記各処理を実行することで、学習済みの学習モデル(4、4A〜4E)の統合処理を実現することができる。
<4.2>
上記実施形態では、各学習装置2は、学習処理及び推論処理の両方を実行するコンピュータにより構成されている。しかしながら、各学習装置2の構成は、このような例に限定されなくてもよい。複数の学習装置2の少なくともいずれかは、複数台のコンピュータにより構成されてよい。この場合、学習装置2は、学習処理と推論処理とが別々のコンピュータで実行されるように構成されてよい。
図35は、本変形例に係る学習装置2Fの構成の一例を模式的に例示する。本変形例では、学習装置2Fは、上記学習処理を実行するように構成されるモデル生成装置200、及び上記推論処理を実行するように構成されるモデル利用装置201を備える。モデル生成装置200及びモデル利用装置201それぞれのハードウェア構成は、上記実施形態に係る各学習装置2のハードウェア構成と同様であってよい。モデル生成装置200は、学習プログラム82を実行することで、学習データ収集部211、構造決定部212、学習処理部213、及び保存処理部214をソフトウェアモジュールとして備えるコンピュータとして動作する。モデル利用装置201は、推論プログラム83を実行することで、対象データ取得部216、推論部217、及び出力部218をソフトウェアモジュールとして備えるコンピュータとして動作する。この場合、モデル生成装置200を「学習装置」として取り扱ってもよい。なお、上記変形例に係る検査装置2A、制御装置2B、監視装置2C、予測装置2D、及び診断装置2Eについても同様である。
<4.3>
上記実施形態では、各学習装置2とモデル統合装置1との間のデータ通信はネットワークを介して行われている。モデル統合装置1は、各学習装置2から収集された学習済みの学習モデル4(学習結果データ221)に対して統合処理を実行する。この過程で、学習済みの学習モデル4が開示されてしまうと、各学習装置2の推論処理及びローカル学習データ3の内容の秘匿性が損なわれてしまう可能性がある。そこで、データ通信のセキュリティを高めるために、上記実施形態において、統合範囲41に反映された機械学習の結果を統合する統合処理は秘密計算により行われてよい。秘密計算の方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。本変形例では、秘密分散及び準同型暗号のいずれかを利用した方法が採用されてよい。
(A)秘密分散を利用する方法
図36Aは、秘密分散を利用して統合処理を実行する場面の一例を模式的に例示する。秘密分散を利用した方法では、それぞれ信頼性のある第三者機関として第1サーバ61及び第2サーバ62がネットワークに設置される。第1サーバ61及び第2サーバ62はそれぞれ、モデル統合装置1等と同様にハードウェアプロセッサ及びメモリを備えるコンピュータである。
この方法では、まず、各学習装置2の制御部21は、自身の学習済みの学習モデル4を送信する際に、乱数を生成する。乱数を生成する方法は、実施の形態に応じて適宜選択されてよい。次に、制御部21は、学習済みの学習モデル4の演算パラメータの値と生成された乱数と差分を算出する。そして、制御部21は、算出された差分を第1サーバ61に送信する一方で、生成された乱数を第2サーバ62に送信する。
これに応じて、第1サーバ61は、以下の式1のとおり、各学習装置2から受信した差分の総和を計算する。一方、第2サーバ62は、以下の式2のとおり、各学習装置2から受信した乱数の総和を計算する。
なお、Yiは、i番目の学習装置2により構築された学習済みの学習モデル4の演算パラメータの値を示す。riは、i番目の学習装置2により生成された乱数を示す。
第1サーバ61及び第2サーバ62はそれぞれ、総和の計算結果をモデル統合装置1に送信する。モデル統合装置1の制御部11は、第1サーバ61及び第2サーバ62それぞれから受信した総和を加算する。これにより、各学習装置2の保持する各学習済みの学習モデル4の演算パラメータの値が特定されるのを防止しながら、制御部11は、各学習済みの学習モデル4の演算パラメータの値の総和を得ることができる。制御部11は、この演算パラメータの値の総和を利用して統合処理を実行する。
なお、秘密分散の方式は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。秘密分散の方式には、例えば、国際標準(ISO/IEC 19592-2:2017)の方式等が用いられてよい。また、モデル統合装置1が信頼性のあるサーバであれば、モデル統合装置1が、第1サーバ61及び第2サーバ62のいずれかとして動作してもよい。
(B)準同型暗号を利用する方法
図36Bは、準同型暗号を利用して統合処理を実行する場面の一例を模式的に例示する。準同型暗号を利用した方法では、信頼性のある第三者機関としてサーバ65がネットワークに設置される。サーバ65は、モデル統合装置1等と同様にハードウェアプロセッサ及びメモリを備えるコンピュータである。
この方法では、まず、サーバ65が、公開鍵及び秘密鍵を発行する。公開鍵は、準同型性を有するように生成される。つまり、公開鍵により暗号化された2つの暗号文が与えられた場合に、暗号化された状態のまま2つの暗号文の加算が可能であるように公開鍵が生成される。サーバ65は、発行された公開鍵及び秘密鍵のうち公開鍵を各学習装置2に配信する。
各学習装置2の制御部21は、受信した公開鍵により、自身の学習済みの学習モデル4の演算パラメータの値を暗号化する。そして、制御部21は、暗号化された演算パラメータの値をモデル統合装置1に送信する。モデル統合装置1の制御部11は、以下の式3のとおりに、各学習装置2から受信した演算パラメータの値を暗号化された状態のまま総和を計算する。
なお、Pは、公開鍵により暗号化されていることを示す。
制御部11は、暗号化された総和をサーバ65に送信する。サーバ65は、秘密鍵により、モデル統合装置1から受信した暗号化された総和を復号化する。そして、サーバ65は、復号化した演算パラメータの値の総和をモデル統合装置1に返信する。これにより、各学習装置2の保持する各学習済みの学習モデル4の演算パラメータの値が特定されるのを防止しながら、制御部11は、各学習済みの学習モデル4の演算パラメータの値の総和を得ることができる。制御部11は、この演算パラメータの値の総和を利用して統合処理を実行する。
なお、準同型暗号の方式は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。準同型暗号の方式には、例えば、modified-ElGamal暗号、Paillier暗号等が用いられてよい。また、モデル統合装置1が信頼性のあるサーバであれば、モデル統合装置1が、サーバ65として動作してもよい。
以上のとおり、本変形例によれば、上記2つの方法のうちのいずれかにより、統合範囲41に反映された機械学習の結果を統合する統合処理を秘密計算により行うことができる。これにより、各学習装置2により構築された各学習済みの学習モデル4の秘匿性が損なわれてしまうのを防止することができる。
<4.4>
上記実施形態では、各学習モデル4は、多層構造のニューラルネットワークにより構成されている。しかしながら、各学習モデル4を構成するニューラルネットワークの構造及び種類は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、各学習モデル4は、畳み込み層、プーリング層、及び全結合層を備える畳み込みニューラルネットワークにより構成されてよい。また、時系列データを利用する場合には、各学習モデル4は、再帰型ニューラルネットワークにより構成されてよい。また、各学習モデル4の種類は、ニューラルネットワークに限られなくてもよく、実施の形態に応じて適宜選択されてよい。統合処理の対象となる各学習モデル4は、何らかのデータを生成するように構成された生成モデルであってもよい。
<4.5>
上記実施形態において、各学習装置2により構築される学習モデル4の数は、1つに限られなくてもよく、複数であってもよい。また、各学習装置2は、テンプレート126を利用せずに、学習モデル4の構造を決定してもよい。この場合、テンプレート126は省略されてよい。
また、上記実施形態において、予め統合範囲41が固定されている等、モデル統合装置1が統合範囲41を決定しない場合、上記ステップS302の処理は省略されてよい。この場合、モデル統合装置1のソフトウェア構成から範囲調整部112は省略されてよい。
また、上記実施形態において、グルーピングの処理は省略されてよい。第1のグルーピング方法を省略する場合、グループリスト123は省略されてよい。グルーピングの処理を省略する場合、割当情報124は省略されてよい。また、モデル統合装置1のソフトウェア構成からグルーピング部116は省略されてよい。
また、上記実施形態において、統合範囲41を決定する方法及びグルーピングの方法それぞれから最適化に関する方法は省略されてよい。統合範囲41を決定する方法から第2の方法が省略されてよい。この場合、評価用サンプル129は省略されてよい。
また、上記実施形態において、各学習済みの学習モデル4に対して重みを設定する処理は省略されてよい。各重みは、予め設定されてもよい。この場合、モデル統合装置1のソフトウェア構成から重み設定部115は省略されてよい。更に、制御部11は、各重みをランダムに設定してもよい。この場合、上記統合範囲41及びグルーピングの最適化と同様に、統合処理後の各学習済みの学習モデル4の所定の能力が向上するように各重みを最適化してもよい。例えば、制御部11は、各重みをランダムに調整しながら、統合処理を試行することで、統合処理後の各学習済みの学習モデル4の所定の能力が向上するように各重みを最適化してもよい。
また、上記実施形態において、データは、例えば、画像データ、音データ、数値データ、テキストデータ、その他センサにより得られる測定データ等の個別の種類のデータに置き換えられてよい。例えば、ローカル学習データ3が画像データを含むことで、モデル統合装置1及び複数の学習装置2により画像システムを構成することができる。この場合、各学習装置2は、収集したローカル学習データ3を利用した機械学習により、画像データから所定の特徴を推定する能力を獲得した学習済みの学習モデル4を構築する。また、例えば、ローカル学習データ3がセンサにより得られるセンシングデータを含むことで、モデル統合装置1及び複数の学習装置2によりセンサシステムを構成することができる。この場合、各学習装置2は、収集したローカル学習データ3を利用した機械学習により、センシングデータから所定の特徴を推定する能力を獲得した学習済みの学習モデル4を構築する。
1…モデル統合装置、
11…制御部、12…記憶部、13…通信インタフェース、
14…入力装置、15…出力装置、16…ドライブ、
111…モデル収集部、112…範囲調整部、
113…統合処理部、114…モデル更新部、
115…重み設定部、116…グルーピング部、
121…統合結果データ、123…グループリスト、
124…割当情報、126…テンプレート、
129…評価用サンプル、
1291…入力データ、1292…正解データ、
81…モデル統合プログラム、91…記憶媒体、
2…学習装置、
21…制御部、22…記憶部、23…通信インタフェース、
24…入力装置、25…出力装置、26…ドライブ、
27…外部インタフェース、
211…学習データ収集部、212…構造決定部、
213…学習処理部、214…保存処理部、
216…対象データ取得部、217…推論部、
218…出力部、
221…学習結果データ、225…対象データ、
82…学習プログラム、83…推論プログラム、
92…記憶媒体、
S…センサ、
3…ローカル学習データ、
30…学習データセット、
31…訓練データ、32…正解データ、
4…学習モデル、
40…共通部分、41…統合範囲、
51…入力層、52〜55…中間(隠れ)層、
56…出力層

Claims (22)

  1. 複数の学習装置それぞれから学習済みの学習モデルを収集するモデル収集部であって、前記各学習装置は、ローカル学習データを収集し、かつ収集したローカル学習データを利用した機械学習により所定の能力を獲得した学習済みの学習モデルを構築し、前記各学習済みの学習モデルは、共通の構造を有する共通部分を含み、前記各学習済みの学習モデルのうちのいずれかの組み合わせは、前記共通部分以外の部分において異なる構造を有する、モデル収集部と、
    前記各学習済みの学習モデルに対して、前記共通部分内に設定された統合範囲に反映された前記機械学習の結果を統合する統合処理を実行する統合処理部と、
    前記統合処理の結果を前記各学習装置に配信し、前記各学習装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各学習装置の保持する前記学習済み学習モデルを更新するモデル更新部と、
    を備える、
    モデル統合装置。
  2. 収集した前記各学習済みの学習モデルに含まれる前記共通部分内において前記統合範囲を決定する範囲調整部を更に備える、
    請求項1に記載のモデル統合装置。
  3. 前記各学習済みの学習モデルの構造はテンプレートにより与えられ、
    前記範囲調整部は、前記テンプレートに基づいて、前記統合範囲を決定する、
    請求項2に記載のモデル統合装置。
  4. 前記各学習済みの学習モデルの前記共通部分は、複数の演算モジュールを備えており、
    前記共通部分内において前記統合範囲を決定することは、
    前記各学習済みの学習モデルに評価用サンプルを入力して、前記共通部分に含まれる前記各演算モジュールから出力を取得すること、
    前記各学習済みの学習モデルの対応する前記演算モジュール間の、取得された前記出力の類似性及び相関性の少なくともいずれかを算出すること、及び
    算出された類似性及び相関性の少なくともいずれかが所定の条件を満たす前記演算モジュールを前記統合範囲に指定すること、
    を含む、
    請求項2に記載のモデル統合装置。
  5. 前記範囲調整部は、前記統合処理を実行する前と比べて、前記統合処理を実行した後に前記各学習済みの学習モデルの有する前記所定の能力が向上するように前記統合範囲を最適化する、
    請求項2に記載のモデル統合装置。
  6. 前記範囲調整部は、前記共通部分内において暫定統合範囲を指定し、
    前記統合処理部は、前記各学習済みの学習モデルに対して、指定された前記暫定統合範囲に反映された前記機械学習の結果を統合する統合処理を実行し、
    前記統合範囲を最適化することは、
    前記統合処理を実行する前の前記各学習済みの学習モデルが評価用サンプルに対して前記所定の能力を発揮した第1の結果を取得すること、
    前記統合処理を実行した後の前記各学習済みの学習モデルが前記評価用サンプルに対して前記所定の能力を発揮した第2の結果を取得すること、
    前記第1の結果及び前記第2の結果を比較することで、前記統合処理を実行する前と比べて、前記統合処理を実行した後に前記各学習済みの学習モデルの有する前記所定の能力が向上しているか否かを判定すること、及び
    前記統合処理を実行した後に前記各学習済みの学習モデルの有する前記所定の能力が向上していると判定した場合に、前記暫定統合範囲を前記統合範囲に決定すること、
    を含む、
    請求項5に記載のモデル統合装置。
  7. 前記範囲調整部は、前記共通部分内において複数の暫定統合範囲を指定し、
    前記統合処理部は、前記暫定統合範囲毎に、前記各学習済みの学習モデルに対する、指定された前記各暫定統合範囲に反映された前記機械学習の結果を統合する統合処理を実行し、
    前記統合範囲を最適化することは、
    前記暫定統合範囲毎に、前記統合処理を実行した後の前記各学習済みの学習モデルが評価用サンプルに対して前記所定の能力を発揮した結果を取得すること、
    取得した前記各結果に基づいて、前記統合処理を実行した後の前記各学習済みの学習モデルの有する前記所定の能力が最も高い暫定統合範囲を特定すること、
    特定した前記暫定統合範囲を前記統合範囲に決定すること、
    を含む、
    請求項5又は6に記載のモデル統合装置。
  8. 前記複数の学習装置それぞれを複数のグループのうちの少なくともいずれかに割り当てるグルーピング部を更に備え、
    前記モデル収集部は、同一のグループに属する複数の学習装置それぞれから前記学習済みの学習モデルを収集し、
    前記範囲調整部は、前記同一のグループ内で、収集した前記各学習済みの学習モデルに含まれる共通部分内において前記統合範囲を決定し、
    前記統合処理部は、前記同一のグループ内で、前記各学習済みの学習モデルに対して、決定された前記統合範囲に反映された前記機械学習の結果を統合する統合処理を実行し、
    前記モデル更新部は、前記同一のグループ内で、前記統合処理の結果を前記各学習装置に配信し、前記各学習装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各学習装置の保持する前記学習済み学習モデルを更新する、
    請求項2から7のいずれか1項に記載のモデル統合装置。
  9. 前記グルーピング部は、前記複数のグループを示すリストを前記各学習装置に配信して、前記各学習装置に対して、前記リストに示される前記複数のグループのうちから1つ以上のグループを選択させ、選択された前記1つ以上のグループに前記各学習装置を割り当てる、
    請求項8に記載のモデル統合装置。
  10. 前記グルーピング部は、
    前記所定の能力に関する属性データを前記各学習装置から取得し、
    前記各学習装置から取得した前記属性データをクラスタリングし、
    前記クラスタリングの結果に基づいて、前記複数の学習装置それぞれを前記複数のグループのうちの少なくともいずれかに割り当てる、
    請求項8に記載のモデル統合装置。
  11. 前記グルーピング部は、前記統合処理を実行する前と比べて、前記統合処理を実行した後に前記各学習済みの学習モデルの有する前記所定の能力が向上するように、前記複数のグループに対する前記各学習装置の割り当てを最適化する、
    請求項8に記載のモデル統合装置。
  12. 前記グルーピング部は、前記複数のグループに対する前記各学習装置の割り当ての異なる複数の暫定グループ分けを行い、
    前記範囲調整部は、前記暫定グループ分け毎に、同一のグループ内で、収集した前記各学習済みの学習モデルに含まれる共通部分内において前記統合範囲を決定し、
    前記統合処理部は、前記暫定グループ分け毎に、前記同一のグループ内で、前記各学習済みの学習モデルに対して、決定された前記統合範囲に反映された前記機械学習の結果を統合する統合処理を実行し、
    前記各学習装置の割り当てを最適化することは、
    前記暫定グループ分け毎に、前記同一のグループ内で、前記統合処理を実行した後の前記各学習済みの学習モデルが評価用サンプルに対して前記所定の能力を発揮した結果を取得すること、
    取得した前記各結果に基づいて、前記同一のグループ内で、前記統合処理を実行した後の前記各学習済みの学習モデルの有する前記所定の能力が最も高い暫定グループ分けを特定すること、及び
    特定した前記暫定グループ分けに従って、前記複数の学習装置それぞれを複数のグループのうちの少なくともいずれかに割り当てること、
    を含む、
    請求項11に記載のモデル統合装置。
  13. 前記統合範囲に反映された前記機械学習の結果を統合することは、前記統合範囲に含まれる演算パラメータの値を平均化すること又は合計することを含む、
    請求項1から12のいずれか1項に記載のモデル統合装置。
  14. 前記各学習済みの学習モデルに対して重みを設定する重み設定部であって、前記各重みは、前記統合処理における前記各学習済みの学習モデルの優先度合いを定める、重み設定部を更に備え、
    前記統合範囲に反映された前記機械学習の結果を統合することは、設定された前記各重みを使用して、前記各学習済みの学習モデルの前記統合範囲に含まれる演算パラメータの値に重み付けをしてから平均化又は合計することを含む、
    請求項1から12のいずれか1項に記載のモデル統合装置。
  15. 前記重み設定部は、前記機械学習に利用した前記ローカル学習データの数が多いほど前記重みが大きくなるように、前記各重みを設定する、
    請求項14に記載のモデル統合装置。
  16. 前記ローカル学習データは、前記所定の能力における特定の要素に関する特定学習データを含み、
    前記重み設定部は、前記機械学習に利用した前記ローカル学習データに含まれる前記特定学習データの比率が高いほど前記重みが大きくなるように、前記各重みを設定する、
    請求項14に記載のモデル統合装置。
  17. 前記統合範囲に反映された前記機械学習の結果の統合は秘密計算により行われる、
    請求項1から16のいずれか1項に記載のモデル統合装置。
  18. 複数の学習装置と、
    モデル統合装置と、
    を備え、
    前記各学習装置は、
    ローカル学習データを収集するステップと、
    収集した前記ローカル学習データを利用した機械学習により所定の推論能力を獲得した学習済みの学習モデルを構築するステップと、
    を実行し、
    前記各学習済みの学習モデルは、共通の構造を有する共通部分を含み、
    前記各学習済みの学習モデルのうちのいずれかの組み合わせは、前記共通部分以外の部分において異なる構造を有し、
    前記モデル統合装置は、
    前記複数の学習装置それぞれから前記学習済みの学習モデルを収集するステップと、
    前記各学習済みの学習モデルに対して、前記共通部分内に設定された統合範囲に反映された前記機械学習の結果を統合する統合処理を実行するステップと、
    前記統合処理の結果を前記各学習装置に配信し、前記各学習装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各学習装置の保持する前記学習済み学習モデルを更新するステップと、
    を実行する、
    推論システム。
  19. コンピュータが、
    複数の学習装置それぞれから学習済みの学習モデルを収集するステップであって、前記各学習装置は、ローカル学習データを収集し、かつ収集したローカル学習データを利用した機械学習により所定の能力を獲得した学習済みの学習モデルを構築し、前記各学習済みの学習モデルは、共通の構造を有する共通部分を含み、前記各学習済みの学習モデルのうちのいずれかの組み合わせは、前記共通部分以外の部分において異なる構造を有する、ステップと、
    前記各学習済みの学習モデルに対して、前記共通部分内に設定された統合範囲に反映された前記機械学習の結果を統合する統合処理を実行するステップと、
    前記統合処理の結果を前記各学習装置に配信し、前記各学習装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各学習装置の保持する前記学習済み学習モデルを更新するステップと、
    を実行する、
    モデル統合方法。
  20. コンピュータに、
    複数の学習装置それぞれから学習済みの学習モデルを収集するステップであって、前記各学習装置は、ローカル学習データを収集し、かつ収集したローカル学習データを利用した機械学習により所定の能力を獲得した学習済みの学習モデルを構築し、前記各学習済みの学習モデルは、共通の構造を有する共通部分を含み、前記各学習済みの学習モデルのうちのいずれかの組み合わせは、前記共通部分以外の部分において異なる構造を有する、ステップと、
    前記各学習済みの学習モデルに対して、前記共通部分内に設定された統合範囲に反映された前記機械学習の結果を統合する統合処理を実行するステップと、
    前記統合処理の結果を前記各学習装置に配信し、前記各学習装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各学習装置の保持する前記学習済み学習モデルを更新するステップと、
    を実行させるための、
    モデル統合プログラム。
  21. 複数の検査装置と、
    モデル統合装置と、
    を備え、
    前記各検査装置は、
    製品の写る画像データを含むローカル学習データを収集するステップと、
    収集した前記ローカル学習データを利用した機械学習により、前記画像データに写る前記製品の状態を判定する能力を獲得した学習済みの学習モデルを構築するステップと、
    を実行し、
    前記各学習済みの学習モデルは、共通の構造を有する共通部分を含み、
    前記各学習済みの学習モデルのうちのいずれかの組み合わせは、前記共通部分以外の部分において異なる構造を有し、
    前記モデル統合装置は、
    前記複数の検査装置それぞれから前記学習済みの学習モデルを収集するステップと、
    前記各学習済みの学習モデルに対して、前記共通部分内に設定された統合範囲に反映された前記機械学習の結果を統合する統合処理を実行するステップと、
    前記統合処理の結果を前記各検査装置に配信し、前記各検査装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各検査装置の保持する前記学習済み学習モデルを更新するステップと、
    を実行する、
    検査システム。
  22. 植物の生育環境を制御して、当該植物を栽培する栽培装置にそれぞれ接続された複数の制御装置と、
    モデル統合装置と、
    を備え、
    前記各制御装置は、
    前記植物の栽培状況に関する状況データ及び当該栽培状況に応じた生育環境の制御を前記栽培装置に指令する制御指令を含むローカル学習データを収集するステップと、
    収集した前記ローカル学習データを利用した機械学習により、前記植物の栽培状況に応じて前記栽培装置に与える制御指令を決定する能力を獲得した学習済みの学習モデルを構築するステップと、
    を実行し、
    前記各学習済みの学習モデルは、共通の構造を有する共通部分を含み、
    前記各学習済みの学習モデルのうちのいずれかの組み合わせは、前記共通部分以外の部分において異なる構造を有し、
    前記モデル統合装置は、
    前記複数の制御装置それぞれから前記学習済みの学習モデルを収集するステップと、
    前記各学習済みの学習モデルに対して、前記共通部分内に設定された統合範囲に反映された前記機械学習の結果を統合する統合処理を実行するステップと、
    前記統合処理の結果を前記各制御装置に配信し、前記各制御装置に対して、前記各学習済みの学習モデル内の前記統合範囲に前記統合処理の結果を適用させることで、前記各制御装置の保持する前記学習済み学習モデルを更新するステップと、
    を実行する、
    制御システム。
JP2019006777A 2019-01-18 2019-01-18 モデル統合装置、モデル統合方法、モデル統合プログラム、推論システム、検査システム、及び制御システム Active JP7036049B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2019006777A JP7036049B2 (ja) 2019-01-18 2019-01-18 モデル統合装置、モデル統合方法、モデル統合プログラム、推論システム、検査システム、及び制御システム
PCT/JP2019/045161 WO2020148998A1 (ja) 2019-01-18 2019-11-19 モデル統合装置、方法及びプログラム並びに推論、検査及び制御システム
CN201980082141.3A CN113196313A (zh) 2019-01-18 2019-11-19 模型集成装置、模型集成方法、模型集成程序、推定系统、检查系统以及控制系统
US17/414,972 US20220058525A1 (en) 2019-01-18 2019-11-19 Model integration apparatus, model integration method, computer-readable storage medium storing a model integration program, inference system, inspection system, and control system
EP19910689.9A EP3913549A4 (en) 2019-01-18 2019-11-19 MODEL INTEGRATION DEVICE, METHOD AND PROGRAM, AND INFERENCE, TESTING AND CONTROL SYSTEM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019006777A JP7036049B2 (ja) 2019-01-18 2019-01-18 モデル統合装置、モデル統合方法、モデル統合プログラム、推論システム、検査システム、及び制御システム

Publications (2)

Publication Number Publication Date
JP2020115311A true JP2020115311A (ja) 2020-07-30
JP7036049B2 JP7036049B2 (ja) 2022-03-15

Family

ID=71613670

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019006777A Active JP7036049B2 (ja) 2019-01-18 2019-01-18 モデル統合装置、モデル統合方法、モデル統合プログラム、推論システム、検査システム、及び制御システム

Country Status (5)

Country Link
US (1) US20220058525A1 (ja)
EP (1) EP3913549A4 (ja)
JP (1) JP7036049B2 (ja)
CN (1) CN113196313A (ja)
WO (1) WO2020148998A1 (ja)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021140400A (ja) * 2020-03-04 2021-09-16 株式会社日立製作所 学習モデル作成システム及び学習モデル作成方法
KR20220025456A (ko) * 2020-08-24 2022-03-03 공주대학교 산학협력단 하이브리드 시스템에서의 블록체인에 기반한 연합학습을 수행하는 방법
JP2022041957A (ja) * 2020-08-31 2022-03-11 株式会社日立製作所 データ解析システムのプライバシー保護データを生成する方法及びデバイス
WO2022190552A1 (ja) * 2021-03-09 2022-09-15 オムロン株式会社 情報処理装置、情報処理方法および情報処理プログラム
WO2022209057A1 (ja) * 2021-03-31 2022-10-06 オムロン株式会社 情報処理装置、情報処理方法および情報処理プログラム
WO2022224693A1 (ja) * 2021-04-19 2022-10-27 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 製造方法、生成装置、推定装置、識別情報付与方法、及び付与装置
WO2022250063A1 (ja) * 2021-05-26 2022-12-01 キヤノン株式会社 顔認証を行う画像処理装置および画像処理方法
JP2022182960A (ja) * 2021-05-26 2022-12-08 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
KR102480140B1 (ko) * 2022-05-19 2022-12-23 (주)아크릴 인공 신경망 모델 학습 결과 합성을 통한 공통 모델 생성 방법
WO2022269699A1 (ja) * 2021-06-21 2022-12-29 日本電気株式会社 秘密計算システム、金融機関サーバ、情報処理システム、秘密計算方法、及び記録媒体
WO2023281685A1 (ja) * 2021-07-08 2023-01-12 日本電気株式会社 秘密計算システム、方法、記憶媒体、及び、情報処理システム
WO2023188256A1 (ja) * 2022-03-31 2023-10-05 日本電信電話株式会社 モデル学習装置、秘密連合学習装置、それらの方法、およびプログラム
WO2023188257A1 (ja) * 2022-03-31 2023-10-05 日本電信電話株式会社 秘密グローバルモデル計算装置、ローカルモデル登録方法、プログラム
WO2024034112A1 (ja) * 2022-08-12 2024-02-15 日本電気株式会社 推論システム、情報処理システム、推論方法、及び記録媒体
WO2024057389A1 (ja) * 2022-09-13 2024-03-21 日本電気株式会社 統合システム、組織サーバ、統合方法、分析方法、および記録媒体
WO2024069957A1 (ja) * 2022-09-30 2024-04-04 日本電気株式会社 学習装置、学習システム、学習方法、およびコンピュータ可読媒体
JP7481566B1 (ja) 2023-12-11 2024-05-10 Kddi株式会社 情報処理装置、情報処理方法及び情報処理システム

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6866762B2 (ja) * 2017-05-18 2021-04-28 いすゞ自動車株式会社 車両用情報処理システム
JP7484318B2 (ja) * 2020-03-27 2024-05-16 富士フイルムビジネスイノベーション株式会社 学習装置及び学習プログラム
WO2022269909A1 (ja) * 2021-06-25 2022-12-29 日本電気株式会社 秘密計算システム、事業者サーバ、情報処理システム、秘密計算方法、及び記録媒体
WO2023053162A1 (ja) * 2021-09-28 2023-04-06 日本電気株式会社 秘密計算システム、情報処理システム、秘密計算方法、及び記録媒体
WO2023188261A1 (ja) * 2022-03-31 2023-10-05 日本電信電話株式会社 秘密グローバルモデル計算装置、ローカルモデル登録方法、プログラム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018101848A1 (en) * 2016-11-29 2018-06-07 Coolfarm S.A. Predictive dynamic cloud based system for environmental sensing and actuation and respective method of operation
JP2018132884A (ja) * 2017-02-14 2018-08-23 富士通株式会社 判定装置、判定方法および判定プログラム
JP2018165948A (ja) * 2017-03-28 2018-10-25 国立大学法人神戸大学 画像認識装置、画像認識方法、コンピュータプログラム、及び製品監視システム
CN108712260A (zh) * 2018-05-09 2018-10-26 曲阜师范大学 云环境下保护隐私的多方深度学习计算代理方法
JP2018190241A (ja) * 2017-05-09 2018-11-29 オムロン株式会社 タスク実行システム、タスク実行方法、並びにその学習装置及び学習方法
JP2018207222A (ja) * 2017-05-31 2018-12-27 パナソニックIpマネジメント株式会社 カメラ及びパラメータ登録方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012026982A (ja) 2010-07-27 2012-02-09 Panasonic Electric Works Sunx Co Ltd 検査装置
MA37042B1 (fr) * 2014-05-16 2016-07-29 Boulmakoul Azedine Processus analytique structurale d'evaluation et de refonte organisationnelle fondee sur le referentiel cmmi-dev
JP7038499B2 (ja) * 2016-07-29 2022-03-18 株式会社野村総合研究所 分類システム、分類システムの制御方法、およびプログラム
JP6660900B2 (ja) * 2017-03-06 2020-03-11 Kddi株式会社 モデル統合装置、モデル統合システム、方法およびプログラム
CN108734193A (zh) * 2018-03-27 2018-11-02 合肥麟图信息科技有限公司 一种深度学习模型的训练方法及装置
CN108921300A (zh) * 2018-06-21 2018-11-30 第四范式(北京)技术有限公司 执行自动机器学习的方法和装置
CN109146076A (zh) * 2018-08-13 2019-01-04 东软集团股份有限公司 模型生成方法及装置、数据处理方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018101848A1 (en) * 2016-11-29 2018-06-07 Coolfarm S.A. Predictive dynamic cloud based system for environmental sensing and actuation and respective method of operation
JP2018132884A (ja) * 2017-02-14 2018-08-23 富士通株式会社 判定装置、判定方法および判定プログラム
JP2018165948A (ja) * 2017-03-28 2018-10-25 国立大学法人神戸大学 画像認識装置、画像認識方法、コンピュータプログラム、及び製品監視システム
JP2018190241A (ja) * 2017-05-09 2018-11-29 オムロン株式会社 タスク実行システム、タスク実行方法、並びにその学習装置及び学習方法
JP2018207222A (ja) * 2017-05-31 2018-12-27 パナソニックIpマネジメント株式会社 カメラ及びパラメータ登録方法
CN108712260A (zh) * 2018-05-09 2018-10-26 曲阜师范大学 云环境下保护隐私的多方深度学习计算代理方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
佐藤 聖: "これから期待のコンピュータ技術百科 第3章 特に注目の人工知能アルゴリズム百科", INTERFACE, vol. 第45巻 第2号, JPN6021052665, 27 December 2018 (2018-12-27), JP, pages 60 - 67, ISSN: 0004679414 *
山浦 佑介ほか: "商品推薦のための深層学習を用いたインテリアスタイル推定", 電子情報通信学会技術研究報告, vol. 第118巻, 第362号, JPN6021052661, 6 December 2018 (2018-12-06), JP, pages 85 - 90, ISSN: 0004679415 *

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021140400A (ja) * 2020-03-04 2021-09-16 株式会社日立製作所 学習モデル作成システム及び学習モデル作成方法
KR20220025456A (ko) * 2020-08-24 2022-03-03 공주대학교 산학협력단 하이브리드 시스템에서의 블록체인에 기반한 연합학습을 수행하는 방법
KR102430986B1 (ko) 2020-08-24 2022-08-08 공주대학교 산학협력단 하이브리드 시스템에서의 블록체인에 기반한 연합학습을 수행하는 방법
JP7165795B2 (ja) 2020-08-31 2022-11-04 株式会社日立製作所 データ解析システムのプライバシー保護データを生成する方法及びデバイス
JP2022041957A (ja) * 2020-08-31 2022-03-11 株式会社日立製作所 データ解析システムのプライバシー保護データを生成する方法及びデバイス
WO2022190552A1 (ja) * 2021-03-09 2022-09-15 オムロン株式会社 情報処理装置、情報処理方法および情報処理プログラム
WO2022209057A1 (ja) * 2021-03-31 2022-10-06 オムロン株式会社 情報処理装置、情報処理方法および情報処理プログラム
WO2022224693A1 (ja) * 2021-04-19 2022-10-27 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 製造方法、生成装置、推定装置、識別情報付与方法、及び付与装置
WO2022250063A1 (ja) * 2021-05-26 2022-12-01 キヤノン株式会社 顔認証を行う画像処理装置および画像処理方法
JP2022182960A (ja) * 2021-05-26 2022-12-08 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
JP7346528B2 (ja) 2021-05-26 2023-09-19 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
WO2022269699A1 (ja) * 2021-06-21 2022-12-29 日本電気株式会社 秘密計算システム、金融機関サーバ、情報処理システム、秘密計算方法、及び記録媒体
WO2023281685A1 (ja) * 2021-07-08 2023-01-12 日本電気株式会社 秘密計算システム、方法、記憶媒体、及び、情報処理システム
WO2023188257A1 (ja) * 2022-03-31 2023-10-05 日本電信電話株式会社 秘密グローバルモデル計算装置、ローカルモデル登録方法、プログラム
WO2023188256A1 (ja) * 2022-03-31 2023-10-05 日本電信電話株式会社 モデル学習装置、秘密連合学習装置、それらの方法、およびプログラム
KR102480140B1 (ko) * 2022-05-19 2022-12-23 (주)아크릴 인공 신경망 모델 학습 결과 합성을 통한 공통 모델 생성 방법
WO2024034112A1 (ja) * 2022-08-12 2024-02-15 日本電気株式会社 推論システム、情報処理システム、推論方法、及び記録媒体
WO2024057389A1 (ja) * 2022-09-13 2024-03-21 日本電気株式会社 統合システム、組織サーバ、統合方法、分析方法、および記録媒体
WO2024069957A1 (ja) * 2022-09-30 2024-04-04 日本電気株式会社 学習装置、学習システム、学習方法、およびコンピュータ可読媒体
JP7481566B1 (ja) 2023-12-11 2024-05-10 Kddi株式会社 情報処理装置、情報処理方法及び情報処理システム

Also Published As

Publication number Publication date
CN113196313A (zh) 2021-07-30
US20220058525A1 (en) 2022-02-24
EP3913549A1 (en) 2021-11-24
EP3913549A4 (en) 2022-11-09
JP7036049B2 (ja) 2022-03-15
WO2020148998A1 (ja) 2020-07-23

Similar Documents

Publication Publication Date Title
WO2020148998A1 (ja) モデル統合装置、方法及びプログラム並びに推論、検査及び制御システム
JP7020438B2 (ja) モデル生成装置、モデル生成方法、モデル生成プログラム、モデル生成システム、検査システム、及び監視システム
US11941868B2 (en) Inference apparatus, inference method, and computer-readable storage medium storing an inference program
KR102166011B1 (ko) 터치입력을 이용한 인지장애 판단 시스템 및 방법
Krueger et al. The role of expert opinion in environmental modelling
JP6466442B2 (ja) コンピュータ化された臨床診断支援のための階層的自己学習システム
Edirisinghe et al. BIM-based performance monitoring for smart building management
Goy et al. Data for urban scale building energy modelling: Assessing impacts and overcoming availability challenges
KR20190069687A (ko) 우울증 진단을 위한 다중 설문 분석 시스템 및 그 방법
CN109242250A (zh) 一种基于模糊熵权法与云模型的用户行为可信度检测方法
Vanus et al. Novel proposal for prediction of CO2 course and occupancy recognition in intelligent buildings within IoT
WO2021090789A1 (ja) 統合分析方法、統合分析装置、及び統合分析プログラム
CN110136832A (zh) 一种基于老年人日常行为的认知能力评估系统及方法
JP7396125B2 (ja) モデル生成装置、推定装置、モデル生成方法、及びモデル生成プログラム
CN114580087A (zh) 一种船载设备的联邦剩余使用寿命预测方法、装置及系统
Lazarova-Molnar et al. Towards systematic reliability modeling of smart buildings
Kim et al. Generating Knowledge Around the Unknowable Algorithm
EP4064184A1 (en) Model generation device, estimation device, model generation method, and model generation program
KR102480150B1 (ko) 3차원 멀티채널 데이터를 이용한 질환 발병 예측 시스템 및 방법
Ghneim A Multi-Stakeholder Information Model to Drive Process Connectivity In Smart Buildings
Van Mierlo Approaches and methods for monitoring and evaluation
Heaton et al. Agent-based models
CN118051007A (zh) 一种基于数字孪生的智慧园区监控系统
Al-Doghman et al. Adaptive Consensus-based Aggregation for Edge Computing
CN117217713A (zh) 一种工程建设项目的资源管理方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190705

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20190705

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220111

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220118

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220201

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220214

R150 Certificate of patent or registration of utility model

Ref document number: 7036049

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150