2024/04/17

通常用学習データの漏れ

アプリ公開に向けて説明記述してて気が付きました。通常用にあると思っていたファクターが抜けてました。チャチャっと修正して現在CSVファイルの出力中です。少し前に終了予定時刻を表示する様にしてあり、開始直後は2日後とか出てましたが諸々した後に再度見たら残り40分程度。34年分の出力で90分程度の様です。そこまで処理した月数に掛った時間から残り月数に掛る時間を計算して表示させてるんですが、開始直ぐはのっそりで色々とキャッシュに乗るとスムーズに出力されてって感じです。まあ、34年分が90分って3分弱/年が遅いのかはなんともです。

今週夜勤なので出社前にはCSV出力終わるので早速Model Builderで24時間学習とかさせてみようかとは思ってます。劇的に精度が上がるとは思ってませんが改善されるのは歓迎です。

2024/04/16

直面したリリースビルドのエラー

アプリ公開の為に色々テストしたりしてます。元々安定していない部分があるアプリなんですが、公開する事に不安材料は沢山あります。Microsoftに報告済みのバグが未修正だったり、使っているNuGetパッケージにもベータリリース含んだり。

インストーラー作成後にそれをダウンロードしてインストールする事で試してました。これ、今までVMwareの仮想マシン上でしてましたが、遅いのでちょっと実機で諸々テストしてます。困った事に開発環境からのデバッグとインストーラーからインストールしたアプリでアプリの設定が共有されてます。このアプリの設定がどこで管理されているのか実は把握してません。レジストリー使っているのかもなんですが、インストーラーでアプリをインストールする時にすべてのユーザーにって選択せずに別ユーザー作成してそちらにWindows上でユーザー切替えしてインストールすれば分けられるかもですが、面倒で試してません。まっ、これ自体は重大な障害ではないので、色々解決した後にでもと思ってます。

そもそも、出馬表を表示する際に機械学習モデルをロードする時に色々とエラーが出たりする事があるのですが、デバッグ時はログ表示されるので色々分かったりします。ただ、分かったからと言って即座に対処出来るかは別なんですが、自分のバグならまだしも、そうじゃない場合は困る。更に同じ事をデバッグ環境とインストールしたアプリでやってもデバッグ環境では問題無く動くのにインストールしたアプリではエラーになるのが本当に苦労してます。

Visual Studio Community 2022 Version 17.9.6現在での話にはなりますが、アプリの発行時の設定方法です。「構成」という項目にこれまで当たり前の選択だと思って"Release | x86"を選んでました。まあ、これ以外にも選択肢は沢山ありますが、基本的にJV-Linkが足かせとなりアプリは32bitに制限されますので"??? | x86"は確定でその中から"Debug | x86"ではないなぁと最初から選択はしてません。今回この選択肢で下の方に行くと"x86 | x86"の存在に気が付いて試した所、ビンゴ!!エラーが発生しないで出馬表が表示される様になりました。

Visual Studioの勉強不足、自分の知識不足、理解不足、それら全てが原因なのかもですがこんな状態でもアプリ公開して良いのか本当に悩む所です。

2024/04/14

第84回皐月賞

昨日から新しい買い方で挑んでますが不発に終わりました😱

走破タイム予測からこの所攻めてるんですが、
でもまずまずな感じです。ホープフルの勝ち馬レガレイラが一番人気ですが、ルメール負傷で北村宏司に乗り替わり。朝日杯の勝ち馬ジャンタルマンタルは前走共同通信杯で戸崎のジャスティンミラノに土付けられてます。

穴党な予想として

辺りを狙ってみたいと思います。

2024/04/13

順位学習24時間

順位学習も24時間してみました。ちょっと前に69時間程度してたけど、今回は週末の競馬の関係も考えて24時間にしました。

|--------------------------------------------------------------------|
|                          Experiment Results                        |
|--------------------------------------------------------------------|
|                               Summary                              |
|--------------------------------------------------------------------|
|ML Task: regression                                                 |
|Dataset: E:\My Project\MBJuniFull\RaceJuniFull.csv                  |
|Label : Juni                                                        |
|Total experiment time : 86406.0000 Secs                             |
|Total number of models explored: 149                                |
|--------------------------------------------------------------------|
|                        Top 5 models explored                       |
|--------------------------------------------------------------------|
|      Trainer                             RMSE       Duration       |
|--------------------------------------------------------------------|
|147   LightGbmRegression                  3.3771     365.0530       |
|143   LightGbmRegression                  3.3771     359.2980       |
|141   LightGbmRegression                  3.3882     385.9890       |
|144   LightGbmRegression                  3.3936     294.8100       |
|124   LightGbmRegression                  3.4006     397.2630       |
|--------------------------------------------------------------------|

ちょっとこれまでに無いパターンで2つが同一首位だった。今回の最適RMSE 3.3771はこれまでのを超えたものの3月末までを検証すると

単勝:的中[21.27%] 回収[88.48%] 複勝:的中[48.46%] 回収[89.71%]
枠連:的中[11.11%] 回収[65.81%] 馬連:的中[7.68%] 回収[61.22%]
ワイド:的中[18.86%] 回収[82.18%] 馬単:的中[3.84%] 回収[58.89%]
三連複:的中[4.61%] 回収[80.87%] 三連単:的中[1.10%] 回収[92.68%]
予想[912] 的中[456] (50.00%) 購入[¥630,900] 払戻[¥560,350 (88.82%)]

で、ここまで検証的に良いRMSE 3.4668の検証

単勝:的中[21.38%] 回収[88.56%] 複勝:的中[50.00%] 回収[91.90%]
枠連:的中[12.07%] 回収[77.22%] 馬連:的中[8.00%] 回収[58.02%]
ワイド:的中[19.08%] 回収[83.55%] 馬単:的中[4.06%] 回収[49.92%]
三連複:的中[4.17%] 回収[82.85%] 三連単:的中[0.66%] 回収[50.89%]
予想[912] 的中[468] (51.32%) 購入[¥630,900] 払戻[¥525,820 (83.34%)]

より的中率が下がったけど回収率が上がった事になる。内容的にみると1点目の複勝率が下がったけど、2点目と3点目の精度が向上してるって結果なんだと。ただ、それでも走破タイムの通常用モデルの的中率には届かない結果です。まあ、順位予想は新馬戦も含めてますので単純な比較は出来ませんけど。

念のために新馬戦用も24時間学習

新馬戦は数が限られてますが念の為に24時間してみました。

|--------------------------------------------------------------------|
|                          Experiment Results                        |
|--------------------------------------------------------------------|
|                               Summary                              |
|--------------------------------------------------------------------|
|ML Task: regression                                                 |
|Dataset: E:\My Project\MBShinba\ShinbaTime.csv                      |
|Label : Souha                                                       |
|Total experiment time : 86400.0000 Secs                             |
|Total number of models explored: 1094                               |
|--------------------------------------------------------------------|
|                        Top 5 models explored                       |
|--------------------------------------------------------------------|
|      Trainer                             RMSE       Duration       |
|--------------------------------------------------------------------|
|353   LightGbmRegression                  1.6493     47.3240        |
|524   LightGbmRegression                  1.6494     102.7630       |
|512   LightGbmRegression                  1.6498     102.6670       |
|369   LightGbmRegression                  1.6498     45.0750        |
|380   LightGbmRegression                  1.6501     47.1910        |
|--------------------------------------------------------------------|

最適は353と全1,094の半分以下でしたので12時間で十分だという結果でした。

単勝:的中[15.56%] 回収[182.00%] 複勝:的中[42.22%] 回収[97.33%]
枠連:的中[6.67%] 回収[33.78%] 馬連:的中[6.67%] 回収[37.33%]
ワイド:的中[15.56%] 回収[202.22%] 馬単:的中[4.44%] 回収[42.67%]
三連複:的中[4.44%] 回収[315.33%] 三連単:的中[4.44%] 回収[1,032.89%]
予想[45] 的中[19] (42.22%) 購入[¥31,500] 払戻[¥87,460 (277.65%)]

これ、実はここまでの新馬戦用最適RMSE 1.6474ってのが2024.3.26にあるんですが

単勝:的中[17.78%] 回収[165.11%] 複勝:的中[40.00%] 回収[89.33%]
枠連:的中[6.67%] 回収[56.67%] 馬連:的中[4.44%] 回収[24.44%]
ワイド:的中[8.89%] 回収[121.11%] 馬単:的中[0.00%] 回収[0.00%]
三連複:的中[2.22%] 回収[174.44%] 三連単:的中[0.00%] 回収[0.00%]
予想[45] 的中[18] (40.00%) 購入[¥31,500] 払戻[¥28,400 (90.16%)]

よりもトータルの的中率は良かったりします。こんなのも悩みの種ですね^^;

2024/04/09

新たに走破タイム学習24時間してみた

 Model Builderで走破タイムの学習を24時間してみました。

|--------------------------------------------------------------------|
|                          Experiment Results                        |
|--------------------------------------------------------------------|
|                               Summary                              |
|--------------------------------------------------------------------|
|ML Task: regression                                                 |
|Dataset: E:\My Project\MBSouha\SouhaTime.csv                        |
|Label : Souha                                                       |
|Total experiment time : 86400.0000 Secs                             |
|Total number of models explored: 149                                |
|--------------------------------------------------------------------|
|                        Top 5 models explored                       |
|--------------------------------------------------------------------|
|      Trainer                             RMSE       Duration       |
|--------------------------------------------------------------------|
|147   LightGbmRegression                  1.4038     1071.8800      |
|141   LightGbmRegression                  1.4039     1143.1580      |
|136   LightGbmRegression                  1.4044     1065.9490      |
|137   LightGbmRegression                  1.4049     941.6150       |
|132   LightGbmRegression                  1.4050     1009.8740      |
|--------------------------------------------------------------------|

な感じで進展はありました。いつもの検証(2024.1.1~2024.3.224)では

単勝:的中[25.52%] 回収[77.83%] 複勝:的中[55.68%] 回収[86.08%]
枠連:的中[13.37%] 回収[85.70%] 馬連:的中[9.52%] 回収[68.99%]
ワイド:的中[23.81%] 回収[94.85%] 馬単:的中[5.62%] 回収[75.48%]
三連複:的中[5.49%] 回収[50.77%] 三連単:的中[0.98%] 回収[28.30%]
予想[819] 的中[468] (57.14%) 購入[¥566,200] 払戻[¥459,100 (81.08%)]

となりました。ここまでのRMSE 1.4085はトータルでの的中率は上でしたが、今回のは部分的に向上してる部分もあり比較が微妙です。自分としてはメインなワイドが前回の23.44%な的中率から少し向上してる辺りは採用するに値するかなぁっと。

にしても、1.4の壁はなかなか厚いのかなぁ...

iPhoneのオートメーション

ここ最近、スマートホーム化とか色々しててってのもあるんですが、実際の所、iPhoneをまだまだ使いこなせてなかったなぁって話です。

まずは通勤中のマイカー通勤時の事なんです。昨年11/15に書いてますが、車載のデバイス購入してまして、FMトランスミッター使えばiPhoneの音楽再生をBluetoothで飛ばしたものをFMで受信して音楽再生が可能です。何度か手動で利用してましたが、iPhoneのオートメーションを利用すると簡単なので続けてます。デバイスは

これしてると、エンジンかけてシガーソケットに通電されるとデバイスが起動し、近くにiPhoneがあるとBluetoothで接続してミュージックで勝手に再生開始します。なので特に何もしなくても良くなりました。これってかなり助かります。まっ、それまではポッドキャスト試したりとかしてましたけど、ミュージックがデフォルトで再生されるならそれはそれでOKな感じです。

これ以外にも、アラームを日勤でも夜勤でもセットしてそれをオフにした時に

としておけば、部屋の電気がつきます😁 今回購入した電動リクライニングベッドにはアラームで動作させたり出来ます。これも設定出来ればと思ってますが...可能かどうか不明です。

追記 2024.4.10 20:51
車の話でちょっと分かり辛いかもと思い追記なんですが、18年も乗ってるアトレーなんですが、ストラーダがナビで積んでたりします。しかし、もう何年も前からディスプレーが開かないのでメディア入れたりとかが出来ません。多分HDDが内蔵されたタイプだったかと思いますが、当時入れた音楽データは全て再生不可な状態です。テレビはアナログ。そんなでもナビ自体は生きてたり、ラジオは問題無く聞けます。なのでこのFMトランスミッターが重要な役割を果たしてたりします。
それと、先日購入した電動リクライニングベッドにはアラーム機能がついてまして、起床時に指定のポジションになるんですが、流石にベッドが動くしモーターの動作音もあり、アラームはスマホからですが、止めれば部屋の照明が点灯。ちょっと気に入ってます😊

2024/04/07

ネルム アジャスタブルベッド シングル

新築した自宅自室のベッドを購入しました。介護ベッド的に今後を考えての購入。ってか、まあ、何度か入院した時に感じたのはリクライニングベッドは良いなってね😁 で、色々と探してたんです。安いのは3万円程度のものから10万円以上する有名ブランドのものとか。把握出来たのは、2モーターじゃなきゃダメなのと、操作リモコンの位置等に注意が必要な事。で、選んだのが

これです。これに
をセットした商品を楽天で4月1日に発注してまあ最短4日には届く予定でしたが、諸事情で昨日の昼過ぎに指定し直しました。楽天での注文時には時間指定不可的な話で、最短での発送にしておいて、LINEの佐川急便に通知が来た時に日時指定。ちょっと気を付けたいのはフレームとマットレスなので2口での発送なので両方とも日時指定する事ですね。

今回特に買い回り無視での月曜日の発注でした。まっ、その辺りの判断は微妙なんですが、72,980円の商品です。手持ちのポイント2,000ポイント使用して70,980円で購入(送料込)。記憶が正しければ当日ポイント12倍で楽天最強プランも有り素で6,630ポイント(直で付与された)がついて後日追加でって事だと。まっ、実質6万円程度での購入にはなったと思います。

フレームは確かに滅茶苦茶重いです。大人二人で作業って言われてますが、佐川の配達した方は普通に一人で玄関に届けて頂き、そこから自室にどうにか移動。新築の家なので当然床ってか廊下に細心の注意を払い移動。横向きに引き出せる様に箱を設置し開封。横に引き出してビニールを外し、マックスの脚ではなく1つ外したものを6本準備して装着。これの前に二つ折りのフレームを固定するボルト(?)をセット。大人一人でも作業は完了しました。微妙にマットレスは同じ日時指定なのに別便での配送になりましたが、マットレスも少し後に配送され、圧縮状態でしたが、カッターナイフは使わないって事が指示されてましたのでハサミで行い即座に元に戻りました。

停電時用に9Vの角電池2個が付属してましたが、セットせずに普通にコンセントに繋げて問題無く動作してます(うちは一応蓄電池装備してるので、ちょっとした停電ならその蓄電池で行けると判断)。iPhoneに専用アプリを入れて操作するので本来のリモコンには電池入れてません。単4を2本だと思います。エネループもあるんですが、スマホで操作すると思うので入れてません。

妻的にはマットレスが柔らかいと言ってましたが、自分には全く問題無かったです。1晩寝てみても問題無い感じです。まっ、昨晩は酔っぱらって寝落ち状態で深夜にフラットに戻して寝続けました😁

第84回 桜花賞

今月から俺プロで使う予想を順位予想ではなく走破タイムにしてみてます。若干的中率が高いのが理由なんですが、微妙に回収率が上がらない😓 ここまでで5段まで来てますがさらに上目指して続けてみます。

桜花賞ですが、

このままだと
となり、買う気にはなれないので自分なりに予想してみる事にしました。川田が三連覇するかとか、アスコリピチェーノが2歳女王として無傷で勝つかとかが話題(?)の様ですが、名手ルメールが負傷中で不在。北村君には実力通りに外してくれれば馬券的にも魅力的になるかと。阪神牝馬から直行して負けたスティンガーを思い出します。

自分なりに予想してみると

になりました。
不調続きでどうにかしたいのですが...

モデル検証(2024.1.1~2024.3.31)

RMSE値が微妙なのでちょっと検証一覧に。

SouhaTime3000_15209.zip 1.55MB

単勝:的中[24.80%] 回収[89.34%] 複勝:的中[52.36%] 回収[81.72%]
枠連:的中[14.77%] 回収[93.50%] 馬連:的中[10.61%] 回収[91.48%]
ワイド:的中[22.49%] 回収[81.73%] 馬単:的中[6.23%] 回収[105.13%]
三連複:的中[5.31%] 回収[128.37%] 三連単:的中[1.27%] 回収[204.39%]
予想[867] 的中[471] (54.33%) 購入[¥599,400] 払戻[¥752,190 (125.49%)]

SouhaTime3600_15172.zip 10.3MB

単勝:的中[19.15%] 回収[78.14%] 複勝:的中[46.25%] 回収[78.10%]
枠連:的中[9.97%] 回収[72.10%] 馬連:的中[6.69%] 回収[75.66%]
ワイド:的中[17.19%] 回収[79.17%] 馬単:的中[3.69%] 回収[86.30%]
三連複:的中[4.27%] 回収[68.67%] 三連単:的中[0.92%] 回収[63.39%]
予想[867] 的中[413] (47.64%) 購入[¥599,400] 払戻[¥516,120 (86.11%)]

SouhaTime4000_14785.zip 16.7MB

単勝:的中[21.68%] 回収[74.51%] 複勝:的中[52.25%] 回収[85.31%]
枠連:的中[11.11%] 回収[73.64%] 馬連:的中[8.07%] 回収[78.59%]
ワイド:的中[20.76%] 回収[80.95%] 馬単:的中[5.07%] 回収[115.79%]
三連複:的中[4.50%] 回収[75.18%] 三連単:的中[1.15%] 回収[221.63%]
予想[867] 的中[466] (53.75%) 購入[¥599,400] 払戻[¥692,920 (115.60%)]

SouhaTime4500_14675.zip 131MB

単勝:的中[22.49%] 回収[90.14%] 複勝:的中[50.06%] 回収[84.36%]
枠連:的中[11.62%] 回収[72.41%] 馬連:的中[8.07%] 回収[62.86%]
ワイド:的中[19.49%] 回収[69.94%] 馬単:的中[3.81%] 回収[57.38%]
三連複:的中[5.42%] 回収[74.89%] 三連単:的中[1.50%] 回収[72.66%]
予想[867] 的中[447] (51.56%) 購入[¥599,400] 払戻[¥501,460 (83.66%)]

2024/04/05

ML.NETの通常版モデル

ML.NET version 4.0.0-preview24162.2での通常版学習モデルの検証結果を少しまとめてみます。現時点で一番良さげなのは3,000秒x?回で2024/03/23にRMSE 1.5209だったモデルです。

SouhaTime3000_15209.zip 1.55MB

単勝:的中[24.66%] 回収[86.86%] 複勝:的中[52.26%] 回収[81.56%]
枠連:的中[14.84%] 回収[91.35%] 馬連:的中[10.74%] 回収[93.50%]
ワイド:的中[22.59%] 回収[83.47%] 馬単:的中[6.35%] 回収[109.76%]
三連複:的中[5.13%] 回収[132.81%] 三連単:的中[1.34%] 回収[216.37%]
予想[819] 的中[444] (54.21%) 購入[¥566,200] 払戻[¥727,080 (128.41%)]

SouhaTime4000_14785.zip 16.7MB

単勝:的中[21.73%] 回収[74.80%] 複勝:的中[52.26%] 回収[85.87%]
枠連:的中[11.23%] 回収[75.27%] 馬連:的中[7.94%] 回収[79.35%]
ワイド:的中[20.76%] 回収[82.59%] 馬単:的中[5.13%] 回収[117.88%]
三連複:的中[4.64%] 回収[78.03%] 三連単:的中[1.22%] 回収[234.62%]
予想[819] 的中[441] (53.85%) 購入[¥566,200] 払戻[¥673,120 (118.88%)]

SouhaTime3600_15172.zip 10.3MB

単勝:的中[18.56%] 回収[77.30%] 複勝:的中[45.67%] 回収[78.18%]
枠連:的中[10.16%] 回収[73.62%] 馬連:的中[6.59%] 回収[77.11%]
ワイド:的中[17.09%] 回収[81.10%] 馬単:的中[3.54%] 回収[86.48%]
三連複:的中[4.03%] 回収[68.96%] 三連単:的中[0.85%] 回収[57.23%]
予想[819] 的中[386] (47.13%) 購入[¥566,200] 払戻[¥486,160 (85.86%)]

追記 2024.4.7 8:41
もう少しで終わる4,500秒×20回で

SouhaTime4500_14675.zip 131MB

単勝:的中[22.34%] 回収[89.54%] 複勝:的中[49.82%] 回収[84.46%]
枠連:的中[11.36%] 回収[69.76%] 馬連:的中[7.81%] 回収[61.83%]
ワイド:的中[19.29%] 回収[69.96%] 馬単:的中[3.79%] 回収[57.56%]
三連複:的中[5.37%] 回収[70.54%] 三連単:的中[1.34%] 回収[51.99%]
予想[819] 的中[420] (51.28%) 購入[¥566,200] 払戻[¥450,110 (79.50%)]

RMSE値的にはもっと期待したい所なんですがRMSE値が予想結果に全く結びつかないorz となると何を基準にモデルを選ぶかなんですが、やはり検証結果で選ぶべきだと思うけど、これ、単に検証期間に左右されている感じもするので断定出来ないんですね😔

2024/04/03

順位学習72時間途中で断念

今週は夜勤でもう直ぐ出勤時間になるので残り3時間程度でしたが中断させました。69時間程度学習させてた訳ですが

|--------------------------------------------------------------------|
|                          Experiment Results                        |
|--------------------------------------------------------------------|
|                               Summary                              |
|--------------------------------------------------------------------|
|ML Task: regression                                                 |
|Dataset: E:\My Project\MBJuniFull\RaceJuniFull.csv                  |
|Label : Juni                                                        |
|Total experiment time : 249202.0000 Secs                            |
|Total number of models explored: 933                                |
|--------------------------------------------------------------------|
|                        Top 5 models explored                       |
|--------------------------------------------------------------------|
|      Trainer                             RMSE       Duration       |
|--------------------------------------------------------------------|
|791   LightGbmRegression                  3.4759     230.0530       |
|779   LightGbmRegression                  3.4765     230.0350       |
|795   LightGbmRegression                  3.4767     229.3050       |
|790   LightGbmRegression                  3.4800     237.7910       |
|789   LightGbmRegression                  3.4815     232.0780       |
|--------------------------------------------------------------------|

こんな感じでこれ以上の結果が望めないとの判断に至りました。それと、もし明日朝近くまででしたら無駄に思わなかったのですが、出勤時間後3時間弱で終わるんですが、その後10時間程度は単に無駄にPCの電源が入った状態が続くのも気が引けたのも理由です。

今回の最適RMSE 3.4759はこれまでで3番目の結果です。学習モデルは非常にコンパクトでこれまで最高だったRMSE 3.4594のモデルが18.6MBなのに対し、たったの1.22MBです。この検証は

単勝:的中[17.94%] 回収[66.59%] 複勝:的中[46.30%] 回収[84.32%]
枠連:的中[12.86%] 回収[89.29%] 馬連:的中[8.56%] 回収[89.73%]
ワイド:的中[18.40%] 回収[87.15%] 馬単:的中[3.47%] 回収[84.14%]
三連複:的中[3.94%] 回収[110.69%] 三連単:的中[0.58%] 回収[62.41%]
予想[864] 的中[413] (47.80%) 購入[¥597,700] 払戻[¥576,280 (96.42%)]

でした。なにかもうひと工夫が必要かも。

2024/04/02

新規インストール時のバグ修正

アプリ公開するかどうかは依然不透明な状況なんですが、インストーラー作成して仮想マシンにインストールするテストをしてます。これによって洗い出されるバグが結構あります。まあ、以前にも詳細モードの表示なんかは試してたのですが、最近頻繁に使用する簡易モードはテストしていなかった為、色々と処理の漏れが見つかり修正してます。

ソースに修正を加えてビルドしたり再発行したのちにインストーラーの構築。このインストーラー作成に使っているInno Setupがってかまあアプリもデカくなってますし仕方がないのかもですが、15分程度掛かります。ちょっとしたミスをしてやり直しての繰り返しであっという間に時間が過ぎます。修正の度にバージョン管理をしっかりやっていれば何度してるかとか分かったりするとは思いますが、やってません(笑)

どこまでテストが完璧に出来るかは重要なんですが、なかなか限られた時間では限界もあるかもです。そんなのも公開に踏み切るかのカギではあるんですけどね。まずは最低限動作するものを仕上げたいと思ってます。

追記 2024.4.16 16:55
Inno Setupでのインストーラー作成に15分掛かると書いてましたが、ここ最近は7分程度です。もしかしたら、当時見間違えて書いたのかも...