(57)【要約】【課題】事例集合が与えられた場合の２事例間の距離計算において、自動的に属性間の重複を除去して距離計算を行うことを目的とする。【解決手段】複数の属性を有する既知の事例集合の各事例の属性値をもとに、各属性の距離計算における修正度を求る修正度計算部と、第一の事例と第二の事例との距離を、第一の事例と第二の事例との各属性間距離と修正度との加重和により距離計算を行う距離計算部とを備える距離計算装置であって、修正度計算部は、主成分分析により各主成分の固有値と重みベクトルとを計算し、固有値が所定値よりも大きな場合には所定値を寄与度とし、固有値が所定値以下の場合には固有値を寄与度とし、寄与度と重みベクトルとから修正度を計算することを特徴とする。【選択図】      図１
2005025635.tif 000002
【特許請求の範囲】
【請求項１】
複数の属性を有する既知の事例集合の各事例の属性値をもとに、各属性の距離計算における修正度を求める修正度計算部と、第一の事例と第二の事例との距離を、第一の事例と第二の事例との各属性間距離と修正度との加重和により距離計算を行う距離計算部とを備える距離計算装置であって、
前記修正度計算部は、主成分分析により各主成分の固有値と重みベクトルとを計算し、
固有値が所定値よりも大きな場合には所定値を寄与度とし、
固有値が所定値以下の場合には固有値を寄与度とし、
寄与度と重みベクトルとから修正度を計算することを特徴とする距離計算装置。
【請求項２】
所定値が１であることを特徴とする請求項１に記載の距離計算装置。
【請求項３】
請求項１、または請求項２に記載の距離計算装置であって、前記修正度計算部は、事例集合のカテゴリ値属性をダミー変数展開して展開済事例集合を出力する属性展開部を備え、
展開済事例集合から属性の重複成分を計算して修正度を計算することを特徴とする距離計算装置。
【請求項４】
請求項３に記載の距離計算装置であって、
前記修正度計算部は、展開済事例集合の各属性の修正度から事例集合の各属性の修正度を計算する修正度復元部を備えることを特徴とする距離計算装置。
【請求項５】
請求項１、または請求項２、または請求項３、または請求項４に記載の修正度計算部を備え、
所定の属性に関して既知の事例集合と、当該属性に関して未知の事例とを入力とし、
既知事例集合から予測の条件として使用される条件属性を取り出して条件既知事例集合を生成し、修正度計算部に出力する条件事例集合生成部と、
修正度計算部の出力する修正度を用い、既知事例集合の各事例と未知事例間の類似度を計算する類似度計算部と、
既知事例集合から未知事例との類似度が高い事例の集合（類似事例集合）を抽出し、各類似事例の類似度とあわせて出力する類似事例集合抽出部と、
類似事例集合とその類似度から予測結果を計算する予測結果計算部とを有することを特徴とする予測装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、既知の事例集合内の各事例の属性を基に、２事例間の距離を計算する装置に関する。
【０００２】
【従来の技術】
近年、インターネットを代表とするネットワークの発達や、記憶装置の大容量化、コンピュータの高性能化、低価格化により、膨大な量の情報の蓄積が容易になっている。
例えば、流通業におけるＰＯＳ（Ｐｏｉｎｔ  Ｏｆ  Ｓａｌｅ）システムでは、全国各地の小売店の売り上げ内容を、逐次本社コンピュータなどに集めることが可能となり、販売された商品と販売状況との関係を事例データとして刻々と蓄積している。
【０００３】
この他にも、製造業における、各種製造条件と生成された製品の歩留まりとの関連データ、金融業における、個人のクレジットカード使用状況データ、保険業における、保険使用者の個人データと使用状況データなど、さまざまな分野で大量の事例データの蓄積が容易になり、これらの蓄積された事例データをビジネスに活用したいという要望が高まっている。
【０００４】
蓄積された事例データの活用例として、ダイレクトメールの発送先と返答状況に関する事例データを分析し、返答率を上げるための発送先の絞込み、その他金融与信問題、クレジットカードの不正顧客の発見、ネットワークにおける不正アクセスの発見などがある。
蓄積された事例データの基本的な分析には、各事例の有する属性値を基に、各事例間の距離を計算すること、さらに、既に属性値が分かっている既知事例データを基に、新たに発生する事例の属性値を予測すること等がある。
【０００５】
各事例の属性には、体重等の連続値を有する数値属性と、色、趣味等の離散値を有するカテゴリ値属性とがある。しかし、数値属性とカテゴリ値属性とは量と質との違いがあるため、そのままでは距離計算を行う際の属性として同じ枠組みの中では扱えない。
この問題に対しては、カテゴリ値属性を数値属性に展開（ダミー変数展開）して重み付けすることにより、同じ枠組みの中で同時に処理することを可能とし、加重和により距離を計算する方法が開示されている（非特許文献１参照）。
【０００６】
【非特許文献１】
１９９４年度人工知能学会全国大会論文集ｐｐ１１１−１１４
この方法では、カテゴリ値属性を数値属性に展開したうえで、主成分分析により各属性の固有値を求め、固有値が所定の値（閾値）以上の本質的な成分を求め、本質でない成分（重複成分）を除去しつつ距離計算を行う。しかし、この閾値設定はユーザーにゆだねられており、ユーザーが閾値を指定する必要がある。
【０００７】
また、記憶に基づく推論（Ｍｅｍｏｒｙ−Ｂａｓｅｄ  Ｒｅａｓｏｎｉｎｇ：ＭＢＲ）の計算方式として、「類似事例に基づく予測装置およびその影響度計算方法」が開示されている。（特許文献１参照）
【０００８】
【特許文献１】
特開２０００−１５５６８１
この方法では、事例間の距離をもとに最適な類似事例抽出条件を自動的に決定し、この条件を基に未知の属性を予測している。
図１３は従来の距離計算装置例を示し、図１４は当該装置のフローチャート例を示す。事例Ａ・Ｂ間の距離を計算する場合、
１．ステップＳ１において、事例Ａと事例Ｂの属性ごとの距離（単一属性間距離）ｄ（ｊ）を計算する。事例Ａの第ｊ属性値をａ（ｊ）、事例Ｂの第ｊ属性値をｂ（ｊ）、事例集合Ｇの第ｊ属性の標準偏差をσ（ｊ）としたとき、単一属性間距離は式（１）で表現できる。
【０００９】
【数１】
2005025635.tif 000003
２．ステップＳ２において、各属性の単一属性間距離を用い、事例Ａ・Ｂ間の距離を式（２）により計算する。
【００１０】
【数２】
2005025635.tif 000004
式（２）では、単一属性間距離を単純に加算して距離としているが、距離計算における重複成分除去を行う場合には以下の処理を行う。
例えば、事例集合Ｇの全ての属性は数値属性、属性数がｍ、事例数がｎであり、ｉ番目の事例のｊ番目の属性の値をｘ（ｉ，ｊ）とする。
【００１１】
図１４において、ステップＳ３の修正度計算では、主成分分析を行い固有値λ１，λ２，．．，λｍと重みベクトルｗ１，ｗ２，．．，ｗｍとを計算する。すなわち、
１．第ｊ属性の平均μ（ｊ）と、標準偏差σ（ｊ）とを計算する。
２．第ｉ行第ｊ列が（ｘ（ｉ，ｊ）−μ（ｊ））／σ（ｊ）であるｎ行ｍ列行列Ｘに対し、相関係数行列
【００１２】
【数３】
2005025635.tif 000005
を計算する。
３．次式を満たす固有値λ１，λ２，．．，λｍと、重みベクトルｗ１，ｗ２，．．，ｗｍとを計算する。
【００１３】
【数４】
2005025635.tif 000006
ただし、固有値λ１，λ２，．．，λｍは降順に並んでおり、｜ｗｊ｜＝１（ｊ＝１．．．ｍ）とする。
ここでユーザーに閾値として累積寄与度ｓ（０以上１以下）を指定させ、式（３）を満たす最小の整数ｍ’を計算する。
【００１４】
【数５】
2005025635.tif 000007
このとき、修正度ｍ（ｊ）を式（４）
【００１５】
【数６】
2005025635.tif 000008
により計算し、修正度として保存する。
次にステップＳ２において、上記修正度と、式（１）で計算した各属性の単一属性間距離とを用い、事例Ａ・Ｂ間の距離を式（５）により計算する。
【００１６】
【数７】
2005025635.tif 000009
一般に主成分分析では、固有値が大きな主成分は本質的である可能性が大きく、固有値が小さくなるに従いその主成分はノイズの可能性が大きくなる。したがって、ｗ１，ｗ２，．．，ｗｍ’を本質的な主成分と考え、これらに含まれる事例集合Ｇの属性の成分を計算している。一方、ｗｍ’＋１，ｗｍ’＋２，．．，ｗｍはノイズと考え無視している。
【００１７】
従来、この境界はユーザーが閾値を指定することで決定しているが、閾値指定に明確な基準はなく、実質的には発見的解法等で閾値を指定している。従って、ユーザに負担がかかると共に、ユーザーが適切な値を設定しないと、本質的な主成分が欠落したりノイズが混入したりして、本質的な距離が計算できない場合がある。
【００１８】
【発明が解決しようとする課題】
本発明は、事例集合が与えられた場合の２事例間の距離計算において、ユーザーがデータの性質に注意を払うことなく、すなわちユーザーが距離計算に使用する固有値の閾値を指定することなく、自動的に属性間の重複を適切に除去し、本質的な距離計算を行うことを目的とする。
【００１９】
【課題を解決するための手段】
本発明は、複数の属性を有する既知の事例集合の各事例の属性値をもとに、各属性の距離計算における修正度を求める修正度計算部と、第一の事例と第二の事例との距離を、第一の事例と第二の事例との各属性間距離と修正度との加重和により距離計算を行う距離計算部とを備える距離計算装置であって、前記修正度計算部は、主成分分析により各主成分の固有値と重みベクトルとを計算し、固有値が所定値よりも大きな場合には所定値を寄与度とし、固有値が所定値以下の場合には固有値を寄与度とし、寄与度と重みベクトルとから修正度を計算することを特徴とする。
【００２０】
なお、主成分の固有値が１を超えた場合には重複があるとして、所定値を１としても良い。
さらに、前記修正度計算部は、事例集合のカテゴリ値属性をダミー変数展開して展開済事例集合を出力する属性展開部を備え、展開済事例集合から属性の重複成分を計算して修正度を計算するとしても良い。
【００２１】
さらに、修正度計算部は、展開済事例集合の各属性の修正度から事例集合の各属性の修正度を計算する修正度復元部を備えるとしても良い。
さらに、前記各修正度計算部を備えた予測装置であって、所定の属性に関して既知の事例集合と、当該属性に関して未知の事例とを入力とし、既知事例集合から予測の条件として使用される条件属性を取り出して条件既知事例集合を生成し、修正度計算部に出力する条件事例集合生成部と、修正度計算部の出力する修正度を用い、既知事例集合の各事例と未知事例間の類似度を計算する類似度計算部と、既知事例集合から未知事例との類似度が高い事例の集合（類似事例集合）を抽出し、各類似事例の類似度とあわせて出力する類似事例集合抽出部と、類似事例集合とその類似度から予測結果を計算する予測結果計算部とを有することを特徴とする。
【００２２】
これにより、自動的に重複成分を除去した、本質的な距離計算が可能となる。また、重複成分が除去された距離に基づいた類似度を用いることで、本質的な予測が可能となる。
【００２３】
【発明の実施の形態】
図１に、本発明の実施例１による修正度計算部フローチャートを示す。以下、図１３に示す従来例の距離計算装置例に本発明を適用した場合の処理について説明する。
修正度計算部はステップＳ１１において、前述の従来例と同様に、λ１，λ２，．．，λｍと、ｗ１，ｗ２，．．，ｗｍとを計算する。
【００２４】
ここで、固有値λｉは第ｉ主成分の分散に等しいので、これが１よりも大きいことは事例集合Ｇの属性において第ｉ主成分が重複していることを示す。重複成分を除くため、固有値の上限を１とした次式の寄与度を修正度計算に用いる。
【００２５】
【数８】
2005025635.tif 000010
この寄与度を用い、第ｊ属性の修正度ｍ（ｊ）を式（６）により計算する。
【００２６】
【数９】
2005025635.tif 000011
式（６）は、分母で全主成分をそのまま加算しているのに対し、分子の寄与度αｉではλｉが１以上の主成分についてはλｉ＝１としている。したがって、ｍ（ｊ）は第ｊ属性における非重複成分の割合となる。
【００２７】
すなわち、ステップＳ１０およびステップＳ１３において全主成分を採用しているため、本質的な主成分が欠落することがなく、かつステップＳ１２において寄与度を乗じているため、固有値が小さな（ノイズの可能性が大きな）主成分に関してはその影響を抑えることが出来る。
距離計算部のフローチャートを図２に示す。距離計算部では、図１のステップＳ１２で計算した修正度ｍ（ｊ）とステップＳ２１で計算した単一属性間距離とから、ステップＳ２２の式（５）により事例Ａ・Ｂ間の距離を計算する。
【００２８】
これにより、ユーザーの閾値指定無しに重複成分を除去し、本質的な距離計算が可能となる。
この距離計算装置を用いて、図３に示すような事例集合Ｇをもとに、図４に示す事例Ａと、事例Ｂ、事例Ｃとの間の距離を計算する例を示す。
事例集合Ｇの場合、属性は「年収」、「生年」、「年齢」から構成されており、「年収」属性の標準偏差は１００万、「生年」及び「年齢」属性の標準偏差は２０、「年齢」属性と「生年」属性間の相関係数は−０．９９、「年収」と「生年」、「年齢」は無相関であるものとする。この場合、相関係数行列は、
【００２９】
【数１８】
2005025635.tif 000012
となり、固有値と重みベクトルとは、式（１６）
【００３０】
【数１９】
2005025635.tif 000013
となる。この値を用い、式（６）から、各属性の修正度は、ｍ（１）＝１，ｍ（２）＝０．５０５，ｍ（３）＝０．５０５となる。
したがって、事例Ａ・Ｂ間の距離は、
【００３１】
【数２０】
2005025635.tif 000014
となり、事例Ａ・Ｃ間の距離は、
【００３２】
【数２１】
2005025635.tif 000015
となる。
参考までに、従来例の基本的な距離計算式（２）で事例Ａ・Ｂ間の距離、および事例Ａ・Ｃ間の距離を計算すると、
【００３３】
【数２２】
2005025635.tif 000016
となる。また、従来手法でユーザーが閾値（  累積寄与度）  として０．９９を指定した場合、式（３）を満たす最小の整数ｍ’は２となり、ｍ（１）＝１，ｍ（２）＝０．５，ｍ（３）＝０．５が得られ、
【００３４】
【数２３】
2005025635.tif 000017
となる。
一方、閾値（  累積寄与度）  として０．９９９を指定した場合、式（３）を満たす最小の整数ｍ’は３となり、ｍ（１）＝１，ｍ（２）＝１，ｍ（３）＝１が得られ、
【００３５】
【数２４】
2005025635.tif 000018
が得られる。以上の計算結果をまとめて図５の表に示す。
「生年」属性と「年齢」属性がほぼ同じであることを考えれば、この事例集合は本質的には「生年」あるいは「年齢」属性と「年収」属性の２属性であるといえる。このことを考えれば、事例Ａ・Ｂ間の「年収」属性の（標準偏差で割った後の）差が事例Ａ・Ｃ間の（標準偏差で割った後の）差よりも大きいため、本質的には事例Ａ・Ｂ間の距離が、事例Ａ・Ｃ間の距離よりも大きいといえる。従来手法（閾値＝０．９９）および新手法において事例Ａ・Ｂ間距離がＡ・Ｃ間距離よりも大きいのはこのことを反映している。
【００３６】
一方、従来手法は、閾値を０．９９から０．９９９にすることで、Ａ・Ｃ間距離の計算結果が大きく変化している。このことは、ユーザーが適切に閾値を指定しない場合、本質的な距離計算が行えない場合があることを示している。
図６は修正度計算部の実施例２の詳細を示し、図７は属性展開部１１の実施例のフローチャートを示す。
【００３７】
ステップＳ３１において、カテゴリ値属性について確認し、カテゴリ値属性についてはステップＳ３２で数値属性にダミー変数展開する。事例集合Ｇの第ｊ属性が、カテゴリ値属性で、含まれる値の種類がｌ（ｊ）個とし、頻度が大きい順に並べたカテゴリ値がｃ（ｊ，１），ｃ（ｊ，２），．．．，ｃ（ｊ，ｌ（ｊ））、その頻度がｆ（ｊ，１），ｆ（ｊ，２），．．．，ｆ（ｊ，ｌ（ｊ））であるとき、元の第ｊ属性をｌ（ｊ）−１個の属性Ｒ（ｊ，ｇ）に置き換える。
【００３８】
展開数がｌ（ｊ）個ではなくｌ（ｊ）−１個であるのは、後の主成分分析でランク落ちを防ぐためである。新属性Ｒ（ｊ，ｇ）の第ｉ事例の値ｒ（ｉ，ｊ，ｇ）は式（７）で表される。
【００３９】
【数１０】
2005025635.tif 000019
ステップＳ３３において、全属性について処理完了を確認して展開済事例集合Ｈを出力する。
修正度実計算部１４は、展開済事例集合Ｈから属性の重複成分を計算し、各属性の修正度を計算する。計算の結果得られる属性Ｒ（ｊ，ｇ）の修正度をｍ（ｊ，ｇ）とする。
【００４０】
このとき距離計算部は、修正度計算部１４により計算された修正度ｍ（ｊ）及びｍ（ｊ，ｇ）を用い、式（１）、（９）、および（５）により事例Ａ・Ｂ間距離を計算する。但し、ｍ（ｇ，ｌ（ｊ））  は計算されていないので、次の式（８）、あるいは式（９）の展開済属性の修正度の頻度重みつき平均で代用する。
【００４１】
【数１１】
2005025635.tif 000020
図８は修正度計算部の実施例３の詳細を示し、図９は修正度復元部１５のフローチャートを示す。図８において、修正度ｍ（ｊ）及びｍ（ｊ，ｇ）を計算するまでは図６の修正度計算部の実施例２と同様である。
【００４２】
修正度復元部１５は、展開済事例集合Ｈの各属性の修正度ｍ（ｊ）及びｍ（ｊ，ｇ）から、事例集合Ｇの各属性の修正度を計算し、図９に示すステップＳ４１においてカテゴリ値属性を検出し、カテゴリ値属性については、元の属性の修正度を計算する。第ｊ属性（カテゴリ）の修正度ｍ（ｊ）は、式（１０）の展開済属性の修正度の頻度重みつき平均で計算する。
【００４３】
【数１２】
2005025635.tif 000021
図１０は本発明の実施例２として、予測装置の原理説明図を示す。ここで例示する類似事例に基づく予測方法は、前記特許文献１に記載された計算装置および方法に、本発明の前記修正度を加えたものである。
【００４４】
既知事例集合および未知事例の各事例は、複数の条件属性と予測の目的属性である予測属性とから構成されており、各事例の条件属性はｍ個とする。便宜上、第１属性から第ｍ属性までを条件属性とし、第ｍ＋１属性を予測属性とする。
図１０において、条件事例集合生成部５は、既知事例集合から条件属性のみを取り出し、ｍ個の属性を有する条件既知事例集合を生成する。
【００４５】
修正度計算部４は、本発明の実施例１に示す方法で条件既知事例集合の修正度を計算する。
類似度計算部６は、修正度を用いて既知事例集合の各事例と未知事例間の類似度を計算する。例えば既知事例集合の既知事例Ａと未知事例Ｂの間の類似度は以下の方法で計算する。
１．式（１）を用い、既知事例Ａと未知事例Ｂの属性ごとの単一属性間距離ｄ（ｊ）を計算する。
２．既知事例集合における予測属性値の数をＮｃとした時に、予測属性がカテゴリ値属性の場合、特許文献１の式（１４）、および式（１５）と同様にして未知事例のｊ番目の条件属性の値νｊにおける影響度ｗを式（１１）により計算する。
【００４６】
【数１３】
2005025635.tif 000022
予測属性が数値属性の場合、予測属性を適当に区分し、その各区分ごとにカテゴリ値をあてはめた後、同様に影響度ｗを計算する。
３．各属性の単一属性間距離ｄ（ｊ）と修正度ｍ（ｊ）と影響度ｗとを用い、既知事例と未知事例の間の事例間距離Ｄを計算する。修正度計算部が実施例１、および実施例３の場合は式（１２）により計算する。
【００４７】
【数１４】
2005025635.tif 000023
修正度計算部が、実施例２の場合、カテゴリ値属性の修正度ｍ（ｊ）は式（９）により計算し、その後式（１２）を用いて計算する。
４．事例間距離Ｄを用い、事例間の類似度Ｓを式（１３）により計算する。ここで、Δは類似度が無限大になることを防ぐ微小値である。
【００４８】
【数１５】
2005025635.tif 000024
類似事例集合抽出部７は、既知事例集合から未知事例との類似度が高い事例の集合（類似事例集合）を抽出し、類似事例集合と、その各類似事例の類似度をと出力する。抽出方法は、例えば、類似度が高い順に上位κ個の事例を抽出する。例えばκはユーザーが指定する。
【００４９】
予測結果計算部８は類似事例集合とその類似度から予測結果を計算する。予測属性がカテゴリ値属性の場合、式（１４）により予測カテゴリ値ｃの確信度ｐ（ｃ）（未知事例の予測属性の値がカテゴリ値ｃである確率）が計算できる。
【００５０】
【数１６】
2005025635.tif 000025
また、予測属性が数値予測の場合、式（１５）により予測値ｖ（未知事例の予測属性の値を予測した結果）が計算できる。
【００５１】
【数１７】
2005025635.tif 000026
【００５２】
【発明の効果】
以上説明したごとく、本発明により、ユーザーが閾値を指定することなく、条件属性における重複成分の除去が可能となり、本質的な距離の計算が可能となる。また、重複成分が除去された距離を用いることで、本質的な類似度を用いた予測が可能となる。
【図面の簡単な説明】
【図１】本発明の実施例１による修正度計算部フローチャート
【図２】距離計算部のフローチャート
【図３】事例集合Ｇの例
【図４】事例の例
【図５】計算結果
【図６】修正度計算部の実施例２詳細
【図７】属性展開部の実施例のフローチャート
【図８】修正度計算部の実施例３の詳細
【図９】修正度復元部のフローチャート
【図１０】本発明の実施例２の原理説明図
【図１１】本発明の実施例２のフローチャート
【図１２】類似度計算部のフローチャート
【図１３】従来の距離計算装置例
【図１４】従来装置の距離計算フローチャート例
【符号の説明】
１  距離計算部
４  修正度計算部
５  条件事例集合生成部
６  類似度計算部
７  類似事例集合抽出部
８  予測結果計算部
１１  属性展開部
１４  修正度実計算部
１５  修正度復元部
【図１】
2005025635.tif 000027
【図２】
2005025635.tif 000028
【図３】
2005025635.tif 000029
【図４】
2005025635.tif 000030
【図５】
2005025635.tif 000031
【図６】
2005025635.tif 000032
【図７】
2005025635.tif 000033
【図８】
2005025635.tif 000034
【図９】
2005025635.tif 000035
【図１０】
2005025635.tif 000036
【図１１】
2005025635.tif 000037
【図１２】
2005025635.tif 000038
【図１３】
2005025635.tif 000039
【図１４】
2005025635.tif 000040