IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社日本総合研究所の特許一覧

特開2024-61365情報処理方法、情報処理プログラム、及び情報処理装置
<>
  • 特開-情報処理方法、情報処理プログラム、及び情報処理装置 図1
  • 特開-情報処理方法、情報処理プログラム、及び情報処理装置 図2
  • 特開-情報処理方法、情報処理プログラム、及び情報処理装置 図3
  • 特開-情報処理方法、情報処理プログラム、及び情報処理装置 図4
  • 特開-情報処理方法、情報処理プログラム、及び情報処理装置 図5
  • 特開-情報処理方法、情報処理プログラム、及び情報処理装置 図6
  • 特開-情報処理方法、情報処理プログラム、及び情報処理装置 図7
  • 特開-情報処理方法、情報処理プログラム、及び情報処理装置 図8
  • 特開-情報処理方法、情報処理プログラム、及び情報処理装置 図9
  • 特開-情報処理方法、情報処理プログラム、及び情報処理装置 図10
  • 特開-情報処理方法、情報処理プログラム、及び情報処理装置 図11
  • 特開-情報処理方法、情報処理プログラム、及び情報処理装置 図12
  • 特開-情報処理方法、情報処理プログラム、及び情報処理装置 図13
  • 特開-情報処理方法、情報処理プログラム、及び情報処理装置 図14
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024061365
(43)【公開日】2024-05-07
(54)【発明の名称】情報処理方法、情報処理プログラム、及び情報処理装置
(51)【国際特許分類】
   G06N 20/00 20190101AFI20240425BHJP
【FI】
G06N20/00
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022169268
(22)【出願日】2022-10-21
(71)【出願人】
【識別番号】302064762
【氏名又は名称】株式会社日本総合研究所
(74)【代理人】
【識別番号】100114557
【弁理士】
【氏名又は名称】河野 英仁
(74)【代理人】
【識別番号】100078868
【弁理士】
【氏名又は名称】河野 登夫
(72)【発明者】
【氏名】打越 元信
(72)【発明者】
【氏名】森 毅
(57)【要約】
【課題】複数の学習モデルを使い分けて予測を行う情報処理方法、情報処理プログラム、及び情報処理装置を提供すること。
【解決手段】情報処理方法は、予測のための入力データを取得し、学習により生成した第1モデルの特徴量空間の分布、及び、前記第1モデルと所定の関係を有し、学習により生成した第2モデルの特徴量空間の分布に基づき取得した、擬似的な前記第2モデルの特徴量空間の分布の移動距離を、前記特徴量空間の位置と対応付けて記憶する記憶部を参照し、前記特徴量空間における入力データの位置に対応付けられた前記移動距離を取得し、取得した前記移動距離に基づいて、前記第1モデル、又は、前記第2モデルの少なくとも1つのモデルを用いた予測を行い、予測結果を出力する処理をコンピュータが行う。
【選択図】図7
【特許請求の範囲】
【請求項1】
予測のための入力データを取得し、
学習により生成した第1モデルの特徴量空間の分布、及び、前記第1モデルと所定の関係を有し、学習により生成した第2モデルの特徴量空間の分布に基づき取得した、擬似的な前記第2モデルの特徴量空間の分布の移動距離を、前記特徴量空間の位置と対応付けて記憶する記憶部を参照し、前記特徴量空間における入力データの位置に対応付けられた前記移動距離を取得し、
取得した前記移動距離に基づいて、前記第1モデル、又は、前記第2モデルの少なくとも1つのモデルを用いた予測を行い、
予測結果を出力する
処理をコンピュータが行う
情報処理方法。
【請求項2】
取得した前記移動距離が所定の閾値以上の場合、前記第1モデルを用いて予測を行い、
取得した前記移動距離が所定の閾値未満の場合、前記移動距離に応じた重み付けにより、前記第1モデルを用いた予測と、前記第2モデルを用いた予測とに基づく予測結果を主力する
請求項1に記載の情報処理方法。
【請求項3】
前記擬似的な前記第2モデルの特徴量空間の分布は、前記第1モデルの特徴量空間の分布を入力とし、前記第2モデルの特徴量空間の分布を目標とするノーマライジングフローを実行することより、取得する
請求項1又は請求項2に記載の情報処理方法。
【請求項4】
前記移動距離は、輸送最適化手法により求めたものである
請求項1又は請求項2に記載の情報処理方法。
【請求項5】
前記第1モデルは、前記第2モデルを含む複数のモデルを連合学習することにより得られるモデルである
請求項1又は請求項2に記載の情報処理方法。
【請求項6】
学習により生成した第1モデルの特徴量空間の分布、及び、前記第1モデルと所定の関係を有し、学習により生成した第2モデルの特徴量空間の分布に基づき取得した、擬似的な前記第2モデルの特徴量空間の分布の移動距離を、前記特徴量空間の位置と対応付けて記憶する記憶部に、アクセス可能なコンピュータに、
予測のための入力データを取得し、
前記記憶部を参照し、前記特徴量空間における入力データの位置に対応付けられた前記移動距離を取得し、
取得した前記移動距離に基づいて、前記第1モデル、又は、前記第2モデルの少なくとも1つのモデルを用いた予測を行い、
予測結果を出力する
処理を実行させる情報処理プログラム。
【請求項7】
予測のための入力データを取得する第1取得部と、
学習により生成した第1モデルの特徴量空間の分布、及び、前記第1モデルと所定の関係を有し、学習により生成した第2モデルの特徴量空間の分布に基づき取得した、擬似的な前記第2モデルの特徴量空間の分布の移動距離を、前記特徴量空間の位置と対応付けて記憶する記憶部を参照し、前記特徴量空間における入力データの位置に対応付けられた前記移動距離を取得する第2取得部と、
取得した前記移動距離に基づいて、前記第1モデル、又は、前記第2モデルの少なくとも1つのモデルを用いた予測を行う予測部と
予測結果を出力する出力部と
を備える情報処理装置。
【請求項8】
学習により生成した第1モデル、及び、前記第1モデルと所定の関係を有し、学習により生成した第2モデルのそれぞれの特徴量空間の分布を取得し、
前記第1モデルの特徴量空間の分布を入力とし、前記第2モデルの特徴量空間の分布を目標とするノーマライジングフローを実行し、
ノーマライジングフローより擬似的な前記第2モデルの特徴量空間の分布を取得し、
輸送最適化手法より、前記第1モデルの特徴量空間の分布と、前記擬似的な前記第2モデルの特徴量空間の分布との移動距離を算出し、
算出した前記移動距離を特徴量空間の位置と対応付けて出力する
情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の学習モデルを用いて予測を行う情報処理方法、情報処理プログラム、及び情報処理装置に関する。
【背景技術】
【0002】
機械学習モデル(以下、単に「学習モデル」という。)による予測が行われている。学習モデルの性能を向上させる手法として、再学習、アンサンブル学習等がある。また、個人情報等が含むため、複数の組織がそれぞれ有するデータセットを1箇所に集約して学習できない場合に、データセットを集約することなく学習を行う連合学習がある。これらの手法においては、複数の学習モデルから適切なものを選択、あるいは適切に組み合わせることで、全体の精度が向上する。
【0003】
例えば、連合学習では、複数組織の学習モデルのパラメータや更新情報のみを共有し、統合した学習モデルを学習(連合学習)することで、機密性の高いデータを共有することなく高精度な学習モデルを学習することが可能である(例えば、特許文献1の図6等)。しかしながら、少数の組織のみが保有している範囲のデータについては、統合した学習モデル(グローバルモデル)では、適切な結果が得られない可能性がある。このような場合、組織が有する学習モデル(ローカルモデル)のみを用いる、又は、グローバルモデルとローカルモデルとを用い、両モデルの出力を合成することが望ましい。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2022-78973号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明はこのような状況に鑑みてなされたものである。その目的は、複数の学習モデルを使い分けて予測を行う情報処理方法、情報処理プログラム、及び情報処理装置を提供することである。
【課題を解決するための手段】
【0006】
本願の一態様に係る情報処理方法は、予測のための入力データを取得し、学習により生成した第1モデルの特徴量空間の分布、及び、前記第1モデルと所定の関係を有し、学習により生成した第2モデルの特徴量空間の分布に基づき取得した、擬似的な前記第2モデルの特徴量空間の分布の移動距離を、前記特徴量空間の位置と対応付けて記憶する記憶部を参照し、前記特徴量空間における入力データの位置に対応付けられた前記移動距離を取得し、取得した前記移動距離に基づいて、前記第1モデル、又は、前記第2モデルの少なくとも1つのモデルを用いた予測を行い、予測結果を出力する処理をコンピュータが行う。
【発明の効果】
【0007】
本願の一態様にあっては、複数の学習モデルを使い分けて予測を行うことが可能となる。
【図面の簡単な説明】
【0008】
図1】情報処理システムの構成例を示す説明図である。
図2】情報処理装置のハードウェア構成例を示すブロック図である。
図3】ユーザ端末のハードウェア構成例を示すブロック図である。
図4】特徴量空間における特徴量の分布例を示す説明図である。
図5】特徴量空間における移動距離の例を示す説明図である。
図6】準備処理の手順例を示すフローチャートである。
図7】運用処理の手順例を示すフローチャートである。
図8】学習モデル利用処理の手順例を示すフローチャートである。
図9】第1モデル及び第2モデルの特徴量空間の例を示す説明図である。
図10】移動距離を示した第1モデルの特徴量空間の例を示す説明図である。
図11】連合学習の例を示す説明図である。
図12】結果表示画面の例を示す説明図である。
図13】再学習前後の特徴量空間の分布例を示す説明図である。
図14】入力データが特徴量空間の分布において、どこに位置したか示す説明図である。
【発明を実施するための形態】
【0009】
(実施の形態1)
以下実施の形態を、図面を参照して説明する。図1は情報処理システムの構成例を示す説明図である。情報処理システム100は情報処理装置1及びユーザ端末2を含む。情報処理装置1及びユーザ端末2はネットワークNにより、互いに通信可能に接続されている。図1において、ユーザ端末2を2台記載しているが、1台でもよいし3台以上でもよい。
【0010】
情報処理装置1はサーバコンピュータ、ワークステーション、PC(Personal Computer)等で構成する。また、情報処理装置1を複数のコンピュータからなるマルチコンピュータ、ソフトウェアによって仮想的に構築された仮想マシン又は量子コンピュータで構成しても良い。さらに、情報処理装置1の機能をクラウドサービスで実現してもよい。ユーザ端末2はノートパソコン、タブレットコンピュータ、スマートフォン等で構成する。
【0011】
図2は情報処理装置のハードウェア構成例を示すブロック図である。情報処理装置1は制御部11、主記憶部12、補助記憶部13、通信部15及び読み取り部16を含む。制御部11、主記憶部12、補助記憶部13、通信部15及び読み取り部16はバスBにより接続されている。
【0012】
制御部11は、一又は複数のCPU(Central Processing Unit)、MPU(Micro-Processing Unit)、GPU(Graphics Processing Unit)等の演算処理装置を有する。制御部11は、補助記憶部13に記憶された制御プログラム1P(プログラム、プログラム製品)を読み出して実行することにより、情報処理装置1に係る種々の情報処理、制御処理等を行い、第1取得部、第2取得部、予測部及び出力部等の機能部を実現する。
【0013】
主記憶部12は、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)、フラッシュメモリ等である。主記憶部12は主として制御部11が演算処理を実行するために必要なデータを一時的に記憶する。
【0014】
補助記憶部13はハードディスク又はSSD(Solid State Drive)等であり、制御部11が処理を実行するために必要な制御プログラム1Pや各種DB(Database)を記憶する。補助記憶部13は、特徴量空間DB131及び移動距離DB132、並びに、第1モデル141及び第2モデル142を記憶する。補助記憶部13は情報処理装置1と別体で外部接続された外部記憶装置であってもよい。補助記憶部13に記憶する各種DB等を、情報処理装置1とは異なるデータベースサーバやクラウドストレージに記憶してもよい。
【0015】
通信部15はネットワークNを介して、ユーザ端末2と通信を行う。また、制御部11が通信部15を用い、ネットワークN等を介して他のコンピュータから制御プログラム1Pをダウンロードし、補助記憶部13に記憶してもよい。
【0016】
読み取り部16はCD(Compact Disc)-ROM及びDVD(Digital Versatile Disc)-ROMを含む可搬型記憶媒体1aを読み取る。制御部11が読み取り部16を介して、制御プログラム1Pを可搬型記憶媒体1aより読み取り、補助記憶部13に記憶してもよい。また、半導体メモリ1bから、制御部11が制御プログラム1Pを読み込んでもよい。
【0017】
図3はユーザ端末のハードウェア構成例を示すブロック図である。ユーザ端末2は制御部21、主記憶部22、補助記憶部23、入力部24、表示部25及び通信部26を含む。各構成はバスBで接続されている。
【0018】
制御部21は、一又は複数のCPU、MPU、GPU等の演算処理装置を有する。制御部21は、補助記憶部23に記憶された制御プログラム2P(プログラム、プログラム製品)を読み出して実行することにより、種々の機能を提供する。
【0019】
主記憶部22は、SRAM、DRAM、フラッシュメモリ等である。主記憶部22は主として制御部21が演算処理を実行するために必要なデータを一時的に記憶する。
【0020】
補助記憶部23はハードディスク又はSSD等であり、制御部21が処理を実行するために必要な各種データを記憶する。補助記憶部23はユーザ端末2に接続された外部記憶装置であってもよい。補助記憶部23に記憶する各種DB等を、データベースサーバやクラウドストレージに記憶してもよい。
【0021】
入力部24はキーボードやマウスである。表示部25は液晶表示パネル等を含む。表示部25は情報処理装置1が出力した予測結果などを表示する。また、入力部24と表示部25とを一体化し、タッチパネルディスプレイを構成してもよい。なお、ユーザ端末2は外部の表示装置に表示を行ってもよい。
【0022】
通信部26はネットワークNを介して、情報処理装置1と通信を行う。また、制御部21が通信部26を用い、ネットワークN等を介して他のコンピュータから制御プログラム2Pをダウンロードし、補助記憶部23に記憶してもよい。
【0023】
(特徴量空間)
特徴量空間について説明する。本明細書において、特徴量は各学習モデルの特徴を表現する数値の組である。特徴量は例えば、各学習モデルの中間層における各ノードの出力値の組である。特徴量空間は、特徴量を点の座標として、座標空間に表現したものであり、複数の入力それぞれに対応した点を、当該座標空間に描いたものである。特徴量は複数の数値を一組にしたものであるから、特徴量空間は多次元の空間となる。特徴量の取得は、学習モデルを生成後や再学習後に、訓練データ等を用いて取得する。以下、特徴量空間に対する処理について図を用いる。3次元以上の空間を図示するのは困難であるため、以下の説明において、特徴量空間の次元が3次元以上の場合、次元圧縮又は次元削減を用いて、特徴空間の次元を2次元まで下げた平面を用いる。説明のわかり易さの観点から、2次元まで下げた平面も特徴量空間と呼ぶ。なお、次元圧縮又は次元削減の技術は公知であるから、本明細書においては説明を省略する。
【0024】
図4は特徴量空間における特徴量の分布例を示す説明図である。図4の学習モデルは企業に関する予測を行うモデルである。企業に関する分析では、同一業種の企業同士では似通った結果が得られるのが一般的である。そのため、図4では、入力データの対象となった企業の業種ごとの分布を示している。図4Aは第1モデル141の特徴量空間の例である。図4Bは第2モデル142の特徴量空間の例である。図4に示す例では、業種Cの企業についての予測に関しては、図4Aに示す特徴量空間を有する第1モデル141を用いることが望ましい。図4Bに示す特徴量空間において、業種Cに対する分布が見受けられないことから、業種Cについての学習は不十分であることが読み取れる。したがって、図4Bに示す特徴量空間を有する第2モデル142では、業種Cについて、正確な予測は期待できないからである。逆に業種Dについては、第2モデル142の利用、又は、第1モデル141及び第2モデル142をアンサンブルしての利用が望ましいことを、図4より読み取ることが可能である。このように、入力データについて、特徴量空間における分布は、複数の学習モデルを利用可能な場合において、入力したデータに適した学習モデルの選択に利用可能である。企業における業種という人でも行えるグループ分けでは、業種毎の学習モデルを用意しておけば、本明細書における手法を利用するまでもない。しかし、利用可能な学習モデルが複数ある場合、各モデルそれぞれの特徴や特性は必ずしも明確ではなく、入力データそれぞれに適した学習モデルを人が選択することは困難であるため、本明細書における手法が有効となる。図4においては、分かりやすさのために、特徴量空間上での各業務の位置を、図4A図4Bとでほぼ同じような位置として描いている。しかし、本来は図4のような状態とはならないため、単純な座標上の観察では不十分である。本明細書では、ノーマライジングフローを用いることにより、全体の移動を吸収し、特徴量空間同士の違いを的確に観察可能となる。
【0025】
(モデルの選択手順)
特徴量空間を用いたモデルの選択について説明する。モデルの選択は次の3つの手順となる。手順1はノーマライジングフローの実行である。手順2は輸送最適化手法よる移動距離の算出である。手順3は入力データの分布の位置に基づく、モデルの選択である。手順1及び2は準備段階の処理であり、手順3は運用段階の処理である。
【0026】
(ノーマライジングフロー)
ノーマライジングフロー(Normalizing flow)は、変分推論手法の1つである。ノーマライジングフローは、ガウス分布等の単純な確率分布q(z)に従う確率変数zに対して、非線形変換を重ねることで複雑な分布qk(zk)を得ようというアイデアである。本実施の形態においては、第1モデル141の特徴量空間の分布を入力とし、第2モデル142の特徴量空間の分布を目標として、ノーマライジングフローを実行し、擬似的な第2モデルの特徴量空間の分布を得る。擬似的な第2モデルの特徴量空間の分布は、第1モデル141からノーマライジングフローによって第2モデル142に近づけた特徴量空間の分布である。ここでのノーマライジングフローでは、第2モデル142の特徴量空間において、第1モデル141の特徴量空間においても存在する分布に対しては変化が少なく、第2モデル142の特徴量空間における固有の分布に対しては、大きく変化させて分布の形を合わせるという性質を持つ変換によって、第1モデル141の特徴量空間の分布から擬似的な第2モデルの特徴量空間の分布が生成される。
【0027】
(輸送最適化手法よる移動距離の算出)
次に、第1モデル141の特徴量空間の分布と、擬似的な第2モデルの特徴量空間の分布との移動距離を、輸送最適化手法を用いて算出する。輸送最適化手法は確率分布を比較する手法として利用できることが知られている。一方の確率分布の山を移動させて他方の確率分布に一致させる際にかかるコストは、輸送最適化手法よる輸送コストとして求めることが可能である。擬似的な第2モデルの特徴量空間の分布は、第1モデル141の特徴量空間の分布からノーマライジングフローにて得たものであるから、両分布の対応関係がわかっている。その対応関係を元に、第1モデル141の特徴量空間の分布から擬似的な第2モデルの特徴量空間の分布への移動距離を、輸送最適化手法により算出することが可能である。なお、疑似的な第2モデルは疑似的な第1モデルとしてもよい。第1モデル141の潜在表現から第2モデル142の潜在表現への変換を学習し(変換モデル)、第2モデルの潜在表現を、変換モデルを用いて逆変換することで、疑似的な第2モデルの潜在表現を取得し、第2モデルと疑似的な第2モデルの移動距離を用いてもよい。
【0028】
算出した移動距離の大小により、次のことがわかる。特徴量空間において、移動距離が小さいことは、第2モデル142が第1モデル141とあまり違いがないこと、又は第1モデル141にはない第2モデル142の固有の範囲を示している。特徴量空間において、移動距離が大きいことは、第2モデル142では対応できない第1モデル141の固有の範囲を示している。図5は特徴量空間における移動距離の例を示す説明図である。図5の例では業種Aの移動距離が+1であり、値が小さいとすると、第2モデル142の利用が適した範囲である。図5においてハッチングがされている範囲は、図4Aで示した業種Cに対応する範囲であり、移動距離が+10となっている。+10は値が大きいとする、第1モデルの利用が適した範囲である。このように、第1モデル141の特徴量空間の分布を擬似的な第2モデル142の特徴量空間の分布へ変換するための移動距離は、第1モデル141又は第2モデル142の何れかを利用するかを選択する際の指標となる。
【0029】
(モデルの選択)
以上の処理を訓練データやテストデータを用いて行った後、運用段階において、モデルの選択を行う。入力データを第1モデル141に入力し、特徴量空間のどの範囲に位置するか検出する。特徴量空間での位置が判明したら、その位置に対応する移動距離を取得する。当該位置に対応する移動距離が求まっていない場合は、近傍の位置の移動距離から補完して求める。移動距離の大小にて第1モデル141を用いるか、第2モデル142を用いるか選択する。第1モデル141の出力と第2モデル142の出力とを合成してもよい。移動距離の大小は、例えば、移動距離の平均値や、移動距離の分布等により求めた閾値に基づき判定する。なお、移動距離と閾値との差分から、第1モデル141又は第2モデル142の一方のみを用いるか、第1モデル141の出力と第2モデル142の出力とを合成するかを判定してもよい。また、合成する場合の重み付け差分より決定してもよい。
【0030】
情報処理システム100が行う情報処理について、フローチャートを用いて説明する。図6は準備処理の手順例を示すフローチャートである。準備処理は第1モデル141及び第2モデル142の運用が開始する前に行う処理である。第1モデル141及び第2モデル142は生成済みであるとする。情報処理装置1の制御部11は特徴量空間の分布を作成する(ステップS1)。制御部11は第1モデル141及び第2モデル142それぞれにおいて、次の処理を行う。制御部11は特徴量空間の作成に用いる中間層を特定する。制御部11は、モデルの生成時に用いた訓練データ又はテストデータを入力し、特定した中間層の出力を収集し、分布を生成する。制御部11は分布を特徴量空間DB131に記憶する。制御部11は第1モデル141の特徴量空間の分布と、第2モデル142の特徴量空間の分布とから、擬似的第2モデルの特徴量空間の分布を作成する(ステップS2)。制御部11は、第1モデル141の特徴量空間の分布を起点として、第2モデル142の特徴量空間の分布を目標とする変換関数を、ノーマライジングフローによって求める。第1モデル141の特徴量空間の分布に対して、求めた変換関数を適用して生成されるのが、擬似的第2モデルの特徴量空間の分布である。制御部11は、第1モデル141の特徴量空間の分布における各点の移動距離を算出する(ステップS3)。ノーマライジングフローにて得られる変換関数は可逆であるので、制御部11は、第1モデル141の特徴量空間の分布に対して、ノーマライジングフローの逆変換を行う。制御部11は輸送最適化手法により、逆変換前の点と変換後の点との距離の合計が最小となるように、逆変換前後の点の対応付けを行う。輸送最適化の解法は、例えばシンクホーン(Sinkhorn)アルゴリズムを用いる。制御部11は、第1モデル141の特徴量空間の分布に対して、クラスタリングを行い、各クラスタに含まれる点の移動距離に基づいて、各クラスタの移動距離を算出する。各クラスタの移動距離は、含まれる点の移動距離の平均値、中央値又は最頻値等とする。制御部11は各クラスタの移動距離、又は、各点の移動距離に基づいて、移動距離の大小を判断する閾値を算出する(ステップS4)。制御部11は各クラスタの範囲と移動距離とを対応付けて移動距離DB132に、閾値を補助記憶部13に記憶し(ステップS5)、処理を終了する。
【0031】
図7は運用処理の手順例を示すフローチャートである。運用処理は、第1モデル141又は/及び第2モデル142の用いた業務を行う際の処理である。ユーザはユーザ端末2の入力部24を用いて入力データを入力する。または、ユーザは入力部24を用いてユーザ端末2を操作し、他のコンピュータから入力データを取得する。ユーザ端末2の制御部21は、ユーザの操作に基づき、入力データを受け付ける(ステップS21)。制御部21は入力データを情報処理装置1へ送信する(ステップS22)。情報処理装置1の制御部11は入力データを受信する(ステップS23)。制御部11は入力データに対応する移動距離を次の手順で取得する(ステップS24)。制御部11入力データを第1モデル141に入力し、特徴量空間に対応する中間層の出力値を取得する。制御部11は出力値に対応する特徴量空間の座標値を求める。制御部11は当該座標値の点に対応する移動距離を取得する。制御部11は当該点が特徴量空間の特定のクラスタに属すると判定した場合、当該点が属するクラスタの移動距離を当該点の移動距離として取得する。当該点が特定のクラスタには属しないと判定した場合、当該点の近傍に位置する他の点やクラスタの移動距離に基づいて、当該点の移動距離を求める。制御部11は学習モデル利用処理を行う(ステップS25)。
【0032】
図8は学習モデル利用処理の手順例を示すフローチャートである。制御部11は移動距離が閾値未満であるか否かを判定する(ステップS41)。移動距離が閾値以上であると判定した場合(ステップS41でNO)、利用するモデルとして第1モデル141を選択する(ステップS42)。制御部11は第1モデル141を選択した旨を主記憶部12等に設けた一時記憶領域に記憶する。制御部11は入力データを第1モデル141へ入力する(ステップS43)。制御部11は第1モデル141から出力値を取得する(ステップS44)。制御部11は一時記憶領域に記憶した利用モデルの情報と、第1モデル141の出力値とを返却する(ステップS45)。制御部11は、移動距離が閾値未満であると判定した場合(ステップS41でYES)、利用するモデルとして第2モデル142を選択する(ステップS46)。制御部11は第2モデル142を選択した旨を主記憶部12等に設けた一時記憶領域に記憶する。制御部11は入力データを第2モデル142へ入力する(ステップS47)。制御部11は第2モデル142から出力値を取得する(ステップS48)。制御部11は一時記憶領域に記憶した利用モデルの情報と、第2モデル142の出力値とを返却する(ステップS45)。制御部11は処理を呼び出し元へ戻す。なお、移動距離が閾値未満である場合、第1モデル141と第2モデル142の精度は同程度であると推定されるので、制御部11は第2モデル142ではなく、第1モデル141を選択してもよい。
【0033】
図7へ戻り、制御部11は結果をユーザ端末2へ送信する(ステップS26)。結果には出力値と利用したモデルの情報を含む。ユーザ端末2の制御部21は結果を受信する(ステップS27)。制御部21は結果を表示部25に表示する(ステップS28)。制御部21は処理を終了する。
【0034】
上述の処理内容を図も用いて補足する。図9は第1モデル及び第2モデルの特徴量空間の例を示す説明図である。第1モデル141の特徴量空間の分布は、3つのクラスタD11、D12、D13を有する。第2モデル142の特徴量空間の分布は、2つのクラスタD21、D22を有する。移動距離をノーマライジングフローの逆変換にて算出することを考えると、図9から次のことが読み取れる。図9において、クラスタD21を回転すればクラスタD11と重なり、クラスタD22を同様に回転すればクラスタD12とは重なるであろうことが判断できる。クラスタD13は対応するクラスタがないため、クラスタD21及びD22の一部を移動させなくてはならないと判断できる。すなわち、クラスタD11及びD12の移動距離は相対的に小さく、クラスタD13の移動距離は相対的に大きいと予想される。
【0035】
図10は移動距離を示した第1モデルの特徴量空間の例を示す説明図である。クラスタD11の移動距離は105.32、クラスタD12の移動距離は141.25、クラスタD13の移動距離は199.01となっている。例えば、閾値が150であったとすると、クラスタD11又はクラスタD12に含まれる点に対応する入力データは、第1モデル141又は第2モデル142の何れを選択しても、出力値に顕著な差は現れないと推測される。クラスタD13に含まれる点に対応する入力データは、第2モデル142ではなく、第1モデル141に入力すべきであることが推測される。
【0036】
本実施の形態は、以下の効果を奏する。入力データが、特徴量空間において、どの範囲に位置するかを求めることにより、複数の学習モデルから利用するのに適したモデルを選択可能となる。
【0037】
以上の説明において、ノーマライジングフロー、輸送最適化手法より移動距離の算出では、第1モデル141を起点としたが、第2モデル142を起点としてもよい。すなわち、第2モデル142の特徴量空間の分布を入力とし、第1モデル141の特徴量空間の分布を目標として、ノーマライジングフローを実行し、擬似的な第1モデルの特徴量空間の分布を得てもよい。そして、第2モデル142の特徴量空間の分布と、擬似的な第1モデルの特徴量空間の分布との距離を、輸送最適化手法を用いて算出してもよい。この場合、運用時には、入力データが第2モデル142の特徴量空間において、どの位置に対応するかにより、第2モデル142を利用するか、第1モデル141を利用するかを判定することとなる。
【0038】
学習モデルは第1モデル141と第2モデル142との2つのモデルとしたが,それに限らない。3つ以上のモデルについて、上記の手法を用いてもよい。
【0039】
(実施の形態2)
本実施の形態は、実施の形態1をより具体的なモデルに適用する形態である。本実施の形態では連合学習に適用する。連合学習は複数組織、例えば複数企業が、入力データを共有することなく学習が行える仕組みである。
【0040】
連合学習では複数組織の学習モデルのパラメータや更新情報のみを共有し、統合したモデルを学習(連合学習)することで、機密性の高いデータ(個人情報、機微情報)を共有することなく高精度なモデルを学習可能である。以下の説明において、連合学習して得た学習モデルを「グローバルモデル」といい、グローバルモデルの基となる各組織が備える学習モデルを「ローカルモデル」という。
【0041】
連合学習は、より多くの訓練データによって機械学習を行えば、学習モデルの精度が向上するとの考え方に基づく。しかし、訓練データの偏りに起因して、本来、精度が高いグローバルモデルが、特定の入力データに対しては、ローカルモデルよりも精度が低くなることが想定される。例えば、金融機関において、顧客企業の売上高の予測を学習モデルによって行うことを想定する。連合学習に大手銀行及び地方銀行が参加する場合、大手銀行の方が、地方銀行よりも顧客企業の数は多く、訓練データも大手銀行が多く有していると考えられる。しかし、大手銀行が取引を行わない企業を、地方銀行が顧客としていることは十分、想定される。このような場合、連合学習により得たグローバルモデルでは、地方銀行の一部の顧客企業に対しては、ローカルモデルより、精度が下がる可能性がある。
【0042】
図11は連合学習の例を示す説明図である。図11の学習モデルはオートエンコーダである。学習モデルの特徴量空間はエンコーダの出力値により作成する。図11の右端の図が特徴量空間の分布図を示している。図11では、連合学習に参加する企業1(大企業)は、顧客企業として業種Dの企業は有していないか、他の業種よりも極めて少ないため、特徴量空間の分布図では業種Dに対応するクラスタは現れていない。企業2(中小企業)は、顧客企業として業種Cの企業は有していないか、他の業種よりも極めて少ないため、特徴量空間の分布図では業種Cに対応するクラスタは現れていない。企業2(中小企業)は業種Dの顧客を有しているため、特徴量空間の分布図に業種Dに対応するクラスタが現れている。企業1、企業2を含む複数企業のローカルモデルに基づき、連合学習によって得たグローバルモデルを企業Xが利用する。この場合、グローバルモデルの特徴量空間の分布図は、業種Dにクラスタの大きさが小さくなっており、業種Dの考慮が薄くなっている。そのため、グローバルモデルを用いた業種Dの売上予測は他の業種に比べ、精度が低いことが想定される。このような場合、業種Dについての予測は、ローカルモデルを用いて行うことが望ましい。
【0043】
図12は結果表示画面の例を示す説明図である。結果表示画面d01は、入力データd011、出力データd012、及びモデル選択結果d013を含む。入力データd011は学習モデルへ入力したデータである。出力データd012は学習モデルの出力に基づく予測結果である、モデル選択結果d013は予測にあたり選択した学習モデルを示す。図12では1件の入力データに対する結果のみを示しているが、一覧表形式で複数の入力データに対する結果を表示するようにしてもよい。
【0044】
本実施の形態において、グローバルモデルを第1モデル141とし、ローカルモデルを第2モデル142として、実施の形態1で述べた学習モデルの選択を行えば、適切な学習モデルによる予測が可能となる。図11の例であれば、企業2では、入力データがどの業種に属する企業のデータであるかをユーザ確認せずとも、入力データの第1モデル141の特徴量空間における位置と、当該位置における移動距離に基づき、第2モデル142、すなわち、ローカルモデルの利用が適していると判定される。
【0045】
以上のように、本実施の形態においては、連合学習により得たグローバルモデルと、グローバルモデルの基となるローカルモデルを適切に使い分けることで、グローバルモデルで考慮が薄い範囲のデータに対しては、ローカルモデルの利用を選択する。グローバルモデルの弱点をローカルモデルにより補うことができるので、全体として精度が向上すると期待される。
【0046】
(実施の形態3)
本実施の形態は、実施の形態1をより具体的なモデルに適用する形態である。本実施の形態では、再学習の評価に用いる。本実施の形態において、第1モデル141を再学習前の学習モデルとし、第2モデル142を再学習後の学習モデルとする。図13は再学習前後の特徴量空間の分布例を示す説明図である。図13Aは適切な再学習を行えた例である。再学習前の第1モデル141は業種Dについては、適切な推定が行えなかったところ、再学習によって得た第2モデル142は、業種Dについて適切な推定が行えるようになっていることが分かる。
【0047】
図13Bは適切な再学習が行えなかった例である。再学習前の第1モデル141は業種Cについては適切な推定が行えなかったところ、再学習後の第2モデル142は業種Cについて適切な推定が行えるようになっている。しかし、業種Dについては分布の大きさが小さくなっており、推定の精度が低下している可能性がある。
【0048】
本実施の形態においては、再学習前後のモデルを、特徴量空間を用いて,比較することで,再学習の効果を視覚的に確認することが可能となる。
【0049】
(実施の形態4)
本実施の形態は、特徴量空間を用いて異常データを検知する形態に関する。図14は入力データが特徴量空間の分布において、どこに位置したか示す説明図である。図14では5つの入力データに対応する5つの点P1からP5が示されている。点P1は、業種B又は業種Cに属する入力データに対応しており、異常データではない可能性もあると考える。点P2から点P4は、業種AからCの何れでもない新たな業種Dに属する入力データが扱われるようなったことが起因している場合で、再学習を行う必要が有ることを示す。点P5は、対応する入力データが異常データである可能性がある。このような点が観測された場合、人が入力データを点検する。
【0050】
本実施の形態においては、異常データの検知が可能となる。また、再学習の必要性の検討が可能となる。
【0051】
各実施の形態で記載されている技術的特徴(構成要件)はお互いに組み合わせ可能であり、組み合わせすることにより、新しい技術的特徴を形成することができる。
今回開示された実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
また、特許請求の範囲には他の2以上のクレームを引用するクレームを記載する形式(マルチクレーム形式)を用いているが、これに限るものではない。マルチクレームを少なくとも一つ引用するマルチクレーム(マルチマルチクレーム)を記載する形式を用いて記載しても良い。
【符号の説明】
【0052】
100 :情報処理システム
1 :情報処理装置
11 :制御部
12 :主記憶部
13 :補助記憶部
131 :特徴量空間DB
132 :移動距離DB
141 :第1モデル
142 :第2モデル
14 :補助記憶部
15 :通信部
16 :読み取り部
1P :制御プログラム
1a :可搬型記憶媒体
1b :半導体メモリ
2 :ユーザ端末
2P :制御プログラム
21 :制御部
22 :主記憶部
23 :補助記憶部
24 :入力部
25 :表示部
26 :通信部
B :バス
N :ネットワーク
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14