(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024135378
(43)【公開日】2024-10-04
(54)【発明の名称】情報処理装置、端末装置、情報処理方法、プログラムおよび情報処理システム
(51)【国際特許分類】
G06Q 10/04 20230101AFI20240927BHJP
【FI】
G06Q10/04
【審査請求】未請求
【請求項の数】19
【出願形態】OL
(21)【出願番号】P 2023046017
(22)【出願日】2023-03-22
(71)【出願人】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】相崎 友保
【テーマコード(参考)】
5L010
5L049
【Fターム(参考)】
5L010AA20
5L049AA20
(57)【要約】
【課題】条件を満たすモデルを特定できるように支援すること。
【解決手段】提案装置7は、端末装置3から、学習データを用いて学習処理を実行して生成されるモデルに関する条件を示す条件情報を受信する送受信部71と、複数のモデルについて、条件を満たすか判断する判断部75とを備え、送受信部71は、端末装置3に対して、判断部75の判断結果に基づき、条件を満たすモデルを特定するモデル特定情報を送信する。
【選択図】
図6
【特許請求の範囲】
【請求項1】
端末装置から、学習データを用いて学習処理を実行して生成されるモデルに関する条件を示す条件情報を受信する受信手段と、
複数のモデルについて、前記条件を満たすか判断する判断手段と、
前記端末装置に対して、前記判断手段の判断結果に基づき、前記条件を満たすモデルを特定するモデル特定情報を送信する送信手段と、
を備えた情報処理装置。
【請求項2】
前記複数のモデルは、複数のローカルモデルに基づき更新されるグローバルモデルを複数含む請求項1記載の情報処理装置。
【請求項3】
前記複数のモデルは、複数のノードのそれぞれでそれぞれ生成される複数のローカルモデルを含む請求項1記載の情報処理装置。
【請求項4】
前記条件は、前記モデルの属性に対する優先度を含む請求項1記載の情報処理装置。
【請求項5】
前記属性は、前記モデルを利用する料金および前記モデルの評価の少なくとも一方を含む請求項4記載の情報処理装置。
【請求項6】
前記条件は、前記モデルが実行するタスクを示すタスク情報を含む請求項1記載の情報処理装置。
【請求項7】
前記送信手段は、前記端末装置に対して、前記モデルの属性を示すモデル属性情報を、前記モデル特定情報に含めて送信する請求項1記載の情報処理装置。
【請求項8】
前記モデルの属性は、前記学習データの数、ローカルモデルを生成するノードのクライアントの業種の少なくとも1つを含む請求項7記載の情報処理装置。
【請求項9】
前記送信手段は、前記端末装置に対して、前記モデルを提供するサービス提供者の属性を示すサービス属性情報を、前記モデル特定情報に含めて送信する請求項1記載の情報処理装置。
【請求項10】
前記サービス提供者の属性は、ローカルモデルの数、グローバルモデルを更新するために用いられるローカルモデル利用可否の少なくとも1つを含む請求項9記載の情報処理装置。
【請求項11】
前記受信手段は、前記端末装置から、さらに、前記条件を満たすモデルのうち選択されたモデルを示すモデル選択情報を受信する請求項1記載の情報処理装置。
【請求項12】
前記送信手段は、前記モデルを提供するサービス提供者の装置に対して、前記モデル選択情報を送信する請求項11記載の情報処理装置。
【請求項13】
学習データを用いて学習処理を実行して生成されるモデルに関する条件を設定する設定操作を受け付ける受付手段と、
複数のモデルのうち、前記設定操作により設定された前記条件を満たすと判断されたモデルを特定するモデル特定情報を、表示部に表示させる表示制御手段と、
を備えた端末装置。
【請求項14】
情報処理装置に対して、前記設定操作により設定された前記条件を示す条件情報を送信する送信手段と、
前記情報処理装置から、前記モデル特定情報を受信する受信手段と、を備え、
前記表示制御手段は、前記受信手段が受信した前記モデル特定情報を、前記表示部に表示させる請求項13記載の端末装置。
【請求項15】
複数のモデルについて、前記条件を満たすか判断する判断手段を備え、
前記表示制御手段は、前記判断手段の判断結果に基づき、前記モデル特定情報を前記表示部に表示させる請求項13記載の端末装置。
【請求項16】
情報処理装置により実行される情報処理方法であって、
端末装置から、学習データを用いて学習処理を実行して生成されるモデルに関する条件を示す条件情報を受信する受信ステップと、
複数のモデルについて、前記条件を満たすか判断する判断ステップと、
前記端末装置に対して、前記判断ステップでの判断結果に基づき、前記条件を満たすモデルを特定するモデル特定情報を送信する送信ステップと、
を実行する情報処理方法。
【請求項17】
端末装置により実行される情報処理方法であって、
学習データを用いて学習処理を実行して生成されるモデルに関する条件を設定する設定操作を受け付ける受付ステップと、
複数のモデルのうち、前記設定操作により設定された前記条件を満たすと判断されたモデルを特定するモデル特定情報を、表示部に表示させる表示ステップと、
を実行する情報処理方法。
【請求項18】
コンピュータに、請求項16または17記載の情報処理方法を実行させるプログラム。
【請求項19】
端末装置と、前記端末装置と通信可能な情報処理装置を備える情報処理システムであって、
前記端末装置は、
学習データを用いて学習処理を実行して生成されるモデルに関する条件を設定する設定操作を受け付ける受付手段と、
前記情報処理装置に対して、前記設定操作により設定された前記条件を示す条件情報を送信する送信手段と、を備え、
前記情報処理装置は、
前記端末装置から、前記条件情報を受信する受信手段と、
複数のモデルについて、前記条件を満たすか判断する判断手段と、
前記端末装置に対して、前記判断手段の判断結果に基づき、前記条件を満たすモデルを特定するモデル特定情報を送信する送信手段と、を備え、
前記端末装置は、さらに、
前記情報処理装置から、前記モデル特定情報を受信する受信手段と、
前記受信手段が受信した前記モデル特定情報を、表示部に表示させる表示制御手段と、
を備えた情報処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、端末装置、情報処理方法、プログラムおよび情報処理システムに関する。
【背景技術】
【0002】
特許文献1には、複数のパートナーとそれぞれ共通のユーザーサンプルのデータに基づいて、各パートナーと夫々協力してツリーモデルをトレーニングし、トレーニングされたツリーモデルに対して特徴の重要度評価を実行して、各ツリーモデルによって生成された特徴コラムに、対応する重みを付けるマルチモデルトレーニング方法が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明は、条件を満たすモデルを特定できるように支援することを課題とする。
【課題を解決するための手段】
【0005】
本発明に係る情報処理装置は、端末装置から、学習データを用いて学習処理を実行して生成されるモデルに関する条件を示す条件情報を受信する受信手段と、複数のモデルについて、条件を満たすか判断する判断手段と、端末装置に対して、判断手段の判断結果に基づき、条件を満たすモデルを特定するモデル特定情報を送信する送信手段と、を備える。
【発明の効果】
【0006】
本発明によれば、条件を満たすモデルを特定できるように支援することができる。
【図面の簡単な説明】
【0007】
【
図1】本発明の実施形態に係る情報処理システムの全体構成図である。
【
図2】本実施形態に係る端末装置、サーバのハードウエア構成図である。
【
図3】本実施形態に係る情報処理システムの機能ブロック図である。
【
図4】本実施形態に係るサービス情報管理テーブルの一例を示す概念図である。
【
図5】本実施形態に係るサービス提案処理を示すシーケンス図である。
【
図8】本実施形態に係る推奨画面の他の説明図である。
【
図9】本実施形態に係るモデル処理を示すシーケンス図である。
【
図10】本実施形態に係る選択画面の説明図である。
【
図11】本実施形態に係るデータ分類画面の説明図である。
【発明を実施するための形態】
【0008】
連合学習(Federated learning)は、データを集約せず分散した状態のまま、学習を行う機械学習の手法であり、プライバシーやセキュリティを担保しながらあたかもデータ連携をしたかのように、複数クライアント間のデータを活かしたモデルの構築を可能にする技術である。
【0009】
図1は、本発明の実施形態に係る情報処理システムの全体構成図である。本実施形態の情報処理システム1は、複数の端末装置3A、3B~3N、3a、複数のサーバ5A、5B~5N、および提案装置7によって構築されている。
【0010】
複数のサーバ5A、5B~5Nのそれぞれは、連合学習に用いられるグローバルモデル等を管理する情報処理装置の一例である。ここで、グローバルモデルは、サーバ5側、つまりはセントラル側で管理される学習モデルでもあるため、セントラルモデルとして言い換えてもよい。なお、複数のサーバ5A、5B~5Nは、それぞれを区別する必要がない場合は、単にサーバ5として説明する。
【0011】
複数の端末装置3A、3B~3Nは、サーバ5Aが管理する連合学習に参加するクライアントが使用するノードの一例であり、端末装置3aは、連合学習には参加しないが、サーバ5Aから学習済みのグローバルモデルの配布を受けるクライアントが使用するノードの一例である。なお、複数の端末装置3A、3B~3Nは、それぞれを区別する必要がない場合は、単に端末装置3として説明する。
【0012】
提案装置7は、複数の端末装置3A、3B~3Nに対して、複数のサーバ5A、5B~5Nがそれぞれ管理するグローバルモデル等の学習モデルを提案する情報処理装置の一例である。提案装置7は、特定のサーバ5A等と一体で構成されてもよく、その場合、複数のサーバ5A、5B~5Nがそれぞれ管理するグローバルモデル等の学習モデルを提案するとともに、サーバ5Aが管理するグローバルモデル等の学習モデルを提供する。
【0013】
複数の端末装置3A、3B~3N、3a、サーバ5A、5B~5N、および提案装置7は、通信ネットワーク100を介して通信することができる。通信ネットワーク100は、インターネット、移動体通信網、LAN(LocalAreaNetwork)等によって構築されている。通信ネットワーク100には、有線通信だけでなく、5G(5thGeneration)、WiMAX(WorldwideInteroperabilityforMicrowaveAccess)、LTE(LongTermEvolution)等の無線通信によるネットワークが含まれてもよい。
【0014】
また、情報処理システム1は、複数の端末装置3A、3B…3N、3a、特定のサーバ5A、および提案装置7の全てまたは一部をクラウドコンピューティングにより構成しても良い。その場合、複数の端末装置3A、3B…3N、3a、特定のサーバ5A、および提案装置7は、通信ネットワーク100を介することなく、高速に相互に通信することができる。
【0015】
<ハードウエア構成>
図2は、本実施形態に係る端末装置、サーバのハードウエア構成図である。端末装置3の各ハードウエア構成は、300番台の符号で示されている。サーバ5の各ハードウエア構成は、括弧内の500番台の符号で示されている。なお、提案装置7も、サーバ5と同様のハードウエア構成を備えるが、各ハードウエア構成の符号および説明は省略する。
【0016】
端末装置3は、CPU(CentralProcessingUnit)301、ROM(ReadOnlyMemory)302、RAM(RandomAccessMemory)303、HD(HardDisk)304、HDD(HardDiskDrive)305、記録メディア306、メディアI/F307、ディスプレイ308、ネットワークI/F309、キーボード311、マウス312、CD-RW(CompactDisc-ReWritable)ドライブ314、及び、バスライン310を備えている。
【0017】
これらのうち、CPU301は、端末装置3全体の動作を制御する。ROM302は、CPU301の駆動に用いられるプログラムを記憶する。RAM303は、CPU301のワークエリアとして使用される。HD304は、プログラム等の各種データを記憶する。HDD305は、CPU301の制御にしたがってHD304に対する各種データの読み出し又は書き込みを制御する。メディアI/F307は、フラッシュメモリ等の記録メディア306に対するデータの読み出し又は書き込み(記憶)を制御する。ディスプレイ308は、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示する。ネットワークI/F309は、通信ネットワーク100を利用してデータ通信をするためのインターフェースである。キーボード311は、文字、数値、各種指示などの入力のための複数のキーを備えた入力手段の一種である。マウス312は、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行う入力手段の一種である。CD-RWドライブ314は、着脱可能な記録媒体の一例としてのCD-RW513に対する各種データの読み出し又は書き込みを制御する。端末装置3は、さらに、有線やWifi等の無線により接続される外部PCや外部デバイスに対するデータの読み出し又は書き込み(記憶)を制御する構成を備えていても良い。
【0018】
また、サーバ5は、CPU501、ROM502、RAM503、HD504、HDD505、記録メディア506、メディアI/F507、ディスプレイ508、ネットワークI/F509、キーボード511、マウス512、CD-RWドライブ514、及び、バスライン510を備えている。これらは、それぞれ上述の構成(CPU301、ROM302、RAM303、HD304、HDD305、記録メディア306、メディアI/F307、ディスプレイ308、ネットワークI/F309、キーボード311、マウス312、CD-RWドライブ314、及び、バスライン310)と同様の構成であるため、これらの説明を省略する。
【0019】
なお、CD-RWドライブ314(514)ではなく、CD-Rドライブ等であってもよい。また、端末装置3、及びサーバ5は、それぞれ単一のコンピュータによって構築されてもよいし、各部(機能、手段、又は記憶部)を分割して任意に割り当てられた複数のコンピュータによって構築されていてもよい。
【0020】
図3は、本実施形態に係る情報処理システムの機能ブロック図である。
【0021】
<端末装置の機能構成>
端末装置3は、送受信部31、受付部32、表示制御部33、選定部34、判断部35、評価部36、処理部37、学習処理部38、および記憶・読出部39を有している。これら各部は、
図2に示されている各構成要素のいずれかが、HD304からRAM303上に展開されたプログラムに従ったCPU301からの命令によって動作することで実現される機能、又は機能する手段である。また、端末装置3は、
図2に示されているRAM303及びHD304によって構築される記憶部3000を有している。記憶部3000は、記憶手段の一例である。
【0022】
(端末装置の各機能構成)
次に、端末装置3の各構成要素について説明する。
【0023】
送受信部31は、受信手段の一例であり、
図2に示されているCPU301からの命令、並びにネットワークI/F309によって実現され、通信ネットワーク100を介して他の端末、装置又はシステムと各種データ(または情報)の送受信を行う。
【0024】
受付部32は、受付手段の一例であり、主に、
図2に示されているCPU301からの命令、並びにキーボード311及びマウス312によって実現され、利用者による各種入力を受け付ける。
【0025】
表示制御部33は、表示制御手段の一例であり、
図2に示されているCPU301からの命令によって実現され、表示部の一例であるディスプレイ308に、各種画像や画面を表示させる。
【0026】
選定部34は、
図2に示されているCPU301からの命令によって実現され、データを選定する処理等を実行する。選定部34は、選定手段の一例である。
【0027】
判断部35は、
図2に示されているCPU301からの命令によって実現され、各種判断処理を実行する。判断部35は、判断手段の一例である。
【0028】
評価部36は、
図2に示されているCPU301からの命令によって実現され、後述するグローバルモデルを評価する処理等を実行する。評価部36は、評価手段の一例である。
【0029】
処理部37は、
図2に示されているCPU301からの命令によって実現され、データ数を算出したり、データを分類したりする処理等を実行する。処理部37は、処理手段の一例である。
【0030】
学習処理部38は、
図2に示されているCPU301からの命令によって実現され、学習処理を実行する。学習処理部38は、学習処理手段の一例である。
【0031】
記憶・読出部39は、記憶制御手段の一例であり、
図2に示されているCPU301からの命令、並びに、HDD305、メディアI/F307、CD-RWドライブ314および外部PCや外部デバイスによって実行され、記憶部3000、記録メディア306、CD-RW313および外部PCや外部デバイスに各種データを記憶したり、記憶部3000、記録メディア306、CD-RW313、および外部PCや外部デバイスから各種データを読み出したりする処理を行う。
【0032】
記憶部3000には、ローカルデータ管理DB3001、ローカルモデル管理DB3002が構築されている。
【0033】
ローカルデータ管理DB3001は、学習処理部38が学習処理を実行するときに入力されるローカルデータをモデルが実行するタスク毎に記憶、管理し、ローカルモデル管理DB3002は、学習処理部38が学習処理を実行して得られたローカルモデルを実行するタスク毎に記憶、管理する。ここで、モデルが実行するタスクは、画像認識タスク、業務分析タスク、自然言語処理タスク等を含む。
【0034】
<サーバの機能構成>
サーバ5は、送受信部51、更新部52、決定部53、選定部54、判断部55、評価部56、処理部57、及び記憶・読出部59を有している。これら各部は、
図2に示されている各構成要素のいずれかが、HD504からRAM503上に展開されたプログラムに従ったCPU501からの命令によって動作することで実現される機能又は機能する手段である。また、サーバ5は、
図2に示されているHD504により構築される記憶部5000を有している。記憶部5000は、記憶手段の一例である。
【0035】
(サーバの各機能構成)
次に、サーバ5の各構成要素について説明する。サーバ5は、複数のコンピュータに各機能を分散させて実現させる構成であってもよい。さらに、サーバ5は、クラウド環境に存在するサーバコンピュータであるものとして説明するが、オンプレミス環境に存在するサーバであってもよい。
【0036】
送受信部51は、送信手段の一例であり、
図2に示されているCPU501からの命令、並びにネットワークI/F509によって実現され、通信ネットワーク100を介して他の端末、装置又はシステムと各種データ(または情報)の送受信を行う。
【0037】
更新部52は、
図2に示されているCPU501からの命令によって実現され、後述するグローバルモデルを更新する処理等を実行する。更新部52は、選定手段の一例である。
【0038】
決定部53は、
図2に示されているCPU501からの命令によって実現され、後述するインセンティブを決定する処理等を行なう。決定部53は、決定手段の一例である。
【0039】
選定部54は、
図2に示されているCPU501からの命令によって実現され、モデル、データおよび連合学習に参加する端末装置3を選定する処理等を実行する。選定部54は、選定手段の一例である。
【0040】
判断部55は、
図2に示されているCPU501からの命令によって実現され、各種判断処理を行なう。
【0041】
評価部56は、
図2に示されているCPU501からの命令によって実現され、グローバルモデルを評価する処理等を実行する。評価部56は、評価手段の一例である。
【0042】
処理部57は、
図2に示されているCPU501からの命令によって実現され、データを集計する処理等を実行する。処理部57は、処理手段の一例である。
【0043】
生成部58は、
図2に示されているCPU501からの命令によって実現され、ディスプレイに表示させる各種画像データ等を生成する処理等を実行する。
【0044】
記憶・読出部59は、記憶制御手段の一例であり、
図2に示されているCPU501からの命令、並びに、HDD505、メディアI/F507、CD-RWドライブ514および外部PCや外部デバイスによって実行され、記憶部5000、記録メディア506、CD-RW513および外部PCや外部デバイスに各種データを記憶したり、記憶部5000、記録メディア506、CD-RW513および外部PCや外部デバイスから各種データを読み出したりする処理を行う。記憶部5000、記録メディア506、CD-RW513、および外部PCや外部デバイスは、記憶手段の例である。
【0045】
記憶部5000には、グローバルモデル管理DB5001、セントラルデータ管理DB5002、ローカルモデル管理DB5003、およびサービス情報管理DB5004が構築されている。
【0046】
グローバルモデル管理DB5001は、端末装置3に配布するグローバルモデルを実行するタスク毎に記憶、管理し、セントラルデータ管理DB5002は、グローバルモデルを評価するための評価データを含むセントラルデータをモデルが実行するタスク毎に記憶、管理する。
【0047】
ローカルモデル管理DB5003は、複数の端末装置3A、3B~3Nのそれぞれでそれぞれ生成された複数のローカルモデルを実行するタスク毎に記憶、管理し、サービス情報管理DB5004は、サーバ5で管理するモデルの属性を示すモデル属性情報、およびモデルのサービスに関するサーバ5の属性を示すサービス属性情報を記憶、管理する。
【0048】
以上説明した端末装置3の機能構成、およびサーバ5の機能構成の全てまたは一部は、クラウドコンピューティングにより構成されても良い。その場合、端末装置3の送受信部31、およびサーバ5の送受信部51は、通信ネットワーク100を介することなく、高速に通信することができる。
【0049】
<提案装置の機能構成>
提案装置7は、送受信部71、処理部73、判断部75、生成部77、および記憶・読出部79を有している。これら各部は、
図2に示されている各構成要素のいずれかが、HDからRAM上に展開されたプログラムに従ったCPUからの命令によって動作することで実現される機能、又は機能する手段である。また、提案装置7は、
図2に示されているRAM及びHDによって構築される記憶部7000を有している。記憶部7000は、記憶手段の一例である。
【0050】
(提案装置の各機能構成)
次に、提案装置7の各構成要素について説明する。
【0051】
送受信部71は、受信手段の一例であり、
図2に示されているCPUからの命令、並びにネットワークI/Fによって実現され、通信ネットワーク100を介して他の装置又はシステムと各種データ(または情報)の送受信を行う。
【0052】
処理部73は、
図2に示されているCPUからの命令によって実現され、各種処理を実行する。処理部73は、処理手段の一例である。
【0053】
判断部75は、
図2に示されているCPUからの命令によって実現され、各種判断処理を実行する。判断部75は、判断手段の一例である。
【0054】
生成部77は、
図2に示されているCPUからの命令によって実現され、ディスプレイに表示させる各種画像データ等を生成する処理等を実行する。
【0055】
記憶・読出部79は、記憶制御手段の一例であり、
図2に示されているCPUからの命令、並びに、HDD、メディアI/F、CD-RWドライブおよび外部PCや外部デバイスによって実行され、記憶部7000、記録メディア、CD-RWおよび外部PCや外部デバイスに各種データを記憶したり、記憶部7000、記録メディア、CD-RW、および外部PCや外部デバイスから各種データを読み出したりする処理を行う。
【0056】
記憶部7000には、サービス情報管理DB7001が構築されている。サービス情報管理DB7001は、サービス情報として、サーバ5A、5B~5Nがそれぞれ管理するモデルの属性を示すモデル属性情報、およびモデルのサービスに関するサーバ5A、5B~5Nのそれぞれの属性を示すサービス属性情報を記憶、管理する。
【0057】
図4は、本実施形態に係るサービス情報管理テーブルの一例を示す概念図である。サービス情報管理テーブルは、サービス情報として、サーバ5A、5B~5Nがそれぞれ管理するモデルの属性を示すモデル属性情報、およびモデルのサービスに関するサーバ5A、5B~5Nのそれぞれの属性を示すサービス属性情報を管理するためのテーブルである。
【0058】
図4(a)は、提案装置7の記憶部7000に構築されているサービス情報管理DB7001におけるサービス情報管理テーブルを示す。
【0059】
図4(a)に示すサービス情報管理テーブルでは、サービス提供者に関連付けて、グローバルモデルの連合方式、グローバルモデル精度、ローカルモデル利用可否、ローカルモデル数、ローカルデータ数、タスク大分類、タスク小分類、クライアント業種名、および年額料金が管理されている。
【0060】
グローバルモデルの連合方式、グローバルモデル精度、ローカルデータ数、タスク大分類、タスク小分類、およびクライアント業種名は、モデル属性情報に含まれ、年額料金、ローカルモデル利用可否、ローカルモデル数は、サービス属性情報に含まれる。
【0061】
サービス提供者A、B、C~は、それぞれサーバ5A、5B~5Nを用いて、グローバルモデル、ローカルモデルの利用サービスを提供する企業等を示す。
【0062】
グローバルモデルの連合方式は、ローカルモデルに基づきグローバルモデルを更新する連合学習と、ローカルモデルに共有データを入力して得られた出力データに基づきグローバルモデルを更新する連合蒸留等を示す。
【0063】
グローバルモデル精度は、評価データに基づき算出されるグローバルモデルの精度の評価値を示す。
【0064】
ローカルモデル利用可否は、グローバルモデルを更新するために用いられる特定のクライアントの端末装置のローカルモデルを、他のクライアントの端末装置で利用する可否を示す。
【0065】
ローカルモデル数は、グローバルモデルを更新するために用いられるローカルモデルの数を示す。
【0066】
ローカルデータ数は、ローカルモデルを生成するために用いられる学習データの数を示す。
【0067】
タスク大分類は、グローバルモデルやローカルモデルが実行するタスクについての、画像認識、業務分析、自然言語処理等の大分類を示す。
【0068】
タスク小分類は、タスク大分類のそれぞれを細分化した小分類を示す。
【0069】
クライアント業種名は、ローカルモデルを生成する端末装置のクライアントの業種を示す。
【0070】
年額料金は、サービス提供者が提供するグローバルモデル、ローカルモデルの利用サービスを利用する際の年額料金を示す。
【0071】
図4(b)は、サーバの記憶部5000に構築されているサービス情報管理DB5004におけるサービス情報管理テーブルを示す。
【0072】
図4(b)に示すサービス情報管理テーブルでは、
図4(a)に示したサービス情報管理テーブルと同様に、グローバルモデルの連合方式、グローバルモデル精度、ローカルモデル利用可否、ローカルモデル数、ローカルデータ数、タスク大分類、タスク小分類、クライアント業種名、および年額料金が関連付けて管理されている。
【0073】
後述するように、
図4(b)に示すサービス情報管理テーブルで管理される各種情報は、
図4(a)に示したサービス情報管理テーブルで共有して管理される。
【0074】
図5は、本実施形態に係るサービス提案処理を示すシーケンス図である。
【0075】
端末装置3の受付部32が所定の操作を受け付けると、表示制御部33は、設定画面をディスプレイ308に表示させ(ステップS1)、ユーザは、設定画面上で、モデルに関する条件を設定する設定操作を行う。
【0076】
受付部32が設定操作を受け付けると、送受信部31は、提案装置7に対して、設定操作により設定された条件を示す条件情報を送信し、提案装置7の送受信部71は、端末装置3から条件情報を受信する(ステップS2)。
【0077】
送受信部71は、端末装置3から条件情報を受信すると、サーバ5A、5B~5Nに対して、サービス情報の問合せを送信する(ステップS3)。
【0078】
サーバ5A、5B~5Nのそれぞれの送受信部51が、提案装置7からサービス情報の問合せを受信すると、記憶・読出部59は、サービス情報管理DB5004から
図4(b)に示したサービス情報を読み出す(ステップS4)。
【0079】
サーバ5A、5B~5Nのそれぞれの送受信部51は、提案装置7に対して、記憶・読出部59により読み出されたサービス情報を送信し、提案装置7の送受信部71は、サーバ5A、5B~5Nのそれぞれから送信されたサービス情報を受信する(ステップS5)。
【0080】
記憶・読出部79は、サーバ5A、5B~5Nのそれぞれから送受信部71が受信したサービス情報を、サービス提供者に関連付けて、サービス情報管理DB7001に記憶させる(ステップS6)。
【0081】
記憶・読出部79は、サービス情報管理DB7001から全てのサービス提供者のサービス情報を読み出して、判断部75は、記憶・読出部79により読み出されたサービス情報に基づき、サービス提供者から利用サービスが提供される複数のモデルについて、ステップS2で受信した条件情報が示す条件を満たすか判断して、条件を満たすモデルを絞り込む(ステップS7)。
【0082】
生成部77は、ステップS7で条件を満たすと判断されたモデルを特定するモデル特定情報を含む推奨画面を生成する(ステップS8)。ここで、モデル特定情報は、特定されたモデルについてのサービス情報を含む。
【0083】
送受信部71は、端末装置3に対して、ステップS8で生成された推奨画面を示す推奨画面情報を送信し、端末装置3の送受信部31は、提案装置7から送信された推奨画面情報を受信する(ステップS9)。これにより、提案装置7は、端末装置3に対して、条件を満たすモデルを提案することができる。
【0084】
表示制御部33は、送受信部31が受信した推奨画面情報が示す推奨画面をディスプレイ308に表示させ(ステップS10)、ユーザは、推奨画面上で、条件を満たすモデルのうち所望のモデルを選択する選択操作を行う。
【0085】
受付部32が選択操作を受け付けると、送受信部31は、提案装置7に対して、選択操作により選択されたモデルを示すモデル選択情報を送信し、提案装置7の送受信部71は、端末装置3からモデル選択情報を受信する(ステップS11)。
【0086】
送受信部71は、端末装置3からモデル選択情報を受信すると、選択されたモデルを提供するサーバ5に対して、端末装置3の宛先を示す宛先情報を含むサービス開始画面要求を送信し、サーバ5の送受信部51は、提案装置7から送信されたサービス開始画面要求を受信する(ステップS12)。
【0087】
生成部58は、サービス開始画面要求に基づき、サービス開始画面を生成し(ステップS13)、送受信部51は、ステップS12で受信した宛先情報が示す宛先の端末装置3に対して、サービス開始画面を示すサービス開始画面情報を送信し、端末装置3の送受信部31は、サーバ5から送信されたサービス開始画面情報を受信する(ステップS14)。
【0088】
表示制御部33は、送受信部31が受信したサービス開始画面情報が示すサービス開始画面をディスプレイ308に表示させ(ステップS10)、ユーザは、サービス開始画面上で、サービス開始を指示する指示操作を行う。
【0089】
受付部32が指示操作を受け付けると、送受信部31は、サーバ5に対して、サービス開始要求を送信し、サーバ5の送受信部51は、端末装置3からサービス開始要求を受信し、サーバ5は端末装置3に対するサービスを開始する(ステップS16)。
【0090】
以上において、
図3における提案装置7の機能を端末装置3に一体化し、
図5における提案装置7の処理を端末装置3が実行しても良い。
【0091】
この場合、提案装置7の機能を一体化された端末装置3において、判断部35は、複数のモデルについて、条件を満たすか判断し、表示制御部33は、判断部35の判断結果に基づき、モデル特定情報をディスプレイ308に表示させる。
【0092】
【0093】
図6は、本実施形態に係る端末装置3における表示画面の説明図であり、
図5のステップS1において、表示制御部33が、ディスプレイ308に設定画面を表示した状態を示している。
【0094】
表示制御部33は、モデルの属性に対する優先度を設定する優先条件設定画面1110、モデルが実行するタスクを設定するタスク設定画面1120および確認ボタン1130を含む設定画面1100を表示画面1000に表示させる。
【0095】
表示制御部33は、択一的に設定可能な料金優先設定ボタン1112および精度優先設定ボタン1114を優先条件設定画面1110に表示させ、重複設定可能な業務分析タスク設定ボックス1122、画像認識タスク設定ボックス1124、自然言語処理タスク設定ボックス1126をタスク設定画面1120に表示させる。
【0096】
料金優先設定ボタン1112は、モデルを利用する料金の優先度を高く設定するボタンであり、精度優先設定ボタン1114は、モデルの評価の優先度を高く設定するボタンである。
【0097】
業務分析タスク設定ボックス1122、画像認識タスク設定ボックス1124、および自然言語処理タスク設定ボックス1126は、モデルが実行するタスクとして、業務分析、画像認識、および自然言語処理をそれぞれ設定するボックスである。
【0098】
図6の状態で、ユーザは、モデルの評価・料金の何れを優先するかの意向に基づき、料金優先設定ボタン1112および精度優先設定ボタン1114の何れかを操作して選択する。
【0099】
そして、ユーザは、実施予定のタスクに基づき、業務分析タスク設定ボックス1122、画像認識タスク設定ボックス1124、および自然言語処理タスク設定ボックス1126を操作して選択する。
【0100】
ユーザが、各種設定ボタンや設定ボックスを操作して、確認ボタン1130を操作すると、受付部32は、モデルに関する条件を設定する設定操作として受け付けて、
図5のステップS2で説明したように、送受信部31は、提案装置7に対して、設定操作により設定された条件を示す条件情報を送信する。
【0101】
一例として、
図6の状態で、ユーザが、料金優先設定ボタン1112および画像認識タスク設定ボックス1124を操作した場合、
図5のステップS7において、提案装置7の判断部75は、サービス提供者から利用サービスが提供される複数のモデルについて、タスク大分類が画像認識であるか、および年額料金が所定値以下であるかの条件を満たすか判断して、条件を満たすモデルを絞り込む。
【0102】
そして、
図5のステップS7において、生成部77は、タスク大分類が画像認識であり、かつ年額料金が所定値以下であるモデルのモデル特定情報を、年額料金が安い順に並べた推奨画面を生成する。
【0103】
以上のように、ユーザは、モデルに関する専門知識がなくても、モデルの属性に対する優先度、およびモデルが実行するタスクを設定するだけで、モデルの条件を簡単に設定することができる。
【0104】
【0105】
図7は、本実施形態に係る端末装置3における表示画面の説明図であり、
図5のステップS10において、表示制御部33が、ディスプレイ308に推奨画面を表示した状態を示している。
【0106】
表示制御部33は、モデル特定情報を表示する推奨画面1200、確定ボタン1230および表示切替ボタン1240を表示画面1000に表示させる。
【0107】
表示制御部33は、推奨画面1200において、優先情報1210、サービス提供者情報1221を表示させるとともに、サービス提供者情報1221と対応付けて、モデル選択ボックス1220、タスクの種類情報1222、タスク詳細情報1223、グローバルモデルの精度情報1224、年額料金情報1225、クライアント業種名情報1226、ローカルモデル利用可否情報1227、ローカルモデル数情報1228、ローカルデータ数情報1229を表示させる。
【0108】
推奨画面1200に表示される各種情報1221~1229は、
図4(a)に示した提案装置7のサービス情報管理DB7001で管理されるサービス情報に対応する。
【0109】
図7は、
図6において精度優先設定ボタン1114および画像認識タスク設定ボックス1124が操作され、
図5のステップS7において、生成部77が、タスク大分類が画像認識であり、かつグローバルモデルの精度が所定値以上であるモデルのモデル特定情報を、グローバルモデルの精度が高い順に並べて生成した推奨画面を示す。
【0110】
この場合、優先情報1210には「精度優先」と表示され、タスクの種類情報1222が「画像認識」に該当するモデル特定情報が表示される。
【0111】
ユーザが表示切替ボタン1240を操作すると、受付部32は表示切替操作を受け付けて、表示制御部33は、推奨画面1200に残りのモデル特定情報を表示させる。
【0112】
図7の状態で、ユーザは、各種情報1221~1229によりモデルの属性およびサービス属性情報を確認した上で、所望のモデル選択ボックス1220の何れかを操作して所望のモデルを選択する。
【0113】
ユーザが、モデル選択ボックス1220の何れかを操作した後に、確定ボタン1230を操作すると、受付部32は、所望のモデルを選択する選択操作として受け付けて、
図5のステップS11で説明したように、送受信部31は、提案装置7に対して、選択操作により選択されたモデルを示すモデル選択情報を送信する。
【0114】
一例として、
図7の状態で、ユーザが、サービス提供者情報1221がA社を示すモデル選択ボックス1220を操作した場合、
図5のステップS12において、提案装置7の送受信部71は、A社のサーバ5Aに対して、端末装置3の宛先を示す宛先情報を含むサービス開始画面要求を送信する。
【0115】
図8は、本実施形態に係る他の推奨画面の説明図である。
【0116】
図8は、
図7と同様に、
図5のステップS10において、表示制御部33が、ディスプレイ308に推奨画面を表示した状態を示している。
【0117】
図8は、
図6において料金優先設定ボタン1112および業務分析タスク設定ボックス1122が操作され、
図5のステップS7において、生成部77が、タスク大分類が業務分析であり、かつ年額料金が所定値以下であるモデルのモデル特定情報を、年額料金が安い順に並べて生成した推奨画面を示す。
【0118】
この場合、優先情報1210には「料金優先」と表示され、タスクの種類情報1222が「業務分析」に該当するモデル特定情報が表示されるが、その他は
図7と同様である。
【0119】
以上のように、ユーザは、所望の優先度の順番で並べられた所望のタスクを実行する複数のモデルの中から、表示されたモデルの属性およびサービス属性情報に基づき、所望のモデルを効率よく選択することができる。
【0120】
図9は、本実施形態に係るモデル処理を示すシーケンス図である。
【0121】
サーバ5の選定部54は、モデルが実行するタスクに基づいて連合学習に参加するクライアントの端末装置3を選定し(ステップS31)、記憶・読出部59がグローバルモデル管理DB5001から読み出したグローバルモデルから、実行するタスクに基づいて各端末装置3に配布するグローバルモデルを選定する(ステップS32)。選定部54は、連合学習に参加する全ての端末装置3に対して同一のグローバルモデルを選定する。
【0122】
選定部54は、以前用いたグローバルモデルを選定してもよく、特定の端末装置3で学習されたローカルモデルに基づくグローバルモデルを選定してもよく、汎用のデータセットで事前に学習させたグローバルモデルを選定してもよい。
【0123】
選定部54は、記憶・読出部59がセントラルデータ管理DB5002から読み出したセントラルデータから、グローバルモデルおよびローカルモデルの精度の評価に用いる評価データをモデルが実行するタスクに基づいて選定する(ステップS33)。
【0124】
ここで、選定部54は、ステップS62で取得したセントラルデータのすべてを評価データに選定したり、ランダムに評価データを選定したりしてもよいが、層化抽出法により評価データを選定することが好ましい。層化抽出法は、保有するデータ分布と同じになるように評価データを選定する方法である。
【0125】
送受信部51は、各端末装置3に対して、ステップS32で選定したグローバルモデルおよび分類項目を送信して、各端末装置3の送受信部31は、サーバ5から送信されたグローバルモデルおよび分類項目を受信する(ステップS34)。分類項目は、学習データを分類するための項目であって、予めユーザが設定した項目であってもよく、学習データをクラスタリングした後にユーザによりラベリングされた項目であっても良い。
【0126】
選定部34は、記憶・読出部39がローカルデータ管理DB3001から読み出したローカルデータから、モデルが実行するタスクに基づいて学習処理に用いる学習データを選定し(ステップS35)、処理部37は、ステップS35で選定した学習データのデータ数を算出するとともに、分類項目に基づき学習データを分類し、分類毎のデータ数を算出する(ステップS36)。
【0127】
学習処理部38は、ステップS34で受信したグローバルモデルに対して、ステップS35で選定した学習データを用いて学習処理を実行し、学習処理が終了すると、記憶・読出部59は、学習データを用いて学習処理を実行したグローバルモデルをローカルモデルとして生成し、ローカルモデル管理DB3002に実行するタスク毎に記憶させる(ステップS37)。
【0128】
ここで、学習処理部38は、ステップS34で受信したグローバルモデルに対して、ステップS36で分類した学習データ毎に学習処理を実行し、学習処理が終了すると、記憶・読出部59は、分類した学習データ毎に学習処理を実行したグローバルモデルを分類毎のローカルモデルとして生成し、ローカルモデル管理DB3002に記憶させる
【0129】
学習処理部38は、学習終了条件として、エポック数やEarly Stoppingを用いても良い。
【0130】
エポック数とは、「一つの学習データを何回繰り返して学習させるか」の数のことである。Early Stoppingとは、「学習が進んで精度の向上がこれ以上見込めないとなったら、そこで学習を止める」という方法であり、学習時に「学習用のデータ」と「学習を止めるかということを判断するバリデーション用のデータ」に分けておき、そのデータを用いて学習を止めるかどうかという判断を行う方法のことである。
【0131】
送受信部31は、サーバ5に対して、ステップS36で算出したデータ数および分類毎のデータ数と、ステップS37で得られたローカルモデルおよび分類毎のローカルモデルを送信し、サーバ5の送受信部51は、各端末装置3から送信されたデータ数および分類毎のデータ数とローカルモデルおよび分類毎のローカルモデルを受信する(ステップS38)。
【0132】
処理部57は、ステップS38で受信した各端末装置3における分類毎のデータ分布を集計する(ステップS39)
【0133】
更新部52は、ステップS38で受信した各端末装置3におけるデータ数とローカルモデルに基づき、ステップS32で選定したグローバルモデルを更新する(ステップS40)。
【0134】
更新部52は、FedAvg[1]、FedProx[2]、FedAvgM[3]等の公知の技術を用いてグローバルモデルを更新することができるが、ローカルモデルをもとに更新できるものであれば上記に限定するものではない。
【0135】
[1] H. Brendan McMahan, Eider Moore, Daniel Ramage, Seth HampSon, and BlaiSe Aguera y ArcaS. Communication-efficient learning of deep networkS from decentralized data. ProceedingS of the 20 th International Conference on Artificial Intelligence and StatiSticS (AISTATS), Vol. 54, , 2017。
【0136】
[2] Tian Li, Anit Kumar Sahu, Manzil Zaheer, Maziar Sanjabi, Ameet Talwalkar, and Virginia Smith. Federated optimization in heterogeneouS networkS. In ProceedingS of Machine Learning and SyStemS, Vol. 2, pp. 429-450, 2020。
【0137】
[3] HSu, T.M.H., Qi, H., Brown, M.: MeaSuring the effectS of non-identical data diStribution for federated viSual claSSification. arXiv preprint arXiv:1909.06335 (2019)。
【0138】
更新部52は、一例として、FedAvg[1]では、各端末装置3のローカルモデルの重みを、各端末装置3のデータ数で加重平均してグローバルモデルを更新する。
【0139】
ここで、判断部55が、更新終了条件を満たしているか判断し、満たしていない場合は、ステップS34に戻ってもよい。
【0140】
判断部55は、更新終了条件として、グローバルモデルの更新回数が所定の回数に到達したか否かを判断してもよく、更新が進んで精度の向上がこれ以上見込めないことを判断しても良い。
【0141】
あるいは、更新時に「更新を止めるかということを判断するバリデーション用のデータ」を用意しておき、判断部55は、そのデータに基づき、更新を止めるかどうかを判断してもよい。
【0142】
以上説明したように、端末装置3は、サーバ5に対してローカルモデルやデータ数を送信するが、ローカルデータを送信していないので、ローカルデータを分散した状態のまま、サーバ5は、ローカルモデルとデータ数に基づきグローバルモデルを更新することができる。
【0143】
評価部56は、ステップS33で選定した評価データに基づき、ステップS40で更新したグローバルモデルの精度の評価値を算出して、記憶・読出部59は、更新したグローバルモデルに関連付けて評価値をグローバルモデル管理DB5001に、モデルが実行するタスク毎に記憶させる(ステップS41)。
【0144】
評価部56は、ステップS33で選定した評価データに基づき、ステップS38で受信したローカルモデルおよび分類毎のローカルモデルの精度の評価値を端末装置3毎に算出して、記憶・読出部59は、端末装置3毎に、ローカルモデルおよび分類毎のローカルモデルに関連付けてそれぞれの評価値をローカルモデル管理DB5003に、モデルが実行するタスク毎に記憶させる(ステップS42)。
【0145】
ここで、グローバルモデルおよびローカルモデルの精度の評価値の例としては、accuracy,precision,recall,f1,lossなどがあげられるが、評価値はこれらに限定するものではなく、機械学習モデルの性能を評価可能な値であればいかなる値でも良い。
【0146】
送受信部51は、各端末装置3に対して、ステップS41で算出したグローバルモデルの精度の評価値、ステップS42で算出した端末装置3毎のローカルモデルおよび分類毎のローカルモデルの精度の評価値、およびステップS39で集計した端末装置3毎の分類毎のデータ分布を、モデルが実行するタスク毎に送信して、各端末装置3の送受信部31は、サーバ5から送信された各種評価値およびデータ分布を受信する(ステップS43)。
【0147】
表示制御部33は、ステップS43で受信した各種評価値およびデータ分布をディスプレイ308に表示させ、受付部32は、ローカルモデルまたはグローバルモデルの選択を受け付ける(ステップS44)。
【0148】
送受信部31は、サーバ5へ、選択したローカルモデルまたはグローバルモデルを示すモデル選択情報を送信し、サーバ5の送受信部51は、端末装置3から送信されたモデル選択情報を受信する(ステップS45)。
【0149】
記憶・読出部59は、ステップS45で受信したモデル選択情報が示すグローバルモデルまたはローカルモデルをグローバルモデル管理DB5001またはローカルモデル管理DB5003から読出して、送受信部51は、端末装置3へ、記憶・読出部59が読み出したグローバルモデルまたはローカルモデルを送信し、端末装置3の送受信部31は、サーバ5が送信したグローバルモデルまたはローカルモデルを受信する(ステップS46)。
【0150】
ここで、ステップS45において、端末装置3はサーバ5に対してモデル選択情報を送信し、ステップS46において、サーバ5が端末装置3に対して選択されたモデルを送信したが、選択されたモデルが他の端末装置3のローカルモデルの場合、端末装置3は他の端末装置3に対してモデル選択情報を送信し、他の端末装置3が端末装置3に対して選択されたモデルを送信してもよい。
【0151】
あるいは、選択されたモデルが他の端末装置3のローカルモデルの場合、端末装置3はサーバ5に対してモデル選択情報を送信し、サーバ5は他の端末装置3に対してモデル選択情報を転送し、他の端末装置3が端末装置3に対して選択されたモデルを送信してもよい。
【0152】
さらには、端末装置3自体は学習処理を実行しない場合、サーバ5または他の端末装置3は、端末装置3が指定した装置に対して、選択されたモデルを送信してもよい。
【0153】
端末装置3は、ステップS46で受信したグローバルモデルまたはローカルモデルに基づき、ステップS35~S37と同様の処理を実行する。
【0154】
以上説明した
図9のシーケンス図では、セントラルデータに基づきグローバルモデルおよびローカルモデルの精度を評価したが、他の形態として、各クライアントのローカルデータに基づきグローバルモデルおよびローカルモデルの精度を評価してもよい。
【0155】
この場合、端末装置3は以下の処理を実行する。まず、選定部34は、記憶・読出部59がローカルデータ管理DB3001から読み出したローカルデータから、グローバルモデルおよびローカルモデルの精度の評価に用いる評価データを選定する。
【0156】
評価部36は、選定した評価データに基づき、グローバルモデルおよびローカルモデルの精度の評価値を算出する。送受信部31は、サーバ5に対して、算出した評価値をさらに送信する。
【0157】
そして、サーバ5は、以下の処理を実行する。まず、送受信部51は、各端末装置3から送信された評価値を受信する。評価部56は、各端末装置3による評価値の平均値や、データ数に応じて荷重平均した値等により、連合学習に参加する全ての端末装置3による評価値を算出する。
【0158】
評価部56は、過去に取得した各クライアントでの評価値と今回取得した各クライアントでの評価値を平均して算出しても良い。評価値は上記に限定するものではなく、各端末装置3による評価値に基づいて、機械学習モデルの性能を評価可能な値であればいかなる値でも良い。
【0159】
図10は、本実施形態に係る選択画面の説明図である。
【0160】
図10は、本実施形態に係る端末装置3における表示画面の説明図であり、
図9のステップS44において、表示制御部33が、ディスプレイ308に選択画面を表示した状態を示している。
【0161】
表示制御部33は、ユーザ情報表示画面1310、タスク選択画面1320、モデル選択画面1330、確定ボタン1340およびデータ分類画面1350を含む選択画面1300を表示画面1000に表示させる。
【0162】
表示制御部33は、業務分析タスク選択ボックス1322、画像認識タスク選択ボックス1324、自然言語処理タスク選択ボックス1326をタスク選択画面1320に表示させ、自社ローカルモデル選択ボックス1332、グローバルモデル選択ボックス1334、パートナーローカルモデル選択ボックス1336およびパートナーローカルモデル特定画面1338をモデル選択画面1330に表示させる。
【0163】
データ分類画面1350は、自らおよび他のローカルモデルの生成に用いられた自らおよび他の学習データを分類した分類項目を表示する画面であり、詳細は後述する。
【0164】
パートナーローカルモデル特定画面1338は、パートナーローカルモデル選択ボックス1336を選択する場合に、複数のローカルモデルのうちの所望のモデルを特定するローカルモデル特定情報を入力するための画面である。
【0165】
図10の状態で、ユーザは、実施予定のタスクに基づき、業務分析タスク選択ボックス1322、画像認識タスク選択ボックス1324、および自然言語処理タスク選択ボックス1326の何れかを操作して選択する。
【0166】
そして、ユーザは、データ分類画面1350を確認しながら、実施予定のタスクに相応しいモデルを判断して、自社ローカルモデル選択ボックス1332、グローバルモデル選択ボックス1334、およびパートナーローカルモデル選択ボックス1336の何れかを操作して選択する。
【0167】
ユーザが、上記各種選択ボックスを操作した後に、確定ボタン1340を操作すると、受付部32は、グローバルモデルおよび複数のローカルモデルのうちの所望のモデルを選択する選択操作として受け付けて、
図9のステップS45で説明したように、送受信部31は、サーバ5へ、選択したタスクを示すタスク選択情報を含む選択したローカルモデルまたはグローバルモデルを示すモデル選択情報を送信する。
【0168】
一例として、ユーザが、業務分析タスク選択ボックス1322およびパートナーローカルモデル選択ボックス1336を操作し、パートナーローカルモデル特定画面1338にローカルモデル特定情報として1を入力し、確定ボタン1340を操作した場合、送受信部31は、サーバ5へ、業務分析タスクを示すタスク選択情報を含むローカルモデル特定情報の1を示すモデル選択情報を送信する。
【0169】
一方、ユーザが、自社ローカルモデル選択ボックス1332のみを操作し、確定ボタン1340を操作した場合、自社ローカルモデルはローカルデータ管理DB3001に記憶されているので、送受信部31は、サーバ5に対してモデル選択情報を送信しない。
【0170】
図11は、本実施形態に係るデータ分類画面の説明図である。
【0171】
図11(a)に示すように、表示制御部33は、
図10に示したデータ分類画面1350において、学習データを分類した分類項目1362を縦軸、ローカルモデル特定情報1364を横軸として、分類項目1362およびローカルモデル特定情報1364に対応付けられた学習データの分布1368を表示させる。
【0172】
分類項目1362は、0~9で表示されているが、文字で表示されていてもよく、以下のように複数の分類項目毎にグルーピングして表示ししてもよい。
・0~5:各社共通の分類項目。
・6~7:A社グループ独自の分類項目。
・8~9:B社グループ独自の分類項目。
【0173】
また、分類項目1362は、0~9の全てを表示せずに、以下のようにローカルモデル特定情報1364毎に、学習データが存在する項目のみを表示しても良い。
・ローカルモデル特定情報「0」:分類項目「3」「4」。
・ローカルモデル特定情報「19」:分類項目「2」「8」。
【0174】
ローカルモデル特定情報1364も、0~19で表示されているが、分類項目1362と同様に、文字で表示されていてもよく、複数のローカルモデル毎にグルーピングして表示してもよい。
【0175】
表示制御部33は、学習データの分布1368として、ローカルモデル特定情報1364および分類項目1362に対応付けられた特定のローカルモデルの生成に用いられた特定の分類項目の学習データの数を示す黒丸を表示させる。この黒丸は、学習データの数に対応する大きさで表示される。
【0176】
また、表示制御部33は、データ分類画面1350において、グローバルモデルの評価値を示すグローバルモデル評価情報1352、ローカルモデルの評価値を示すローカルモデル評価情報1356、および自社ローカルモデルを特定する自社ローカルモデル特定情報1366を表示させる。
【0177】
さらに、表示制御部33は、データ分類画面1350において、ポインタ1354によりポインティングされたローカルモデル特定情報1364が示すローカルモデルについて、ローカルモデルの評価値を示すローカルモデル評価情報1356を表示させる。
【0178】
図11(b)において、表示制御部33は、データ分類画面1350において、ポインタ1354によりポインティングされた特定の黒丸に対して、分類毎のローカルモデル評価情報1358を表示させる。
【0179】
分類毎のローカルモデル評価情報1358は、特定の黒丸が示す学習データを用いて生成された特定の分類毎のローカルモデルの評価値を示す。
【0180】
図11の状態において、自社ローカルモデル特定情報「10」で示されるユーザは、グローバルモデル評価情報1352、およびローカルモデル評価情報1356を確認することにより、評価が高いモデルがどれかを判断することができる。
【0181】
しかしながら、評価が高いモデルであっても、自社のデータを用いた場合には所望の精度が得られないことがある。
【0182】
例えば、ローカルモデル特定情報「9」のモデルは、分類項目「7」の学習データが殆どであり、分類項目「0」の自社のデータを用いた場合に評価値通りの精度が得られる可能性は低い。
【0183】
一方、ローカルモデル特定情報「2」のモデルは、分類項目「0」の学習データの比率が高いため、分類項目「0」の自社のデータを用いた場合に評価値通りの精度が得られる可能性がある。
【0184】
このように、ユーザは、他の学習データの分類項目1362および分布1368と、自らの学習データの分類項目1362および分布1368を比較して確認した上で、他のローカルモデルを適切に選択することができる。
【0185】
別のケースとして、自社ローカルモデル特定情報「10」で示されるユーザは、これまでは分類項目「0」のデータの比率が高かったが、今後、分類項目「7」のデータを用いる予定がある場合は、分類項目「7」の学習データの実績のあるローカルモデル特定情報「9」のモデルを候補として判断することができる。
【0186】
この場合、ユーザは、他の学習データの分類項目1362および分布1368と、今後新たに用いる予定の学習データの分類項目1362を比較して確認した上で、他のローカルモデルを適切に選択することができる。
【0187】
さらに、ユーザは、ローカルモデル特定情報「9」および「16」のモデルについて、それぞれの分類項目「7」の分類毎のローカルモデル評価情報1358を確認することにより、分類項目「7」のデータを用いた場合、どちらのモデルの精度が高いかを判断することができる。
【0188】
すなわち、ユーザは、ローカルモデル評価情報1356だけでなく、分類毎のローカルモデル評価情報1358を確認することにより、所望の分類項目のデータを用いた場合の精度の高いモデルを判断することができる。
【0189】
●まとめ●
[第1態様]
以上説明したように、本発明の一実施形態に係る情報処理装置の一例である提案装置7は、端末装置3から、学習データを用いて学習処理を実行して生成されるモデルに関する条件を示す条件情報を受信する送受信部71と、複数のモデルについて、条件を満たすか判断する判断部75とを備え、送受信部71は、端末装置3に対して、判断部75の判断結果に基づき、条件を満たすモデルを特定するモデル特定情報を送信する。
【0190】
これにより、提案装置7は、端末装置3に対して、条件を満たすモデルを提案することができる。
【0191】
[第2態様]
第1態様において、複数のモデルは、複数のローカルモデルに基づき更新されるグローバルモデルを複数含む。
【0192】
これにより、提案装置7は、端末装置3に対して、条件を満たすグローバルモデルを提案することができる。
【0193】
[第3態様]
第1態様または第2態様において、複数のモデルは、複数のノードのそれぞれでそれぞれ生成される複数のローカルモデルを含む。
【0194】
これにより、提案装置7は、端末装置3に対して、条件を満たすローカルモデルを提案することができる。
【0195】
[第4態様]
第1態様~第3態様の何れかにおいて、条件は、モデルの属性に対する優先度を含む。
【0196】
これにより、提案装置7は、端末装置3に対して、所定の属性における条件を満たすことを優先してモデルを提案することができる。
【0197】
[第5態様]
第4態様において、属性は、モデルを利用する料金およびモデルの評価の少なくとも一方を含む。
【0198】
これにより、提案装置7は、端末装置3に対して、モデルを利用する料金およびモデルの評価における条件を満たすことを優先してモデルを提案することができる。
【0199】
[第6態様]
第1態様~第5態様の何れかにおいて、条件は、モデルが実行するタスクを示すタスク情報を含む。
【0200】
これにより、提案装置7は、端末装置3に対して、実行するタスクの条件を満たすモデルを提案することができる。
【0201】
[第7態様]
第1態様~第6態様の何れかにおいて、送受信部71は、端末装置3に対して、モデルの属性を示すモデル属性情報を、モデル特定情報に含めて送信する。
【0202】
これにより、提案装置7は、端末装置3に対して、条件を満たすモデルを提案するとともに、提案したモデルの属性を共有させることができる。
【0203】
[第8態様]
第7態様において、モデルの属性は、学習データの数、ローカルモデルを生成するノードのクライアントの業種の少なくとも1つを含む。
【0204】
これにより、提案装置7は、端末装置3に対して、条件を満たすモデルを提案するとともに、提案したモデルの学習データの数、ローカルモデルを生成するノードのクライアントの業種等を共有させることができる。
【0205】
[第9態様]
第1態様~第8態様の何れかにおいて、送受信部71は、端末装置3に対して、モデルを提供するサービス提供者の属性を示すサービス属性情報を、モデル特定情報に含めて送信する。
【0206】
これにより、提案装置7は、端末装置3に対して、条件を満たすモデルを提案するとともに、提案したモデルを提供するサービス提供者の属性を共有させることができる。
【0207】
[第10態様]
第9態様において、サービス提供者の属性は、ローカルモデルの数、グローバルモデルを更新するために用いられるローカルモデル利用可否の少なくとも1つを含む。
【0208】
これにより、提案装置7は、端末装置3に対して、条件を満たすモデルを提案するとともに、提案したモデルを提供するサービス提供者におけるローカルモデルの数、グローバルモデルを更新するために用いられるローカルモデル利用可否等を共有させることができる。
【0209】
[第11態様]
第1態様~第10態様の何れかにおいて、送受信部71は、端末装置3から、さらに、条件を満たすモデルのうち選択されたモデルを示すモデル選択情報を受信する。
【0210】
これにより、提案装置7は、端末装置3に対して提案したモデルの選択結果を共有することができる。
【0211】
[第12態様]
第11態様において、送受信部71は、モデルを提供するサービス提供者の装置に対して、モデル選択情報を送信する。
【0212】
これにより、提案装置7は、端末装置3に対して提案したモデルの選択結果を、モデルを提供するサービス提供者の装置に対して共有することができる。
【0213】
なお、提案装置7が、モデルを提供するサーバ5と一体の場合は、サーバ5と一体化された提案装置7は、端末装置3に対してモデルを提供することができる。
【0214】
[第13態様]
本発明の一実施形態に係る端末装置3は、学習データを用いて学習処理を実行して生成されるモデルに関する条件を設定する設定操作を受け付ける受付部32と、複数のモデルのうち、設定操作により設定された条件を満たすと判断されたモデルを特定するモデル特定情報を、ディスプレイ308に表示させる表示制御部33と、を備える。
【0215】
これにより、ユーザは、モデルに関する条件を設定することにより、条件を満たすと判断されたモデルを確認することができる。
【0216】
[第14態様]
第13態様において、端末装置3は、情報処理装置の一例である提案装置7に対して、設定操作により設定された条件を示す条件情報を送信する送受信部31と、提案装置7から、モデル特定情報を受信する送受信部31と、を備え、表示制御部33は、送受信部31が受信したモデル特定情報を、ディスプレイ308に表示させる。
【0217】
これにより、ユーザは、モデルに関する条件を設定することにより、条件を満たすと提案装置7側で判断されたモデルを確認することができる。
【0218】
[第15態様]
第13態様において、提案装置7と一体化された端末装置3は、複数のモデルについて、条件を満たすか判断する判断部35を備え、表示制御部33は、判断部35の判断結果に基づき、モデル特定情報をディスプレイ308に表示させる。
【0219】
これにより、ユーザは、モデルに関する条件を設定することにより、条件を満たすと端末装置3側で判断されたモデルを確認することができる。
【0220】
[第16態様]
本発明の一実施形態に係る提案装置7により実行される情報処理方法は、端末装置3から、学習データを用いて学習処理を実行して生成されるモデルに関する条件を示す条件情報を受信する受信ステップと、複数のモデルについて、条件を満たすか判断する判断ステップと、端末装置3に対して、判断ステップでの判断結果に基づき、条件を満たすモデルを特定するモデル特定情報を送信する送信ステップと、を実行する。
【0221】
[第17態様]
本発明の一実施形態に係る端末装置3により実行される情報処理方法は、学習データを用いて学習処理を実行して生成されるモデルに関する条件を設定する設定操作を受け付ける受付ステップと、複数のモデルのうち、設定操作により設定された条件を満たすと判断されたモデルを特定するモデル特定情報を、ディスプレイ308に表示させる表示ステップと、を実行する。
【0222】
[第18態様]
本発明の一実施形態に係るプログラムは、コンピュータに、第16態様または第17態様の情報処理方法を実行させる。
【0223】
[第19態様]
本発明の一実施形態に係る情報処理システムは、端末装置3と、端末装置3と通信可能な提案装置7を備え、端末装置3は、学習データを用いて学習処理を実行して生成されるモデルに関する条件を設定する設定操作を受け付ける受付部32と、提案装置7に対して、設定操作により設定された条件を示す条件情報を送信する送受信部31と、を備え、提案装置7は、端末装置3から、条件情報を受信する送受信部71と、複数のモデルについて、条件を満たすか判断する判断部75を備え、送受信部71は、端末装置3に対して、判断部75の判断結果に基づき、条件を満たすモデルを特定するモデル特定情報を送信し、端末装置3は、さらに、送受信部31が、提案装置7からモデル特定情報を受信し、送受信部31が受信したモデル特定情報を、ディスプレイ308に表示させる表示制御部33と、を備える。
【符号の説明】
【0224】
1 情報処理システム
100 通信ネットワーク
3 端末装置(ノードの一例)
31 送受信部(受信手段の一例)
32 受付部(受付手段の一例)
33 表示制御部(表示制御手段の一例)
34 選定部(選定手段の一例)
35 判断部(判断手段の一例)
36 評価部(評価手段の一例)
37 処理部(処理手段の一例)
38 学習処理部(学習処理手段の一例)
39 記憶・読出部(記憶制御手段の一例)
308 ディスプレイ(表示部の一例)
1000 表示画面
1100 設定画面
1200 推奨画面
1300 選択画面
1350 データ分類画面
1362 分類項目
1364 ローカルモデル特定情報
3000 記憶部
3001 ローカルデータ管理DB(ローカルデータ管理手段の一例)
3002 ローカルモデル管理DB(ローカルモデル管理手段の一例)
5 サーバ(情報処理装置の一例)
51 送受信部(送信手段の一例)
53 決定部(決定手段の一例)
54 選定部(選定手段の一例)
55 判断部(判断手段の一例)
56 評価部(評価手段の一例)
57 処理部(処理手段の一例)
59 記憶・読出部(記憶制御手段の一例)
5000 記憶部
5001 グローバルモデル管理DB(グローバルモデル管理手段の一例)
5002 セントラルデータ管理DB(セントラルデータ管理手段の一例)
5003 ローカルモデル管理DB(ローカルモデル管理手段の一例)
5004 サービス情報管理DB(サービス情報管理手段の一例)
7 提案装置
7001 サービス情報管理DB(サービス情報管理手段の一例)