センサがどれぐらい結果に影響を与えるか?を数値化し、ランキングすることが可能となります。
このランキングで上位のものは影響を与えますが、回のものは下位のものは結果に影響を与えません。
この結果を用いて、センサ情報の何が必要で、何が不要かを洗い出すことが出来ます。影響を与える度合いが少ないものを削除すれば良いのです。
MNIST は手書きの数字を 784 pixel で表現したデータの集合体です。目的は、これを 0~9 の数字に分類することです。
多くの場合、このデータをそのまま利用していますが、実際にはかなりたくさんの不要なデータが含まれています。
弊社のアプリ(Machine Learning Reduce Explanatory Variables for WinUI)にて実際に削減した結果を以下に示します。
なお、f値については 3回計算した平均値をしています。
通常ケース
削減ケース1
削減ケース2
削減ケース3
削減ケース4
説明変数:784
説明変数:227
説明変数:212
説明変数:182
説明変数:37
パラメタ数:927,090
パラメタ数:78,660
パラメタ数:68,804
パラメタ数:50,879
パラメタ数:2,280
f値:0.982
f値:0.975
f値:0.974
f値:0.972
f値:0.860
このように、説明変数(=センサ数)を絞っても性能(f値)がそれほど落ちないケースがあります。もちろん、必要最低限のデータを使っている場合は、削減する余地はありませんが、そうでない場合は削減は可能となります。従来は、学習させた後に寄与度などを使って対応する場合などもあったかと思いますが、本ソフトウェアを使うと、学習しなくても関係性を洗い出すことが可能となります。
但し、削減にあたり単純に寄与の少ないものを削除するだけではなく、意味合いの等しいものも削除するようにしています。これも、特許技術をベースとした本アプリの機能となります。
これらを使うことで、ケース3の f値の下落0.01 を許容するのであれば、パラメタ数を1/20程度まで減らすことも可能です。これは、モデルのコンパクト化に寄与します。よって、エッジ機器などへの機械学習モデルの導入を行い場合、本技術を利用することでアドバンテージを得ることも可能です。