「検証済みモデルと、完全なモデルの交差検証有無について」
1 view (last 30 days)
Show older comments
■概要
分類学習器アプリの「モデルのエクスポート」機能を使い新しいデータの予測を行いたいのですが
MATLABの公式ドキュメントを読んでみますと「分類学習器におけるモデルの学習は、2 つの部分から構成されます」と記載されており
分類学習器アプリ上に表示されている[精度 (検証)]は、モデルに学習(ここでは、例としてアンサンブル バギング木とします)→
検証(ここでは、交差検証)→検証後の結果(分類学習器アプリ上に表示)と記載されており、一方で完全なモデル(モデルのエクスポート)で
ワークスペースにエクスポートしたモデルには、「検証を行わなかったモデル」をエクスポートできると記載されています。
・分類学習器アプリにおける分類モデルの学習
https://jp.mathworks.com/help/stats/train-classification-models-in-classification-learner-app.html
ここで本題の疑問点なのですが、
(疑問1)
分類学習器アプリ上に表示される学習では交差検証を行っているのに、なぜ、エクスポートしたモデルでは
検証を行わなかったモデルがエクスポートされるという差異があるのでしょうか。
(疑問2)
エクスポートしたモデルをそのまま使って、新しいデータの予測を行うと出力結果は過学習した結果が得れるということでしょうか。
上記の推測が正しかった場合、エクスポートモデルに対しても交差検証を行って新しいデータの予測を行った方が良いということでしょうか。
0 Comments
Answers (1)
Hiro Yoshino
on 7 Jun 2022
(回答1)
基本的なことですが、まず交差検証は何の為にやるのかを考えてみてください。モデルの経験誤差の (性能) の推定のためですよね。その数字を見て、他のモデルと比較を行って1つのモデルを決めます。モデルが決まれば、学習を行います。その際に、手持ちのデータの一部で学習する人はいるでしょうか?全てのデータを使って学習するのが普通というか、理論上正しいことだと考えられます。なので、エクスポートするモデルは自分の持てる最大の知識を渡した検証ではない完全なモデルになります。
(とは言え、Documentation の書き方も悪いように思います。このあたりを体系立てて学んでいなければ、行間を読めないような書き方に思えます)
(回答2)
結論だけ申し上げると、過学習したモデルは検証の段階で成績が悪いので、選択されない訳です。検証をすること と 過学習を抑制することは 同一では無いです。検証自体が過学習 (バリアンス) とバイアスの評価です。検証したモデルを、全てのデータを使ってエクスポートすることは問題ないです。
誤解されているかもしれないので、一応お伝えしておくと、交差検証にモデルを安定させる効果は有りません。安定しているモデルかどうか?を文字通り検証する為の機能です。安定していると分かれば、たくさんのデータで学習するべきでしょう。エクスポートしたモデルに対して交差検証をする意味は有りません。
0 Comments
See Also
Categories
Find more on 分類学習器アプリ in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!