(57)【特許請求の範囲】
【請求項１】
分類や検索に重要でない非関連属性を除去する非関連属性除去装置に於いて、
１又は０の値をとる２値属性ａ１〜ａｎで表現され、カテゴリＣ１〜Ｃｍに分類されているデータが登録されているデータベースと、
前記データベースをエントリし、データ総数Ｓ、各カテゴリ毎のデータ数Ｓｉ、１又は０の値をとる各属性毎のデータ数ｔｊ、及び各カテゴリに対する１又は０の値をとる各属性毎のデータ数ｔijを算出してデータ数テーブルを生成するデータ数算出手段と、
前記データ数算出手段の算出結果をもとに各カテゴリに対する各属性毎の重みｗijを算出して重みテーブルを生成する重み算出手段と、
前記重み算出手段で算出された重みｗijをもとに各属性毎の重みの分散ｖｊを算出して分散テーブルを生成する分散算出手段と、
前記分散テーブル内の分散ｖｊと指定された情報をもとに非関連な属性を除去する属性除去手段とを備え、
該属性除去手段は、前記分散算出手段で算出された重みの分散の内、指定された閾値以下の各属性について、分散が小さい属性から順に、指定された分類処理に従って現在処理中の注目属性を残した場合の分類精度Ａ１と除去した場合の分類精度Ａ２を算出する分類精度算出手段を備え、注目属性を残した時の分類精度Ａ１に対し注目属性を除去した時の分類精度Ａ２が上回った場合に、該注目属性を除去することを特徴とする非関連属性除去装置。
【請求項２】
分類や検索に重要でない非関連属性を除去する非関連属性除去装置に於いて、
１又は０の値をとる２値属性ａ１〜ａｎで表現され、カテゴリＣ１〜Ｃｍに分類されているデータが登録されているデータベースと、
前記データベースをエントリし、データ総数Ｓ、各カテゴリ毎のデータ数Ｓｉ、１又は０の値をとる各属性毎のデータ数ｔｊ、及び各カテゴリに対する１又は０の値をとる各属性毎のデータ数ｔijを算出してデータ数テーブルを生成するデータ数算出手段と、
前記データ数算出手段の算出結果をもとに各カテゴリに対する各属性毎の重みｗijを算出して重みテーブルを生成する重み算出手段と、
前記重み算出手段で算出された重みｗijをもとに各属性毎の重みの分散ｖｊを算出して分散テーブルを生成する分散算出手段と、
前記分散テーブル内の分散ｖｊと指定された情報をもとに非関連な属性を除去する属性除去手段とを備え、
該属性除去手段は、前記分散算出手段で算出された重みの分散の内、指定された属性数だけ分散の小さい順に取り出した各属性について、分散が小さい属性から順に、ユーザ指定の分類処理に従って現在処理中の注目属性を残した場合の分類精度Ａ１と除去した場合の分類精度Ａ２を算出する分類精度算出手段を備え、注目属性を残した時の分類精度Ａ１に対し注目属性を除去した時の分類精度Ａ２が上回った場合に、該注目属性を除去することを特徴とする非関連属性除去装置。
【請求項３】
分類や検索に重要でない非関連属性を除去する非関連属性除去装置に於いて、
１又は０の値をとる２値属性ａ１〜ａｎで表現され、カテゴリＣ１〜Ｃｍに分類されているデータが登録されているデータベースと、
前記データベースをエントリし、データ総数Ｓ、各カテゴリ毎のデータ数Ｓｉ、１又は０の値をとる各属性毎のデータ数ｔｊ、及び各カテゴリに対する１又は０の値をとる各属性毎のデータ数ｔijを算出してデータ数テーブルを生成するデータ数算出手段と、
前記データ数算出手段の算出結果をもとに各カテゴリに対する各属性毎の重みｗijを算出して重みテーブルを生成する重み算出手段と、
前記重み算出手段で算出された重みｗijをもとに各属性毎の重みの分散ｖｊを算出して分散テーブルを生成する分散算出手段と、
前記分散テーブル内の分散ｖｊと指定された情報をもとに非関連な属性を除去する属性除去手段とを備え、
該属性除去手段は、前記分散算出手段で算出された重みの分散の内、指定された閾値以下で且つユーザ指定の属性数を最大とする分散の小さい順に取り出した各属性について、分散が小さい属性から順に、ユーザ指定の分類処理に従って現在処理中の注目属性を残した場合の分類精度Ａ１と除去した場合の分類精度Ａ２を算出する分類精度算出手段を備え、注目属性を残した時の分類精度Ａ１に対し注目属性を除去した時の分類精度Ａ２が上回った場合に、該注目属性を除去することを特徴とする非関連属性除去装置。
【請求項４】
分類や検索に重要でない非関連属性を除去する非関連属性除去装置に於いて、
１又は０の値をとる２値属性ａ１〜ａｎで表現され、カテゴリＣ１〜Ｃｍに分類されているデータが登録されているデータベースと、
前記データベースをエントリし、データ総数Ｓ、各カテゴリ毎のデータ数Ｓｉ、１又は０の値をとる各属性毎のデータ数ｔｊ、及び各カテゴリに対する１又は０の値をとる各属性毎のデータ数ｔijを算出してデータ数テーブルを生成するデータ数算出手段と、
前記データ数算出手段の算出結果をもとに各カテゴリに対する各属性毎の重みｗijを算出して重みテーブルを生成する重み算出手段と、
前記重み算出手段で算出された重みｗijをもとに各属性毎の重みの分散ｖｊを算出して分散テーブルを生成する分散算出手段と、
前記分散テーブル内の分散ｖｊと指定された情報をもとに非関連な属性を除去する属性除去手段とを備え、
該属性除去手段は、前記分散算出手段で算出された重みの分散の内、ユーザ指定の閾値以下の各属性について、分散が小さい属性から順に、ユーザ指定の検索処理に従って現在処理中の注目属性を残した場合の検索精度Ｂ１と除去した場合の検索精度Ｂ２を算出する検索精度算出手段を備え、注目属性を残した時の検索精度Ｂ１に対し注目属性を除去した時の検索精度Ｂ２が上回った場合に、該注目属性を除去することを特徴とする非関連属性除去装置。
【請求項５】
分類や検索に重要でない非関連属性を除去する非関連属性除去装置に於いて、
１又は０の値をとる２値属性ａ１〜ａｎで表現され、カテゴリＣ１〜Ｃｍに分類されているデータが登録されているデータベースと、
前記データベースをエントリし、データ総数Ｓ、各カテゴリ毎のデータ数Ｓｉ、１又は０の値をとる各属性毎のデータ数ｔｊ、及び各カテゴリに対する１又は０の値をとる各属性毎のデータ数ｔijを算出してデータ数テーブルを生成するデータ数算出手段と、
前記データ数算出手段の算出結果をもとに各カテゴリに対する各属性毎の重みｗijを算出して重みテーブルを生成する重み算出手段と、
前記重み算出手段で算出された重みｗijをもとに各属性毎の重みの分散ｖｊを算出して分散テーブルを生成する分散算出手段と、
前記分散テーブル内の分散ｖｊと指定された情報をもとに非関連な属性を除去する属性除去手段とを備え、
該属性除去手段は、前記分散算出手段で算出された重みの分散の内、指定された属性数だけ分散の小さい順に取り出した各属性について、分散が小さい属性から順に、指定された検索処理に従って現在処理中の注目属性を残した場合の検索精度Ｂ１と除去した場合の検索精度Ｂ２算出する検索精度算出手段を備え、注目属性を残した時の検索精度Ｂ１に対し注目属性を除去した時の検索精度Ｂ２が上回った場合に、該注目属性を除去することを特徴とする非関連属性除去装置。
【請求項６】
分類や検索に重要でない非関連属性を除去する非関連属性除去装置に於いて、
１又は０の値をとる２値属性ａ１〜ａｎで表現され、カテゴリＣ１〜Ｃｍに分類されているデータが登録されているデータベースと、
前記データベースをエントリし、データ総数Ｓ、各カテゴリ毎のデータ数Ｓｉ、１又は０の値をとる各属性毎のデータ数ｔｊ、及び各カテゴリに対する１又は０の値をとる各属性毎のデータ数ｔijを算出してデータ数テーブルを生成するデータ数算出手段と、
前記データ数算出手段の算出結果をもとに各カテゴリに対する各属性毎の重みｗijを算出して重みテーブルを生成する重み算出手段と、
前記重み算出手段で算出された重みｗijをもとに各属性毎の重みの分散ｖｊを算出して分散テーブルを生成する分散算出手段と、
前記分散テーブル内の分散ｖj と指定された情報をもとに非関連な属性を除去する属性除去手段とを備え、
該属性除去手段は、前記分散算出手段で算出された重みの分散の内、指定されたの閾値以下で且つユーザ指定の属性数を最大とする分散の小さい順に取り出した各属性について、分散が小さい属性から順に、指定された検索処理に従って現在処理中の注目属性を残した場合の検索精度Ｂ１と除去した場合の検索精度Ｂ２を算出する検索精度算出手段を備え、注目属性を残した時の検索精度Ｂ１に対し注目属性を除去した時の検索精度Ｂ２が上回った場合に、該注目属性を除去することを特徴とする非関連属性除去装置。
【請求項７】
分類や検索に重要でない非関連属性を除去するプログラムを格納した記憶媒体に於いて、
コンピュータを、
１又は０の値をとる２値属性ａ１〜ａｎで表現され、カテゴリＣ１〜Ｃｍに分類されているデータが登録されているデータベースを参照し、データ総数Ｓ、各カテゴリ毎のデータ数Ｓｉ、１又は０の値をとる各属性毎のデータ数ｔｊ、及び各カテゴリに対する１又は０の値をとる各属性毎のデータ数ｔijを算出してデータ数テーブルを生成するデータ数算出手段、
前記データ数算出手段の算出結果をもとに各カテゴリに対する各属性毎の重みｗijを算出して重みテーブルを生成する重み算出手段、
前記重み算出手段で算出された重みｗijをもとに各属性毎の重みの分散ｖｊを算出して分散テーブルを生成する分散算出手段、
前記分散テーブル内の分散ｖｊと指定された閾値以下の各属性をもとに、分散が小さい属性から順に、ユーザ指定の分類処理に従って現在処理中の注目属性を残した場合の分類精度Ａ１と除去した場合の分類精度Ａ２を算出し、注目属性を残した時の分類精度Ａ１に対し注目属性を除去した時の分類精度Ａ２が上回った場合に、該注目属性を除去して非関連属性を除去する属性除去手段として機能させるためのプログラムを記録したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データの自動分類や類似データ検索において、分類や検索に重要でない属性を除去する非関連属性除去装置及び非関連属性を除去するプログラムを格納した記憶媒体に関する。
大規模データベース化が進むに伴って、データの自動分類や類似データ検索は非常に重要になっている。例えば、データの自動分類は図書の自動分類や特許文書のＩＰＣコード付与等の分野で有用であり、類似データ検索はインターネット等の経由を含むヘルプデスクシステム（マシン対応の質問応答システム）や一般の設計問題や診断問題において有用である。
【０００２】
これらのデータの自動分類や類似データ検索において、分類や検索に重要でない非関連属性を除去することは、データの自動分類や類似データの検索の精度を高め、データベースの容量の削減、および分類や検索の高速化のために極めて重要であり、本質的である。これらのために、分類や検索に重要でない属性を自動的に除去することが望まれている。
【０００３】
【従来の技術】
従来の技術において、カテゴリ分類された２値の属性からなるデータに対し、ｎフォールド・クロス・バリデーション（n-fold cross-validation ）を用いて、除去する属性を決定している。ｎフォール・クロス・バリデーションは、データベースに登録されているデータをランダムにｎ個のデータの集合Ｓ１，・・・，Ｓｎに分割する。次に、任意のデータの集合Ｓｉ（ｉ＝１，・・・，ｎ）をテストデータセットとし、テストデータセットＳｉ以外のデータの集合を訓練データセットとして、ユーザ指定の分類手法や検索手法を全てのテストデータセットＳｉについて適用して、その分類精度や検索精度から非関連属性の除去を行なっている。
【０００４】
【発明が解決しようとする課題】
しかしながら、ｎフォールド・クロス・バリデーションを用いた従来の非関連属性の除去にあっては、ランダムなサンプリングに基づくため、属性の除去の妥当性はサンプリングの結果に大きく依存する。また、分割数ｎの値を大きくすると、属性の除去の妥当性は上がるが、除去する属性の決定にかかる時間の増大を引き起こす。
【０００５】
即ち、データの分割数に対し属性数を掛け合わせた処理回数を必要とし、除去する属性の決定に時間がかかる。逆に、分割数ｎの値を小さくすると、除去する属性の決定にかかる時間は小さいが、属性の除去の妥当性は低下を引き起こす。このように従来のｎフォールド・クロス・バリデーションを用いた従来の非関連属性の除去にあっては、重要な属性を除去したり、重要でない属性を残したりするばかりでなく、妥当な属性の除去を行なうためには、除去属性の決定に莫大な時間がかかるといった問題点を生じている。
【０００６】
本発明は、これらの問題を解決するため、カテゴリ分類された２値の属性からなるデータを対象に、データの自動分類や類似データ検索に重要でない非関連属性を適確に且つ効率良く短時間で除去できるようにした非関連属性除去装置及び非関連属性を除去するプログラムを格納した記憶媒体供することを目的とする。
【０００７】
【課題を解決するための手段】
図１は本発明の原理説明図である。まず本発明の非関連属性除去装置で非関連属性を除去してユーザの処理手順に従った分類や検索の対象となるデータベース１０には、１又は０の値をとる２値属性ａ1 〜ａn （属性数ｎ）で表現され、カテゴリＣ1 〜Ｃm （カテゴリ数ｍ）に分類されているデータが登録されている。
【０００８】
このようなデータベース１０に対し本発明の非関連属性除去装置１は、データ数算出手段２、重み算出手段４、分散算出手段６及び属性除去手段８が設けられる。更に、属性除去手段８の別の形態として、分類精度算出手段１１又は検索精度算出手段１２を設けることもできる。
データ数算出手段２は、データベース１０を参照し、データ総数Ｓ、各カテゴリＣi 毎のデータ数Ｓi 、１又は０の値をとる各属性ａj 毎のデータ数ｔj 、及び各カテゴリＣi に対する１又は０の値をとる各属性ａj 毎のデータ数ｔijを算出する。
【０００９】
重み算出手段４は、データ数算出手段２の算出結果をもとに各カテゴリＣi に対する各属性ａj 毎の重みｗijを算出する。分散算出手段６は、重み算出手段４で算出された重みｗijをもとに各属性ａj 毎の重みの分散ｖj を算出する。属性除去手段８は、分散算出手段６で算出された分散ｖj とユーザ指定情報をもとに非関連な属性を除去する。属性除去手段８に対するユーザ情報の指定としては、重みの分散の閾値の指定、除去する属性数の指定、及び両者の同時指定がある。
【００１０】
ユーザが本発明に詳しく、どれ位の分散の閾値を指定すると重要でない非関連属性を除去できるかを知っている場合等には、属性除去手段８に対しユーザは所望の閾値を指定する。この場合、属性除去手段８は、分散算出手段６で算出された各属性毎の重みの分散ｖj の内、ユーザ指定の閾値以下の属性を除去する。
一方、ユーザが本発明に詳しくない場合には、単純に除去する最大の属性数を指定すればよい。この場合、属性除去手段８は、分散算出手段６で算出された各属性ａj 毎の重みの分散ｖj の内、分散が小さい属性からユーザ指定の属性数だけ属性を除去する。
【００１１】
更に、ユーザが閾値と除去する最大の属性数の両方を指定したい場合には、属性除去手段８は、分散算出手段６で算出された各属性ａj 毎の重みの分散ｖj の内、ユーザ指定の閾値以下で且つユーザ指定の属性数を最大数とする属性を除去する。
属性除去手段８による非関連属性の除去を更に適確にするためには、例えばユーザの分類処理のための非関連属性を除去したい場合には、分類精度算出手段１１を設け、その算出結果をもとに非関連属性を除去することが望ましい。
【００１２】
属性除去手段８に設けられた分類精度算出手段１１は、ユーザが閾値を指定している場合、分散算出手段６で算出された重みの分散ｖj の内、ユーザ指定の閾値以下の各属性について、分散が小さい属性から順に、ユーザ指定の分類処理に従って現在処理中の注目属性を残した場合の分類精度Ａ1 ［％］と除去した場合の分類精度Ａ2 ［％］を算出する。
【００１３】
属性除去手段８は、分類精度算出手段８の算出結果から、注目属性を残した時の分類精度Ａ1 に対し注目属性を除去した時の分類精度Ａ2 が上回った場合に、現在処理中の注目属性を非関連属性として除去する。
ユーザが属性数を指定した場合についても、分類精度算出手段１１は、分散算出手段６で算出された重みの分散ｖj の内、ユーザ指定の属性数だけ分散の小さい順に取り出した各属性について、分散が小さい属性から順に、ユーザ指定の分類処理に従って注目属性を残した場合の分類精度Ａ1 と除去した場合の分類精度Ａ2 を算出し、属性除去手段８は、注目属性を残した時の分類精度Ａ1 に対し注目属性を除去した時の分類精度Ａ2 が上回った場合に、注目属性を除去する。
【００１４】
またユーザが閾値と除去数の両方を指定した場合には、分類精度算出手段１１は、分散算出手段６で算出された重みの分散ｖj の内、ユーザ指定の閾値以下で且つユーザ指定の属性数を最大とする分散の小さい順に取り出した各属性について、分散が小さい属性から順に、ユーザ指定の分類処理に従って注目属性を残した場合の分類精度Ａ1 と除去した場合の分類精度Ａ2 を算出し、属性除去手段８は、注目属性を残した時の分類精度Ａ1 に対し注目属性を除去した時の分類精度Ａ2 が上回った場合に、注目属性を除去する。
【００１５】
ユーザの検索処理のための非関連属性の除去を更に適確にしたい場合には、属性除去手段に検索精度算出手段１２を設け、その算出結果をもとに非関連属性を除去することが望ましい。
この場合、ユーザの閾値指定、除去数の指定または両方の指定に対応して、処理対象となった各属性について、検索精度算出手段１２によって、分散が小さい属性から順に、ユーザ指定の検索処理に従って注目属性を残した場合の検索精度Ｂ1 と除去した場合の検索精度Ｂ2 を算出する。この算出結果を基に、属性除去手段８は、注目属性を残した時の検索精度Ｂ1 に対し注目属性を除去した時の検索精度Ｂ2 が上回った場合に、この注目属性を非関連属性として除去する。
【００１６】
このように非関連属性を除去する際に対象とする属性が、除去する可能性の高い属性の範囲に限定されることから、分類や類似データ検索に重要でない非関連属性を適確に且つ効率良く短時間で除去でき、データの自動分類や類似データの検索の精度を高め、データベースの容量の削減、および分類や検索の高速化が達成できる。
【００１７】
また本発明は、分類や検索に重要でない非関連属性を除去するプログラムを格納した記憶媒体を提供する。この非関連属性を除去するプログラムを格納した記憶媒体は、
１又は０の値をとる２値属性ａ1 〜ａn で表現され、カテゴリＣ1 〜Ｃm に分類されているデータが登録されているデータベース１０を参照し、データ総数Ｓ、各カテゴリ毎のデータ数Ｓi 、１又は０の値をとる各属性毎のデータ数ｔj 、及び各カテゴリに対する１又は０の値をとる各属性毎のデータ数ｔijを算出するデータ数算出手段１；
データ数算出手段２の算出結果をもとに各カテゴリに対する各属性毎の重みｗijを算出する重み算出手段４；
重み算出手段４で算出された重みｗijをもとに各属性毎の重みの分散ｖj を算出する分散算出手段６；
分散算出手段６で算出された分散ｖj とユーザ指定情報をもとに非関連な属性を除去する属性除去手段８；
を備えたことを特徴とする。
【００１８】
この非関連属性を除去するプログラムを格納した記憶媒体における詳細は、悲関連属性除去装置の場合と基本的に同じになる。
【００１９】
【発明の実施の形態】
図２は本発明の非関連属性の除去装置の基本的な実施形態のブロック図である。図２において、本発明の非関連属性除去装置１は、データ数算出部２、重み計算部４、分散算出部６及び属性除去部８を備える。データ数算出部２は算出結果としてデータ数テーブル３を有し、重み計算部４は算出結果として重みテーブル５を有し、分散算出部６は算出結果として分散テーブル７を有する。
【００２０】
更に属性除去部８に対しては、ユーザ指定情報を入力するためのユーザ指定入力部８が設けられている。本発明の非関連属性除去装置１に対しては、データベース１０が設けられる。データベース１０には、カテゴリ分離された２値の属性からなるデータが格納されている。
即ちデータベース１０には、分類カテゴリ数をｍとすると、カテゴリＣ1 〜  Ｃm に分類されて、１または０の値をとる２値の属性例えば属性数ｎとなる属性ａ1 〜ａn からなるデータが格納されている。非関連属性除去装置１に設けられたデータ数算出部２は、カテゴリ分類された２値の属性からなるデータベース１０のデータを対象にデータ数テーブル３を作成する。
【００２１】
図３はデータ数算出部２で作成されるデータ数テーブルを示している。ここでデータベース１０のデータはカテゴリＣ1 〜Ｃm に分類され、１または０の２値で表わされる属性はａ1 〜ａm に分類されていることから、これらのカテゴリ及び属性をエントリとしてデータ総数Ｓ、各カテゴリＣ1 〜Ｃm ごとのデータ数  Ｓ1 〜Ｓm 、１（または０）の値をとる各属性ａ1 〜ａn ごとのデータ数ｔ１〜ｔn 、及び各カテゴリＣ1 〜Ｃm に対する１（または０）の値をとる各属性ａ1 〜ａn ごとのデータ数ｔ11〜ｔmnを算出して、図３のようなデータ数テーブル３を作成する。
【００２２】
ここでデータ数テーブル３のカテゴリ数１〜ｍの一般系をｉで表わし、また属性数１〜ｎの一般系をｊで表わすと、各カテゴリごとのデータ数はＳi 、各属性ごとのデータ数はｔj 、各カテゴリに対する各属性ごとのデータ数はｔijと表現することができる。
図４は図３のデータ数テーブル３の具体例である。このデータ数テーブル３にあっては、カテゴリがＣ1 〜Ｃ3 の３つに分類されており、また属性もａ1 〜  ａ3 の３つとなっている場合について、図２のデータ数演算部２でデータベース１０を参照し、一例としてデータ総数Ｓ＝６０、カテゴリごとのデータ数Ｓ1 ＝１０、Ｓ2 ＝２０、Ｓ3 ＝３０、１（または０）の値をとる属性ａ1 〜ａ3 ごとのデータ数ｔ1 ＝１２、ｔ2 ＝１０、ｔ3 ＝１５、更に各カテゴリＣ1 〜Ｃ3 に対する１（または０）の値をとる各属性ａ1 〜ａ3 ごとのデータ数ｔ11＝２，  ｔ21＝４、・・・ｔ33＝５を求めている。
【００２３】
図４のデータ数テーブルの具体例にあっては、属性ａ1 が値１（または０）をとるデータ数は、各カテゴリＣ1 〜Ｃ3 について２，４，６と平均的に出現しており、このような属性ａ1 は分類や検索に有用な属性でない可能性が高い。また属性ａ1 が値１（または０）をとるデータは、カテゴリＣ1 だけに出現し、カテゴリＣ2 ，Ｃ3 は０となっている。
【００２４】
このような属性ａ2 は、分類や検索に非常に有用な属性である可能性が高い。更に属性ａ3 が値１（または０）をとるデータは、カテゴリＣ1 〜Ｃ3 に同じ数５だけ出現している。この場合、カテゴリＣ1 に属する出現数５を見ると、カテゴリＣに属する全出現数１０の半分が出現しており、このような属性ａ3 はカテゴリＣ1 に対する正しい分類や検索のためには有用であると考えられる。
【００２５】
再び図２を参照するに、重み計算部４はデータ数算出部２によってデータ数テーブル３により設定されたパラメータに基づき、各カテゴリに対する各属性の重みを算出し、重みテーブル５を作成する。即ち、重み計算部４はデータ数テーブル１３に設定されたカテゴリ数ｍ、データ総数Ｓ、属性数ｎ、カテゴリＣi （１≦ｉ＜ｍ）に属するデータ数Ｓi 、属性ａj （１≦ｊ＜ｎ）が属性値１（または０）をとるデータ数ｔj 、更にカテゴリＣｉに対し属性ａj が属性値１（または０）をとるデータ数ｔijを基に、カテゴリＣI に対する属性ａj の重みｗijをある自然数ｔを用いて次式により生成し、重みテーブル５を作成する。
【００２６】
【数１】
0003884520.tif 000002
【００２７】
図５は図２の重み計算部４で作成される重みテーブル５の説明図であり、カテゴリＣ1 〜Ｃm 及び属性ａ1 〜ａn をエントリとして、前記（１）式で算出された重みｗ11〜ｗmnが格納されている。
図６は図４のデータ数テーブル３の具体例を対象に、前記（１）式により作成された図５の重みテーブル５の具体例である。図６の重みテーブルの具体例にあっては、属性ａ1 の各カテゴリＣ1 〜Ｃ3 に対する重みは全て０で同じ値をとっている。また属性ａ2 のカテゴリＣ1 〜Ｃ3 に対する重みは５／６，−１／３，−１／２とかなりぱらついた値をとっている。更に属性ａ3 のカテゴリＣ1 〜  Ｃ3 に対する重みは１／６，０，−１／６と比較的似た値をとっている。
【００２８】
一方、図６の重みテーブル５の具体例については、カテゴリＣ1 〜Ｃ3 に対する属性ａ1 〜ａ3 の重みｗ11〜ｗ33は、各カテゴリに対し各属性がどの程度重要であるかを数量的に表わしている。例えば属性ａ1 はカテゴリＣ1 〜Ｃ3 のいずれについても同程度の重要度であり、また属性ａ2 はカテゴリＣ1 の重要度が高く、カテゴリＣ2 ，Ｃ3 の順に重要度が低いことが分かる。更に属性ａ3 については、カテゴリＣ1 ，Ｃ2 ，Ｃ3 の順に重要度をもつことが分かる。
【００２９】
再び図２を参照するに、非関連属性除去装置１に設けられた分散算出部６は、重みテーブル５で設定されたカテゴリＣi に対する属性ａj の重みｗijを用いて、属性ａj の重みｗijの平均ｗij−を算出し、更にカテゴリ数ｍ、属性数ｎ、カテゴリＣi に対する属性ａj の重みｗijおよびその平均ｗij−を用いて、属性  ａj の重みに対する分散ｖj を次式により算出し、分散テーブル７を生成する。
【００３０】
【数２】
0003884520.tif 000003
【００３１】
図７は図２の分散算出部６で生成された分散テーブル７の説明図であり、（２）式により属性ａ1 〜ａn の各々について算出された分散ｖ１〜ｖn が格納されている。
図８は図７の分散テーブル７の具体例であり、図４のデータ数テーブル３及び図６の重みテーブル５の具体例に基づき、前記（２）式から求めた分散を格納している。この場合、属性ａに対する分散ｖ１は０という非常に小さい値をとっている。また属性ａ2 に対する分散ｖ２は１９／５４という非常に大きな値をとっている。更に属性ａ3 に対する分散ｖ３は１／５４という割に大きな値をとっている。このように各属性の重みの分散を計算することで、その属性が分類や検索にどの程度重要であるかを数量的に把握することができる。
【００３２】
再び図２を参照するに、属性除去部８は分散テーブル７の設定内容とユーザ指定入力部９からのユーザ指定情報とに基づき、重要でない非関連属性を認識してこれを除去する。ユーザ指定情報としては、重みの分散の閾値、属性除去数があり、閾値のみの指定、除去数のみの指定、閾値と除去数の両方の指定のいずれかを行うことができる。
【００３３】
即ち、ユーザ指定入力部９によってユーザが分散の閾値を指定した場合には、属性除去部８は分散テーブル７を参照し、指定された閾値以下の分散をもつ属性を非関連属性として除去する。このユーザが閾値を指定する場合は、本発明による非関連属性除去装置を詳しく知っている場合である。
これに対し、ユーザが本発明の装置に詳しくない場合や、一定数の属性を除去したい場合などには、ユーザ指定入力部９によって任意の除去する属性数を指定してもらう。このような除去する属性数の指定に対し、属性除去部８は分散テーブル７を参照し、分散の小さい属性からユーザ指定の属性数分だけ属性を除去する。
【００３４】
更にユーザ指定入力部９によってユーザが閾値と属性数の両方を指定した場合には、属性除去部８は分散テーブル７の中から分散の小さい順にユーザ指定の最大属性数分だけの属性を取り出し、取り出した属性の中で分散がユーザ指定の閾値以下の属性を除去する。
図８の分散テーブル７の具体例について属性除去を説明すると、例えば次のようになる。今、ユーザが閾値１／１００を指定したとすると、図８の分散０となる属性ａ1 のみが除去される。またユーザが除去する属性数を２と指定した場合、分散の小さい順番に属性ａ1 ，ａ2 が除去される。
【００３５】
更にユーザが閾値を１／１００、除去する属性数２を指定した場合、属性ａ1 だけが除去される。このように、ユーザ指定情報に従って迅速且つ確実に重要でない非関連情報を除去することができる。
図９は図２の非関連属性除去装置１における処理を示したフローチャートである。まずステップＳ１で、データ数算出部２がデータベース１０を参照し、カテゴリ数ｍ、属性数ｎ、データ総数Ｓ、カテゴリＣi ごとのデータ数ｔi 、属性  ａj ごとの１（または０）をとるデータ数ｔj 、更にカテゴリＣj の各々に対する属性ａj ごとのデータ数ｉｊを算出し、データ数テーブル３を作成する。
【００３６】
次に重み算出処理部４がデータ数テーブル３のパラメータに基づき、前記（１）式に従ってカテゴリＣi の各々に対する属性ａj ごとの重みｗijを参照して重みテーブル５を作成する。
次に分散処理部６が、前記（２）式に従って属性ａj の各々の重みに対する分散ｖj を算出して分散テーブル７を作成する。最終的にステップＳ４で、属性除去部８がユーザ指定情報である分散閾値及び除去数に基づいた属性の除去を行う。
【００３７】
ステップＳ４の属性除去処理の詳細は、図１０にサブルーチンとして示される。属性除去部８はステップＳ１でユーザによる閾値ＴＨの指定の有無をチェックし、指定があれば、ステップＳ２で属性除去数Ｎの指定の有無をチェックする。属性除去数Ｎの指定がなければステップＳ４に進み、分散テーブル７を参照し、閾値ＴＨ以下の分散をもつ属性を全て除去する。
【００３８】
一方、ステップＳ４でユーザが閾値ＴＨの指定を行っていない場合には、ステップＳ３に進み、除去数Ｎの指定をチェックする。除去数Ｎの指定があると、ステップＳ５で分散テーブル７の指定数Ｎ分の属性を分散の小さい順に除去する。更にステップＳ１でユーザの閾値ＴＨの指定が判別され、且つステップＳ２で属性除去数Ｎの指定が判別された場合には、ステップＳ６に進み、閾値ＴＨ以下の分散をもつ属性を小さい順に最大Ｎ個まで除去する。
【００３９】
図１１は本発明の他の実施形態であり、データベース１０を対象にユーザの分類システムで使用される非関連属性の除去を最適化するため、属性除去部８に分類精度算出部１１を新たに設けたことを特徴とする。それ以外の構成は図２の実施形態と同じである。
属性除去部８に設けた分類精度算出部１１は、ユーザデータ入力部９による閾値及びまたは属性除去数の指定に基づき、分散テーブル７から取り出された属性を対象に、分散の小さい属性から順に、現在処理対象となっているデータの集合Ｕをテストデータとする。そしてテストデータＵを用いて任意のユーザ指定の分類手順に従って、現在処理中の参照属性を除去した場合の分類精度Ａ1 ［％］を算出すると共に、現在処理中の参照属性を残した場合の分類精度Ａ2 ［％］を算出する。
【００４０】
属性除去部８は、分類精度算出部１１による属性を除去した場合と残した場合の分類精度の算出結果Ａ1 ，Ａ2 を比較し、属性を除去した場合に分類精度が上がった場合には不必要な属性であることから、この属性を除去する。属性を除去した場合に分類精度が下がった場合には必要な属性であることから、この属性は残す。
【００４１】
このように分類精度算出部１１により属性を除去した場合と残した場合の分類精度を算出して、除去する属性が本当に分類に必要であるか否かを適確に判断することで、分類に必要でない重要な属性を確実に効率良く除去することができる。
図１２は、図１１の属性除去部８における属性除去処理のユーザ指定に対応したフローチャートである。
【００４２】
図１２において、ユーザが分散の閾値ＴＨを指定していた場合には、ステップＳ１，Ｓ２からステップＳ４に進み、分散テーブル７から指定された閾値ＴＨ以下の分散をもつ属性ａp （ｐ＝１，２，・・・Ｎ）を取り出し、ステップＳ７に進み、分類精度算出部１１の算出結果に基づいた属性除去処理を行う。
またユーザが属性除去数Ｎのみを指定した場合には、ステップＳ１からステップＳ３に進んで除去数Ｎの指定が判別され、ステップＳ５において、分類テーブル７から小さい順に指定数Ｎ分の属性ａp を取り出し、ステップＳ７で、分類精度算出部１１の算出結果に基づいた属性除去処理を行う。
【００４３】
更にユーザが閾値ＴＨ及び除去数Ｎの両方を指定した場合には、ステップＳ１，Ｓ２からステップＳ６に進み、分散テーブル７から閾値ＴＨ以下の分散をもつ指定数Ｎ分の属性ａp を小さい順に取り出し、同様にステップＳ７に進んで、分類精度算出部１１の算出結果に基づいた属性除去処理を行う。
図１３は、図１２のステップＳ７で行う分類精度算出結果に基づいた属性除去処理の詳細をサブルーチンとして示している。
【００４４】
図１３において、まずステップＳ１で、分散テーブル７からユーザ指定情報に基づいて取り出された複数の属性ａp の中の最も分散が小さい最小分散ｖmin の属性ａp が値１（または０）をとるデータをデータベース１０から取り出して、テストデータＵとする。
続いてステップＳ２で、テストデータＵについて、現在処理対象となっている最小分散ｖmin の属性ａp を残して、ユーザ指定の分類手順に従って分類を行って分類精度Ａ1 ［％］を算出する。次にステップＳ３で、同じテストデータＵを対象に、現在処理対象となっている注目属性ａp を除去してユーザ指定の分類手順で分類したときの分類精度ａ2 ［％］を算出する。
【００４５】
続いてステップＳ４で、属性ａp を残したときの分類精度Ａ1 と除去したときの分類精度Ａ2 を比較し、もし除去したときの分類精度Ａ2 が残したときの分類精度Ａ1 以上であれば、この属性ａp は分類に必要のない属性であることから、ステップＳ５で属性ａp を除去する。
これに対し属性ａp を除去したときの分類精度Ａ2 が残したときの分類精度  Ａ1 を下回ったら、属性ａp は分類に必要な属性であることから、ステップＳ６に進み、属性ａp を残す。
【００４６】
以上の分類精度に基づいた属性除去の判定処理が済んだならば、ステップＳ７で、処理対象となっている全ての属性ａp の処理が終了したか否かチェックし、終了していなければステップＳ８で、もし属性除去が行われていれば処理済み属性を除外してステップＳ１に戻り、現在残っている最小分散ｖmin の属性ａp を対象に同様な処理を繰り返す。
【００４７】
図１３の分類精度に基づいた属性除去処理にあっては、ステップＳ５である属性ａp を除去した場合には、既に処理済みの属性に再度戻って検証を行うリターンバック検証が行われる。
図１４は図１３におけるリターンバック検証の説明図である。ここで図１４は、カテゴリＣ1 〜Ｃm について除去処理の対象とする３つの属性ａ1 〜ａ3 が取り出された場合の処理である。また属性ａ1 〜ａ3 の小さい方からの順番は、  ａ1 ，ａ2 ，ａ3 となっている。
【００４８】
図１４（Ａ）は、最初に行われる分散が最も小さい属性ａ1 の検証であり、属性ａ1 が１（または０）となるデータをテストデータとしてカテゴリＣ1 〜Ｃm のそれぞれについてブロック１３に示す分類を行い、分類精度Ａ1 が得られたとする。次に、現在処理対象となっている属性ａ1 を除いた属性ａ2 ，ａ3 について、同じくカテゴリＣ1 〜Ｃm についてブロック１４でテストデータに対する分類を行い、分類精度Ａ2 を求める。
【００４９】
このようなブロック１３，ブロック１４における属性ａ1 を残した場合と属性ａ1 を除去した場合の分類精度Ａ1 ，Ａ2 は、ブロック１５で比較され、この場合、属性ａ1 を除去した場合の分類精度Ａ2 が残していた場合の分類精度Ａ1 より小さくなることから、ブロック１６のように属性ａ1 を残す。
図１４（Ｂ）は、次に分散の小さい属性ａ2 の検証であり、属性ａ2 の値が１（または０）となるデータベースのテストデータを対象に、ブロック１７で属性ａ2 を残した場合の分類による分類精度Ａ1 を求める。続いてブロック１８で、属性ａ2 を除いた分類の分類精度Ａ2 を求める。
【００５０】
この分類精度Ａ1 ，Ａ2 のブロック１９における比較処理において、属性ａ2 を除去したときの分類精度Ａ2 が残したときの分類精度Ａ1 以上となった場合には、属性ａ2 は不必要な属性であることから、ブロック２０で属性ａ2 を除去する。
図１４（Ｃ）は、図１４（Ｂ）で属性ａ2 を除去した後のリターンバック検証であり、この場合、再び最初の属性ａ1 に戻った属性除去処理を行う。即ちブロック２１のように、現在残っている属性ａ1 ，ａ3 について、属性ａ1 の値が１（または０）となるデータベースのテストデータを対象に、ブロック２１のように属性ａ1 を残したときの分類精度Ａ1 と、ブロック２２のように属性ａ1 を除去したときの分類精度Ａ2 を求める。
【００５１】
この分類精度の検出結果をブロック２３で比較した場合、属性ａ1 を除去した場合の分類精度Ａ2 が残したときの分類精度Ａ1 以上であった場合、属性ａ1 がこのリターンバック検証において初めて不必要な属性であることが分かり、ブロック２４で属性ａ1 を除去する。
図１５は本発明の他の実施形態であり、ユーザの検索処理のための非関連属性の除去を更に適確にするため、属性除去部８に検索精度算出部１２を設け、検索精度算出部１２の算出結果に基づいて属性除去を行うようにしたことを特徴とする。それ以外の構成は図２の実施形態と同じである。
【００５２】
検索精度算出部１２は、ユーザ指定の検索システムをユーザ指定に従ったテストデータに適用して、対象となっている参照属性を残した場合と除去した場合の検索精度を算出する以外は、図１１の分類精度算出部１１と基本的に同じになる。
図１６のフローチャートは、検索精度算出部１２を備えた図１５の属性除去部８の属性除去処理である。属性除去処理におけるステップＳ１〜Ｓ６の処理は、ユーザ指定入力部９からの閾値及びまたは除去数の指定に基づいた分散テーブル７からの処理対象属性の取出処理であり、図１２の分類精度に基づいた属性除去の場合と同じである。このステップＳ４，Ｓ５またはＳ６における分散テーブル７からの処理対象とする属性ａp の取出後に、ステップＳ７の検索精度に基づいた属性除去を行う。
【００５３】
図１７は、図６のステップＳ７の検索精度に基づいた属性除去処理の詳細である。図１７のフローチャートにあっては、ステップＳ２で、現在処理対象となっている属性ａp を残した場合の検索精度Ｂ1 を算出し、ステップＳ３で、現在処理対象となっている参照属性ａp を除去した場合の検索精度Ｂ2 を算出し、ステップＳ４で両者を比較する。
属性ａp を除去した場合の検索精度Ｂ2 が残した場合の検索精度Ｂ1 より大きければ、属性ａp を除去する。属性ａp を除去した場合の検索精度Ｂ2 が残した場合の検索精度Ｂ1 より小さければ、属性ａp は必要な属性であることからステップＳ６で残す。
【００５４】
このような処理をステップＳ７で、取り出された全ての属性の処理が終了するまで繰り返す。またステップＳ５で属性ａp を除去した場合のリターンバック検証については、図１４の分類精度を算出する場合と同じである。
尚、本発明の非関連属性除去装置は、計算機システムによるプログラム制御で通常実現される。またデータベースの検索システムにおける非関連属性除去のためのアプリケーションとして適用される場合もある。また本発明は実施形態に示した数値による限定は受けないことは勿論である。
【００５５】
【発明の効果】
以上説明してきたように本発明によれば、非関連属性を除去する際に対象とする属性が、除去する可能性の高い属性の範囲に限定されることから、分類や類似データ検索等に重要でない非関連属性を適確に判断して効率良く短時間で除去することができ、データの自動分類や類似データの検索精度を高め、データベースの容量削減及び分類や検索の高速化を達成することができる。
【００５６】
またユーザによって閾値や除去数等を指定させることによって、自由に重要でない非関連属性の除去処理の範囲を決めることができる。即ち、本発明に詳しい場合や知識がある場合は閾値の設定、本発明に詳しくない場合や必要な数を除去したい場合には属性除去数の指定を行うことで、ユーザの希望に応じて最適な非関連属性の除去処理を適確且つ迅速に行うことができる。
【００５７】
更に、ユーザの分類システムや検索システムに適合した非関連属性の除去を最適化するため、ユーザの分類システムや検索システムを使用した除去対象とする非関連属性ごとの属性を残した場合と除去した場合との分類精度の結果に基づいて非関連属性を除去することで、重要でない非関連属性を適確に判断して迅速に除去することができる。
【図面の簡単な説明】
【図１】本発明の原理説明図
【図２】本発明の実施形態のブロック図
【図３】図２のデータ数テーブルの説明図
【図４】図２のデータ数テーブルの具体例の説明図
【図５】図２の重みテーブルの説明図
【図６】図２の重みテーブルの具体例の説明図
【図７】図２の分散テーブルの説明図
【図８】図２の分散テーブルの具体例の説明図
【図９】図２の非関連属性除去処理のフローチャート
【図１０】ユーザ指定に応じた図９の属性除去処理の詳細を示したフローチャート
【図１１】属性除去を分類精度を基に行う本発明の他の実施形態のブロック図
【図１２】ユーザ指定に応じた図１１の属性除去処理のフローチャート
【図１３】図１２の分類精度に基づいた属性除去処理のフローチャート
【図１４】図１３の属性除去処理におけるリターンバック検証の説明図
【図１５】属性除去を分類精度を基に行う本発明の他の実施形態のブロック図
【図１６】ユーザ指定に応じた図１５の属性除去処理のフローチャート
【図１７】図１６の分類精度に基づいた属性除去処理のフローチャート
【符号の説明】
１：非関連属性除去装置
２：データ数算出部（データ数算出手段）
３：データ数テーブル
４：重み計算部（重み計算手段）
５：重みテーブル
６：分散算出手段
７：分散テーブル
８：属性除去部（属性除去手段）
９：ユーザ指定入力部
１０：データベース
１１：分類精度算出部（分類精度算出手段）
１２：検索精度算出部（検索精度算出手段）
【図１】
0003884520.tif 000004
【図２】
0003884520.tif 000005
【図３】
0003884520.tif 000006
【図４】
0003884520.tif 000007
【図５】
0003884520.tif 000008
【図６】
0003884520.tif 000009
【図７】
0003884520.tif 000010
【図８】
0003884520.tif 000011
【図９】
0003884520.tif 000012
【図１０】
0003884520.tif 000013
【図１１】
0003884520.tif 000014
【図１２】
0003884520.tif 000015
【図１３】
0003884520.tif 000016
【図１４】
0003884520.tif 000017
【図１５】
0003884520.tif 000018
【図１６】
0003884520.tif 000019
【図１７】
0003884520.tif 000020