JP6660900B2 - モデル統合装置、モデル統合システム、方法およびプログラム - Google Patents

モデル統合装置、モデル統合システム、方法およびプログラム Download PDF

Info

Publication number
JP6660900B2
JP6660900B2 JP2017042153A JP2017042153A JP6660900B2 JP 6660900 B2 JP6660900 B2 JP 6660900B2 JP 2017042153 A JP2017042153 A JP 2017042153A JP 2017042153 A JP2017042153 A JP 2017042153A JP 6660900 B2 JP6660900 B2 JP 6660900B2
Authority
JP
Japan
Prior art keywords
model
output
common
common model
learning
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.)
Active
Application number
JP2017042153A
Other languages
English (en)
Other versions
JP2018147261A (ja
Inventor
賢史 小森田
賢史 小森田
茂之 酒澤
茂之 酒澤
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.)
KDDI Corp
Original Assignee
KDDI Corp
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 KDDI Corp filed Critical KDDI Corp
Priority to JP2017042153A priority Critical patent/JP6660900B2/ja
Publication of JP2018147261A publication Critical patent/JP2018147261A/ja
Application granted granted Critical
Publication of JP6660900B2 publication Critical patent/JP6660900B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、複数のニューラルネットワークモデルを統合するモデル統合装置、モデル統合システム、方法およびプログラムに関する。
近年、ニューラルネットワークを活用した深層学習により、これまで機械的な判断では難しかった画像からの人物の動きなど、高度なコンテキスト理解が可能になっている。ただし、この深層学習による画像認識では、従来の手動で設計する特徴点に基づいた認識技術と異なり、自動的に特徴を抽出することができるが、精度を上げるためには大量のサンプル画像を用いて学習し、そのモデルを作成することが必要となる。
また、一般的にサンプル数が多いほど精度が向上するため、一度モデル化をした後もサンプルを収集し、モデルを更新、精度を上げつづけるシステムを構築することは、深層学習を用いたシステムにおいては重要である。例えば、写真のストレージサービスなどを無料利用可能な代わりにそのデータをサンプルとして学習に使用する(例:https://www.google.com/intl/ja/policies/terms/)ようなエコシステムの構築や、自社のシステムで利用可能なモデルや技術を広めるために、学習済みモデルの公開やオープンソース化(非特許文献1)が行われている。
Abadi, Martin, et al. "Tensorflow: Large-scale machine learning on heterogeneous distributed systems." arXiv preprint arXiv:1603.04467 (2016). R. Girshick, J. Donahue, T. Darrell, U. C. Berkeley, and J. Malik. Rich feature hierarchies for accurate object detection and semantic segmentation. In Proc. IEEE CVPR, 2014. Jeffrey Dean, Gregory S. Corrado, Rajat Monga, Kai Chen, Matthieu Devin, Quoc V. Le, Mark Z. Mao, Marc’Aurelio Ranzato, Andrew Senior, Paul Tucker, 17 Ke Yang, and Andrew Y. Ng. Large scale distributed deep networks. In NIPS, 2012.
上記のように多くのサンプルを集めることで精度が高くなるが、判断内容はいわゆる多数決で決めるような平均的な回答に近づいていく。一方で、各家庭では独自の文化があるように、深層学習においてもパーソナライズ化が必要とされており、各家庭の個別のサンプルを用いて学習を行った方が各家庭に適した判断ができるようになる。前者を共通モデル、後者を個別モデルと呼ぶとすると、個別モデルは一部の領域において高い精度を出すが、それ以外については共通モデルの方が優れることになる。
一部について個別化したモデルを作るためには、ベースとなるモデルに基づいて再学習を行うFine Tuning(非特許文献2)という手法が確立しており、共通モデルをベースとして各家庭に個別化した学習ができる。しかしながら、前記したようにこのベースとなる共通モデルもその後学習が進み、より精度の高いものに進化してしまう。そのため、個別化されたモデルもそれに基づいて更新を行うことが考えられる。しかしながら、学習した個別モデルを新しい共通モデルに置き換えて再度学習をやり直しては、これまで各ユーザ、家庭で学習してきた内容が消えてしまい、ユーザの利用感にギャップが生じてしまう。
そこで、新しい共通モデルと個別モデルをギャップなく統合する必要性が出てくる。各モデルのパラメタを計算式で統合することは学習結果の意味を失うため行われておらず、また共通モデルのニューラルネットワーク自体が変わってしまっている場合もあり困難である。一方で個別モデルの学習に用いたサンプルデータを、改めて新しい共通モデルに与えてFine Tuningをやり直すことは可能であるが、これらのサンプルデータはパーソナライズ化が進むにつれて膨大になるため、常時保持しておくことは難しい。複数の機材で並行して学習を行う並行学習の手法(非特許文献3)もあるが、これらは一つの学習モデルをタスク分散して生成する方式であって、個別に学習、また異なるネットワークモデルを持つ学習済みモデルを統合することはできない。
定期的に更新される学習済みの共通モデルがあり、これから派生した個別モデルにおいては、この更新された共通モデルと統合する必要がある。今までは、共通モデルをベースとして、個別モデルの学習に使用したサンプルデータを用いて再学習させる必要があった。しかしながら、学習が進むほどサンプルデータの量は多くなり、統合のために保持し続けることは難しくなる。
本発明は、このような事情に鑑みてなされたものであり、共通モデルから派生した個別モデルにおいて、この個別モデルと新しい共通モデルを比較して再学習することにより、個別学習に用いたサンプルデータを保持することなく、新しいモデルに個別学習の結果を反映、統合することを実現するモデル統合装置、モデル統合システム、方法およびプログラムを提供することを目的とする。
(1)上記の目的を達成するため、本発明は、以下のような手段を講じた。すなわち、本発明のモデル統合装置は、複数のニューラルネットワークモデルを統合するモデル統合装置であって、同一の入力を受け付けた、1つの学習済みの共通モデル、前記共通モデルに基づいて学習を進めた個別モデル、および前記共通モデルに基づいて学習を進めた新たな共通モデルからの出力を、それぞれ第1の出力、第2の出力、第3の出力として取得する出力取得部と、前記取得された各出力のうち、少なくとも前記第1の出力の精度と前記第2の出力の精度とに基づいた前記第2の出力を優先する基準に従って、いずれか1つを選択して出力するセレクタと、を備える。
これにより、学習済みの共通モデルから派生した個別モデルにおいて、その個別に学習した結果を失うことなく、新たな共通モデルと統合することができる。
(2)また、本発明のモデル統合装置は、前記共通モデルに基づいて学習を進めた新たな共通モデルに基づき、入力に対して判定結果を出力するモデル判定部と、前記選択された1つの出力に基づいて、前記新たな共通モデルに再学習を実施する再学習部と、を備え、前記新たな共通モデルに再学習が実施された場合、前記モデル判定部は、再学習された共通モデルに基づき、入力に対して判定結果を出力し、前記出力取得部は、再学習された共通モデルの出力を第3の出力として取得する。
これにより、個別モデルを生成したデータが無くとも、新しいデータに対してその判定結果を利用することで、新たな共通モデルに基づいた新たな個別モデルを漸次に生成できる。また、新たな共通モデルで精度が向上した部分についても、取り入れることができる。
(3)また、本発明のモデル統合装置は、前記新たな共通モデルに基づいて学習を進めた第3の共通モデルの有無を判断し、前記第3の共通モデルがある場合は前記第3の共通モデルを取り込み、前記新たな共通モデルと置き換える更新部を備え、前記第3の共通モデルが取り込まれた場合、前記モデル判定部は、前記第3の共通モデルに基づき、入力に対して判定結果を出力し、前記出力取得部は、同一の入力を受け付けた、前記新たな共通モデル、前記再学習されたモデル、および前記第3の共通モデルからの出力をそれぞれ第1の出力、第2の出力、第3の出力として取得し、前記再学習部は、前記選択された1つの出力に基づいて、前記第3の共通モデルに再学習を実施する。
これにより、新たな共通モデルに対してより精度を向上させた第3の共通モデルに基づいて、新たな個別モデルを生成できる。また、第3の共通モデルで精度が向上した部分についても、取り入れることができる。
(4)また、本発明のモデル統合装置において、前記再学習部は、前記第2の出力と前記第3の出力とが、予め定められた閾値以上の割合で一致したときに再学習を停止する。
これにより、十分に再学習がされたモデルに対して、繰り返し再学習されることがなくなり、無駄な処理を行わない。
(5)また、本発明のモデル統合装置において、前記出力取得部は、同一の入力を受け付けた、前記共通モデルとは異なる1以上のその他の共通モデルからの出力をさらに取得し、前記セレクタは、少なくとも前記第1の出力の精度と前記第2の出力の精度とに基づいた前記第2の出力を優先する基準に従って、前記出力取得部が取得したすべての出力のうちいずれか1つを選択して出力する。
これにより、学習済みの共通モデルから派生した個別モデルにおいて、その個別に学習した結果を失うことなく、新たな共通モデルまたはその他の共通モデルの出力結果を利用することができる。
(6)また、本発明のモデル統合システムは、複数のニューラルネットワークモデルを統合するモデル統合システムであって、共通モデルを管理し、学習を進めることにより精度を向上させる共通モデルサーバと、(3)に記載のモデル統合装置と、を備え、前記共通モデルサーバは、学習を進めた新たな共通モデルを定期的に公開し、前記モデル統合装置は、前記新たな共通モデルを定期的に取り込む。
これにより、サーバが公開した新たな共通モデルに基づいた新たな個別モデルを定期的に生成できる。なお、共通モデルサーバが管理する共通モデルには、学習済みの共通モデル、新たな共通モデル、第3の共通モデル、その他の共通モデルなど様々な共通モデルが含まれる。
(7)また、本発明のモデル統合方法は、複数のニューラルネットワークモデルを統合するモデル統合方法であって、同一の入力を受け付けた、1つの学習済みの共通モデル、前記共通モデルに基づいて学習を進めた個別モデル、および前記共通モデルに基づいて学習を進めた新たな共通モデルからの出力をそれぞれ第1の出力、第2の出力、第3の出力として取得するステップと、前記それぞれの出力のうち、少なくとも前記第1の出力の精度と前記第2の出力の精度とに基づいた前記第2の出力を優先する基準に従って、いずれか1つを選択して出力するステップと、を含む。
これにより、学習済みの共通モデルから派生した個別モデルにおいて、その個別に学習した結果を失うことなく、新たな共通モデルと統合することができる。
(8)また、本発明のモデル統合プログラムは、複数のニューラルネットワークモデルを統合するモデル統合プログラムであって、同一の入力を受け付けた、1つの学習済みの共通モデル、前記共通モデルに基づいて学習を進めた個別モデル、および前記共通モデルに基づいて学習を進めた新たな共通モデルからの出力をそれぞれ第1の出力、第2の出力、第3の出力として取得する処理と、前記それぞれの出力のうち、少なくとも前記第1の出力の精度と前記第2の出力の精度とに基づいた前記第2の出力を優先する基準に従って、いずれか1つを選択して出力する処理と、の一連の処理をコンピュータに実行させる。
これにより、学習済みの共通モデルから派生した個別モデルにおいて、その個別に学習した結果を失うことなく、新たな共通モデルと統合することができる。
本発明によれば、学習済みの共通モデルから派生した個別モデルにおいて、その個別に学習した結果を失うことなく、新たな共通モデルと統合することができる。
モデルの利用構成を示す概念図である。 モデルの発展の経時的な流れを示す概念図である。 モデルの発展の経時的な流れを示す概念図である。 第1の実施形態に係るモデル統合装置の構成の一例を示すブロック図である。 モデル判定機能により入力に対して判定結果として出力された情報の一例を示す表である。 第1の実施形態に係るモデル統合装置の構成の一例を示すブロック図である。 第1の実施形態に係るモデル統合装置の構成の一例を示すブロック図である。 個別モデルと新たな共通モデルを統合する動作を示すフローチャートである。 第2の実施形態に係るモデル統合装置の構成の一例を示すブロック図である。 第2の実施形態に係るモデル統合装置の構成の一例を示すブロック図である。 (a)は、共通モデルに基づいて個別モデルを生成するまでの動作を示すフローチャートである。(b)は、個別モデルを生成した後、個別モデルと新たな共通モデルを統合すると共に、新たな共通モデルに基づいて新たな個別モデルを生成するまでの動作を示すフローチャートである。 第3の実施形態に係るモデル統合装置およびモデル統合システムの構成の一例を示すブロック図である。 モデルが置き換えられた後の、第3の実施形態に係るモデル統合装置およびモデル統合システムの構成の一例を示すブロック図である。 モデルを置き換えるまでの動作を示すフローチャートである。
以下に本願での用語の定義を説明する。特記される場合を除き、以下の定義により解釈されるものとする。
(1)共通モデルは、不特定多数の人やノードなどから収集したデータをサンプルデータとして学習をした、ニューラルネットワークモデルである。学習済みの共通モデルは、通常の使用ができる程度まで学習された共通モデルである。
(2)個別モデルは、特定少数の人やノード(特定の個人や家庭、会社など)から収集したデータをサンプルデータとして、共通モデルを基にさらに学習をした、ニューラルネットワークモデルである。サンプルデータの偏りによって、一部の領域の入力に対しては、基となった共通モデルよりも高い精度の出力が得られる。
(3)学習は、問題の最適解を求める過程で、試行錯誤と結果のフィードバックによってよりよい解法へ近づいていくことである。ニューラルネットワークモデルは、学習によって通常は精度が向上する。
(4)共通学習とは、共通モデルを得るため、または、共通モデルの精度を上げるために、不特定多数の人やノードなどから収集したデータをサンプルデータとして学習をすることである。
(5)個別に学習する(個別学習)とは、共通モデルに基づいて個別モデルを得るため、または、個別モデルの精度を上げるために、特定少数の人やノードから収集したデータをサンプルデータとして、学習をすることである。再学習も同じ意味で使用する。また、モデル統合装置の出力を利用して、自動で行うことも、ユーザのフィードバックの入力により行うことも含む。
次に、本発明の実施の形態について、図面を参照しながら説明する。説明の理解を容易にするため、各図面において同一の構成要素に対しては同一の参照番号を付し、重複する説明は省略する。
(モデルの利用構成)
本発明が想定するモデルの利用構成を図1に示す。一般的に深層学習などによるモデルは、大量のサンプルデータに基づいて作成される。これは一度作成されるだけではなく、継続的なサンプルデータの収集に基づいて常に更新し続ける。例えば、各家庭で収集したデータをクラウド上に集めて学習する、スマートフォンで収集したデータをクラウド上に集めて学習するなどが行われている。この学習によって生成されたモデルは汎用的な共通モデルであり、幅広く使用することができる。一方で、各家庭、各スマートフォンでも個別に学習が進んでいる。例えば、特定の発音、特定の操作、個人の画像などその利用者、利用環境にあった内容によって学習される。この場合、サンプルデータが少なくなりやすいことから、前記した共通モデルに基づき再学習して利用されることが多い。そのため、図1に示すようにサンプルデータの収集と共通モデルの学習、それに基づく個別の学習やその個別モデルの利用の関係が成り立つ。
(モデルの発展の流れ)
次に、モデルの発展の経時的な流れを図2に示す。ある時点で既に存在する学習済みの共通モデルを「モデルA1」、これを複製したものを「モデルZ1」、これに基づいて個別に学習したモデルを「モデルZ1’」とする。一方で、「モデルA1」は時間経過と共にさらに学習を重ね「モデルA2」が生成される。この「モデルA2」は「モデルA1」よりも基本的には精度が高く、より広い判定ができるものとなっている。しかし、一般的な判断をするものであり、「モデルZ1’」を使用した方がよい場合がある。そこで、モデル統合装置を用いることで、学習済みの共通モデルから派生した個別モデルにおいて、その個別に学習した結果を失うことなく、新たな共通モデルと統合することができる。
また、再度「モデルA2」に基づいて個別に学習したモデル「モデルZ2’」を生成したい。しかしながら、「モデルZ2’」は、一般的に「モデルZ1’」や「モデルA2」から計算により求めることができない。そこで、モデル統合装置の出力を用いて、「モデルA2」を複製した「モデルZ2」に基づいて再学習したモデル「モデルZ2’」を漸次に生成する。
また、図3に示すように、途中でほかの共通モデルでも合わせて取り込むことも可能にする。これは個別に学習した「モデルZ1’」を新しい共通モデルに適用させる際に、元となった「モデルA」以外の共通モデルを統合するものである。この統合する共通モデルは、B、C、D、E、…とN個取り扱うことができる。
[第1の実施形態]
(モデル統合装置の構成)
図4は、本実施形態に係るモデル統合装置10の構成の一例を示すブロック図である。モデル統合装置10は、出力取得部12とセレクタ14とから構成されている。モデル統合装置10は、出力取得部12により取得された3以上の出力のうち、セレクタ14が1つを選択して出力する。
出力取得部12は、少なくとも、同一の入力を受け付けた、「モデルZ1」(学習済みの共通モデル)、「モデルZ1’」(個別モデル)、および「モデルA2」を複製した「モデルZ2」(新たな共通モデル)からの出力を、それぞれ第1の出力、第2の出力、第3の出力として取得する。モデルの出力とは、モデル判定部16により入力に対して判定結果として出力された情報であり、学習内容のモデルによって異なるが、例えば椅子や机などのモノの判定。人物やペットなどの判定。また話しかけに対する対応タスクの選択などがあり得る。例えば、図5の表のような情報である。出力取得部12は、この出力のうち、例えば、「ClassID_X_k」(モデルXに基づいた、k番目に精度が高い判定内容)および「Confidence_X_k」(モデルXに基づいた、k番目の判定内容の精度)などの必要な情報を取り込む。なお、k=1のときは、「_k」を省略して表す。モデル判定部16はモデル毎にあるが、基とするモデルが異なるだけで、機能は同じである。
モデルZ1判定部16aは、「モデルZ1」に基づき、入力に対して判定結果を出力する機能を有する。出力内容は、判定内容を示す「ClassID_Z1_k」とその確からしさを示す精度「Confidence_Z1_k」の組からなる表である。例えば、入力は静止画映像で、「ClassID_Z1」は「テーブル」、「Confidence_Z1」は0.788などである。
モデルZ1’判定部16bは、前記したモデルZ1判定部16aと同等の機能を持つが、判定に使用する学習モデルは個別に学習を進めたモデルであることが異なる。出力は、判定内容の「ClassID_Z1’_k」と、その精度「Confidence_Z1’_k」の組からなる表となる。
モデルZ2判定部16cは、前記したモデルZ1判定部16aと同等の機能を持つが、判定に使用する学習モデルは精度が上がった共通モデルであることが異なる。出力は、判定内容の「ClassID_Z2_k」と、その精度「Confidence_Z2_k」の組からなる表となる。
セレクタ14は、出力取得部12が取得した、少なくとも「モデルZ1」、「モデルZ1’」、および「モデルZ2」の出力を入力とし、いずれか1つを選択して出力する。この処理は、例えば、次のような基準に従って選択させることができる。
Confidence_Z1’>Confidence_Z1であれば、ClassID_Z1’を出力とする。
それ以外は、ClassID_Z2を出力とする。
これを詳細に場合分けすると次のようになる。
a)ClassID_Z1、ClassID_Z1’、ClassID_Z2がいずれも等しい場合
ClassID_Z2を出力とする。
b)ClassID_Z1、ClassID_Z1’が等しく、ClassID_Z2が異なる場合
Confidence_Z1’>Confidence_Z1であれば、ClassID_Z1’を出力とする。
それ以外は、ClassID_Z2を出力とする。
c)ClassID_Z1、ClassID_Z2が等しく、ClassID_Z1’が異なる場合
Confidence_Z1’>Confidence_Z1であれば、ClassID_Z1’を出力とする。
それ以外は、ClassID_Z2を出力とする。
d)ClassID_Z1’、ClassID_Z2が等しく、ClassID_Z1が異なる場合
ClassID_Z2を出力とする。
e)ClassID_Z1、ClassID_Z1’、ClassID_Z2のいずれも異なる場合
Confidence_Z1’>Confidence_Z1であれば、ClassID_Z1’を出力とする。
それ以外は、ClassID_Z2を出力とする。
モデル統合装置10は、図6に示すように、N個の共通モデルを統合して、出力を選択してもよい。図4と比較して、次の機能ブロックが異なる。
モデルB2判定部16eは、前記したモデルZ1判定部16aと同等の機能を持つが、判定に使用する学習モデルが「モデルB2」であることが異なる。出力は、判定内容の「ClassID_B2_k」と、その精度「Confidence_B2_k」の組からなる表となる。同様に、モデルC2判定部、モデルD2判定部とN個の判定部がある。
セレクタ14は、「モデルZ1」、「モデルZ1’」、「モデルZ2」、「モデルB2」…の判定結果の出力を入力とし、いずれか1つを選択して出力する。この処理は、例えば、次のような基準に従って選択させることができる。
Confidence_Z1’>Confidence_Z1であれば、ClassID_Z1’を出力とする。
それ以外は、「モデルZ1」「モデルZ1’」を除く尤も精度の高いClassIDを出力とする。
なお、本実施形態に係るモデル統合装置10は、図4および図6のようにモデル判定部16を備えない装置について説明したが、図7のように、モデル毎のモデル判定部16の一部またはすべてを備えていてもよい。
(モデル統合装置の動作)
次に、モデル統合装置10の動作について説明する。図8は、個別モデル「モデルZ1’」と新たな共通モデル「モデルZ2」を統合する動作を示すフローチャートである。
出力取得部12は、少なくとも、同一の入力を受け付けた、「モデルZ1」、「モデルZ1’」、および「モデルA2」を複製した「モデルZ2」からの出力を、それぞれ第1の出力、第2の出力、第3の出力として取得し、その他の出力があるときはその他の出力も取得する(ステップS1)。次に、出力取得部12は、取得した第1から第3の出力、およびその他の出力があるときはその他の出力をセレクタ14に入力する(ステップS2)。そして、セレクタ14は、上記のような、少なくとも第1の出力の精度と第2の出力の精度とに基づいた第2の出力を優先する基準に従って、いずれか1つを選択して出力する(ステップS3)。このような動作により、学習済みの共通モデルから派生した個別モデルにおいて、その個別に学習した結果を失うことなく、新たな共通モデルと統合した判定結果を出力することができる。
[第2の実施形態]
第1の実施形態では、モデル統合装置10が、学習済みの共通モデルから派生した個別モデルにおいて、その個別に学習した結果を失うことなく、新たな共通モデルと統合した判定結果を出力する構成としているが、その統合した判定結果を利用して、新たな共通モデルに再学習をさせることにより、新たな共通モデルに基づいた個別モデルを生成できる構成にしてもよい。
(モデル統合装置の構成)
図9は、本実施形態に係るモデル統合装置10の構成の一例を示すブロック図である。モデル統合装置10は、第1の実施形態にも示した出力取得部12とセレクタ14の構成以外に、モデルZ1判定部16a、モデルZ1’判定部16b、モデルZ2’判定部16d、および再学習部20から構成されている。モデル統合装置10は、出力取得部12により取得された3以上の出力のうち、セレクタ14が1つを選択して出力すると共に、再学習部20がセレクタ14が選択した出力に基づいて「モデルZ2’」に再学習を実施し、「モデルZ2」に基づいた新たな個別モデルを漸次に生成する。なお、ブロック図において、黒矢印は、学習によってモデルの中身が変化することを示す。「モデルZ2’」の初期値は、「モデルZ2」であり、これが学習によって「モデルZ2’」に変化する。
モデルZ1判定部16a、モデルZ1’判定部16b、モデルZ2’判定部16dは、それぞれ、「モデルZ1」、「モデルZ1’」、「モデルZ2’」に基づいて、入力に対して判定結果を出力する。出力取得部12、セレクタ14、の機能は、第1の実施形態と同様である。ただし、出力取得部12は、第3の出力をモデルZ2’判定部16dから取得する。また、セレクタ14の出力選択の判定基準は、上記基準のZ2をZ2’に置き換えたものとする。
再学習部20は、セレクタ14の出力が「ClassID_Z2’」でなかった場合、その入力と出力をサンプルデータとして、「モデルZ2’」に対して再学習を行う機能である。この再学習を繰り返すことで、「モデルZ2’」の中身は漸次に個別学習されたものへと変化する。
モデルZ2’判定部16dは、「モデルZ2’」に基づいて、入力に対して判定結果を出力するが、「モデルZ2’」が再学習される前は、「モデルZ2」に基づいた判断結果となる。また、モデルZ2’判定部16dは、「モデルZ2’」が再学習により漸次に変化するのに従い、再学習後は、再学習された「モデルZ2’」に基づいて、入力に対して判定結果を出力する。
なお、本実施形態に係るモデル統合装置10は、図9のように、モデルZ2’判定部16d以外のモデル毎のモデル判定部16も備えた装置について説明したが、図10のように、モデルZ2’判定部16dのみ備えた装置であってもよい。
(モデル統合装置の動作)
次に、モデル統合装置10の動作について説明する。図11(a)は、共通モデル「モデルA1」を複製した「モデルZ1」に基づいて個別モデル「モデルZ1’」を生成するまでの動作を示すフローチャートである。図11(b)は、個別モデル「モデルZ1’」を生成した後、「モデルZ1’」と新たな共通モデルである「モデルA2(Z2)」を統合すると共に、「モデルZ2」に基づいて新たな個別モデル「モデルZ2’」を生成するまでの動作を示すフローチャートである。
モデル統合装置10は、共通学習された「モデルA1」をダウンロードして取り込む。これを後に参考するために、複製して「モデルZ1」として保存しておく。また、これとは別に、個別に学習させるモデルのベースとして別途複製して保持し、これを「モデルZ1’」とする(ステップT1)。各ノードで実際に利用されると映像や音声などのデータが与えられ、このデータと「モデルZ1’」に基づき判定される(ステップT2)。初期状態では「モデルZ1」と「モデルZ1’」の差分はないが学習が進むと差異が生じる。判定結果が出力され、各ノードの機能としてそのまま利用される(ステップT3)。このフェーズでは共通モデルの学習結果を利用することが可能であり、共通モデルに基づくサービスが提供できる。
一方で出力された結果に対して、別途表示ディスプレイや音声などのユーザインタフェース(UI)を通してユーザよりフィードバックを得る。例えば、間違った出力判定に対して、訂正を入力される、もしくは出力が不明なため答えを問い合わせるなどが行われる(ステップT4)。フィードバックされた結果に基づいて、「モデルZ1’」の再学習を行う(ステップT5)。これは特定の映像や言葉など、各家庭や、ユーザの個別学習になる。
モデル統合装置10は、定期的な、またはユーザの指示による更新として、新たな共通モデルである「モデルA2」をダウンロードして取り込む。これを後で参考とするために複製して、「モデルZ2」として保存する。また、これとは別に、個別に学習させるモデルのベースとして別途複製して保存し、これを「モデルZ2’」とする(ステップT6)。このフェーズでも、各ノードで実際に利用されると映像や音声などのデータが与えられる。このデータが「モデルZ1」、「モデルZ1’」および「モデルZ2’」(再学習される前は、中身は「モデルZ2」)に基づき判定され、セレクタ14により選択される(ステップT7)。例えば、映像を入力して、「モデルZ1」ではαさん、精度0.77、「モデルZ1’」ではβさん、精度0.89、「モデルZ2’」ではαさん、精度0.90となった場合、セレクタ14によって出力されるのは「モデルZ1’」によるβさんである。新たな共通モデルの結果よりも、個別に学習した結果が優先され、利用者にとって更新時のギャップがなくなる。この選択結果は、各ノードの機能としてそのまま利用され、これに基づくサービスが同様に提供できる(ステップT8)。
このフェーズでも同様に、出力された結果に対して、UIを通してユーザよりフィードバックを得る。例えば、間違った出力判定に対して、訂正を入力される、もしくは出力が不明なため答えを問い合わせるなどが行われる(ステップT9)。フィードバックされた結果に基づいて、「モデルZ2’」の再学習を行う(ステップT10)。これは特定の映像や言葉など、各ユーザ独自の学習になる。ステップT1〜ステップT5までのフェーズと異なるのは、「モデルZ2’」の再学習においては、ユーザのフィードバックが無くても、セレクタ14により選択された出力を正解とみなして再学習を行うことである。これにより、データが繰り返し与えられると、「モデルZ2’」の内容は、「モデルZ1’」で個別に学習した内容に近づく。
上記の動作により、「モデルZ1’」を生成したデータが無くとも、新しいデータに対してその判定結果を利用することで、新たな共通モデル「モデルZ2」に基づいた個別モデル「モデルZ2’」を漸次に生成できる。また、「モデルZ2」で新しく精度が向上した部分についても、「モデルZ1」と「モデルZ1’」の精度を確認することで、古い判定に引きずられることを避けている。なお、複数の共通モデルを統合する場合は、ステップT6でその他の共通モデルも取り込んで保存しておき、セレクタ14に基づく判定出力を得るときに使用する。
なお、セレクタ14の入力を「モデルZ1’」および「モデルZ2’」の出力2つとし、精度の高い方をセレクタ14の出力として、再学習してもよい。この場合、高い精度の誤りデータは残り続けるため、ユーザによるフィードバックがされないときは、再学習の精度は落ちる。また、セレクタ14の機能として自動的に選択するのではなく、画面表示などがある機器であれば、UIを通していずれを選択するかをユーザに問い合わせてもよい。その選択結果を出力として学習する。再学習は、リアルタイムに行ってもよい。また夜間など処理量が少ないときにまとめてバッチ処理にて行ってもよい。
セレクタ14において「ClassID_Z2’」の結果を出力することが多数(例えば98%など)になると、統合のための再学習を止めることが好ましい。十分に再学習がされたモデルに対して、繰り返し再学習されることがなくなり、無駄な処理を行わないからである。この場合は、再学習された「モデルZ2’」のみを使用する。また、再学習された「モデルZ2’」、「モデルZ2」、および図2に示す新たに精度の向上した「モデルA3」を使用して、同様の学習を繰り返してもよい。
なお、セレクタ14は、少なくとも「モデルZ1」と「モデルZ1’」の出力の精度を比較することにより、個別に学習した結果を優先して出力する機能ブロックであるが、「モデルZ1」と「モデルZ1’」の出力の精度の比較方法は上記の方法に限られない。例えば、次のような基準を用いてもよい。
Confidence_Z1’−Confidence_Z1>τ
これは「モデルZ1’」の出力の精度がある一定(τ)以上、「モデルZ1」よりも大きいことを条件とするものである。
また、「モデルZ1」の2番目に精度の高い出力を「Confidence_Z1_2」、同様に「モデルZ1’」の2番目に精度の出力を「Confidence_Z1’_2」とした場合に、
Confidence_Z1’−Confidence_Z1’_2>Confidence_Z1−Confidence_Z1_2
これは出力結果に対してほかに同精度の出力がないことを条件とするものである。次のようにも記述できる。
Confidence_Z1’/Confidence_Z1’_2>Confidence_Z1/Confidence_Z1_2
また、これらの考え方を組み合わせて、
Confidence_Z1’−Confidence_Z1’_2>τ かつ Confidence_Z1’>Confidence_Z1
などとしてもよい。
[第3の実施形態]
第2の実施形態では、モデル統合装置10が、統合した判定結果を利用して、新たな共通モデルに再学習をさせることにより、新たな共通モデルに基づいた個別モデルを生成できる構成であったが、新たな共通モデルも順次発展すると考えられるため、第2の実施形態の構成に加えて、新たな共通モデルに基づいて学習を進めた第3の共通モデルの有無を判断し、第3の共通モデルがある場合は前記第3の共通モデルを取り込み、新たな共通モデルと置き換える構成としてもよい。
(モデル統合装置の構成)
図12は、本実施形態に係るモデル統合装置10およびモデル統合システム100の構成の一例を示すブロック図である。モデル統合装置10は、第2の実施形態に示した構成以外に、「モデルA2」(新たな共通モデル)に基づいて学習を進めた「モデルA3」(第3の共通モデル)の有無を判断し、「モデルA3」がある場合は「モデルA3」を取り込み、「モデルZ2’」と置き換える更新部22を備える。更新部22以外の機能は第2の実施形態と同様なので省略する。
更新部22は、定期的にまたはユーザの指示により、「モデルA2」に基づいて学習を進めた「モデルA3」の有無を判断し、「モデルA3」がある場合は「モデルA3」を取り込み、これを複製した「モデルZ3’」と「モデルZ2’」とを置き換える。
「モデルA3」が取り込まれ、「モデルZ2’」と「モデルZ3’」とが置き換えられた場合、各モデル判定部16は、基とするモデルを変更し、「モデルZ2」(新たな共通モデル)、「モデルZ2’」(再学習されたモデル)、および「モデルZ3’」(第3の共通モデル)に基づき、同一の入力を受け付けて、判定結果を出力する。
また、出力取得部12は、各モデル判定部16により出力された「モデルZ2」、「モデルZ2’」、および「モデルZ3’」からの出力をそれぞれ第1の出力、第2の出力、第3の出力として取得する。「モデルZ2’」と「モデルZ3’」とが置き換えられた後のモデル統合装置10の構成の一例は、図13に示されるとおりである。
なお、本実施形態に係るモデル統合装置10は、図12および図13のような、モデルZ2’判定部16d(更新部により置き換えられた後は、モデルZ3’判定部16fとなる。)以外のモデル毎のモデル判定部16も備えた装置について説明したが、第2の実施形態の図10のように、モデルZ2’判定部16dのみ備えた装置であってもよい。
(モデル統合装置の動作)
次に、モデル統合装置10の動作について説明する。図14は、モデルを置き換えるまでの動作を示すフローチャートである。まず、更新部22は、定期的にまたはユーザの指示により、「モデルA2」に基づいて学習を進めた「モデルA3」の有無を判断する(ステップU1)。そして、「モデルA3」がある場合は「モデルA3」を取り込み、これを複製した「モデルZ3’」と「モデルZ2’」とを置き換える(ステップU2)。一方、「モデルA3」がない場合は終了する。次に、各モデル判定部16は、基とするモデルを置き換える(ステップU3)。このような動作により、最新の共通モデルを取得する。
モデルを置き換えた後の動作は、基とするモデルが異なるだけで、第2の実施形態で示した図11(b)の動作と同様である。このような動作により、新たな共通モデルに対してより精度を向上させた第3の共通モデルに基づいて、新たな個別モデルを生成できる。また、第3の共通モデルで精度が向上した部分についても、取り入れることができる。
(モデル統合システムの構成)
本実施形態に係るモデル統合装置10は、学習を進めた共通モデルが定期的に公開される共通モデルサーバ50と組み合わせて、モデル統合システム100として構成できる。共通モデルサーバ50は、一連の共通モデルを管理し、学習を進めることにより精度を向上させる。また、共通モデルサーバ50は、学習を進めた共通モデルを定期的に公開する。
モデル統合装置10は、定期的に公開される共通モデルを定期的に取り込み、最新の共通モデルに基づいて新たな個別モデルを生成する。これにより、共通モデルサーバ50が公開した新たな共通モデルに基づいた新たな個別モデルを定期的に生成できる。
10 モデル統合装置
12 出力取得部
14 セレクタ
16、16a〜16f モデル判定部
20 再学習部
22 更新部
50 共通モデルサーバ
100 モデル統合システム

Claims (8)

  1. 複数のニューラルネットワークモデルを統合するモデル統合装置であって、
    同一の入力を受け付けた、1つの学習済みの共通モデル、前記共通モデルに基づいて学習を進めた個別モデル、および前記共通モデルに基づいて学習を進めた新たな共通モデルからの出力を、それぞれ第1の出力、第2の出力、第3の出力として取得する出力取得部と、
    前記取得された各出力のうち、少なくとも前記第1の出力の精度と前記第2の出力の精度とに基づいた前記第2の出力を優先する基準に従って、いずれか1つを選択して出力するセレクタと、を備えることを特徴とするモデル統合装置。
  2. 前記共通モデルに基づいて学習を進めた新たな共通モデルに基づき、入力に対して判定結果を出力するモデル判定部と、
    前記選択された1つの出力に基づいて、前記新たな共通モデルに再学習を実施する再学習部と、を備え、
    前記新たな共通モデルに再学習が実施された場合、
    前記モデル判定部は、再学習された共通モデルに基づき、入力に対して判定結果を出力し、
    前記出力取得部は、再学習された共通モデルの出力を第3の出力として取得することを特徴とする請求項1記載のモデル統合装置。
  3. 前記新たな共通モデルに基づいて学習を進めた第3の共通モデルの有無を判断し、前記第3の共通モデルがある場合は前記第3の共通モデルを取り込み、前記新たな共通モデルと置き換える更新部を備え、
    前記第3の共通モデルが取り込まれた場合、
    前記モデル判定部は、前記第3の共通モデルに基づき、入力に対して判定結果を出力し、
    前記出力取得部は、同一の入力を受け付けた、前記新たな共通モデル、前記再学習されたモデル、および前記第3の共通モデルからの出力をそれぞれ第1の出力、第2の出力、第3の出力として取得し、
    前記再学習部は、前記選択された1つの出力に基づいて、前記第3の共通モデルに再学習を実施することを特徴とする請求項2記載のモデル統合装置。
  4. 前記再学習部は、前記第2の出力と前記第3の出力とが、予め定められた閾値以上の割合で一致したときに再学習を停止することを特徴とする請求項2または請求項3記載のモデル統合装置。
  5. 前記出力取得部は、同一の入力を受け付けた、前記共通モデルとは異なる1以上のその他の共通モデルからの出力を更に取得し、
    前記セレクタは、少なくとも前記第1の出力の精度と前記第2の出力の精度とに基づいた前記第2の出力を優先する基準に従って、前記出力取得部が取得したすべての出力のうちいずれか1つを選択して出力することを特徴とする請求項1から4のいずれかに記載のモデル統合装置。
  6. 複数のニューラルネットワークモデルを統合するモデル統合システムであって、
    共通モデルを管理し、学習を進めることにより精度を向上させる共通モデルサーバと、
    請求項3に記載のモデル統合装置と、を備え、
    前記共通モデルサーバは、学習を進めた新たな共通モデルを定期的に公開し、
    前記モデル統合装置は、前記新たな共通モデルを定期的に取り込むことを特徴とするモデル統合システム。
  7. 複数のニューラルネットワークモデルを統合するモデル統合方法であって、
    同一の入力を受け付けた、1つの学習済みの共通モデル、前記共通モデルに基づいて学習を進めた個別モデル、および前記共通モデルに基づいて学習を進めた新たな共通モデルからの出力をそれぞれ第1の出力、第2の出力、第3の出力として取得するステップと、
    前記それぞれの出力のうち、少なくとも前記第1の出力の精度と前記第2の出力の精度とに基づいた前記第2の出力を優先する基準に従って、いずれか1つを選択して出力するステップと、を含むことを特徴とする方法。
  8. 複数のニューラルネットワークモデルを統合するモデル統合プログラムであって、
    同一の入力を受け付けた、1つの学習済みの共通モデル、前記共通モデルに基づいて学習を進めた個別モデル、および前記共通モデルに基づいて学習を進めた新たな共通モデルからの出力をそれぞれ第1の出力、第2の出力、第3の出力として取得する処理と、
    前記それぞれの出力のうち、少なくとも前記第1の出力の精度と前記第2の出力の精度とに基づいた前記第2の出力を優先する基準に従って、いずれか1つを選択して出力する処理と、の一連の処理をコンピュータに実行させることを特徴とするプログラム。
JP2017042153A 2017-03-06 2017-03-06 モデル統合装置、モデル統合システム、方法およびプログラム Active JP6660900B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017042153A JP6660900B2 (ja) 2017-03-06 2017-03-06 モデル統合装置、モデル統合システム、方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017042153A JP6660900B2 (ja) 2017-03-06 2017-03-06 モデル統合装置、モデル統合システム、方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2018147261A JP2018147261A (ja) 2018-09-20
JP6660900B2 true JP6660900B2 (ja) 2020-03-11

Family

ID=63591270

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017042153A Active JP6660900B2 (ja) 2017-03-06 2017-03-06 モデル統合装置、モデル統合システム、方法およびプログラム

Country Status (1)

Country Link
JP (1) JP6660900B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7391503B2 (ja) * 2018-11-20 2023-12-05 株式会社東芝 情報処理システムおよび情報処理方法
JP7036049B2 (ja) * 2019-01-18 2022-03-15 オムロン株式会社 モデル統合装置、モデル統合方法、モデル統合プログラム、推論システム、検査システム、及び制御システム
JP7262232B2 (ja) * 2019-01-29 2023-04-21 東京エレクトロン株式会社 画像認識システムおよび画像認識方法
JP6798571B2 (ja) * 2019-03-08 2020-12-09 トヨタ自動車株式会社 モデル集約装置及びモデル集約システム
US11526899B2 (en) 2019-10-11 2022-12-13 Kinaxis Inc. Systems and methods for dynamic demand sensing
US11886514B2 (en) 2019-10-11 2024-01-30 Kinaxis Inc. Machine learning segmentation methods and systems
US20210110299A1 (en) * 2019-10-15 2021-04-15 Kinaxis Inc. Interactive machine learning
JP7462259B2 (ja) 2020-01-14 2024-04-05 パナソニックIpマネジメント株式会社 計測装置、システム、計測方法、及びプログラム
US11409287B2 (en) 2020-01-17 2022-08-09 Baidu Usa Llc Neural task planner for autonomous vehicles
JP7396133B2 (ja) 2020-03-11 2023-12-12 オムロン株式会社 パラメータ調整装置、推論装置、パラメータ調整方法、及びパラメータ調整プログラム
WO2022107330A1 (ja) * 2020-11-20 2022-05-27 日本電気株式会社 状態判定装置、状態判定システム、状態判定方法、及び、記録媒体
JP2024009691A (ja) * 2022-07-11 2024-01-23 株式会社日立製作所 遮断器モデル生成システム、遮断器モデル生成装置及び遮断器モデル生成方法
WO2024069956A1 (ja) * 2022-09-30 2024-04-04 日本電気株式会社 学習装置、学習システム、学習方法、およびコンピュータ可読媒体

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3467556B2 (ja) * 1992-06-19 2003-11-17 セイコーエプソン株式会社 音声認識装置
JPH0696045A (ja) * 1992-09-11 1994-04-08 Toyo Electric Mfg Co Ltd パターン認識装置
JP3767954B2 (ja) * 1996-11-07 2006-04-19 富士通株式会社 需要予測装置
JP5533662B2 (ja) * 2008-10-30 2014-06-25 コニカミノルタ株式会社 情報処理装置

Also Published As

Publication number Publication date
JP2018147261A (ja) 2018-09-20

Similar Documents

Publication Publication Date Title
JP6660900B2 (ja) モデル統合装置、モデル統合システム、方法およびプログラム
Xin et al. Decentralized stochastic optimization and machine learning: A unified variance-reduction framework for robust performance and fast convergence
EP3029614B1 (en) Parallel development and deployment for machine learning models
US10824959B1 (en) Explainers for machine learning classifiers
Demongeot et al. Attraction basins as gauges of robustness against boundary conditions in biological complex systems
Zhang et al. New passivity criteria for neural networks with time-varying delay
US20220020064A1 (en) Feature processing method and apparatus for artificial intelligence recommendation model, electronic device, and storage medium
Arora et al. Deep learning with h2o
US11170319B2 (en) Dynamically inferred expertise
CN111797327B (zh) 社交网络建模的方法及装置
US20130339787A1 (en) Systematic failure remediation
Vu et al. Distributed adaptive model rules for mining big data streams
Pacheco et al. Algorithm Analysis in Multi-agent Systems
EP4285292A1 (en) Distributed machine learning with new labels using heterogeneous label distribution
CN107391136A (zh) 一种基于流式的编程系统和方法
CN117009539A (zh) 知识图谱的实体对齐方法、装置、设备及存储介质
JP2010072876A (ja) ルール作成プログラム、ルール作成方法及びルール作成装置
Chahin et al. Planning validation & verification steps according to the dependency of requirements and product architecture
Kurz et al. Simulation of a self-optimising digital ecosystem
CN106503216A (zh) 支持分层的元数据同步方法及元数据同步装置
Boeck et al. Virtual-Twin Technologies in Networking
AU2019219741A1 (en) System for generating an architecture diagram
Stram et al. Dynamic case bases and the asymmetrical weighted one-mode projection
Fischer et al. Calibration of hydrological model parameters with the JAMS framework
Streck et al. Minimization and equivalence in multi-valued logical models of regulatory networks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190418

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200122

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: 20200128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200210

R150 Certificate of patent or registration of utility model

Ref document number: 6660900

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150