2024/05/11

かなり重大なバグ

今日も朝からってか昨晩から色々と準備しながら実践に挑みつつ、検証機能を強化してました。作業中に3月末に今年度に向けた強化とか言って順位学習にファクター追加してるんですが、この検証機能は以前の順位学習モデルとファクター追加したモデルではそもそも物が違うので検証機能もそれ用に別に作成してあり、フラグで切り替える様に作ってたんですが、肝心のフラグ確認して切り替えるコードが抜けてるとか😖

で、修正と強化後に何度となくテストもしたので多分大丈夫な気がしますが、リリースビルドを作って動かすと1回目の検証が何もせずに終了してしまうんです。かまわずもう一度検証開始すれば動くので、多分ML.NETのモデルロード辺りのバグが悪さしてるんだと思います。これ、Visual Studio Community 2022上でデバッグ開始すると発生しないとか、これ以外にもリリースビルドにすると発生するバグは本当にMicrosoftにどうにかして欲しい。

ちょっと大きめな感じなバグ修正と機能強化なのでVersion 1.2.0としてリリースする事にしました。2024.4.1~2024.5.5で検証してみると各券種1点は

  • SouhaTime.mlnet(RMSE 1.3856)
    単勝:的中[22.22%] 回収[78.19%]
    複勝:的中[54.17%] 回収[84.44%]
    枠連:的中[13.81%] 回収[87.48%]
    馬連:的中[12.22%] 回収[108.56%]
    ワイド:的中[28.61%] 回収[103.72%]
    馬単:的中[6.11%] 回収[115.83%]
    三連複:的中[7.50%] 回収[97.19%]
    三連単:的中[1.67%] 回収[100.69%]
    予想[360] 的中[197] (54.72%)
    購入[¥285,300] 払戻[¥277,040 (97.10%)]
  • RaceJuniFull(RMSE 3.4368)
    単勝:的中[21.11%] 回収[132.42%]
    複勝:的中[52.22%] 回収[95.44%]
    枠連:的中[14.41%] 回収[101.32%]
    馬連:的中[10.00%] 回収[103.39%]
    ワイド:的中[22.50%] 回収[84.89%]
    馬単:的中[5.00%] 回収[74.11%]
    三連複:的中[4.72%] 回収[61.39%]
    三連単:的中[0.56%] 回収[18.67%]
    予想[360] 的中[190] (52.78%)
    購入[¥285,300] 払戻[¥239,050 (83.79%)]

って感じで、今回検証強化した多点買いの単勝上位3頭、複勝上位3頭、枠連1~3点(これ、上位3頭BOXを枠連にすると同枠とかで例えば18頭立ての16番・17番・18番だと3点が被るので1点って感じ)、馬連3頭BOX、ワイド3頭BOX、馬単3頭BOX、三連複4頭BOX、三連単4頭BOXで買った場合で作りました。

  • SouhaTime.mlnet(RMSE 1.3856)
    単勝:的中[56.94%] 回収[95.57%]
    複勝:的中[90.00%] 回収[90.40%]
    枠連:的中[29.73%] 回収[81.94%]
    馬連:的中[25.28%] 回収[92.12%]
    ワイド:的中[51.39%] 回収[105.00%]
    馬単:的中[25.28%] 回収[91.29%]
    三連複:的中[18.89%] 回収[104.49%]
    三連単:的中[18.89%] 回収[99.39%]
    予想[360] 的中[324] (90.00%)
    購入[¥1,750,000] 払戻[¥1,697,140 (96.98%)]
  • RaceJuniFull(RMSE 3.4368)
    単勝:的中[52.22%] 回収[112.24%]
    複勝:的中[89.17%] 回収[99.17%]
    枠連:的中[29.43%] 回収[89.75%]
    馬連:的中[22.78%] 回収[83.48%]
    ワイド:的中[42.78%] 回収[92.67%]
    馬単:的中[22.78%] 回収[78.15%]
    三連複:的中[13.33%] 回収[85.80%]
    三連単:的中[13.33%] 回収[75.96%]
    予想[360] 的中[321] (89.17%)
    購入[¥1,748,900] 払戻[¥1,450,590 (82.94%)]

ここの所、走破タイムで実践に挑んでますがどちらが正解とか...ワイドと三連複で行ってるので走破タイムがデータ的にも良く見えますが検証期間が短くて実際には甲乙つけ難い感じなんですよね😓

追記 2024.5.11 23:39
1回目の検証が何もせずに終了してしまう原因を調べてたら、やはり以前SQLiteの簡単なサンプルでも再現するリリースビルド生成時のバグが原因でした。無料で使わせてあげてるんだから我慢しろよっていうMicrosoftのスタンスがうんざりします。いやまあ、もしかしたらMicrosoftがじゃなくSQLiteがなのかもなんですけどね😞

追記 2024.5.12 0:21
犯人(?)はMicrosoftではなくSQLiteでした😓 既にMicrosoftにはレポートしてあったので、一応SQLiteもチェックしてレポートした方が良いかとフォーラム眺めてたら既に1年前にあげられてました。で、更に近日System.Data.SQLite.Core Version 1.0.119として修正版が出る模様なので、もうしばらくの辛抱です。

0 件のコメント:

コメントを投稿