モデル作成時に成績が出たのに、実データでは成績が出ないということは割とよくあります。
原因として考えられるものは大体以下のものです。
モデル作成時と実データ運用時のデータがそもそも異なる
モデル作成時のトレーニングデータの範囲が少なく、実データがカバーできていない。
データ中に含まれない前提条件が異なっている(冬のデータで学習したものが夏に成績が出ないなど)
機械学習モデルは、与えたデータを元に動くので、上記のようなケースは「与えたデータに含まれないもの」や「与えていないデータに結果が依存している」といった状況で発生します。
このようなケースも、本ソフトウェアを使うことである程度検出できるようになります。
これは、Machine Learning Data Checker で「外挿データ」を探すことで原因の推定が可能です。
「与えたデータに含まれないデータ」は、トレーニングデータから見て「外挿」の位置にあるデータ群です。これらは学習していないので当然成績は出ません。ですので、「外挿データ」が「内挿データ」になるようにトレーニングデータセットを見直す必要があります。
本ツールで外挿と判断されたデータはトレーニングデータ中に存在していないと考えられるため、外挿と判断されたデータ群がどのようなデータなのかを明らかにし、その部分のデータを改めて採取し、トレーニングデータに加えることで、この問題を回避することが可能です。
注意
あたらなかったデータをトレーニングデータにそのまま加える場合は、テストデータセットを新たに採取する必要があります。注意してください。
これは、データのリークを防ぐために必要な処置となります。
これは、Machine Learning Data Checker で「まぎらわしい」データを探すことで原因の推定が可能です。
前提データがデータ中に含まれていないので、データが識別できない状態となっています。これは「まぎらわしい(=ラベルの特定が出来ない)」状態であると考えるのが適切です。
つまり、まぎらわしいデータがある場合は、データ中に含まれない前提条件の差異がデータとして与えられていないと考えるべきです。
この問題を回避するためには、与える説明変数の見直し(場合によっては追加)といった作業が必要となります。必要なデータをとっていないのであれば、それを採取するという手間がかかりますが、この手間を避けて通ることは出来ません。
まぎらわしいデータが識別できるようなセンサデータが追加できたら、改めて学習・評価をして下さい。成績に影響が出ているはずです。
注意
説明変数を加えることで、モデルの学習に必要なデータ数はおのずと増えていきます。説明変数を増やすことは、それだけ必要なデータ数を増やすことにも繋がるので、むやみやたらと変数を追加しないようにして下さい。
なお、説明変数セットの見直しを為たい場合は、弊社提供の別ツール Machine Learning Reduce Explanatory Variables for WinUI を利用してください。