(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-15
(45)【発行日】2024-10-23
(54)【発明の名称】情報処理装置及び情報処理方法、コンピュータプログラム、並びに学習システム
(51)【国際特許分類】
G06N 20/00 20190101AFI20241016BHJP
【FI】
G06N20/00
(21)【出願番号】P 2020172646
(22)【出願日】2020-10-13
【審査請求日】2023-08-17
(73)【特許権者】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】100093241
【氏名又は名称】宮田 正昭
(74)【代理人】
【識別番号】100101801
【氏名又は名称】山田 英治
(74)【代理人】
【識別番号】100095496
【氏名又は名称】佐々木 榮二
(74)【代理人】
【識別番号】100086531
【氏名又は名称】澤田 俊夫
(74)【代理人】
【識別番号】110000763
【氏名又は名称】弁理士法人大同特許事務所
(72)【発明者】
【氏名】石井 雅人
【審査官】千葉 久博
(56)【参考文献】
【文献】特開2020-144849(JP,A)
【文献】特開2019-213130(JP,A)
【文献】特開2009-211294(JP,A)
【文献】国際公開第2020/170593(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
入力されたデータセットと事前に収集された複数のデータセットグループの各々との類似度を算出する類似度算出部と、
前記類似度算出部が算出した類似度に基づいて、各データセットグループを評価する評価部と、
を具備
し、
前記類似度算出部は、メタ学習を用いて算出されるデータセットの特徴ベクトルに基づいてデータセット間の類似度を算出する、
情報処理装置。
【請求項2】
前記入力されたデータセットは、所定のデバイスにおけるモデルの学習用に収集したデータセットである、
請求項1に記載の情報処理装置。
【請求項3】
前記類似度算出部は、データセットの特徴ベクトルに基づいてデータセット間の類似度を算出する、
請求項1に記載の情報処理装置。
【請求項4】
前記類似度算出部は、各データセットの特徴ベクトルの内積又はベクトル間距離に基づいてデータセット間の類似度を算出する、
請求項1に記載の情報処理装置。
【請求項5】
前記評価部は、データセットグループ毎に算出した類似度とデータセットグループの品質に基づいて、各データセットグループを評価する、
請求項1に記載の情報処理装置。
【請求項6】
データセットグループの品質は、そのデータセットグループを用いて学習を行ったモデルの品質を表す値からなる、
請求項
5に記載の情報処理装置。
【請求項7】
データセットグループの品質は、そのデータセットグループを用いて学習を行ったモデルのタスク成功率を示す値からなる、
請求項
5に記載の情報処理装置。
【請求項8】
前記評価部は、データセットグループ毎に算出した類似度にデータセットグループの品質を示す値を加算又は重み付け加算し、又は、データセットグループ毎に算出した類似度にデータセットグループの品質を示す値を乗算して、各データセットグループの評価値を算出する、
請求項
1に記載の情報処理装置。
【請求項9】
前記評価部による評価が高いデータセットグループの情報を出力する、
請求項1に記載の情報処理装置。
【請求項10】
前記情報は、該当するデータセットグループに含まれるデータセットを含む、
請求項
9に記載の情報処理装置。
【請求項11】
前記情報は、データセットの属性情報を含む、
請求項
9に記載の情報処理装置。
【請求項12】
前記データセットは画像認識用のモデルの学習用の画像データからなり、前記属性情報は、前記画像データを撮影するための構図、撮影条件、カメラワークに関する情報を含む、
請求項
11に記載の情報処理装置。
【請求項13】
入力されたデータセットと事前に収集された複数のデータセットグループの各々との類似度を算出する類似度算出ステップと、
前記類似度算出ステップにおいて算出した類似度に基づいて、各データセットグループを評価する評価ステップと、
を有し、
前記類似度算出ステップでは、メタ学習を用いて算出されるデータセットの特徴ベクトルに基づいてデータセット間の類似度を算出する、
情報処理方法。
【請求項14】
入力されたデータセットと事前に収集された複数のデータセットグループの各々との類似度を算出する類似度算出部、
前記類似度算出部が算出した類似度に基づいて、各データセットグループを評価する評価部、
としてコンピュータが機能するようにコンピュータ可読形式で記述され、
前記類似度算出部は、メタ学習を用いて算出されるデータセットの特徴ベクトルに基づいてデータセット間の類似度を算出する、
コンピュータプログラム。
【請求項15】
データセットを取得してモデルの学習を行う第1の装置と、
データセットの取得に関する情報を前記第1の装置に提供する第2の装置と、
を具備し、
前記第2の装置は、前記第1の装置から入力されたデータセットと事前に収集された複数のデータセットグループの各々との類似度をメタ学習を用いて算出されるデータセットの特徴ベクトルに基づいて算出し、類似度に基づいて各データセットグループを評価して、評価が高いデータセットグループの情報を出力する、
学習システム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書で開示する技術(以下、「本開示」とする)は、モデルの学習に用いる情報を処理する情報処理装置及び情報処理方法、コンピュータプログラム、並びに学習システムに関する。
【背景技術】
【0002】
人工知能は、膨大なデータを分析したり推定したりすることができ、例えば画像認識や音声認識、自然言語処理に活用される。さらに人工知能は、ロボットや自動車などの制御対象物の制御を行ったり、さまざまなタスクを人間に置き換わって実行したりすることができる。
【0003】
人工知能は、ニューラルネットワークなどを用いたモデルからなる。そして、人工知能の利用は、モデルの学習を行う「学習フェーズ」と、モデルを使って推論を行う「推論フェーズ」からなる。学習フェーズでは、モデルに入力されるデータ(以下、「入力データ」とも言う)と、入力データに対してモデルに推定させたいラベルとの組み合わせからなるデータセットを用いて、各入力データに対応するラベルを出力できるように、誤差逆伝播などの学習アルゴリズムによってモデルの学習が行われる。そして、推論フェーズでは、学習フェーズにおいて学習済みのモデル(以下、「学習済みモデル」とも言う)は、入力データに対して適切なラベルを出力する。
【0004】
一般に、より高精度のモデルを学習するには、膨大量の学習用のデータセットを用いて深層学習などを行うことが好ましく、大規模な演算リソースが必要である。このため、クラウドや分散学習などを使ってモデルの学習を行い、学習フェーズの成果として得られた学習済みモデルをエッジデバイスに搭載するといった開発スタイルが採用されることも多い。
【0005】
また、高性能又は高精度のモデル学習を実現するには、学習用のデータが不可欠である。例えば、取得される医用画像のうち、撮像の条件及び被検体の条件のうち少なくとも一方が異なり、且つ、撮像方向が一致する医用画像を組として含む学習用データを特定して、医用画像に関する学習用データ不足を解消する医用情報システムが提案されている(特許文献1を参照のこと)。また、製品の写る画像データと画像データに写る前記製品の良否の判定に対する正解を示す正解データの組み合わせをそれぞれ含む複数件の学習用データセットの各々に良否の判定の難易度を設定し、前記難易度の低い学習用データセットから順に利用した段階的な機械学習を実施する検査システムが提案されている(特許文献2を参照のこと)。また、元データセットから機械学習に用いる学習用データセットと機械学習で得られた識別モデルを評価する評価用データセットを生成し、学習用データセットに属する第1データ群の特徴と評価用データセットに属する第2データ群の特徴を抽出し、第1データ群の特徴と第2データ群の特徴に基づいて学習用データセットの適正を判定する検証装置が提案されている(特許文献3を参照のこと)。また、原画像のテクスチャの特徴量と各代表画像のテクスチャの特徴量を比較して原画像と各代表画像の類似度を検出し、各代表画像によりそれぞれ生成された複数の学習データセットのうち最も類似度が高い代表画像に対応する学習データセットを選択して原画像の超解像度処理を行う画像処理装置が提案されている(特許文献4を参照のこと)。
【先行技術文献】
【特許文献】
【0006】
【文献】特開2019-202087号公報
【文献】特開2019-159959号公報
【文献】特開2019-159538号公報
【文献】特開2005-253000号公報
【非特許文献】
【0007】
【文献】"Multimodal Model-Agnostic Meta-Learning via Task-Aware Modulation"[NeurIPS2019]
【発明の概要】
【発明が解決しようとする課題】
【0008】
本開示の目的は、モデルの学習に使用するデータセットに関する情報を処理する情報処理装置及び情報処理方法、コンピュータプログラム、並びに学習システムを提供することにある。
【課題を解決するための手段】
【0009】
本開示は、上記課題を参酌してなされたものであり、その第1の側面は、
入力されたデータセットと事前に収集された複数のデータセットグループの各々との類似度を算出する類似度算出部と、
前記類似度算出部が算出した類似度に基づいて、各データセットグループを評価する評価部と、
を具備する情報処理装置である。
【0010】
前記類似度算出部は、メタ学習を用いて算出されるデータセットの特徴ベクトルの内積又はベクトル間距離に基づいてデータセット間の類似度を算出する。
【0011】
前記評価部は、データセットグループ毎に算出した類似度とデータセットグループの品質に基づいて、各データセットグループを評価する。データセットグループの品質は、そのデータセットグループを用いて学習を行ったモデルのタスク成功率などを表す値からなる。そして、前記評価部による評価が高いデータセットグループの情報を出力する。前記情報は、データセットの属性情報を含んでもよい。
【0012】
また、本開示の第2の側面は、
入力されたデータセットと事前に収集された複数のデータセットグループの各々との類似度を算出する類似度算出ステップと、
前記類似度算出ステップにおいて算出した類似度に基づいて、各データセットグループを評価する評価ステップと、
を有する情報処理方法である。
【0013】
また、本開示の第3の側面は、
入力されたデータセットと事前に収集された複数のデータセットグループの各々との類似度を算出する類似度算出部、
前記類似度算出部が算出した類似度に基づいて、各データセットグループを評価する評価部、
としてコンピュータが機能するようにコンピュータ可読形式で記述されたコンピュータプログラムである。
【0014】
本開示の第3の側面に係るコンピュータプログラムは、コンピュータ上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータプログラムを定義したものである。換言すれば、本開示の第3の側面に係るコンピュータプログラムをコンピュータにインストールすることによって、コンピュータ上では協働的作用が発揮され、本開示の第1の側面に係る情報処理装置と同様の作用効果を得ることができる。
【0015】
また、本開示の第4の側面は、
データセットを取得してモデルの学習を行う第1の装置と、
データセットの取得に関する情報を前記第1の装置に提供する第2の装置と、
を具備し、
前記第2の装置は、前記第1の装置から入力されたデータセットと事前に収集された複数のデータセットグループの各々との類似度に基づいて各データセットグループを評価して、評価が高いデータセットグループの情報を出力する、
学習システムである。
【0016】
但し、ここで言う「システム」とは、複数の装置(又は特定の機能を実現する機能モジュール)が論理的に集合した物のことを言い、各装置や機能モジュールが単一の筐体内にあるか否かは特に問わない。
【発明の効果】
【0017】
本開示によれば、タスクを特化したモデルの学習を行うためのデータセットに関する情報を提示する情報処理装置及び情報処理方法、コンピュータプログラム、並びに学習システムを提供することができる。
【0018】
なお、本明細書に記載された効果は、あくまでも例示であり、本開示によりもたらされる効果はこれに限定されるものではない。また、本開示が、上記の効果以外に、さらに付加的な効果を奏する場合もある。
【0019】
本開示のさらに他の目的、特徴や利点は、後述する実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【図面の簡単な説明】
【0020】
【
図1】
図1は、学習システム100の構成例を示した図である。
【
図2】
図2は、学習システム200の構成例を示した図である。
【
図3】
図3は、学習器301が学習対象のモデル300の学習を行う仕組みを示した図である。
【
図4】
図4は、メタ学習器401が、学習器400によるモデルの学習を分析して学習方法を学習する仕組みを示した図である。
【
図5】
図5は、データセット評価部203の機能的構成例を示した図である。
【
図6】
図6は、参照データセット蓄積部501におけるデータ構造の一例を示した図である。
【
図7】
図7は、属性識別器700を示した図である。
【
図8】
図8は、情報処理装置800の構成例を示した図である。
【
図9】
図9は、ペットロボット900の動作例を示した図である。
【
図10】
図10は、ペットロボット900の制御システム1000の機能的構成例を示した図である。
【
図11】
図11は、手術システム1100の構成例を示した図である。
【
図12】
図12は、組織の内視鏡撮像画像を例示した図である。
【発明を実施するための形態】
【0021】
以下、図面を参照しながら本開示について、以下の順に従って説明する。
【0022】
A.概要
B.システム構成
C.メタ学習について
D.データセットの評価
E.装置構成
F.エッジデバイスの具体例
F-1.自律ロボットへの応用
F-2.医用画像解析への応用
【0023】
A.概要
人工知能は、例えばニューラルネットワークやサポートベクタ回帰、ガウス過程回帰などの型を用いたモデルからなる。本明細書では、便宜上、ニューラルネットワーク型のモデルを中心に説明するが、本開示は特定のモデル型に限定されず、ニューラルネットワーク以外のモデルに対しても同様に適用可能である。人工知能の利用は、モデルの学習を行う「学習フェーズ」と学習済みのモデルを使って推論を行う「推論フェーズ」からなる。推論は、画像認識や音声認識などの認識処理や、事象の推定や予測を行う予測処理を含む。
【0024】
モデルは、あるデータが入力されると該当するラベルを出力する。例えば画像認識器のモデルは、入力された画像に写っている被写体や物体を表すラベルを出力する。学習フェーズでは、入力データと、該当する(又は、正解の)ラベルの組み合わせからなる学習用のデータセットを用いて、入力データに対して正しいラベルを出力できるように、モデルを規定する変動要素(以下、「モデルパラメータ」とも呼ぶ)を最適化する。そして、推論フェーズでは、学習フェーズで最適化されたモデルパラメータを設定したモデル(以下、「学習済みモデル」とも呼ぶ)を使って、未知のデータを入力して該当するラベルを推論する。
【0025】
より高精度のモデルを学習する(すなわち、学習済みモデルが未知データに対して正確なラベルを出力できるようにする)には、膨大量の学習用のデータセットを用いて深層学習などを行うことが好ましく、大規模な演算リソースが必要である。このため、クラウドや分散学習などを使ってモデルの学習を行い、学習フェーズの成果として得られた学習済みモデルをエッジデバイスに搭載するといった開発スタイルが採用されることも多い。
【0026】
汎用的なモデルの学習には、上記のようなクラウド及び分散学習を用いた開発スタイルが適用される。他方、ユーザ毎のニーズに特化したタスク(画像認識、音声認識、自然言語処理、ロボット制御など)を行うモデル(以下、「ユーザ特化モデル」とも呼ぶ)の学習に、クラウド及び分散学習を用いると、開発コストが過大である。また、ユーザの個別のニーズに適合する学習用データセットを大量に用意することは現実的でない。例えば、ユーザ特化モデルの学習をエッジデバイス側で行う場合、必ずしもモデルの学習に精通しているとは言い難いエンドユーザが、学習用データセットの収集やモデルの学習作業を行わなければならず、難作業となる。
【0027】
そこで、本開示は、少数のデータセットを用いてユーザのニーズに特化したタスクを行うモデルの学習を可能にする技術を提案する。より具体的には、本開示は、所望のタスクを実現するようにモデルの学習に使用する、適切な学習用のデータセットを構築するための情報をユーザに提示する。エンドユーザであっても、本開示に基づいて提示される情報に基づいて適切な学習用のデータセットを用意することができるようになる。したがって、本開示によれば、例えばエッジデバイスなどで、少数のデータセットを用いて高精度なモデル学習を実現することができる。
【0028】
B.システム構成
図1には、モデルの学習及び学習済みのモデルを使って推論を行う学習システム100の構成例を示している。図示の学習システム100は、例えばエッジデバイスに搭載して用いられ、主にユーザ毎のニーズに特化したタスクを実施するユーザ特化型のモデル学習を行う。但し、学習システム100の機能の一部又は全部が、クラウド又は大規模演算が可能な演算装置上に構築されてもよいし、学習システム100を用いて特定のユーザのニーズに特化せず汎用的なタスクのためのモデルの学習を行うようにしてもよい。また、学習システム100は、主にニューラルネットワーク型のモデルを使用することを想定しているが、もちろん、サポートベクタ回帰、ガウス過程回帰など他の型のモデルを使用してもよい。
【0029】
図示の学習システム100は、データ収集部101と、収集データ蓄積部102と、データ処理部103と、提示部104と、学習用データセット蓄積部105と、モデル学習部106と、モデルパラメータ保持部107を備えている。学習システム100は、エッジデバイスに搭載されている。
【0030】
データ収集部101は、モデルの学習に使用するデータを収集する。ここでは、学習システム100を搭載するエッジデバイスが備えるセンサ(図示しない)により取得されるセンサ情報をデータ収集部101が収集することを想定している。エッジデバイスが備えるセンサは、例えばカメラ、赤外線カメラ、マイクなどの音声センサなどであり、センサ情報は、カメラで撮影した画像、入力された音声データなどである。収集データ蓄積部102は、データ収集部101が収集したデータを一時的に格納する。
【0031】
データ処理部103は、収集データ蓄積部102に格納されているデータを読み出して、学習対象となるモデル(ニューラルネットワークなど)に入力可能となるデータ形式となるようにデータ処理し、さらに該当するラベルを付けて学習用のデータセットとして、学習用データセット蓄積部105に格納する。
【0032】
また、データ処理部103は、データ収集部101が収集したデータから生成したデータセットの評価を行って、ユーザのニーズに特化したタスクを行うモデルの学習に必要な(又は、より適した)データセットに関する情報を生成する。そして、提示部104は、データ処理部103によるデータセットの評価結果をユーザに提示する。本実施形態では、データ処理部103は、メタ学習を使って、データセットの評価を行う。メタ学習は、モデルの学習方法を学習する処理のことであり、一般には、タスクに応じたモデルの学習効率を向上するために使用される。但し、メタ学習を使ったデータセットの評価処理の詳細については後述に譲る。
【0033】
ユーザは、提示部104により提示された情報から、ユーザのニーズに特化したタスクを行うモデルの学習に必要な(又は、より適した)データセットを構築する手掛かりを得ることができる。そして、ユーザは、掴んだ手掛かりに従って、構築すべきデータセットを収集するように、エッジデバイスが備えるセンサの操作(例えば、カメラの撮影操作)を行うようにする。その結果、データ収集部101は、ユーザのニーズに特化したタスクを行うモデルの学習に必要な(又は、より適した)データを収集し、学習用データセット蓄積部105には、少量ながら、ユーザのニーズに特化したタスクを行うモデルの学習に必要な(又は、より適した)データセットが格納される。
【0034】
モデル学習部106は、学習用データセット蓄積部105からデータセットを逐次読み出して、ニューラルネットワークなどのモデルの学習を行う。ユーザのニーズに特化したタスクの学習に適したデータセットを用いることで、ユーザのニーズに特化したタスクを行うモデルの学習を行うことが可能となる。そして、モデル学習部106は、学習結果として得られたモデルパラメータを、モデルパラメータ保持部107に格納する。モデルパラメータは、モデルを規定する変動要素であり、例えばニューラルネットワークモデルの各ニューロンに与える係数又は重み係数などである。
【0035】
上記の学習システム100を搭載するエッジデバイスは、推論部111と、データ入力部112と、入力データ処理部113を備え、学習システム100による学習結果に基づいて、モデルの推論フェーズを実施する。データ入力部112は、エッジデバイスが備えるセンサにより取得されるセンサ情報を入力する。入力データ処理部113は、データ入力部112から入力されたデータを、モデル(例えば、ニューラルネットワークモデル)に入力可能となるデータ形式となるようにデータ処理して、推論部111に入力する。推論部111は、モデルパラメータ保持部107から読み出したモデルパラメータを設定したモデルすなわち学習済みモデルを使って、入力データから推論したラベルを出力する。
【0036】
図2には、ユーザ毎のニーズに特化したタスクを実施する他の学習システム200の構成例を示している。但し、
図2に示した構成要素のうち、
図1中の同一の名称及び同一の符号を付与したものは、基本的には同じ構成要素である。
【0037】
図示の学習システム200は、データ収集部101と、収集データ蓄積部102と、データ処理部103と、学習用データセット蓄積部105と、モデル学習部106と、モデルパラメータ保持部107と、データセット出力部201と、提示部202と、データセット評価部203を備えている。学習システム200のうち、データセット評価部203は例えばクラウド上のサーバに構築され、それ以外の構成要素はエッジデバイスに搭載されている。
【0038】
データ収集部101は、学習システム200を活用するエッジデバイスが備えるセンサにより取得されるセンサ情報を収集して、収集データ蓄積部102に一時的に格納する。エッジデバイスが備えるセンサは、例えばカメラ、赤外線カメラ、マイクなどの音声センサなどであり、センサ情報は、カメラで撮影した画像、入力された音声データなどである。
【0039】
データ処理部103は、収集データ蓄積部102に格納されているデータを読み出して、学習対象となるモデル(ニューラルネットワークなど)に入力可能となるデータ形式となるようにデータ処理し、さらに該当するラベルを付けて学習用のデータセットとして、学習用データセット蓄積部105に格納する。
【0040】
データセット出力部201は、データ収集部101が収集したデータからデータ処理部103が生成したデータセットを、クラウド上のサーバに構築されたデータセット評価部203に、ネットワーク(NW)経由で送出する。データセット評価部203は、エッジデバイスから受信したデータセットの評価を行って、ユーザのニーズに特化したタスクを行うモデルの学習に必要な(又は、より適した)データセットに関する情報を生成して、ネットワーク経由でエッジデバイスに返送する。提示部202は、データセット評価部203によるデータセットの評価結果をネットワーク経由で受信すると、ユーザに提示する。なお、提示部202は、エッジデバイスではなく、パーソナルコンピュータやスマートフォン、タブレットなど、エッジデバイスのユーザが扱うエッジデバイス以外の情報端末であってもよい。
【0041】
本実施形態では、データセット評価部203は、メタ学習を使って、データセットの評価を行う。メタ学習は、モデルの学習方法を学習する処理のことであり、一般には、タスクに応じたモデルの学習効率を向上するために使用される。但し、メタ学習を使ったデータセットの評価処理の詳細については後述に譲る。
【0042】
ユーザは、提示部202により提示された情報から、ユーザのニーズに特化したタスクを行うモデルの学習に必要な(又は、より適した)データセットを構築する手掛かりを得ることができる。そして、ユーザは、掴んだ手掛かりに従って、構築すべきデータセットを収集するように、エッジデバイスが備えるセンサの操作(例えば、カメラの撮影操作)を行うようにする。その結果、データ収集部101は、ユーザのニーズに特化したタスクを行うモデルの学習に必要な(又は、より適した)データを収集し、学習用データセット蓄積部105には、少量ながら、ユーザのニーズに特化したタスクを行うモデルの学習に必要な(又は、より適した)データセットが格納される。
【0043】
モデル学習部106は、学習用データセット蓄積部105からデータセットを逐次読み出して、ニューラルネットワークなどのモデルの学習を行う。ユーザのニーズに特化したタスクの学習に適したデータセットを用いることで、ユーザのニーズに特化したタスクを行うモデルの学習を行うことが可能となる。そして、モデル学習部106は、学習結果として得られたモデルパラメータを、モデルパラメータ保持部107に格納する。モデルパラメータは、モデルを規定する変動要素であり、例えばニューラルネットワークモデルの各ニューロンに与える係数又は重み係数などである。
【0044】
上記の学習システム200を活用するエッジデバイスは、推論部111と、データ入力部112と、入力データ処理部113を備え、学習システム100による学習結果に基づいて、モデルの推論フェーズを実施する。データ入力部112は、エッジデバイスが備えるセンサにより取得されるセンサ情報を入力する。入力データ処理部113は、データ入力部112から入力されたデータを、モデル(例えば、ニューラルネットワークモデル)に入力可能となるデータ形式となるようにデータ処理して、推論部111に入力する。推論部111は、モデルパラメータ保持部107から読み出したモデルパラメータを設定したモデルすなわち学習済みモデルを使って、入力データから推論したラベルを出力する。
【0045】
なお、
図2では、エッジデバイスの構成要素を、点線で囲んで示している。
図2に示す例では、データセット評価部203が構築されたサーバとエッジデバイスが1対1に対応しているが、実際には、1台のサーバが複数のエッジデバイスに対してデータセットの評価サービスを提供するように、学習システム200が構成されるものと理解されたい。
【0046】
C.メタ学習について
本実施形態では、学習システム100及び200において、エッジデバイスで使用するデータセットの評価を、メタ学習を用いて行う。メタ学習は、モデルの学習方法を学習する処理のことであり、一般には、タスクに応じたモデルの学習効率を向上するために使用される。
【0047】
学習方法の1つである誤差逆伝播法では、データが入力されたときのモデルの出力データと入力データに対する教師データとの誤差に基づいて定義される損失関数が最小となるようにモデルパラメータを決定する。そして、損失関数を小さくするために、最小化させたい損失関数の傾き(勾配)を計算し、その傾きの大きさとは逆方向にモデルパラメータを調整する勾配降下法などの手法が用いられる。
【0048】
メタ学習は、モデルの学習方法として、例えば学習に用いるべき初期のモデルパラメータ、学習に用いるべきハイパーパラメータ(ニューラルネットワークの層数やユニットの数、正則化係数など)、学習中に「モデルAをどのように更新すべきか」を教示する別のモデルB、などを出力する。メタ学習も、ニューラルネットワークやサポートベクタ回帰、ガウス過程回帰などのモデルを用いて構成される。
【0049】
図3には、学習器301(
図1及び
図2中のモデル学習部106に相当)が、学習対象のモデル300の学習を行う仕組みを示している。モデル300は、例えばニューラルネットワークで構成される。学習器には、入力データx
iと対応する(すなわち、教師データとなる)ラベルy
iの組からなるデータセット{x
i,y
i}
i=1
Nを用いてモデル300の学習を行う。モデル300は、データx
iが入力されたときにラベルy
i´を出力したとする。学習器301は、正解のラベルy
iとモデル300の出力ラベルy
i´との誤差E(=y
i-y
i´)に基づく損失関数L(E)を算出する。そして、学習器301は、損失関数L(E)を最小にするように、モデル300のモデルパラメータP
mを調整する。
【0050】
図4には、メタ学習器401が、学習器400によるモデルの学習を分析して、分析結果に基づいて、効率的な学習方法を学習する仕組みを示している。上述したように、学習器400は、データセットを使用して、誤差逆伝播法及び勾配降下法に基づく学習アルゴリズムによってモデルの学習を行う。メタ学習器401は、学習器400が各データセットを使用して訓練したモデル(認識器)の品質(認識率など)に基づいて、学習器400の学習方法を分析する。例えば、メタ学習器401は、データセット411を使用して訓練したモデルが高品質(例えば、認識率が高い(Accurate))であり、データセット412を使用して訓練したモデルが低品質(例えば、認識率が不十分(poor))であるといった学習結果を分析して、学習器400に対して、初期のモデルパラメータ、ハイパーパラメータ、学習中に「モデルAをどのように更新すべきか」を教示する別のモデルB、などの最適な学習方法に関する情報を出力する。
【0051】
メタ学習のアルゴリズムによっては、最適な学習方法ではなく、データセットに応じて最適な学習方法を得る手段を出力するものがある(例えば、非特許文献1を参照のこと)。このようなアルゴリズムでは、メタ学習器401は、データセットを入力として、データセットを表現する特徴ベクトルを抽出したり、特徴ベクトルに基づいて最適な学習方法を算出したりする処理を行う。
【0052】
D.データセットの評価
エッジデバイスから受信したデータセットとは、エッジデバイスのユーザがエッジデバイスに備えられたセンサ(カメラやマイクなど)を使って収集したデータに基づいて生成されるデータセットである。エッジデバイス上でユーザが収集できるデータセットは少数に限られる。また、ユーザは必ずしもモデルの学習に精通しているとは言い難く、ユーザがエッジデバイスを使って収集したデータが学習用のデータセットとして適切でないことが想定される。少数の適切とは言い難いデータセットを用いると、効率的にモデルの学習を行うことは困難であり、品質の高い(例えば認識精度が高い)モデルを得ることは難しい。
【0053】
そこで、本開示では、適切な学習用のデータセットを構築する手掛かりとなる情報をユーザに提示し、ユーザが収集した少数のデータセットを使って高精度なモデルの効率的な学習を行うようにする。
【0054】
具体的には、
図2に示した学習システム200では、データセット評価部203は、エッジデバイス上で収集したデータセットを、メタ学習を使って評価を行い、評価結果に基づいてユーザのニーズに特化したタスクを行うモデルの学習に必要な(又は、より適した)データセットに関する情報を生成して、ネットワーク経由でエッジデバイスに返送する。そして、データセット評価部203が生成した情報を、提示部202によりユーザに提示する。
図1に示した学習システム100では、データ処理部103内で同様の処理が行われる。ユーザは、提示部202により提示された情報から掴んだ手掛かりに従って、構築すべきデータセットを収集するように、エッジデバイスが備えるセンサの操作(例えば、カメラの撮影操作)を行うことができる。
【0055】
図5には、データセット評価部203の機能的構成例を示している。図示のデータセット評価部203は、参照データセット蓄積部501と、データセット間類似度算出部502と、ランキング算出部503を備えている。
【0056】
参照データセット蓄積部501は、モデルの学習用に事前に収集された、複数のデータセットのグループを格納している。1つのデータセットは、学習対象のモデルに入力するデータxと、その入力データに対応するラベルyの組からなる。また、1つの参照データセットグループは、例えば特定のタスクを学習するために収集された多数のデータセットからなる。
【0057】
図6には、参照データセット蓄積部501におけるデータ構造の一例を示している。
図6に示す例では、A~Cの3種類の参照データセットグループのデータセットが参照データセット蓄積部501に格納されている。各参照データセットグループA~Cは、それぞれ特定のタスク用に事前に収集された多数のデータセットを含んでいる。分かり易い例に当て嵌めて説明すると、参照データセットグループAは「猫」と「トラ」を識別する識別器を学習するために事前に収集された猫及びトラのラベル付きの画像の集合、参照データセットグループBは、「キリン」と「ライオン」を識別する識別器を学習するために収集されたキリン及びライオンのラベル付きの画像の集合、参照データセットグループCは「牛」と「豚」を識別する識別器を学習するために事前に収集された牛及び豚のラベル付きの画像の集合である。データセット{x
i
(A),y
i
(A)}は、参照データセットグループAのi番目のデータセットである。参照データセットグループAはN
A個のデータセットを含み、参照データセットグループBはN
B個のデータセットを含み、参照データセットグループCはN
C個のデータセットを含む。
【0058】
データセット間類似度算出部502は、エッジデバイスから入力されたデータセットと事前に収集された複数の参照データセットグループの各々との類似度を算出する。ここで言うエッジデバイスから入力されたデータセットは、所定のデバイスにおけるタスク用に収集したデータセットのことである。
【0059】
データセット間の類似度を測る尺度はさまざまである。本実施形態では、データセット間類似度算出部502は、データセットの特徴ベクトルに基づいてデータセット間の類似度を算出する。上記C項で説明したように、メタ学習を用いてデータセットを表現する特徴ベクトルを抽出することができる。したがって、データセット間類似度算出部502は、メタ学習を用いて、入力されたデータセットの特徴ベクトルを算出するようにしてもよい。また、
図6に示すように、事前に収集された各参照データセットグループA~Cの特徴ベクトルz
A、z
B、z
Cを、メタ学習を用いて事前に算出して、各参照データセットグループA~Cと紐付けして参照データセット蓄積部501に格納しておいてもよい。
【0060】
データセット間類似度算出部502は、各データセットの特徴ベクトルの内積を用いてデータセット間の類似度を表現するようにしてもよい。例えば、エッジデバイスから入力されたデータセットIの特徴ベクトルをzIとし、j番目の参照データセットグループの特徴ベクトルをzjとすると、入力されたデータセットとj番目の参照データセットグループ間の類似度は、zI
Tzjで表現される。あるいは、データセット間類似度算出部502は、各データセットの特徴ベクトルのベクトル間の負のユークリッド距離を用いてデータセット間の類似度を表現するようにしてもよい。
【0061】
ランキング算出部503は、エッジデバイスから入力されたデータセットに基づいて各参照データセットグループを評価してランク付けし、ランキングが最高又は上位の所定数の参照データセットグループを、適切な学習用のデータセットを構築する手掛かりとなる情報として出力する。
【0062】
ランキング算出部503は、データセット間類似度算出部502が参照データセットグループ毎に算出した類似度のみに基づいて各参照データセットグループを評価してランク付けしてもよい。学習アルゴリズムにとって似たデータセットは類似度が高くなる。したがって、類似度が高いことは、最適な学習方法が似ていることを表すということができる。
【0063】
但し、類似度が高くても、品質が良くない参照データセットグループを用いて学習を行うと、高精度のタスクを実現するモデルを構築し難くなる(又は、効率的なモデル学習を行えない)という問題がある。そこで、ランキング算出部503は、データセット間類似度算出部502が算出したデータセット間の類似度に、該当する参照データセットグループの品質スコアsを加算して算出した評価値に基づいて、各参照データセットグループのランク付けを行うようにする。このため、
図6に示すように、各参照データセットグループA~Cの品質スコアs
A、s
B、s
Cを、各参照データセットグループA~Cと紐付けして参照データセット蓄積部501に格納しておいてもよい。例えば、エッジデバイスから入力されたデータセットIに対するj番目の参照データセットグループの評価値V
jは、下式(1)に示すように、特徴ベクトルの内積z
I
Tz
jで表現される類似度と品質スコアs
jを加算した値で表される。
【0064】
【0065】
また、参照データセットグループの評価値Vjを、下式(2)に示すように、特徴ベクトルの内積zI
Tzjで表現される類似度と品質スコアsjを係数λで重み付け加算した値で表すこともできる。
【0066】
【0067】
あるいは、参照データセットグループの評価値Vjを、下式(3)に示すように、特徴ベクトルの内積zI
Tzjで表現される類似度と品質スコアsjを乗算した値で表すようにいてよもい。
【0068】
【0069】
参照データセットグループの品質スコアsは、例えば、その参照データセットグループのデータセットを用いて学習を行ったモデルのタスク成功率(例えば、識別器のモデルであれば識別率)でよい。
【0070】
ランキングが最高又は上位の所定数の参照データセットグループは、適切な学習用のデータセットを構築する手掛かりとなる。ランキング算出部503は、ランキングが最高又は上位の所定数の参照データセットグループの情報を出力して、提示部202を使ってユーザに提示する。また、提示部202は、データ収集部101で収集するデータを参照データセットグループに含まれるデータセットと比較して、どのようなデータを収集すべきか、あるいはどのようなデータが不足しているかを提示するようにしてもよい。提示部202は、エッジデバイスではなく、パーソナルコンピュータやスマートフォン、タブレットなど、ユーザが情報を閲覧し易い情報端末であってもよい。なお、エッジデバイス側では、データセット評価部203から出力された参照データセットグループの一部又は全部のデータセットを、そのまま学習用のデータセットに用いてもよい。
【0071】
例えばランキング算出部503による算出結果で、参照データセットグループAが入力データとの類似度zI
TzA及び品質スコアsAがともに高く上位ランクであった場合には、データセット{xi
(A),yi
(A)}i=1
NAの情報が提示部202に出力される。この場合、提示部202は、参照データセットグループAのデータ{xi
(A)}i=1
NAの全部又は一部を提示することで、高品質なデータセットを構築する手掛かりをユーザに与えることができる。
【0072】
例えば、エッジデバイス側でカメラの撮像画像から「犬」と「猫」を認識する画像認識器のモデルの学習を行いたい場合、エッジデバイス側で「犬」及び「猫」を撮影した画像が入力される。データセット間類似度算出部502は、エッジデバイスからの入力画像と、「猫」と「トラ」を識別するモデル学習用の参照データセットグループA、「キリン」と「ライオン」を識別するモデル学習用の参照データセットグループB、「牛」と「豚」を識別するモデル学習用の参照データセットグループCの各々との類似度を算出する。そして、ランキング算出部503は、例えば上式(1)~(3)を用いて算出した評価値に基づいて、各参照データセットグループA~Cのランキングを決定し、上位ランキングの参照データセットグループの情報を提示部202に出力する。「猫」と「トラ」を識別するモデル学習用の参照データセットグループAが最上位にランキングされた場合、猫及びトラの画像で構築された参照データセットA{xi
(A),yi
(A)}i=1
NAが提示部202に出力され、提示部202では猫及びトラの画像からなるデータ{xi
(A)}i=1
NAの全部又は一部が提示される。ユーザは、提示部202で提示された画像を参考又は見本にして、学習用のデータとなる犬や猫の撮影を行う。
【0073】
例えばユーザは、提示部202に提示された見本画像から、学習用のデータに相応しい構図(被写体を写す角度、大きさ、解像度を含む)、撮影条件、カメラワークなどを理解して、犬や猫の画像を撮影することによって、高性能又は高精度のモデル学習を実現するためのデータセットを構築し易くなる。
【0074】
また、カメラ撮影の知識に疎いユーザの場合、見本の画像が提示されるだけでは、高性能又は高精度のモデル学習に相応しい構図、撮影条件、カメラワークなどを理解することが困難なことが想定される。そこで、提示部202では、単に見本の画像を提示するだけでなく、見本の画像を撮影するための構図、撮影条件、カメラワークといった見本画像の属性情報をさらに提示するようにしてもよい。また、提示部202は、データ収集部101で収集するデータを見本画像の属性情報と比較して、どのような画像を収集すべきか、あるいはどのような画像が不足しているかを提示するようにしてもよい。
【0075】
見本(すなわち上位ランキングの参照データセットグループ)の画像の属性情報を出力し易くするために、各参照データセットグループA~Cに含まれるデータの属性情報A
A、A
B、A
Cを、各参照データセットグループA~Cと紐付けして参照データセット蓄積部501に格納しておいてもよい。属性情報は、主に画像撮影時に取得される情報からなり、Exif(Exchangeable image file format)などの形式で画像ファイルに記録される情報であってもよい。ランキング算出部503は、ランキングが上位の参照データセットグループの情報を出力する際に、そのグループに紐付けされた属性情報を併せて出力するようにすればよい。あるいは、画像から属性情報を推定するように事前学習された学習済みモデルを用いて、ランキング算出部503によって選択された参照データセットグループの属性情報を推定して、データセットとともに提示部202に出力するようにしてもよい。例えば、
図7に示すように、画像の構図、撮影条件、カメラワークなどを推定するように事前学習された学習済みモデル(属性識別器700)を用いて、上位にランキングされたデータセットグループ内の画像に該当する構図、撮影条件、カメラワークなどの属性情報を推定するようにしてもよい。
【0076】
E.装置構成
データセット評価部203は、例えばクラウド上のサーバに構築される。
図8には、データ評価部203として動作することができる情報処理装置800の構成例を模式的に示している。
【0077】
情報処理装置800は、CPU(Central Processing Unit)801の統括的な制御下で動作する。図示の例では、CPU801は、プロセッサコア801A及びプロセッサコア801Bを含むマルチコア構成である。CPU801は、バス810を介して情報処理装置800内の各コンポーネントと相互接続される。
【0078】
記憶装置820は、例えばハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)などの大容量の外部記憶装置で構成され、CPU801が実行するプログラムや、プログラムを実行中に使用し又はプログラムを実行して生成されるデータなどのファイルを格納する。例えば、記憶装置820は、参照データセット蓄積部501として使用され、モデルの学習用に事前に収集された、複数のデータセットのグループの情報(
図6を参照のこと)を格納している。また、記憶装置820は、CPU801が、データセット間類似度算出部502及びランキング算出部503としての処理を行うための各プログラムを格納している。
【0079】
メモリ821は、ROM(Read Only Memory)やRAM(Random Access Memory)で構成される。ROMには、例えば情報処理装置800の起動用プログラムや基本入出力用プログラムが格納される。RAMは、CPU801が実行するプログラムをロードしたり、プログラム実行中に使用するデータを一時的に格納したりするために使用される。例えば、データセット間類似度算出部502及びランキング算出部503としての処理を行うための各プログラムが記憶装置820からRAMにロードされ、プロセッサコア801A及びプロセッサコア801Bのいずれかが実行することによって、データセット間類似度算出部502及びランキング算出部503としての処理が実行される。
【0080】
表示部822は、例えば液晶ディスプレイや有機EL(Electro Luminescence)ディスプレイで構成される。表示部822は、CPU801がプログラム実行中のデータや実行結果を表示する。例えば算出したデータセット間の類似度や各データセットグループのランキングに関する情報などが、表示部822に表示される。
【0081】
入出力インターフェース(IF)部823は、各種外部装置840を接続するためのインターフェース装置である。外部装置840は、キーボード、マウス、プリンタ、HDD、ディスプレイなどを含む。入力インターフェース部823は、例えばUSB(Universal Serial Bus)やHDMI(登録商標)(High Definition Multimedia Interface)などの接続ポートを備えている。
【0082】
ネットワーク入出力部850は、情報処理装置800とクラウドとの入出力処理を行う。ネットワーク入出力部850は、クラウド経由でエッジデバイス(
図8では図示しない)からデータセットを入力したり、入力したデータセットと各参照データセットグループの類似度に基づくランキング上位の参照データグループの情報をエッジデバイス又はそのユーザの情報端末に出力したりする。
【0083】
F.エッジデバイスの具体例
このF項では、本開示が適用されるエッジデバイスの具体例について説明する。
【0084】
F-1.自律ロボットへの応用
例えば、自律動作するペットロボットは、家庭内で利用され、各ユーザ(家族のメンバーなど)をカメラで捕捉して、顔認証に基づいてユーザ毎に対応した行動を発現する。
図9には、ペットロボット900が家庭などの作業空間で動作する様子を示している。
【0085】
ペットロボット900の画像認識器に用いるモデルを、限られた人数のユーザ(家族のメンバーなど)を識別できる程度に学習する必要がある。年齢や人種などが異なるさまざまなユーザを認識する汎化型のモデル学習とは相違し、大量の学習データセットを用意して膨大な演算量の学習を行う必要はない。基本的には、ペットロボット900に搭載されたカメラを使って各ユーザを撮影した数枚の画像をデータセットとして認識モデルの学習を行えばよい。ところが、ペットロボット900のユーザはモデルの学習に精通しているとは必ずしも言い難く、高精度の認識モデルの学習を行うことは難しい。
【0086】
本開示によれば、エッジデバイスとしてのペットロボット900に搭載されたカメラを使って認識対象の各ユーザを撮影した数枚の画像からなるデータセットを、データセット評価部203に送る。そして、データセット評価部203からは、ペットロボット900から受け取った少数のデータセットに類似し且つ高品質の参照データセット又はその属性情報が返される。
【0087】
データセット評価部203から返される参照データセットは、ペットロボット900に搭載されたカメラを使って認識対象の各ユーザを撮影した画像に類似し、且つ高精度にモデル学習を行うことが可能なデータセットである。したがって、ペットロボット900のユーザは、参照データセットを見本にして、高精度なモデルの学習用の画像を撮影する手掛かりを得ることができる。
【0088】
また、カメラ撮影の知識に疎いユーザの場合、見本の画像が提示されるだけでは、高性能又は高精度のモデル学習に相応しい構図、撮影条件、カメラワークなどを理解することが困難なことが想定される。そこで、単に見本の画像を提示するだけでなく、見本の画像を撮影するための構図、撮影条件、カメラワークといった画像の属性情報を、ペットロボット900のユーザに提示するようにしてもよい。ユーザは、提示された写真の構図、撮影条件、カメラワークなどに基づいて、高精度なモデルの学習用の画像を撮影する手掛かりを得ることができる。
【0089】
また、ペットロボット900の音声認識器に用いるモデルについても同様に、汎化型の学習は不要であるが、限られた人数のユーザ(家族のメンバーなど)を識別できる程度に学習する必要がある。本開示によれば、エッジデバイスとしてのペットロボット900に搭載されたマイクを使って認識対象の各ユーザの録音音声からなるデータセットを、データセット評価部203に送る。そして、データセット評価部203からは、ペットロボット900から受け取った少数のデータセットに類似し且つ高品質の参照データセット又はその属性情報が返される。したがって、ペットロボット900のユーザは、参照データセットを見本にして、高精度なモデルの学習用の音声を録音する録音条件(認識したい音声フレーズを話す速さ、声の大きさ、録音環境)などの手掛かりを得ることができる。
【0090】
図10には、ペットロボット900の制御システム1000の機能的構成例を示している。ペットロボット900は、例えば
図2に示した学習システム200におけるエッジデバイスとして動作する装置である。
【0091】
画像認識器1011は、ニューラルネットワークなどで構成される学習モデルを用いて画像認識処理を行う。本実施形態では、画像認識器1011は、ペットロボット900に搭載されたカメラ1001の撮影画像を用いてユーザ特化型のモデル学習を行い、さらに学習済みモデルを用いてユーザのニーズに特化した画像認識を行う。モデルの学習フェーズでは、カメラ1001の撮影画像からなる少数のデータセットがデータセット評価部203に出力される。そして、その後、データセット評価部203から送られてきたデータセットの見本又は属性情報を手掛かりにして改めてカメラ1001で撮影した画像からなるデータセットを使ってユーザ特化型のモデルの学習が行われる。
【0092】
音声認識器1012は、ニューラルネットワークなどで構成される学習モデルを用いて音声認識処理を行う。本実施形態では、音声認識器1012は、ペットロボット900に搭載されたマイク1002の収音を用いてユーザ特化型のモデル学習を行い、さらに学習済みモデルを用いてユーザのニーズに特化した音声認識を行う。モデルの学習フェーズでは、マイク1002の録音音声からなる少数のデータセットが、データセット評価部203に出力される。そして、その後、データセット評価部203から送られてきたデータセットの見本又は属性情報を手掛かりにして改めてマイク1002で収音した音声からなるデータセットを使ってユーザ特化型のモデルの学習が行われる。
【0093】
センサ1003は、足底センサ(但し、脚式ロボットの場合)、接触センサ、トルクセンサなどペットロボット900の機体の状態を検出する状態検知センサや、温度センサ、湿度センサ、気圧センサ、照度センサなどペットロボット900の周囲環境を検出する環境センサなどを含んでいる。
【0094】
状態認識部1020は、画像認識器1011によるに画像認識結果、音声認識器1012による音声認識結果、及びセンサ信号処理部1013によるセンサ信号の処理結果に基づいて、ペットロボット900の状態や周囲環境を認識する。
【0095】
行動決定部1030は、ペットロボット900の状態や周囲環境に基づいて、ペットロボット900の行動を決定する。そして、行動決定部1030は、決定した行動に従った機体動作、音声出力、及び情報表示を実現するための駆動指示、音声出力指示、及び表示指示をそれぞれ駆動制御部1041、音声出力制御部1042、表示制御部1043に出力する。
【0096】
駆動制御部1041は、行動決定部1030からの機体の駆動指示に基づいて、駆動部1051に対する駆動制御信号を生成して出力する。ここで言う駆動部1051は、脚や首などの関節を駆動するモータや、カメラ1001のズーム、パン、チルトなどを駆動するアクチュエータを含む。行動決定部1030は、データセット評価部203から送られてきたデータセットの見本又は属性情報を手掛かりにして、高精度なモデル学習に必要なデータセットを取得するための撮影(例えば、所望の角度からユーザの顔を撮影するための動作)やユーザの音声の収音を行うための機体の移動、姿勢、カメラ1001のズーム、パン、チルトを駆動制御部1041に指示し、駆動制御部1041は高精度なモデル学習に必要なデータセットを取得するための駆動制御信号を駆動部1051に出力するようにしてもよい。
【0097】
音声出力制御部1042は、行動決定部1030からの音声出力指示に基づいて、スピーカ1052に対する音声出力信号を生成して出力する。行動決定部1030は、データセット評価部203から送られてきたデータセットの見本又は属性情報を手掛かりにして、高精度なモデル学習に必要なデータセットを取得するための撮影(例えば、所望の角度からユーザの顔を撮影するための動作)やユーザの音声の収音を行うための音声ガイダンスの出力を音声出力制御部1042に指示し、音声出力制御部1042は指示された音声ガイダンスを合成してスピーカ1052から出力するようにしてもよい。
【0098】
表示制御部1043は、行動決定部1030からの表示指示に基づいて、表示部1053に対する表示制御信号を生成して出力する。表示部1053は、ペットロボット900の機体に装備される以外に、ペットロボット900のユーザが所持するパーソナルコンピュータやスマートフォン、タブレットなど情報端末であってもよい。行動決定部1030は、データセット評価部203から送られてきたデータセットの見本又は属性情報を表示するように表示制御部1043に指示し、表示制御部1043はデータセットの見本又は属性情報を表示部1053に表示するようにしてもよい。
【0099】
ペットロボット900は、カメラ1001やマイク1002から取得したデータセットに類似し、且つ高精度にモデル学習を行うことが可能なデータセットの見本又は属性情報といった、データセットを構築する手掛かりとなる情報がデータセット評価部203(又は、クラウド)から提供される。そして、ペットロボット900のユーザは、スピーカ1052から音声出力される音声ガイダンスや表示部1053の表示に基づいて、高精度にモデル学習を行うためのデータセットをカメラ1001やマイク1002で取得するようにペットロボット900を操作し、あるいはペットロボット900自身が高精度にモデル学習を行うためのデータセットを取得する動作を自律的に行うことができる。また、データセット評価部203から送られてきたデータセットをそのまま用いて、画像認識器1011や音声認識器1012の学習を行うようにしてもよい。
【0100】
F-2.医用画像解析への応用
図11には、医療ロボットを使った手術システム1100の構成例を示している。手術システム1100は、医療ロボット1110と、医療ロボット1110の動作を制御する制御装置1120からなる。
【0101】
医療ロボット1110は、複数のリンクを関節軸で接続した多リンク構造体からなるロボットアームを1本乃至複数本備えている。
図11では、図面の簡素化のためロボットアームを1本だけ描いている。ロボットアームの先端には、内視鏡や、鉗子、気腹チューブ、エネルギー処置具、攝子、レトラクタといった医療用術具が搭載されている。
【0102】
制御装置1120は、画像認識器1121と、運動予測器1122を備えている。画像認識器1121は、内視鏡による撮像画像の画像認識を行う。また、運動予測器1122は、画像認識器1121の認識結果に応じた医療ロボット1110のロボットアームの運動を予測する。
【0103】
制御装置1120には、内視鏡による術部の撮像画像、医療ロボット1110からのロボットアームのモーション情報とロボットアームのセンサ情報が入力される。ロボットアームのモーション情報には、ロボットアームが先端で支持する内視鏡などの医療用器具の位置、速度、加速度、ロボットアームの各関節の姿勢(関節の回転軸に設置されたエンコーダによって計測される関節角)の情報を含む。また、ロボットアームのセンサ情報には、医療ロボット1110に搭載されたIMU(Inertial Measurement Unit)で計測される加速度などの情報や、各関節に作用するトルク情報、ロボットアームの先端で支持される医療用器具に作用する外力などの情報が含まれる。
【0104】
画像認識器1121は、画像認識を行うように学習されたモデルを用いて、内視鏡110の撮像画像に含まれている医療用器具や内視鏡の視野内の環境を画像認識して、器具認識情報及び環境認識情報を出力する。本実施形態では、画像認識器1121は、内視鏡の撮像画像を用いて実地でユーザ特化型のモデル学習を行い、さらに学習済みモデルを用いてユーザのニーズに特化した画像認識を行う。
【0105】
画像認識器1121は、器具認識情報として、内視鏡110の視野内で認識された医療用器具の種類(例えば鉗子や気腹チューブ、エネルギー処置具、攝子、レトラクタなど)と各器具の位置及び姿勢、操作状態(例えば鉗子であれば開閉状態、エネルギー処置具であればエネルギー出力状態)を認識する。また、画像認識器1121は、環境認識情報として、内視鏡の視野内の撮像画像に含まれている臓器や医療用器具のデプス情報(臓器や器具の形状を含む)、術部における環境地図(例えば、SLAM(Simultaneous Localization and Mapping)技術を利用した環境地図作成)、臓器の種類、医療用器具の種類、撮像画像に含まれている各物体の材料などを認識する。また、画像認識器1121は、環境認識情報として、例えば、術部の画像に含まれている臓器や医療用器具などの各物体及びその材料、各物体のデプス情報、環境地図を認識する。
【0106】
運動予測器1122は、画像認識結果からロボットアームの運動を予測するように学習されたモデルを用いて、器具認識情報及び環境認識情報の認識情報に基づいて、医療ロボット1110に対する目標指令関連情報を予測して出力する。運動予測器1122は、目標指令関連情報として、例えば内視鏡のカメラ目標位置、姿勢、速度、加速度、注視点、視線ベクトル(対象物位置、距離、ベクトル姿勢)、撮像画像の電子切り出し位置、距離といったさまざまな目標指令値を予測する。また、運動予測器1122は、目標指令関連情報として、その器具の目標位置、姿勢、速度、加速度、操作力を予測する。そして、制御装置1120は、運動予測器1122が予測した、内視鏡などのロボットアームの先端で支持する医療用器具の目標位置、姿勢、速度、加速度の情報に基づいて、逆キネマティクス演算によりロボットアームの各関節の目標関節角度、関節角速度、関節角加速度を計算して、医療ロボット1110に対する指令値を出力する。
【0107】
クラウドを活用したディープラーニングを行うことにより、画像認識器1121による汎用的な器具情報や環境情報などの認識率を向上することができる。一方、専門医などでは、特定の組織についてのみ認識率を向上させたいといったユーザに特化したニーズがある。本実施形態では、対象となる組織を内視鏡で撮影した数枚の画像をデータセット評価部203(クラウド)に送ると、データセット評価部203からはデータセットの見本又は属性情報が返信される。
【0108】
手術システム1100において肝臓を詳しく診断したいというニーズがある場合には、
図12に示すような肝臓を撮影した数枚の内視鏡画像を、データセット評価部203(クラウド)に送信する。そして、データセット評価部203からは、手術システム1100で撮影した肝臓の画像に類似し、且つ高精度にモデル学習を行うことが可能なデータセットの見本又は属性情報といった、データセットを構築する手掛かりとなる情報が提供される。例えば、ユーザは、染色の具合や組織が写っている大きさや角度のバリエーションといった、学習用のデータセットに利用できる内視鏡画像を撮影する手掛かりを掴んで、自分のニーズに特化した高精度なモデル学習を実現するためのデータセットを構築することができる。また、データセット評価部203から送られてきたデータセットをそのまま用いて、画像認識器1121の学習を行うようにしてもよい。
【産業上の利用可能性】
【0109】
以上、特定の実施形態を参照しながら、本開示について詳細に説明してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
【0110】
本明細書では、本開示をエッジデバイスに適用してユーザ毎のニーズに特化したユーザ特化型のモデル学習を行う実施形態を中心に説明してきたが、本明細書で開示する技術の要旨はこれに限定されるものではない。本開示の機能の一部又は全部が、クラウド又は大規模演算が可能な演算装置上に構築されてもよいし、本開示を用いて特定のユーザのニーズに特化せず汎用的なモデルの学習を行うようにしてもよい。また、本開示は、ニューラルネットワーク、サポートベクタ回帰、ガウス過程回帰などさまざまなタイプのモデルの学習に適用することができる。
【0111】
要するに、例示という形態により本開示について説明してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本開示の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【0112】
なお、本開示は、以下のような構成をとることも可能である。
【0113】
(1)入力されたデータセットと事前に収集された複数のデータセットグループの各々との類似度を算出する類似度算出部と、
前記類似度算出部が算出した類似度に基づいて、各データセットグループを評価する評価部と、
を具備する情報処理装置。
【0114】
(2)前記入力されたデータセットは、所定のデバイスにおけるモデルの学習用に収集したデータセットである、
上記(1)に記載の情報処理装置。
【0115】
(3)前記類似度算出部は、データセットの特徴ベクトルに基づいてデータセット間の類似度を算出する、
上記(1)又は(2)のいずれかに記載の情報処理装置。
【0116】
(4)前記類似度算出部は、メタ学習を用いて算出されるデータセットの特徴ベクトルに基づいてデータセット間の類似度を算出する、
上記(1)乃至(3)のいずれかに記載の情報処理装置。
【0117】
(5)前記類似度算出部は、各データセットの特徴ベクトルの内積又はベクトル間距離に基づいてデータセット間の類似度を算出する、
上記(1)乃至(4)のいずれかに記載の情報処理装置。
【0118】
(6)前記評価部は、データセットグループ毎に算出した類似度とデータセットグループの品質に基づいて、各データセットグループを評価する、
上記(1)乃至(5)のいずれかに記載の情報処理装置。
【0119】
(7)データセットグループの品質は、そのデータセットグループを用いて学習を行ったモデルの品質を表す値からなる、
上記(6)に記載の情報処理装置。
【0120】
(8)データセットグループの品質は、そのデータセットグループを用いて学習を行ったモデルのタスク成功率を示す値からなる、
上記(6)又は(7)のいずれかに記載の情報処理装置。
【0121】
(9)前記評価部は、データセットグループ毎に算出した類似度にデータセットグループの品質を示す値を加算又は重み付け加算し、又は、データセットグループ毎に算出した類似度にデータセットグループの品質を示す値を乗算して、各データセットグループの評価値を算出する、
上記(1)乃至(8)のいずれかに記載の情報処理装置。
【0122】
(10)前記評価部による評価が高いデータセットグループの情報を出力する、
上記(1)乃至(9)のいずれかに記載の情報処理装置。
【0123】
(11)前記情報は、該当するデータセットグループに含まれるデータセットを含む、
上記(10)に記載の情報処理装置。
【0124】
(12)前記情報は、データセットの属性情報を含む、
上記(10)又は(11)のいずれかに記載の情報処理装置。
【0125】
(13)前記データセットは画像認識用のモデルの学習用の画像データからなり、前記属性情報は、前記画像データを撮影するための構図、撮影条件、カメラワークに関する情報を含む、
上記(1)乃至(12)のいずれかに記載の情報処理装置。
【0126】
(14)入力されたデータセットと事前に収集された複数のデータセットグループの各々との類似度を算出する類似度算出ステップと、
前記類似度算出ステップにおいて算出した類似度に基づいて、各データセットグループを評価する評価ステップと、
を有する情報処理方法。
【0127】
(15)入力されたデータセットと事前に収集された複数のデータセットグループの各々との類似度を算出する類似度算出部、
前記類似度算出部が算出した類似度に基づいて、各データセットグループを評価する評価部、
としてコンピュータが機能するようにコンピュータ可読形式で記述されたコンピュータプログラム。
【0128】
(16)データセットを取得してモデルの学習を行う第1の装置と、
データセットの取得に関する情報を前記第1の装置に提供する第2の装置と、
を具備し、
前記第2の装置は、前記第1の装置から入力されたデータセットと事前に収集された複数のデータセットグループの各々との類似度に基づいて各データセットグループを評価して、評価が高いデータセットグループの情報を出力する、
学習システム。
【符号の説明】
【0129】
100…学習システム、101…データ収集部
102…収集データ蓄積部、103…データ処理部、104…提示部
105…学習用データセット蓄積部、106…モデル学習部
107…モデルパラメータ保持部、111…推論部
112…データ入力部、113…入力データ処理部
200…学習システム、201…データセット出力部
202…提示部、203…データセット評価部
300…モデル(学習対象)、301…学習器
400…学習器、401…メタ学習器
501…参照データセット蓄積部
502…データセット間類似度算出部、503…ランキング算出部
800…情報処理装置、801…CPU
801A、801B…プロセッサコア、810…バス
820…記憶装置、821…メモリ、822…表示部
823…入出力インターフェース部、840…入出力装置
850…ネットワーク入出力部
900…ペットロボット
1000…制御システム、1011…カメラ、1012…マイク
1013…センサ、1020…状態認識部、1030…行動決定部
1041…駆動制御部、1042…音声出力制御部
1043…表示制御部、1051…駆動部、1052…スピーカ
1053…表示部
1100…手術システム、1110…医療ロボット
1120…制御装置、1121…画像認識器、1122…運動予測器