(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023123247
(43)【公開日】2023-09-05
(54)【発明の名称】分類装置、分類方法およびプログラム
(51)【国際特許分類】
G06F 16/906 20190101AFI20230829BHJP
G06N 3/02 20060101ALI20230829BHJP
【FI】
G06F16/906
G06N3/02
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022027215
(22)【出願日】2022-02-24
(71)【出願人】
【識別番号】000233538
【氏名又は名称】株式会社日立ソリューションズ東日本
(74)【代理人】
【識別番号】110002572
【氏名又は名称】弁理士法人平木国際特許事務所
(72)【発明者】
【氏名】飯塚 新司
(72)【発明者】
【氏名】中山 隆
(72)【発明者】
【氏名】塚原 朋哉
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175FA03
5B175JA02
(57)【要約】 (修正有)
【課題】情報の属するドメインが異なる類似事例も検索できるようにインデックスを生成する分類装置、分類方法及びプログラムを提供する。
【解決手段】分類対象情報を、複数の分類結果のいずれかに分類する分類装置であって、分類装置は、分類モデル学習部31及び分類実行部を備える。分類モデル学習部は、分類対象情報の属するドメインを表すドメインコードと、分類対象情報に関する属性情報と、分類対象情報が分類されるべき正解の分類結果を表す分類結果情報とに基づき、機械学習を行うことにより分類モデルを学習して、学習済みモデルを生成する。分類実行部は、ドメインコード及び属性情報に基づき、学習済みモデルを用いて分類対象情報を分類する。
【選択図】
図8
【特許請求の範囲】
【請求項1】
分類対象情報を、複数の分類結果のいずれかに分類する分類装置であって、
前記分類装置は、分類モデル学習部および分類実行部を備え、
前記分類モデル学習部は、前記分類対象情報の属するドメインを表すドメインコードと、前記分類対象情報に関する属性情報と、前記分類対象情報が分類されるべき正解の分類結果を表す分類結果情報とに基づき、機械学習を行うことにより分類モデルを学習して、学習済みモデルを生成し、
前記分類モデルは、
前記属性情報の一部または全部に関する入力を受け付け、複数次元の数値ベクトルであるインデックスを出力する、エンコーダ層と、
前記機械学習により学習したプロトタイプと前記インデックスとの類似度を出力する、プロトタイプ層と、
前記ドメインコードおよび前記類似度に関する入力を受け付け、分類結果を出力する、出力層と、
前記インデックスに基づき前記ドメインコードを予測する、ドメインコード予測部と、
を備え、
前記分類モデル学習部は、前記機械学習において、敵対的学習を適用することにより、前記ドメインコード予測部による前記ドメインコードの予測誤差が最大化されるように機械学習を行い、
前記分類実行部は、前記ドメインコードおよび前記属性情報に基づき、前記学習済みモデルを用いて前記分類対象情報を分類する、
分類装置。
【請求項2】
前記分類装置は、さらに、
前記エンコーダ層により出力された前記インデックスと、当該インデックスに対応する前記分類対象情報との関連をインデックステーブルに格納する、インデックス作成部と、
検索対象の前記分類対象情報に対するインデックスである検索対象インデックスおよび前記インデックステーブルに基づき、前記検索対象インデックスと値が類似するインデックスを類似インデックスとして取得し、前記類似インデックスに関連付けられた分類対象情報を出力する、類似情報検索部と、
を備える、請求項1に記載の分類装置。
【請求項3】
前記類似情報検索部は、
ユークリッド距離が指定された閾値以下であること、または、
コサイン類似度が指定された閾値以上であること、
のいずれかを基準として、インデックスの値が類似しているかどうかを判定する、請求項2に記載の分類装置。
【請求項4】
前記インデックスは3次元以上のベクトルであり、
前記類似情報検索部は、主成分分析またはt-SNEのいずれかの手法を用いて、前記類似インデックスを2次元のベクトルに次元圧縮し、前記2次元のベクトルを散布図により表示する、
請求項2または3に記載の分類装置。
【請求項5】
前記類似情報検索部は、前記類似インデックスをクラスタ分析によりクラスタリングし、
前記散布図はバブルチャートを含み、前記バブルチャートは、クラスタの中心点およびクラスタに属する前記類似インデックスの数を、それぞれ円の中心点と円の大きさにより表す、
請求項4に記載の分類装置。
【請求項6】
分類対象情報を、複数の分類結果のいずれかに分類する分類方法であって、請求項1に記載の分類装置によって実行される、分類方法。
【請求項7】
コンピュータを、請求項1に記載の分類装置として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、分類装置、分類方法およびプログラムに関する。
【背景技術】
【0002】
情報を分類するための方法として、近年ニューラルネットワークを使用したディープラーニングによる手法が用いられるようになっている。
【0003】
その中でも非特許文献1に示されているプロトタイプベースの手法は、その出力であるインデックスを用いることで、分類だけでなく類似情報の検索も行うことができ、AIの判断根拠となる類似事例を示すことができる手法として注目されている。プロトタイプベースの手法では、分類モデルは入力データをエンコーダ層によりインデックスに変換し、プロトタイプ層でインデックスと複数のプロトタイプとの距離を算出して、その距離をもとに出力層で分類を行う手法である。ここでプロトタイプとは、訓練データでの典型的なインデックスの値であり、訓練時に分類モデルのパラメータとして学習される。この構成により、入力データの内容が類似していて、かつ分類結果が同じ情報は、インデックスが近い値になるように学習される。
【0004】
また、特許文献1に記載の技術は、テキストデータや時系列データなどの列データを入力データとできるようにプロトタイプベースの手法を改良したものであり、テキストで表現された情報の分類に適用することができる。
【0005】
これらの技術は、例えば訪問修理サービスにおける不具合の原因の分類に用いることができる。この場合、入力データとしては、例えば、商品の大まかな分類を表す商品品目や、商品を特定するための商品品番、不具合の大まかな分類を表す大分類、中分類などのコード、顧客が申し出た不具合の内容を表すテキストデータ、修理エンジニアが現場で確認した結果を表すテキストデータなどを用いる。これらを入力データとしてプロトタイプベースの手法を適用することで、不具合の原因を分類するとともに、インデックスにより類似事例を検索して、それらの事例の修理報告書を参照することで、適切な処置を行うことができる。
【0006】
インデックスによる類似事例の検索は、修理サービスでの利用にとどまらず、蓄積された修理サービスデータの品質分析を行う場面でも利点が期待される。修理サービスを提供する住設機器メーカでは、あるドメイン(たとえばある特定の商品品目)で発生した不具合について、他のドメイン(たとえば別の商品品目)でも類似事例がないか横断的に分析したいというニーズがある。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】米国特許出願公開第2020/0364504号明細書
【非特許文献】
【0008】
【非特許文献1】Oscar Li、他、「Deep Learning for Case-Based Reasoning Through Prototypes: A Neural Network That Explains Its Predictions」、Proceedings of the AAAI Conference on Artificial Intelligence、Vol. 32、No. 1、2018年
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかしながら、従来の技術では、情報の属するドメインが異なる類似事例も検索できるようにインデックスを生成することが困難であるという課題があった。
【0010】
たとえば、非特許文献1や特許文献1に記載されている技術では、商品品目のコードも含めてすべての入力データをインデックスに変換するため、インデックスが商品品目の情報を含んでしまい、不具合の内容や原因が類似していても、商品品目が異なる場合にはインデックスが近い値にならない。そのため、従来の技術で生成されるインデックスでは、ドメイン(商品品目)が異なる類似事例を検索することは困難である。
【0011】
本発明は、上記の課題を解決するためになされたものであり、情報の属するドメインが異なる類似事例も検索できるようにインデックスを生成することができる分類装置、分類方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明に係る分類装置の一例は、
分類対象情報を、複数の分類結果のいずれかに分類する分類装置であって、
前記分類装置は、分類モデル学習部および分類実行部を備え、
前記分類モデル学習部は、前記分類対象情報の属するドメインを表すドメインコードと、前記分類対象情報に関する属性情報と、前記分類対象情報が分類されるべき正解の分類結果を表す分類結果情報とに基づき、機械学習を行うことにより分類モデルを学習して、学習済みモデルを生成し、
前記分類モデルは、
前記属性情報の一部または全部に関する入力を受け付け、複数次元の数値ベクトルであるインデックスを出力する、エンコーダ層と、
前記機械学習により学習したプロトタイプと前記インデックスとの類似度を出力する、プロトタイプ層と、
前記ドメインコードおよび前記類似度に関する入力を受け付け、分類結果を出力する、出力層と、
前記インデックスに基づき前記ドメインコードを予測する、ドメインコード予測部と、
を備え、
前記分類モデル学習部は、前記機械学習において、敵対的学習を適用することにより、前記ドメインコード予測部による前記ドメインコードの予測誤差が最大化されるように機械学習を行い、
前記分類実行部は、前記ドメインコードおよび前記属性情報に基づき、前記学習済みモデルを用いて前記分類対象情報を分類する。
【0013】
一例において、前記分類装置は、さらに、
前記エンコーダ層により出力された前記インデックスと、当該インデックスに対応する前記分類対象情報との関連をインデックステーブルに格納する、インデックス作成部と、
検索対象の前記分類対象情報に対するインデックスである検索対象インデックスおよび前記インデックステーブルに基づき、前記検索対象インデックスと値が類似するインデックスを類似インデックスとして取得し、前記類似インデックスに関連付けられた分類対象情報を出力する、類似情報検索部と、
を備える。
【0014】
一例において、前記類似情報検索部は、
ユークリッド距離が指定された閾値以下であること、または、
コサイン類似度が指定された閾値以上であること、
のいずれかを基準として、インデックスの値が類似しているかどうかを判定する。
【0015】
一例において、前記インデックスは3次元以上のベクトルであり、
前記類似情報検索部は、主成分分析またはt-SNEのいずれかの手法を用いて、前記類似インデックスを2次元のベクトルに次元圧縮し、前記2次元のベクトルを散布図により表示する。
【0016】
一例において、前記類似情報検索部は、前記類似インデックスをクラスタ分析によりクラスタリングし、
前記散布図はバブルチャートを含み、前記バブルチャートは、クラスタの中心点およびクラスタに属する前記類似インデックスの数を、それぞれ円の中心点と円の大きさにより表す。
【0017】
本発明に係る分類方法は、分類対象情報を、複数の分類結果のいずれかに分類する分類方法であって、上述の分類装置によって実行される。
【0018】
本発明に係るプログラムは、コンピュータを、上述の分類装置として機能させる。
【発明の効果】
【0019】
本発明に係る分類装置、分類方法およびプログラムによれば、情報の属するドメインが異なる類似事例も検索できるようにインデックスを生成することができる。
【図面の簡単な説明】
【0020】
【
図1】本発明の実施形態1に係る分類装置10の構成。
【
図6】分類装置10の動作の例を示すフローチャート。
【発明を実施するための形態】
【0021】
以下、本発明の実施形態を添付図面に基づいて説明する。
[実施形態1]
図1に、本発明の実施形態1に係る分類装置10の構成を示す。分類装置10は、本明細書に記載される情報の分類方法を実行することにより、分類対象情報を、複数の分類結果のいずれかに分類する装置である。分類対象情報は、本実施形態では商品の不具合報告であるが、変形例として様々な情報とすることができる。具体例として、画像、心電図等の時系列データ、テキストデータ、等に応用が可能である。
【0022】
分類装置10は、公知のコンピュータとしてのハードウェア構成を有し、たとえば記憶部20および処理部30を備える。記憶部20はたとえば半導体メモリ装置および磁気ディスク装置等の記憶媒体を含む。記憶媒体の一部または全部が、過渡的でない(non-transitory)記憶媒体であってもよい。処理部30はたとえばプロセッサを含む。
【0023】
また、分類装置10は図示しない入出力手段を備えてもよい。入出力手段は、たとえばキーボードおよびマウス等の入力装置と、ディスプレイおよびプリンタ等の出力装置と、ネットワークインタフェース等の通信装置とを含む。
【0024】
記憶部20は、分類対象情報テーブル21、分類結果テーブル22、訓練データテーブル23、学習済み分類モデル24およびインデックステーブル25を記憶する。処理部30は、分類モデル学習部31、分類実行部32、インデックス作成部33および類似情報検索部34として機能する。
【0025】
記憶部20は、図示しないプログラムを記憶してもよい。プロセッサがこのプログラムを実行することにより、分類装置10は本明細書において説明される機能を実行してもよい。すなわち、このプログラムは、コンピュータを分類装置10として(より具体的には、プロセッサを、分類モデル学習部31、分類実行部32、インデックス作成部33および類似情報検索部34として)機能させるものであってもよい。
【0026】
図2に、分類対象情報テーブル21の構成例を示す。分類対象情報テーブル21は、分類対象情報である不具合報告のそれぞれについて、その不具合報告を識別する情報(情報ID)に、その不具合報告に関する情報を関連付けて格納する。
【0027】
不具合報告に関する情報は、ドメインコードおよび属性情報を含む。ドメインコードは、その不具合報告の属する大まかな分類であるところのドメインを表す。本実施形態では、ドメインとは、不具合報告に係る商品の品目であるが、変形例において、ドメインは当業者が適宜定義可能である。
【0028】
属性情報は、不具合報告に関する情報であってドメインコードとは異なるものであればとくに制限はないが、本実施形態では、商品の品番と、不具合の大分類と、不具合の中分類と、顧客の申し出内容を表すテキストデータと、作業員による不具合の確認結果を表すテキストデータとを含む。
【0029】
図3に、分類結果テーブル22の構成例を示す。分類結果テーブル22は、不具合報告のそれぞれについて、その不具合報告の情報IDに、その不具合報告の分類結果を関連付けて格納する。分類結果は、本実施形態では不具合の原因を表すコードであるが、変形例において、当業者が適宜定義可能である。この分類結果は、たとえば人間により指定された適切なものであり、機械学習の際には、分類対象情報が分類されるべき正解の分類結果を表す分類結果情報として用いることができる。また、後述するように、分類モデル学習部31によって分類が行われた後には、その分類結果を含んでもよい。
【0030】
図4に、訓練データテーブル23の構成例を示す。訓練データテーブル23は、不具合のそれぞれについて、その不具合報告の情報IDに、その不具合報告のドメインコード、その不具合報告の属性情報、その不具合報告の分類結果、等を関連付けて格納する。ドメインコードおよび属性情報は、
図2の分類対象情報テーブル21のものと同一とすることができ、分類結果は、
図3の分類結果テーブル22のものと同一とすることができる。
【0031】
分類装置10の分類モデル学習部31は、訓練データテーブル23に基づいて機械学習を行うことにより分類モデルを学習し、学習済みモデルとして、学習済み分類モデル24を生成する。この際の具体的な処理については、
図7等を用いて後述する。
【0032】
図5に、インデックステーブル25の構成例を示す。インデックステーブル25は、不具合報告のそれぞれについて、その不具合報告の情報IDに、その不具合報告のインデックスを関連付けて格納する。インデックスは、不具合報告の属性情報の一部または全部を入力として、後述するエンコーダ層42が出力する、複数次元(好ましくは多次元)の数値ベクトルであり、要素として、インデックス要素1、インデックス要素2、インデックス要素3、等を含む。
【0033】
図6は、分類装置10の動作の例を示すフローチャートである。このフローチャートは、分類装置10が実行する情報の分類方法を表す。
【0034】
まず分類装置10の分類モデル学習部31は、分類モデルの学習を実行する(ステップS1)。この時点で、分類対象情報テーブル21および分類結果テーブル22は記憶部20に記憶されているものとする。
【0035】
図7に、ステップS1の詳細例を示す。ステップS1において、まず分類モデル学習部31は、分類対象情報テーブル21および分類結果テーブル22を、情報IDをキーとして内部結合により連結し、訓練データテーブル23に格納する(ステップS11)。このようにして訓練データテーブル23が生成される。
【0036】
次に、分類モデル学習部31は、訓練データテーブル23のデータに基づき、分類モデルを学習する(ステップS12)。これについて、以下、具体的に説明する。
【0037】
図8に、分類モデル学習部31の構成例を示す。分類モデル学習部31は、プロトタイプベースのニューラルネットワークを機械学習により学習する。とくに、敵対的学習により、ドメインコードの予測誤差が最大になるようにインデックスを学習し、インデックスにドメイン特有の情報が含まれることを防ぐ。そして、プロトタイプ層の出力である類似度ベクトルに、ドメインコードに対応するベクトルを付加(連結)して出力層に入力することにより、分類対象情報を分類する。
【0038】
分類モデル学習部31が学習する分類モデルは、埋め込み層41と、エンコーダ層42と、プロトタイプ層43と、出力層44と、ドメインコード予測部45とを備える。
【0039】
埋め込み層41は、分類対象情報に含まれるドメインコードおよび属性情報を入力として受け付け、複数の数値ベクトルを出力する。本実施形態では、ドメインコード(商品品目)に対応するベクトルv1、商品品番に対応するベクトルv2、不具合の大分類に対応するベクトルv3、不具合の中分類に対応するベクトルv4、顧客の申し出に含まれる単語1~nに対応するベクトルv5~vn+4、確認結果に含まれる単語’1~mに対応するベクトルvn+5~vn+m+4が出力される。
【0040】
ドメインコード等のコードをベクトルに変換する具体的処理は、当業者が公知技術等に基づいて適宜設計することができる。また、テキストデータを単語に分割する具体的処理および各単語をベクトルに変換する具体的処理も、当業者が公知技術等に基づいて適宜設計することができる。
【0041】
エンコーダ層42は、埋め込み層41が生成したベクトルのうち、属性情報に対応するベクトルの一部または全部に基づき、インデックスを生成する。本実施形態では、顧客の申し出および確認結果に対応するベクトルを用いているが、どのベクトルを用いるかは当業者が適宜設計可能であり、たとえば全部のベクトルを用いてもよい。ただし、ドメインコードに対応するベクトルは用いず、属性情報に対応するベクトルのみを用いる。エンコーダ層42は、たとえば複数の層42aを含むリカレントニューラルネットワーク(RNN)を用いて構成することができるが、これに限らない。
【0042】
このように、エンコーダ層42は、属性情報の一部または全部に関する入力を受け付け、インデックスを出力する。
【0043】
プロトタイプ層43は、パラメータとしてプロトタイプp1~pk(ただしkは1以上)を保持している。各プロトタイプは、インデックスと同じ次元のベクトルである。プロトタイプは、訓練データテーブル23のデータに基づき、分類モデル学習部31が行う機械学習により、分類モデルのパラメータの一部として学習される。その結果、各プロトタイプは、訓練データテーブル23に含まれる不具合報告に対する典型的なインデックスの値となるように学習される。この際の機械学習の具体的な処理は、特許文献1および非特許文献1を含む公知技術等に基づき、当業者が適宜設計可能である。
【0044】
プロトタイプ層43は、プロトタイプp1~pkのそれぞれと、エンコーダ層42から出力されるインデックスとの類似度を計算して出力する。
【0045】
類似度の定義は、当業者が適宜設計可能であるが、たとえば、ベクトル間のユークリッド距離を類似度として用いることができ、または、ベクトル間のコサイン類似度を類似度として用いることもできる。このような手法を用いると、インデックスと1つのプロトタイプとの類似度が1つのスカラー値として計算されるので、すべて(k個)の類似度を連結してk次元の類似度ベクトルを生成することができる。
【0046】
出力層44は、埋め込み層41から出力されるドメインコード(商品品目)に対応するベクトルv1と、属性情報に対応するベクトルの一部と、類似度ベクトルとを含む入力を受け付け、分類結果として不具合の原因を出力する。出力層44は、たとえば複数の層44aを含むRNNを用いて構成することができるが、これに限らない。RNNを用いる場合には、ドメインコード等に対応するベクトルv1~v4を、類似度ベクトルに連結して入力することができる。
【0047】
不具合の原因は、たとえば
図3の分類結果テーブル22に示すようなコードによって表される。出力層44の出力(たとえばベクトル)をコードに変換する具体的処理は、当業者が適宜設計することができるが、一例を以下に説明する。まず、複数の分類結果にそれぞれ番号を付与しておく。そして、複数の分類結果のそれぞれについて、分類対象情報がその分類結果に分類される確率を表す値を要素として含むベクトルを、出力層44が生成する。すなわち、分類結果を表すコードの取り得る値がq種類である場合には、出力層44はq次元のベクトルを生成する。そして、このq次元のベクトルの要素のうち最大の値を持つ要素に対応する分類結果を、出力層44による出力とする。
【0048】
ここで、出力層44の入力は、ドメインコードに対応するベクトルv1および類似度ベクトルを含む。このように、出力層44は、ドメインコードおよび類似度に関する入力を受け付け、分類結果を出力するということができる。
【0049】
ドメインコード予測部45は、インデックスに基づいてドメインコードを予測する。ドメインコード予測部45は、たとえば複数の全結合層を含むニューラルネットワークを用いて構成することができるが、これに限らない。
【0050】
分類モデル学習部31は、出力層44が出力した分類結果と、ドメインコード予測部45が出力したドメインコードとに基づいて、機械学習を行うことにより分類モデルを学習する。ここで、分類モデル学習部31は、出力された分類結果と、訓練データテーブル23においてその分類対象情報に関連付けられた分類結果との誤差が最小化されるように、かつ、出力されたドメインコードと、訓練データテーブル23においてその分類対象情報に関連付けられたドメインコードとの誤差が最大化されるように、分類モデルのパラメータを更新する。
【0051】
すなわち、分類モデル学習部31は、敵対的学習を適用することにより、ドメインコード予測部45によるドメインコードの予測誤差が最大化されるように機械学習を行う。この敵対的学習により、インデックスにドメイン特有の情報が含まれるのを防ぐことが可能となり、分類対象情報の属するドメインが異なる類似事例も検索できるようなインデックスを生成することができる。
【0052】
また、分類モデル学習部31は、このような敵対的学習と並行して、ドメインコードと、属性情報と、正解の分類結果を表す分類結果情報とに基づき、機械学習を行うことにより分類モデルを学習する。分類モデル学習部31は、このような2通りの機械学習を並行して行うことにより、学習済み分類モデル24を生成する。
【0053】
学習の際の具体的な誤差伝搬演算は、当業者が適宜設計することができる。たとえば、エンコーダ層42の学習については、ドメインコード予測部45の入力層の前にGRL(Gradient Reversal Layer)を配置しておき、出力層44から逆伝搬される誤差と、ドメインコード予測部45から逆伝搬される誤差(GRLによって勾配が逆転されたもの)とを、それぞれ最小化するように学習してもよい。
【0054】
以上のようにして、分類モデル学習部31は学習済み分類モデル24を生成する。なお、学習が完了した学習済み分類モデル24は、学習前の分類モデルと同様の層構造を有するものとすることができるが、ドメインコード予測部45を省略したものであってもよい。
【0055】
このようにしてステップS12(
図7)が終了する。次に、分類モデル学習部31は、学習済み分類モデル24を、記憶部20に格納する(ステップS13)。これによってステップS1(
図6)が終了する。
【0056】
ステップS1の後、分類実行部32が分類を実行する(ステップS2)。すなわち、分類実行部32は、新たに入力される分類対象情報に含まれるドメインコードおよび属性情報に基づき、学習済み分類モデル24を用いて分類結果を予測することにより、分類対象情報を分類する。
【0057】
図9に、ステップS2の詳細例を示す。ステップS2において、まず分類実行部32は、分類装置10のユーザが指定した分類対象情報(たとえば、新たに入力される分類対象情報であってもよいし、新たな分類対象情報テーブル21におけるレコードの1つであってもよい)を入力として、学習済み分類モデル24を用いて分類を実行する(ステップS21)。
【0058】
次に、分類実行部32は、学習済み分類モデル24の出力層により出力された分類結果を、入力された分類対象情報の情報IDに関連付けて、分類結果テーブル22に格納する(ステップS22)。このようにしてステップS2が終了する。
【0059】
図6に示すように、ステップS2の後、インデックス作成部33がインデックステーブル25を生成する(ステップS3)。
【0060】
図10に、ステップS3の詳細例を示す。ステップS3において、まずインデックス作成部33は、すべての分類対象情報(たとえば新たな分類対象情報テーブル21のレコードすべて)を入力として、学習済み分類モデル24を用いて分類を実行する(ステップS31)。
【0061】
次に、インデックス作成部33は、学習済み分類モデル24のエンコーダ層42により出力されたインデックスと、そのインデックスに対応する元の分類対象情報との関連を、インデックステーブル25に格納する(ステップS32)。このようにしてステップS3が終了する。
【0062】
図6に示すように、ステップS3の後、類似情報検索部34が類似情報の検索を行う(ステップS4)。
【0063】
図11に、ステップS4の詳細例を示す。ステップS4において、まず類似情報検索部34は、特定のインデックス(以下では「検索対象インデックス」と呼ぶ)を取得する(ステップS41)。検索対象インデックスは、たとえば、ユーザが指定した分類対象情報について、その情報IDをキーとして、インデックステーブル25を参照することにより取得されるが、これ以外の方法で指定または取得されるものであってもよい。
【0064】
次に、類似情報検索部34は、検索対象インデックスと、インデックステーブル25とに基づき、インデックステーブル25のうちから、検索対象インデックスと値が類似するインデックスを特定する(ステップS42)。ここで特定されるインデックスを、以下では「類似インデックス」と呼ぶ。類似インデックスは複数であってもよい。
【0065】
次に、類似情報検索部34は、取得した類似インデックスに関連付けられた情報IDをキーとして、分類対象情報テーブル21を参照し、対応する分類対象情報を取得し、これを検索結果として出力する(ステップS43)。
【0066】
ここで、上述の敵対的学習により、インデックスにドメイン特有の情報が含まれるのを防ぐことが可能となり、検索対象の情報とは異なるドメインに属する類似事例も検索することができる。
【0067】
類似情報検索部34による類似判定処理は、当業者が適宜設計することができるが、たとえば、検索対象インデックスと、インデックステーブル25の各インデックスとのユークリッド距離が指定された閾値以下であることを基準として、インデックスの値が類似しているかどうかを判定してもよい。または、類似情報検索部34は、検索対象インデックスと、インデックステーブル25の各インデックスとのコサイン類似度が指定された閾値以上であることを基準として、インデックスの値が類似しているかどうかを判定してもよい。
【0068】
とくに図示しないが、類似情報検索部34は、類似インデックスを散布図により表示してもよい。散布図はたとえば2次元で表される。とくに、インデックスが3次元以上のベクトルである場合には、類似情報検索部34は類似インデックスを2次元のベクトルに次元圧縮し、2次元のベクトルを散布図により表示してもよい。次元圧縮の具体的処理は当業者が適宜設計することができるが、たとえば主成分分析の手法を用いてもよいし、t-SNE(t-distributed Stochastic Neighbor Embedding)の手法を用いてもよい。
【0069】
このような2次元の散布図を用いることにより、ユーザは、類似検索の結果をより容易に把握することができる。
【0070】
また、とくに図示しないが、類似情報検索部34は、類似インデックスをクラスタ分析によりクラスタリングしてもよい。クラスタ分析の具体的処理は当業者が適宜設計可能である。クラスタリングの結果は上述の散布図として表示することができる。たとえば、散布図はバブルチャートを含んでもよい。バブルチャートは、クラスタの中心点およびクラスタに属する類似インデックスの数を、それぞれ円の中心点(たとえば2次元座標によって表される)と円の大きさ(たとえば半径または面積によって表される)により表してもよい。
【0071】
このようなバブルチャートを用いることにより、分類装置10の使用者は、類似検索の結果をさらに容易に把握することができる。
【0072】
分類モデルの具体的な構造は、
図8に示すものに限らない。当業者は、特許文献1および非特許文献1を含む公知技術等に基づき、適宜変更を加えることができる。
【符号の説明】
【0073】
10…分類装置
20…記憶部
21…分類対象情報テーブル
22…分類結果テーブル
23…訓練データテーブル
24…学習済み分類モデル
25…インデックステーブル
30…処理部
31…分類モデル学習部
32…分類実行部
33…インデックス作成部
34…類似情報検索部
41…埋め込み層
42…エンコーダ層
43…プロトタイプ層
44…出力層
45…ドメインコード予測部