ちょっと昨年を振り返ってみた所、8月初旬にML.NETのプレビューが更新された際に内部的に使うLightGBMのバージョンが最新になった事を受け、その対処をし、更にその為にモデルの再学習に取り組みました。つまり、もう5か月もひたすら学習させてます。
今回の途中でこれまで大体2004年以降からちょっと前に区切って学習データを用意し(これ、検証する期間を残す為に直前ではなく「ちょっと前」にしてます)、学習時間を調整して学習させてきました。せっかくAutoMLで利用するML.NETが更新されたのでAutoMLで試し、でも、納得いかずにModel Builderでもとかね。で、ふと、学習データの期間を狭める事を決断。まあ、これは特に確信があった訳ではないけど、本来機械学習にはある程度の学習するサンプルが必要でAutoMLでもModel Builderでも基本8割で学習して残り2割で検証されてる筈。なので2004年から(以前この理由は書いたかもですが、JV-Dataの出走別着度数データがこの年以降提供されてます)にする事で与えられる最大の学習データが良いのではとの判断からなんですが、通常用の学習データは2004.1.1~2025.7.31だと1.3GBとなり、これはModel Builder的にいうと学習データ1GB以上は3時間以上となってます。1GB未満なら1時間以上という事で、この一線超えるだけで3倍の時間を要するって事に。1GB未満でも24時間学習してた訳で、それ考えると72時間学習って事になり、まあ、色々試しはしましたがダメでした。まあ、それ以外でもAutoMLにしてもModel Builderにしても、AutoMLはどんなエラーなのか表示しますがModel Builderはもしかして詳細なログがどこかに出ているかもですが、Visual Studioに表示されるログは単に0から始まるトレーニングのカウントが飛んでいる事でエラーで飛んだんだなとわかる程度。まあでも、AutoMLではメモリ不足とか計算エラーとかなんです。そう、1GB超えた学習データでは特にメモリ不足にもなるんではないかと。あと、学習させる上で古いデータが必ずしも良い影響を与えるとは限らないのでは?って疑問もあり、現在使っているのは2015.1.1~2025.7.31です。これだと通常用でも678MBとまあ半分程度。色々な事があるとは思うけど、例えば競馬場改修工事による変化とか、調教技術、騎乗技術等の変化。古い過去データを使わない事で余分な雑念ではないけど傾向がより集中される可能性とかね。競馬予想もプロじゃないし、機械学習もプロじゃないけど自分の勝手な判断です。まあ、だからユーザーさんが勝手に自分が思う期間の学習データで好きに学習させる事も可能なのでトライして頂ければとは思います。
にしても、既に5か月挑んでるのに...そろそろ一旦めどをつけて新バージョンリリースにたどり着きたいと思ってます。
追記 2026.1.5 9:37
0 件のコメント:
コメントを投稿