(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-02-25
(45)【発行日】2025-03-05
(54)【発明の名称】学習済みモデル管理装置及び学習済みモデル管理方法
(51)【国際特許分類】
G06N 20/00 20190101AFI20250226BHJP
G06N 3/09 20230101ALI20250226BHJP
【FI】
G06N20/00 130
G06N3/09
(21)【出願番号】P 2023540442
(86)(22)【出願日】2022-08-05
(86)【国際出願番号】 JP2022030203
(87)【国際公開番号】W WO2023013788
(87)【国際公開日】2023-02-09
【審査請求日】2024-02-01
(31)【優先権主張番号】P 2021129344
(32)【優先日】2021-08-05
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000006633
【氏名又は名称】京セラ株式会社
(73)【特許権者】
【識別番号】517051371
【氏名又は名称】株式会社Rist
(74)【代理人】
【識別番号】100147485
【氏名又は名称】杉村 憲司
(74)【代理人】
【識別番号】230118913
【氏名又は名称】杉村 光嗣
(74)【代理人】
【識別番号】100132045
【氏名又は名称】坪内 伸
(74)【代理人】
【識別番号】100180655
【氏名又は名称】鈴木 俊樹
(72)【発明者】
【氏名】中村 匡芳
(72)【発明者】
【氏名】堤 匡史
(72)【発明者】
【氏名】和泉 智之
(72)【発明者】
【氏名】古川 康平
(72)【発明者】
【氏名】村岡 慧
(72)【発明者】
【氏名】樺澤 達将
【審査官】北川 純次
(56)【参考文献】
【文献】国際公開第2019/131527(WO,A1)
【文献】特開2020-144660(JP,A)
【文献】特開平10-074188(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00 - 99/00
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
第1学習用データと、前記第1学習用データに基づいて入力情報に含まれる対象物を認識可能に学習処理された学習済みモデルである第1モデルと、を記憶する第1記憶部と、
第2学習用データと、前記第2学習用データ及び前記第1モデルに基づいて生成される学習済みモデルである第2モデルと、を記憶する第2記憶部と、
前記第2モデルが生成される場合に、前記第2学習用データに基づいて、前記第1モデルを更新するか否かを判定する更新判定部と、を備える学習済みモデル管理装置。
【請求項2】
前記第1モデルは、第1ユーザ及び前記第1ユーザと異なる第2ユーザが利用可能なマスターモデルであり、
前記第2モデルは、前記第2ユーザのみが利用可能なカスタムモデルである、請求項1に記載の学習済みモデル管理装置。
【請求項3】
前記第2記憶部は、前記第2ユーザのみが利用できる、請求項2に記載の学習済みモデル管理装置。
【請求項4】
前記第2ユーザが前記カスタムモデルに代えて更新された前記マスターモデルを利用するか否かを検知する検知部を備え、
前記マスターモデルを更新すると判定された場合に、前記第2学習用データが前記第1記憶部に記憶されて、
前記第2ユーザが前記カスタムモデルに代えて更新された前記マスターモデルを利用する場合に、前記第2記憶部に記憶されている前記第2学習用データが削除される、請求項2又は3に記載の学習済みモデル管理装置。
【請求項5】
前記第2記憶部は、前記第2ユーザによって用意され、前記第2学習用データによって認識可能になる前記対象物の情報である評価用データを記憶し、
前記評価用データを前記入力情報として、更新された前記マスターモデルを用いて前記対象物の認識が実行され、前記ユーザに対して前記認識の結果の提示が行われる、請求項
2又は3に記載の学習済みモデル管理装置。
【請求項6】
前記第2ユーザが前記カスタムモデルに代えて更新された前記マスターモデルを利用する場合にも、前記第2記憶部に記憶されている前記評価用データが削除されない、請求項5に記載の学習済みモデル管理装置。
【請求項7】
前記マスターモデルを更新すると判定された場合に、前記第2記憶部に記憶された前記第2ユーザの寄与度を示すデータが更新され、
前記寄与度は、大きさに応じて前記第2ユーザの前記マスターモデル及び前記カスタムモデルの利用権限を拡大させる、請求項
2又は3に記載の学習済みモデル管理装置。
【請求項8】
前記更新判定部は、前記第2学習用データに基づいて、追加される前記対象物の汎用性が高いと判定する場合に、前記マスターモデルを更新することを判定する、請求項
2又は3に記載の学習済みモデル管理装置。
【請求項9】
前記マスターモデルは、複数の異なる学習済みモデルを含み、
前記更新判定部は、複数の前記学習済みモデルのうち、前記第2学習用データを用いた学習によって更新される一部の前記学習済みモデルを特定し、
前記更新判定部が特定した前記学習済みモデルを更新することで前記マスターモデルの更新が行われる、請求項
2又は3に記載の学習済みモデル管理装置。
【請求項10】
前記更新判定部は、学習によって認識可能にさせる前記対象物が前記第2学習用データと同一又は類似する前記第1学習用データを用いて生成された前記学習済みモデルを、前記第2学習用データを用いた学習によって更新する前記学習済みモデルとして特定する、請求項9に記載の学習済みモデル管理装置。
【請求項11】
前記第2モデルを更新する場合に、前記第1学習用データ及び前記第2学習用データに基づいて、前記第2モデルの更新処理が実行される更新処理部と、を備える、請求項1から
3のいずれか一項に記載の学習済みモデル管理装置。
【請求項12】
前記第2記憶部は、第3ユーザのみが利用可能なカスタムモデルをさらに記憶する、請求項2に記載の学習済みモデル管理装置。
【請求項13】
第1学習用データと、前記第1学習用データに基づいて入力情報に含まれる対象物を認識可能に学習処理された学習済みモデルである第1モデルと、を記憶する第1記憶部と、第2学習用データと、前記第2学習用データ及び前記第1モデルに基づいて生成される学習済みモデルである第2モデルと、を記憶する第2記憶部と、を備える学習済みモデル管理装置が実行する学習済みモデル管理方法であって、
前記第2モデルが生成される場合に、前記第2学習用データに基づいて、前記第1モデルを更新するか否かを判定すること、を含む、学習済みモデル管理方法。
【発明の詳細な説明】
【関連出願の相互参照】
【0001】
本出願は、日本国特許出願2021-129344号(2021年8月5日出願)の優先権を主張するものであり、当該出願の開示全体を、ここに参照のために取り込む。
【技術分野】
【0002】
本開示は、学習済みモデル管理装置及び学習済みモデル管理方法に関する。
【背景技術】
【0003】
従来、学習画像を用いた学習によって、画像に含まれる物体を識別する装置が知られている。例えば、特許文献1は、認識に失敗したシーンを再現したシミュレーション映像で更新(再学習)した認識モデルを、ネットワークを介して車両に配信するシステムを開示する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【0005】
本開示の一実施形態に係る学習済みモデル管理装置は、
第1学習用データと、前記第1学習用データに基づいて入力情報に含まれる対象物を認識可能に学習処理された学習済みモデルである第1モデルと、を記憶する第1記憶部と、
第2学習用データと、前記第2学習用データ及び前記第1モデルに基づいて生成される学習済みモデルである第2モデルと、を記憶する第2記憶部と、
前記第2モデルが生成される場合に、前記第2学習用データに基づいて、前記第1モデルを更新するか否かを判定する更新判定部と、を備える。
【0006】
本開示の一実施形態に係る学習済みモデル管理方法は、
第1学習用データと、前記第1学習用データに基づいて入力情報に含まれる対象物を認識可能に学習処理された学習済みモデルである第1モデルと、を記憶する第1記憶部と、第2学習用データと、前記第2学習用データ及び前記第1モデルに基づいて生成される学習済みモデルである第2モデルと、を記憶する第2記憶部と、を備える学習済みモデル管理装置が実行する学習済みモデル管理方法であって、
前記第2モデルが生成される場合に、前記第2学習用データに基づいて、前記第1モデルを更新するか否かを判定すること、を含む。
【図面の簡単な説明】
【0007】
【
図1】
図1は、一実施形態に係る学習済みモデル管理装置を備える学習済みモデル管理システムの構成例を示す図である。
【
図2】
図2は、ロボット制御システムの構成例を示す模式図である。
【
図3】
図3は、ライブラリとして提供されるモデル群の構成例を示す図である。
【
図4】
図4は、学習済みモデル管理システムにおける処理の手順の一例を示すシーケンス図である。
【発明を実施するための形態】
【0008】
以下、図面を参照して本開示の一実施形態に係る学習済みモデル管理装置及び学習済みモデル管理方法が説明される。各図中、同一又は相当する部分には、同一符号が付されている。本実施形態の説明において、同一又は相当する部分については、説明を適宜省略又は簡略化する。
【0009】
(学習済みモデル管理システムの概要)
図1は、本実施形態に係る学習済みモデル管理装置10を備える学習済みモデル管理システム1の構成例を示す。学習済みモデル管理装置10は、ライブラリとして提供される学習済みモデルの更新などを管理する装置である。ユーザは、学習済みモデルを、例えば物体の識別と識別結果の表示などのタスクに用いる。また、学習済みモデル管理装置10は、ユーザから提供される評価データと特定のモデルを用いてタスクを実行し、実行結果を出力できる。本実施形態において、モデル群は、機械学習によって対象物を認識するように生成された機械学習モデル(学習済みモデル)を複数含んで構成される。ユーザは、例えばネットワーク40経由で学習済みモデルをダウンロードすることによって利用できる。
【0010】
学習済みモデル管理装置10は、通信部11と、第1記憶部12Aと、第2記憶部12Bと、制御部13と、を備える。制御部13は、更新判定部131と、更新処理部132と、検知部133と、を備える。学習済みモデル管理装置10は、ハードウェア構成として、例えばサーバなどのコンピュータであってよい。学習済みモデル管理装置10の構成要素の詳細については後述する。
【0011】
学習済みモデル管理装置10は、ネットワーク40で接続される学習済みモデル生成装置20及び通信端末装置30とともに、学習済みモデル管理システム1を構成してよい。ネットワーク40は、例えばインターネットであるが、LAN(Local Area Network)であってよい。例えば学習済みモデル管理装置10と学習済みモデル生成装置20とがLAN経由で通信を実行し、学習済みモデル管理装置10と通信端末装置30とがインターネット経由で通信を実行してよい。
【0012】
学習済みモデル生成装置20は、機械学習によって、後述するマスターモデルやカスタムモデルを生成することができる。すなわち、学習済みモデル生成装置20は、後述する第1学習用データおよび第2学習用データなど学習用データを使用して、機械学習によって、学習済みモデルを生成することができる。また、学習済みモデル生成装置20は、新たな学習済みモデル(例えば後述するカスタムモデル)を生成する。また、学習済みモデル生成装置20は、新たな学習用データを追加して、指定されたモデルの更新(再学習)を実行してよい。なお、学習用データは、カメラなどで撮像して作成されてよいし、CAD(Computer Aided Design)のデータを用いて作成されてよい。また、学習用データは、撮像による学習用データと、CADによる学習用データとを組み合わせて作成されてよい。
【0013】
本実施形態において、学習済みモデル生成装置20は、学習済みモデル管理装置10の第1記憶部12A及び第2記憶部12Bにアクセス可能である。また、本実施形態において、学習済みモデル生成装置20は、学習済みモデル管理装置10と通信可能な、学習済みモデル管理装置10とは別のコンピュータであるが、このような構成に限定されない。例えば、学習済みモデル生成装置20は、学習済みモデル管理装置10と一体化したコンピュータで実現されてよい。なお、この場合、学習済みモデル生成装置20は、学習済みモデル管理装置10の構成要件を有していてもよいし、学習済みモデル管理装置10は、学習済みモデル生成装置20の構成要件を有していてもよい。
【0014】
通信端末装置30は、例えばスマートフォン又はタブレット端末等の汎用の通信可能な端末装置であるが、これらに限定されない。通信端末装置30は、別の例として、後述するロボット制御システム100(
図2参照)の一部で構成されてよい。通信端末装置30は、入力情報(例えば識別の対象物の画像)を生成し、学習済みモデル管理装置10に入力情報を出力する。入力情報は、更新されたモデルを評価するための評価データとして使用され得る。通信端末装置30は、ユーザが提供する学習用データを学習済みモデル管理装置10に出力する。また、通信端末装置30は、学習済みモデル管理装置10が評価データと特定のモデルを用いて実行したタスクの実行結果をユーザに提示してよい。通信端末装置30は、通信部31と、記憶部32と、制御部33と、入力情報生成部34と、ユーザインタフェース部35と、を備える。通信端末装置30の構成要素の詳細については後述する。
【0015】
ここで、本実施形態において、学習済みモデル管理システム1を利用するユーザは、第1ユーザ及び第2ユーザを含む。第1ユーザは、通信端末装置30-1を用いて、例えば第1ユーザに固有のカスタムモデルの生成などを行うことができる。また、第2ユーザは、通信端末装置30-2を用いて、例えば第2ユーザに固有のカスタムモデルの生成などを行うことができる。通信端末装置30-2は、通信端末装置30-1と同じ構成であってよい。本実施形態において、通信端末装置30-1と通信端末装置30-2とは同じ構成であって、以下において特に区別しない場合に通信端末装置30として説明が行われる。
【0016】
図2は、ロボット制御システム100の構成例を示す模式図である。ロボット制御システム100は、ロボット2と、ロボット制御装置110とを備える。ロボット2は、アーム2Aの先にあるエンドエフェクタ2B(把持ハンド)によって、作業対象物8を作業開始地点6から作業目標地点7へ移動させる。つまり、ロボット制御装置110は、作業対象物8が作業開始地点6から作業目標地点7へ移動するようにロボット2を制御する。ロボット制御システム100はカメラ4を備える。カメラ4は、ロボット2の動作に影響を及ぼす可能性がある影響範囲5にある物品等を撮影する。
【0017】
ロボット制御装置110は、カメラ4で撮影した画像に基づいて、ロボット2が作業を実施する空間に存在する作業対象物8を認識する。作業対象物8の認識は、上記のモデル群に含まれるモデル(作業対象物8を認識できる学習済みモデル)を用いて実行される。ロボット制御装置110は、作業対象物8の認識を行う前に、ネットワーク40経由で学習済みモデルをダウンロードして、デプロイ(deploy)する。
【0018】
ここで、ライブラリとして提供されるモデルが、例えば多くのユーザのロボット制御システム100においてそれぞれの要求に合うように、様々な種類の作業対象物8を認識できることが好ましい。そのため、学習済みモデル管理装置10は、例えば新たな製品を対象物として認識可能になるように、モデル群が含むマスターモデルである学習済みモデルを更新することが好ましい。ここで、ユーザは、例えば新たな製品を早急に認識対象に含めたい場合に、新たな製品に関する学習用データを用意して学習済みモデル生成装置20の機能を使ってカスタムモデルを生成することができる。このようなユーザは、マスターモデルが更新された後にも、認識精度に実績のあるカスタムモデルの方を使い続けたいことがある。そのため、学習済みモデル管理装置10は、ユーザの使用環境において、強制的なマスターモデルへの置き換えを行わずに、引き続きカスタムモデルの使用も可能なようにすることが好ましい。
【0019】
以下に説明するように、学習済みモデル管理装置10は、カスタムモデルの生成で使われた学習用データを用いて、認識対象を拡張するようにマスターモデルを更新することができる。また、学習済みモデル管理装置10は、ユーザのカスタムモデルからマスターモデルへの変更指示を確認してから、ユーザの使用環境において更新後のマスターモデルが使われるように設定する。ここで、マスターモデルとカスタムモデルの詳細は、
図3を参照しながら後述される。また、本実施形態において、通信端末装置30はユーザが所持するタブレット端末であるとして説明するが、ユーザが使用するロボット制御システム100の一部(ロボット制御装置110及びカメラ4等)を通信端末装置30として機能させることが可能である。
【0020】
(学習済みモデル管理装置の構成)
以下、学習済みモデル管理装置10の構成要素の詳細が説明される。通信部11は、ネットワーク40に接続する1つ以上の通信モジュールを含んで構成される。通信部11は、例えば4G(4th Generation)、5G(5th Generation)などの移動体通信規格に対応する通信モジュールを含んでよい。通信部11は、例えば有線のLAN規格(一例として1000BASE-T)に対応する通信モジュールを含んでよい。通信部11は、例えば無線のLAN規格(一例としてIEEE802.11)に対応する通信モジュールを含んでよい。
【0021】
第1記憶部12A及び第2記憶部12Bは、1つ以上のメモリである。メモリは、例えば半導体メモリ、磁気メモリ、又は光メモリ等であるが、これらに限られず任意のメモリとすることができる。第1記憶部12A及び第2記憶部12Bは、例えば学習済みモデル管理装置10に内蔵されるが、任意のインタフェースを介して学習済みモデル管理装置10に外部からアクセスされる構成も可能である。第1記憶部12A及び第2記憶部12Bは同じメモリで構成されて、記憶領域が分かれていてよい。また、第1記憶部12A及び第2記憶部12Bはそれぞれ物理的に異なるメモリで構成されてよい。
【0022】
第1記憶部12A及び第2記憶部12Bの少なくとも1つは、制御部13が実行する各種の算出において使用される各種のデータを記憶する。また、第1記憶部12A及び第2記憶部12Bの少なくとも1つは、制御部13が実行する各種の算出の結果及び中間データを記憶してよい。
【0023】
第1記憶部12A及び第2記憶部12Bは、上記のように、学習済みモデル生成装置20からアクセスされる。すなわち、第1記憶部12A及び第2記憶部12Bは、学習済みモデル管理装置10及び学習済みモデル生成装置20によって共用される。第1記憶部12A及び第2記憶部12Bは、モデル群(複数のモデル)等も記憶する。第1記憶部12Aはマスターモデルを記憶する。第2記憶部12Bはカスタムモデルを記憶する。
【0024】
制御部13は、1つ以上のプロセッサである。プロセッサは、例えば汎用のプロセッサ、又は特定の処理に特化した専用プロセッサであるが、これらに限られず任意のプロセッサとすることができる。制御部13は、学習済みモデル管理装置10の全体の動作を制御する。
【0025】
ここで、学習済みモデル管理装置10は、以下のようなソフトウェア構成を有してよい。学習済みモデル管理装置10の動作の制御に用いられる1つ以上のプログラムが第1記憶部12A又は第2記憶部12Bに記憶される。プログラムは、制御部13のプロセッサによって読み込まれると、制御部13を更新判定部131、更新処理部132及び検知部133として機能させる。
【0026】
更新判定部131は、カスタムモデルが生成される場合に、その学習用データに基づいて、マスターモデルを更新するか否かを判定する。本実施形態において、更新判定部131は、例えば、追加される対象物の汎用性が高いと判定する場合に、すなわち更新によって識別対象を拡張できて、汎用的に使用され得る場合に、マスターモデルを更新することを判定する。別の例として、更新判定部131は、モデル群の管理者(例えばモデルのサプライヤー)からの更新指示を受け取った場合に、汎用性の判定を行うことなく、マスターモデルを更新することを判定してよい。また、更新判定部131は、例えば、カスタムモデルの生成に使用した学習用データによって、認識対象の認識精度を向上できる場合に、マスターモデルを更新すると判定してよい。
【0027】
更新処理部132は、マスターモデルの更新に関する処理を実行する。より詳細に述べると、更新処理部132は、更新判定部131によってマスターモデルの更新が判定された場合に、例えば、機械学習(再学習)を学習済みモデル生成装置20に実行させて、マスターモデルを更新する。機械学習(再学習)は、そのマスターモデルの生成で用いられた学習用データ(第1学習用データ)とカスタムモデルの生成で用いられた学習用データ(第2学習用データ)とを用いて実行される。本実施形態において、更新処理部132の更新指示に従って学習済みモデル生成装置20がマスターモデルの更新を実行するが、別の例として更新処理部132がマスターモデルの更新を実行してよい。
【0028】
また、更新処理部132は、更新されたマスターモデルを用いてタスクを実行し、ユーザに対してタスクの実行結果の提示を行ってよい。本実施形態においてタスクは対象物の認識である。ユーザは、提示された結果に基づいて、例えば適合率(precision)及び再現率(recall)などについて評価を行って、更新されたマスターモデルがカスタムモデルに劣るか否かを確認できる。
【0029】
また、更新処理部132は、マスターモデルを更新すると判定された場合に、第2記憶部12Bに記憶されたユーザの寄与度を示すデータを更新してよい。あるユーザの第2学習用データがマスターモデルの更新に使用された場合に、そのユーザの寄与度が増大する(例えばポイントが付加される)。寄与度は、大きさに応じて、そのユーザのマスターモデル及びカスタムモデルの利用権限を拡大することができる。
【0030】
検知部133は、カスタムモデルを生成したユーザが、カスタムモデルに代えて更新されたマスターモデルを利用するか否かを検知する。検知部133は、カスタムモデルを生成したユーザが、新たな使用環境を作成する操作を行った場合に、カスタムモデルに代えて更新されたマスターモデルを利用すると判定してよい。新たな使用環境を作成する操作は、例えば新たなワーク(別の対象物の認識)を追加する場合に学習済みモデルをダウンロードして、デプロイするための新規設定を通信端末装置30で行うことである。検知部133は、カスタムモデルを生成したユーザが、従来からの使用環境を継続して用いる場合、カスタムモデルの利用を継続していると判定してよい。
【0031】
(通信端末装置の構成)
以下、通信端末装置30の構成要素の詳細が説明される。通信部31は、ネットワーク40に接続する1つ以上の通信モジュールを含んで構成される。通信部31は、例えば4G、5Gなどの移動体通信規格に対応する通信モジュールを含んでよい。また、通信部31は、LAN規格に対応する通信モジュールを含んでよい。通信部31は、通信部11と同じ通信モジュールを含んで構成されてよいし、異なる通信モジュールを含んで構成されてよい。
【0032】
記憶部32は、1つ以上のメモリである。メモリは、例えば半導体メモリ、磁気メモリ、又は光メモリ等であるが、これらに限られず任意のメモリとすることができる。記憶部32は、制御部33が実行する各種の算出において使用される各種のデータを記憶する。また、記憶部32は、制御部33が実行する各種の算出の結果及び中間データを記憶してよい。例えば記憶部32は、入力情報生成部34によって生成されて、学習済みモデル管理装置10に送信される(アップロードされる)入力情報を一時的に記憶してよい。また、例えば記憶部32は、学習済みモデル管理装置10から通信部31経由で取得した対象物の認識の結果を一時的に記憶してよい。
【0033】
制御部33は、1つ以上のプロセッサである。プロセッサは、例えば汎用のプロセッサ、又は特定の処理に特化した専用プロセッサであるが、これらに限られず任意のプロセッサとすることができる。制御部33は、通信端末装置30の全体の動作を制御する。
【0034】
入力情報生成部34は入力情報を生成する。本実施形態において入力情報は識別する対象物を含む画像である。入力情報生成部34は、例えばカメラなどの撮像部を含んで構成されてよい。本実施形態において、入力情報生成部34はカメラである。例えばユーザは、通信端末装置30のカメラで新たな対象物を含む画像を撮影して入力情報を生成してよい。この入力情報は、カスタムモデルで新たな対象物の認識が可能であるかを確認するために用いられる評価用データであってよい。
【0035】
ユーザインタフェース部35は、ユーザからの情報を入力し、ユーザへの情報を出力する。ユーザインタフェース部35は、例えばタッチセンサを含んで構成される。タッチセンサは、ユーザの指又はスタイラスペン等の接触を検出して、その接触位置を特定する。タッチセンサはディスプレイと一体化されて、タッチパネルディスプレイを構成してよい。本実施形態において、ユーザインタフェース部35はタッチパネルディスプレイである。学習済みモデル管理装置10からの提示内容はタッチパネルディスプレイに表示される。ユーザインタフェース部35は、評価用データ及び第2学習用データを入力する場合などにおいて、チャット画面などを表示して、入力を促してよい。
【0036】
(モデル群)
本実施形態において、第1記憶部12A及び第2記憶部12Bに記憶されるモデル群は、
図3に示すように区分される。モデル群は、マスターモデルとカスタムモデルに大別される。マスターモデルは、例えば、全てのユーザが利用可能な学習済みモデルである。マスターモデルは、例えば、汎用性の高い学習済みモデルである。マスターモデルは、例えば、モデル群の管理者によって生成されるモデルである。カスタムモデルは、例えば、特定のユーザによって生成される学習済みモデルである。カスタムモデルは、例えば、特定のユーザのみが利用可能な学習済みモデルであってもよい。カスタムモデルは、例えば、マスターモデルと比較して、特定の対象物の認識や、特定の環境下での対象物の認識に優れている。
【0037】
ここで、上記のように、本実施形態では、ユーザは、第1ユーザ及び第2ユーザを含む。以下、第2ユーザがカスタムモデルを生成することを前提に説明すると、マスターモデルは、第1ユーザ及び第2ユーザが利用可能な学習済みモデルである。また、第2ユーザが生成したカスタムモデルは、第2ユーザのみが利用可能な学習済みモデルであってもよい。また、第1ユーザが生成したカスタムモデルが存在する場合には、第1ユーザのみが利用可能であってよい。この場合、第2ユーザのライブラリ(利用可能なモデル)から、第1ユーザのカスタムモデルは除かれてもよい。換言すると、第2ユーザのライブラリは、マスターモデルと第2ユーザが生成したカスタムモデルとで構成されてもよい。なお、例えば、1人のユーザ(例えば第2ユーザ)が、複数のカスタムモデルを生成してよい。
【0038】
図3に示すように、マスターモデルは、汎用モデル、特化モデルを含む。汎用モデルは、大きな分類(第1分類)で対象物を認識するためのモデルである。特化モデルは、より小さな分類(第2分類)で対象物を認識するためのモデルである。第2分類は、第1分類の1つの項目について細分化するものである。
【0039】
また、上記のように、カスタムモデルはユーザが用意した第2学習用データによって生成される。詳細には、カスタムモデルはマスターモデルと第2学習用データとに基づいて生成される。つまり、本実施形態において、カスタムモデルは既存のマスターモデルを利用して生成される。カスタムモデルは、例えば、既存のマスターモデルに第2学習用データを使用して追加学習を行なうことで生成されてもよい。そのため、カスタムモデルは元となったマスターモデルと関連がある。このようなマスターモデルとカスタムモデルとの関連付けは、関連情報として第1記憶部12A及び第2記憶部12Bに記憶される。つまり、第1記憶部12A及び第2記憶部12Bは、複数のモデルの関係を定義する関連情報を記憶する。
【0040】
図3の例において、第1分類は工業部品、文房具などである。また、第2分類はボルト、ナット、ペン、ハサミなどである。例えば汎用モデルである「工業部品」は、ボルト、ナット、バネなどを認識するための学習済みモデルである。また、例えば特化モデルである「ボルト」は、ボルトの種類であるボルトA、ボルトB、ボルトCなどを認識するための学習済みモデルである。特化モデルである「ボルト」及び「ナット」は、汎用モデルである「工業部品」と関連する。関連情報は、このような汎用モデルと特化モデルとの関連付けを含んでよい。
【0041】
ここで、例えば第2ユーザが「ボルトC」の改良製品である「ボルトC´」を識別対象に加えるために、特化モデルである「ボルト」を利用して、カスタムモデルを生成することがあり得る。
図3の例において、第2ユーザのカスタムモデルの「ボルト」は、ボルトの種類であるボルトA、ボルトB、ボルトC´などを認識するための学習済みモデルである。
【0042】
また、カスタムモデルは、生成したユーザのみが利用できる場合、マスターモデルと区別して記憶される。本実施形態において、カスタムモデルは生成したユーザのみが利用できる。そのため、第1記憶部12Aが、マスターモデルと、マスターモデルの生成に用いられた第1学習用データと、を記憶する。そして、第2記憶部12Bが、カスタムモデルと、カスタムモデルの生成に用いられた第2学習用データと、を記憶する。また、第2記憶部12Bにおいて、ユーザ毎に記憶領域が分けられてもよい。別の例として、学習済みモデル管理装置10はユーザ毎に異なる記憶部を備えてよい。例えば第2記憶部12Bは、第2ユーザが生成したカスタムモデルのみを記憶し、第2ユーザのみが利用できてよい。このとき、学習済みモデル管理装置10は、第1記憶部12Aとも第2記憶部12Bとも異なる、第1ユーザのみが利用できる別の第3記憶部を備えてよい。
【0043】
(学習済みモデル管理方法)
図4及び
図5は、学習済みモデル管理システム1における処理の手順の一例を示すシーケンス図である。
図5は、
図4に続いて実行される処理の手順を示す。
図4及び
図5を参照して、本実施形態に係る学習済みモデル管理装置10が実行する学習済みモデル管理方法の処理が説明される。上記の例と同様に、「ボルトC´」と他の工業部品を含む画像から「ボルトC´」を認識できるように、第2ユーザがカスタムモデルを生成することを具体例として、適宜、具体例を用いて説明する。
【0044】
ユーザは、通信端末装置30のカメラを使って「ボルトC´」及び他の工業部品を撮像し、入力情報である撮像画像を生成する(ステップS1)。この撮像画像は、カスタムモデルなどを用いて「ボルトC´」を認識させるタスクを実行する場合に、タスクの実行結果の評価に用いられる評価用データとなる。評価用データは、第2ユーザによって用意される、第2学習用データを用いて認識可能になる対象物の情報である。
【0045】
通信端末装置30は、入力情報(評価用データ)を学習済みモデル管理装置10に送信する(ステップS2)。学習済みモデル管理装置10の第2記憶部12Bは、評価用データを記憶する。
【0046】
ユーザは、マスターモデルを選択して、通信端末装置30に入力する(ステップS3)。ユーザは、例えばロボット制御システム100において、それまで使用していたマスターモデルを選択してよい。具体的な例で説明すると、第2ユーザは、それまで使用していた特化モデルの「ボルト」を選択する。
【0047】
通信端末装置30は、ユーザ選択マスターモデルを学習済みモデル管理装置10に送信する(ステップS4)。具体的な例で説明すると、通信端末装置30は、第2ユーザによって選択されたマスターモデルが特化モデルの「ボルト」であるという情報を学習済みモデル管理装置10に送信する。第1記憶部12A及び第2記憶部12Bには、第2ユーザが生成するカスタムモデルと特化モデルの「ボルト」との関連が、関連情報として記憶される。
【0048】
ユーザは、カスタムモデルを生成するための第2学習用データを生成する(ステップS5)。第2学習用データは、評価用データのように、通信端末装置30のカメラを使って「ボルトC´」及び他の工業部品を撮像して作成されてよい。また、第2学習用データは、「ボルトC´」のCAD(Computer Aided Design)のデータを用いて作成されてよい。また、第2学習用データは、撮像による学習用データと、CADによる学習用データとを組み合わせて作成されてよい。
【0049】
通信端末装置30は、第2学習用データを学習済みモデル管理装置10に送信する(ステップS6)。第2学習用データは、学習済みモデル管理装置10の第2記憶部12Bに記憶される。
【0050】
また、通信端末装置30は、学習済みモデル生成装置20に対して、カスタムモデルの生成を指示する(ステップS7)。
【0051】
学習済みモデル生成装置20は、ユーザ選択マスターモデルとユーザによって用意された第2学習用データとに基づいて、カスタムモデルを生成する(ステップS8)。具体的な例で説明すると、学習済みモデル生成装置20は、特化モデルの「ボルト」を利用して、アクセス可能な第2記憶部12Bに記憶された第2学習用データを用いて機械学習を実行して、第2ユーザのみが利用できるカスタムモデルの「ボルト」を生成する。
【0052】
学習済みモデル生成装置20は、生成したカスタムモデルを、学習済みモデル管理装置10の第2記憶部12Bに記憶させる(ステップS9)。
【0053】
学習済みモデル管理装置10の更新処理部132は、評価用データと生成されたカスタムモデルを用いてタスク(対象物の認識)を実行する(ステップS10)。
【0054】
学習済みモデル管理装置10の更新処理部132は、タスクの実行結果を通信端末装置30に送信する(ステップS11)。通信端末装置30のユーザインタフェース部35(タッチパネルディスプレイ)にタスクの実行結果が表示される。
【0055】
ユーザは、タスクの実行結果に対して評価を行い、評価が期待に及ばない場合に、第2学習用データを変更してカスタムモデルを再生成させてよい。また、ステップS10及びステップS11は、例えばユーザの指示によって、省略されてよい。
【0056】
学習済みモデル管理装置10の更新判定部131は、第2学習用データに基づいて、マスターモデルを更新するか否かを判定する。本実施形態において、更新判定部131は、追加される対象物(「ボルトC」の改良製品である「ボルトC´」)の汎用性が高いため、マスターモデルを更新すると判定する(ステップS12)。ここで、例えば「ボルトC´」の形状が従来のボルトよりバネに近く、学習によって適合率が低下することが明らかであるような場合に、更新判定部131はマスターモデルを更新しないと判定してよい。また、上記のように、決定はモデル群の管理者によって行われてよい。
【0057】
ここで、更新判定部131は、複数のマスターモデルのうち、第2学習用データを用いた学習によって更新される一部のマスターモデルを、上記の更新情報に基づいて特定してよい。特定された一部のマスターモデルの情報は更新処理部132に出力されてよい。別の例として、更新判定部131は、学習によって認識可能にさせる対象物(例えば「ボルトA」、「ボルトB」、「ボルトC」、…)が第2学習用データ(例えば「ボルトC´」)と同一又は類似する第1学習用データを用いて生成された学習済みモデルを更新されるマスターモデルとして特定してよい。あるいは、別の例として更新判定部131は、カスタムモデル生成時に利用したマスターモデルを更新すべきマスターモデルとして特定してよい。更新処理部132は、更新判定部131が特定した学習済みモデルであるマスターモデルを更新する。
【0058】
学習済みモデル管理装置10の更新処理部132は、更新判定部131によってマスターモデルを更新すると判定された場合に、第2学習用データを第1記憶部12Aに記憶させる(ステップS13)。つまり、第2学習用データがマスターモデルの更新で使用されるため、更新処理部132は、第2学習用データを第1記憶部12Aにコピーする。マスターモデルを更新すると判定された場合に、第1記憶部12Aは、第1学習用データと同じく第2学習用データを記憶する。
【0059】
また、学習済みモデル管理装置10の更新処理部132は、マスターモデルを更新すると判定された場合に、第2記憶部12Bに記憶された第2ユーザの寄与度を示すデータを更新する(ステップS14)。上記のように、寄与度は、大きさに応じて第2ユーザのマスターモデル及びカスタムモデルの利用権限を拡大させる。例えば第2記憶部12Bは、ユーザが使用できる第2記憶部12Bの容量、利用料金、利用可能回数、利用可能期間等も記憶する。更新処理部132は、寄与度に応じて、第2記憶部12Bの容量、利用料金、利用可能回数、利用可能期間が有利になるように設定してよい。これにより、ユーザがカスタムモデルの生成で用いた第2学習用データを、マスターモデルの更新に使用させる動機付けが与えられる。
【0060】
学習済みモデル管理装置10の更新処理部132は、学習済みモデル生成装置20に対して、マスターモデルの更新を指示する(ステップS15)。
【0061】
学習済みモデル生成装置20は、第1記憶部12Aに記憶された第1学習用データ及び第2学習用データを用いた学習(再学習)によって、マスターモデルを更新する(ステップS16)。具体的な例で説明すると、学習済みモデル生成装置20は、「ボルトC´」についても識別できるように特化モデルの「ボルト」を再学習する。特化モデルの「ボルト」はマスターモデルであるため、第2ユーザだけでなく、第1ユーザを含む他のユーザも利用可能である。
【0062】
学習済みモデル生成装置20は、更新したマスターモデルを、学習済みモデル管理装置10の第1記憶部12Aに記憶させる(ステップS17)。
【0063】
学習済みモデル管理装置10の更新処理部132は、評価用データと更新されたマスターモデルを用いてタスク(対象物の認識)を実行する(ステップS18)。
【0064】
学習済みモデル管理装置10の更新処理部132は、タスクの実行結果を通信端末装置30に送信する(ステップS19)。通信端末装置30のユーザインタフェース部35(タッチパネルディスプレイ)にタスクの実行結果が表示される。
【0065】
ユーザは、タスクの実行結果に対して評価を行い、評価が期待に及ばない場合に、更新されたマスターモデルを利用しないで、カスタムモデルを使い続けてよい。ユーザは、評価に基づいて、更新されたマスターモデルを利用すると決定した場合に、例えば新たな使用環境を作成する操作を行って、更新されたマスターモデルをダウンロードしてよい。ユーザがこのような操作を実行すると、通信端末装置30は、更新されたマスターモデル利用の情報として学習済みモデル管理装置10に送信する(ステップS20)。この情報は、学習済みモデル管理装置10の検知部133によって検知される。
【0066】
ここで、ユーザは、マスターモデル又はカスタムモデルを使用したロボット2が入力した入力情報を第1記憶部12A又は第2記憶部12Bに記憶させておき、更新したマスターモデルの評価に使用してよい。また、ユーザは、過去のマスターモデル又はカスタムモデルの生成時に使用された学習効果の確認又は評価用のデータを第1記憶部12A又は第2記憶部12Bに記憶させておき、更新したマスターモデルの評価に使用してよい。また、更新したマスターモデルの評価は、ユーザによる実行に限定されず、例えば学習済みモデル管理装置10によって自動的に実行されてよい。
【0067】
なお、マスターモデルを更新時又は更新後においても、更新前のマスターモデルは、第1記憶部12Aに記憶してもよい。その結果、更新後のマスターモデルに不具合があったとしても、更新前のマスターモデルによって、ロボット2に作業を行なわせたり、再度更新処理を実行したりすることができる。
【0068】
学習済みモデル管理装置10の更新処理部132は、ユーザが更新されたマスターモデルを利用する場合に、第2記憶部12Bに記憶されている第2学習用データを削除する(ステップS21)。比較的サイズの大きい第2学習用データが削除されることによって、第2記憶部12Bの空き容量が大きくなり、ユーザは例えば使用容量に応じた料金などを軽減することができる。また、学習済みモデル管理装置10は、カスタムモデル生成用の学習用データが多く存在することによって容量が増大することを解消できる。
【0069】
ここで、更新処理部132は、第2ユーザがカスタムモデルに代えて更新されたマスターモデルを利用する場合にも、第2記憶部12Bに記憶されている評価用データを削除しない。評価用データは、比較的サイズが小さく、ユーザによって再び用いられる可能性が第2学習用データよりも高いと考えられるためである。
【0070】
以上のように、本実施形態に係る学習済みモデル管理装置10及び学習済みモデル管理方法は、ユーザの使用環境において認識精度を低下させることなくマスターモデルを更新することができる。
【0071】
なお、上記では、ユーザがカスタムモデルの生成時に、マスターモデルの更新を判定する例を説明したが、本発明は、これに限られない。すなわち、例えば、ユーザが、ユーザの工場などの現場でマスターモデルを使用する場合、マスターモデルの作成環境とユーザの使用環境が異なるため、マスターモデルの認識精度が低減することがある。このとき、マスターモデルの精度を向上させるために、ユーザの使用環境で取得した学習用データ又はユーザの使用環境を模した学習用データによって、マスターモデル(第1モデル又は第1マスターモデル)に基づき、最適化マスターモデル(第2モデル又は第2マスターモデル)を生成することがあり得る。すなわち、本発明においては、更新判定部131は、第2マスターモデルが生成された場合に、第2マスターモデルの学習に使用された学習用データに基づいて、第1マスターモデルを更新するか否かを判定してもよい。なお、第2マスターモデルは、ユーザの仕様環境に関する学習処理が行われた付加的学習済みモデルを第1マスターモデルに接続することによって生成されてもよい。なお、付加的学習済みモデルは、例えばアダプタモジュールとも称される。
【0072】
なお、第2マスターモデルとは、ユーザの利用制限のないモデルであるため、第1マスターモデルと同じく第1記憶部12Aに記憶される。なお、第2マスターモデルとは、ユーザの利用制限のないカスタムモデルと称することもできる。したがって、本開示においては、矛盾の無い範囲で、上記実施形態のカスタムモデルを第2マスターモデルと読み替えられて、本発明として適用されてもよい。
【0073】
以上、学習済みモデル管理装置10及び学習済みモデル管理方法の実施形態を説明してきたが、本開示の実施形態としては、システム、プログラム、プログラムが記録された記憶媒体としての実施態様をとることも可能である。記憶媒体は、一例として、光ディスク、光磁気ディスク、CD-ROM、CD-R、CD-RW、磁気テープ、ハードディスク、又はメモリカード等である。
【0074】
また、プログラムの実装形態としては、コンパイラによってコンパイルされるオブジェクトコード、インタプリタにより実行されるプログラムコード等のアプリケーションプログラムに限定されることはなく、オペレーティングシステムに組み込まれるプログラムモジュール等の形態であってよい。さらに、プログラムは、制御基板上のCPUにおいてのみ全ての処理が実施されるように構成されてもされなくてよい。プログラムは、必要に応じて基板に付加された拡張ボード又は拡張ユニットに実装された別の処理ユニットによってその一部又は全部が実施されるように構成されてよい。
【0075】
本開示に係る実施形態について、諸図面及び実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形又は改変を行うことが可能であることに注意されたい。従って、これらの変形又は改変は本開示の範囲に含まれることに留意されたい。例えば、各構成部等に含まれる機能等は論理的に矛盾しないように再配置可能であり、複数の構成部等を1つに組み合わせたり、或いは分割したりすることが可能である。
【0076】
本開示に記載された構成要件、処理のステップについては、これらの特徴が相互に排他的である組合せを除き、任意に組み合わせることができる。また、本開示に記載された特徴の各々は、明示的に否定されない限り、同一の目的、同等の目的又は類似する目的のために働く代替の特徴に置換することができる。したがって、明示的に否定されない限り、開示された特徴の各々は、包括的な一連の同一、又は、均等となる特徴の一例にすぎない。
【0077】
さらに、本開示に係る実施形態は、上述した実施形態のいずれの具体的構成にも制限されるものではない。本開示に係る実施形態は、本開示に記載された全ての新規な特徴、又は、それらの組合せ、あるいは記載された全ての新規な方法、又は、処理のステップ、又は、それらの組合せに拡張することができる。
【0078】
本開示において「第1」及び「第2」等の記載は、当該構成を区別するための識別子である。本開示における「第1」及び「第2」等の記載で区別された構成は、当該構成における番号を交換することができる。例えば、第1分類は、第2分類と識別子である「第1」と「第2」とを交換することができる。識別子の交換は同時に行われる。識別子の交換後も当該構成は区別される。識別子は削除してよい。識別子を削除した構成は、符号で区別される。本開示における「第1」及び「第2」等の識別子の記載のみに基づいて、当該構成の順序の解釈、小さい番号の識別子が存在することの根拠に利用してはならない。例えば、第1モデルと第2モデルなど、請求項の記載において「第1」と「第2」の識別子を交換したものも本発明の範囲に含まれる。
【符号の説明】
【0079】
1 学習済みモデル管理システム
2 ロボット
2A アーム
2B エンドエフェクタ
4 カメラ
5 影響範囲
6 作業開始地点
7 作業目標地点
8 作業対象物
10 学習済みモデル管理装置
11 通信部
12A 第1記憶部
12B 第2記憶部
13 制御部
20 学習済みモデル生成装置
30 通信端末装置
31 通信部
32 記憶部
33 制御部
34 入力情報生成部
35 ユーザインタフェース部
40 ネットワーク
100 ロボット制御システム
110 ロボット制御装置
131 更新判定部
132 更新処理部
133 検知部