(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024173475
(43)【公開日】2024-12-12
(54)【発明の名称】情報処理端末、ロボット、情報処理システム、情報処理方法、制御プログラム及び記録媒体
(51)【国際特許分類】
G06F 9/50 20060101AFI20241205BHJP
G06T 7/00 20170101ALI20241205BHJP
G06V 10/74 20220101ALI20241205BHJP
G06N 20/00 20190101ALI20241205BHJP
【FI】
G06F9/50 150D
G06T7/00 350B
G06V10/74
G06F9/50 120A
G06N20/00 130
【審査請求】有
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2023091917
(22)【出願日】2023-06-02
(71)【出願人】
【識別番号】501440684
【氏名又は名称】ソフトバンク株式会社
(74)【代理人】
【識別番号】110000338
【氏名又は名称】弁理士法人 HARAKENZO WORLD PATENT & TRADEMARK
(72)【発明者】
【氏名】榎本 光洋
(72)【発明者】
【氏名】後藤 広樹
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096FA16
5L096FA59
5L096FA69
5L096GA30
5L096HA03
5L096KA04
(57)【要約】
【課題】タスクのオフロードを行うべきか否かを判別可能な構成を実現する。
【解決手段】本発明の一態様に係る情報処理端末(12)は、情報処理タスクを取得する取得部(16)と、前記情報処理タスクに関する情報が入力される学習モデルを用いて、前記情報処理タスクを外部装置(30)にオフロードすべきか否かを判定する判定部(17)と、前記判定部(17)が前記情報処理タスクを前記外部装置(30)にオフロードすべきと判定した場合に、前記情報処理タスクを前記外部装置(30)にオフロードする通信処理部(18)と、前記判定部(17)が前記情報処理タスクを前記外部装置(30)にオフロードすべきでないと判定した場合に、前記情報処理タスクを実行するタスク処理部(19)とを備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
情報処理タスクを取得する取得部と、
前記情報処理タスクに関する情報が入力される学習モデルを用いて、前記情報処理タスクを外部装置にオフロードすべきか否かを判定する判定部と、
前記判定部が前記情報処理タスクを前記外部装置にオフロードすべきと判定した場合に、前記情報処理タスクを前記外部装置にオフロードする通信処理部と、
前記判定部が前記情報処理タスクを前記外部装置にオフロードすべきでないと判定した場合に、前記情報処理タスクを実行するタスク処理部と
を備えることを特徴とする情報処理端末。
【請求項2】
前記情報処理タスクは、画像内の物体を検出する情報処理タスクであり、
前記判定部は、
前記情報処理タスクに関する情報として、前記画像内において検出した各物体の領域、又は当該領域のサイズを示す情報、並びに各物体検出の信頼スコアを前記学習モデルに入力する
ことを特徴とする請求項1に記載の情報処理端末。
【請求項3】
前記判定部は、
2以上の前記外部装置のうち何れの外部装置に前記情報処理タスクをオフロードすべきかを、各外部装置における性能、処理負荷及び通信負荷のうち少なくとも何れかに応じて判定する
ことを特徴とする請求項1又は2に記載の情報処理端末。
【請求項4】
請求項1又は2に記載の情報処理端末を備えることを特徴とするロボット。
【請求項5】
情報処理端末と、サーバ装置とを備える情報処理システムであって、
前記情報処理端末は、
情報処理タスクを取得する取得部と、
前記情報処理タスクに関する情報が入力される学習モデルを用いて、前記情報処理タスクを前記サーバ装置にオフロードすべきか否かを判定する判定部と、
前記判定部が前記情報処理タスクを前記サーバ装置にオフロードすべきと判定した場合に、前記情報処理タスクを前記サーバ装置にオフロードする通信処理部と、
前記判定部が前記情報処理タスクを前記サーバ装置にオフロードすべきでないと判定した場合に、前記情報処理タスクを実行する情報処理部と
を備え、
前記サーバ装置は、
前記情報処理端末から前記情報処理タスクのオフロードがあった場合に、前記情報処理タスクを実行し、その実行結果を前記情報処理端末に送信する
ことを特徴とする情報処理システム。
【請求項6】
前記情報処理端末又は前記サーバ装置は、
前記学習モデルを、前記情報処理タスクに関する情報と、前記情報処理タスクを前記サーバ装置にオフロードすべきか否かを示す情報との組を教師データとして用いて学習させる学習部を更に備える
ことを特徴とする請求項5に記載の情報処理システム。
【請求項7】
前記情報処理タスクは、画像内の物体を検出する情報処理タスクであり、
前記学習部は、
前記学習モデルを、前記画像内において検出した各物体の領域、又は当該領域のサイズを示す情報、並びに各物体検出の信頼スコアと、当該画像内の物体を検出する情報処理タスクを前記サーバ装置にオフロードすべきか否かを示す情報との組を教師データとして用いて学習させる
ことを特徴とする請求項6に記載の情報処理システム。
【請求項8】
前記学習部は、
学習用の或る情報処理タスクを当該情報処理端末が実行した結果と、前記サーバ装置が実行した結果とを比較し、当該情報処理端末が実行した結果と、前記サーバ装置が実行した結果との差分が所定の条件を満たす場合に、前記或る情報処理タスクに対応する教師データを、前記サーバ装置にオフロードすべき場合の教師データとして前記学習モデルに入力する
ことを特徴とする請求項6又は7に記載の情報処理システム。
【請求項9】
装置によって実行される情報処理方法であって、
情報処理タスクを取得する取得ステップと、
前記情報処理タスクに関する情報が入力される学習モデルを用いて、前記情報処理タスクを外部装置にオフロードすべきか否かを判定する判定ステップと、
前記判定ステップにおいて前記情報処理タスクを前記外部装置にオフロードすべきと判定した場合に、前記情報処理タスクを前記外部装置にオフロードする通信処理ステップと、
前記判定ステップにおいて前記情報処理タスクを前記外部装置にオフロードすべきでないと判定した場合に、前記情報処理タスクを実行するタスク処理ステップと
を含むことを特徴とする情報処理方法。
【請求項10】
請求項1に記載の情報処理端末としてコンピュータを機能させるための制御プログラムであって、上記取得部、上記判定部、上記通信処理部および上記タスク処理部としてコンピュータを機能させるための制御プログラム。
【請求項11】
請求項10に記載の制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理端末、ロボット、情報処理システム、情報処理方法、制御プログラム及び記録媒体に関する。
【背景技術】
【0002】
或る装置において生じたタスクを、サーバ等の外部装置にオフロードする技術が知られている。特許文献1では、画像処理作業をオフロードする携帯型カメラが開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述のような従来技術では、情報処理端末から外部装置へのオフロードが可能な構成において、情報処理端末でも実行可能な難易度のタスクであるか否かが不明な場合がある。しかしながら、全てのタスクを外部装置へオフロードした場合、外部装置のリソースを必要以上に占有し、例えばコストの増加に繋がる虞がある。
【0005】
本発明の一態様は、上記の問題に鑑みてなされたものであり、タスクのオフロードを行うべきか否かを判別可能な構成を実現することを目的とする。
【課題を解決するための手段】
【0006】
上記の課題を解決するために、本発明の一態様に係る情報処理端末は、情報処理タスクを取得する取得部と、前記情報処理タスクに関する情報が入力される学習モデルを用いて、前記情報処理タスクを外部装置にオフロードすべきか否かを判定する判定部と、前記判定部が前記情報処理タスクを前記外部装置にオフロードすべきと判定した場合に、前記情報処理タスクを前記外部装置にオフロードする通信処理部と、前記判定部が前記情報処理タスクを前記外部装置にオフロードすべきでないと判定した場合に、前記情報処理タスクを実行するタスク処理部とを備える。
【0007】
本発明の他の態様に係る情報処理システムは、情報処理端末と、サーバ装置とを備える情報処理システムであって、前記情報処理端末は、情報処理タスクを取得する取得部と、前記情報処理タスクに関する情報が入力される学習モデルを用いて、前記情報処理タスクを前記サーバ装置にオフロードすべきか否かを判定する判定部と、前記判定部が前記情報処理タスクを前記サーバ装置にオフロードすべきと判定した場合に、前記情報処理タスクを前記サーバ装置にオフロードする通信処理部と、前記判定部が前記情報処理タスクを前記サーバ装置にオフロードすべきでないと判定した場合に、前記情報処理タスクを実行する情報処理部とを備え、前記サーバ装置は、前記情報処理端末から前記情報処理タスクのオフロードがあった場合に、前記情報処理タスクを実行し、その実行結果を前記情報処理端末に送信する。
【0008】
本発明の他の態様に係る情報処理方法は、装置によって実行される情報処理方法であって、情報処理タスクを取得する取得ステップと、前記情報処理タスクに関する情報が入力される学習モデルを用いて、前記情報処理タスクを外部装置にオフロードすべきか否かを判定する判定ステップと、前記判定ステップにおいて前記情報処理タスクを前記外部装置にオフロードすべきと判定した場合に、前記情報処理タスクを前記外部装置にオフロードする通信処理ステップと、前記判定ステップにおいて前記情報処理タスクを前記外部装置にオフロードすべきでないと判定した場合に、前記情報処理タスクを実行するタスク処理ステップとを含む。
【0009】
コンピュータを本発明の各態様に係る情報処理端末又はサーバ装置が備える各部(ソフトウェア要素)として動作させることにより前記情報処理端末又はサーバ装置をコンピュータにて実現させる情報処理端末又はサーバ装置の制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
【0010】
また、前記制御プログラムは、コンピュータを前記各部として動作させる処理又はその他の処理において、各種の機械学習手法を用いてもよい。この場合、機械学習手法を用いるプログラムはサーバ又はデバイスで動作するものであってもよいし、他の装置(例えばエッジコンピュータまたはクラウドサーバ等)で動作するものであってもよい。
【図面の簡単な説明】
【0011】
【
図1】実施形態1に係る情報処理システムの機能的構成を示すブロック図の一例である。
【
図2】情報処理システムを含む構成の概念図の一例を示している。
【
図3】実施形態1に係る情報処理タスクの実行処理の流れを示すシーケンス図の一例である。
【
図4】画像及びバウンディングボックスの一例を示す図である。
【
図5】物体検出をロボットが行った結果と、サーバ装置が同様の物体検出を行った結果との一例を示している。
【
図6】実施形態1に係る学習処理の流れを示すシーケンス図の一例である。
【
図7】実施形態2に係る情報処理システムの機能的構成を示すブロック図の一例である。
【
図8】実施形態2に係る学習処理の流れを示すシーケンス図の一例である。
【
図9】実施形態3に係る情報処理システムの機能的構成を示すブロック図の一例である。
【発明を実施するための形態】
【0012】
〔実施形態1〕
以下、本発明の一実施形態について、詳細に説明する。
【0013】
〔1.情報処理システム1の構成例〕
図1は、本実施形態に係る情報処理システム1の機能的構成を示すブロック図の一例である。情報処理システム1は、ロボット10及びサーバ装置(外部装置)30を備えており、ロボット10に与えられた情報処理タスクを実行するためのシステムである。
【0014】
ここで、情報処理タスクとは、センシング結果又はユーザの指示等の入力から一の結果を得る特定の情報処理を意味する。以下は、情報処理タスクの一例であり、括弧書きは、対応する情報処理タスクに用いられる代表的な手法を示している。
・自己位置推定(AMCL:Adaptive Monte Carlo Localization)
・経路計画(DWA:Dynamic Window Approach)
・物体検出(CNN:Convolutional Neural Network、ViT:Vision Transformer)
・マニピュレーション(IK:Inverse Kinematics)
・音声認識(LSTM:Long Short Term Memory)
・汎用命令処理(SayCan)
・音源定位・匂い源定位(Music:MUltiple SIgnal Classification)
また、ロボット10は、周囲のユーザを認識し、会話及び移動が可能なロボットである。ロボット10が備える情報処理端末12は、制御部14、記憶部22、通信部23、撮影部24、音声入力部25及び音声出力部26を備えている。
【0015】
制御部14は、ロボット10全体を統括する制御装置であって、取得部16、判定部17、通信処理部18、タスク処理部19及び学習部20を備えている。
【0016】
取得部16は、情報処理タスクを取得する。この情報処理タスクの取得には、情報処理タスクの対象となる入力を受け取ること、又は特定することが含まれる。
【0017】
判定部17は、学習済みの学習モデルを用いて、情報処理タスクをサーバ装置30にオフロードすべきか否かを判定する。前記学習モデルは、情報処理タスクに関する情報が入力され、当該情報処理タスクをサーバ装置30にオフロードすべきか否かを示す情報を出力する。ここで、オフロードとは、対象となる情報処理タスクの一部又は全部の実行をサーバ装置30等の外部装置に依頼することを意味している。また、判定部17は、後述するその他の判定処理を行う。
【0018】
通信処理部18は、通信部23による通信処理を制御する。例えば通信処理部18は、判定部17が情報処理タスクをサーバ装置30にオフロードすべきと判定した場合に、当該情報処理タスクをサーバ装置30にオフロードする。
【0019】
タスク処理部19は、判定部17が情報処理タスクをサーバ装置30にオフロードすべきでないと判定した場合等に、当該情報処理タスクを実行する。
【0020】
学習部20は、判定部17が用いる学習モデルを、情報処理タスクに関する情報と、前記情報処理タスクをサーバ装置30にオフロードすべきか否かを示す情報との組を教師データとして用いて学習させる。
【0021】
記憶部22は、各種情報を格納する記憶装置であって、例えば学習モデルを規定するパラメータセットを格納する。
【0022】
通信部23は、通信処理部18の制御に基づいて、サーバ装置30等の外部装置との通信処理を行う。例えば通信部23は、情報処理タスク及びその実行依頼を示す情報を、ネットワーク3を介してサーバ装置30に送信する。
【0023】
撮影部24は、ロボット10の周囲を撮影するカメラである。音声入力部25は、ロボット10周囲の音声を取得するマイクである。制御部14は、音声入力部25に入力された音声を取得し、内容を解析する。音声出力部26は、ロボット10の音声を出力するスピーカである。
【0024】
なお、図示しないボタン又はタッチパネル等を介してロボット10に対する指示が可能な構成であってもよいし、ロボット10がその他のセンサを備える構成であってもよい。
【0025】
サーバ装置30は、クライアントであるロボット10に対するサーバとして機能する装置であって、制御部32、記憶部34及び通信部35を備えている。
【0026】
制御部32は、サーバ全体を統括する制御装置である。例えば制御部32は、ロボット10からオフロードされた情報処理タスクを実行する。また、情報処理タスクの実行に関して、制御部32は、ロボット10のタスク処理部19よりも高い性能を有している。
【0027】
記憶部34は、各種情報を格納する記憶装置であって、例えば情報処理タスクの実行に用いる情報を格納する。
【0028】
通信部35は、制御部32の制御に基づいて、ロボット10等との通信処理を行う。例えば通信部35は、情報処理タスクの実行結果を、ネットワーク3を介してロボット10に送信する。
【0029】
また、情報処理システム1が備える単一の部材の機能が、別の複数の部材によって実現されてもよく、情報処理システム1が備える複数の部材の機能が、別の単一の部材によって実現されてもよい。
【0030】
図2は、情報処理システム1を含む構成の概念図の一例を示している。ロボット10は、情報処理タスクをユーザから受け取り、情報処理タスクに関する情報を自身が有する学習モデルに入力し、当該情報処理タスクをサーバ装置30にオフロードすべきか否かを判定する。概して、情報処理タスクが、或る基準よりも複雑なタスクであればサーバ装置30へのオフロードがなされ、そうでなければロボット10が当該情報処理タスクを実行する。なお、情報処理タスクは、ユーザから入力される構成には限定されず、例えばロボット10がセンシング結果を入力として一定時間毎に実行する構成であってもよい。
【0031】
〔2.情報処理システム1の処理例〕
続いて、情報処理システム1が実行する処理の流れについて一例を挙げて説明する。本例においては、情報処理タスクが、画像中の物体検出処理である場合を例に挙げて説明するが、その他の情報処理タスクについても同様に説明される。
図3は、本実施形態に係る情報処理タスクの実行処理の流れを示すシーケンス図の一例である。
【0032】
S101(ステップS101)において、撮影部24は、ロボット10の周囲を撮影する。取得部16は、情報処理タスクの対象として、撮影部24が撮影した画像を取得する。
【0033】
S102において、タスク処理部19は、取得部16が取得した画像に含まれる物体を検出する処理を行い、当該物体を囲むバウンディングボックス(以下、単に「ボックス」とも称する)の位置、サイズ及び信頼スコア(Confidence Score)を導出する。ボックスの位置は、検出された物体の領域を示している。
【0034】
図4は、画像及びボックスの一例を示す図である。
図4において、「Threshold(検出閾値)」は、物体検出の感度の低さを示している。また、「TP(True Positive)」は、画像内の物体を正しく検出している真陽性であることを示しており、「TN(True Negative)」は、画像内に存在しない物体を検出せず正しい判定を行っている真陰性を示している。「FP(False Positive)」は、画像内に存在しない物体を誤検出している偽陽性を示している。「FN(False Negative)」は、画像内に存在する物体を検出していない偽陰性を示している。ボックスの信頼スコアが高い程、当該ボックスについての判定が「TP」である確率が高い。
【0035】
S103において、判定部17は、情報処理タスクに関する情報として、各ボックスの位置及びサイズを示す情報、並びに各ボックスの信頼スコアを学習モデルに入力する。なお、ボックスの位置及びサイズは、何れか一方のみが学習モデルに入力される構成であってもよく、以降の実施形態においても同様である。続いて判定部17は、学習モデルの出力に従い、前記情報処理タスクをオフロードすべきか否かを判定する。判定部17が、情報処理タスクをサーバ装置30にオフロードすべきであると判定した場合(S103:YES)、続いてS104の処理が実行され、オフロードすべきではないと判定した場合(S103:NO)、続いてS107の処理が実行される。
【0036】
S104において、通信処理部18は、通信部23を介して、情報処理タスクである物体検出処理をサーバ装置30にオフロードする。即ち、通信処理部18は、画像、及び画像内の物体を検出する処理の実行依頼を示す情報をサーバ装置30に送信する。
【0037】
S105において、サーバ装置30の制御部32は、ロボット10から送信された画像内の物体を検出する処理を実行し、その実行結果を、通信部35を介してロボット10に送信する。このように、サーバ装置30は、ロボット10から情報処理タスクのオフロードがあった場合に、情報処理タスクを実行し、その実行結果をロボット10に送信する。
【0038】
S106において、通信処理部18は、サーバ装置30から送信された実行結果を受信し、タスク処理部19は、前記実行結果を情報処理タスクの結果として決定する。
【0039】
一方で、S107においてタスク処理部19は、S102において行った物体検出の実行結果を情報処理タスクの結果として決定する。
【0040】
以上、装置によって実行される情報処理方法であって、取得ステップ、判定ステップ、通信処理ステップ及びタスク処理ステップを含む方法について説明した。取得ステップでは、情報処理タスクが取得され、判定ステップでは、情報処理タスクに関する情報が入力される学習モデルを用いて、情報処理タスクをサーバ装置30にオフロードすべきか否かが判定される。判定ステップにおいて情報処理タスクをサーバ装置30にオフロードすべきと判定された場合に、情報処理タスクをサーバ装置30にオフロードする通信処理ステップが実行される。また、判定ステップにおいて情報処理タスクをサーバ装置30にオフロードすべきでないと判定した場合に、情報処理タスクを実行するタスク処理ステップが実行される。
【0041】
本例の構成によれば、ロボット10が、情報処理タスクのオフロードを行うべきか否かを判別し、適切に実行可能な難易度の情報処理タスクであればロボット10自身が実行し、そうでなければサーバ装置30へのオフロードを行う構成を実現できる。
【0042】
〔3.学習処理例〕
続いて、学習部20が学習モデルを学習させる処理等について、
図4がタスク処理部19による物体検出処理を示しているものとして補足する。
図4の画像51a~画像51cは、車を含む同じ画像を示しており、画像52a~52cは、車及びロボットを含む同じ画像を示している。
【0043】
図4に示すように、検出閾値(Threshold)が0.8の場合、車は検出され、ロボットは検出されていない。検出閾値が0.6又は0.4の場合、車及びロボットが検出されているが、画像内に存在しない物体が誤検出されている。
【0044】
つまり、タスク処理部19が
図4の画像内の物体を漏れなく検出するため検出閾値を0.8から0.6に下げたとしても、誤検出が生じるため正しく物体検出が行えていない。
【0045】
図5は、車及びロボットを含む前述の画像52(52a~52c)を対象とする物体検出をロボット10が行った結果と、サーバ装置30が同様の物体検出を行った結果との一例を示している。ロボット10のタスク処理部19による物体検出では誤検出が生じ正しく物体検出が行えていないが、サーバ装置30の制御部32が同じ画像を対象として物体検出を行った場合、正しく物体検出がなされている。つまり、この画像52を対象とする物体検出においては、ロボット10からサーバ装置30へのオフロードが行われることが好ましい。また、上述した「TP」「TN」「FP」及び「FN」は、ロボットが検出したバウンディングボックスと、サーバ装置が検出したバウンディングボックス間のIoU(Intersection over Union)閾値によって判定されてもよい。
【0046】
画像52が学習に用いられる場合、学習部20は、画像52内において検出した各物体の領域即ち各ボックスの位置、又は各ボックスのサイズを示す情報、並びに各ボックスの信頼スコアと、これらに対応する物体検出処理をオフロードすべきではないことを示す情報との組を教師データとして学習モデルに入力する。また、
図4の画像51(51a~51c)についても同様に説明される。
【0047】
広義には、学習部20は、学習用の或る情報処理タスクをロボット10が実行した結果と、サーバ装置30が実行した結果とを比較し、ロボット10が実行した結果と、サーバ装置30が実行した結果との差分が所定の条件を満たす場合に、前記或る情報処理タスクに対応する教師データを、サーバ装置30にオフロードすべき場合の教師データとして学習モデルに入力する。ここで、所定の条件とは、例えば画像内の物体検出処理において、ロボット10によって導出されたボックスとサーバ装置30によって導出されたボックスとの位置若しくはサイズ又は個数が所定の検出閾値の範囲において異なる場合に満たされる条件である。一方で、例えばロボット10によって導出されたボックスとサーバ装置30によって導出されたボックスとの位置若しくはサイズ又は個数が所定の検出閾値の範囲において同じであれば、所定の条件は満たされず、これらはオフロードすべきでない教師データとして用いられる。
【0048】
また、情報処理タスクが画像内の物体検出処理である場合、学習部20は、学習モデルを、画像内において導出したボックスの位置、又は当該ボックスのサイズを示す情報、並びに各物体検出の信頼スコアと、当該情報処理タスクをサーバ装置30にオフロードすべきか否かを示す情報との組を教師データとして用いて学習させる。
【0049】
続いて本実施形態に係る学習処理の流れの一例について、
図6を参照して説明する。
【0050】
S201において、タスク処理部19は、学習用の画像に含まれる物体を検出する処理を行い、各物体について、ボックスの位置、サイズ及び信頼スコアを導出する。
【0051】
S202において、通信処理部18は、前記画像をサーバ装置30に送信する。
【0052】
S203において、サーバ装置30の制御部32は、ロボット10から受信した画像に含まれる物体を検出する処理を行い、ボックスの位置、サイズ及び信頼スコアを導出する。また、制御部32は、導出したボックスの位置、サイズ及び信頼スコアをロボット10に送信する。
【0053】
S204において、ロボット10の判定部17は、ロボット10が実行した物体検出処理の結果と、サーバ装置30が実行した物体検出処理の結果とを比較し、前述した所定の条件が満たされたか否かを判定する。換言すると、判定部17は、前述の学習用の画像を対象とする物体検出処理を、サーバ装置30にオフロードすべきか否かを判定する。
【0054】
S205において、学習部20は、ボックスの位置及びサイズを示す情報、並びにボックスの信頼スコアと、この物体検出処理をサーバ装置30にオフロードすべきか否かを示す情報との組を教師データとして学習モデルに入力する。これにより、パラメータセットの値が更新されて、学習モデルが学習される。
【0055】
〔実施形態2〕
本発明の第2の実施形態について、以下に説明する。なお、説明の便宜上、上記実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、重複する説明を繰り返さない。本実施形態においては、サーバ装置が学習処理を実行する場合について説明する。また、以降の実施形態においても同様である。
【0056】
〔1.情報処理システム1aの構成例〕
図7は、本実施形態に係る情報処理システム1aの機能的構成を示すブロック図の一例である。
図7に示すように、制御部14aは、学習部20を備えず、制御部32aは、学習モデルを学習させる学習部37を備えている。また、本実施形態に係る記憶部34は、学習モデルを規定するパラメータセット等を格納する。また、記憶部34が格納するパラメータセットは、ロボット10aの記憶部22にもネットワークを介して随時共有される。換言すると、ロボット10aが有する学習モデルは、サーバ装置30aが有する学習モデルと随時同期される。
【0057】
〔2.学習処理例〕
続いて、学習部37が学習モデルを学習させる処理等について説明する。
図8は、本実施形態に係る学習処理の流れを示すシーケンス図の一例である。
【0058】
S201においては、
図6と同様に、タスク処理部19が、学習用の画像に含まれる物体を検出する処理を行い、ボックスの位置、サイズ及び信頼スコアを導出する。
【0059】
S302において、通信処理部18は、前記画像と、導出したボックスの位置、サイズ及び信頼スコアとをサーバ装置30aに送信する。
【0060】
S303において、サーバ装置30aの制御部32aは、ロボット10aから受信した画像に含まれる物体を検出する処理を行い、ボックスの位置、サイズ及び信頼スコアを導出する。
【0061】
S304において、制御部32aは、ロボット10aが実行した物体検出処理の結果と、制御部32aが実行した物体検出処理の結果とを比較し、所定の条件が満たされたか否かを判定する。換言すると、制御部32aは、前述の学習用の画像を対象とする物体検出処理が、サーバ装置30aにオフロードされるべきであるか否かを判定する。
【0062】
S305において、学習部37は、ボックスの位置及びサイズを示す情報、並びにボックスの信頼スコアと、この物体検出処理をロボット10aからサーバ装置30aにオフロードすべきか否かを示す情報との組を教師データとして学習モデルに入力する。これにより、パラメータセットが更新されて、学習モデルが学習される。
【0063】
S306において、制御部32aは、更新したパラメータセットの値を、ロボット10aに送信する。
【0064】
S307において、ロボット10aの制御部14aは、記憶部22が格納するパラメータセットの値を、サーバ装置30aから受信したパラメータセットの値によって上書きする。これにより、ロボット10aが有する学習モデルが、サーバ装置30aが有する学習モデルと同期される。
【0065】
〔実施形態3〕
本発明の第3の実施形態について、以下に説明する。本実施形態においては、ロボットからオフロードする候補となるサーバ装置が複数存在する場合について説明する。
【0066】
〔1.情報処理システム1bの構成例〕
図9は、本実施形態に係る情報処理システム1bの機能的構成を示すブロック図の一例である。
図9に示すように、情報処理システム1bは、ロボット10と、複数のサーバ装置30とを備えている。各サーバ装置30の一部又は全部の性能は、互いに異なっていてもよい。
【0067】
〔2.情報処理システム1bの処理例〕
本実施形態に係る判定部17は、
図3のS103に相当する工程において、何れのサーバ装置30にオフロードすべきか、或いはオフロードすべきでないかを、学習モデルを用いて判定する。また、S104に相当する工程において、通信処理部18は、オフロードすべきと判定したサーバ装置30に対して物体検出処理をサーバ装置30にオフロードする。
【0068】
また、判定部17は、各サーバ装置30における性能、処理負荷及び通信負荷のうち少なくとも何れかに応じて、何れのサーバ装置30にオフロードすべきかを判定してもよい。これら性能等の情報は、制御部14が、通信部23を介してサーバ装置30から取得する。また、前記性能には、サーバ装置30を利用した際のコストが含まれていてもよい。
【0069】
例えば判定部17は、第1のサーバ装置30にオフロードすべきであることを学習モデルの出力が示している場合に、第1のサーバ装置30における処理負荷が閾値以上であるときには、第1のサーバ装置30よりも高い性能を有する第2のサーバ装置30にオフロードすべきと判定してもよい。
【0070】
本例の構成によれば、情報処理タスクの難易度に応じて、好適なサーバ装置30にオフロードを行うことができる。
【0071】
〔3.学習処理例〕
本実施形態に係る学習部20は、ボックスの位置及びサイズを示す情報、並びにボックスの信頼スコアと、この情報処理タスクを何れのサーバ装置30にオフロードすべきか、或いはオフロードをすべきでないかを示す情報との組を教師データとして学習モデルに入力する。
【0072】
ここで、情報処理タスクを何れのサーバ装置30にオフロードすべきかについては、例えば以下のように判定部17によって事前に決定される。
【0073】
判定部17は、ロボット10による情報処理タスクの実行結果と、第1のサーバ装置30による情報処理タスクの実行結果と、第1のサーバ装置30よりも高い性能を有する第2のサーバ装置30による情報処理タスクの実行結果とを比較する。判定部17は、各実行結果が全て同一である場合、オフロードを要しないものとして、前記情報処理タスクのオフロードを行うべきではないと判定する。また、第2のサーバ装置30による実行結果が他の実行結果と異なっている場合、判定部17は、前記情報処理タスクを第2のサーバ装置30にオフロードすべきと判定する。また、第1のサーバ装置30による実行結果と第2のサーバ装置30による実行結果とが同一であり、これがロボット10による実行結果とは異なっている場合、判定部17は、前記情報処理タスクを第1のサーバ装置30にオフロードすべきと判定する。
【0074】
なお、本実施形態の構成においても、実施形態2のようにサーバ装置30aが学習部37を備える構成であってもよい。
【0075】
〔実施形態1~3に係る変形例〕
情報処理システム1(1a、1b)は、複数のロボット10(10a)を備えていてもよい。また、特に各ロボット10の性能が同一である場合に、何れかのロボット10又はサーバ装置30aにおいて更新された学習モデルが、他のロボット10にも同期されてもよい。
【0076】
また、ロボット10が会話又は移動が可能なことは必須の構成ではない。情報処理端末12(12a)は、パソコン、スマートフォン又はタブレット等であってもよい。
【0077】
また、上述したように、情報処理タスクは、物体検出処理に限定されない。例えばロボット10が自己位置推定を行った結果が、ロボット10が存在し得ない場所にいることを示している場合にサーバ装置30へのオフロードがなされる構成であってもよい。
【0078】
また、オフロードが多段階になされる構成であってもよい。即ち、ロボット10が学習モデルの出力に基づいて第1のサーバ装置30にオフロードを行い、第1のサーバ装置30が、別の学習モデルの出力に基づいて第2のサーバ装置30にオフロードを行う構成であってもよい。
【0079】
また、ロボット10が情報処理タスクに用いる情報量と、サーバ装置30が情報処理タスクに用いる情報量とは同一でなくともよい。例えばロボット10は、サーバ装置30にオフロードを行う場合に、ロボット10が情報処理タスクに用いずサーバ装置30が情報処理タスクに用いるパラメータをサーバ装置30に送信する構成であってもよい。
【0080】
〔ソフトウェアによる実現例〕
ロボット10及びサーバ装置30(以下、「装置」と呼ぶ)の機能は、当該装置としてコンピュータを機能させるためのプログラムであって、当該装置の各制御ブロック(特に制御部14又は制御部32に含まれる各部)としてコンピュータを機能させるためのプログラムにより実現することができる。
【0081】
この場合、上記装置は、上記プログラムを実行するためのハードウェアとして、少なくとも1つの制御装置(例えばプロセッサ)と少なくとも1つの記憶装置(例えばメモリ)を有するコンピュータを備えている。この制御装置と記憶装置により上記プログラムを実行することにより、上記各実施形態で説明した各機能が実現される。
【0082】
上記プログラムは、一時的ではなく、コンピュータ読み取り可能な、1または複数の記録媒体に記録されていてもよい。この記録媒体は、上記装置が備えていてもよいし、備えていなくてもよい。後者の場合、上記プログラムは、有線または無線の任意の伝送媒体を介して上記装置に供給されてもよい。
【0083】
また、上記各制御ブロックの機能の一部または全部は、論理回路により実現することも可能である。例えば、上記各制御ブロックとして機能する論理回路が形成された集積回路も本発明の範疇に含まれる。この他にも、例えば量子コンピュータにより上記各制御ブロックの機能を実現することも可能である。
【0084】
また、上記各実施形態で説明した各処理は、AI(Artificial Intelligence:人工知能)に実行させてもよい。この場合、AIは上記制御装置で動作するものであってもよいし、他の装置(例えばエッジコンピュータまたはクラウドサーバ等)で動作するものであってもよい。
【0085】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【符号の説明】
【0086】
1、1a、1b 情報処理システム
10、10a ロボット
12、12a 情報処理端末
14、14a、32、32a 制御部
16 取得部
17 判定部
18 通信処理部
19 タスク処理部
20、37 学習部
22、34 記憶部
23、35 通信部
24 撮影部
25 音声入力部
26 音声出力部
30、30a サーバ装置(外部装置)