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

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

▶ 株式会社日立製作所の特許一覧

<>
  • 特開-検索支援装置、及び検索支援方法 図1
  • 特開-検索支援装置、及び検索支援方法 図2
  • 特開-検索支援装置、及び検索支援方法 図3
  • 特開-検索支援装置、及び検索支援方法 図4
  • 特開-検索支援装置、及び検索支援方法 図5
  • 特開-検索支援装置、及び検索支援方法 図6
  • 特開-検索支援装置、及び検索支援方法 図7
  • 特開-検索支援装置、及び検索支援方法 図8
  • 特開-検索支援装置、及び検索支援方法 図9
  • 特開-検索支援装置、及び検索支援方法 図10
  • 特開-検索支援装置、及び検索支援方法 図11
  • 特開-検索支援装置、及び検索支援方法 図12
  • 特開-検索支援装置、及び検索支援方法 図13
  • 特開-検索支援装置、及び検索支援方法 図14
  • 特開-検索支援装置、及び検索支援方法 図15
  • 特開-検索支援装置、及び検索支援方法 図16
  • 特開-検索支援装置、及び検索支援方法 図17
  • 特開-検索支援装置、及び検索支援方法 図18
  • 特開-検索支援装置、及び検索支援方法 図19
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023154167
(43)【公開日】2023-10-19
(54)【発明の名称】検索支援装置、及び検索支援方法
(51)【国際特許分類】
   G06F 16/907 20190101AFI20231012BHJP
【FI】
G06F16/907
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2022063302
(22)【出願日】2022-04-06
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000176
【氏名又は名称】弁理士法人一色国際特許事務所
(72)【発明者】
【氏名】コンフォルトラ,ジャダ
(72)【発明者】
【氏名】高田 実佳
(72)【発明者】
【氏名】樫山 俊彦
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175HA02
5B175HB03
(57)【要約】      (修正有)
【課題】特徴量の影響度を表すパラメータに関する検索を高速かつ精度良く行う検索支援装置及び検索支援方法を提供する。
【解決手段】検索支援装置が行う処理は、学習フェーズs100において、学習済みモデルから出力される出力データに対する学習済みモデルにおける各特徴量の影響度を示すデータであるSHAPデータを少なくとも1つ以上算出し、SHAPデータを圧縮したデータである圧縮SHAPデータを、各SHAPデータについて生成して記憶する。学習フェーズs100において、学習済みモデルに対して入力データを入力することにより学習済みモデルから出力された出力データに対するSHAPデータである検証対象SHAPデータを算出し、算出した各圧縮SHAPデータと、算出した検証対象SHAPデータとの類似度をそれぞれ算出し、検証対象SHAPデータとの類似度が所定の条件を満たす圧縮SHAPデータを特定する。
【選択図】図9
【特許請求の範囲】
【請求項1】
プロセッサ及びメモリを備え、
前記プロセッサが、
学習済みモデルから出力される出力データに対する、前記学習済みモデルにおける各特徴量の影響度を示すデータであるSHAPデータを少なくとも1つ以上算出する処理と、
前記SHAPデータを圧縮したデータである圧縮SHAPデータを、各前記SHAPデータについて生成して前記メモリに記憶する処理と、
前記学習済みモデルに対して入力データを入力することにより前記学習済みモデルから出力された出力データに対するSHAPデータである検証対象SHAPデータを算出する処理と、
前記算出した各圧縮SHAPデータと、前記算出した検証対象SHAPデータとの類似度をそれぞれ算出し、前記検証対象SHAPデータとの類似度が所定の条件を満たす前記圧縮SHAPデータを特定する処理と
を実行する、検索支援装置。
【請求項2】
前記プロセッサが、
前記算出した各SHAPデータの履歴に基づき、前記SHAPデータに係る特徴量のうち圧縮対象の特徴量を特定することにより、前記圧縮SHAPデータを生成する、
請求項1に記載の検索支援装置。
【請求項3】
前記プロセッサが、
前記算出した各SHAPデータの履歴に基づき、前記SHAPデータにおける影響度に関する閾値を特定し、前記SHAPデータのうち前記閾値以下の影響度に係るデータを、前記圧縮対象の特徴量のデータとして特定し、特定した特徴量のデータを前記SHAPデータから除去することにより、前記圧縮SHAPデータを生成する、
請求項2に記載の検索支援装置。
【請求項4】
前記プロセッサが、
前記検索支援装置が備えるハードウェアに関する情報に基づき、前記SHAPデータに係る特徴量のうち圧縮対象の特徴量を特定することにより、前記圧縮SHAPデータを生成する、
請求項1に記載の検索支援装置。
【請求項5】
前記プロセッサが、
前記検索支援装置が備えるハードウェアに関する情報に基づき、前記SHAPデータの圧縮率を決定し、決定した圧縮率に基づき、前記圧縮SHAPデータを生成する、
請求項4に記載の検索支援装置。
【請求項6】
前記プロセッサが、
ユーザから、前記SHAPデータに係る特徴量のうち圧縮対象外の特徴量の指定を受け付け、指定された圧縮対象外の特徴量のデータを有する前記圧縮SHAPデータを生成する、
請求項1に記載の検索支援装置。
【請求項7】
前記プロセッサが、
前記圧縮SHAPデータを、各特徴量の名称と、前記特徴量の値との組み合わせのデータとして生成する、
請求項1に記載の検索支援装置。
【請求項8】
前記プロセッサが、
前記類似度を算出する際に、前記圧縮SHAPデータ及び前記検証対象SHAPデータのいずれかのみに存在する特徴量を検出した場合には、当該特徴量が存在しない方のSHAPデータの当該特徴量の影響度の値を所定の基準値に設定することで、前記圧縮SHAPデータと前記検証対象SHAPデータとの類似度を算出する、
請求項1に記載の検索支援装置。
【請求項9】
前記算出した圧縮SHAPデータの情報を出力する出力装置を備える、
請求項1に記載の検索支援装置。
【請求項10】
前記圧縮対象外の特徴量の指定をユーザから受け付ける画面を表示する出力装置を備える、
請求項6に記載の検索支援装置。
【請求項11】
前記特定した圧縮SHAPデータに対応づけられる特徴量に関する情報を表示する出力装置を備える、
請求項1に記載の検索支援装置。
【請求項12】
情報処理装置が、
学習済みモデルから出力される出力データに対する、前記学習済みモデルにおける各特徴量の影響度を示すデータであるSHAPデータを少なくとも1つ以上算出する処理と、
前記SHAPデータを圧縮したデータである圧縮SHAPデータを、各前記SHAPデータについて生成して前記メモリに記憶する処理と、
前記学習済みモデルに対して入力データを入力することにより前記学習済みモデルから出力された出力データに対するSHAPデータである検証対象SHAPデータを算出する処理と、
前記算出した各圧縮SHAPデータと、前記算出した検証対象SHAPデータとの類似度をそれぞれ算出し、前記検証対象SHAPデータとの類似度が所定の条件を満たす前記圧縮SHAPデータを特定する処理と
を実行する、検索支援方法。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、検索支援装置、及び検索支援方法に関する。
【背景技術】
【0002】
機械学習の分野において、説明可能なAI(XAI:eXxplanable Artificial Intelligence)の利用が進んでいる。XAIは、AIモデル(学習済みモデル)によりデータを
出力するだけではなく、出力に至るまでのAIのプロセスを人間が理解可能とするためのAIである。
【0003】
XAIにおいては、各特徴量が出力データに影響を与えた影響度を示すシャープレイ値(Shapley Value)が用いられる。シャープレイ値の活用方法としては、例えば、ユーザ
がAIを用いて出力したあるデータについて、そのシャープレイ値から導かれる特徴量の影響度(以下、SHAP値(SHAP: SHapley Additive exPlanations)という)に類似す
る過去の他のSHAP値を検索することで、ユーザが、自身の出力データに関する解釈を行う。
【0004】
こうした背景から、特許文献1には、SHAP値の類似検索の方法が開示されている。また、特許文献2には、関連技術として、特徴ベクトルのパターン検索を高速化する手法が開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】米国特許出願公開第2021/117863号明細書
【特許文献2】米国特許出願公開第2019/012380号明細書
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、AIにおける特徴量の影響度を表すSHAP値は、本質的に様々な用途に用いられ得るAIに基づくデータであるという特性から、様々なデータ的特徴を有していることが多く、またそのデータ量も膨大となり得ることから、SHAP値の検索の速度及び精度を両立することは容易でないのが現状である。
【0007】
本発明は、このような現状に鑑みてなされたものであり、その目的は、特徴量の影響度を表すパラメータに関する検索を高速かつ精度良く行うことが可能な検索支援装置及び検索支援方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するための本発明の一つは、プロセッサ及びメモリを備え、前記プロセッサが、学習済みモデルから出力される出力データに対する、前記学習済みモデルにおける各特徴量の影響度を示すデータであるSHAPデータを少なくとも1つ以上算出する処理と、前記SHAPデータを圧縮したデータである圧縮SHAPデータを、各前記SHAPデータについて生成して前記メモリに記憶する処理と、前記学習済みモデルに対して入力データを入力することにより前記学習済みモデルから出力された出力データに対するSHAPデータである検証対象SHAPデータを算出する処理と、前記算出した各圧縮SHAPデータと、前記算出した検証対象SHAPデータとの類似度をそれぞれ算出し、前記検証対象SHAPデータとの類似度が所定の条件を満たす前記圧縮SHAPデータを特定する処理とを実行する、検索支援装置、である。
【発明の効果】
【0009】
本発明によれば、特徴量の影響度を表すパラメータに関する検索を高速かつ精度良く行うことができる。
上記した以外の構成及び効果等は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0010】
図1】本実施形態に係る検索支援装置が備えるハードウェアの構成及び検索支援装置1が有する機能の一例を示す図である。
図2】本実施形態のSHAP行列の一例を示す図である。
図3】圧縮SHAP行列の一例を示す図である。
図4】採用必須項目の一例を示す図である。
図5】SHAPグローバル統計の一例を示す図である。
図6】集計情報の一例を示す図である。
図7】ハードウェア情報の一例を示す図である。
図8】システム制約の一例を示す図である。
図9】検索支援装置が行う処理の概要を説明する図である。
図10】学習フェーズの概要を説明するフロー図である。
図11】閾値決定処理の詳細を説明するフロー図である。
図12】閾値決定処理により生成された修正SHAP行列の一例を示す図である。
図13】圧縮行列作成処理の詳細を説明するフロー図である。
図14】推論フェーズの一例を説明するフロー図である。
図15】類似度算出処理の詳細を説明するフロー図である。
図16】類似度算出処理における処理の一例を説明する図である。
図17】SHAP重要度関連情報入力画面の一例を示す図である。
図18】圧縮SHAP行列確認画面の一例を示す図である。
図19】類似レコード表示画面の一例を示す図である。
【発明を実施するための形態】
【0011】
本実施形態に係る検索支援装置及び検索支援方法について、図面を参照しつつ説明する。
【0012】
図1は、本実施形態に係る検索支援装置1が備えるハードウェアの構成及び検索支援装置1が有する機能の一例を示す図である。
【0013】
検索支援装置1は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)
、GPU(Graphics Processing Unit)、FPGA(Field-Programmable Gate Array)等のプロセッサ11と、ROM(Read Only Memory)、RAM(Random Access Memory)等の記憶装置であるメモリ12と、HDD(Hard Disk Drive)、SSD(Solid State Drive)などの記憶装置であるストレージ13と、NIC(Network Interface Card)、無線通信モジュール、USB(Universal Serial Interface)モジュール、又はシリアル通信モジュール等で構成される通信装置14と、マウスやキーボード等で構成される入力装置15と、液晶ディスプレイまたは有機EL(Electro-Luminescence)ディスプレイ等で構成される出力装置16とを備える。
【0014】
そして、検索支援装置1は、AIモデル生成部101、SHAP行列計算部103、SHAP重要度推定部105、圧縮SHAP行列生成部107、AIモデル推論部109、圧縮SHAP行列類似度計算部111、類似レコード抽出部113、及び入出力部115の各機能部を備える。
【0015】
AIモデル生成部101は、学習データを用いた機械学習を行うことで、学習済みモデ
ルを作成する。AIモデル生成部101は、入力データの種類は同じあるが出力データの種類が異なる、複数種類の学習済みモデルを作成する。なお、本実施形態では、学習済みモデルをAI(Artificial Intelligence)と称することがある。
【0016】
本実施形態の学習済みモデルは、ある患者の健康に関する属性情報(例えば、年齢、性別、検査データ等)を入力データとし、その患者の将来の健康状態(例えば、病気のリスク、介護状態となるリスク)を予測値として出力する(予測する)ものとする。そして、各学習済みモデルはそれぞれ異なる将来時点における患者の健康状態を予測値として出力するものとする。なお、このような学習済みモデルの入出力データは一例であり、本発明の範囲を限定する趣旨ではない。
【0017】
SHAP行列計算部103は、各学習済みモデルが出力値を出力した場合に、その出力値に対して影響を与えた各特徴量の影響度を、SHAP(SHapley Additive exPlanations)のアルゴリズムに基づき算出する。この影響度は、シャープレイ値(SHapley Value)に基づく値である。この影響度(以下、SHAP値という)の集合は、後述するSHAP行列300(以下、SHAP行列ともいう)として記憶される。
【0018】
SHAP重要度推定部105は、SHAP行列における各SHAP値の重要性を推定する。
【0019】
圧縮SHAP行列生成部107は、SHAP重要度推定部105での推定結果に基づき、SHAP行列を圧縮したデータである圧縮SHAPデータ(後述する圧縮SHAP行列400)を作成する。
【0020】
AIモデル推論部109は、ユーザから指定された入力データを各学習済みモデルに入力することで、予測値をそれぞれ出力する。出力値は、推論データ600に記憶される。
【0021】
圧縮SHAP行列類似度計算部111は、過去に作成された各圧縮SHAP行列と、AIモデル推論部109で出力された出力値に対する圧縮SHAP行列との類似度を算出する。
【0022】
類似レコード抽出部113は、類似度が最も高かった、過去に作成された圧縮SHAP行列に対応づけられる特徴量等の情報を抽出する。
【0023】
入出力部115は、各種の情報を出力装置15の画面に表示し、または、ユーザから情報の入力を入力装置15を介して受け付ける。入出力部115は、例えば、SHAP重要度関連情報入力画面1100、圧縮SHAP行列確認画面1200、及び類似レコード表示画面1300を表示する。
【0024】
SHAP重要度関連情報入力画面1100は、ユーザから、圧縮SHAP行列を作成するためのパラメータの入力を受け付ける画面である。圧縮SHAP行列確認画面1200は、SHAP行列及びこれから作成された圧縮SHAP行列を表示する画面である。類似レコード表示画面1300は、類似レコード抽出部113で抽出された特徴量当の情報を表示する画面である。
【0025】
次に、検索支援装置1は、学習データ200、SHAP行列300、圧縮SHAP行列400、採用必須項目500、推論データ600、リニエージ700、SHAPグローバル統計800、ハードウェア情報900、及びシステム制約1000の各データを記憶する。
【0026】
学習データ200は、学習済みモデルを生成するために用いられる入力データである。学習データ200は、1又は複数の特徴量(データ項目)とその値及びラベルデータ(出力すべきデータ)を含んでいる。
【0027】
SHAP行列300は、SHAP値を複数記憶したデータである。SHAP行列は、学習済みモデルの実行(出力値の出力)ごとに設定される「ケース」の行と、そのケースにおける、学習済みモデルに係る特徴量の値の列とからなる。
【0028】
(SHAP行列)
図2は、本実施形態のSHAP行列300の一例を示す図である。このSHAP行列300は、各ケースを示す行301と、各ケースにおける各特徴量の値の列302とを有する。各特徴量の値は、学習済みモデルから出力される出力データへの影響度を示す。特徴量の値は、例えば、0以上1以下のいずれかの値である。
【0029】
次に、図1に示す圧縮SHAP行列400は、SHAP行列の一部の特徴量の情報を削除することにより得られる圧縮データである。
【0030】
(圧縮SHAP行列)
図3は、圧縮SHAP行列の一例を示す図である。この圧縮SHAP行列400は、1又は複数行のデータからなり、各行は、ケースのID401と、そのケースにおける特徴量の一つの項目の識別子である特徴量ID402と、その項目の特徴量の値403の3つのデータ項目からなる。
【0031】
次に、図1に示す採用必須項目500は、圧縮SHAP行列において必ず存在すべき特徴量である採用必須項目を記憶したデータである。採用必須項目500は、ユーザのプロジェクトごとに設定される。
【0032】
(採用必須項目)
図4は、採用必須項目500の一例を示す図である。この採用必須項目500は、ユーザが学習済みモデルを用いて所定の事業目標を達成すべく設定したプロジェクトのIDが設定されるプロジェクトID501、そのプロジェクトの属する事業分野が設定される分野502、そのプロジェクトの対象者(例えば、顧客の名称)の情報が設定される顧客503、達成する目標を表す評価指標(本実施形態では、KPIであるものとする)が設定されるKPI504(学習済みモデルの出力値の種類に対応する)、及び、そのプロジェクトに係る学習済みモデルにおける採用必須項目が設定される要求データソース505の各データ項目を有する。採用必須項目500のデータ内容は、例えば、ユーザによってあらかじめ設定される。
【0033】
次に、図1に示す推論データ600は、入力データ(ユーザにより指定された入力データ及び学習データ)を学習済みモデルに入力することで得られた各出力値(予測値)のデータである。
【0034】
リニエージ700は、各学習済みモデルに入力データを入力することで出力値(予測値)を得た各ケースのうち、その予測が妥当であったケースに関連した情報(例えば、後述する閾値の情報)を記憶している。
【0035】
SHAPグローバル統計800は、学習済みモデルの実行結果(予測結果)を蓄積したデータである。
【0036】
(SHAPグローバル統計)
図5は、SHAPグローバル統計800の一例を示す図である。このSHAPグローバル統計800は、行った予測のIDが設定されるテストID801、その予測に使用した学習済みモデルのIDが設定されるモデルID802、その予測の対象者(患者等)の情報が設定される特徴ID803、その予測に係る評価指標が設定されるKPI804(学習済みモデルの出力値の種類に対応する)、及び、その予測に関するデータが設定されるテスト結果805の各データ項目を有する。テスト結果805には、対象者に関する学習済みモデルの出力値と、その出力値に対応する1又は複数のSHAP値とが設定される。
【0037】
なお、本実施形態では、SHAPグローバル統計800の内容を集計した集計情報850が用いられる。
【0038】
図6は、集計情報850の一例を示す図である。集計情報850は、評価指標(出力値の種類)が設定されるKPI851、その評価指標に係る特徴量の名称が設定される特徴量名852、その特徴量の最小値が設定される最小値853、その特徴量の平均値が設定される平均値854、及び、その特徴量の最大値が設定される最大値855の各データ項目を有する。
【0039】
次に、図1に示すハードウェア情報900は、検索支援装置1のハードウェアの状態に関するデータである。システム制約1000は、後述する圧縮SHAP行列を作成する際の、検索支援装置1のハードウェア上の制約に関するデータである。システム制約1000は、ハードウェア情報900に基づいて作成される。
【0040】
(ハードウェア情報)
図7は、ハードウェア情報900の一例を示す図である。ハードウェア情報900は、データが取得された時刻(タイミング)が設定される時刻901、その時刻における検索支援装置1のCPU11の使用率が設定されるCPU使用率902、その時刻における検索支援装置1のメモリ12の利用可能量が設定されるメモリ利用率903、その時刻における検索支援装置1のストレージ13の利用可能量が設定されるストレージ利用率904の各データ項目を有する。ハードウェア情報900は、所定のハードウェア監視プログラムによって随時更新される。
【0041】
(システム制約)
図8は、システム制約1000の一例を示す図である。このシステム制約1000は、圧縮SHAP行列の元となるSHAP行列の条件(本実施形態では、SHAP行列の列の長さとする)が設定されるデータ数1001、その条件のSHAP行列から圧縮SHAP行列を作成するために必要なCPUの使用率が設定される要求CPU使用率1002、その条件のSHAP行列から圧縮SHAP行列を作成するために必要なメモリの量が設定される要求メモリ量1003、その条件のSHAP行列から圧縮SHAP行列を作成するために必要な記憶装置の容量が設定される要求ストレージ容量1004、その条件のSHAP行列から圧縮SHAP行列を作成するために必要と予測される時間が設定される要求時間1005、及び、その条件の下で達成される圧縮SHAP行列の圧縮率1006(元のSHAP行列に対する圧縮率)の各データ項目を有する。
【0042】
本実施形態では、検索支援装置1は、ハードウェア情報900に基づきシステム制約1000を作成するものとする。例えば、検索支援装置1は、所定のアルゴリズム(回帰分析、機械学習等)により、過去に作成した各圧縮SHAP行列と、その作成時点でのハードウェア情報900と、圧縮SHAP行列の作成に要した時間と、圧縮SHAP行列の圧縮率とに基づき、圧縮SHAP行列の長さ、ハードウェア構成、作成時間、及び、圧縮率の間の関係性を算出し、算出した関係性をシステム制約1000の各レコードに設定する。また、ユーザが予め検索支援装置1を用いてSHAP行列の圧縮テストを実行し、その
結果をシステム制約1000に入力してもよい。
【0043】
なお、本実施形態では、データ数901にはSHAP行列の列の長さが設定されるとするが、行の長さ等、その他の条件が設定されてもよい。また、ここで説明したシステム制約1000の作成方法及びデータ項目は一例であり、本発明は作成方法及びデータ項目を特に限定するものではない。
【0044】
以上に説明した検索支援装置1の各機能部の機能は、プロセッサ11が、メモリ12又はストレージ13に格納されているプログラムを読み出して実行することにより実現される。また、プログラムは、例えば、記録媒体に記録して配布することができる。なお、検索支援装置1は、その全部または一部が、例えば、クラウドシステムによって提供される仮想サーバのように、仮想化技術やプロセス空間分離技術等を用いて提供される仮想的な情報処理資源を用いて実現されるものであってもよい。また、検索支援装置1によって提供される機能の全部または一部は、例えば、クラウドシステムがAPI(Application Programming Interface)等を介して提供するサービスによって実現してもよい。
次に、検索支援装置1が行う処理について説明する。
【0045】
図9は、検索支援装置1が行う処理の概要を説明する図である。
【0046】
まず、検索支援装置1は、学習データ200を用いて学習済みモデルを作成すると共に、学習データ200に対応する(学習済みモデルにより出力されたデータに対応する)SHAP行列及び圧縮SHAP行列を作成する(学習フェーズs100)。なお、この場合、検索支援装置1は、それぞれ異なる種類のデータを出力する複数の学習モデルを作成する。
【0047】
一方、検索支援装置1は、ユーザが現在行う推論対象の入力データを、学習フェーズs100で作成された複数の学習済みモデルのうちユーザが選択した学習済みモデル(以下、本学習済みモデルという)に入力することで、出力値を得る。検索支援装置1は、その出力値に対応するSHAP行列及び圧縮SHAP行列を作成する。検索支援装置1は、作成した圧縮SHAP行列に類似する、学習フェーズs100で作成した圧縮SHAP行列を検索し、その検索結果を画面に表示する(以上、推論フェーズs200)。
以下、学習フェーズs100及び推論フェーズs200について説明する。
【0048】
<学習フェーズ>
図10は、学習フェーズs100の概要を説明するフロー図である。
まず、AIモデル生成部101は、学習済みモデル(AI)を作成する(s110)。例えば、AIモデル生成部101は、各ケースのデータセット(複数の項目のデータ)と、これに対するラベルデータ(出力データ)とを学習データとして機械学習を行うことで、それぞれ異なる種類のデータを出力する、複数の学習済みモデルを作成する。
【0049】
この学習済みモデルは、例えば、ディープラーニングによる機械学習を実行することで作成される。この学習済みモデルは、本実施形態では、データセットが入力される入力層と、データセットから特徴量を抽出して出力する1又は複数の中間層(隠れ層)と、特徴量から所定の出力値を出力する出力層とを有するニューラルネットワークとする。なお、学習済みモデルにおけるニューラルネットワークは、例えば、CNN(Convolution Neural Network)、SVM(Support Vector Machine)、ベイジアンネットワーク、又は回帰木等である。
【0050】
次に、SHAP行列計算部103は、s110で作成した学習済みモデルの作成過程で出力された出力値に対応する各特徴量のSHAP行列を作成する(s130)。SHAP
行列は、例えば、周辺化(marginalization)により各特徴量の限界貢献度(marginal contribution)を算出することで作成される。
【0051】
次に、SHAP重要度推定部105は、s130で作成したSHAP行列における各特徴量の重要性を推定すると共にデータ圧縮のために用いる閾値を決定し、さらにこの閾値よりSHAP行列を修正する処理である、閾値決定処理s150を実行する。閾値決定処理s150の詳細は後述する。
【0052】
SHAP重要度推定部105は、閾値決定処理s150で作成した修正SHAP行列に関して圧縮行列作成処理s170を呼び出すことで、その修正SHAP行列の各データ項目(特徴量)の重要性を推定し、圧縮SHAP行列を作成する。圧縮行列作成処理s170の詳細は後述する。以上で学習フェーズs100は終了する。
次に、閾値決定処理s150及び圧縮行列作成処理s170の詳細を説明する。
【0053】
<閾値決定処理>
図11は、閾値決定処理s150の詳細を説明するフロー図である。SHAP重要度推定部105は、s130で作成したSHAP行列に基づく圧縮SHAP行列の作成に際して、圧縮の基準となる、特徴量の値に関する閾値を決定する(s151、s153)。
【0054】
すなわち、まず、SHAP重要度推定部105は、s130で作成した各SHAP行列の各特徴量の値の出現頻度(密度分布)を解析することで、暫定的な基準を算出する(s151)。
【0055】
具体的には、SHAP重要度推定部105は、SHAPグローバル統計800又は集計情報850を参照することで、SHAP行列の各レコードの各特徴量の値(又は値の範囲)とそれらの出現頻度(密度)とを特定し、その出現頻度が特に低い特徴量の値を、暫定的な閾値とする。これにより、SHAP重要度推定部105は、その閾値よりも特徴量の値が大きいデータ集合と、その閾値よりも特徴量の値が小さいデータ集合とに分類し、その2つのデータ集合の間を暫定的な閾値とする(すなわち、出現頻度に関する2つのピークの間に存在する谷底の部分を特定する)。例えば、SHAP重要度推定部105は、密度が極小値をとる特徴量の値を暫定的な閾値とする。
【0056】
なお、ここで説明した密度分布の解析方法は例であり、様々な種類の決定方法を採用しうる。また、SHAP重要度推定部105は、ユーザからこの閾値の値の入力を受け付けてもよい。
【0057】
そして、SHAP重要度推定部105は、s110で過去に算出した他の種類の学習済みモデルに関して過去に算出した閾値に基づき、s151で算出した暫定的な閾値を調整する(s153)。例えば、SHAP重要度推定部105は、リニエージ700に記録されている、他の種類の学習済みモデルに係る閾値がs151で算出した閾値よりも低い場合には、その両者の乖離の程度に応じて、s151で算出した閾値をより低い値に設定する。
【0058】
次に、SHAP重要度推定部105は、圧縮SHAP行列におけるデータ項目(特徴量)として、s151で算出した閾値に関係なく必ず採用するデータ項目(特徴量)である採用必須項目を決定する(s155)。
【0059】
例えば、SHAP重要度推定部105は、ユーザから、採用必須項目の入力を受け付ける。また、例えば、SHAP重要度推定部105は、過去の採用必須項目の指定の履歴に基づき、自動的に採用必須項目を選択してもよい。また、例えば、SHAP重要度推定部
105は、分野、対象者、又はKPIが同一又は類似する採用必須項目500のレコードから、採用する採用必須項目を取得してもよい。
【0060】
さらに、SHAP重要度推定部105は、設定されたシステム制約に基づき、圧縮SHAP行列の作成に際しての、データ圧縮の方法を決定する(s57)。
【0061】
本実施形態では、SHAP重要度推定部105は、圧縮SHAP行列の作成におけるデータの圧縮率を決定するものとし、具体的には、各特徴量の項目のうち削除する項目の割合(列の圧縮)を決定するものとする。
【0062】
例えば、SHAP重要度推定部105は、圧縮SHAP行列の作成時間の上限値の入力を受け付ける。SHAP重要度推定部105は、現在のハードウェアの状態をハードウェア情報900から取得すると共にシステム制約1000を参照することで、現在のハードウェア制約、入力した作成時間の上限値、及びs130で作成したSHAP行列に対応する、SHAP行列の圧縮率を特定する。
【0063】
なお、ここで説明した、システム制約1000を利用した圧縮率の決定方法は一例である。例えば、SHAP重要度推定部105は、ユーザから圧縮率の指定を受け付けてもよい。また、以上では、SHAP重要度推定部105は列の圧縮を行うものとしたが、行を基準とした圧縮を行ってもよい。
【0064】
そして、SHAP重要度推定部105は、s153で決定した閾値、s155で決定した採用必須項目、及びs157で決定した圧縮率に基づき、最終的な閾値を決定する(s159)。具体的には、SHAP重要度推定部105は、s155で決定した採用必須項目は圧縮の対象外としつつ、s157で決定した特徴量の圧縮率を満たすように、s153で決定した閾値の値を必要に応じてさらに下げる。
【0065】
そして、SHAP重要度推定部105は、s130で作成したSHAP行列の各行及び各列の特徴量のうち、s159で決定した閾値未満の特徴量の値を0に設定した修正SHAP行列を作成する(s161)。以上で閾値決定処理s150は終了する。
【0066】
なお、図12は、閾値決定処理s150により生成された修正SHAP行列の一例を示す図である。この修正SHAP行列300では、s130で作成したSHAP行列の各要素のうち、その値が閾値未満であった要素の値が0に設定されている(符号303)。
【0067】
<圧縮行列作成処理>
図13は、圧縮行列作成処理s170の詳細を説明するフロー図である。
圧縮SHAP行列生成部107は、閾値決定処理s150で作成した修正SHAP行列を取得する(s171)。
【0068】
圧縮SHAP行列生成部107は、s171で取得した修正SHAP行列の一つの行を選択し(s173)、選択した行の各列の値(特徴量の値)について、その値が0でない特徴量、及び当該特徴量のデータ項目名を取得する(s175)。
【0069】
圧縮SHAP行列生成部107は、圧縮SHAP行列の1行分のレコードを作成する(s177)。具体的には、例えば、圧縮SHAP行列生成部107は、s171で選択した行のケースID(又は行番号)、s173で取得したデータ項目名、及びs173で取得した値の組み合わせを1レコードとするデータを新規作成もしくは既存の圧縮SHAP行列に追加する。
【0070】
圧縮SHAP行列生成部107は、現在選択中のSHAP行列の行が最後の行であるか否かを確認する(s179)。現在選択中のSHAP行列の行が最後の行である場合は(s179:Yes)、作成した圧縮SHAP行列を記憶し(s181)、圧縮行列作成処理s170は終了する(s183)、一方、現在選択中のSHAP行列の行が最後の行でない場合は(s179:No)、圧縮SHAP行列生成部107は、次の行を選択すべくs173の処理を繰り返す。
次に、推論フェーズs200について説明する。
【0071】
<推論フェーズ>
図14は、推論フェーズs200の一例を説明するフロー図である。
【0072】
推論フェーズs200は、ユーザが、学習済みモデルを用いて推論を行った後に開始される。例えば、AIモデル推論部109が、ユーザから、学習済みモデルの指定及びこの学習済みモデルに対して入力する入力データ(推論対象データ)の指定を受け付け、当該学習済みモデルに当該入力データを入力することで、出力データ(予測値)を出力する。推論フェーズs200は、この出力を契機に開始される。
【0073】
まず、AIモデル推論部109は、予測値を取得する(s210)。
【0074】
AIモデル推論部109は、s130と同様のアルゴリズムに従って、s210で取得した予測値に対応するSHAP行列を作成する(s230)。
【0075】
AIモデル推論部109は、s230で作成した修正SHAP行列に関して圧縮行列作成処理s170を呼び出すことで、s230で作成したSHAP行列に対する圧縮SHAP行列(以下、検証対象SHAPデータという)を作成する(s250)。
【0076】
AIモデル推論部109は、s250で作成した圧縮SHAP行列と、過去に作成した各ケースの圧縮SHAP行列との類似度をそれぞれ算出する類似度算出処理s270を実行する。類似度算出処理s270の詳細は後述する。
【0077】
AIモデル推論部109は、類似度算出処理s270で算出した類似度のうち、高い類似度を算出した過去の圧縮SHAP行列を特定する。そして、AIモデル推論部109は、特定した圧縮SHAP行列に対応するケースの情報(例えば、学習済みモデルに入力された入力データの情報)を画面に表示する。
ここで、類似度算出処理s270の詳細を説明する。
【0078】
<類似度算出処理>
図15は、類似度算出処理s270の詳細を説明するフロー図である。
類似レコード抽出部113は、s250で作成した圧縮SHAP行列を取得する(s271)。
【0079】
圧縮SHAP行列類似度計算部111は、過去に作成した圧縮SHAP行列の各行のうち、s271で取得した圧縮SHAP行列に係るケースと同じケース(以下、本ケースという。例えば、同じプロジェクトのデータ)の行のレコードデータを一つ取得する(s272)。
【0080】
圧縮SHAP行列類似度計算部111は、s271で取得した圧縮SHAP行列の各列(各特徴量)の値と、s273で取得した圧縮SHAP行列の各列(特徴量)の値とをそれぞれ比較する(s273)。
【0081】
各特徴量について、両圧縮SHAP行列にその値が設定されている場合は(すなわち、当該特徴量の(0でない何らかの)値が両圧縮SHAP行列に設定されている場合は)(s273:Yes)、圧縮SHAP行列類似度計算部111は、その特徴量についてs275の処理を行う。これに対して、いずれか一方の圧縮SHAP行列に当該特徴量の値(0でない何らかの値)が設定されていないことを検出した場合は(s273:No)、圧縮SHAP行列類似度計算部111は、特徴量の値が設定されていない方の圧縮SHAP行列に対して、その特徴量の列を(一時的に)作成し、その特徴量の値に基準値(ここでは0)を設定する(s274)。その後は、s275の処理が行われる。
【0082】
s275において、圧縮SHAP行列類似度計算部111は、当該特徴量に関しての、s271で取得した圧縮SHAP行列と、s273で取得した圧縮SHAP行列との類似度を算出する。
【0083】
具体的には、圧縮SHAP行列類似度計算部111は、s271で取得した圧縮SHAP行列の当該特徴量の値と、s273で取得した圧縮SHAP行列の当該特徴量の値とが近いほどより大きな値になるように類似度を設定する。例えば、圧縮SHAP行列類似度計算部111は、両者の値の差分の逆数を類似度に設定する。なお、ここで説明した類似度の算出方法は一例である。
【0084】
圧縮SHAP行列類似度計算部111は、本ケースに関する、過去に作成した圧縮SHAP行列のケースに係る行の全てについて、s272~s275の処理を行ったか否かを確認する(s276)。全てについてs272~s275の処理を行った場合は(s276:Yes)、圧縮SHAP行列類似度計算部111は、s277の処理を実行する。s272~s275の処理を行っていない行がある場合には(s276:No)、圧縮SHAP行列類似度計算部111は、その行について、s272以降の処理を繰り返す。
【0085】
s277において圧縮SHAP行列類似度計算部111は、これまでに算出した類似度を記憶する(s277)。その後、類似レコード抽出部113は、その類似度が所定の条件を満たす圧縮SHAP行列(例えば、所定の閾値よりも類似度が高い圧縮SHAP行列、類似度の高さに関して所定順位までの圧縮SHAP行列)を特定する。
そして、圧縮SHAP行列類似度計算部111は、特定した圧縮SHAP行列に対応づけられる各種の情報(例えば、対応するSHAP行列の特徴量、そのSHAP行列に対応する学習済みモデルに対する入力データの情報)を表示する。以上で類似度算出処理s270は終了する。
【0086】
図16は、類似度算出処理s270における処理の一例を説明する図である。同図に示すように、特徴量として「F01」、「F02」、「F08」、「F09」、「F10」を有する行のデータである、ケース「001」に関する圧縮SHAP行列400aと、特徴量として「F01」、「F02」、「F03」、「F07」、「F09」を有する行のデータである、過去の圧縮SHAP行列400aとがある場合、類似レコード抽出部113は、両圧縮SHAP行列400a、400bのいずれかに存在する特徴量「F01」、「F02」、「F03」、「F07」、「F08」、「F08」、「F09」、「F10」を検出する(符号430)。そして、類似レコード抽出部113は、一方の圧縮SHAP行列にのみ値が設定されている特徴量「F03」、「F07」、「F03」、「F08」、「F10」のそれぞれについて、他方の特徴量の値に「0」を設定する(符号440)。
【0087】
このように、同じ項目の値同士を比較する際に、一方の圧縮SHAP行列に値が設定されていない場合には0を設定しておくことで、比較処理の効率化を図ることができる。
【0088】
ここで、検索支援装置1が表示する画面について説明する。
(SHAP重要度関連情報入力画面)
図17は、SHAP重要度関連情報入力画面1100の一例を示す図である。SHAP重要度関連情報入力画面1100は、プロジェクトの名称が表示されるプロジェクト名表示欄1110と、そのプロジェクトに係る評価指標(KPI)の入力をユーザから受け付ける目標値入力欄1120と、学習済みモデルにおける特徴量の入力をユーザから受け付ける特徴量入力欄1130と、採用必須項目の入力をユーザから受け付ける必須項目入力欄1140とを有する。なお、不一致パターン入力欄1150に示されているように、SHAP重要度推定部105は、圧縮SHAP行列の作成において除外する特徴量の組み合わせの指定を受け付けてもよい。
【0089】
なお、SHAP重要度関連情報入力画面1100は、例えば、ユーザが学習済みモデルに入力するデータを決定する際、又は、ユーザが採用必須項目500の入力を行う際等に表示される。
【0090】
(圧縮SHAP行列確認画面)
図18は、圧縮SHAP行列確認画面1200の一例を示す図である。圧縮SHAP行列確認画面1200は、圧縮前のSHAP行列(SHAP値の行列)の一覧表示1210と、圧縮後のSHAP行列(SHAP値の行列)の一覧表示1220とを含んでいる。また、圧縮前のSHAP行列の列の長さ1211(特徴量の数)と、圧縮後のSHAP行列の列の長さ1221(特徴量の数)とが表示される。これにより、ユーザは、SHAP行列がどの程度圧縮されたかを確認することができる。
【0091】
なお、圧縮SHAP行列確認画面1200は、例えば、圧縮SHAP行列が作成された際、もしくはユーザから入力指定を受けた際に表示される。
【0092】
(類似レコード表示画面)
図19は、類似レコード表示画面1300の一例を示す図である。類似レコード表示画面1300には、類似度が高いと判定された各ケースのID1310と、そのケースの類似度1320と、そのケースにおいて入力された属性情報1330(学習済みモデルに入力されたデータ)と、そのケースにおいて学習済みモデルが出力した出力データ1340(予測値)とが表示される。
【0093】
なお、類似レコード表示画面1300は、例えば、類似度算出処理s270において表示される。
【0094】
以上のように、本実施形態の検索支援装置1は、学習フェーズs100において、学習データを入力した学習済みモデルから出力される各出力データに対する各SHAPデータを算出し、各SHAPデータについて圧縮SHAPデータを生成して記憶する。一方、検索支援装置1は、推論フェーズs200において、推論対象データに対する予測値に対応する検証対象SHAPデータを算出し、算出した検証対象SHAPデータと、各圧縮SHAPデータとの類似度をそれぞれ算出し、類似度が所定の条件を満たす圧縮SHAPデータを特定する。
【0095】
すなわち、本実施形態の検索支援装置1は、SHAPデータの圧縮データ同士を比較することで、SHAPデータの検索を行う。このように、本実施形態の検索支援装置1によれば、特徴量の影響度を表すパラメータであるSHAPデータに関する検索を高速かつ精度良く行うことができる。
【0096】
また、本実施形態の検索支援装置1は、各SHAPデータの履歴(SHAPグローバル
統計800)に基づき、SHAPデータに係る特徴量のうち圧縮対象の特徴量を特定することにより、圧縮SHAPデータを生成する。
【0097】
具体的には、本実施形態の検索支援装置1は、各SHAPデータの履歴(SHAPグローバル統計800)に基づき、SHAPデータにおける影響度に関する閾値を特定し、SHAPデータの各値のうち閾値以下の影響度のSHAPデータを、圧縮対象の特徴量のデータとして特定し、特定した特徴量のデータを除去することにより、圧縮SHAPデータを生成する。
【0098】
これにより、圧縮すべき特徴量を特定し、より精度良い検索に適した圧縮SHAPデータを生成することができる。
【0099】
また、本実施形態の検索支援装置1は、検索支援装置1が備えるハードウェアに関する情報(ハードウェア情報900及びシステム制約1000)に基づき、SHAPデータに係る特徴量のうち圧縮対象の特徴量を特定することにより、圧縮SHAPデータを生成する。
【0100】
具体的には、本実施形態の検索支援装置1は、検索支援装置1が備えるハードウェアに関する情報(ハードウェア情報900及びシステム制約1000)に基づき、SHAPデータの圧縮率を決定し、決定した圧縮率に基づき、圧縮SHAPデータを生成する。
【0101】
これにより、検索を行う検索支援装置1のハードウェアの状況に応じて、検索に適した圧縮SHAPデータを生成することができる。
【0102】
また、本実施形態の検索支援装置1は、ユーザから、SHAPデータに係る特徴量のうち圧縮対象外の特徴量の指定を受け付け、指定された圧縮対象外の特徴量に基づき、圧縮SHAPデータを生成する。
【0103】
これにより、ユーザ等の知見(ドメイン知識)に基づいて検索に不可欠な重要な特徴量を圧縮SHAPデータに残すようにし、適切な検索を行うことができる。
【0104】
また、本実施形態の検索支援装置1は、類似度を算出する際に、圧縮SHAPデータ及び検証対象SHAPデータのいずれかのみに存在する特徴量を検出した場合には、特徴量が存在しない方のSHAPデータの特徴量の影響度の値を所定の基準値(本実施形態では0)に設定することで、圧縮SHAPデータと検証対象SHAPデータとの類似度を算出する。
【0105】
これにより、圧縮SHAPデータの各特徴量と検証対象SHAPデータの各特徴量との比較を容易にし、類似度を算出することができる。
【0106】
また、本実施形態の検索支援装置1は、作成した圧縮SHAPデータの情報を出力する(圧縮SHAP行列確認画面1200)。これにより、ユーザは、SHAPデータがどのように圧縮されたかを確認することができる。
【0107】
また、本実施形態の検索支援装置1は、前記圧縮対象外の特徴量の指定を受け付ける画面を表示する(SHAP重要度関連情報入力画面1100)。これにより、ユーザは、圧縮の対象外とする特徴量を任意に指定することができる。
【0108】
また、本実施形態の検索支援装置1は、圧縮SHAPデータに対応づけられる特徴量に関する情報を表示する(類似レコード表示画面1300)。これにより、ユーザは、検証
対象SHAPデータや推論対象データ等に関連した情報を知ることができる。
【0109】
本発明は上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲内で、任意の構成要素を用いて実施可能である。以上説明した実施形態や変形例はあくまで一例であり、発明の特徴が損なわれない限り、本発明はこれらの内容に限定されるものではない。また、上記では種々の実施形態や変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
【0110】
例えば、本実施形態で説明した各機能部の構成は一例であり、例えば、機能部の一部を他の機能部に組み込み、又は複数の機能部を一つの機能部として構成してもよい。
【符号の説明】
【0111】
1 検索支援装置、300 SHAP行列、400 圧縮SHAP行列
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19