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

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

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

特開2024-162867分類クラス推論装置、分類クラス推論方法、及び分類クラス推論プログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024162867
(43)【公開日】2024-11-21
(54)【発明の名称】分類クラス推論装置、分類クラス推論方法、及び分類クラス推論プログラム
(51)【国際特許分類】
   G06N 20/00 20190101AFI20241114BHJP
   G06F 18/2113 20230101ALI20241114BHJP
   G06N 5/00 20230101ALI20241114BHJP
【FI】
G06N20/00 130
G06F18/2113
G06N5/00
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023078813
(22)【出願日】2023-05-11
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000176
【氏名又は名称】弁理士法人一色国際特許事務所
(72)【発明者】
【氏名】竹内 理
(57)【要約】      (修正有)
【課題】より少量の学習データから、対象データを適切なクラスに分類するモデルをより少ない工数で構築する分類クラス推論装置、方法及びプログラムを提供する。
【解決手段】対象データから分類クラスを推論するモデルを構築する分類クラス推論装置における方法は、業務に関する条件から当該条件に対応する分類クラスを決定する複数のルールと、複数の対象データと、対象データの正解ラベルとを記憶する記憶装置と、業務に関する条件に対応する学習データを生成し、学習データ及びルールに基づいてモデルを構築するモデル構築処理と、モデルに対象データを入力することにより、対象データに対応する分類クラスを推論するモデル推論処理と、推論した分類クラスと、対象データの正解ラベルとを比較することにより、モデルの推論精度の低下の要因となるルールを特定するための情報を生成して出力する誤推論要因分析処理とを実行する。
【選択図】図3
【特許請求の範囲】
【請求項1】
対象データから分類クラスを推論するモデルを構築する分類クラス推論装置であって、
業務に関する条件から当該条件に対応する分類クラスを決定する複数のルールと、複数の前記対象データと、前記対象データの正解ラベルとを記憶する記憶装置と、
前記業務に関する条件に対応する学習データを生成し、前記学習データ、及び前記ルールに基づいてモデルを構築するモデル構築処理と、
前記モデルに前記対象データを入力することにより、前記対象データに対応する分類クラスを推論するモデル推論処理と、
前記推論した分類クラスと、前記対象データの正解ラベルとを比較することにより、前記モデルの推論精度の低下の要因となる前記ルールを特定するための情報を生成して出力する誤推論要因分析処理とを実行する演算装置と、
を備える、分類クラス推論装置。
【請求項2】
前記演算装置は、
前記誤推論要因分析処理において、前記ルールそれぞれについて、前記モデルの推論精度の低下への寄与度を算出し、
前記寄与度が所定の閾値より大きい前記ルールを補正して、前記モデルを再構築するルール補正処理
を実行する、請求項1に記載の分類クラス推論装置。
【請求項3】
前記記憶装置は、新たな前記ルールを定義するための特徴量を記憶し、
前記演算装置は、
複数の前記対象データと、前記対象データの正解ラベルと、前記特徴量とに基づいて、前記ルールを新たに生成するルール自動抽出処理
を実行する、請求項1に記載の分類クラス推論装置。
【請求項4】
前記演算装置は、
前記ルール自動抽出処理において、
複数の前記対象データそれぞれの前記特徴量の値を算出し、
前記特徴量の値に基づいて、複数の前記対象データを複数のセグメントに分け、
各セグメントにおける前記特徴量の値と、前記対象データの正解ラベルとに基づく前記ルールを生成する
請求項3に記載の分類クラス推論装置。
【請求項5】
前記演算装置は、
前記ルール自動抽出処理において、
前記セグメントの数が所定数になるまで、セグメント間における前記対象データの正解ラベルの分布の類似度に基づいて前記セグメントを統合する
請求項4に記載の分類クラス推論装置。
【請求項6】
前記記憶装置は、前記対象データと異なる他の用途に用いられる他用途データと、前記他用途データの正解ラベルとを記憶し、
前記演算装置は、
前記他用途データと、前記他用途データの正解ラベルとに基づいて、前記他の用途向けの前記ルールである他用途ルールを生成し、
前記対象データに前記他用途ルールを適用することで、前記他用途ルールから、前記モデルの構築に使用する前記ルールを抽出するルール品質評価処理
を実行する、請求項3に記載の分類クラス推論装置。
【請求項7】
前記演算装置は、
前記記憶装置が記憶する前記ルールと、前記ルール品質評価処理において抽出した前記ルールとに基づいて、前記モデルを構築し、
前記構築したモデルに前記対象データを入力した推論結果が正解ラベルと一致しない要因となる前記対象データの変数を、新たな前記特徴量として抽出し、
前記抽出した特徴量に基づいて、前記ルールを新たに生成し、
前記新たに生成した前記ルールと、前記記憶装置が記憶する前記ルールと、前記ルール品質評価処理において抽出した前記ルールとに基づいて、前記モデルを再構築する追加注目特徴量抽出処理
を実行する、請求項6に記載の分類クラス推論装置。
【請求項8】
対象データから分類クラスを推論するモデルを構築する情報処理装置が、
業務に関する条件に対応する学習データを生成し、前記学習データ、及び前記業務に関する条件から当該条件に対応する分類クラスを決定する複数のルールに基づいてモデルを構築するモデル構築処理と、
前記モデルに前記対象データを入力することにより、前記対象データに対応する分類クラスを推論するモデル推論処理と、
前記推論した分類クラスと、前記対象データの正解ラベルとを比較することにより、前記モデルの推論精度の低下の要因となる前記ルールを特定するための情報を生成して出力する誤推論要因分析処理とを実行する
分類クラス推論方法。
【請求項9】
対象データから分類クラスを推論するモデルを構築する情報処理装置に、
業務に関する条件に対応する学習データを生成し、前記学習データ、及び前記業務に関する条件から当該条件に対応する分類クラスを決定する複数のルールに基づいてモデルを構築するモデル構築処理と、
前記モデルに前記対象データを入力することにより、前記対象データに対応する分類クラスを推論するモデル推論処理と、
前記推論した分類クラスと、前記対象データの正解ラベルとを比較することにより、前記モデルの推論精度の低下の要因となる前記ルールを特定するための情報を生成して出力する誤推論要因分析処理とを実行させる
分類クラス推論プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、分類クラス推論装置、分類クラス推論方法、及び分類クラス推論プログラムに関する。
【背景技術】
【0002】
AI(Artificial Intelligence)モデルを使用した業務システムを運用している際に、従来想定したフォーマットとは異なる新しいフォーマットの業務データに対応しなければならないケースがある。通常、この対応を行うためには、充分な数の新しいフォーマットの業務データを蓄積し、当該業務データを学習データとして用いてAIモデルを再構築する。しかし、業務システムで充分な量の業務データを蓄積するには年月を要し、新しいフォーマットへの迅速な対応が困難である、という問題がある。
【0003】
このような問題に対して、非特許文献1に記載の技術では、人間の知見を反映した特徴量を抽出する特徴量エンジニアリングにより、少量の学習データでも高精度なモデル構築を実現している。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】Dan Roth et. al, ”Interactive Feature Space Construction using Semantic Information,” 13th CoNLL, pp 64-74, 2009.
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、非特許文献1に記載の技術では、特徴量が適切であっても、精度の高いモデルを構築するためにはある程度の量の学習データ及び正解ラベルが必要である。そのため、学習データの準備工数の低減効果は限定的である。更に、非特許文献1に記載の技術では、特徴量の一部のみしかカスタマイズできないため、その他の特徴量は手動でエンハンスしなければならず、高精度のモデルを構築するための工数の低減効果も限定的である。
【0006】
本発明は、このような事情に鑑みてなされたものであり、その目的は、より少量の学習データから、対象データを適切なクラスに分類するモデルをより少ない工数で構築することができる分類クラス推論装置、分類クラス推論方法、及び分類クラス推論プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するための本発明の一つは、対象データから分類クラスを推論するモデルを構築する分類クラス推論装置であって、業務に関する条件から当該条件に対応する分類クラスを決定する複数のルールと、複数の前記対象データと、前記対象データの正解ラベルとを記憶する記憶装置と、前記業務に関する条件に対応する疑似学習データを生成し、前記疑似学習データ、及び前記ルールに基づいてモデルを構築するモデル構築処理と、前記モデルに前記対象データを入力することにより、前記対象データに対応する分類クラスを推論するモデル推論処理と、前記推論した分類クラスと、前記対象データの正解ラベルとを比較することにより、前記モデルの推論精度の低下の要因となる前記ルールを特定するための情報を生成して出力する誤推論要因分析処理とを実行する演算装置と、を備える、分類クラス推論装置である。
【発明の効果】
【0008】
本発明によれば、より少量の学習データから、対象データを適切なクラスに分類するモデルをより少ない工数で構築することができる。
上記した以外の構成及び効果等は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0009】
図1】第1の実施形態における分類クラス推論装置の構成の一例を示す図である。
図2】対象データの一例を示す図である。
図3】第1の実施形態における分類クラス推論装置で行われる処理の概要を説明する図である。
図4】正解ラベルの一例を示す図である。
図5】注目特徴量情報の一例を示す図である。
図6】経験ルール自動抽出処理を実行する経験ルール自動抽出手段に入出力される各種データを示す図である。
図7】経験ルール自動抽出処理の詳細を説明する処理フロー図である。
図8】注目特徴量に基づいて対象データをセグメントに分割する処理の概要を説明する図である。
図9】セグメント管理テーブルの一例を示す図である。
図10】経験ルールの一例を示す図である。
図11】学習データ補完処理を実行する学習データ補完手段に入出力される各種データを示す図である。
図12】学習データ補完処理の詳細を説明する処理フロー図である。
図13】疑似データの一例を示す図である。
図14】経験ルールモデル構築処理を実行する経験ルールモデル構築手段に入出力される各種データを示す図である。
図15】経験ルールモデル構築処理S6の詳細を説明する処理フロー図である。
図16】経験ルール適用結果の一例を示す図である。
図17】学習用ラベルの一例を示す図である。
図18】経験ルールモデルにおけるパラメータの一例を示す図である。
図19】誤推論要因分析処理を実行する推論実行手段及び誤推論要因分析手段に入出力される各種データを示す図である。
図20】誤推論要因分析処理の詳細を説明する処理フロー図である。
図21】SHAP値管理テーブルの一例を示す図である。
図22】誤推論要因の一例を示す図である。
図23】経験ルール補正処理の詳細を説明する処理フロー図である。
図24】第2の実施形態における分類クラス推論装置の構成の一例を示す図である。
図25】第2の実施形態における分類クラス推論装置の各機能に入出力される各種データを示す図である。
図26】第2の実施形態における分類クラス推論装置で行われる処理の概要を説明する図である。
図27】追加注目特徴量の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、図面を参照して本発明の実施形態を説明する。以下の記載および図面は、本発明を説明するための例示であって、説明の明確化のため、適宜、省略および簡略化がなされている。本発明は、他の種々の形態でも実施する事が可能である。特に限定しない限り、各構成要素は単数でも複数でも構わない。
図面において示す各構成要素の位置、大きさ、形状、範囲などは、発明の理解を容易にするため、実際の位置、大きさ、形状、範囲などを表していない場合がある。このため、本発明は、必ずしも、図面に開示された位置、大きさ、形状、範囲などに限定されない。
以下の説明では、「テーブル」、「リスト」、「キュー」等の表現にて各種情報を説明することがあるが、各種情報は、これら以外のデータ構造で表現されていてもよい。データ構造に依存しないことを示すために「XXテーブル」、「XXリスト」等を「XX情報」と呼ぶことがある。識別情報について説明する際に、「識別情報」、「識別子」、「名」、「ID」、「番号」等の表現を用いるが、これらについてはお互いに置換が可能である。
同一あるいは同様な機能を有する構成要素が複数ある場合には、同一の符号に異なる添字を付して説明する場合がある。ただし、これらの複数の構成要素を区別する必要がない場合には、添字を省略して説明する場合がある。
また、以下の説明では、プログラムを実行して行う処理を説明する場合があるが、プログラムは、プロセッサ(例えばCPU、GPU)によって実行されることで、定められた処理を、適宜に記憶資源(例えばメモリ)および/またはインターフェースデバイス(例えば通信ポート)等を用いながら行うため、処理の主体がプロセッサとされてもよい。同様に、プログラムを実行して行う処理の主体が、プロセッサを有するコントローラ、装置、システム、計算機、ノードであってもよい。プログラムを実行して行う処理の主体は、演算部であれば良く、特定の処理を行う専用回路(例えばFPGAやASIC)を含んでいてもよい。
プログラムは、プログラムソースから計算機のような装置にインストールされてもよい。プログラムソースは、例えば、プログラム配布サーバまたは計算機が読み取り可能な記憶メディアであってもよい。プログラムソースがプログラム配布サーバの場合、プログラム配布サーバはプロセッサと配布対象のプログラムを記憶する記憶資源を含み、プログラム配布サーバのプロセッサが配布対象のプログラムを他の計算機に配布してもよい。また、以下の説明において、2以上のプログラムが1つのプログラムとして実現されてもよいし、1つのプログラムが2以上のプログラムとして実現されてもよい。
【0011】
[第1の実施形態]
まず、本発明の第1の実施形態における分類クラス推論装置、分類クラス推論方法及び分類クラス推論プログラムについて説明する。
【0012】
図1は、本実施形態における分類クラス推論装置1の構成の一例を示す図である。分類クラス推論装置1は、学習データに基づき構築されるAIモデルと異なるモデルであって、AIモデルと同様の推論が可能な経験ルールモデル125(モデル)を構築する情報処理装置である。経験ルールモデル125は、対象データ121から分類クラスを推論する。
【0013】
本実施形態では、金融機関等において、企業の活動データ(例えば、売上高、純利益、又は総資産等の財務指標等)から、企業が所定数のクラスのうちいずれのクラスに属するか(企業の分類クラス)を推論する分類クラス推論装置1を例に説明する。本例では、企業の活動データが、対象データ121である。
【0014】
分類クラス推論装置1は、一例として、CPU(Central Processing Unit)及びRAM(Random Access Memory)、ROM(Read Only Memory)等のメモリから構成される演算装置101と、HDD(Hard Disk Drive)、SSD(Solid State Drive)等の記憶装置102と、キーボード、マウス、又はタッチパネル等の入力装置103と、ディスプレイ又はプリンタ等の出力装置104と、NIC(Network Interface Card)、無線通信モジュール、USB(Universal Serial Interface)モジュール、又はシリアル通信モジュール等で構成される通信装置105等を備える。
【0015】
演算装置101は、記憶装置102に記憶されているプログラムを実行することにより、経験ルール自動抽出手段111、学習データ補完手段112、経験ルールモデル構築手段113、推論実行手段114、及び誤推論要因分析手段115の各機能それぞれを実現する。
【0016】
経験ルール自動抽出手段111は、対象データ121、及び対象データ121の正解ラベル122に基づいて、経験ルールモデル125を構築するための経験ルール123を自動的に生成する。経験ルール123は、企業の業務に関する条件から当該条件に対応する分類クラスを決定するルールである。
【0017】
学習データ補完手段112は、経験ルールモデル125を構築するための疑似的な学習データとして、疑似データ124を対象データ121から生成する。疑似データ124は、業務に関する条件に対応する疑似学習データに相当する。
【0018】
経験ルールモデル構築手段113は、対象データ121、正解ラベル122、疑似データ124、及び経験ルール123に基づいて、経験ルールモデル125を構築する。
【0019】
推論実行手段114は、経験ルールモデル125に対象データ121を入力することにより、対象データ121に対応する分類クラスを推論する経験ルールモデル推論処理を実行する。
【0020】
誤推論要因分析手段115は、対象データ121、及び経験ルールモデル125に基づいて、推論を誤る(経験ルールモデル125の推論精度の低下の)要因となり得る経験ルール123を特定するための情報(誤推論要因126)を生成して出力する。
【0021】
記憶装置102は、経験ルール自動抽出手段111、学習データ補完手段112、経験ルールモデル構築手段113、推論実行手段114、及び誤推論要因分析手段115の各機能それぞれを実現するためのプログラムを記憶している。
【0022】
また、記憶装置102は、プログラムを演算装置101が実行する際に入出力する各種データを記憶する。具体的には、記憶装置102は、対象データ121、正解ラベル122、経験ルール123、疑似データ124、経験ルールモデル125、及び、誤推論要因126をそれぞれ記憶している。
【0023】
(対象データ)
図2は、対象データ121の一例を示す図である。対象データ121は、各対象データ121を一意に識別するデータIDが設定されるデータID211、及び、1又は複数の説明変数が設定される説明変数214(図示する例では、説明変数1、説明変数2、・・・、説明変数m)の各項目を有する。例えば、データID211には、企業を識別する情報が設定され、説明変数124には、企業の活動データ(例えば、売上高、純利益、又は総資産等)が設定される。対象データ121は、正解ラベルが付与されていない学習データである。
【0024】
<処理の概要>
図3は、分類クラス推論装置1で行われる処理の概要を説明する図である。
分類クラス推論装置1は、対象データ121に対する正解ラベル122(分類クラス)の入力をユーザから受け付け、入力された正解ラベル122を記憶装置102に書き込む(S1)。
【0025】
(正解ラベル)
図4は、正解ラベル122の一例を示す図である。正解ラベル122は、データIDが設定されるデータID211、及びラベル215の各項目を有する。ラベル215には、ユーザが入力した正解ラベル(分類クラス)が設定される。
【0026】
また、分類クラス推論装置1は、分類クラスを推定するにあたり、着目すべき特徴量の注目特徴量情報302の入力をユーザから受け付け、入力された注目特徴量情報302を記憶装置102に書き込む(S2)。
【0027】
(注目特徴量情報)
図5は、注目特徴量情報302の一例を示す図である。注目特徴量情報302は、特徴量の名称が設定される特徴量名312、及び、特徴量を算出するための関数が設定される特徴量計算関数313の各項目を有する。
【0028】
また、分類クラス推論装置1は、経験ルール123を生成する経験ルール自動抽出処理を実行する(S3)。経験ルール自動抽出処理S3の詳細は後述する。
【0029】
また、分類クラス推論装置1は、生成した経験ルール123の補正(修正又は削除)をユーザから受け付け、補正された経験ルール123を更新する(S4)。
【0030】
また、分類クラス推論装置1は、経験ルールモデル125を構築するための学習データを補完する学習データ補完処理を実行する(S5)。学習データ補完処理S5の詳細は後述する。
【0031】
また、分類クラス推論装置1は、経験ルールモデル125を構築する経験ルールモデル構築処理を実行する(S6)。経験ルールモデル構築処理S6の詳細は後述する。
【0032】
また、分類クラス推論装置1は、構築した経験ルールモデル125において、推論精度を低下させる要因となる経験ルール123を分析する誤推論要因分析処理を実行する(S7)。誤推論要因分析処理S7の詳細は後述する。
【0033】
また、分類クラス推論装置1は、誤推論要因分析処理において分析した結果に基づいて、経験ルール123の補正する経験ルール補正処理を実行する(S8)。経験ルール補正処理S8の詳細は後述する。
次に、以上で説明した各処理の詳細を説明する。
【0034】
<経験ルール自動抽出処理>
図6は、経験ルール自動抽出処理を実行する経験ルール自動抽出手段111に入出力される各種データを示す図である。経験ルール自動抽出手段111は、対象データ121、正解ラベル122、及び注目特徴量情報302を入力として受け取り、セグメント管理テーブル301を更新しながら、経験ルール抽出処理を実行することにより、経験ルール123を出力する。
【0035】
図7は、経験ルール自動抽出処理の詳細を説明する処理フロー図である。経験ルールモデル自動抽出処理は、例えば、分類クラス推論装置1にユーザから所定の入力がされた場合、又は所定のタイミング(例えば、所定の時刻、所定の時間間隔)で実行される。
【0036】
まず、経験ルール自動抽出手段111は、対象データ121、正解ラベル122、及び注目特徴量情報302に基づいて、データID211ごとの注目特徴量を算出する(S401)。例えば、経験ルール自動抽出手段111は、特徴量計算関数313に、説明変数214を代入することにより、注目特徴量を算出する。
【0037】
続いて、経験ルール自動抽出手段111は、S401で算出した注目特徴量を昇順にソートし、データID211(対象データ121)を複数のセグメントに分割する。
【0038】
図8は、注目特徴量に基づいて対象データ121をセグメントに分割する処理の概要を説明する図である。まず、経験ルール自動抽出手段111は、各セグメントのデータID211の数が略均一になるように、所定数のセグメント(図示する例では、s1~s5の5つのセグメント)を生成する(符号ST1参照)。図示する例では、セグメントs1には、注目特徴量の値が0未満のデータID「x2」「x3」があり、セグメントs2には、注目特徴量の値が0以上0.02未満のデータID「x1」があり、セグメントs3には、注目特徴量の値が0.02以上0.04未満のデータID「x4」があり、セグメントs4には、注目特徴量の値が0.04以上0.06未満のデータID「x5」「x6」があり、セグメントs5には、注目特徴量の値が0.06以上のデータID「x7」「x8」がある。
【0039】
そして、経験ルール自動抽出手段111は、各セグメントについて、セグメント管理テーブル301の上限、下限、正解ラベル分布、及び平均ラベル値を算出する(S402)。
【0040】
(セグメント管理テーブル)
図9は、セグメント管理テーブル301の一例を示す図である。セグメント管理テーブル301は、各セグメントを一意に識別するセグメントIDが設定されるセグメントID311、セグメントにおける注目特徴量の上限値が設定される上限314、セグメントにおける注目特徴量の下限値が設定される下限315、セグメントにおける正解ラベルの分布が設定される正解ラベル分布316、正解ラベルの平均値が設定される平均ラベル値317、及び、正解ラベル分布316のχ二乗値が設定されるχ二乗値318の各項目を有する。
【0041】
続いて、経験ルール自動抽出手段111は、S402で生成したセグメント管理テーブル301の隣接セグメントの正解ラベル分布の類似度を、正解ラベル分布のχ二乗値を計算することで算出する(S403)。図8に示す例では、セグメントs1とセグメントs2との類似度は0.9であり、セグメントs2とセグメントs3との類似度は0.2であり、セグメントs3とセグメントs4の類似度は2.4であり、セグメントs4とセグメントs5の類似度は1.3である(符号ST2参照)。本実施例では、χ二乗値を類似度としているため、その値が小さいほど類似度が高く、値が大きいほど類似度が低い。
【0042】
続いて、経験ルール自動抽出手段111は、S403で算出したχ二乗値が最も小さい(類似度が最も高い)隣接セグメントをマージ(統合)し、セグメント管理テーブル301を再構築する(S404)。図8に示す例では、類似度が最も高いセグメントs2とセグメントs3とを1つのセグメントにマージしている(符号ST3参照)。
【0043】
そして、経験ルール自動抽出手段111は、ユーザが予め指定したセグメント数になるまで、S403及びS404の処理を繰り返す(S405)。
【0044】
その後、経験ルール自動抽出手段111は、経験ルール123を新規に生成し、生成した経験ルール123を記憶装置102に書き込み(S406)、本経験ルール抽出処理を終了する。
【0045】
(経験ルール)
図10は、経験ルール123の一例を示す図である。経験ルール123は、各経験ルール123を識別する経験ルールIDが設定される経験ルールID212、及び、経験ルール関数が設定される経験ルール関数213の各データ項目を有する。
【0046】
例えば、経験ルール自動抽出手段111は、経験ルールID212に一意の値を設定する。また、経験ルール自動抽出手段111は、注目特徴量がセグメントの上限と下限との間の値である場合に、当該セグメントの平均ラベル値を返す関数を、経験ルール関数213として設定する。
【0047】
<学習データ補完処理>
図11は、学習データ補完処理を実行する学習データ補完手段112に入出力される各種データを示す図である。学習データ補完手段112は、対象データ121を入力として受け取り、学習データ補完処理を実行することにより、疑似データ124を出力する。
【0048】
図12は、学習データ補完処理S5の詳細を説明する処理フロー図である。学習データ補完処理は、例えば、分類クラス推論装置1にユーザから所定の入力がされた場合、又は所定のタイミング(例えば、所定の時刻、所定の時間間隔)で実行される。
【0049】
学習データ補完手段112は、Tabular GAN(Generative Adversarial Network)等のアルゴリズムを用いて、対象データ121から疑似データ124を生成し、生成した疑似データ124を記憶装置102に書き込む(S601)。なお、学習データ補完手段112は、乱数を用いて、疑似データ124を生成してもよい。その後、学習データ補完手段112は、本学習データ補完処理を終了する。
【0050】
(疑似データ)
図13は、疑似データ124の一例を示す図である。疑似データ124は、データIDが設定されるデータID211、及び、1又は複数の説明変数が設定される説明変数214(図示する例では、説明変数1、説明変数2、・・・、説明変数m)の各項目を有する。疑似データ124のデータ構成は、対象データ121と同様である。
【0051】
<経験ルールモデル構築処理>
図14は、経験ルールモデル構築処理を実行する経験ルールモデル構築手段113に入出力される各種データを示す図である。経験ルールモデル構築手段113は、対象データ121、正解ラベル122、疑似データ124、及び経験ルール123を入力として受け取り、経験ルール適用結果701及び学習用ラベル702を更新しながら、経験ルールモデル構築処理を実行することにより、経験ルールモデル125を出力する。
【0052】
図15は、経験ルールモデル構築処理S6の詳細を説明する処理フロー図である。経験ルールモデル構築処理は、例えば、分類クラス推論装置1にユーザから所定の入力がされた場合、又は所定のタイミング(例えば、所定の時刻、所定の時間間隔)で実行される。
【0053】
まず、経験ルールモデル構築手段113は、対象データ121及び疑似データ124に、各経験ルール123を適用し、経験ルール適用結果701を生成する(S801)。
【0054】
(経験ルール適用結果)
図16は、経験ルール適用結果701の一例を示す図である。経験ルール適用結果701は、データIDが設定されるデータID211、及び、対象データ121又は疑似データ124に各経験ルール123を適用した結果(分類クラス)が設定される適用結果711の各項目を有する。
【0055】
続いて、経験ルールモデル構築手段113は、正解ラベル122のデータをコピー(複製)して学習用ラベル702を生成する。また、経験ルールモデル構築手段113は、疑似データ124に対応する学習用ラベル702を、経験ルール適用結果701から生成する(S802)。例えば、経験ルールモデル構築手段113は、適用結果711の統計値(例えば、平均値又は中央値等)を、疑似データ124の学習用ラベル702とする。
【0056】
(学習用ラベル)
図17は、学習用ラベル702の一例を示す図である。学習用ラベル702は、データIDが設定されるデータID211、及びラベル215の各項目を有する。学習用ラベル702のデータ構成は、正解ラベル122と同様である。
【0057】
続いて、経験ルールモデル構築手段113は、経験ルール適用結果701を入力とし、学習用ラベル702を推論(出力)する経験ルールモデル125を構築する(S803)。経験ルールモデル125は、例えば、ニューラルネットワーク、決定木、ランダムフォレスト、サポートベクターマシン(SVM: Support Vector Machine)等のアルゴリズムに基づき構築される。例えば、経験ルールモデル構築手段113は、ニューラルネットワークにより経験ルールモデル125を構築する場合には、経験ルールモデル125に、NN(Neural Network)モデル構成情報と、重み及びバイアス情報を格納する。
【0058】
(経験ルールモデル)
図18は、経験ルールモデル125におけるパラメータの一例を示す図である。経験ルールモデル125は、NNモデル構成情報が設定されるNNモデル構成情報712と、各ニューラルネットワークの結合のパラメータ及びその重みの値並びにバイアス情報を設定する重み、バイアス情報713の各項目を有する。
【0059】
<誤推論要因分析処理>
図19は、誤推論要因分析処理を実行する推論実行手段114及び誤推論要因分析手段115に入出力される各種データを示す図である。推論実行手段114は、対象データ121、正解ラベル122、及び経験ルールモデル125を入力として受け取り、後述するSHAP値管理テーブル901を出力する。また、誤推論要因分析手段115は、対象データ121、正解ラベル122、及び経験ルールモデル125を入力として受け取り、SHAP値管理テーブル901を更新しながら、誤推論要因分析処理を実行することにより、後述する誤推論要因126を出力する。
【0060】
図20は、誤推論要因分析処理S7の詳細を説明する処理フロー図である。誤推論要因分析処理は、例えば、分類クラス推論装置1にユーザから所定の入力がされた場合、又は所定のタイミング(例えば、所定の時刻、所定の時間間隔)で実行される。
【0061】
まず、推論実行手段114は、正解ラベル122をSHAP値管理テーブル901にコピー(複製)する(S1001)。
【0062】
(SHAP値管理テーブル)
図21は、SHAP値管理テーブル901の一例を示す図である。SHAP値管理テーブル901は、データIDが設定されるデータID211、1又は複数の説明変数が設定される説明変数214(図示する例では、説明変数1、説明変数2、・・・、説明変数m)、経験ルールモデル125による推論の結果が設定される推論値913、正解ラベルが設定される正解ラベル914、各経験ルール123それぞれのSHAP(SHapley Additive exPlanations)値が設定されるSHAP値915の各項目を有する。SHAP値については後述する。
【0063】
続いて、推論実行手段114は、対象データ121に各経験ルール123を適用した経験ルール適用結果を経験ルールモデル125に入力することにより、推論値を算出してSHAP値管理テーブル901に格納する(S1002)。
【0064】
続いて、誤推論要因分析手段115は、各データID211それぞれについて、各経験ルール123それぞれの推論値への寄与度(寄与した度合)を算出する。経験ルールモデル125は、経験ルール適用結果を入力とし、分類クラスを出力とするため、SHAP等のモデルの予測結果に対する各変数(特徴量)の寄与を求めるための手法により、各経験ルール123の出力値に対する寄与度を算出することができる。そのため、本実施形態では、誤推論要因分析手段115は、SHAPにより算出した値(以下、「SHAP値」とする。)を、推論値への寄与度とする。そして、誤推論要因分析手段115は、算出したSHAP値をSHAP値管理テーブル901に格納する(S1003)。
【0065】
続いて、誤推論要因分析手段115は、誤差(推論値と正解ラベルとの差)への寄与度(以下、「誤差寄与度」とする。)を、各経験ルール123それぞれについて算出する。具体的には、まず、誤推論要因分析手段115は、各データID211それぞれについて、推論値から正解ラベルを減算した値に経験ルール123のSHAP値を乗算した値{(推論値)-(正解ラベル)}*(SHAP値)を算出する。SHAP値は、推論値に対して、プラスに働いた場合には正の値となり、マイナスに働いた場合には負の値となる。そのため、推論値から正解ラベルを減算した値に、経験ルール123のSHAP値を乗算した値を算出することにより、各データID211それぞれについての各経験ルール123の誤差寄与度を算出することができる。続いて、誤推論要因分析手段115は、各経験ルール123それぞれについて、算出した値{(推論値)-(正解ラベル)}*(SHAP値)の総計値(各データID211それぞれに対する誤差寄与度の合計値)を算出する。そして、誤推論要因分析手段115は、各経験ルール123それぞれについて、算出した総計値を、経験ルールモデル125全体に対する誤差寄与度として誤推論要因126に格納する(S1004)。その後、誤推論要因分析手段115は、本誤推論要因分析処理を終了する。
【0066】
(誤推論要因)
図22は、誤推論要因126の一例を示す図である。誤推論要因126は、経験ルールIDが設定される経験ルールID916、及び、誤差寄与度917の各項目を有する。
【0067】
<経験ルール補正処理>
図23は、経験ルール補正処理S8の詳細を説明する処理フロー図である。経験ルール補正処理は、例えば、分類クラス推論装置1にユーザから所定の入力がされた場合、又は所定のタイミング(例えば、所定の時刻、所定の時間間隔)で実行される。
【0068】
まず、分類クラス推論装置1は、誤推論要因126を参照して、誤差寄与度917が所定の閾値よりも大きい経験ルール123を補正(例えば、削除又は修正)する(S1101)。誤差寄与度917と比較する閾値は、例えば、ユーザが予め設定する。或いは、分類クラス推論装置1は、誤推論要因126を出力装置104に表示して、各経験ルール123の補正(削除又は修正)を入力装置103においてユーザから受け付けてもよい。ユーザは、誤推論寄与度の値が大きいほど誤差に多く寄与した経験ルール123であることがわかるため、誤推論要因126を参照して、経験ルール123を削除、又は修正する。
【0069】
続いて、分類クラス推論装置1は、上述したS801からS803までの処理、及び、S1001からS1004までの処理を、再実行する(S1102)。
【0070】
その後、分類クラス推論装置1は、経験ルールモデル125の推論精度が所定の目標精度に達したか否かを判定する(S1103)。目標精度は、例えば、ユーザが予め設定する。例えば、分類クラス推論装置1は、再構築した経験ルールモデル125に対象データ121を入力した推論結果と正解ラベル122との一致度に基づいて推論精度を算出する。分類クラス推論装置1は、経験ルールモデル125の推論精度が目標精度に達していない場合には(S1103:NO)、S1101の処理に戻る。一方、分類クラス推論装置1は、経験ルールモデル125の推論精度が目標精度に達した場合には(S1103:YES)、本経験ルール補正処理を終了する。
【0071】
以上説明したように、本実施形態の分類クラス推論装置1は、対象データ121から分類クラスを推論する経験ルールモデル125を構築する分類クラス推論装置1であって、業務に関する条件から当該条件に対応する分類クラスを決定する複数の経験ルール123と、複数の対象データ121と、対象データ121の正解ラベル122とを記憶する記憶装置102と、業務に関する条件に対応する疑似データ124を生成し、疑似データ124、及び経験ルール123に基づいて経験ルールモデル125を構築する経験ルールモデル構築処理と、経験ルールモデル125に対象データ121を入力することにより、対象データ121に対応する分類クラスを推論する経験ルールモデル推論処理と、推論した分類クラスと、対象データ121の正解ラベル122とを比較することにより、経験ルールモデル125の推論精度の低下の要因となる経験ルール123を特定するための誤推論要因126を生成して出力する誤推論要因分析処理とを実行する演算装置101と、を備える。
【0072】
すなわち、本実施形態の分類クラス推論装置1は、業務に関する条件から当該条件に対応する分類クラスを決定する経験ルール123を予め記憶しているため、学習データのデータ量が充分でない場合であっても、対象データ121の分類クラスを推論する経験ルールモデル125を構築することができる。さらに、分類クラス推論装置1は、経験ルール123それぞれの、経験ルールモデル125の推論精度の低下に対する寄与度(誤差寄与度)を出力するため、ユーザは、経験ルールモデル125の推論精度向上のために補正すべき経験ルール123を容易に把握することができる。これにより、対象データ121を適切なクラスに分類する経験ルールモデル125をより少ない工数で構築することができる。
【0073】
また、本実施形態の分類クラス推論装置1は、誤推論要因分析処理において、経験ルール123それぞれについて、経験ルールモデル125の推論精度の低下への寄与度を算出し、算出した寄与度が所定の閾値より大きい経験ルール123を補正して、経験ルールモデル125を再構築する経験ルール補正処理を実行する。
【0074】
このような構成により、分類クラス推論装置1は、推論精度を低下させる要因となる経験ルール123を自動的に補正して経験ルールモデル125を再構築する。これにより、ユーザが手動で経験ルール123を補正する工数を省き、推論精度を更に向上させる経験ルールモデル125を自動的に生成することができる。
【0075】
また、本実施形態の分類クラス推論装置1は、新たな経験ルール123を定義するための注目特徴量情報302を記憶し、複数の対象データ121と、対象データ121の正解ラベル122と、注目特徴量情報302とに基づいて、経験ルール123を新たに生成する経験ルール自動抽出処理を実行する。具体的には、分類クラス推論装置1は、経験ルール自動抽出処理において、複数の対象データ121それぞれの特徴量の値を算出し、特徴量の値に基づいて複数の対象データ121を複数のセグメントに分け、各セグメントにおける特徴量の値と、対象データ121の正解ラベル122に基づく経験ルール123を生成する。
【0076】
このような構成により、分類クラス推論装置1は、注目特徴量情報302に基づく新たな経験ルール123を自動的に生成することができる。よって、ユーザが手動で経験ルール123を作成する工数を削減しつつ、推論精度の良い経験ルールモデル125を構築することできる。
【0077】
また、本実施形態の分類クラス推論装置1は、経験ルール自動抽出処理において、セグメントの数が所定数になるまで、隣接するセグメント間における対象データ121の正解ラベル122の分布の類似度に基づいてセグメントを統合する。
【0078】
このような構成により、分類クラス推論装置1は、より精度の良い経験ルール123を生成することができる。これにより、より推論精度の良い経験ルールモデル125を構築することできる。
【0079】
[第2の実施形態]
続いて、本発明の第2の実施形態における分類クラス推論装置、分類クラス推論方法及び分類クラス推論プログラムについて説明する。
【0080】
図24は、本実施形態における分類クラス推論装置1Aの構成の一例を示す図である。本図において、第1の実施形態の分類クラス推論装置1と同様の構成には同一の符号を付し、その説明を省略する。
【0081】
対象データ121の分類クラスを推論するための学習データが充分でない場合であっても、対象データ121とは異なる用途に使用される学習データが充分にある場合がある。例えば、所定の業種(例えば、農水業)に対するサービス(分類クラスの推論)を既に実施しており、サービス拡大のために対象データ121の業種(例えば、鉱業)に対するサービス(分類クラスの推論)を新たに開始する場合等には、新たなサービスの業種(鉱業)に対する学習データは充分でなくとも、既にサービスを実施している業種(農水業)の学習データ(業務データ)は充分に蓄積されていることがある。
【0082】
そこで、本実施形態における分類クラス推論装置1は、対象データ121とはその用途が異なる学習データである他用途データ1311を用いて、経験ルールモデル125の推論精度を向上させる点が、第1の実施形態と異なる。
【0083】
演算装置101Aは、記憶装置102Aに記憶されているプログラムを実行することにより、第1の実施形態における演算装置101が実現する各機能に加えて、経験ルール品質評価手段1301、及び、追加注目特徴量抽出手段1302の各機能それぞれを実現する。
【0084】
経験ルール品質評価手段1301は、経験ルール自動抽出手段111が他用途データ1311及び他用途データ1311の正解ラベルを示す他用途正解ラベル1312に基づいて生成した他用途向けの経験ルール(他用途経験ルール1313(他用途ルール))から、経験ルールモデル125の構築に使用する経験ルール(流用可能経験ルール1314)を抽出するルール品質評価処理を実行する。
【0085】
追加注目特徴量抽出手段1302は、経験ルールモデル125を構築するために使用する新たな経験ルール123を生成するための、追加の注目特徴量(追加注目特徴量1317)を抽出する追加注目特徴量抽出処理を実行する。
【0086】
記憶装置102Aは、第1の実施形態における演算装置101が実現する各機能に加えて、経験ルール品質評価手段1301、及び、追加注目特徴量抽出手段1302の各機能それぞれを実現すためのプログラムを記憶している。
【0087】
また、記憶装置102Aは、第1の実施形態における記憶装置102が記憶する各種データに加えて、他用途データ1311、他用途正解ラベル1312、後述する他用途経験ルール1313、後述する流用可能経験ルール1314、後述する誤推論データ1315、後述する誤推論データ推論モデル1316、及び、後述する追加注目特徴量1317をそれぞれ記憶している。
【0088】
他用途データ1311は、対象データ121とは異なる用途に用いる学習データである。他用途データ1311のデータ構成は、対象データ121と同様である。
【0089】
他用途正解ラベル1312は、他用途データ1311の正解ラベルである。他用途正解ラベル1312のデータ構成は、正解ラベル122と同様である。
【0090】
<処理の概要>
図25は、分類クラス推論装置1Aの各機能に入出力される各種データを示す図である。図26は、分類クラス推論装置1Aで行われる処理の概要を説明する図である。本図に示す処理は、例えば、分類クラス推論装置1Aにユーザから所定の入力がされた場合、又は所定のタイミング(例えば、所定の時刻、所定の時間間隔)で実行される。
【0091】
まず、経験ルール自動抽出手段111が、他用途データ1311、及び他用途正解ラベル1312を入力とし、上述したS401からS406の処理を実行することにより、他用途経験ルール1313を抽出する(S1401)。他用途経験ルール1313は、他用途の経験ルールであって、そのデータ構成は、経験ルール123と同様である。
【0092】
続いて、経験ルール品質評価手段1301が、対象データ121に他用途経験ルール1313を適用し、適用した結果である経験ルール適用結果と正解ラベル122とを他用途経験ルール1313ごとに比較する。そして、経験ルール自動抽出手段111は、経験ルール適用結果と正解ラベル122とが一致する度合(一致度)が予め設定された閾値以上である他用途経験ルール1313を、流用可能経験ルール1314として登録する(S1402)。流用可能経験ルール1314は、経験ルールモデル125に流用可能な他用途経験ルール1313であって、そのデータ構成は、経験ルール123と同様である。
【0093】
続いて、経験ルール自動抽出手段111が、対象データ121、及び正解ラベル122を入力とし、上述したS401からS406を実行することにより、経験ルール123を抽出する(S1403)。
【0094】
続いて、追加注目特徴量抽出手段1302が、S1402で抽出した流用可能経験ルール1314を経験ルール123に追加する。そして、追加注目特徴量抽出手段1302は、上述したS801からS803の処理を実行することにより、対象データ121、正解ラベル122、疑似データ124、及び経験ルール123から、経験ルールモデル125を構築する(S1404)。
【0095】
続いて、追加注目特徴量抽出手段1302は、経験ルールモデル125に対象データ121を入力することにより、各対象データ121の推論値を算出する。そして、追加注目特徴量抽出手段1302は、推論値が正解ラベル122と一致しない対象データ121を誤推論データ1315として収集する(S1405)。誤推論データ1315のデータ構成は、対象データ121と同様である。
【0096】
続いて、追加注目特徴量抽出手段1302は、誤推論データ1315から、誤推論データに対応する正解ラベル122を推論する(誤推論データ1315を入力とし、誤推論データに対応する正解ラベル122を出力する)機械学習モデルを構築する。機械学習モデルは、例えば、ニューラルネットワーク、決定木、ランダムフォレスト、サポートベクターマシン(SVM: Support Vector Machine)等のアルゴリズムに基づき構築される。そして、追加注目特徴量抽出手段1302は、当該機械学習モデルの説明変数ごとのSHAP値を算出し、SHAP値の絶対値が所定の閾値以上の説明変数を追加注目特徴量1317に格納する(S1406)。
【0097】
(追加注目特徴量)
図27は、追加注目特徴量1317の一例を示す図である。追加注目特徴量1317は、説明変数が設定される説明変数1011、及び、SHAP値が設定される着目度1012の各項目を有する。
【0098】
続いて、追加注目特徴量抽出手段1302は、追加注目特徴量1317の説明変数1011を注目特徴量情報302に登録する。そして、追加注目特徴量抽出手段1302は、上述したS401からS406の処理を実行することにより、経験ルール123を追加で抽出(新規に生成)する(S1407)。
【0099】
続いて、経験ルールモデル構築手段113が、上述したS801からS803の処理を実行することにより、対象データ121、正解ラベル122、疑似データ124、及び経験ルール123から、経験ルールモデル125を構築する(S1404)。その後、処理を終了する。
【0100】
以上説明したように、本実施形態の分類クラス推論装置1Aは、対象データ121と異なる他の用途に用いられる他用途データ1311と、他用途正解ラベル1312とを記憶し、他用途データ1311と、他用途正解ラベル1312とに基づいて、他用途経験ルール1313を生成し、対象データ121に他用途経験ルール1313を適用することで、他用途経験ルール1313から、経験ルールモデル125の構築に使用する流用可能経験ルール1314を抽出するルール品質評価処理を実行する。
【0101】
すなわち、本実施形態の分類クラス推論装置1Aは、学習データが充分にある他の用途(例えば、他の業種)の他用途経験ルール1313から流用可能経験ルール1314を自動的に抽出する。これにより、他の用途で用いられる信頼性のある経験ルールを流用することができるため、ユーザが手動で経験ルール123を作成する手間を省き、より少ない工数で、より精度の良い経験ルールモデル125を構築することができる。
【0102】
また、本実施形態の分類クラス推論装置1Aは、経験ルール123と、流用可能経験ルール1314とに基づいて、経験ルールモデル125を構築し、構築した経験ルールモデル125に対象データ121を入力した推論結果が正解ラベルと一致しない要因となる対象データ121の変数を、新たな特徴量として抽出し、抽出した特徴量に基づいて、経験ルール123を新たに生成し、新たに生成した経験ルール123と、記憶装置102Aが記憶する経験ルールと123、流用可能経験ルール1314とに基づいて、経験ルールモデル125を再構築する追加注目特徴量抽出処理を実行する。
【0103】
すなわち、分類クラス推論装置1Aは、現状の経験ルール123のみでは、推論結果が正解ラベルと一致しない誤推論の要因となる対象データ121の説明変数に着目している。そして、分類クラス推論装置1Aは、その説明変数を特徴量とすることにより、誤推論を正すことが可能な(現状では不足している)経験ルール123を新規に生成することができる。よって、経験ルールモデル125の推論精度を更に向上させる新たな経験ルール123を自動的に生成することができる。これにより、ユーザが手動で経験ルール123を作成する手間を省き、より少ない工数で、より精度の良い経験ルールモデル125を構築することができる。
【0104】
本発明は、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲内で、任意の構成要素を用いて実施可能である。以上説明した実施形態や変形例はあくまで一例であり、発明の特徴が損なわれない限り、本発明はこれらの内容に限定されるものではない。また、上記では種々の実施形態や変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
【0105】
例えば、本実施形態の各装置が備えるハードウェアの一部は、他の装置に設けてもよい。
【0106】
また、分類クラス推論装置1,1Aの各プログラムは他の装置に設けてもよいし、あるプログラムを複数のプログラムからなるものとしてもよいし、複数のプログラムを一つのプログラムに統合してもよい。
【符号の説明】
【0107】
1,1A 分類クラス推論装置、111 経験ルール自動抽出手段、112 学習データ補完手段、113 経験ルールモデル構築手段、114 推論実行手段 115 誤推論要因分析手段、121 対象データ、122 正解ラベル、123 経験ルール、124 疑似データ、125 経験ルールモデル、126 誤推論要因、1301 経験ルール品質評価手段、1302 追加注目特徴量抽出手段、1311 他用途データ1311、1312他用途正解ラベル、1313 他用途経験ルール1313、1314 流用可能経験ルール、1315 誤推論データ、1316 誤推論データ推論モデル、1317 追加注目特徴量
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27