機械学習で使用するデータの品質をチェックするツールです。
本ツールを使うことで次のようなことが出来るようになります。
データ間の依存関係性の調査(時系列も可)
トレーニングデータ中の不良データ割合の調査
データ中に含まれるノイズデータの検出
データ中に含まれるまぎらわしいデータの検出
トレーニングデータとテストデータを比較し、テストデータ中の外挿に相当するデータを抽出。
データ間の依存関係は次のような形で出力されます。
本システムでは、項目Aを変更したことが項目Bの値に影響を与えるか否かを数値化しそれを表示しています。計算時間は非常に短いので、手軽にデータ間の依存関係性の検査に向きます。但し、この評価そのものは時系列に依存していないため、「依存関係」とは表記しますが「因果関係」とは表記していません。
比較対象がないので判断が難しいが、100のクラスタに分割したとき、エントロピー上位10クラスタで 22,777件と合計6万件のうち、約半数が含まれている。
MNISTデータセット自体がそれほど高品質のデータセットではないが、このように評価してみると、データの約38%がエントロピー上位10%に含まれている。
この結果を見る限り、やはり MNIST データセットについては、もちろん故意であろうが不良データ方数含まれているということがわかる。
この解析では、2種類のノイズおよびまぎらわしいデータの抽出が出来る。
実際に MNIST に対して解析処理を実行した結果を以下に示す。
パラメタ:
目標クラスタ内要素数=10
ノイズ割合閾値1=0.2
ノイズ割合閾値2=0.2
判定困難閾値=0.8
ノイズと判定されたデータ
(サンプル・赤色がノイズの可能性有り・行は関係なし)
まぎらわしいと判定されたデータ群
(サンプル・行単位でまぎらわしいデータ群と考える)
この解析では、MNISTのトレーニングデータの0,1,2,3,4 から見て、テストデータの0,1,2,3,4,5のどのデータが外挿(知らないデータ)であるかどうかを判断したものです。
以下に示したのは外挿として判断されたデータ群です。
外挿データの検出結果
ラベル 検出数 検出割合
0 5 / 980 0.0051
1 0 / 1135 0.0000
2 1 / 1032 0.0010
3 5 / 1010 0.0050
4 1 / 982 0.0010
5 365 / 892 0.4092
検出されなかった残りの6割は検出プログラムとしては 0,1,2,3,4 のラベルのどこかに入るだろうと判断しています。もとより 5 という文字自体が識別の難しい文字である点は、考慮すべきであると考えます。
使い方について簡単に解説した PDF ファイルです。
参考にしてください。
詳細なマニュアルは、別途作成していく予定です。