(57)【要約】【課題】データが複数クラスのうちの一つに属し、2次元以上であって、クラスラベルがない場合に、異なるクラスが分離し、かつ学習に利用していないデータ点も適切に扱う事が可能な圧縮装置を提供する。【解決手段】射影計算手段310は、入力装置100から学習用の複数のデータを入力し、クラスラベルを利用せずに、データの近傍に関する分散と全体に関する分散とを同時に最適化することで、データを低次元に圧縮する射影を計算し、射影記憶装置320に保存する。データ圧縮手段330は、計算された射影を用いて、入力装置200から入力されたデータを圧縮し、圧縮データ記憶装置340に保存する。出力装置350は、圧縮データ記憶装置340に保存された圧縮データを出力する。【選択図】図1
2008192031.tif 000002
【特許請求の範囲】
【請求項１】
入力装置から学習用の複数のデータを入力し、クラスラベルを利用せずに、データの近傍に関する分散と全体に関する分散とを同時に最適化することで、前記データを低次元に圧縮する射影を計算する射影計算手段と、計算された射影を記憶する射影記憶装置と、計算された射影を用いてデータを圧縮するデータ圧縮手段と、圧縮されたデータを記憶する圧縮データ記憶装置とを備えることを特徴とする圧縮装置。
【請求項２】
前記射影計算手段が計算する射影が線形射影であることを特徴とする請求項１記載の圧縮装置。
【請求項３】
前記射影計算手段は、入力装置から学習用の複数のデータを入力し、クラスラベルを利用せずに、データの近傍性を利用してクラス内分散行列を近似計算するクラス内分散計算部と、前記学習用の複数のデータを入力し、中心とデータの近傍性を利用してクラス間分散行列を近似計算するクラス間分散計算部と、前記クラス内分散行列の最小化および前記クラス間分散行列の最大化を同時に実行することで、前記データを低次元に圧縮する線形射影を計算する線形射影計算部とを有することを特徴とする請求項２記載の圧縮装置。
【請求項４】
前記クラス内分散計算部は、データをxi(i=1,…,n)、xiとxjの距離が近い場合には1に近い値をとり、近くない場合には0に近い値をとる関数をAijとするとき、クラス内分散行列Snを、
Sn＝(1/n)Σni1,i2=1 Ai1,i2(xi1-xi2)(xi1-xi2)T
により計算するものであり、
前記クラス間分散計算部は、全体の中心をμ、xiとμの距離が近い場合には1に近い値をとり、近くない場合には0に近い値をとる関数をbiとするとき、クラス間分散行列Smを、
Sm＝Σni=1 bi(xi-μ)(xi-μ)T
により計算するものであることを特徴とする請求項３記載の圧縮装置。
【請求項５】
前記射影計算手段が計算する射影がカーネル関数を用いた非線形射影であることを特徴とする請求項１記載の圧縮装置。
【請求項６】
前記射影計算手段は、入力装置から学習用の複数のデータを入力し、KLmK(Kは予め設定されたカーネル関数、Lmはデータ間の近傍性を利用して計算される行列)を計算するKLmK計算部と、前記学習用の複数のデータを入力し、KLK(Lはデータと中心との近傍性を利用して計算される行列)を計算するKLK計算部と、前記計算されたKLmKおよびKLKを入力して、データを低次元に圧縮する非線形射影を計算する非線形射影計算手段とを有することを特徴とする請求項５記載の圧縮装置。
【請求項７】
コンピュータを用いてデータを圧縮する方法であって、
前記コンピュータが、入力装置から学習用の複数のデータを入力し、クラスラベルを利用せずに、データの近傍に関する分散と全体に関する分散とを同時に最適化することで、前記データを低次元に圧縮する射影を計算し、該計算した射影を記憶装置に記憶する射影計算ステップと、
前記コンピュータが、記憶装置から射影を読み出し、該読み出した射影を用いてデータを圧縮し、圧縮したデータを記憶装置に記憶するデータ圧縮ステップと、
前記コンピュータが、前記記憶装置から圧縮されたデータを読み出して出力する出力ステップとを含むことを特徴とする圧縮方法。
【請求項８】
請求項１乃至６の何れか１項に記載される圧縮装置によって圧縮されたデータを復元するための逆射影を計算する逆射影計算手段と、計算された逆射影を記憶する逆射影記憶装置と、計算された逆射影を用いてデータを復元する圧縮データ復元手段と、復元されたデータを記憶する復元データ記憶装置とを備えることを特徴とする圧縮データ復元装置。
【請求項９】
コンピュータを用いてデータを復元する方法であって、
前記コンピュータが、請求項１乃至６の何れか１項に記載される圧縮装置によって圧縮されたデータを復元するための逆射影を計算し、該計算した逆射影を記憶装置に記憶する逆射影計算ステップと、
前記コンピュータが、記憶装置から逆射影を読み出し、該読み出した逆射影を用いてデータを復元し、該復元したデータを記憶装置に記憶する圧縮データ復元ステップとを含むことを特徴とする圧縮データ復元方法。
【請求項１０】
請求項１乃至６の何れか１項に記載される圧縮装置と、該圧縮装置により3次元以下に圧縮されたデータを表示する表示装置とを備えた可視化装置。
【請求項１１】
請求項１乃至６の何れか１項に記載される圧縮装置によりデータを3次元以下に圧縮して表示装置に表示する可視化方法。
【請求項１２】
コンピュータに、
入力装置から学習用の複数のデータを入力し、クラスラベルを利用せずに、データの近傍に関する分散と全体に関する分散とを同時に最適化することで、前記データを低次元に圧縮する射影を計算し、該計算した射影を記憶装置に記憶する射影計算ステップと、
記憶装置から射影を読み出し、該読み出した射影を用いてデータを圧縮し、圧縮したデータを記憶装置に記憶するデータ圧縮ステップと、
前記記憶装置から圧縮されたデータを読み出して出力する出力ステップとを行なわせるためのプログラム。
【請求項１３】
コンピュータに、
請求項１乃至６の何れか１項に記載される圧縮装置によって圧縮されたデータを復元するための逆射影を計算し、該計算した逆射影を記憶装置に記憶する逆射影計算ステップと、
記憶装置から逆射影を読み出し、該読み出した逆射影を用いてデータを復元し、該復元したデータを記憶装置に記憶する圧縮データ復元ステップとを行なわせるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、圧縮方法、圧縮装置、圧縮データ復元方法、圧縮データ復元装置、可視化方法および可視化装置に関し、特に、クラスラベルのないデータに対する圧縮方法、圧縮装置、圧縮データ復元方法、圧縮データ復元装置、可視化方法および可視化装置に関する。
【背景技術】
【０００２】
一般的にデータ解析を行う際に、解析対象のデータが高次元の場合には、サンプルコンプレキシティの問題や計算コストの増大など、次元の呪いと呼ばれる現象が生じる。また、4次元以上のデータは可視化をする事ができず、データの分布を人間が目で確認することができないという問題がある。そこで、データの次元を低次元に圧縮するための圧縮技術が重要となる。
【０００３】
圧縮は、元のデータの何らかの性質を最もよく保存する変換を施すこと、つまり低次元空間へ射影することで実現する事が可能である。圧縮技術には、クラスラベルを利用した技術と利用しない技術が、従来幾つか提案されている。
【０００４】
まず、クラスラベルを利用した従来技術に関して述べる。
【０００５】
クラスラベルの情報を利用して圧縮を実現する手段として、フィッシャーの判別分析あるいは正準判別分（非特許文献1のChapter3.8.2およびChapter3.8.3）がある。この技術では、クラス内の分散を最小化し、クラス間の分散を最大化する一般化固有値問題から計算される線形射影によって次元を圧縮する。
【０００６】
次に、クラス内に多峰性が存在する場合にもクラス同士が分離される低次元への圧縮を実現する手段として、局所フィッシャー判別分析がある（非特許文献2）。この技術では、フィッシャーの判別分析において、クラス内分散およびクラス間分散を計算する際に、データの近傍性を考慮する効果を導入している。
【０００７】
次に、クラスラベルを利用しない従来技術に関して述べる。
【０００８】
まず、データの分散が最大となる圧縮を実現する手段として、主成分分析（非特許文献1のChapter3.8.1）がある。この技術は、データの共分散行列に関する固有値問題から計算される線形射影によって次元を圧縮する。
【０００９】
次に、局所性を保存するようにデータを低次元空間に埋め込む技術がある。局所性の定義方法によって幾つか異なる方法が提案されている。代表的な従来技術としては、Isomap（非特許文献3）、Local Linear Embedding（非特許文献4）、Laplacian Eigenmap（非特許文献5）などがある。
【００１０】
次に、局所性を保存するようにデータを低次元空間へ射影する技術として、局所性保存射影（非特許文献6）がある。これは、元の空間において距離の近かったデータが、射影された低次元空間においても近くなるような射影によって次元を圧縮する。
【００１１】
【非特許文献１】R. O. Duda, P. E. Hart and D. G. Stork. Pattern classification, second edition. Willey-Interscience Publication, 2000.
【非特許文献２】M. Sugiyama. Local fisher discriminant analysis for supervised dimensionality reduction. In Proceedings of the 23th International Conference on Machine Learning, pages 905-912, 2006.
【非特許文献３】J. B. Tenenbaum, V. de Silva and J. C. Langford. A global geometric framework for nonlinear dimensionality reduction. Science, vol. 290, No. 5500, pp. 2319-2323, 2000.
【非特許文献４】S. T. Roweis and L. K. Saul. Nonlinear dimensionality reduction by locally linear embedding. Science, vol. 290, No. 5500, pp. 2323-2326, 2000.
【非特許文献５】M. Belkin and P. Niyogi. Laplacian eigenmap for dimensionality reduction and data representation. Neural Computation, vol. 15:1373-1396, 2003.
【非特許文献６】X. He and P. Niyogi. Locality preserving projections. In Advances in neural information processing systems 16, 2004.
【非特許文献７】L. Zelnik-Manor and P. Perona. Self-tuning spectral clustering. In Advances in neural information processing systems 17, pp. 1601-1608, 2005.
【発明の開示】
【発明が解決しようとする課題】
【００１２】
第1の問題点は、フィッシャーの判別分析（非特許文献1のChapter3.8.2）や局所フィッシャー判別分析（非特許文献2）で提案する次元圧縮技術は、データにクラスラベルがない場合には適用する事ができない事である。その理由は、これらの技術はクラス内分散およびクラス間分散を計算する場合に、クラスラベルの情報を利用するためである。
【００１３】
第2の問題点は、Isomap（非特許文献3）、Local Linear Embedding（非特許文献4）、Laplacian Eigenmap（非特許文献5）など、埋め込みによる圧縮技術は、学習に使っていないデータ点を適切に低次元に圧縮できない事である。その理由は、これらの技術は学習に利用したデータの低次元の座標を計算するものであって、元の空間から低次元空間への射影は計算されないためである。
【００１４】
第3の問題点は、Isomap（非特許文献3）、Local Linear Embedding（非特許文献4）、Laplacian Eigenmap（非特許文献5）など、埋め込みによる圧縮技術は、圧縮後の低次元データから元のデータを復元する事ができない事である。その理由は、これらの技術は学習に利用したデータの低次元の座標を計算するものであって、元の空間から低次元空間への射影は計算されないため、逆射影を計算する事ができないためである。
【００１５】
第4の問題点は、非特許文献3から非特許文献7で提案する次元圧縮技術は、圧縮された空間において異なるクラスを分離するのに適しているとは言えない点である。その理由は、これらの技術はクラスが分離するという基準ではなく、それぞれ別の基準を最適とするように次元圧縮を行なうためである。例えば、非特許文献7で提案する局所性保存射影は、元の空間において距離の近かったデータが、射影された低次元空間においても近くなるような射影を構成するため、異なるクラスに属するデータの分布間に重なりがある場合、クラス分類にとっては適切ではない圧縮結果となる事が知られている。
【００１６】
『発明の目的』
本発明の第1の目的は、データが複数クラスのうちの一つに属し、2次元以上であって、クラスラベルがない場合に、異なるクラスが分離し、かつ学習に利用していないデータ点も適切に扱う事が可能な、圧縮方法および圧縮装置を提供することである。
【００１７】
本発明の第2の目的は、データが複数クラスのうちの一つに属し、2次元以上であって、クラスラベルがない場合に、異なるクラスが分離し、かつ学習に利用していないデータ点も適切に扱う事が可能な、可視化方法および可視化装置を提供することである。
【００１８】
本発明の第3の目的は、本発明の圧縮方法および圧縮装置によって圧縮されたデータから、元のデータを復元する圧縮データ復元方法および圧縮データ復元装置を提供することである。
【課題を解決するための手段】
【００１９】
本発明の第１の圧縮装置は、入力装置から学習用の複数のデータを入力し、クラスラベルを利用せずに、データの近傍に関する分散と全体に関する分散とを同時に最適化することで、前記データを低次元に圧縮する射影を計算する射影計算手段と、計算された射影を記憶する射影記憶装置と、計算された射影を用いてデータを圧縮するデータ圧縮手段と、圧縮されたデータを記憶する圧縮データ記憶装置とを備えることを特徴とする。
【００２０】
本発明の第２の圧縮装置は、第１の圧縮装置において、前記射影計算手段が計算する射影が線形射影であることを特徴とする。
【００２１】
本発明の第３の圧縮装置は、第２の圧縮装置において、前記射影計算手段は、入力装置から学習用の複数のデータを入力し、クラスラベルを利用せずに、データの近傍性を利用してクラス内分散行列を近似計算するクラス内分散計算部と、前記学習用の複数のデータを入力し、中心とデータの近傍性を利用してクラス間分散行列を近似計算するクラス間分散計算部と、前記クラス内分散行列の最小化および前記クラス間分散行列の最大化を同時に実行することで、前記データを低次元に圧縮する線形射影を計算する線形射影計算部とを有することを特徴とする。
【００２２】
本発明の第４の圧縮装置は、第３の圧縮装置において、前記クラス内分散計算部は、データをxi(i=1,…,n)、xiとxjの距離が近い場合には1に近い値をとり、近くない場合には0に近い値をとる関数をAijとするとき、クラス内分散行列Snを、Sn＝(1/n)Σni1,i2=1 Ai1,i2(xi1-xi2)(xi1-xi2)Tにより計算するものであり、前記クラス間分散計算部は、全体の中心をμ、xiとμの距離が近い場合には1に近い値をとり、近くない場合には0に近い値をとる関数をbiとするとき、クラス間分散行列Smを、Sm＝Σni=1 bi(xi-μ)(xi-μ)Tにより計算するものであることを特徴とする。
【００２３】
本発明の第５の圧縮装置は、第１の圧縮装置において、前記射影計算手段が計算する射影がカーネル関数を用いた非線形射影であることを特徴とする。
【００２４】
本発明の第６の圧縮装置は、第５の圧縮装置において、前記射影計算手段は、入力装置から学習用の複数のデータを入力し、KLmK(Kは予め設定されたカーネル関数、Lmはデータ間の近傍性を利用して計算される行列)を計算するKLmK計算部と、前記学習用の複数のデータを入力し、KLK(Lはデータと中心との近傍性を利用して計算される行列)を計算するKLK計算部と、前記計算されたKLmKおよびKLKを入力して、データを低次元に圧縮する非線形射影を計算する非線形射影計算手段とを有することを特徴とする。
【００２５】
また本発明の圧縮方法は、コンピュータを用いてデータを圧縮する方法であって、前記コンピュータが、入力装置から学習用の複数のデータを入力し、クラスラベルを利用せずに、データの近傍に関する分散と全体に関する分散とを同時に最適化することで、前記データを低次元に圧縮する射影を計算し、該計算した射影を記憶装置に記憶する射影計算ステップと、前記コンピュータが、記憶装置から射影を読み出し、該読み出した射影を用いてデータを圧縮し、圧縮したデータを記憶装置に記憶するデータ圧縮ステップと、前記コンピュータが、前記記憶装置から圧縮されたデータを読み出して出力する出力ステップとを含むことを特徴とする。
【００２６】
また本発明の圧縮データ復元装置は、第１乃至第６の何れかの圧縮装置によって圧縮されたデータを復元するための逆射影を計算する逆射影計算手段と、計算された逆射影を記憶する逆射影記憶装置と、計算された逆射影を用いてデータを復元する圧縮データ復元手段と、復元されたデータを記憶する復元データ記憶装置とを備えることを特徴とする。
【００２７】
また本発明の圧縮データ復元方法は、コンピュータを用いてデータを復元する方法であって、前記コンピュータが、第１乃至第６の何れかの圧縮装置によって圧縮されたデータを復元するための逆射影を計算し、該計算した逆射影を記憶装置に記憶する逆射影計算ステップと、前記コンピュータが、記憶装置から逆射影を読み出し、該読み出した逆射影を用いてデータを復元し、該復元したデータを記憶装置に記憶する圧縮データ復元ステップとを含むことを特徴とする。
【００２８】
また本発明の可視化装置は、第１乃至第６の何れかの圧縮装置と、該圧縮装置により3次元以下に圧縮されたデータを表示する表示装置とを備えたことを特徴とする。
【００２９】
また本発明の可視化方法は、第１乃至第６の何れかの圧縮装置によりデータを3次元以下に圧縮して表示装置に表示することを特徴とする。
【００３０】
『作用』
クラスラベルを利用しない場合、クラス内分散およびクラス間分散を正確に計算することはできない。しかし、同じクラスに属するデータは幾何学的に近い位置に分布することが経験的に知られているので、データの近傍性を利用してクラス内分散を近似計算することができる。また、クラス間分散は全体の分散に置き換えることによって計算することができる。その際、クラス間を全体的に分離するよりも、クラス間の近いデータを積極的に分離すると、より効果的である。クラス内分散およびクラス間分散が近似的に求まると、クラス内分散を最小化し、クラス間分散を最大化する射影を計算することで、線形射影が求まる。
【００３１】
他方、カーネルを使うことによる非線形化は、当該分野では良く行なわれることであり、たとえばフィッシャー判別や局所フィッシャー判別についてはカーネルを使うことによって非線形に拡張できることが示されている。しかし、近傍成分分析(NCA)についてはカーネルによる非線形化の方式は未だ知られていない。このようにカーネルによる非線形化が可能であるかどうかは問題によって異なる。本発明の発明者は、本明細書において、本発明の方式がカーネルを使って非線形に拡張できることを証明している。
【発明の効果】
【００３２】
本発明の圧縮装置および圧縮方法によれば、データが複数クラスのうちの一つに属し、2次元以上であって、クラスラベルがない場合に、異なるクラスが分離し、かつ学習に利用していないデータ点も適切に扱う事が可能な次元圧縮を達成する事が可能である。
【００３３】
その理由は、データの近傍に関する分散と、全体に関する分散を同時に最適化することで、クラスを分離するのに適した低次元への射影を計算するためである。
【００３４】
本発明の可視化装置および可視化方法によれば、データが複数クラスのうちの一つに属し、2次元以上であって、クラスラベルがない場合に、異なるクラスが分離し、かつ学習に利用していないデータ点も適切に扱う事が可能な可視化を達成する事が可能である。
【００３５】
その理由は、本発明の圧縮装置によってデータを3次元以下に圧縮することによって、異なるクラスが分離するような可視化が可能となるためである。
【００３６】
本発明の圧縮データ復元装置および圧縮データ復元方法によれば、本発明の圧縮装置によって圧縮されたデータを、効率的に復元する事が可能である。
【００３７】
その理由は、本発明の圧縮装置によって計算された射影に対応する逆射影を計算し、この逆射影を用いて圧縮データを復元するためである。
【発明を実施するための最良の形態】
【００３８】
次に、本発明の実施の形態について、図面を参照して詳細に説明する。
【００３９】
［第1の実施の形態］
図1を参照すると、本発明の第1の実施の形態に関わる圧縮装置300は、射影計算手段310と射影記憶装置320とデータ圧縮手段330と圧縮データ記憶装置340と出力装置350とから構成される。
【００４０】
射影計算手段310は、入力装置100から読み込んだデータを学習データとし、データを異なるクラスがよく分離される低次元へ圧縮するための射影を計算する手段である。
【００４１】
射影記憶装置320は、射影計算手段310で計算された射影を記憶する装置である。
【００４２】
データ圧縮手段330は、入力装置200から被圧縮対象のデータを読み込み、該データを射影記憶装置320から読み込んだ射影によって圧縮する手段である。
【００４３】
圧縮データ記憶装置340は、データ圧縮手段330によって圧縮されたデータを記憶する装置である。
【００４４】
出力装置350は、射影記憶装置320および圧縮データ記憶装置340に格納されたデータを読み込み、出力する装置である。
【００４５】
圧縮装置300をコンピュータを用いて実現する場合、射影記憶装置320および圧縮データ記憶装置340は主記憶装置や補助記憶装置で構成され、射影計算手段310、データ圧縮手段330および出力装置350は、コンピュータ上で実行される射影計算プログラム、データ圧縮プログラムおよび出力プログラムで構成される。また、入力装置100および入力装置200はキーボードやファイルなどで構成することができ、一つの入力装置を入力装置100および入力装置200として使い分けることも可能である。
【００４６】
図2は、図1の圧縮装置300の概略動作を表すフロー図であり、図1の圧縮装置300は、以下のように動作する。
【００４７】
まず、入力装置100から学習用のデータを読み込む（ステップS301）。
【００４８】
次に、射影計算手段310によって、データを異なるクラスがよく分離される低次元に圧縮するための射影を計算する（ステップS302）。
【００４９】
次に、ステップS302で計算された射影を、射影記憶装置320に記憶する（ステップS303）。
【００５０】
次に、圧縮をするデータを入力装置200から入力する（ステップS304）。
【００５１】
次に、射影記憶装置320から圧縮のための射影を読み込み、データ圧縮手段330によって、ステップS304で入力されたデータを圧縮する（ステップS305）。
【００５２】
次に、ステップS305で圧縮されたデータを圧縮データ記憶装置340に記憶する（ステップS306）。
【００５３】
次に、射影記憶装置320に記憶された射影や圧縮データ記憶装置340に記憶された圧縮データを読み込み、出力装置350によって出力する（ステップS307）。
【００５４】
ステップS307の後で、S304に戻りステップS304からステップS307を繰り返すことも可能であるし、ステップS307の後で、S301に戻りステップS301からステップS307を繰り返すことも可能である。
【００５５】
次に、射影計算手段310およびデータ圧縮手段330の詳細を、線形射影と非線形射影のそれぞれの場合について説明する。
【００５６】
(1)射影計算手段310
(1-1)線形射影
以下では、データをxi（i=1,…,n）、射影計算手段310によって計算される射影をT、xiに対応する圧縮後のデータをziとする。Tが線形射影の場合には、xiとziの関係は、数1で表される。
【００５７】
［数1］
zi＝TTxi
【００５８】
また、以下ではXは数2であらわされるように、xiを並べた行列とする。
【００５９】
［数2］
X＝［x1 … xn］
【００６０】
まず、本発明の理解を助けるためにフィッシャーの判別分析を概説し、圧縮のための線形射影の計算方法に関して述べる。フィッシャーの判別分析ではデータのラベル情報を利用する。ここでは、yi∈{1,…,l}がxiのラベルとする。l(小文字のエル)はクラスの数である。
【００６１】
フィッシャーの判別分析では、クラス内分散は数3で、クラス間分散は数4で定義される。
【００６２】
［数3］
Sw＝Σlj=1ΣH(xi-μj)(xi-μj)T
ただし、Hはi∈{yi=j}を意味する。
【００６３】
［数4］
Sb＝Σlj=1nj(μj-μ)(μj-μ)T
【００６４】
ただし、μjはクラスjの中心、μは全体の中心、njはクラスjに属するデータの個数である。
【００６５】
この時、クラス間分散Sbを最大化し、クラス内分散Swを最小化する射影をTFDAとすると、TFDAは数5の最大化問題の解として得られる。
【００６６】
［数5］
TFDA＝arg maxT(TTSbT(TTSwT)-1)
【００６７】
次に、データ全体の共分散行列をSとした場合には、数6の関係が成り立つ事が知られている。
【００６８】
［数6］
S＝Sb+Sw
【００６９】
数6を数5に代入すると、TTSbT(TTSwT)-1＝TTST(TTSwT)-1＋定数になるため、TFDAは数7の最大化問題からも計算可能である事が言える。
【００７０】
［数7］
TFDA＝arg maxT(TTST(TTSwT)-1)
【００７１】
フィッシャーの判別分析ではクラスラベルの情報を利用可能であるが、本発明ではクラスラベルがない場合に、クラスをよく分離する低次元への圧縮を実現したい。クラスラベルがない場合には、クラス内分散およびクラス間分散を正確に計算することはできない。そこで本発明においては、クラス内分散およびクラス間分散を以下のように近似して計算する。
【００７２】
(a)クラス内分散
今、同じクラスに属するデータは幾何学的に近い位置に分布するという仮定の下に、数8で表される行列を考える。
【００７３】
［数8］
Sn＝(1/n)Σni1,i2=1 Ai1,i2(xi1-xi2)(xi1-xi2)T
【００７４】
ただし、Aijは、xiとxjの近さを表す関数で、xiとxjが近い場合には1に近く、近くない場合には0に近づく。Aijは例えば数9や数10のように計算する事ができるし、非特許文献7の提案する局所スケーリング法などを利用することもできる。以後、Aはij成分をAijとする行列とする。
【００７５】
［数9］
if‖xi1-xi2‖＜ε
Ai1,i2＝1
else
Ai1,i2＝0
【００７６】
［数10］
Ai1,i2＝exp(-‖xi1-xi2‖/σ2)
【００７７】
ただし、数9中のε、数10のσ2は、データの近傍性を制御するパラメータであり、両者とも正の実数である。
【００７８】
数8は、xi1の近傍に関する共分散を足し合わせたものであると解釈でき、同じクラスに属するデータは幾何学的に近い位置に分布するという仮定の下では、クラス内分散を近似していると解釈する事ができる。
【００７９】
(b)クラス間分散
次に、クラス間分散を考える。数7よりクラス間分散は全体の分散に置き換える事ができる事を確認した。ところで、異なるクラスを分離するには、クラス間を全体的に分離するよりも、クラス間の近いデータを積極的に分離する事が効果的である。そこで、本発明では、クラス間の分離の基準として、数11の行列を利用する。この数11が示す行列がクラス間分散の近似式になる。
【００８０】
［数11］
Sm＝Σni=1 bi(xi-μ)(xi-μ)T
【００８１】
ただし、biはxiとμ(全体の中心)の近さを表し、Aijと同様の方法で計算される。すなわち、biは、xiとμが近い場合には1に近く、近くない場合には0に近づく。また、biを常に1とすれば、Smは共分散行列に一致する。
【００８２】
さて、上述のようにしてクラス内分散Snとクラス間分散Smとが求まると、Snを最小化し、Smを最大化するような射影TLPDPを計算すれば良い。TLPDPは、例えば、数12から計算する事が可能である。また過学習を防ぐために、数13のようにSnおよびSmに適当な行列M1,M2を加えてもよい。
【００８３】
［数12］
TLPDP＝arg maxT(TTSmT(TTSnT)-1)
【００８４】
［数13］
TLPDP＝arg maxT(TT(Sm+M1)T(TT(Sn+M2)T)-1)
【００８５】
圧縮後の次元をpとすると、数12から計算される線形射影TLPDPは、数14の一般化固有値問題の上位p個の固有ベクトルを並べた行列として計算する事が可能である。
【００８６】
［数14］
Smψ＝γSnψ
【００８７】
以上より、線形射影を計算する射影計算手段310は、図3に示すように構成することができる。図3を参照すると、射影計算手段310は、クラス内分散計算部3101、クラス内分散記憶部3102、クラス間分散計算部3103、クラス間分散記憶部3104および線形射影計算部3105を有する。
【００８８】
クラス内分散計算部3101は、入力装置100から学習用の複数のデータを入力し、数8を計算することにより、クラスラベルを利用せずに、データの近傍性を利用してクラス内分散Snを計算する。クラス内分散記憶部3102は、この計算されたクラス内分散Snを一時的に記憶する。
【００８９】
クラス間分散計算部3103は、前記学習用の複数のデータを入力し、数11を計算することにより、中心とデータの近傍性を利用してクラス間分散Smを計算する。クラス間分散記憶部3104は、この計算されたクラス間分散Smを一時的に記憶する。
【００９０】
線形射影計算部3105は、クラス内分散記憶部3102およびクラス間分散記憶部3104からクラス内分散Snおよびクラス間分散Smを読み出し、数12や数13を用いて、クラス内分散Snの最小化およびクラス間分散Smの最大化を同時に実行することで、データを低次元に圧縮する線形射影TLPDPを計算する。
【００９１】
(1-2)非線形射影
次に、圧縮のための非線形射影を計算する方法に関して述べる。
【００９２】
まず、数8で定義したSnは、数15のように変形する事が可能である(非特許文献6)。
【００９３】
［数15］
Sn＝XLXT
【００９４】
ただし、Lは数16で定義され、数16の右辺のDは数17で定義される対角行列である。
【００９５】
［数16］
L＝D-A
【００９６】
［数17］
Di1,i1＝Σni2=1 Ai1,i2
【００９７】
Snと同様にして、数11で定義したSmは、数18のように変形する事が可能である。
【００９８】
［数18］
Sm＝XLmXT
【００９９】
ただし、Lmは数19で定義され、数19の右辺のM、Eは数20、数21でそれぞれ定義される。
［数19］
Lm＝Mm＋{(Σnibi)/n2}E
【０１００】
［数20］
if  i1＝i2
Mmi1,i2＝{1-(2/n)}bi1
else
Mmi1,i2＝-(1/n)(bi1＋bi2)
【０１０１】
［数21］
Ei1,i2＝1
【０１０２】
なお、数18の変形の過程は次の通りである。
Sm＝Σni=1 bi{xi-(1/n)Σnpxp}{xi-(1/n)Σnqxq}T
＝Σni=1 bi{xixiT-(1/n2)Σnp,qxpxqT-(2/n)xiΣnpxp}T
＝Σni=1 bixixiT＋Σnp,q［{(Σni=1bi)/n2}-(bp/n)-(bq/n)］xpxqT
＝X［(Mm＋{(Σnibi)/n2}E］XT
＝XLmXT
【０１０３】
したがって、数14の一般化固有値問題は、数22の一般化固有値問題に書き直す事ができる。
【０１０４】
［数22］
XLmXTψ＝γXLXTψ
【０１０５】
今、あるベクトルαに関して数23が成立することに注意して、数22の両辺に右からXTをかけると、数24に変形できる。
【０１０６】
［数23］
ψ＝Xα
【０１０７】
［数24］
XTXLmXTXα＝γXTXLXTXα
【０１０８】
ここで、XTXはデータの内積を要素とする行列であるから、ij成分がk(xi,xj)なるグラム行列Kによって、数25のように非線形化する事が可能である。このように、線形のグラム行列をカーネル関数によるグラム行列に置き換える事で非線形化を実現する操作はカーネルトリックと呼ばれている。ただし、Kはカーネル関数で、例えばガウスカーネルや多項カーネルのようなカーネル関数がある。また、テキストデータやシンボルデータ、遺伝子データなどに関する公知のカーネル関数も存在し、また使用者がカーネル関数を設計することによって、実数ベクトルデータに限定せずに、任意のデータを入力とする事が可能である。
【０１０９】
［数25］
KLmKα＝γKLKα
【０１１０】
数25の一般化固有値問題から得られる上位p個の固有ベクトルをα1,…,αpとし、非線形射影をTKLPDPとすると、TKLPDPは数26で表される。
【０１１１】
［数26］
TKLPDP＝(α1…αp)T(k(x1,・),…,k(xn,・))T
【０１１２】
以上より、非線形射影を計算する射影計算手段310は、図4に示すように構成することができる。図4を参照すると、射影計算手段310は、KLmK計算部3111、KLmK記憶部3112、KLK計算部3113、KLK記憶部3114および非線形射影計算部3115を有する。
【０１１３】
KLmK計算部3111は、入力装置100から学習用の複数のデータを入力し、予め設定されたカーネル関数Kを用いてKLmKを計算する。KLmK記憶部3112は、この計算されたKLmKの値を一時的に記憶する。
【０１１４】
KLK計算部3113は、前記学習用の複数のデータを入力し、予め設定されたカーネル関数Kを用いてKLKを計算する。KLK記憶部3114は、この計算されたKLKの値を一時的に記憶する。
【０１１５】
非線形射影計算部3115は、KLmK記憶部3112およびKLK記憶部3114からKLmKおよびKLKを読み出し、数26を用いて、データを低次元に圧縮する非線形射影TKLPDPを計算する。
【０１１６】
(2)データ圧縮手段330
(2-1)線形射影
まず、入力データをxとし、圧縮後のデータをzとする。
【０１１７】
ステップS302で計算された射影が線形射影の場合には、圧縮後のデータは、数27によって計算される。
【０１１８】
［数27］
z＝TTLPDPx
【０１１９】
(2-2)非線形射影
次に、ステップS302で計算された射影が非線形射影の場合には、圧縮後のデータは、数28によって計算される。
【０１２０】
［数28］
z＝(α1…αp)T(k(x1,x),…,k(xn,x))T
【０１２１】
次に本実施の形態の効果について説明する。
【０１２２】
本発明によって計算される線形射影TLPDPの有効性を検証するために，UCI KDD Archive(http://kdd.ics.uci.edu/)データベースのThyroid disease，Letter Recognition，Irisデータに対して、本発明(LPDP)と、従来技術である局所性保存射影(LPP)および局所フィッシャー判別分析(LFDA)とを適用して低次元圧縮を行なった後、K近傍識別器によって識別性能を比較した。実験では、近傍性は局所スケール法によって計算し、パラメータは最もよかったものを採用している。図5は、各手法に関する識別率を表す。Thyroid diseaseデータに関しては、局所フィッシャー判別分析が最もよい性能を発揮しているのに対して、その他の２つのデータでは本発明が最もよい性能を発揮している。局所フィッシャー判別分析は、クラスラベルの情報を利用しているため、本発明はクラスラベルを利用せずに局所フィッシャーと同等またはそれ以上の性能を発揮する事が可能である。さらに、クラスラベルを利用しない局所性保存射影と比較すると、全データに対して本発明がよい性能を発揮している事が確認できる。このように、本発明から計算される射影は、クラス分類やクラスタリングにとって適切な低次元圧縮を行なう事が可能である。
【０１２３】
［第2の実施の形態］
図6を参照すると、本発明の第2の実施の形態に関わる可視化装置400は、圧縮装置410と表示装置420とから構成される。
【０１２４】
圧縮装置410は、本発明の第1の実施の形態で説明した圧縮装置300である。
【０１２５】
表示装置420は、圧縮装置410から圧縮データを読み込み、表示を行なう装置である。
【０１２６】
図7は、図6の可視化装置400の概略動作を表すフロー図であり、図6の可視化装置400は、以下のように動作する。
【０１２７】
まず、圧縮装置410において第1の実施の形態の図2で説明した圧縮装置300と同様の処理を行なう（ステップS401）。この際に、圧縮後のデータの次元が3次元以下の次元となるように圧縮を行なう。
【０１２８】
次に、圧縮装置410から圧縮後のデータを読み込み、表示装置420によって表示する（ステップS402）。
【０１２９】
このように本実施の形態によれば、元のデータが高次元であったり、テキストや遺伝子データなどの可視化のしにくいデータであっても、3次元以下の実数データに圧縮することで可視化する事が可能である。
【０１３０】
［第3の実施の形態］
図8を参照すると、本発明の第3の実施の形態に関わる圧縮データ復元装置500は、逆射影計算手段510と逆射影記憶装置520と圧縮データ復元手段530と復元データ記憶装置540と出力装置550とから構成される。
【０１３１】
逆射影計算手段510は、入力装置100から読み込んだデータに基づいて、第1の実施の形態に関わる圧縮装置300で圧縮されたデータを復元するための逆射影を計算する手段である。
【０１３２】
逆射影記憶装置520は、逆射影計算手段510で計算された逆射影を記憶する装置である。
【０１３３】
圧縮データ復元手段530は、入力装置200から圧縮データを読み込み、該データを逆射影記憶装置520から読み込んだ逆射影によって復元する手段である。
【０１３４】
復元データ記憶装置540は、圧縮データ復元手段530によって復元されたデータを記憶する装置である。
【０１３５】
出力装置550は、逆射影記憶装置520および復元データ記憶装置540に格納されたデータを読み込み出力する装置である。
【０１３６】
圧縮データ復元装置500をコンピュータを用いて実現する場合、逆射影記憶装置520および復元データ記憶装置540は主記憶装置や補助記憶装置で構成され、逆射影計算手段510、圧縮データ復元手段530および出力装置550は、コンピュータ上で実行される逆射影計算プログラム、圧縮データ復元プログラムおよび出力プログラムで構成される。また、入力装置100および入力装置200はキーボードやファイルなどで構成することができ、一つの入力装置を入力装置100および入力装置200として使い分けることも可能である。
【０１３７】
図9は、図8の圧縮データ復元装置500の概略動作を表すフロー図であり、図8の圧縮データ復元装置500は、以下のように動作する。
【０１３８】
まず、入力装置100からデータを読み込む（ステップS501）。入力データは、圧縮装置300で圧縮する前のデータや圧縮後のデータ、また圧縮装置300で計算された射影などである。
【０１３９】
次に、逆射影計算手段510によって、圧縮データを復元するための逆射影を計算する（ステップS502）。入力データが圧縮前のデータの場合、逆射影計算手段510は、第1の実施の形態の射影計算手段310と同様の処理で射影を求め、この求めた射影からその逆射影を計算する。また、入力データが圧縮装置300で計算された射影の場合、逆射影計算手段510は入力された射影からその逆射影を計算する。射影が線形射影TLPDPの場合には、逆射影は数29で与えられる。
【０１４０】
［数29］
x＝(TLPDPTTLPDP)-1TLPDPz
【０１４１】
射影がカーネルを利用した非線形射影の場合には、線形のようにあらわに逆射影を得る事は難しいが、TKLPDPに関する逆射影の近似問題を解く事で逆射影を計算する事が可能である。このような逆射影の近似問題はプリイメージ問題と呼ばれる。入力データが圧縮前のデータと圧縮後のデータの場合、圧縮後のデータを射影(つまり逆射影)して得られるデータが圧縮前のデータと最も近くなるように射影を計算して逆射影とする。入力データが圧縮前のデータと射影の場合、圧縮前のデータを射影して圧縮後のデータを作り、入力データが圧縮前のデータと圧縮後のデータの場合と同様の手順で逆射影を計算する。
【０１４２】
次に、ステップS502で計算された逆射影を、逆射影記憶装置520に記憶する（ステップS503）。
【０１４３】
次に、復元をする圧縮データを入力装置200から入力する（ステップS504）。
【０１４４】
次に、逆射影記憶装置520から復元のための逆射影を読み込み、圧縮データ復元手段530によって、ステップS504で入力されたデータを復元する（ステップS505）。
【０１４５】
次に、ステップS505で復元されたデータを復元データ記憶装置540に記憶する（ステップS506）。
【０１４６】
次に、逆射影記憶装置520に記憶された逆射影や復元データ記憶装置540に記憶された復元データなどを読み込み、出力装置550によって出力する（ステップS507）。
【０１４７】
このように本実施の形態によれば、第1の実施の形態に関する圧縮装置300によって圧縮されたデータから、元のデータを復元することができる。
【実施例】
【０１４８】
本発明の第1乃至第3の実施の形態において入力されるデータは、線形射影を利用する場合には実数値データであり、非線形射影の場合には任意のタイプのデータを入力可能であり、分野への依存性はなく、さまざまな応用分野が考えられる。特にクラスを分離するのに適切な圧縮を行なうため、識別問題やクラスタリング問題が適用される応用分野に対して有効である。
【０１４９】
まず、本発明の第1の実施の形態に関わる第1の実施例を説明する。本実施例では、例えば、手書き文字の認識を行なう場合に、手書きの0から9に関する複数の画像を入力装置100および200から入力する。例えば100×100ピクセルの画像は10000次元のベクトルデータとして扱うことが可能であるし、画素の位置に関する情報を含めることなども可能である。
【０１５０】
このデータを圧縮装置300に入力することで、手書きの0から9に関する画像を、認識や分類するために適切な低次元空間へ圧縮する事が可能である。これは、言い換えれば手書きの0から9に関する画像から、それらを分類するために適切な特徴をクラスラベル無しに計算していると解釈できる。
【０１５１】
低次元への圧縮によって、圧縮後の次元pを元の次元より小さくし、数22や数25などの一般化固有値問題から計算される固有ベクトルのうち上位p個の固有ベクトルのみ使うことで、元のデータに含まれるノイズを除去する効果が得られる。
【０１５２】
また、例えば手書き文字を認識するためにニューラルネットワークやサポートベクターマシンなどの教師付識別器を学習する場合に、前処理として圧縮処理を行なうことによって、学習の計算量の削減や、サンプルコンプレキシティの問題を解決できるといった効果もある。
【０１５３】
また、例えば手書き文字画像をクラスタリングする場合の前処理として圧縮処理を行なう場合でも、上記と同様の効果がある。
【０１５４】
また、圧縮装置300の中の射影計算手段310で計算される射影が、線形射影の場合には、圧縮後の各軸に関するもとの軸の寄与率がわかるため、0から9までの各画像を認識するために注目すべき画素を確認することも可能である。
【０１５５】
このような効果は、手書き文字画像に限定せずに、識別やクラスタリングを行なう場合には、データの種類に依存せず共通して言える効果である。
【０１５６】
次に、本発明の第1の実施の形態に関わる第2の実施例を説明する。本実施例では、例えば、自動車から得られたセンサデータやログデータなどから、自動車に発生する障害を診断する場合を考える。
【０１５７】
障害診断のアルゴリズムは、一般的に診断対象の障害とは無関係な属性がデータに混入していると、診断の性能が低下する事が知られている。
【０１５８】
障害診断アルゴリズムの前処理として、自動車の正常時やさまざまな障害時のセンサデータやログデータを入力として、本発明の第1の実施の形態に関わる圧縮技術を適用した場合には、正常時のデータや各障害時のデータを分類するのに適した低次元空間へ圧縮される。これはすなわち、正常と障害を区別するのに適切な属性を選択していると解釈可能である。したがって、障害とは無関係な属性がデータに混入している場合に、障害診断アルゴリズムの前処理として利用することで、障害に関する属性を選択し、障害診断アルゴリズムの性能が向上するという効果がある。
【０１５９】
また、圧縮装置300の中の射影計算手段310で計算される射影が、線形射影の場合には、圧縮後の各軸に関するもとの軸の寄与率がわかるため、各障害にとって特徴となる属性を解析することも可能である。
【０１６０】
また、自動車から得られたセンサデータやログデータなどを、有線や無線などの通信機を使って診断センタや自動車販売店などへ送信し、診断を行なうサービスを考えると、データを診断センタや自動車販売店などへ送信する際に、通信の容量が問題となる。この時に、本実施の形態による圧縮装置300によって圧縮されたデータのみを送信することによって、通信量を大幅に削減する事が可能である。
【０１６１】
また、自動車から得られたセンサデータやログデータなどを、自動車に備え付けられた記憶装置に保存し、診断センタや自動車販売店などへ自動車が持ち込まれた際に、記憶されているデータを解析することで診断を行なうサービスを考えると、自動車に備え付けられた記憶装置の容量が問題となる。この時に、本実施の形態による圧縮装置300によって圧縮されたデータのみを保存しておくことによって、記憶するデータの容量を大幅に削減する事が可能である。
【０１６２】
もちろん、第1の実施の形態に関わる第1の実施例で説明したように、ノイズの除去や計算量、サンプルコンプレキシティに関する効果もある。
【０１６３】
このような効果は、自動車の障害診断に限定せずに、診断を行なう場合には、データの種類に依存せず共通して言える効果である。
【０１６４】
次に、本発明の第2の実施の形態に関わる第1の実施例を説明する。本実施例では、本発明の第1の実施の形態に関わる第1の実施例と同様の手書き文字画像をデータとして入力し、可視化を行なう場合を考える。
【０１６５】
例えば、100×100ピクセルの画像を10000次元のベクトルとした場合に、複数の画像を10000次元で可視化する事はできないが、本実施の形態によって3次元以下に圧縮してから可視化することで、各画像の分布を3次元以下で可視化する事が可能である。
【０１６６】
また、本実施の形態による可視化装置を利用することで、0から9までの各画像が分離される可視化を行なう事が可能である。 
【０１６７】
また、本実施の形態によれば、学習に利用していないデータを適切に低次元へ射影する事が可能なため、学習に利用していないデータを3次元以下へ圧縮して可視化をし、各画像の分布具合と比較し、目視で分類を行うことが可能である。
【０１６８】
このような効果は、データの種類に依存せず共通して言える効果であり、例えばテキストデータや遺伝子データなど、直接可視化が難しいようなデータであっても、異なるクラス間がよく分離されるような可視化を行なう事が可能である。
【０１６９】
次に、本発明の第2の実施の形態に関わる第2の実施例を説明する。本実施例では、本発明の第1の実施の形態に関わる第2の実施例と同様の自動車のセンサデータやログデータなどを入力として、可視化を行なう場合を考える。
【０１７０】
本発明の第1の実施の形態に関わる第2の実施例で述べたように、圧縮装置410によって、正常や各障害などが分離されるような3次元以下の空間へ圧縮されるため、正常や各障害などが分離されて可視化される。
【０１７１】
また、本実施の形態によれば、学習に利用していないデータを適切に低次元へ射影する事が可能なため、学習に利用していないデータを3次元以下へ圧縮して可視化をし、正常や各障害時のデータの分布と比較し、目視で診断を行なうことが可能である。
【０１７２】
また、例えば自動車からデータが時系列的に得られる場合には、データを逐次的に可視化し、その軌跡を監視することで、自動車の状態を監視する事が可能である。
【０１７３】
このような効果は、データの種類に依存せず共通して言える効果である。
【０１７４】
次に、本発明の第3の実施の形態に関わる第1の実施例を説明する。本実施例では、本発明の第1の実施の形態に関わる第2の実施例で説明をした、自動車から得られたセンサデータやログデータなどを、診断センタや自動車販売店などで診断するサービスを考える。
【０１７５】
診断センタや自動車販売店などで診断を行なう場合には、圧縮データを利用して診断を行なうだけではなく、元のデータを解析したい状況が考えられる。
【０１７６】
その場合には、診断センタや自動車販売店などに、本発明の第3の実施の形態に関わる圧縮データ復元装置500を設置しておくことによって、圧縮データから元のデータを復元し解析する事が可能となり、人間の専門家によるより高度な診断サービスを、利用者に提供する事が可能である。
【図面の簡単な説明】
【０１７７】
【図１】本発明の第1の実施の形態に関わる圧縮装置の構成を示すブロック図である。
【図２】本発明の第1の実施の形態における圧縮装置の動作を示すフロー図である。
【図３】本発明の第1の実施の形態に関わる圧縮装置における射影計算手段の一例のブロック図である。
【図４】本発明の第1の実施の形態に関わる圧縮装置における射影計算手段の他の例のブロック図である。
【図５】本発明の有効性を検証するために行なった実験結果の一例を示す図である。
【図６】本発明の第2の実施の形態に関わる可視化装置の構成を示すブロック図である。
【図７】本発明の第2の実施の形態における可視化装置の動作を示すフロー図である。
【図８】本発明の第3の実施の形態に関わる圧縮データ復元装置の構成を示すブロック図である。
【図９】本発明の第3の実施の形態における圧縮データ復元装置の動作を示すフロー図である。
【符号の説明】
【０１７８】
100、200…入力装置
300…圧縮装置
310…射影計算手段
320…射影記憶装置
330…データ圧縮手段
340…圧縮データ記憶装置
350…出力装置
【図１】
2008192031.tif 000003
【図２】
2008192031.tif 000004
【図３】
2008192031.tif 000005
【図４】
2008192031.tif 000006
【図５】
2008192031.tif 000007
【図６】
2008192031.tif 000008
【図７】
2008192031.tif 000009
【図８】
2008192031.tif 000010
【図９】
2008192031.tif 000011