Matlabでの相互情報量を使用した特徴選択


10

これらの講義ノート(5ページ)で説明されているように、相互情報のアイデアを機能選択に適用しようとしています。

私のプラットフォームはMatlabです。経験的データから相互情報量を計算するときに私が見つける1つの問題は、数値が常に上向きにバイアスされることです。Matlab CentralでMIを計算するために約3〜4種類のファイルを見つけましたが、独立したランダム変数を入力すると、それらはすべて大きな数値(> 0.4など)を示します。

私は専門家ではありませんが、MIを計算するために単に結合密度と限界密度を使用する場合、MIは定義上正であるため、プロセスにバイアスが導入されるという問題があるようです。相互情報を正確に推定する方法について実用的なアドバイスはありますか?

関連する質問は、実際には、実際にMIを使用して機能を選択する方法ですか。MIは理論上無制限なので、しきい値をどのように考案するかは私には明らかではありません。または、人々は単にMIによって機能をランク付けし、上位kの機能を採用しますか?


誰もこのトピックに興味がありませんか?

これに対する答えはもうありますか?
エントロピー

残念だけど違う。同じ問題がありますか?

回答:


3

これがサンプリングバイアス制限の問題です。

密度の小さなサンプル推定値にはノイズが多く、この変動により、推定される情報値を増加させる変数間に偽の相関関係が生じます。

R1S1/2Nln22Nln2χ2R1S1

これらの手法をMatlabに実装するパッケージには、infotoolboxSpike Train Analysis Toolkitが含まれます。

継続的なケースでは、最近傍距離に基づく推定量が問題を解消します。


1

私はKLダイバージェンスを使用しており、適切なサンプルサイズを使用すると、分布の確率が等しい軌跡の値が0になります。

KLダイバージェンスの観点からMIを言い換えることをお勧めします。


1

入力変数(機能)の選択には、部分相互情報アルゴリズムを使用する必要があります。MIの概念と確率密度推定に基づいています。例:

  1. カーネルベースのPMI:(+)停止基準(赤池情報量基準)(-)より複雑
  2. kNNベースのPMI:(-)には停止基準がありません(+)複雑さが低い

PMIを使用してニューラルネットワーク入力の数を減らし、複雑さを増し、他の問題を引き起こしました。入力変数選択(IVS)アルゴリズムの完全な概要については、「人工ニューラルネットワークの入力変数選択方法のレビュー」ペーパーを参照してください。SVMなどのIVSを使用できます。物事を短くするには、PMIを使用します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.