(57)【要約】【課題】任意のデータが含まれているバイナリデータ群を容易にクラスタリングできるクラスタ分析システムを提供する。【解決手段】クラスタ分析システム２０は、バイナリデータの集合に含まれているバイナリデータ間の類似度を示すデータである複数の類似度データを類似度に基づいて複数のグループに分類する分類部２１と、分類されたグループに含まれている類似度データに対応するバイナリデータが分類されたグループに対応付けられていることを示す情報である分類情報を生成する分類情報生成部２２と、同一のバイナリデータの集合に対して生成された複数の分類情報それぞれが示す複数のグループに重複して対応付けられているバイナリデータが含まれるグループを生成するグループ生成部２３とを含む。【選択図】図１２
2019174889.tif 000002
【特許請求の範囲】
【請求項１】
バイナリデータの集合に含まれているバイナリデータ間の類似度を示すデータである複数の類似度データを前記類似度に基づいて複数のグループに分類する分類部と、
分類されたグループに含まれている類似度データに対応するバイナリデータが前記分類されたグループに対応付けられていることを示す情報である分類情報を生成する分類情報生成部と、
同一のバイナリデータの集合に対して生成された複数の分類情報それぞれが示す複数のグループに重複して対応付けられているバイナリデータが含まれるグループを生成するグループ生成部とを含む
ことを特徴とするクラスタ分析システム。
【請求項２】
グループ生成部は、複数の計算手段それぞれが計算した類似度にそれぞれ対応している複数の分類情報を用いてグループを生成する
請求項１記載のクラスタ分析システム。
【請求項３】
入力されたクエリに応じて生成されたバイナリデータが含まれるグループを出力する出力部を含む
請求項１または請求項２記載のクラスタ分析システム。
【請求項４】
分類部は、出力されたバイナリデータが含まれるグループに対する評価を示す情報である評価情報を用いて複数の類似度データを分類し、
グループ生成部は、前記評価情報を用いてグループを生成する
請求項３記載のクラスタ分析システム。
【請求項５】
バイナリデータの集合が格納されている格納部を含み、
出力部は、前記格納部に格納されているバイナリデータが含まれるグループを出力する
請求項３または請求項４記載のクラスタ分析システム。
【請求項６】
分類部は、バイナリデータの集合に含まれているバイナリデータが更新されたときにバイナリデータ間の類似度を新たに算出する
請求項１から請求項５のうちのいずれか１項に記載のクラスタ分析システム。
【請求項７】
バイナリデータの集合に含まれているバイナリデータ間の類似度を示すデータである複数の類似度データを前記類似度に基づいて複数のグループに分類し、
分類されたグループに含まれている類似度データに対応するバイナリデータが前記分類されたグループに対応付けられていることを示す情報である分類情報を生成し、
同一のバイナリデータの集合に対して生成された複数の分類情報それぞれが示す複数のグループに重複して対応付けられているバイナリデータが含まれるグループを生成する
ことを特徴とするクラスタ分析方法。
【請求項８】
複数の計算手段それぞれが計算した類似度にそれぞれ対応している複数の分類情報を用いてグループを生成する
請求項７記載のクラスタ分析方法。
【請求項９】
コンピュータに、
バイナリデータの集合に含まれているバイナリデータ間の類似度を示すデータである複数の類似度データを前記類似度に基づいて複数のグループに分類する分類処理、
分類されたグループに含まれている類似度データに対応するバイナリデータが前記分類されたグループに対応付けられていることを示す情報である分類情報を生成する分類情報生成処理、および
同一のバイナリデータの集合に対して生成された複数の分類情報それぞれが示す複数のグループに重複して対応付けられているバイナリデータが含まれるグループを生成するグループ生成処理
を実行させるためのクラスタ分析プログラム。
【請求項１０】
コンピュータに、
グループ生成処理で、複数の計算手段それぞれが計算した類似度にそれぞれ対応している複数の分類情報を用いてグループを生成させる
請求項９記載のクラスタ分析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クラスタ分析システム、クラスタ分析方法およびクラスタ分析プログラムに関し、特にバイナリデータをクラスタリングするクラスタ分析システム、クラスタ分析方法およびクラスタ分析プログラムに関する。
【背景技術】
【０００２】
一般的なデータベース管理システム等が記録、保管、および解析することが困難な巨大なデータ群である、いわゆるビッグデータが注目されている。ビッグデータが注目されることに伴い、データの収集およびデータの利活用も注目されている。
【０００３】
データが利活用される前にデータに対して実行される事前処理がいくつか知られている。例えば、文字列のデータ群や数字型のデータ群に対して、事前処理としてクラスタ分析が実行される。クラスタ分析には、例えば階層型クラスタ分析、非階層型クラスタ分析がある。
【０００４】
また、画像等のバイナリデータに対する情報検索において類似するデータをグループ化する方法が、特許文献１に記載されている。特許文献１には、処理対象のデータを制限せずに演算時間を削減して、データ類似度に基づいたグループ化を実現できる情報処理装置が記載されている。
【０００５】
コンピュータの処理能力が現在ほど高くなかった時代においてデータが利活用される際、データは主にサンプリングされていた。しかし、コンピュータの処理能力の向上、および一般的なユーザにとって使い易い分散処理システムの登場に伴い、現在ではデータが利活用される際、データに対する全量分析が実行可能である。
【０００６】
特に、全量データが分析対象として扱われると、サンプリングでは発見不能である、全量データにおいて登場確率が低いロングテールな事象のデータも分析されることが期待される。
【０００７】
また、特許文献２には、入力画像の集合をクラスタリングする画像クラスタリングシステムが記載されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】国際公開第２０１６／０５９７８７号
【特許文献２】特開２０１７−１５１８７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ビッグデータが利活用されると、ビッグデータの中から有意義なデータ群が発見される。しかし、ビッグデータとして収集されたデータには、予めどのようなデータ群が格納されているか不明である。すなわち、ビッグデータが利活用されるために求められる事前処理を、ビッグデータに対して適切に実行することが困難である。
【００１０】
蓄積された大量のバイナリデータが含まれているビッグデータの中から有意義なデータ群を発見するためには、例えば以下のような対応が求められる。
【００１１】
１．データ分析者が多くの労力をかけてビッグデータの意味を解析する
２．データサイエンティストがビッグデータの中から意味を理解可能なデータのみ収集する
３．データサイエンティストが一般的な“教師なし学習”で収集されたデータを分析する
【００１２】
特に画像等のバイナリデータは、文字列のデータ群や数字型のデータ群と異なり、データが分類される境界に相当する分類軸が明確でない。よって、有意義なデータ群を発見する１つの方法であるクラスタリングの、バイナリデータへの実行は困難である。
【００１３】
従って、バイナリデータのクラスタリングでは、データの完全一致による評価ではなく、データが有する特徴の類似度による評価が用いられる場合が多い。本明細書において、類似度が所定の値以上である類似度データ群を１つのグループにまとめることを、類似度のグループ化と呼ぶ。また、類似度のグループ化でまとめられた類似度データ群を、類似度グループと呼ぶ。
【００１４】
バイナリデータ間の類似度は、バイナリデータの特定領域が用いられて求められる。特定領域は、例えばバイナリデータが画像であれば“顔”や“自動車”等の画像に表示されている内容が特定される画像内の領域である。また、好ましくは類似度が計算される前に、バイナリデータが特定領域毎に事前にクラスタリングされているとよい。
【００１５】
従って、ビッグデータ中の、特定領域が不明な任意のデータが含まれているバイナリデータ群を上記の方法でクラスタリングすることは困難である。
【００１６】
特許文献１に記載されている情報処理装置は、バイナリデータをクラスタリングできる。しかし、特許文献１に記載されている情報処理装置は、予め用意された類似度保持部のデータを入力とし、類似度保持部中のデータを構造化している。よって、特許文献１に記載されている情報処理装置を用いるためには、事前にバイナリデータを類似度保持部に入力することが求められるので、手間がかかる。
【００１７】
また、特許文献２に記載されている画像クラスタリングシステムも、バイナリデータをクラスタリングできる。しかし、特許文献２に記載されている画像クラスタリングシステムは、画像群に対応したクラスタリングエンジンを利用している。よって、特許文献２に記載されている画像クラスタリングシステムを用いるためには、事前にバイナリデータに対応したクラスタリングエンジンを準備することが求められるので、手間がかかる。
【００１８】
［効果の説明］
そこで、本発明は、上述した課題を解決する、任意のデータが含まれているバイナリデータ群を容易にクラスタリングできるクラスタ分析システム、クラスタ分析方法およびクラスタ分析プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１９】
本発明によるクラスタ分析システムは、バイナリデータの集合に含まれているバイナリデータ間の類似度を示すデータである複数の類似度データを類似度に基づいて複数のグループに分類する分類部と、分類されたグループに含まれている類似度データに対応するバイナリデータが分類されたグループに対応付けられていることを示す情報である分類情報を生成する分類情報生成部と、同一のバイナリデータの集合に対して生成された複数の分類情報それぞれが示す複数のグループに重複して対応付けられているバイナリデータが含まれるグループを生成するグループ生成部とを含むことを特徴とする。
【００２０】
本発明によるクラスタ分析方法は、バイナリデータの集合に含まれているバイナリデータ間の類似度を示すデータである複数の類似度データを類似度に基づいて複数のグループに分類し、分類されたグループに含まれている類似度データに対応するバイナリデータが分類されたグループに対応付けられていることを示す情報である分類情報を生成し、同一のバイナリデータの集合に対して生成された複数の分類情報それぞれが示す複数のグループに重複して対応付けられているバイナリデータが含まれるグループを生成することを特徴とする。
【００２１】
本発明によるクラスタ分析プログラムは、コンピュータに、バイナリデータの集合に含まれているバイナリデータ間の類似度を示すデータである複数の類似度データを類似度に基づいて複数のグループに分類する分類処理、分類されたグループに含まれている類似度データに対応するバイナリデータが分類されたグループに対応付けられていることを示す情報である分類情報を生成する分類情報生成処理、および同一のバイナリデータの集合に対して生成された複数の分類情報それぞれが示す複数のグループに重複して対応付けられているバイナリデータが含まれるグループを生成するグループ生成処理を実行させることを特徴とする。
【発明の効果】
【００２２】
本発明によれば、任意のデータが含まれているバイナリデータ群を容易にクラスタリングできる。
【図面の簡単な説明】
【００２３】
【図１】本発明によるクラスタ分析システムの第１の実施形態の構成例を示すブロック図である。
【図２】類似度計算部２１０が類似度の計算に使用する推論モデルの例を示す説明図である。
【図３】類似度が１つの値に集約される場合の類似度データの分布の例を示す説明図である。
【図４】類似度が複数の値に分散される場合の類似度データの分布の例を示す説明図である。
【図５】類似度が複数の値に分散される場合の類似度データの分布の他の例を示す説明図である。
【図６】複数の分類データそれぞれに対応する群の包含関係を示す説明図である。
【図７】第１の実施形態のクラスタ分析システム１０によるクエリ検索処理の動作を示すフローチャートである。
【図８】第１の実施形態のクラスタ分析システム１０による分類データ格納処理の動作を示すフローチャートである。
【図９】第１の実施形態のクラスタ分析システム１０による類似度データリスト更新処理の動作を示すフローチャートである。
【図１０】本発明によるクラスタ分析システムの第１の実施形態の他の構成例を示すブロック図である。
【図１１】本発明による問合せ受付装置のハードウェア構成例を示す説明図である。
【図１２】本発明によるクラスタ分析システムの概要を示すブロック図である。
【発明を実施するための形態】
【００２４】
実施形態１．
［構成の説明］
以下、本発明の実施形態を、図面を参照して説明する。図１は、本発明によるクラスタ分析システムの第１の実施形態の構成例を示すブロック図である。
【００２５】
本実施形態のクラスタ分析システム１０は、バイナリデータが大量に蓄積されたデータベースを管理し、蓄積されているバイナリデータに対する知識を十分に有していないためにデータの利活用を推進できないデータ管理者を支援する。例えば、クラスタ分析システム１０は、特定領域毎に事前にクラスタリングされていないバイナリデータ群もクラスタリングできる。
【００２６】
具体的には、クラスタ分析システム１０は、データベースに蓄積されたバイナリデータに対して既存の機械学習等における学習モデルを適用することによって得られる類似度グループを、複数のパターンで生成する。
【００２７】
次いで、クラスタ分析システム１０は、生成された類似度グループの組み合わせを分析することによってデータ群を検出する。検出されたデータ群を用いて、クラスタ分析システム１０は、任意のバイナリデータ群を自動でクラスタリングする。よって、クラスタ分析システム１０を使用するデータ管理者は、未知のバイナリデータ群から、任意の意味を有するデータ群を意味毎に効率的に発見できる。
【００２８】
図１に示すように、本実施形態のクラスタ分析システム１０は、問合せ受付装置１００と、類似関係性生成装置２００１〜類似関係性生成装置２００Ｎと、バイナリデータ格納部３００とを含む（Ｎは２以上の自然数）。
【００２９】
また、図１に示すように、問合せ受付装置１００は、問合せ処理部１１０と、データ分類部１２０と、単一類似度データ偏り判定部１３０と、複数類似度データ偏り判定部１４０と、分類データ格納部１５０とを有する。
【００３０】
また、図１に示すように、類似関係性生成装置２００１〜類似関係性生成装置２００Ｎは、類似度計算部２１０をそれぞれ有する。類似関係性生成装置２００１〜類似関係性生成装置２００Ｎは、新たな類似度計算部２１０が利用可能になった時点、またはバイナリデータ格納部３００に格納されているバイナリデータが更新された時点で、バイナリデータ格納部３００からバイナリデータを抽出する。次いで、類似関係性生成装置２００１〜類似関係性生成装置２００Ｎは、抽出されたバイナリデータ間の類似度を計算する。
【００３１】
類似度計算部２１０は、バイナリデータ格納部３００に格納されているバイナリデータを入力とし、複数のバイナリデータ間の類似度を計算する機能を有する。類似度計算部２１０は、計算結果を類似度データリストとして出力する。
【００３２】
類似関係性生成装置２００１〜類似関係性生成装置２００Ｎは、類似度計算部２１０の出力結果である類似度データリストを保存する。なお、類似関係性生成装置２００１〜類似関係性生成装置２００Ｎは、それぞれ異なる特定領域に対応した装置でもよい。
【００３３】
図２は、類似度計算部２１０が類似度の計算に使用する推論モデルの例を示す説明図である。図２（ａ）に示す推論モデルは、例えば、バイナリデータである目的別学習用データを入力として推論を得る、機械学習で使用される任意の推論モデルである。
【００３４】
図２（ｂ）に示すように、類似度計算部２１０は、図２（ａ）に示す推論モデルを用いて類似度を計算できる。図２（ｂ）に示す例では、類似度計算部２１０は、顔等を示す特定領域である程度分類されているバイナリデータ群に対して、顔モデル等の特定の学習モデルが示すデータに対応した関係性を用いて構造化された類似度を計算できる。
【００３５】
また、上述したように、バイナリデータ格納部３００には、クラスタ分析の対象であるバイナリデータが格納されている。なお、バイナリデータ格納部３００は、データベースシステムでもよい。
【００３６】
以下、問合せ受付装置１００の各構成要素の機能を説明する。問合せ処理部１１０は、クライアント端末４００が出力したクエリを受け付け、受け付けられたクエリを処理する機能を有する。
【００３７】
図１に示すように、問合せ処理部１１０は、クライアント端末４００と通信可能に接続されている。問合せ処理部１１０は、クライアント端末４００からのクエリを受け付けると、受け付けられたクエリを処理し、クエリの処理結果をクライアント端末４００に返却する。
【００３８】
問合せ処理部１１０は、受け付けられたクライアント端末４００からのクエリを処理する。問合せ処理部１１０は、クライアント端末４００からクエリが入力されると、入力されたクエリを解析し、処理内容を決定する。
【００３９】
クライアント端末４００から入力されたクエリが参照クエリである場合、問合せ処理部１１０は、分類データ格納部１５０から条件を満たす分類データを抽出する。また、問合せ処理部１１０は、抽出された分類データに対応するバイナリデータをバイナリデータ格納部３００から抽出する。問合せ処理部１１０は、抽出されたバイナリデータが含まれる処理結果をクライアント端末４００に返却する。
【００４０】
データ分類部１２０は、類似度計算部２１０から類似度データリストを受け取る。データ分類部１２０は、受け取られた類似度データリストを保存する。次いで、データ分類部１２０は、単一類似度データ偏り判定部１３０に保存されている類似度データリストを渡す。
【００４１】
単一類似度データ偏り判定部１３０は、入力された類似度データリストにおける類似度の偏りを計算する機能を有する。単一類似度データ偏り判定部１３０は、データ分類部１２０から類似度データリストを受け取る。単一類似度データ偏り判定部１３０は、例えば、受け取られた類似度データリストにおける類似度データの類似度が１つの値に集約されるか、いくつかの値に分散されるかを判定する。
【００４２】
図３は、類似度が１つの値に集約される場合の類似度データの分布の例を示す説明図である。図３に示すように類似度が１つの値に集約される場合、類似度データリストは、単一類似度データ偏り判定部１３０が有効にバイナリデータを分類できないバイナリデータ群に対応するリストである。
【００４３】
なお、類似度データリストが画像群が含まれている特定のデータ群に対応するリストであり、単一類似度データ偏り判定部１３０が特定のデータ群に対応している場合にも、図３に示す判定結果が得られる。
【００４４】
図３に示す判定結果が得られた場合、単一類似度データ偏り判定部１３０は、類似度データリストに有意な偏りが存在しないと判断し、判定結果をデータ分類部１２０に返却する。
【００４５】
図４は、類似度が複数の値に分散される場合の類似度データの分布の例を示す説明図である。図４に示す類似度データリストは、類似関係性生成装置２００１が出力したリストである。
【００４６】
図４に示すように類似度データが複数の群に分散している場合、単一類似度データ偏り判定部１３０は、出現数が判定閾値を超えている群を一意に識別する値を群に付与する。図４に示す例であれば、出現数が判定閾値を超えている左の群に値「X-1」が、出現数が判定閾値を超えている右の群に値「X-2」が、それぞれ付与されている。
【００４７】
次いで、単一類似度データ偏り判定部１３０は、付与された値に対して、バイナリデータ格納部３００に格納されているバイナリデータの名称リストを用いて分類データを生成する。図４に示す例であれば、分類データとして「”X-1”={data3,data7,data9,data12,data14,data18,data19,data21,data25,data28}、”X-2”={data2,data8,data11,data15,data22,data26,data30}」が生成されている。図４に示す「data3」等が、バイナリデータの名称である。
【００４８】
図５は、類似度が複数の値に分散される場合の類似度データの分布の他の例を示す説明図である。図５に示す類似度データリストは、類似関係性生成装置２００２が出力したリストである。
【００４９】
図５に示す例では、群Y-1〜群Y-3がそれぞれ生成されている。単一類似度データ偏り判定部１３０は、計算された類似度の偏りを示す判定結果、および生成された分類データをデータ分類部１２０に返却する。
【００５０】
データ分類部１２０は、単一類似度データ偏り判定部１３０から計算された類似度の偏りを示す判定結果を受け取る。判定結果が示す類似度の偏りが有意な偏りである場合、データ分類部１２０は、生成された分類データを分類データ格納部１５０に格納する。すなわち、類似度データリストに有意な偏りが存在する場合、データ分類部１２０は、類似度の偏り毎に分類されたバイナリデータを示す分類データを分類データ格納部１５０に格納する。
【００５１】
また、判定結果が示す類似度の偏りが有意な偏りでない場合、データ分類部１２０は、生成された分類データを破棄する。すなわち、類似度データリストに有意な偏りが存在しない場合、データ分類部１２０は、分類データを保存しない。
【００５２】
同一のバイナリデータ群に対する単一類似度データ偏り判定部１３０が生成した分類データが分類データ格納部１５０に２つ以上保存されている場合、データ分類部１２０は、２つ以上の分類データを分類データ格納部１５０から抽出する。次いで、データ分類部１２０は、抽出された分類データを複数類似度データ偏り判定部１４０に渡す。
【００５３】
複数類似度データ偏り判定部１４０は、分類データ格納部１５０に格納されている分類データが示すバイナリデータの群を基に、任意の群の組み合わせを生成する。次いで、複数類似度データ偏り判定部１４０は、生成された組み合わせにおいて２つ以上の群に重複して含まれているバイナリデータを検出する。
【００５４】
例えば、複数類似度データ偏り判定部１４０は、データ分類部１２０から複数の分類データを受け取る。次いで、複数類似度データ偏り判定部１４０は、受け取られた複数の分類データそれぞれに対応する群の包含関係を計算する。
【００５５】
図６は、複数の分類データそれぞれに対応する群の包含関係を示す説明図である。図６に示す例では、図４に示す群X-1〜群X-2と、図５に示す群Y-1〜群Y-3とを基に包含関係が計算されている。
【００５６】
図６に示すように、群X-1と群Y-1、群X-1と群Y-2、および群X-2と群Y-3には、それぞれ重複するバイナリデータが存在する。複数の群の間で重複するバイナリデータが検出された場合、複数類似度データ偏り判定部１４０は、群を一意に識別する値を重複するバイナリデータ群に付与する。
【００５７】
図６に示す例であれば、群X-1と群Y-1で重複するバイナリデータ群に値「Z-1」が、群X-1と群Y-2で重複するバイナリデータ群に値「Z-2」が、群X-2と群Y-3で重複するバイナリデータ群に値「Z-3」が、それぞれ付与されている。
【００５８】
次いで、複数類似度データ偏り判定部１４０は、付与された値に対して、バイナリデータ格納部３００に格納されているバイナリデータの名称リストを用いて分類データを生成する。図６に示す例であれば、分類データとして「”Z-1”={data3,data7,data9,data12,data14,data18,data19}、”Z-2”={data21,data25,data28}、”Z-3”={data11,data15,data22,data26,data30}」が生成されている。複数類似度データ偏り判定部１４０は、生成された分類データをデータ分類部１２０に返却する。
【００５９】
複数の群の間で重複するバイナリデータが検出されない場合、複数類似度データ偏り判定部１４０は、何のバイナリデータの名称も含まれていない分類データをデータ分類部１２０に入力する。
【００６０】
データ分類部１２０は、複数類似度データ偏り判定部１４０から検出されたバイナリデータを示す判定結果と、生成された分類データとを受け取る。判定結果がバイナリデータの群を示す場合、データ分類部１２０は、判定結果と分類データとを分類データ格納部１５０に格納する。すなわち、データ分類部１２０は、類似度の偏り毎に分類されたバイナリデータを示す分類データを分類データ格納部１５０に格納する。
【００６１】
また、判定結果がバイナリデータの群を示さない場合、データ分類部１２０は、生成された分類データを破棄する。すなわち、類似度データリストに有意な偏りが存在しない場合、データ分類部１２０は、判定結果と分類データとを保存しない。
【００６２】
上述したように、分類データ格納部１５０には、群を一意に識別する値と、バイナリデータ格納部３００に格納されているバイナリデータの名称リストとを含む分類データが格納される。分類データは、単一類似度データ偏り判定部１３０、および複数類似度データ偏り判定部１４０から得られる。
【００６３】
［動作の説明］
以下、本実施形態のクラスタ分析システム１０の動作を、図７〜図９に示すフローチャートを参照して説明する。
【００６４】
最初に、本実施形態のクラスタ分析システム１０にクライアント端末４００からクエリが入力された際に行われる検索処理の動作を図７を参照して説明する。図７は、第１の実施形態のクラスタ分析システム１０によるクエリ検索処理の動作を示すフローチャートである。
【００６５】
最初に、クライアント端末４００が、クラスタ分析システム１０の問合せ処理部１１０にクエリを入力する（ステップS101）。
【００６６】
次いで、問合せ処理部１１０は、クライアント端末４００から入力されたクエリに対する抽出対象のバイナリデータ群の分類結果、すなわち分類データが分類データ格納部１５０に格納されているか否かを判断する（ステップS102）。
【００６７】
分類データが格納されている場合（ステップS102におけるYes）、問合せ処理部１１０は、分類データ格納部１５０から該当する分類データを取得する（ステップS103）。分類データを取得した後、問合せ処理部１１０は、ステップS104の処理を行う。
【００６８】
分類データが格納されていない場合（ステップS102におけるNo）、問合せ処理部１１０は、クエリに応答できないことを示すエラー情報を生成する（ステップS107）。エラー情報を生成した後、問合せ処理部１１０は、ステップS106の処理を行う。
【００６９】
ステップS104で、問合せ処理部１１０は、取得された分類データに対応するバイナリデータがバイナリデータ格納部３００に存在するか否かを確認する。
【００７０】
バイナリデータが存在する場合（ステップS104におけるYes）、問合せ処理部１１０は、バイナリデータ格納部３００から該当するバイナリデータを取得する（ステップS105）。具体的には、問合せ処理部１１０は、バイナリデータ群を一意に識別する値毎にバイナリデータを取得する。バイナリデータを取得した後、問合せ処理部１１０は、ステップS106の処理を行う。
【００７１】
バイナリデータが存在しない場合（ステップS104におけるNo）、問合せ処理部１１０は、クエリに応答できないことを示すエラー情報を生成する（ステップS107）。エラー情報を生成した後、問合せ処理部１１０は、ステップS106の処理を行う。
【００７２】
ステップS106で、問合せ処理部１１０は、クライアント端末４００に結果を返却する。バイナリデータが取得されている場合、問合せ処理部１１０は、参照結果のリストを生成し、返却する。また、エラー情報が生成されている場合、問合せ処理部１１０は、結果としてエラー情報を返却する。結果を返却した後、クラスタ分析システム１０は、クエリ検索処理を終了する。
【００７３】
次に、本実施形態のクラスタ分析システム１０において類似度データリストが新しく生成された際に行われる分類データを格納する処理の動作を図８を参照して説明する。図８は、第１の実施形態のクラスタ分析システム１０による分類データ格納処理の動作を示すフローチャートである。
【００７４】
最初に、データ分類部１２０は、類似関係性生成装置２００１〜類似関係性生成装置２００Ｎにそれぞれ保存されている類似度データリストのうち、新しく生成された類似度データリストを検索する（ステップS201）。
【００７５】
次いで、データ分類部１２０は、検索された新たな類似度データリストの単一類似度データ偏りが判定済みであるか否かを判定する（ステップS202）。
【００７６】
単一類似度データ偏りが判定済みである場合（ステップS202におけるYes）、データ分類部１２０は、単一類似度データ偏りが判定されないことを示すエラー情報を生成する（ステップS210）。エラー情報を生成した後、クラスタ分析システム１０は、分類データ格納処理を終了する。
【００７７】
単一類似度データ偏りが判定済みでない場合（ステップS202におけるNo）、データ分類部１２０は、対象の類似度データリストを単一類似度データ偏り判定部１３０に渡す。単一類似度データ偏り判定部１３０は、渡された類似度データリストの単一類似度データ偏りを判定する（ステップS203）。
【００７８】
判定において類似度の偏りが２つ以上検出された場合、単一類似度データ偏り判定部１３０は、類似度データの数が設定された閾値を超える群を一意に識別する識別値を生成する。次いで、単一類似度データ偏り判定部１３０は、識別値とバイナリデータの名称との組み合わせのリストを含む分類データと、判定結果とを、データ分類部１２０に返却する。
【００７９】
次いで、データ分類部１２０は、単一類似度データ偏り判定部１３０からの判定結果を解析することによって、類似度の偏りの有無を判定する（ステップS204）。類似度に偏りがない場合（ステップS204におけるNo）、クラスタ分析システム１０は、分類データ格納処理を終了する。
【００８０】
類似度に偏りがある場合（ステップS204におけるYes）、データ分類部１２０は、識別値とバイナリデータの名称との組み合わせのリストを含む分類データと、判定結果とを、分類データ格納部１５０に格納する（ステップS205）。
【００８１】
次いで、データ分類部１２０は、同一のバイナリデータ群に対する他の単一類似度データ偏り判定部１３０による判定結果が分類データ格納部１５０に格納されているか否かを確認する（ステップS206）。格納されていない場合（ステップS206におけるNo）、クラスタ分析システム１０は、分類データ格納処理を終了する。
【００８２】
格納されている場合（ステップS206におけるYes）、データ分類部１２０は、複数類似度データ偏り判定部１４０に群を識別する識別値とバイナリデータの名称とを含む複数の分類データを渡す。複数類似度データ偏り判定部１４０は、渡された分類データの複数類似度データ偏りを判定する（ステップS207）。
【００８３】
複数類似度データ偏り判定部１４０は、渡された複数の分類データが示す群の間で重複するバイナリデータがある場合、重複するバイナリデータ群を一意に識別する識別値を生成する。次いで、複数類似度データ偏り判定部１４０は、生成された識別値とバイナリデータの名称との組み合わせのリストを含む分類データを生成する。
【００８４】
次いで、データ分類部１２０は、複数の分類データに渡って重複するバイナリデータの有無を示す複数類似度データ偏り判定部１４０からの判定結果を確認する（ステップS208）。複数の分類データに渡って重複するバイナリデータがない場合（ステップS208におけるNo）、クラスタ分析システム１０は、分類データ格納処理を終了する。
【００８５】
複数の分類データに渡って重複するバイナリデータがある場合（ステップS208におけるYes）、データ分類部１２０は、ステップS207で生成された識別値とバイナリデータの名称との組み合わせのリストを含む分類データを分類データ格納部１５０に格納する（ステップS209）。格納した後、クラスタ分析システム１０は、分類データ格納処理を終了する。
【００８６】
次に、本実施形態のクラスタ分析システム１０においてバイナリデータ格納部３００に格納されているバイナリデータが更新された際に行われる類似度データリストを更新する処理の動作を図９を参照して説明する。図９は、第１の実施形態のクラスタ分析システム１０による類似度データリスト更新処理の動作を示すフローチャートである。
【００８７】
なお、図９に示す類似度データリスト更新処理は、類似関係性生成装置２００１〜類似関係性生成装置２００Ｎそれぞれにより行われる。
【００８８】
最初に、類似度計算部２１０は、バイナリデータ格納部３００に格納されているバイナリデータのうち、更新されたバイナリデータを検索する（ステップS301）。
【００８９】
次いで、類似度計算部２１０は、バイナリデータ格納部３００にバイナリデータが３件以上存在するか否かを確認する（ステップS302）。バイナリデータが３件以上存在するか否かを確認する理由は、バイナリデータを類似度でグルーピングするためには少なくとも３件以上のバイナリデータが求められるためである。
【００９０】
例えば、バイナリデータが類似度でグルーピングされる際、少なくとも２つの類似度が求められる。また、２つの類似度が生成されるためには、少なくとも３件以上のバイナリデータが求められる。
【００９１】
バイナリデータが３件以上存在しない場合（ステップS302におけるNo）、クラスタ分析システム１０は、類似度データリスト更新処理を終了する。
【００９２】
バイナリデータが３件以上存在する場合（ステップS302におけるYes）、類似度計算部２１０は、バイナリデータ格納部３００からバイナリデータを取得する（ステップS303）。取得されるバイナリデータには、更新されたバイナリデータが含まれる。
【００９３】
次いで、類似度計算部２１０は、取得されたバイナリデータ間の類似度を計算する。類似度計算部２１０は、計算された複数の類似度を類似度データリストとして出力する（ステップS304）。類似度データリストを出力した後、クラスタ分析システム１０は、類似度データリスト更新処理を終了する。
【００９４】
［効果の説明］
本実施形態のクラスタ分析システム１０は、特定領域毎に異なる類似度計算部２１０等を利用して、データ群に対して類似度を計算する。また、クラスタ分析システム１０の単一類似度データ偏り判定部１３０および複数類似度データ偏り判定部１４０は、計算された類似度をグループ化する。
【００９５】
具体的には、本実施形態の単一類似度データ偏り判定部１３０は、データ群に対するグループ化処理を既存の複数の類似度計算手段を用いて実行する。また、本実施形態の複数類似度データ偏り判定部１４０は、類似度計算手段毎のグループ化結果と、入力データの偏りの傾向とに基づいて、新たなデータクラスタ分析の結果を提示する。
【００９６】
よって、クラスタ分析システム１０の利用者は、膨大なバイナリデータの中からクラスタリングされたデータを得ることができる。すなわち、クラスタ分析システム１０が使用されると、データの探索時間が短縮されることが期待される。
【００９７】
次に、本実施形態の変形例を説明する。図１０は、本発明によるクラスタ分析システムの第１の実施形態の他の構成例を示すブロック図である。
【００９８】
図１０に示すクラスタ分析システム１１は、図１に示すクラスタ分析システム１０に実行結果コメントデータ格納部１６０がさらに備えられたシステムである。実行結果コメントデータ格納部１６０以外のクラスタ分析システム１１の構成は、クラスタ分析システム１０の構成と同様である。
【００９９】
本変形例の問合せ受付装置１００は、検索要求に応えるだけでなく、検索結果に対するユーザの判定結果を実行結果コメントデータ格納部１６０に格納できる。
【０１００】
具体的には、問合せ処理部１１０がクライアント端末４００に返却したクラスタリングの結果がユーザにとって有意義な結果であったか否かを示す実行結果コメントデータが、実行結果コメントデータ格納部１６０に格納される。問合せ処理部１１０は、クライアント端末４００から入力された実行結果コメントデータを実行結果コメントデータ格納部１６０に格納する。
【０１０１】
例えば、データ分類部１２０は、単一類似度データ偏り判定部１３０による判定処理や複数類似度データ偏り判定部１４０による判定処理を、実行結果コメントデータ格納部１６０に格納されているデータを基に修正できる。すなわち、クラスタ分析システム１１は、バイナリデータの分類精度をより向上させることができる。
【０１０２】
以下、本実施形態の問合せ受付装置１００のハードウェア構成の具体例を説明する。図１１は、本発明による問合せ受付装置のハードウェア構成例を示す説明図である。
【０１０３】
図１１に示す問合せ受付装置１００は、ＣＰＵ（Central Processing Unit）１０１と、主記憶部１０２と、通信部１０３と、補助記憶部１０４とを備える。また、ユーザが操作するための入力部１０５や、ユーザに処理結果または処理内容の経過を提示するための出力部１０６を備えてもよい。
【０１０４】
主記憶部１０２は、データの作業領域やデータの一時退避領域として用いられる。主記憶部１０２は、例えばＲＡＭ（Random Access Memory）である。
【０１０５】
通信部１０３は、有線のネットワークまたは無線のネットワーク（情報通信ネットワーク）を介して、周辺機器との間でデータを入力および出力する機能を有する。
【０１０６】
補助記憶部１０４は、一時的でない有形の記憶媒体である。一時的でない有形の記憶媒体として、例えば磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ（Compact Disk Read Only Memory）、ＤＶＤ−ＲＯＭ（Digital Versatile Disk Read Only Memory）、半導体メモリが挙げられる。
【０１０７】
入力部１０５は、データや処理命令を入力する機能を有する。入力部１０５は、例えばキーボードやマウス等の入力デバイスである。
【０１０８】
出力部１０６は、データを出力する機能を有する。出力部１０６は、例えば液晶ディスプレイ装置等の表示装置、またはプリンタ等の印刷装置である。
【０１０９】
また、図１１に示すように、問合せ受付装置１００において、各構成要素は、システムバス１０７に接続されている。
【０１１０】
補助記憶部１０４は、例えば、図１に示す問合せ処理部１１０、データ分類部１２０、単一類似度データ偏り判定部１３０、および複数類似度データ偏り判定部１４０を実現するためのプログラムを記憶している。
【０１１１】
また、主記憶部１０２は、例えば、分類データ格納部１５０の記憶領域、および実行結果コメントデータ格納部１６０の記憶領域として利用される。また、問合せ処理部１１０、およびデータ分類部１２０は、通信部１０３を介して通信処理を実行してもよい。
【０１１２】
なお、問合せ受付装置１００は、ハードウェアにより実現されてもよい。例えば、問合せ受付装置１００は、内部に図１に示すような機能を実現するプログラムが組み込まれたＬＳＩ（Large Scale Integration）等のハードウェア部品が含まれる回路が実装されてもよい。
【０１１３】
また、問合せ受付装置１００は、図１１に示すＣＰＵ１０１が図１に示す各構成要素が有する機能を提供するプログラムを実行することによって、ソフトウェアにより実現されてもよい。
【０１１４】
ソフトウェアにより実現される場合、ＣＰＵ１０１が補助記憶部１０４に格納されているプログラムを、主記憶部１０２にロードして実行し、問合せ受付装置１００の動作を制御することによって、各機能がソフトウェアにより実現される。
【０１１５】
また、類似関係性生成装置２００１〜類似関係性生成装置２００Ｎも、ＣＰＵが図１に示す類似度計算部２１０が有する機能を提供するプログラムを実行することによって、ソフトウェアによりそれぞれ実現されてもよい。
【０１１６】
また、各構成要素の一部または全部は、汎用の回路（circuitry）または専用の回路、プロセッサ等やこれらの組み合わせによって実現されてもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各構成要素の一部または全部は、上述した回路等とプログラムとの組み合わせによって実現されてもよい。
【０１１７】
各構成要素の一部または全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【０１１８】
次に、本発明の概要を説明する。図１２は、本発明によるクラスタ分析システムの概要を示すブロック図である。本発明によるクラスタ分析システム２０は、バイナリデータの集合に含まれているバイナリデータ間の類似度を示すデータである複数の類似度データを類似度に基づいて複数のグループに分類する分類部２１（例えば、単一類似度データ偏り判定部１３０）と、分類されたグループに含まれている類似度データに対応するバイナリデータが分類されたグループに対応付けられていることを示す情報である分類情報を生成する分類情報生成部２２（例えば、単一類似度データ偏り判定部１３０）と、同一のバイナリデータの集合に対して生成された複数の分類情報それぞれが示す複数のグループに重複して対応付けられているバイナリデータが含まれるグループを生成するグループ生成部２３（例えば、複数類似度データ偏り判定部１４０）とを含む。
【０１１９】
そのような構成により、クラスタ分析システムは、任意のデータが含まれているバイナリデータ群を容易にクラスタリングできる。
【０１２０】
また、グループ生成部２３は、複数の計算手段それぞれが計算した類似度にそれぞれ対応している複数の分類情報を用いてグループを生成してもよい。
【０１２１】
そのような構成により、クラスタ分析システムは、特定領域に基づいてバイナリデータをクラスタリングできる。
【０１２２】
また、クラスタ分析システム２０は、入力されたクエリに応じて生成されたバイナリデータが含まれるグループを出力する出力部（例えば、問合せ処理部１１０）を含んでもよい。
【０１２３】
そのような構成により、クラスタ分析システムは、クライアント端末から入力されたクエリに回答できる。
【０１２４】
また、分類部２１は、出力されたバイナリデータが含まれるグループに対する評価を示す情報である評価情報を用いて複数の類似度データを分類し、グループ生成部２３は、評価情報を用いてグループを生成してもよい。
【０１２５】
そのような構成により、クラスタ分析システムは、実行結果コメントデータと複数類似度データ偏り判定部による判定結果を照合することによって、データ分類部の出力結果である分類データの精度を向上させることができる。
【０１２６】
また、クラスタ分析システム２０は、バイナリデータの集合が格納されている格納部（例えば、バイナリデータ格納部３００）を含み、出力部は、格納部に格納されているバイナリデータが含まれるグループを出力してもよい。
【０１２７】
そのような構成により、クラスタ分析システムは、データベースに格納されているバイナリデータに対して既存の複数の類似度計算部を用いて類似度を計算できる。
【０１２８】
また、分類部２１は、バイナリデータの集合に含まれているバイナリデータが更新されたときにバイナリデータ間の類似度を新たに算出してもよい。
【０１２９】
そのような構成により、クラスタ分析システムは、バイナリデータの更新に対応できる。
【０１３０】
また、計算手段は、機械学習で使用される任意の学習モデルを用いて類似度を計算してもよい。
【０１３１】
そのような構成により、クラスタ分析システムは、機械学習で使用される推論モデルを用いて類似度を計算できる。
【０１３２】
また、グループ生成部２３は、分類情報生成部２２が生成した分類情報を入力として利用可能であるか否かを判定してもよい。
【産業上の利用可能性】
【０１３３】
本発明は、バイナリデータを管理するデータベースシステムに好適に適用される。
【符号の説明】
【０１３４】
１０、１１、２０  クラスタ分析システム
２１  分類部
２２  分類情報生成部
２３  グループ生成部
１００  問合せ受付装置
１０１  ＣＰＵ
１０２  主記憶部
１０３  通信部
１０４  補助記憶部
１０５  入力部
１０６  出力部
１１０  問合せ処理部
１２０  データ分類部
１３０  単一類似度データ偏り判定部
１４０  複数類似度データ偏り判定部
１５０  分類データ格納部
１６０  実行結果コメントデータ格納部
２００１〜２００Ｎ  類似関係性生成装置
２１０  類似度計算部
３００  バイナリデータ格納部
４００  クライアント端末
【図１】
2019174889.tif 000003
【図２】
2019174889.tif 000004
【図３】
2019174889.tif 000005
【図４】
2019174889.tif 000006
【図５】
2019174889.tif 000007
【図６】
2019174889.tif 000008
【図７】
2019174889.tif 000009
【図８】
2019174889.tif 000010
【図９】
2019174889.tif 000011
【図１０】
2019174889.tif 000012
【図１１】
2019174889.tif 000013
【図１２】
2019174889.tif 000014