(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-01
(45)【発行日】2024-04-09
(54)【発明の名称】情報処理システム、情報処理方法及びプログラム
(51)【国際特許分類】
G06F 16/182 20190101AFI20240402BHJP
G06N 3/098 20230101ALI20240402BHJP
【FI】
G06F16/182
G06N3/098
(21)【出願番号】P 2022508279
(86)(22)【出願日】2021-03-11
(86)【国際出願番号】 JP2021009754
(87)【国際公開番号】W WO2021187305
(87)【国際公開日】2021-09-23
【審査請求日】2022-09-01
(31)【優先権主張番号】P 2020046350
(32)【優先日】2020-03-17
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100106909
【氏名又は名称】棚井 澄雄
(74)【代理人】
【識別番号】100134544
【氏名又は名称】森 隆一郎
(74)【代理人】
【識別番号】100149548
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100162868
【氏名又は名称】伊藤 英輔
(72)【発明者】
【氏名】安田 純一
【審査官】原 秀人
(56)【参考文献】
【文献】特開2015-179410(JP,A)
【文献】特開2017-162209(JP,A)
【文献】特表2017-530435(JP,A)
【文献】黒松 信行 外,機械仕掛けの機械学習wizz,情報処理学会 研究報告 ハイパフォーマンスコンピューティング(HPC) 2015-HPC-150 [online] ,日本,情報処理学会,2015年07月28日,Vol. 2015-HPC-150 No. 18,pp. 1-7, 正誤表
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
G06N 3/098
(57)【特許請求の範囲】
【請求項1】
複数のサーバーに分散して機械学習に用いられるデータを保存する情報処理システムであって、
前記機械学習における
複数k回の交差検証の分割方法
と前記交差検証を実行する検証サーバーとを示す設定情報
であって前記分割方法が前記データを分割して得られた複数k個のブロックを示す設定情報を読み取る第1読取手段と、
前記設定情報に基づいて、前記複数のサーバーのうち前記交差検証を実行する検証サーバーと前記交差検証に用いられるデータである検証データ
を示すブロックとを特定する解析手段と、
前記複数のサーバーにおける前記データの配置を特定する第2読取手段と、
前記検証データ
を示すブロックに含まれるデータのうち前記検証サーバーが記憶していないデータである不足データを特定し、特定した前記不足データの配置に基づいて、前記複数のサーバーのうち前記不足データを記憶するサーバーから前記不足データを前記検証サーバーに送信させる制御手段と、
を備える情報処理システム。
【請求項2】
前記複数のサーバーは、前記データのマスタデータと前記データのレプリカとを分散して記憶し、
前記第2読取手段は、前記複数のサーバーにおける前記マスタデータおよび前記レプリカの配置を特定し、
前記制御手段は、前記検証データのうち前記検証サーバーが前記マスタ
データおよび前記レプリカのいずれも記憶していないデータである不足データを特定し、特定した前記不足データの配置に基づいて、前記複数のサーバーのうち前記不足データを記憶するサーバーから前記不足データのレプリカを前記検証サーバーに送信させる
請求項1に記載の情報処理システム。
【請求項3】
前記設定情報に基づい
て、前記機械学習に用いられるデータを含む複数のブロックであって前記検証データを示すブロック以外のブロックに含まれるデータを用いて学習済みモデルを生成する学習手段と、
をさらに備える請求項1又は請求項2に記載の情報処理システム。
【請求項4】
前記設定情報は、前記分割方法と、前記機械学習
又は前記
交差検証の対象となるデータの種別を示し、
前記解析手段は、前記設定情報に基づいて、前記検証サーバーと前記検証データと前記種別とを特定する
請求項1から請求項3の何れか1項に記載の情報処理システム。
【請求項5】
前記設定情報は、前記分割方法と、前記
交差検証の対象
となるデータと、前記機械学習
又は前記
交差検証の対象となる項目である対象項目を示し、
前記解析手段は、前記設定情報に基づいて、前記検証サーバーと前記検証データと
その種別と前記対象項目とを特定し、
前記制御手段は、前記検証データのうち前記検証サーバーが記憶していないデータである不足データを特定し、特定した前記不足データの配置に基づいて、前記複数のサーバーのうち前記不足データを記憶するサーバーから前記不足データの前記対象項目を前記検証サーバーに送信させる
請求項1に記載の情報処理システム。
【請求項6】
複数のサーバーに分散して機械学習に用いられるデータを保存する情報処理システムにより実行される情報処理方法であって、
前記機械学習における
複数k回の交差検証の分割方法
と前記交差検証を実行する検証サーバーとを示す設定情報
であって前記分割方法が前記データを分割して得られた複数k個のブロックを示す設定情報を読み取ることと、
前記設定情報に基づいて、前記複数のサーバーのうち前記交差検証を実行する検証サーバーと前記交差検証に用いられるデータである検証データ
を示すブロックとを特定することと、
前記複数のサーバーにおける前記データの配置を特定することと、
前記検証データ
を示すブロックに含まれるデータのうち前記検証サーバーが記憶していないデータである不足データを特定することと、
特定した前記不足データの配置に基づいて、前記複数のサーバーのうち前記不足データを記憶するサーバーから前記不足データを前記検証サーバーに送信させることと、
を有する情報処理方法。
【請求項7】
複数のサーバーに分散して機械学習に用いられるデータを保存する情報処理システムのコンピュータに、
前記機械学習における
複数k回の交差検証の分割方法
と前記交差検証を実行する検証サーバーとを示す設定情報
であって前記分割方法が前記データを分割して得られた複数k個のブロックを示す設定情報を読み取ることと、
前記設定情報に基づいて、前記複数のサーバーのうち前記交差検証を実行する検証サーバーと前記交差検証に用いられるデータである検証データ
を示すブロックとを特定することと、
前記複数のサーバーにおける前記データの配置を特定することと、
前記検証データ
を示すブロックに含まれるデータのうち前記検証サーバーが記憶していないデータである不足データを特定することと、
特定した前記不足データの配置に基づいて、前記複数のサーバーのうち前記不足データを記憶する他のサーバーから前記不足データを前記検証サーバーに送信させることと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム、情報処理方法及びプログラムに関する。
【背景技術】
【0002】
特許文献1には、分散ファイルシステムでストレージノードの特徴を動的に評価して最適な配置決定を行うことにより、バックアップデータの損失を防ぐ技術が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
複数のサーバーに分散してデータを保存する情報処理システムにおいて、そのデータを学習して学習済みモデルを生成する技術が知られている。また、学習データと検証データの分割により学習データの偏りが生じ、生成された学習済みモデルの精度が低くなり得るため、学習データと検証データの分割方法を変えながら、学習済みモデルを複数回生成して、精度を高くする技術が知られている。
上記のような情報処理システムにおいて複数回に渡って学習済みモデルを生成するためには、検証のたびに検証サーバに検証データを移動させる必要がある。これにより、その学習済みモデルの検証が遅くなり、多くのリソースを消費することになる。
本発明の目的の一例は、上述した課題を解決する情報処理システム、情報処理方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0005】
本発明の態様に係る情報処理システムは、複数のサーバーに分散して機械学習に用いられるデータを保存する情報処理システムであって、機械学習における交差検証の分割方法を示す設定情報を読み取る第1読取手段と、設定情報に基づいて、複数のサーバーのうち交差検証を実行する検証サーバーと交差検証に用いられるデータである検証データとを特定する解析手段と、複数のサーバーにおけるデータの配置を特定する第2読取手段と、検証データのうち検証サーバーが記憶していないデータである不足データを特定し、特定した不足データの配置に基づいて、複数のサーバーのうち不足データを記憶するサーバーから不足データをその検証サーバーに送信させる制御手段を備える。
【0006】
本発明の態様に係る情報処理方法は、複数のサーバーに分散して機械学習に用いられるデータを保存する情報処理システムにより実行される情報処理方法であって、機械学習における交差検証の分割方法を示す設定情報を読み取ることと、設定情報に基づいて、複数のサーバーのうち交差検証を実行する検証サーバーと交差検証に用いられるデータである検証データとを特定することと、複数のサーバーにおけるデータの配置を特定することと、検証データのうち検証サーバーが記憶していないデータである不足データを特定することと、特定した不足データの配置に基づいて、複数のサーバーのうち不足データを記憶するサーバーから不足データをその検証サーバーに送信させることとを有する。
【0007】
本発明の態様に係る記録媒体は、複数のサーバーに分散して機械学習に用いられるデータを保存する情報処理システムのコンピュータに、機械学習における交差検証の分割方法を示す設定情報を読み取ることと、設定情報に基づいて、複数のサーバーのうち交差検証を実行する検証サーバーと交差検証に用いられるデータである検証データとを特定することと、複数のサーバーにおけるデータの配置を特定することと、検証データのうち検証サーバーが記憶していないデータである不足データを特定することと、特定した不足データの配置に基づいて、複数のサーバーのうち不足データを記憶するサーバーから不足データをその検証サーバーに送信させることとを実行させるプログラムを記憶する。
【発明の効果】
【0008】
上記態様のうち少なくとも1つの態様によれば、複数のサーバーに分散してデータを保存する情報処理システムにおいて、複数回生成した学習済みモデルの交差検証にかかる時間とリソースを軽減することができる。
【図面の簡単な説明】
【0009】
【
図1】一実施形態に係る情報処理システムの構成を示す図である。
【
図2】一実施形態に係る売上データの一例を示す図である。
【
図3】一実施形態に係る全学習パターンの一例を示す図である。
【
図4】一実施形態に係るサーバーにおけるデータの配置を示す一例である。
【
図5】一実施形態に係る情報処理システムの動作を示すフローチャートである。
【
図6】基本構成に係る情報処理システムの構成を示す図である。
【
図7】少なくとも1つの実施形態のコンピュータの構成を示す概略ブロック図である。
【発明を実施するための形態】
【0010】
〈第1の実施形態〉
《情報処理システムの構成》
以下、図面を参照しながら第1の実施形態に係る情報処理システム1の構成について詳しく説明する。
図1は、第1の実施形態に係る情報処理システム1の構成を示す図である。
情報処理システム1は、分散環境2に分散して機械学習に用いられるデータを保存するシステムである。また、情報処理システム1は、生成された学習済みモデルを交差検証する。また、情報処理システム1は、分散環境2が備える複数のサーバー10のうち、検証が行われるサーバーにレプリカ(複製、複製データ)を送信するシステムである。
情報処理システム1は、分散環境2と、読取元31と、最適化装置100を備える。
【0011】
分散環境2は、サーバー10Aと、サーバー10Bと、サーバー10Cを備える。サーバー10Aと、サーバー10Bと、サーバー10Cを、サーバー10と称する場合がある。
分散環境2は、複数のサーバー10に分散してデータのマスタデータとそのデータのレプリカを保存する。サーバー10は、サーバー10のソフトウェア(図示しない)により分散されたデータとレプリカを保存する。上記ソフトウェアの例としては、分散処理ミドルウェアが挙げられる。また、サーバー10が備えるレプリカ生成装置(図示しない)は、サーバー10が保存するデータを複製してレプリカを生成して、複数のサーバー10の何れかに記録する。
【0012】
読取元31は、情報処理システム1のユーザ30から学習パターン設定情報の入力を受け入れて、入力に係る学習パターン設定情報を記憶する装置である。学習パターン設定情報は、設定情報の一例である。読取元31は、受入部(図示しない)と、記憶装置(図示しない)を備える。読取元31がユーザ30から受け入れる学習パターン設定情報は、対象データの種別と、分割方法と、検証サーバーと、学習方法を示す。受取部は、受け入れた学習パターン設定情報を記憶装置に記録する。
以下、読取元31がユーザ30から受け入れる入力について詳細に説明する。
【0013】
対象データの種別とは、分散環境2が保存するデータのうち、最適化装置100の機械学習の学習又は検証の対象となる種別である。
例えば、分散環境2のサーバー10に売上データと、在庫データと、発注データが保存されているとする。最適化装置100は、売上データの学習により、売上予測にかかる学習済みモデルを生成するとする。この場合、ユーザ30は、対象データの種別として「売上データ」を読取元31に入力する。
【0014】
分割方法とは、機械学習における交差検証の分割の方法である。交差検証とは、分散環境2に保存されているデータを学習データと検証データに分割して、学習データによる学習済みモデルを検証データで検証する手法である。
【0015】
図2は、売上データの一例を示す図である。上記一例を用いて分割方法について説明する。
売上データは、データ番号と、売上と、日時、顧客IDと、店舗と、性別と、名前と、天気を項目とするデータである。また、売上データは、15行のデータであり、データ番号1からデータ番号15までのデータである。
k分割交差検証を行う場合に、5回の学習及び検証を行う場合(分割数k=5の場合)、
図2に示すように、売上データは5つのブロックに分けられる。すなわち、売上データは、ブロックAと、ブロックBと、ブロックCと、ブロックDと、ブロックEに分けられる。ブロックAは、データ番号1からデータ番号3までの売上データである。ブロックBは、データ番号4からデータ番号6までの売上データである。ブロックCは、データ番号7からデータ番号9までの売上データである。ブロックDは、データ番号10からデータ番号12までの売上データである。ブロックEは、データ番号13からデータ番号15までの売上データである。
上記のように売上データを分割する場合、ユーザ30は、分割方法として、「5つに分割」を読取元31に入力する。
【0016】
ユーザ30は、分割方法として、データの行数や、データのサイズに基づいて分割する方法を読取元31に入力しても良い。例えば、ユーザ30は、「5行ごとに分割」を読取元31に入力しても良い。この場合、売上データは3個のブロックに分割される。
【0017】
検証サーバーとは、機械学習の検証が行われる分散環境2のサーバー10である。例えば、ユーザ30がサーバー10Aと、サーバー10Bを用いて機械学習の検証を行う場合、ユーザ30は、「サーバー10A」と「サーバー10B」を、検証サーバーとして読取元31に入力する。
【0018】
《最適化装置の構成》
以下、最適化装置100の構成について詳細に説明する。
最適化装置100は読取元31から情報を受け入れて、分散環境2のデータを機械学習することにより学習済みモデルを生成する。
最適化装置100は、読取部101と、解析部102と、制御部103と、記憶部104と、学習部105を備える。
【0019】
読取部101は、学習パターン設定情報を読取元31から読み取る。読取部101は、第1読取手段の一例である。
【0020】
解析部102は、読取部101が読み取った学習パターン設定情報に基づいて、検証サーバーと検証データを特定する。検証データとは、機械学習の検証に用いられるデータである。解析部102は解析手段の一例である。また、解析部102は、特定した検証サーバーと検証データとを関連付けて全学習パターンを生成する。
図3は、全学習パターンの一例を示す図である。
【0021】
全学習パターン1は、検証サーバーとしてサーバー10Aと、検証データとしてブロックAと、学習データとしてブロックBと、ブロックCと、ブロックDと、ブロックEが関連付けられている。全学習パターン2は、検証サーバーを示す情報としてサーバー10B、検証データとしてブロックBと、学習データとしてブロックAと、ブロックCと、ブロックDと、ブロックEが関連付けられている。
解析部102は、生成した全学習パターンを記憶部104に記録する。
【0022】
制御部103は、複数のサーバー10におけるデータの配置を特定する。制御部103は、第2読取手段の一例である。
図4は、複数のサーバー10におけるデータの配置を示す一例である。
【0023】
図4に示すように、サーバー10Aとサーバー10Bとサーバー10Cには、売上データのマスタデータとその売上データのレプリカが保存されている。
図4に示す例では、データのマスタデータとレプリカがランダムに配置されて保存される一例である。以下、データ番号NのデータをデータNと称する。また、以下、データ番号Nのデータに対応するレプリカをレプリカNと称する。
サーバー10Aには、マスタデータであるデータ1と、データ11と、データ9と、データ6と、データ7が保存されている。また、サーバー10Aには、レプリカ15と、レプリカ4と、レプリカ7と、レプリカ10と、レプリカ9が保存されている。
【0024】
また、制御部103は、記憶部104が記憶している全学習パターンに基づいて、検証データのうち、検証サーバーがマスタデータ及びレプリカのいずれも記憶していないデータである不足データを特定して、特定した配置(特定した不足データの配置)に基づいて、他のサーバー10から不足データのレプリカを検証サーバーに送信する。制御部103は制御手段の一例である。
【0025】
例えば、全学習パターン1における検証サーバーはサーバー10Aである。また、全学習パターン1における検証データはブロックAである。
図4に示すように、検証サーバーであるサーバー10Aには、ブロックAに属するデータ又はデータに対応するレプリカのうち、データ1のみ保存されている。すなわち、検証サーバーであるサーバー10Aの不足データはデータ2とデータ3である。そのため、制御部103は、サーバー10Bに保存されているレプリカ3と、サーバー10Cに保存されているレプリカ2をサーバー10Aに送信する。
具体的には、制御部103は、全学習パターンにおける検証サーバーと、読み取った配置を照らし合わせて、検証サーバーに検証データ又はその検証データに対応するレプリカが存在するか否かを判定する。制御部103は、判定により、検証データ又はその検証データに対応するレプリカが検証サーバーに存在しない場合は、そのレプリカを検証サーバーに送信する。
【0026】
記憶部104は、全学習パターンを記憶する記憶媒体である。記憶部104の例としては、ハードディスクが挙げられる。
【0027】
学習部105は、学習パターン設定情報に基づいて、分散環境2のサーバー10のデータの機械学習により、学習済みモデルを生成する。また、学習部105は生成された学習済みモデルの交差検証を行う。学習部105は学習手段の一例である。
【0028】
例えば、学習部105は、学習パターン設定情報に基づいて学習済みモデルを生成し、その学習済みモデルの交差検証を行う。学習部105は、分散環境2のブロックBとブロックCとブロックDとブロックEに属するデータを機械学習することにより、学習済みモデルを生成する。学習部105は、データのうち、売上の項目の値を目的変数として、売上以外の項目の値を入力変数として、学習済みモデルを生成する。また、学習部105は、検証サーバーであるサーバー10Aにおいて、ブロックAに属するデータを、学習済みモデルに代入して得られる値と、そのデータの売上の項目の値とを照らし合わせて精度を求めることにより、検証を行う。検証においては、サーバー10Aが記憶しているデータ1と、制御部103によりサーバー10B及びサーバー10Cから移動されたレプリカ2と、レプリカ3が用いられる。また、学習部105は、分散環境2のブロックAとブロックCとブロックDとブロックEに属するデータを機械学習することにより、学習済みモデルを生成する。学習部105は、ブロックBの売上の項目の値に基づいて精度を求めることにより検証を行う。このように、学習部105は、検証データを変えながら機械学習を行い、複数の学習済みモデルを照らし合わせて、交差検証を行う。交差検証により入力変数に関連付けられた重みを調整することにより、学習済みモデルの精度を高めることができる。
【0029】
《情報処理システムの動作》
以下、情報処理システム1の動作について説明する。
図5は、情報処理システム1の動作を示すフローチャートである。
【0030】
ユーザ30は、対象データの種別と、分割方法と、検証サーバーを読取元31に入力する(ステップS1)。読取元31に入力された情報は、学習パターン設定情報として記憶装置に記録される。
読取部101は、読取元31が記憶している学習パターン設定情報を読み取る(ステップS2)。
【0031】
解析部102は、ステップS2で読取部101が読み取った学習パターン設定情報に基づいて検証サーバーと、検証データと、対象データの種別を特定し、全学習パターンを生成する(ステップS3)。
解析部102は、生成した全学習パターンを記憶部104に記録する(ステップS4)。
【0032】
制御部103は、分散環境2の配置を特定し、記憶部104が記憶している全学習パターンを読み取る(ステップS5)。
制御部103は、検証データのうち、検証サーバーがマスタデータ及びレプリカの何れも記憶していないデータである不足データが存在するか否かを判定する(ステップS6)。
【0033】
不足データが存在する場合(ステップS6:YES)、制御部103は、特定した不足データの配置に基づいて、他のサーバー10から不足データのレプリカを検証サーバーに送信させる(ステップS7)。
レプリカを送信させた後、学習部105は機械学習により学習済みモデルを生成する(ステップS8)。その後、学習部105は学習モデルを交差検証する(ステップS9)。
【0034】
不足データが存在しない場合(ステップS6:NO)、学習部105は機械学習により学習済みモデルを生成する(ステップS8)。その後、学習部105は学習モデルを交差検証する(ステップS9)。
【0035】
上記の動作により、情報処理システム1は分散環境2のデータの機械学習による学習済みモデルの交差検証にかかる時間とリソースを軽減することができる。
【0036】
《作用および効果》
本発明の実施形態に係る情報処理システム1は、複数のサーバー10に分散して機械学習に用いられるデータを保存する情報処理システム1であって、機械学習における交差検証の分割方法を示す設定情報を読み取る第1読取手段と、設定情報に基づいて、複数のサーバー10のうち交差検証を実行する検証サーバーと交差検証に用いられるデータである検証データとを特定する解析手段と、複数のサーバー10におけるデータの配置を特定する第2読取手段と、検証データのうち検証サーバーが記憶していないデータである不足データを特定し、特定した不足データの配置に基づいて、他のサーバーから不足データをその検証サーバーに送信させる制御手段を備える。
【0037】
検証サーバーに不足データを送信させることにより、情報処理システム1は分散環境2のデータの機械学習による学習済みモデルの交差検証にかかる時間とリソースを軽減することができる。
【0038】
情報処理システム1の複数のサーバー10は、データのマスタデータとそのデータのレプリカとを分散して記憶し、第2読取手段は、複数のサーバー10におけるマスタデータおよびレプリカの配置を特定し、制御手段は、検証データのうち検証サーバーがマスタデータおよびレプリカのいずれも記憶していないデータである不足データを特定し、特定した不足データの配置に基づいて、他のサーバー10から不足データのレプリカをその検証サーバーに送信させる。
【0039】
検証サーバーに不足データのレプリカを送信させることにより、情報処理システム1は分散環境2のデータの機械学習による学習済みモデルの交差検証にかかる時間とリソースを軽減することができる。
【0040】
情報処理システム1は、設定情報に基づいて学習済みモデルを生成する学習手段を備える。
情報処理システム1のユーザは交差検証にかかる時間とリソースを軽減できるシステムにおいて、機械学習により学習済みモデルを生成することができる。
【0041】
情報処理システム1の設定情報は、分割方法と、機械学習の学習又は検証の対象となるデータの種別を示し、解析手段は、設定情報に基づいて、検証サーバーと検証データと種別とを特定する。
【0042】
情報処理システム1は、対象データの種別を示す設定情報に基づいて、検証データを特定する。これにより、対象データの種別に対応する不足データだけを検証サーバーに送信させることで、交差検証にかかる時間とリソースを軽減できる。
【0043】
本発明の実施形態に係る情報処理方法は、複数のサーバー10に分散して機械学習に用いられるデータを保存する情報処理システム1により実行され、機械学習における交差検証の分割方法を示す設定情報を読み取るステップと、設定情報に基づいて、複数のサーバー10のうち交差検証を実行する検証サーバーと交差検証に用いられるデータである検証データとを特定するステップと、複数のサーバー10におけるデータの配置を特定するステップと、検証データのうち検証サーバーが記憶していないデータである不足データを特定し、特定した不足データの配置に基づいて、他のサーバー10から不足データをその検証サーバーに送信させるステップを有する。
【0044】
情報処理方法のユーザは、情報処理方法を用いることにより、検証サーバーに不足データを送信させる。これにより、情報処理方法のユーザは分散環境2のデータの機械学習による学習済みモデルの交差検証にかかる時間とリソースを軽減することができる。
【0045】
本発明の実施形態に係るプログラムは、複数のサーバー10に分散して機械学習に用いられるデータを保存する情報処理システム1のコンピュータに、機械学習における交差検証の分割方法を示す設定情報を読み取るステップと、設定情報に基づいて、複数のサーバー10のうち交差検証を実行する検証サーバーと交差検証に用いられるデータである検証データとを特定するステップと、複数のサーバー10におけるデータの配置を特定するステップと、検証データのうち検証サーバーが記憶していないデータである不足データを特定し、特定した不足データの配置に基づいて、他のサーバー10から不足データをその検証サーバーに送信させるステップとして実行させる。
【0046】
プログラムのユーザは、プログラムを実行させることにより、検証サーバーに不足データを送信させる。これにより、プログラムのユーザは分散環境2のデータの機械学習による学習済みモデルの交差検証にかかる時間とリソースを軽減することができる。
【0047】
〈第2の実施形態〉
以下、第2の実施形態に係る情報処理システム1を説明する。
第2の実施形態に係る情報処理システム1は、学習パターン設定情報として対象項目も特定し、検証サーバーの不足データの対象項目にかかるレプリカを送信させるシステムである。
第2の実施形態に係る情報処理システム1の構成は、第1の実施形態に係る情報処理システム1の構成と同様である。
【0048】
第2の実施形態に係る学習パターン設定情報は、分割方法と、対象データと、対象項目を示す。対象項目とは、最適化装置100の機械学習の学習又は検証の対象となる項目をいう。
例えば、対象データの種別が
図2に示すように売上データであるとする。売上データには、データ番号を除き、売上と、日時、顧客IDと、店舗と、性別と、名前と、天気を項目とするデータである。売上、日時、性別の項目だけを用いて学習済みモデルを生成したい場合は、ユーザ30は、「売上」と、「日時」と、「性別」とを対象項目として読取元31に入力する。読取元31は、売上と日時と性別の項目を対象項目として、学習パターン設定情報に示して、記憶装置に記録する。
【0049】
制御部103は、検証データのうち検証サーバーが記憶していない不足データを特定し、特定した配置に基づいて他のサーバーから不足データの対象項目を検証サーバーに送信させる。すなわち、制御部103は、不足データのうち、売上と日時と性別の項目だけを検証サーバーに送信させる。これにより、不足データの全ての項目を送信する必要が無いため、第2の実施形態に係る情報処理システム1は、交差検証に係る時間とリソースを軽減させることができる。
【0050】
《作用・効果》
本発明に係る情報処理システム1の設定情報は、分割方法と、対象データと、機械学習の学習又は検証の対象となる項目である対象項目を示し、解析手段は、設定情報に基づいて、検証サーバーと検証データと種別と対象項目とを特定し、制御手段は、検証データのうち検証サーバーが記憶していない不足データを特定し、特定した配置に基づいて、他のサーバー10から不足データの対象項目を当該検証サーバーに送信させる。
【0051】
これにより、不足データの全ての項目を送信する必要が無いため、情報処理システム1は、交差検証に係る時間とリソースを軽減させることができる。
【0052】
〈他の実施形態〉
以上、図面を参照して一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、様々な設計変更等をすることが可能である。
【0053】
上記の実施形態に係る情報処理システム1は、ユーザ30から学習パターン設定情報の入力を受け入れたが、実施形態はこのような例に限定されない。例えば、過去の情報を記録し、その情報に基づいて学習パターン設定情報を自動的に生成しても良い。これにより、ユーザ30は学習パターン設定情報の入力を受け入れなくても良いため、交差検証にかかる時間を削減することができる。
【0054】
また、制御部103による不足データ又はレプリカの送信は、学習部105により機械学習が行われる時間又は深夜等の分散環境2に負荷が少ない時間に行われても良い。これにより、不足データの送信により生じる分散環境2に係る負荷を、負荷の少ない時間に分散させることができる。
【0055】
分散環境2がマスタデータごとに2つ以上のレプリカを生成する場合でも、情報処理システム1は、不足データに対応する1つのレプリカのみを検証サーバーに送信させても良い。
また、情報処理システム1は、不足データのレプリカが生成される前に、不足データに係る情報を分散環境2に送信して、検証サーバーに不足データのレプリカが生成されるようにしても良い。
【0056】
〈基本構成〉
基本構成に係る実施形態の構成は、上記で説明した第1の実施形態の構成のうち、記憶部104と、学習部105を備えない構成である。すなわち、基本構成に係る情報処理システム1の最適化装置100は、読取部101と、解析部102と、制御部103を備える。
図6は、基本構成に係る情報処理システム1の構成を示す図である。
【0057】
基本構成に係る情報処理システム1は、複数のサーバー10に分散して機械学習に用いられるデータを保存し、機械学習における交差検証の分割方法を示す設定情報を読み取る第1読取手段と、設定情報に基づいて、複数のサーバー10のうち交差検証を実行する検証サーバーと交差検証に用いられるデータである検証データとを特定する解析手段と、複数のサーバー10におけるデータの配置を特定する第2読取手段と、検証データのうち検証サーバーが記憶していないデータである不足データを特定し、特定した不足データの配置に基づいて、他のサーバーから不足データをその検証サーバーに送信させる制御手段を備える。
【0058】
検証サーバーに不足データを送信させることにより、情報処理システム1は分散環境2のデータの機械学習による学習済みモデルの交差検証にかかる時間とリソースを軽減することができる。
【0059】
〈コンピュータ構成〉
図7は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
コンピュータ1100は、プロセッサ1110、メインメモリ1120、ストレージ1130、インタフェース1140を備える。
上述の最適化装置100は、コンピュータ1100に実装される。そして、上述した各処理部の動作は、プログラムの形式でストレージ1130に記憶されている。プロセッサ1110は、プログラムをストレージ1130から読み出してメインメモリ1120に展開し、そのプログラムに従って上記処理を実行する。また、プロセッサ1110は、プログラムに従って、上述した各記憶部に対応する記憶領域をメインメモリ1120に確保する。
【0060】
プログラムは、コンピュータ1100に発揮させる機能の一部を実現するためのものであってもよい。例えば、プログラムは、ストレージ1130に既に記憶されている他のプログラムとの組み合わせ、または他の装置に実装された他のプログラムとの組み合わせによって機能を発揮させるものであってもよい。なお、他の実施形態においては、コンピュータ1100は、上記構成に加えて、または上記構成に代えてPLD(Programmable Logic Device)などのカスタムLSI(Large Scale Integrated Circuit)を備えてもよい。PLDの例としては、PAL(Programmable Array Logic)、GAL(Generic Array Logic)、CPLD(Complex Programmable Logic Device)、FPGA(Field Programmable Gate Array)が挙げられる。この場合、プロセッサ1110によって実現される機能の一部または全部が当該集積回路によって実現されてよい。
【0061】
ストレージ1130の例としては、磁気ディスク、光磁気ディスク、半導体メモリ等が挙げられる。ストレージ1130は、コンピュータ1100のバスに直接接続された内部メディアであってもよいし、インタフェース1140または通信回線を介してコンピュータに接続される外部メディアであってもよい。また、このプログラムが通信回線によってコンピュータ1100に配信される場合、配信を受けたコンピュータ1100が当該プログラムをメインメモリ1120に展開し、上記処理を実行してもよい。少なくとも1つの実施形態において、ストレージ1130は、一時的でない有形の記憶媒体である。
【0062】
また、当該プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、当該プログラムは、前述した機能をストレージ1130に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【0063】
この出願は、2020年3月17日に出願された日本国特願2020-046350号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【0064】
本発明は、情報処理システム、情報処理方法及び記録媒体に適用してもよい。
【符号の説明】
【0065】
1 情報処理システム
2 分散環境
10 サーバー
30 ユーザ
31 読取元
101 読取部
102 解析部
103 制御部
104 記憶部
105 学習部
1100 コンピュータ
1110 プロセッサ
1120 メインメモリ
1130 ストレージ
1140 インタフェース