2023/12/31

OMP_NUM_THREADSの件

LightGBM Ver4.2.0のビルド時にリンクされる際にOMP_NUM_THREADSが解決されない問題は環境変数ではなかったです。イシューが上がっておりバージョンアップで必要なファイルが欠け落ちていた模様(プロジェクトファイルの記述的に)で差し替えファイルを適用すればビルドは完了出来ます。

しかし、そのビルドで出来たLightGBM.exeと関連を今までだとAutoMLのビルドで生成されるLightGBM.exeを入れ替えて動いてたものが、多分ML.NET Ver3.0での現象だと思われますが、学習アプリが飛びます😱 まあ、まだリリースされて間もないのでしばらく様子見が正解と判断してAutoMLの吐き出したもので継続してみます。

ただ、学習時間短縮が見込まれるCUDA適用はなるべく早くに実装したいとは思います。

2023/12/29

LightGBM Version 4.2.0のビルド

環境変数 OMP_NUM_THREADS にCPUのコア数を設定する。Intel Core i7-8700使ってますので6に設定する。これがそもそものエラーな気がするんですが、こんなの前バージョンのビルドで指定した記憶が...ちょいちょい記憶が飛ぶ事が有るので断言は出来ない。これしたけどビルド出来ないのでちょっとお手上げ状態。

前回ビルドした記憶が既に飛んでいて、なんで最新ビルドが出来ないのか苦しんでます。取敢えず初心に帰って本家の説明を参考に環境を整える。GPUの助けを受けて少しでも高速に学習出来れば助かるのでGPUバージョンのビルドに挑戦。NVIDIA GeForce GTX 1050 Tiと若干しょぼいGPUですが多少は足しになるかなぁっとね。

  • Git for Windows(64bit) Ver2.43.0
  • CMake Ver3.28.1
  • CUDA Toolkit 12.3
  • Boost C++ Libraries Ver1.84.0

1つ目は問題なくダウンロード出来たんですが、3つ目と4つ目は普段使っているEdgeで何度やってもダウンロード出来なくて...はい、またMicrosoftを疑ってChromeで試すとあっさりとダウンロード開始してくれました。ただ、ここで問題はCUDAの方です。これ3.1GBと巨大なものです。あっ、インストールタイプにローカルを選択したからなんですが、貧相なmineoの深夜フリーの時間まで待って行ってますが終了まで4時間だと😖 今朝まで夜勤で勤務して本年の仕事納めで寝ずな状態で待つのは無理。

どうせ寝て待つならと本家の説明にある最初のコマンドも実行して寝ようかと思う。

git clone --recursive https:://github.com/microsoft/LightGBM

ソースのGitHubからのダウンロードだと思いスタートさせたが意外と早く終わった。

cd LightGBM
mkdir build
cd build

ビルドするフォルダー作成して、明日起床後に

cmake -A x64 -DUSE_GPU=1 -DBOOST_ROOT=C:/local/boost_1_84_0 -DBOOST_LIBRARYDIR=C:/local/boost_1_84_0/lib64-msvc-14.3 -DOpenCL_LIBRARY="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.3/lib/x64/OpenCL.lib" -DOpenCL_INCLUDE_DIR="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.3/include" ..

としてから

cmake --build . --target ALL_BUILD --config Release

でビルド完了する筈。

追記 2023.12.30 10:18
なんとかビルド完了して、いざ学習!って普通にLightGBMのトライアルで学習アプリが吹っ飛んで消えます😖何の表示もないので手掛かり無しで諦めるしかないかも。ビルドで何らかの問題があったのかもですが、特に目立ったエラーとかは無いものの、警告的なものは何となく出てた気はするので、その辺りを対処する必要があるのかも。

追記 2023.12.30 11:22
ビルドの手順をやり直しながら眺めてました。1回目のcmakeの終わりの方でBoostの処理が行われますが、ここで

-- Found Boost: C:/local/boost_1_84_0 (found suitable version "1.84.0", minimum required is "1.56.0") found components: filesystem system
-- Performing Test MM_PREFETCH
-- Performing Test MM_PREFETCH - Failed
-- Performing Test MM_MALLOC
-- Performing Test MM_MALLOC - Failed
-- Looking for inet_pton
-- Looking for inet_pton - found
-- Configuring done (8.0s)
-- Generating done (0.0s)
-- Build files have been written to: E:/My Project/LightGBM-4.2.0/build

って事でMM_PREFETCHとMM_MALLOCがFailedになってるのは問題ですね😱

で、ログを遡ってみると、

CMake Warning at C:/Program Files/CMake/share/cmake-3.28/Modules/FindBoost.cmake:1398 (message):
  New Boost version may have incorrect or missing dependencies and imported

となっている箇所が2つある。ならば試しにVer1.81.0をダウンロードして試すとこれは解決したけど、MM_PREFETCHとMM_MALLOCの問題は解決せず。

アイの歌声を聴かせて

貧相な仮住まいのネットワーク環境下でちょっと久しぶりに良い映画だった。もう何年も世話になってるAmazon Prime Videoですが、学生時代から映画とか好きで沢山見てきました。今月なのか、ちと分かりませんが何見ようか眺めていてふと目についた。基本ジャンルとか特にこだわりは余り無いけど、洋画を見る事が多いかなぁ。邦画はアニメが多い感じです。

前評判とか全く情報が無い状態でいきなり見ました。いや、年齢的にもなんですが、まあ、元々涙もろいんです。それが加齢と共に更になんです。これ、1時間48分なんですが、涙腺崩壊しました😭 好きだなぁ、こういうアニメ。もしかすると1時間以上涙ボロボロだったのですが、ちょっと幸せな気分にしてくれました😂

2023/12/28

Visual Studio Installerは酷い

気が付けば、LightGBM Ver4.2.0がリリースされていたのでダウンロードした。以前にもビルドした事があったんですが、多分23H2のクリーンインストールでVisual Studioのインストール内容が変わってて、まあ、そもそもC++で書かれているらしく、C++とか使わないから入れてなくてVisual Studio Installerを使って追加。しかし、これが非常に出来が悪い😖

まあ、最初デフォルト内容のみC++部分を追加するとWindows SDKやらなにやらが足らんとかバージョンが違うとか。で、現在の仮住まいのネット環境の関係でちまちまやってるんですが、これとこれで行けるかって感じでしてもあれが足りないとか。そこで再度Visual Studio Installerで追加で入れるものを選択するのに、起動してC++部分をクリックしてやらないとインストールする項目の選択が出来ないのでクリック。1回クリックすると選択外れ、再度クリックでC++が選択状態になりそこで追加項目をって既にインストール済みなのに消えてる始末。選択が消えているだけならまだいいのですが、インストール済みのを選択して、更に追加でってしても、結局全てダウンロードしなおしてインストールになる😠 もう残り1カ月切りましたのでひたすら我慢なんですが、光回線環境に早く戻りたい。

はっきり言って、来月でmineoは解約です。まあmineoユーザーはよく安いからって使っているなぁと感心します。電波が入るなら確実に楽天モバイルの方が早いし安い。ああっ、しかし、今後は楽天モバイルの契約も継続するか考えなきゃです。多分ドコモのプランをギガライトからEximoに変更する事になると思うので、楽天市場の5倍が気になるけど...悩む所です。

2023/12/25

長い学習時間に苦戦中

通常用の学習CSVファイルは結局773MBになりましたので基本3,600秒なんですが、先日試しに4,000秒もしてみましたが最適RMSEは0.8290で、3,600秒の最適RMSEの0.8240を超えなかったので、しばらくは3,600秒で行っていこうと思い実行中です。

以前のデータからは最適RMSEが0.7947とかもありましたのでそれを超えられるものが得られればと思ってます。しかし、以前は2,400秒とかで行けてたので回数こなすのも2/3で済みましたが1時間は長いです😔

今年も残す所12/28の開催がJRA最後になるので、それが終わったらそこまでの学習CSVファイルの作り直しをして再度学習となり、金杯に間に合わせる作業になると思いますが、良い新年が迎えられる様に年末年始はひたすら学習作業になるかと。

ちょっと試しているのは現在LightGBMのみの学習にしてます。結局良い感じのモデルってほぼLightGBMなのでFastForestもFastTreeも時間の無駄かもと判断してみました。しかし、そのせいかは不明ですが、結構頻繁にoverflowで終わるトライアルが目に入る。エラーにならずに良い結果になるトライアルが出るのを回数こなしていくしかない感じ。

2023/12/17

第75回朝日杯フューチュリティステークス

通常用の学習が終わらず昨日は全く参戦出来ませんでした。もう少しで3,600秒20回が終わりますが、以前の最適RMSEは0.7947とかだったのですが、現時点て0.8176です。0.7代やそれ以下が出て欲しいですが、今後の課題としておきます。

現時点では阪神の芝は稍重なのでこれがレースまでに良に回復する可能性は十分にあるので馬場状態が変わると予測も変わってくる可能性はあるのですが10番人気サトミノキラリからになってます。もう随分長く参加だけはしてるPOGなんですが、珍しくナムラフッカーが出走してます。こちらは更に人気が無く11番人気😜 松山君の腕に期待したいです。

2023/12/16

学習サンプル500MB超えの学習時間

新馬戦用はシンプルな為、特にミス無くコーディング出来てたのですが、通常用は結局過去5走まで含めたのでコーディングミスがあり、CSVファイルの出力しなおしなんかもあり今日のレースには間に合わず😖 更に基本CSVファイル出力はCsvHelperを利用してるので全データを一旦貯めこんでファイル出力する関係からか648MBになるものでは途中でメモリ不足になる事も。多分OS上で他のアプリとの関係なのかエラーにならず一気に出力出来た事もあるんですが、半分程度ずつ出力してテキストエディターで結合してます。

新馬戦用のCSVファイルは25MB程度なので学習時間も900秒20回として、これまでの最適RMSEが0.9471だったのがあっさりと0.8693が出たので良かったのですが、通常用は500MB以上は60分とかが推薦っぽいので3,600秒20回をしてます。通常用のこれまでの最適RMSEは0.7947とかだったんですが、バグ発見以前に学習させた時に0.8程度の時はありましたが今は1.0を下回らないです。まあ、まだ2回しか終わってないので気長に待って明日にはどうにか良い結果が出る事を期待したいです。

2023/12/14

限界を感じたので大幅変更

現時点で現状の限界点かなぁとひしひしと感じてましたので腹くくって大改造に挑みました。で、既に学習用CSVはどうにか出力終わって新馬用は取敢えず学習済み。今通常用を行ってます。ちょっと強烈なのは通常用CSVファイルなんですが、648MBと巨大なものになりました。学習時間も考慮が必要になるレベルなんだと思いながら、限られた時間なのでまずは2,500秒16回で明日朝終了予定。20回にしなかったのは出社で自宅出る前に終わってないと困るのでって事です。

今回の大幅変更の結果次第ではもう少しだけ可能性はあるものの、ダメだった場合は根本的にまた考え直す必要が出るかもレベルです。ただ、自分が出来る?ってか自分がどうなかこなせる?って感じでそれなりの機械学習パッケージが用意されれば良いのですが、ML.NETにしても他のものにしても微妙なのは時の流れに委ねるしかない😩

2023/12/09

ヒヤリとしたマイカーのアクセル

ここ最近は片道30キロ程度の通勤になりました。18年目の愛車というか、まあ、数年前に自分の愛車を買い替えて、新車を妻用にして、妻が乗っていたのを自分用にしたのですが、特に飛ばして走る事は無いものの、極端に遅い車を追い越す為にフルスロットルした時です。ベタ踏みしたアクセルが感覚的に足戻してもそのままな感じが...追い越しながらブレーキ踏んで、ちょっとラグ有りながら戻る感覚でした。

普段あまり自分で車の整備とかする訳でもなく、同級生が板金屋してるので任せっぱなし。アクセル戻らないとか怖いので確認してもらおうかと思いながら、ちょっと気になり自分で車確認しました。純正のマットを当然の様に使ってるんですが、まあ、年々なのか何かの整備でなのか、ちょっと分かりませんが、アクセルが戻らなかったのは、このマットにアクセルペダルが引っ掛かり戻らなかった様です😨 怖い怖い!マットの位置をしっかりと調整してっていうか、本来のあるべき位置に戻しましたので大丈夫かと思います。

今後は季節的に路面凍結や降雪なんかが気になる通勤路でスタッドレスへの履き替えなんかも検討しなきゃです。これまでそんな心配のない場所での運転のみでしたが、10日後の週間天気でも-4度とかになる場所なので予算準備して対策が必要な感じです。

Microsoft.ML.AutoML Version 0.21.0の動作

新バージョンでの放置しながらの学習を進めてます。IMonitorクラスのバグ(?)は別として、以前のバージョンでみられたトライアル番号がクリアされずに累積されるのが、規定時間で1回の学習を終えるとリセットされる様に改善されてます。

相変わらずトレーナーは3つに絞った学習をさせてます。

  • FastTree
  • FastForest
  • LightGBM
以前のバージョンではログを見てても、ほぼLightGBM状態だったんですが、新バージョンでは3つがランダムに使われています。まあ、これ自体が良いのか悪いのかは別として最適な学習が出来ているなら改善されたと判断できるのかなぁと。

現時点では新馬戦用モデルのRMSEは0.9484を採用、通常用モデルのRMSEは0.7976を採用してみました。実は学習を新馬戦用は900秒40回とか通常用は2400秒20回とかを秒数を多少変えたりして行ってるんですが、全てのモデルが使えるかというと、最適RMSEだと思い採用しても実際にそのモデルを使うように指定してもエラーになったりします。これは以前のバージョンでも現象確認してたのでMicrosoft.MLなのかMicrosoft.ML.AutoMLなのかのバグ(?)なのかなぁと思ってます。ああ、どうやら今回のリリースって総称してML.NET Ver3.0のリリースって事の様です。

2023/12/04

新しいバージョンで少し進展

途方に暮れながらもアイビー先生に質問したり...まあ、そもそもネット上に情報が無いのでまともな回答は得られませんが😓 試せる事を色々としてたんですが、そもそも、前バージョンでは問題なく動くものがバージョンアップで動かない原因として指定した学習時間が終了してもトライアルが正常に終了せず、'e2'が辞書に無い的なエラーでそのままになるのが一つの症状なんですが、これはAutoMLExperimentに.SetCheckpointを使って万が一の時の情報保存だったかの指定を随分前にしてたんです。いや、前バージョンではこれ入れてても何の問題も無かったんですが、試しにコメントアウトしてみると普通に動く事が分かりました。

まあ、確かにタイムアウトして終了にしても、このSetCheckpointも終了時の処理で関連してるんだとは思うけど...取敢えず1つはクリア出来た。SetCheckpointの恩恵を得た記憶はないので今後は使わない方向でも支障は無い筈。

ただ、相変わらずIMonitorが本来取るべき動作が出来ていない。モニターなんで、トライアル走らせながら感覚的にはApplication.DoEvent()が適度にされているイメージといえばいいのか。これが前バージョンまでは的確に行われていたので、中断ボタンを押せば中断は出来たし、学習アプリ自体もRichTextBoxのログ表示が行われ、いやまあ、ログ表示自体はされてますが、アプリのウィンドウはイベント処理が出来ないので移動やサイズ変更等一切受け付けない状態です。苦肉の策でIMonitorのメソッドのあちらこちらにApplication.DoEvent()入れるとちょっとマシになるとか😒 本来の方法とは全く関係ないコーディングを入れなきゃとかは本当に避けたい所です。

それでも、放置しておけば学習自体は出来るので進めてみます。

2023/12/01

前途多難なMicrosoft.MLとMicrosoft.ML.AutoML

11月28日に新バージョンが正式にリリースされました。

Microsoft.ML Version 3.0.0

Microsoft.ML.AutoML Version 0.21.0

基本的にPreviewリリースがそのまま正式バージョンとしてリリースされたんだと思います。早速入れて試すと、今までのソースのままでは全く動きません。変更点とかのドキュメントとかも無いので途方に暮れてます😖 流石Microsoftクオリティです。

どのトレーナーを使うかのオプション指定をSweepablePipeline設定時に指定するんですが、これまでのバージョンではuseLbfgsだったものがuseLbfgsPoissonRegressionに変更されてたりはシンタックスエラーで簡単に変更が分かったので修正も簡単でした。しかし、全く動かないのはエラーもなくなので何が悪いのかが不明。

せめてML.NET Model Builderが最新バージョンをリリースしてくれれば、それ試しながら様子見とかも出来るんですが、徐々に打つ手が無くなってます😭

2023/11/30

相変わらず苦戦中

Microsoft.MLをVer 3.0.0-preview23511.1にして良い部分と相変わらず不明な部分が多々有り路頭に迷う日々なんです。で、これ書き始めるのにバージョン確認するのにNuGetパッケージの管理画面を開くと、なんと!正式バージョンがリリースされてます😮 ただ、怖いのはMicrosoft.ML.AutoMLのモニター機能がバグってるのにそのままリリースされたのかが気がかりです。

これ以外にもVisual Studio Community 2022もマイナーバージョンアップがある模様なのでそれも含めて更新したいと思います。ただまあ、相変わらずの仮住まいのネット環境なので、35分程度待ってmineoの夜間フリー時間帯に入ってから行います。楽天モバイルは静岡県内で基地局増やしました的な案内が来てましたが、相変わらずここは「圏外」です。楽天が悪いのかロケーションが悪いのか...ここ103号室なんですが、もしかすると101号室では繋がるのかも?試した訳じゃないのであくまでも憶測です。

2023/11/28

11月を検証してみた

非常に厳しい実践配備なので検証してみました。

新馬戦
単勝:的中[22.22%] 回収[95.83%] 複勝:的中[41.67%] 回収[67.78%]
枠連:的中[9.38%] 回収[80.94%] 馬連:的中[5.56%] 回収[118.06%]
ワイド:的中[16.67%] 回収[102.78%] 馬単:的中[5.56%] 回収[275.00%]
三連複:的中[2.78%] 回収[101.94%] 三連単:的中[2.78%] 回収[499.72%]
予想[36] 的中[16] (44.44%) 購入[¥24,800] 払戻[¥47,990 (193.51%)]

通常用
単勝:的中[21.93%] 回収[116.62%] 複勝:的中[49.56%] 回収[91.58%]
枠連:的中[13.62%] 回収[204.79%] 馬連:的中[7.89%] 回収[259.69%]
ワイド:的中[15.35%] 回収[119.52%] 馬単:的中[4.39%] 回収[402.32%]
三連複:的中[4.39%] 回収[98.16%] 三連単:的中[0.88%] 回収[291.67%]
予想[228] 的中[114] (50.00%) 購入[¥158,100] 払戻[¥358,160 (226.54%)]

順位
単勝:的中[14.02%] 回収[104.17%] 複勝:的中[36.74%] 回収[84.89%]
枠連:的中[6.53%] 回収[124.61%] 馬連:的中[4.17%] 回収[184.05%]
ワイド:的中[13.64%] 回収[123.94%] 馬単:的中[1.89%] 回収[280.98%]
三連複:的中[1.52%] 回収[16.70%] 三連単:的中[0.00%] 回収[0.00%]
予想[264] 的中[100] (37.88%) 購入[¥182,900] 払戻[¥240,340 (131.41%)]

まっ、単純に、今実戦配備してるのは順位なんですが、一番悪いものを選択しているのはこれで分かりました。ただ、やはり、1カ月分のみ見ても12月はどうなるかは分からない。更に、今のモデルは10月末までを学習させてますので、直後の1カ月と次の月が同じになるのかは未知。

で、内容眺めてみるとここまでワイドで攻めてはいましたが、それが間違いとは思いません。しかし、ちょっと気になるのが馬単の回収率ですね。順位では的中率1.89%では回収率の信頼度も低いとは思います。馬単と馬連をワイドに絡めて行くのが良さそうに見えますね。ちょっと戦法変えて12月は行ってみようかと思います。

2023/11/25

Microsoft.ML&Microsoft.ML.AutoMLの新たなPreview

気が付けば、新たなPreviewが先月リリースされてました。強行的に入れてみましたが、結果的には相変わらずMicrosoft.ML.AutoMLのモニター関連はNG。更に何やら'e2'パラメーターが云々言われて時間が来てもうまく終わりません😖 これって自分が特殊な利用をしてるのか、単にテストが不十分なのかが微妙なんですけど、少なくとも前バージョンで全く問題無く(?)動いているのにPreviewにしてみると動かないとかはやめて欲しいですね。

Previewは今年5月にリリースされたものがあり試したけどNGで、前月また新たにリリースされたものがあったので試したけど結局NG。ただ、NGなのはMicrosoft.ML.AutoML側のみで、Microsoft.MLとしては問題無く、しかも、ここの所微妙なエラーを起こしていたMLContext関連だと思われるエラーが無くなった気がするのでMicrosoft.MLのみPreviewにして、Microsoft.ML.AutoMLはPreviewにはしない方向で行ってみようかと思います。

Microsoft.ML.AutoML自体はVersionが0.20.1という、まあ世間一般的にはVersion 1.0未満なテスト的な存在にも思えるものなので、これをMicrosoftとしてPreviewではなくリリースしてるのも理解出来ない部分はありますね。更にPreviewのバージョンが若干上がっても、含まれる(?)LightGBMが古かったするのが全く理解出来ない。前回のPreviewではモニター機能のみ問題があると思ってましたが、今回のPreviewではそもそも時間が来て終わる際にエラーになるとかもうね、全く使い物にならないのに何故Previewだからとはいえ出したのが全く不明です。ただ、仕様変更とかがあり、使い方が変わったからって理由だと分からないでもないんですが、だったらその変更内容が分かる様にして欲しいです。まっ、その辺りを単に自分が分かってないだけって落ちだと困るんですけどね。

2023/11/19

C# 12 & .NET 8

確か先日の火曜日(11/14)辺りにMicrosoftがイベント有るって感じのメールや諸々目にした気がしてましたが、Visual Stuio Community 2019から2022になった時は開発環境自体が64bit化されたりで大きな変化だった記憶で、更にC#11になったりとかでnamesapceが変わったりした記憶がありますが、C#自体まだまだ習得しきれてないのにC#12になったと。更に.NET8も出てきたというけど、そもそも他のNuGetパッケージなんかが問題ないのかも気になる所。

.NET6→.NET7は特に問題なくプロジェクトのターゲットフレームワークの選択変更だけで行けましたが、今回はどうなのかは気になる所。Visual Studio Community 2022も先週どこかでバージョンアップが来てたのでVer.17.8.0にはなってるのでプロジェクトで.NET8も選択可能になってました。これ変えると実行フォルダも変わるので、ちと面倒なんですよね。データベース関連はコピーすればってかフォルダのリネイムで行けるかな?って試しちゃおうかと思ったんですが、機械学習プロセスが動いてるのでちょっと今のステップ終わってから試そうかと思います。って危なかった😓 これまでフォルダはnet7.0-windowsだったけど、今回はnet8.0-windows7.0になってた。プロジェクトでターゲットフレームワークを.NET8にしただけで空のフォルダは出来ていたので中身全部移動しました。しかし、これでもやはりアプリの設定はコピーされない。これって隠しなのかレジストリになるのか未だに知らないorz

HLDS BH14NS58 BL BLK

3年程前に購入してた現在のPC用内蔵ブルーレイドライブですが、手元に4K Ultra HD Blue-rayがあり、PS5やディーガでは視聴してるんですが、ふとPCはどうなんだろって事でドライブにメディア入れても反応無。PCでの再生には高いハードルがある事は認識してましたが、まさか使っているPCのドライブ3年前に購入したのでもしかしてと期待したのですが😖

現状価格.comで4K Ultra HD Blue-rayの再生対応ドライブってほぼパイオニア一択ですね。HLDSも薄型のやつが表示されてましたが、あれはデスクトップに内蔵可能なのか不明。確か3年前に購入時にも若干悩んだんですが、パイオニアのほぼ半額だったので諦めたってか、まあ、そもそもPC自体の条件も満たしてない。あの頃は外部GPUはNGでGPU内蔵CPUが対象だった記憶があるんですよね。「Intel SGX対応CPU」「Intel SGX対応マザーボード」が必須なんですね。インテル第7~10世代のCPUが対象らしく、現行世代のCPUには無くなったものらしいので、今後PC組直し時に検討する以前の問題で、CPUを4K Ultra HD Blue-ray再生の為だけに古い世代を選択する事は100%無いです。

PS5は息子にあげちゃいましたので、ディーガのみが残る事になります。このPCは既に5年過ぎてますのでどこまで行けるか分からないけど、そろそろ予算確保しなきゃな感じなんですが、その前にiPhone Xs Maxが多分iOS18では見捨てられる可能性大なのでiPhoneの買い替えもある。こっちの方が妻と2台分なので高額出費で辛いです。

2023/11/15

山岳部の移動用

今回の通勤路は市街地ではなく山岳部を抜けてくんですが、自分は基本車内ではラジオなんです。しかし、これが全く入りません😖 静かに移動もありかもですが

SOARUN【Bluetooth5.3新登場】FMトランスミッター 車載充電器 QC3.0急速充電 PD20W対応 USB*2口/Type-C*1口 3台同時充電 Siri&Google Assistant対応 ハンズフリー通話 カーチャージャー シガーソケット12~24V車対応 LEDディスプレイ 7色ライト 電圧測定 周波数87.5-108Mhz 日本語取扱説明書

とかいうのをamazonで購入。いや、実際にはMicrosoft Rewardsとかで貯めこんだギフト使ったのでセールで21%引の1,584円だったのを頂きました。ちょっとナビのチューナー操作も久しぶりだし、このデバイスも取説日本語でもありましたが小さくて読むの苦労しました。流石に妻が乗ってるタントは3年前購入なのでiPhoneをBluetoothで簡単に繋げてますが、多分、エンジンかけてからiPhone側でBluetooth接続して聴きたいソースを再生という手順は必要かも。

昨夜RadikoもiPhoneに入れてみましたが、amazon musicも入ってるし、昨夜PCにも久しぶりにiTunesもダウンロードしたのでインストールしてiPhoneと同期させて確か60時間程度分はある音楽データ入れ込めば2カ月以上は同じ曲聞かないでも行けそうなので、ぼちぼち何が良いか試しながらかな。Radikoもamazon musicもパケット消費するかと思うので、それがどの程度なのかも確認しながらにします。

データベースの主キー

明日からは自宅待機ではなくなります。マイカー通勤で片道でも相当な距離走らなきゃなりませんので、若干しんどくなるかも😓 まあ貧乏暇なしでのんびりもしてられません。これまで程は無理でも可能な限り作業は続けます。

ちょっとJRA-VANの掲示板への書込みをヒント(?)にってか、まあ、以前から気にしてて、実際に検索時には使ってないキーが開催回と開催日目なんですが、JV-Data仕様書的にはキー項目として記述があるんです。なので、これまでは主キーとして含めてましたが、開催年月日、競馬場コード、レース番号があれは開催回と開催日目が無くても特定出来るので主キーから外してみる事にしました。でまあ、一連の修正を終えて8月のJV-Linkのバージョンアップ以来のフルセットアップを実行してみました。前回は調子良くて2時間14分とか書いてますが、今回はなんと!3時間30分😨 単に機械学習プロセスが並行して稼働してたのが影響したのか、今回の主キーの修正が原因なのかは不明ですがちょっと長い。まあ既に大量の修正入れたので、しばらくは様子見ながら。

2023/11/11

ちょっと苦労したのでIDisposable

出馬表表示で自分が予想で見たいものを次から次へと追加してって事を繰り返した見返りで、開くのにやたら時間が掛かるようになっていてどうにかしなきゃとしてました。SQLiteへのSQLとか諸々改善したつもりでも全く効果が出なかったので、いっそシンプルなのを新たに用意して逃げてみた😉

まあ、必要最小限な感じですね。元々のやつは
こんなで、更にタグになっているのでグラフなんかもあるんです。あっ、上と下で予測が違うのは若干バグ的なのはシンプルな奴は今使っているので修正してて、元々の方も同じ修正今後施します。

で、シンプルな方で更にスピードアップする為の修正してて機械学習クラスが1回目は問題ないのに2回目使うとエラー吐くので、まあゴミ残ってるんだなぁと。で、IDisposable実装?派生?まあそんなとこです。MLContextは問題ない? PredictionEngine<>にはDispose()が実装されているので機械学習クラスのDisposeで明示的にDisposeさせて問題解決出来ました。

2023/11/08

18年目突入のダイハツ アトレー

最近は在宅勤務中であまりにも車に乗らないので、何度かバッテリーがあがっちゃったりする始末。2週間前に妻を送って行く際に、「あれ?エアコン送風しか出てこないや」って言いながら、送った帰り道でやっと冷たい風が出たので、ガスが足りなくなってきたかなぁって程度で思ってたんです。しかし、先週ちょっと乗った後エンジン切る前に異音に気が付き、まあ週末には板金屋の友人の所でチェックしてもらう事になってたので確認してもらうとガス入れなおしてもダメでコンプレッサー交換って事で入院。

本日交換終わったのでって取りに行きましたが、コンプレッサーだけではなく高圧リキットチューブとか何とかが詰まってたのでそれも交換して6万円弱😭 貧乏は更に辛い日々が続きます。本来なら新車に乗り換えたいけど、そんな予算は全くないので妻曰く6万円で車買えないからってね。

Microsoft EdgeとGoogle Chrome

基本的にはOS標準で事足りるならわざわざサードパーティ製のアプリの追加しない方が好きです。まあ、そもそもMicrosoftという会社の信頼度からして微妙なのでOSが悪いのかサードパーティ製のアプリが悪いのかを考えたくないって事なんです。

ブラウザーはその昔まだInternet Explorerだった頃にはFirefoxやWaterfoxとかにも手を出したりChromeにした頃もありましたが、ここ最近は特に問題ないかなって事でEdgeを使ってます。EdgeもChromeの技術を取り込んできてるからって話もあったかと。プラグインなんかも同じものが使える感じで良いのですが、先週からちょっとしたサイトにアクセスしてやらなければならない事があったんです。しかし、説明通りに進めているのに上手く行かない。対応OSやブラウザーにはWindows11もEdgeも書かれてるので疑わなかったです。今週末までにやらなきゃならないので、必死にやってました。何が悪いんだろ?って途方に暮れてました。

いや、随分と前に何かでも散々躓いてブラウザー替えたら出来たって事がありました。まさかと思いましたが、既にOSのクリーンインストールしてたのでわざわざChromeをダウンロード。なんだ、小さいなってインストール始めると「ダウンロードしてます」って😖 最近の流行りですね、これ。インストーラーは小さくて、インストーラーが本体ダウンロードしてインストールするってパターン。なのでオフラインインストーラーを再度ダウンロードしてインストール。でまあ、あれだけ苦労した作業があっさりと終了しました。ブラウザー違いでサイトがEdgeに対応しきれてないのかWindows11 22H2までなら良かったのかは今となっては不明。少なくともWindows11 23H2でもChromeならOKでした。これ、そのサイトの管理者は世間的にプレビューではなく正規なバージョンとしてWindows11 23H2がリリースされたのだから動作確認して対応出来ないまでも動作環境として注記して欲しいですね。

Microsoft Rewards 9回目

 前回から48日なのですが、ちょっと思ったよりも長かった。というのも、スマホでも少しやり始めてたのでちょっとは早まるかなぁと期待してましたが、前回は50日かかった的に書いてますので何ともです。まあ、2カ月かからずに600円。楽天の改悪なんかも騒がれてる今なら十分でしょうかね😁

2023/11/03

ファクター追加はもうない?

ここまでの新馬戦と通常用は14項目と60項目でしたが、前にもそろそろネタ切れ的な感じで書いたとは思いますが、今回が最終になると思います。特に新馬戦用は、まあ、絶対に無いかと言われたら無くもないんですよね。例えば、今父、母、父母、は項目として入れてますが、これ以上の血統情報は可能です。しかし、それがどこまで学習に反映されるかは疑問がある。単に複雑にしてって事では手を出す意味は無い。血統で予想する方達はそれこそ3代どころかそれ以上で、インブリードとかも加味してるんだろうとは思いますが...機械学習だから試すのはそれ程の事ではないのですが、期待出来るのかなぁ😔

TensorFlowもまだ続けてますし、今回のファクター追加以外にも学習データの正規化なんかも試そうとしたんですが、簡単な話では無いですね。いや、既に正規化なんかも実装されているので、それ利用して学習前にデータに正規化とかするのはメソッド呼ぶ程度と簡単なんです。しかし、それして学習させた後にそのモデルに予測させるのが若干項目の与え方が理解出来なかったです。例えば、勝率という項目を正規化なのか標準化なんかを施した場合、項目は勝率ではなく別の項目名、例えば標準化勝率とする訳です。そうすると、当たり前といえばまあそうなんですが、予測する際の与える項目も勝率ではなく標準化勝率としなければならない感じなんですが、これ、面倒だから標準化施した項目名もそのまま勝率にしてみるとどうかとか、試すのがコード修正してテストして、検証して結果がどうかとか確認後にダメだったら元に戻す。ああ、こんな状況の為にバージョン管理ソフトも導入すれば楽になるんだとは思うけど、面倒が面倒を呼ぶんですよね。

まあ、ファクター追加も決してそんな余分な作業もしながらでしたので、エラーになった時に何やらかしちゃったかとかもう大変なんです。でも、新馬戦用14→16項目、通常用60→62項目として、CSVの準備をし学習させてます。明日以降の今週末に間に合えば良いかなぁとは思ってますが、先週末も散々な成績で...あっ、今回新たにCSV作成だったので丁度先月終わりまでに延ばしてみました。

電源管理

ここ最近のWindowsインストール用ISOイメージはDVD4.7GBには入りません。DVD-DLが必要になるんですが1枚目は焼きミスで途中で止まり、2回目に一応書込み後にチェックするオプションもつけて40分程度で焼き、いざインストールと思ったんですがなんともBIOSから指定出来ない😒 あまりBIOSいじりまわすのは好きじゃないので断念し、ISO→USBツールのRufusを使ってみました。BIOSで選択する際、何故かUSBに2つのセクターがあると😦 まあ、初めて使ったツールだし1つ目を選択して無事にクリーンインストール完了。

大体復元は終わりました。

クリーンインストール後にOS関連のいつも設定しなおす部分で昨日「あれ?どこ行った?」と探しまくって見つからなかった項目で、どの程度の時間PC放置するとスリープするとかなんですが、昨夜は夜通し学習や諸々の処理させながらと思い就寝。今朝起床してPCの電源ランプが点滅してる😧 再度[システム]>[電源]確認すると昨日は表示されていなかったのに15分とかで表示されている。つまり、寝て直ぐにスリープしてたorz

今更だけど、本来こんな感じにしてたのにって事で設定しなおしました。今回の23H2ではなにかが微妙な動作してる気がする。Edgeなんかも以前のPCを復元しますか的な所を新規を選択。パスワードもお気に入りのブックマークも無くなってたので、「ありゃりゃ」と渋々1つずつ記憶を頼りにブックマークするか~ってやっている時に、お気に入りがツールバーに表示されないのを設定から指定部分探してたりした後に、急にお気に入りも諸々復元されました。

そうそう、JV-Linkの利用キーがVer4.9.0の作業時に仮想マシンに入れたりした後に再発行回数制限に達したとか言われてたけど、月が替わったりすれば元に戻るかなぁとかスルーしてたんですが、そのままだったので、既に1つ目は再発行とか出来ない状態だったので2つ目の仮想マシンのやつを再発行して今回利用して、サポートにお願いメール出した。

2023/11/02

Windows11 23H2

昨夜mineoの夜間フリー時間開始の22:30からISOイメージと起動用USB作成アプリを動かしたまま就寝し、今朝4時頃起床してどちらも完了しているのを確認しクリーンインストール作業開始。夜間フリーは7:30に終了してしまうので、それまでにOSのクリーンインストールとVisual Studio Community 2022のインストールを完了すべく作業進めてました。OSのクリーンインストール後に一応昨夜は夜通し稼働ししてたPCを少し気遣って一旦シャットダウンして10分程休ませてVisual Studio Community 2022のインストールを開始。ここでちょっと欲張ってというか、後々追加するのは嫌だと思って諸々選択したのもミス。これ最小限にすれば3GB程度なのは先日確認済みで、今回は約7GBとなり後悔しましたがまあ仕方ない。1時間程度は掛かる計算で待ち時間使ってエプソンのプリンターをインストールしたりしたのも選択ミス。まあ、そんなミスもmineoが当たり前ですが光回線とは違い激遅なのが原因なんですがね。しかし、それよりも問題は、色々しながらたまたま見たインストールしたOSのバージョンなんですが

え?え~っ!昨夜mediacreationtoolを新たにダウンロードしてUSBに入れたのにorz 実は仮想マシンに念の為試しにISOから仮想マシンを新たに作成してクリーンインストールしてみましたが、そちらは23H2でした(当たり前ですが)。mediacreationtoolでは特にWindows11としか選択出来ませんので、マイクロソフトが最新をまだ入れ替えてないだけかと思われます。態々メディアに焼いて再度やり直すかは悩む所です。まあ、仮にそれするにしてもメディアを何処にしまい込んだかも問題です。やれやれです。昨夜は早過ぎて今夜再度mediacreationtool試して変更されているか確認が出来ないのがなんともです。いや、USBのルートに出来ていた何個かのファイルの更新日が今年5月とかだったと記憶してます(既に消去済み)が、作り直して日付で違いは確認出来るかもですが怖い。明日から三連休なので今夜多少遅くなっても作業続ける事は可能なんですが、こういうのほんとに勘弁して欲しいです>マイクロソフト!

これも光回線環境ならな~んとも思わずやり直してますけどね😔

2023/10/31

パケット制限

mineo生活も早1ヶ月。明日からはマイピタ20GB+パケット放題プラス+夜間フリー体制になるので作業再開です。先週も書きましたが、Visual StudioでNuGetパッケージのインストールも当たり前ですがパケット消費します。今朝確認したらmineoで今月大体100GB超えた程度です。実際には速度制限で1日地獄見たり、先週末も自粛したりで抑えに抑えてなので普通に過ごしてたら200GBとかは行くんだと。

建替え終えて戻った時用に既にドコモ光の申込は済んでます。残り3か月程度なんですが、無事に過ごせて、予定通り建替えも終わって戻れると良いんですがね。まあ、それでもそれまで、のんびりはしてられないです。明日からTensorFlowのONNX形式ファイルの読込とMicrosoft.MLでの利用を試してAutoML以上の結果が期待出来るのかの検証とか。やる事は山ほどあります。

ドコモ光ですが、価格.comの特典が他のポイ活の条件より良かったので選択しました。

GMOとくとくBBドコモ光ホームタイプ2年契約
契約事務手数料(ドコモ光・ドコモ光テレビオプション) ¥3,300
ドコモ光新規工事費無料
ドコモ光戸建・タイプA2/西 ¥5,720/月
ドコモ光テレビオプション ¥825/月 計 ¥6,545/月

開通月を含む4ヶ月目に¥45,000キャッシュバック。その前にdポイント2,000が付与されるのかな。2年途中の解約違約金¥5,500。あっ、乗り換えでの解約違約金¥15,000も一応対象になるとの事でした。

ドコモ光開通後に携帯電話の料金プランをどうするのかが問題かもです。今年7月(?)だったかの新プランeximoに切り替えるべきか。現在ギガライトなんですが、

ギガライト2(1GB) ¥3,465
割引サービス -¥1,760
オプションサービス ¥1,543
計 ¥3,248

eximo(1GB) ¥4,150
割引サービス -¥2,827
オプションサービス ¥1,543
計 ¥2,866

となるのかなぁ?オプションサービスは安心なんちゃらを調整するともう少し下がるかも。今はかけ放題を楽天モバイル¥1,081でしてますが、現状トータル¥4,329なのが¥4,846で1回線でとなると...どうなんだろ?楽天モバイルの楽天市場でのポイントアップやドコモで1GB近くになると楽天モバイルに切り替えて3GBまで行けるの考慮すると若干現状維持なのかも。まあ、eximoと楽天モバイルでも良いのかなぁ。

2023/10/29

第168回天皇賞(秋)競馬法100周年記念

ここの所取り組んでるTensorFlow関連でちとトラブルに見舞われて間一髪地獄を免れました。事の発端はONNX形式ファイルなんですが、このMicrosoft.MLでの利用で苦労させられてるんです。金曜日にMicrosoft.ML.OnnxRuntimeとMicrosoft.ML.OnnxTransformerが必要になるという感じになり、NuGetパッケージの管理でインストールを試みたんですが途中でハング(?)したと思い、色々とやり始めてアイビー先生のアドバイスでローカルキャッシュのクリアかなにかのコマンドを実行したら、これまで何も問題のなかった既にインストール済みのNuGetパッケージが悉くエラーになる始末orz

色々試すも改善されない感じだったのでVisual Studioのアンインストールからの再インストールする事に。これが今のVSのインストーラーってインストーラー単体のダウンロードは以前してあるんですが、インストール実行時にVS本体のダウンロードしてインストールになるんですよね。で、本体が3GB程度と表示されてたのでmineoのパケットを考えながら調整。マイピタの今月の残りも気にしながら、パケット放題プラスの3日間10GBの制限はおおよその予測しか出来ないのでビクビクしながらの作業。Visual Studioの再インストールでも症状が改善せず、開発しているアプリ本体のプロジェクトではなくAutoMLのプロジェクトで色々と試すんですが、インストール済みのNuGetパッケージのアンインストールすら出来ない。

これ、何が問題って結局の所、まあmineoの速度の問題が大きかったです。そもそも最初にハングしたという判断も、Microsoft.ML.OnnxRuntimeとかは107MBとかあり、かなり大きい感じなんです。なのでダウンロードにも時間掛かりNuGetパッケージの管理からのインストールでハングしてる感じになるんです。更にMicrosoft.MLやMicrosoft.ML.AutoMLなんかも大きいのでアンインストールでも時間が掛かるっぽいです。更に今使っているホームルーターがちょっと問題があるんです。メーカーサポートとやり取りして送ってくれれば調べますって言われましたが、これが今自宅の主力ネット回線なので在宅勤務したりしてて無くなると仕事にならないという事でだましだまし使ってるんです。ポイ活でクリックしてみたいなのを一気に6カ所とかやるとネット回線が切れます。復帰には電源のオンオフするしかないんですが、多分これと同じ症状がNuGetパッケージのインストール時にも起きてるんです。まあ、依存関係のパッケージなんかもバンバンダウンロードしてインストールするのでネットが切れちゃうんですがそれが表面上見えない。ポイ活のクリック時の切断だとクリックで開かれるはずのサイトが悉く見つからないとかでサイトが開かれないので気が付くのですが、NuGetパッケージマネージャーはどうやら一定時間反応が無いとタイムアウトしてるんですが、依存関係のパッケージ全てに対して処理後に、これとこれがタイムアウトしてエラーですって感じに最後に纏めて報告してくるんです。

NuGet Gallaryから個別にダウンロードしてローカルからインストールする方法をとり、ダミーのプロジェクトに必要なNuGetパッケージをインストールすると本来のプロジェクトも無事にエラーがなくなりNuGetパッケージを認識出来る様になりやれやれでした。そんな影響で昨日は1日ネット自粛する事に。

で前置きが長くなりましたが、天皇賞(秋)です。11頭と寂しい感じですが、インイノックスが断然の一番人気。勝てないと判断して出走見合わせた陣営も多かったのかな? この馬にダービーで勝っているドウデュースが2番人気。固い決着になりそうですが

◎ アドマイヤハダル
○ ダノンベルーガ
▲ イクイノックス
△ ジャスティンパレス

と出ました。4-11ワイドが61倍とかなのでその1点のみで購入済み。

2023/10/26

TensorFlowのバージョン

Pythonの最新バージョンは3.12.0で先日インストールしてあったのですが、諸々のライブラリがこの最新バージョンには未対応で使い物にならずアンインストールする事に。で、確かその前のバージョンは3.11.5とかまで行ってた気もしますが、入ってるのは3.11.4でした。まあ、そこは特に問題が出なければ放置で。

TensorFlowの最新バージョンは2.14.0なんですが、今回の処理として学習済みモデルを保存してMicrosoft.MLで読込んで予測に利用するのが目的です。TensorFlowに追加で

  • onnxruntime
  • tf2onnx
  • onnxmltools
の3つが必要なんですが、protobufのバージョン依存関係が解決出来ません。基本的に3.20.2がこの3つでは依存しててTensorFlowではこれ以上が必要となり解決出来ませんでした。TensorFlowの2.13.*のインストールを試みましたがダメでした。この3つを先に入れた後、TensorFlowの2.14.0を入れてダメなのでアンインストールしてとかやってた為に余分なゴミが邪魔したのかもなので改めてトライしようかとは思います。

Pythonって仮想環境とかでライブラリーを揃えて使うっぽいんですがなかなか面倒です。

2023/10/25

Terminalの幅

Pythonとか基本コンソールなんですが、Visual Studio Community 2022でも開発は可能なんだと思いますが、なんとなくって程度の話ですがVisual Studio Codeでやってます。Pythonでの開発って仮想環境とか諸々絡んだりして、まあ自分が理解出来てないだけとは思うけど納得の出来る状態に出来たのがVS Codeだったって事なんです。で、VS Codeで実行するとターミナルに表示されるんですが、新馬戦用の時にはあまり気にせずにゴリゴリ進めてました。画面右側にEdgeがあり、そこでアイビー先生とかの助言を参考にしながらコーディングするのにVS Codeのサイズも幅を狭くしてやってたんですが、TensorFlowがモデルを学習してる時ってその進行状況を表示してくれるんですが、画面がバンバン流れる感じだったんです。ただ、1回目の実行と2回目少しいじって実行した時となんとなく表示が「あれ?」ってなった部分があったりしてました。

今回通常用の走破タイムのモデル学習は新馬戦用と比べると途方もなく時間が掛かります。って事はその分画面が流れるんですが、ふと、これって画面の幅が足りてるのかなぁと気になり広げてみました。すると流れていた画面が流れなくなりました。コンソールアプリで見かけるってか、Linuxなんかでコンソールでアプリのインストールとかしてるとその進行状況を表示するのにも、あれって単にラインフィードせずに同じ行に書き込む事でやってるんだと思うけど、あれをやはりTensorFlowでもやってるっぽいですね。で、ターミナルの幅が足りないとスクロールしちゃうんですね。幅が足りる様になったらその行で進行状況が表示されました。これ、数えてみたら130文字/行以上にしなきゃダメですね。VS Codeでターミナルって左側にエクスプローラーとか表示させたりするので窓の大きさは実際には150文字/行とかが必要ですね。まあ、今となってはそんなPC無いと思うけどVGAじゃ表示出来ませんね。

新馬戦のモデル学習では10エポックでも確か10分程度だった記憶なんですが、通常用では多分既に6時間近くたってますが未だ8エポック目が終わらないって辺りです。なんにしても、これが終わったら、これらの学習済みモデルで予測走破タイムを使って順位学習用のCSVを出力して、それを元に今度は順位学習してなのでその辺りの作り込みも進めます。

CSVファイルの閲覧

学習データでCSVファイルを使ってますが、あまり眺めた事がなく、テキストエディターで開いてザックリ見る事はありましたが、見づらいなぁって程度でいました。今回PythonでTensorFlowでのモデル学習させるべくコーディングとデバックしてて、既に自分が何をしていたのか記憶が定かではなかったり😓 年齢的にも不思議ではないもののその性にはしたくもないんです。アバウトな記憶なら確実にチェックしてからコーディングすれば良いのですが、なんでも勢いで進めちゃう性格で突っ走ってます。今回CSVファイルの各項目が数値的なものか分類的なものかの指定で、その項目が既にどっちだったかというか、そもそも何だったのかネーミングも何故そうしてるのかすら忘れてる始末。TensorFlowでエラーになり確認して初めて勘違いに気づきました。

普段CSVを本格的に開こうと思うと表計算ソフトが真っ先に思いつきますが、うちは普通にMS OfficeとかありませんのでOOoなんですよ。で、開けようと試んだのですが途中でハングする始末😖 で、軽い閲覧ソフトでも探すかって事でたどり着いたのがCassava Editorでした。サクッとダウンロードしてインストール不要って事で起動して確認して「ん?」分類だと思った項目が数値でしたorz

ここで更に問題が...走破タイム学習時の指定がその辺りを間違えている事に今更気づく始末。これはマジで衝撃の新事実で、走破タイムの学習からやり直しです。これで良いモデル見つけて順位学習用のCSV出力して、順位学習のやり直しです。

2023/10/24

TensorFlowでは苦戦続き

以前こちらにもTensorFlowでの初フライトの書込みしてますが、ちょっと踏み込んだ所まで進めてたりします。初フライトではこれまで使っていたCSVファイルから読み込んで学習させ保存する。保存形式はONNX形式でML.NETでC#での読込も可能な筈。ただ、単純な学習では全く精度が出てそうも無かったので一旦放置して色々と調べてました。

機械学習の根本的な自分の学習も若干ですが徐々に進めてまして、AutoMLでもそうでしたが、データ項目が数値的な意味があるものなのか、単に分類なのかの指定はしてました。これしないと、AutoMLの入力的に全てのデータを実数にする必要があったのでCSVには実数のみなんです。まあ、JRA-VANのJV-Dataの仕様に沿う形で分類もコードなので数値化はストレートにそのまま整数を実数にしたものなんですが、競馬場コードなんかも数値なんですが、数値として意味がある訳じゃなく、単に分類なんですよね。その辺りもTensorFlowでも指定して学習させないとダメなのは分かってましたので、その指定方法を調べて実装しました。ただ、それしない状態での保存では問題は無かったんですが、項目の属性的な指定を入れたモデルの保存ではワーニングやエラーが大量に出て、でもファイルは出来てますのでこれ読み込んで問題ないかのコーディングも仕上げて確認する必要があります。

TensorFlow部分はPythonでモデルを保存して、C#でモデル読み込んで予測して検証的なコーディングになるのでちょっと頑張るしかないですね。    

2023/10/22

第84回菊花賞

秋華賞は牝馬3冠馬誕生でしたが、印象に残ったのは岩田ジュニアの上がりですね。後1ハロン程度ゴール盤が先にあればかわしてた勢いに見えました。まっ、何にしてもハズレ!

◎ ハーツコンチェルト
○ ファントムシーフ
▲ ナイトインロンドン
△ ソールオリエンス

調子が微妙な学習モデルなんですが、そろそろ1発決めてくれれば嬉しいんですがダメかなぁ。

別アプリにしてるAutoMLなんですが、ちょっと手を加えてトレーナー5個全部オプションでオンオフ可能にしたのとTrain:Test比率も基本ここまで80:20固定でしたが、ちょっとこれも変更可能にしてみました。で、今走らせているのは70:30の2,200秒20回なんですが、5回目の現在の状態が怪しい😓 なので中断ボタン押したけど反応しないやorz いやこれ、実は単一ファイルの発行にしてみたのでLightGBMのバージョンが古いんですよね。それが原因かは確証ないんですが、ここ最近新バージョンで学習させている時はこの終わらない現象は出てなかったんです。やれやれ、単一ファイルやめてまた以前の15個程度にしてみます。

2023/10/20

MessageBoxの表示位置

 その昔、まだPCモニターが小さくてモニターに限られたアプリしか稼働させていない時代にはMessageBoxがモニターの中央表示されてもそれ程違和感はなかったです。しかし、徐々に大きくなりうちでは43型4Kモニターを使ってますが、基本的にモニター右側にはEdgeが稼働してて、左側に諸々動かし、更に仮想デスクトップも利用してたりと事情が変わってきてます。左隅で稼働してるアプリがモニター中央にいきなりダイアログボックスを表示しても小さいものだと気が付かずに延々と待つ事もあったりしますので自分のアプリは何とかしたいと思ってました。もう随分前にTARGETの作者さんに要望した事もありましたがスルーされてました。まあ、既にたまに検証的に比べたりするのに使う程度になったTARGETはスルーされても問題ないです。

アイビー先生はここ最近だと思うけど、この問題を問合わせると何やら回答を始めるんですが途中で「間違えました。この問題には回答できませんので話題を変えましょう」って感じになります。グーグル先生に問合わせ参考になりそうなサイトの記事もブックマークしてあり、そろそろ、それを参考に実装しなきゃな~っと眺めながら一応もう一度と検索掛けてたらGitHubにMessageBoxEx.csというのを発見!そもそもオリジナルのMessageBox.Showにも第一引数にIWin32Windows ownerというのがあるんですが、この役割が微妙でMessageBoxExではこれを指定するとそのownerの中央に表示する様に出来てます。

プロジェクトにクラスとして追加して、プロジェクト全体で置換実行したらエラーが一杯出たのですが、MessageBoxEx.cs自体も置換対象でやっちまいました😅

追記 2023/10/21 11:09
出所検索するのに苦労しそうな気がして補足します。GitHubで探すと違う同名のものが存在していてそれがヒットする感じでした。

Parent centered MessageBox dialog in C#
が正規のタイトルな所から参考にしました。直リンク貼るのが問題有るか無いか不明なので避けてみました。

2023/10/19

AutoMLのトレーナー

ここ最近の学習ではトレーナー3つに絞って行ってたんですが、ふとまあなんとなくって単なる感覚的に本来Microsoft.ML.AutoMLで用意されているトレーナー5個全てを使う2,200秒25回を行ってますが、ここ最近の最適RMSE 1.2106に対してここまで18回終わってますが最適RMSEは1.7018に留まり1.7~2.07辺りです😓 ここまで何度もやってた間はトライアル番号もひたすら継続されて4千超えたりしてましたがリセットされてます。何かその辺りも関連してるのかは分かりませんが、やっちゃった感が半端ないです。明日は今まで同様の3つに絞った学習にしてみようと思います。

本当に久しぶりにトレーナー5つの学習走らせてますが、ここ最近のトレーナー3つ、

  • FastTree
  • FastForest
  • LightGBM
の学習ではほぼLightGBMしか見掛けなくなってたんですが色々なトレーナーが使われてます。基本エラーが出るのはLightGBMの時だけなので、今回の学習ではまだ1回しかエラーが出てなかったり...ただ、エラーになった時にはどのトレーナーかの表示は出来てませんけど。明らかなのは20分程度トライアル走った後にオーバーフローでした。トレーナー5個だとあまり長いトライアルは見なかったりします。トレーナー3つで行ってるとほぼLightGBMだからかは分かりませんが、頻繁に数十分のトライアルを見掛けます。制限時間が来ても終わらず中断されるとかは多分ただの時間の無駄遣いなんじゃないかと思われますけど。

何にしても最適RMSEを吐き出してくれる方法で何度も試すしかないので、明日は2,200秒25回をトレーナー3つでまだ挑んでみようかと思います。

2023/10/16

幸運にもなのかな

 新たに順位学習用のCSV出力にやはり3時間半程度掛かり、そこから2,200秒20回の学習スタートさせてみました。たまたまなのか2回目でこれまでまあバグ込みのデータでの最適でしたが、最適なRMSE 1.4106ってモデルが出たので早速相変わらずの目安の検証してみました。

単勝:的中[56.51%] 回収[487.67%] 複勝:的中[91.52%] 回収[255.14%]
枠連:的中[50.13%] 回収[930.62%] 馬連:的中[45.01%] 回収[1,999.55%]
ワイド:的中[73.83%] 回収[1,033.91%] 馬単:的中[31.67%] 回収[2,713.93%]
三連複:的中[39.97%] 回収[5,813.22%] 三連単:的中[18.11%] 回収[16,136.94%]
予想[6,912] 的中[6,363] (92.06%) 購入[¥4,769,200] 払戻[¥202,368,270 (4,243.23%)]

的中率がかなりのものなので、これが予想に少しでも好影響であれば良いのですが、学習期間に含まれない今年9月から10月9日までで検証すると

単勝:的中[17.22%] 回収[75.78%] 複勝:的中[41.11%] 回収[67.75%]
枠連:的中[9.29%] 回収[88.85%] 馬連:的中[6.94%] 回収[107.42%]
ワイド:的中[18.06%] 回収[95.92%] 馬単:的中[5.28%] 回収[170.75%]
三連複:的中[4.72%] 回収[84.72%] 三連単:的中[1.39%] 回収[74.81%]
予想[360] 的中[154] (42.78%) 購入[¥247,200] 払戻[¥271,490 (109.83%)]

これが現実かなぁ。馬連・馬単はこの期間に万馬券とか当てて回収率は良いのですが実戦向きな結果ではないですね。ワイドの的中率が2割超えて3割に迫ってくれば実戦でも行けると思うんですが夢かなぁ😓 って書いてたら8回目の最適がRMSE 1.2756となりました。学習するデータにバグ排除した正確なものが準備出来たのでもしかしたら期待出来たりするかも?

単勝:的中[66.41%] 回収[604.67%] 複勝:的中[94.10%] 回収[259.83%]
枠連:的中[60.68%] 回収[1,176.72%] 馬連:的中[55.19%] 回収[2,525.89%]
ワイド:的中[82.12%] 回収[1,199.66%] 馬単:的中[43.62%] 回収[3,875.14%]
三連複:的中[51.43%] 回収[8,449.49%] 三連単:的中[30.47%] 回収[30,402.44%]
予想[6,912] 的中[6,534] (94.53%) 購入[¥4,769,200] 払戻[¥334,375,180 (7,011.14%)]

単勝:的中[18.33%] 回収[64.61%] 複勝:的中[42.22%] 回収[78.44%]
枠連:的中[8.97%] 回収[66.15%] 馬連:的中[5.56%] 回収[79.25%]
ワイド:的中[15.28%] 回収[79.25%] 馬単:的中[3.89%] 回収[82.08%]
三連複:的中[5.83%] 回収[199.81%] 三連単:的中[0.83%] 回収[106.69%]
予想[360] 的中[158] (43.89%) 購入[¥247,200] 払戻[¥269,090 (108.86%)]

的中率の向上が見られるものの微妙な感じですね。学習するデータ自体が変わったのでまだまだ繰り返し学習させてみるしかないですね。

順位の学習やり直し

昨日発見した走破タイムのバグなんですが、順位学習データには走破タイム予測を使ってます。順位学習用のCSVファイル確認するとバグってる予測タイムが😖 って事でCSVファイルを出力し直して再学習となります。やれやれ、気が付いてよかったんですが菊までにはどうにかなるかなぁ。

しかし、今の学習精度が出るのにどれだけ学習させたかを考えると100回程度で足りるかは微妙な気はしますが、学習時間2,200秒辺りが良い感じだったのはある程度参考になると信じて行ってみます。

なめたビスを外す

 少し前に仮住まいに引越す時に引越のサカイの方が有機EL65インチを運んでくれる時にテレビの足がビス4本で固定されているけど、そのうちの1本がなめちゃってて外せないとの事で無理をお願いして足が付いたまま運んで頂きました(本当に感謝です)。その時に、今日はツールを持ち合わせてなかったので外せませんでしたが、ホームセンターに行けばなめたビスを外す道具が売っているので試してみて下さいと案内して頂いてたので、戻りも予約してますので外して新しいビスにと思い、取敢えずネットで諸々検索してみました。確かに色々出てきました。

今回まあ素人が人生初のトライをするツールに選んだのは

こちらです。自分の購入時(10/14)は1,700円でしたが値下がってます😔 最近では翌日には届くのが多い中、本日届き早速試しました。パッケージ裏側の説明
通りに作業進めてましたが、調節ネジって手で絞める程度では弱いです。[5]の所にも説明されてますが六角使って絞めてから緩めると行けました。で、本日多分測ってみたので大丈夫かと思いますが、+だったビスを
これを発注してみました。到着予定は木曜日(10/19)なので、外したなめた頭のビスを軽く付けておいてみました。もうすぐ丸3年になるテレビですが、10年程度は動いてくれる事を期待してますので後7年は頑張ってもらわなきゃなのでこんな出費も仕方ないかなぁ。

2023/10/15

第28回秋華賞

 馬券成績が相変わらず悪いです😭 予想精度向上作業はちょっと中断してたりもするし。って書きながら異変に気が付いた。以前は走破タイムがメインだったので気にしてたんですが、最近は順位予想主力で居たので見落としてました。走破タイムがかけ離れてるんです。もしかすると、機械学習部分をクラス化した時に変なバグ入れ込んだかも😓 ちょっと真剣に調べます。バグ混入してる状態での予想は

◎ モリアーナ
○ コンコースト
▲ ミシシッピテソーロ
△ グランベルナデット

無敗ではないけど、三冠取る可能性のダントツ一番人気のリバティアイランドは12番手予想になってます。人気な3頭全て外した予想は個人的には好きなんですが、2番人気のハーパーでも7番手予想、3番人気のマスクトディーヴァが8番手予想です。

追記 2023/10/15 12:24
やはりクラス化時にバグ入れ込んでました😔 よくもそんな状態で実馬券買ってたと思うと😱

◎ ドゥーラ
○ ハーパー
▲ マスクトディーヴァ
△ ヒップホップソウル

予想全然違います。ダントツ一番人気のリバティアイランドは流石に6番手予想でした。それでも買わない😜 この予想ではあまり大きいのは期待出来ないので軽くワイド1点のみで行く予定です。ただ、朝から京都は晴れなので芝が重→稍重になる可能性があり、学習データに天気や馬場状態入れてるので変われば予想も変わるかもなので最終的にどうなるかは多分14時頃までに状態変更有るか確認してから投票すると思います。

2023/10/14

Microsoftのバグ修正待ち

こちらの事情からすると、一刻も早くリリース出来るものを作り、そのインストーラー使ってテスト環境のまあ仮想マシンしか用意出来ませんがそこでテストして問題が無ければリリースするかの判断しながらアプリの登録認証(?)を申請する予定なんですが、当たり前ですがMicrosoftの対応がそこまで迅速な対応だとは思えません。なので、先日も書いた無駄なリトライをリリースバージョンに含めてのビルドを試したりしてますが、これも別の問題もある感じがします。あくまで詳細まではまだ調べていませんが、SQLiteのデータベースをテスト段階で既にフルセットアップして使っているものを新規でテスト用にインストールした所に持っていくと、ある方法では上手く動かず、別のステップからだと問題ない的な感じがします。リリースビルドでまあVisual Studioのデバッグで動かしている訳ではないので、全く分かりませんが、動作が明らかにおかしい気がします。ってまあ、素直にリリース出来る訳もなく、ひたすらMicrosoftの修正を待つのか、それとも...単一ファイルじゃないと途方もないフォルダとファイルがインストール先に作成され、問題解決しましたって事で対応バージョンリリースして、その無駄なフォルダとかも削除される気が全くしない。

プログラミングって45年程してますが、本当にMicrosoftには何度も何度もやられた記憶しかないのですが...まあ、年齢的に未だに居るかは不明ですがリアルな同級生も居たりする会社なのであまり責めたくはないけれど、どうにかして欲しいですねぇ。

先日モデルビルダーの修正がって話も書いてますが、あれ以降新たなバージョンがリリースされないんですよねorz 新バージョンで修正されましたの報告は良いんですが、早くリリースしてよ!

2023/10/13

単一ファイルでのアプリのビルドしての発行

Visual Studio Community 2022を利用してアプリを書いてますが、以前から1つの.exeファイルに出来ないのかなぁっと気になりググって真似したりしてみても実現出来ていませんでした。しかし、流石に公開しようかなレベルにまで来ましたので色々と試す中やっと分かりました。基本的にアプリが出来たらソリューションエクスプローラーの該当プロジェクトを右クリックして「発行」するんですが、一番最初に行うと色々と選択させられて発行画面にたどり着きます。そこで発行ボタンを押せば発行ビルドが始まって処理されます。ただ、このままでは単一ファイルにはなりません。そこで、「すべての設定を表示」を押してプロファイル設定を開き「ファイルの公開オプション」を展開して

「単一ファイルの作成」にチェック入れたりするんですがこれだけだとソリューションエクスプローラーのプロジェクト下の[Properties]-[PublishProfiles]にある"FolderProfile.pubxml"ファイルが

<Project>
  <PropertyGroup>
    <Configuration>Release</Configuration>
    <Platform>Any CPU</Platform>
    <PublishDir>bin¥Release¥net7.0−windows¥publish¥win−x64¥</PublishDir>
    <PublishProtocol>FileSystem</PublishProtocol>
    <_TargetId>Folder</_TargetId>
    <TargetFramework>net7.0−windows</TargetFramework>
    <RuntimeIdentifier>win−x64</RuntimeIdentifier>
    <SelfContained>true</SelfContained>
    <PublishSingleFile>true</PublishSingleFile>
    <PublishReadyToRun>true</PublishReadyToRun>
  </PropertyGroup>
</Project>

こんな感じです。しかし、そもそも肝心なものが足りてないんですね。

	<IncludeNativeLibrariesForSelfExtract>true</IncludeNativeLibrariesForSelfExtract>

これを追加して初めて単一ファイルの実行ファイルが発行されるようになりました。

速度制限(200Kbps)は地獄

仮住まいのネット環境はmineoなんですが、まだ2週間程で感覚がいまいち把握出来ておらずにパケット放題プラスを基本で使ってました。20GBプランなので先月からの繰り越しもあったりで未だ20GB以上残してる状態で、昨日寝起きでiPhoneいじりながら遅いな~っと思いながらPC立ち上げるてEdge開くとGmailのタグも含めてクルクルしてるのが延々と😓 ルーターがたまにパケ詰まり的な症状があるので、それかと思いルーター再起動とかしても改善せず、パケット放題プラスをオフにしようとiPhoneでアプリ立ち上げてオフにしようとしても「速度制限中なので切替出来ません」的なメッセージで出来ない。ふと見ると速度制限(200Kbps)の文字が😖 3日間合計10GB使うと1日速度制限が掛かるって話は分かってはいたんですが朝起きて突然それ? 昨夜はPC諦めて早めに就寝となる程、速度制限が掛かるとほぼ使い物にならない。

事前に通知とかあればと思いながら...キャリアメール的なものが有る様ですが、そんなものルーターにつけるだけの利用だから全く考えてなかったんですが、もしかしたらそこに通知が来てたのかも。しかし、PCだとGmailすらなかなか開かない状態にされるとなるとそんなメール自体も確認が大変かもだし。まあ、2日放題したら1日は解除してって気を付けていくしかないかもです。

2023/10/11

System.Data.SQLite.Core Ver1.0.118での新規DB作成

 先日インストーラーが作れるようになったのでリリースモデルをビルドしてテスト用の仮想マシンにインストールしてテストを始めてます。まあ、新規にアプリをインストールして起動すれば当然ながらSQLiteのデータベースファイルを作成する様にしてあるんですが、これまで特に問題が無いと思っていましたが、まさかのデータベースの新規作成で躓きました。

ただ、グーグル先生もアイビー先生もエラーの情報は無い感じ。まあ、自分でググって諸々見ても簡単な成功例ばかりです。確かにデバッグビルドでは問題なかったと思うので皆さんリリースモデルでは既にデータベースファイルは作成されているので、リリースモデルでの新規作成をしてないのか? それとも自分が何か間違えてるのか判断出来ません。

SQLiteConnection.CreateFile(UserData.UserDataFName);
SQLiteConnectionStringBuilder sqlBuilder = new SQLiteConnectionStringBuilder()
{
    DataSource = UserData.UserDataFName
};
using (SQLiteConnection con = new SQLiteConnection(sqlBuilder.ConnectionString))
{
    con.Open();
    using (SQLiteCommand cmd = con.CreateCommand())
    {
        cmd.CommandText = UserData.USER_MARK_CREATE_TEXT;
        iReturnCode = cmd.ExecuteNonQuery();
    }
    con.Close();
}

こんな感じで新規作成してテーブルも作ったりしてるんですが、SQLiteConnectionのコンストラクター辺りで与えたパスに多分起動パスか何かをCombineしてる所でnullがって感じのエラーになるのですが、当然こちらは単純に"UserData.db"的なファイル名を与えてるのでnullではないです。試しにファイル名ではなくフルパスにしてみたりもしましたがNG。実はユーザー用と検証用のデータベースファイルを初回起動時にまあ同じ感じのコーディングで新規作成してるんですが、先のユーザー用ではエラーになり、2番目の検証用の新規作成ではエラーになりません。どこが違うのか間違い探ししてみましたがありませんでした。で、更にその後にJV-Linkからのデータ収納するデータベースも新規作成するのですがこれもやはり同じエラーが出るんです。デバックビルドでは何度もデータベースの新規作成はしてるのでコード的には問題ないと思うんです。苦肉の策で

try
{
    SQLiteConnection.CreateFile(UserData.UserDataFName);
    SQLiteConnectionStringBuilder sqlBuilder = new SQLiteConnectionStringBuilder()
    {
        DataSource = UserData.UserDataFName
    };
    using (SQLiteConnection con = new SQLiteConnection(sqlBuilder.ConnectionString))
    {
        con.Open();
        using (SQLiteCommand cmd = con.CreateCommand())
        {
            cmd.CommandText = UserData.USER_MARK_CREATE_TEXT;
            iReturnCode = cmd.ExecuteNonQuery();
        }
        con.Close();
    }
}
catch (Exception ex)
{
    try
    {
        SQLiteConnection.CreateFile(UserData.UserDataFName);
        SQLiteConnectionStringBuilder sqlBuilder = new SQLiteConnectionStringBuilder()
        {
            DataSource = UserData.UserDataFName
        };
        using (SQLiteConnection con = new SQLiteConnection(sqlBuilder.ConnectionString))
        {
            con.Open();
            using (SQLiteCommand cmd = con.CreateCommand())
            {
                cmd.CommandText = UserData.USER_MARK_CREATE_TEXT;
                iReturnCode = cmd.ExecuteNonQuery();
            }
            con.Close();
        }
    }
    catch (Exception ex2)
    {
        Debug.WriteLine(ex2.ToString());
    }
}

とすれば動いてくれます。ちょっとこの無駄なリトライコーディングをリリースビルドに入れるのは忍びないのですが、バージョンアップで修正される事を期待したいです。英語でまた報告しなきゃ改善されないかもなので報告はしようかとは思うんですが...

追記 2023/10/12
色々と調べてますが、一概にSystem.Data.SQLite.CoreのバグというよりはVisual Studio Community 2022のC#での発行時の実行形式生成時に何かしら原因があるのかもです。少なくともVisual Studio上でリリースビルドをデバッグ無しで実行するとエラー無く実行出来るのに発行してインストーラー作成してインストールしたものを実行するとエラーが発生します。リリースビルド時にはまだ.exeと.dllに分かれてたりしますが、発行すると.exeに纏められます。
予感的中!発行時のオプションに「すべての設定を表示」とあるんですが開くとプロファイル設定ダイアログが表示され「ファイルの公開オプション」を展開すると「単一ファイルの作成」というオプションが有り、これを選択しないと無数のフォルダを含めかなりの量のファイルが出来てしまい面倒に感じます。なので当たり前の様に選択する事で極力減らしてましたが、試しにこのオプション外して発行してインストーラー作成してみとるエラーが出ません。やれやれ、またMicrosoftに報告して修正してもらわなきゃです。昨日だったかVisual Studioがバージョンアップされてましたが...

2023/10/09

mineo マイピタ20GB Dプラン

 仮住まいに引越して早2週間が経ちました。いやまあ、まだ先は長いですが、ネット環境で苦労した最初の1週間でした。現在契約してるのはmineoのDプランってドコモ回線だと思いますが、会社支給のソフトバンク回線のスマホも繋がってますので、auは分かりませんが楽天モバイルは「圏外」と微妙なロケーションなんだとは思います。ドコモ回線も決して良好(アンテナ4本立ってますが)とは言えない感じで、アマプラとか半分諦めてましたが、パケット放題プラスって1.5Mbps程度に速度制限されるモードなんですが、アマプラで無事に1本見れる事が分かったので良かったです。まあ、若干ってか多分画質は落とされてると思います。

妻がテレビでYouTube見れるの?って言われて、スピード制限有りだとこんな画質で、毎月20GBまでならこんな感じで観れるよってした時には明らかに画質に違いがありました。うちはテレビもPCモニターも4Kなんですが、テレビのYouTubeでは多分4Kではない感じは見て取れました。PCでのアマプラも確かに画質が落ちた感じですが、別に気にしなければ視聴に全く支障ないです。

まだ4ヶ月は仮住まいが続きます。ゲームは諦めてってか、目の負担が深刻で、いやまあ、アマプラでも目の負担にはなるとは思いますが、ゲーム程ではないかなぁって感じで、PS5は息子にあげました。息子も子供が生まれてゲームどころではない感じでやっているのかは微妙ですが、最悪売り飛ばしても1万円位にはなるかもねって感じであげましたので、後は息子の判断に任せてます。GT7とかまだまだやりたい気持ちは有りますが、グッとこらえてアマプラで我慢してみます😉

ちょっと悩むのは、確かに光回線は快適でした。大体月に6千円程度掛かります。mineoで今後暮らすとして毎月2千円で済むんですよね。定年退職して再就職はしてますが暮らしていけるか疑問な給料です。この4千円の差は大きいので検討材料ですね。20GB→10GBプランの差は200円程度なのでそこは20GBのままでも良いのかなぁっと。ただ、ちょいちょいパケ詰まり的なのがあるのも事実で、PIXELAのルーターのリセットボタンでは全く意味がない感じで、電源のオンオフで復帰させてますが、ハードへの影響は微妙ですかね。電源のオンオフは少なからず負担だと思うのでやはり回数行うと故障のリスクは伴うかと思います。

老後ヤバいな~😖

2023/10/06

Inno Setup

やっと希望通り(?)のインストーラーが作れるツールが見つかりました。HeatWave for VS2022もMicrosoft Visual Studio Installer Projects 2022もVisual Studioからアンインストールしました。アンインストールした2つは多分どちらもアプリ自体のビルトもサポートしてたのかもですが、Inno Setupでは基本的にVisual Studioでリリースビルドを用意して(まあ、普通に当たり前にも思えますが)それがどこに出来ていてメインの実行形式とまあ付随して必要なファイル群なんかも指定して1つのインストーラーにしてくれる感じです。よく見かける使用承諾なんかもテキストファイルで用意して指定すればインストール時に表示してくれますが、最初に単にファイルを用意して作成すると文字化けしました。使用承諾のテキストファイルはエンコードとして"UTF-8 (BOM 付き)"にしなきゃなりませんでした。まあ、メモ帳で名前を付けて保存時に指定するだけなんですけどね。確か、WiX Toolsetではインストーラーがランタイムで必要なものなんかもチェックして入れるとかなんかも指定可能なのかもですが、あっ、まあ、もしかするとこのInno Setupでは可能かもですが、サラッとやってテスト用の仮想マシンにインストールして実行すると、必要なランタイムが無いよって言われて指示通りにランタイムをダウンロードして入れなきゃなりませんでした。まあでもインストールして実行まで行けたのでやれやれです。

ただ、現状で登録申請するかの判断がまだ出来ていません。アプリの出来もそうですが、もう少し機能を揃えてからリリースした方が、新規リリースで興味を持ってくれた方が「使えね~」のレッテル張られるとバージョンアップしたからってまた試してくれるかは微妙だと思う。やはり第一印象は重要かと思うので慎重に行くべきかな~っと。まあ、更にヘルプ的な部分としてサポートサイトの準備が整ってないので、その辺りもある程度出来てからかな。

苦労していたインストーラー作成はクリア出来た(実は他の方々が使っているインストーラーとは若干違うのが気にはなってます)ので、最初にインストーラーとか試してから数ヶ月以上苦労してましたのでまた1歩前進出来たのは良かった。

2023/10/05

HeatWave for VS2022

Microsoft Visual Studio Installer Projects 2022をVisual Studio Community 2022の拡張機能でインストール指示して普通に入れて自作アプリのインストーラー作成に挑む事多分今回2度目かなぁ。以前チャレンジした時も何だか思う様には行かないし、そもそもインストール出来なかったんですが、2度目なので少し学習してますので今度は完璧かなっと挑みました。もしかすると一応出来ているのかもなんですが、

  • setup.exe
  • Installer.msi
の2つのファイルが出来上がります。え?普段気になるアプリとか見つけてダウントードすると大体1個のインストーラーファイルですよね?なぜ2個?まあ、この2つをZIPでまとめてダウンロードしてもらって解凍して実行ってのもありかもですが、ちょっとそれは最終手段としておきます。

他のインストーラー作成ツールを探してみるとWiX Toolsetがある。ざっくりと眺めても、ちょっと検索しても単純なものは無いので悩んでみたものの試してみる事にしました。しかし、非常に情報が少ないのは今年の春にどうやらv4になったらしく、v3とはちょっと違う(どの程度とか把握してませんし、したくもないです)らしく、v3の記事とかはいくつかあります。

取敢えず、色んなバージョンとかもあるらしいが、無難(?)な感じというか、自分として理想的なVisual Studioへの組み入れを選択してみました。拡張機能から素直にいきなり検索に「HeatWave」と入れてみても見つからないのでマーケットの方にして再度検索すると見つかります。VSIX Installerでインストールされます。

インストールされれば当然Visual Studioからプロジェクトか作成出来ます。いくつかのテンプレートがありますが、取敢えず"MSI Package (WiX v4)"を選択してみます。

  • Package.wxs
  • Folders.wxs
  • ExampleComponents.wxs
  • Package.en-us.wxl
の4つのファイルが出来上がります。このまま単純にビルトしても一応多分空のPackage.msiが出来上がります。

追加したWiXのプロジェクトの下にある「依存関係」をマウスで右クリックして"Add Project Reference"を選択して自分のプロジェクトにチェックを入れて「OK」する。

ExampleComponents.wxs内の

<Component>
  <File Source="ExampleComponents.wxs" />
</Component>

の部分に自分のアプリの.exeファイルを指定する。

<Component>
  <File Source="SaraD.exe" />
</Component>

って感じです。これ以外でも"ExampleComponents"となっている所があるので自分のアプリ用に修正する。これで一応の設定は終りらしくビルドすれば良いって説明にはなってますが、実際にビルドしてもそもそも何故かDebugでReleaseではないし、3つもファイルが出来ます😓 まだまだ奥が深くて色々と学習しなきゃ使い切れない感じですorz

2023/10/04

仮想マシンでの設定方法が変わってた

 仮想マシンだからっていうよりは、多分ここ最近のアップデートがなのかパッチなのかは不明ですが、5月に仮想化ベースのセキュリティ(VBS)を有効にする方法について書いてたんですが、今日新たな仮想マシン(自分のアプリのインストーラーのテスト用)を用意する為に作業していて、その辺りの事を以前書いたからブログを参考に作業しちゃおうと見ながら進めてたんですが、自分が書いた事が理解出来ない位変更が有ったっぽいので再度先生方にお尋ねしてみると、アイビー先生はスタートメニューの検索バーに「コア分離」として詳細開いて、メモリ整合性のスイッチをオンにして再起動となんとなくシンプルになってました。ただ、これって本当に必要な事なのかが理解出来てないのですが、その後の作業としては[設定]>[アカウント]>[ユーザーの情報]に移動して[ローカルアカウントでサインインする]を選択すれば、後は毎度のレジストリーをいじってパスワード無しにしますよって話です。

こんなタイミング(いや、月末には23H2だと思うから)にこんな事書いてもまた変わる可能性は大だし、こんなタイミングで仮想マシンを新たにってのも微妙なんだけど、自分のアプリのインストーラーのテストを数週間待つのも微妙と判断しての作業です。どうせ問題あるだろうから諸々テストして23H2で再度テストもしますが...逆に言えば、それ以前はテストしない予定なので問題あれば最新のOSにして下さいって話ですね😅

で、まあ、実は自分のアプリのインストーラー作成してダウンロード出来る様にして、仮想マシンでダウンロードしてインストールと試みましたがNGです。インストーラーが出来上がるフォルダにはsetup.exeとInstaller.tmpと2つのファイルが有ったので、普通にsetup.exeをダウンロード出来る様にすればと判断したんですが、

って事で、何だこれ?そもそもインストーラーが別ファイルが必要とか一般的なアプリでは無いと思うんですが...勉強不足です。どこか指定ミスとかがインストーラー作成時に有ったんだと思います。

2023/10/02

現状は実戦には不向き

 約1ヶ月実戦に挑んでみましたが、惨敗です。何かが足りなんですね。モデルの学習は続けながら、やはり別の要素ってか方法なのか打開策は必要です。そもそも機械学習の知識を増やす必要はあるんだとは思いますが、簡単な話ではないので地道に続けます。

今月はPythonもバージョンが上がる予定らしいし、他の諸々もバージョンが上がるのかな?TensorFlowも何とかしたいです。今月末にはWindows11も23H2に上がるのかなぁ。自分の知識もメジャーバージョンアップ出来なきゃ多分一線超えられないので...

2023/09/30

更に飛躍かな

 完璧な学習が済めば、基本的に的中率100%に限りなく近づくのかな?今回の学習では更に最適が向上しRMSE 1.5310が出ました。

単勝:的中[52.63%] 回収[395.32%] 複勝:的中[88.96%] 回収[217.12%]
枠連:的中[41.51%] 回収[691.19%] 馬連:的中[36.46%] 回収[1,258.54%]
ワイド:的中[65.61%] 回収[755.04%] 馬単:的中[25.13%] 回収[1,593.30%]
三連複:的中[31.18%] 回収[3,995.86%] 三連単:的中[13.09%] 回収[10,347.80%]
予想[6,912] 的中[6,195] (89.63%) 購入[¥4,769,200] 払戻[¥132,606,490 (2,780.48%)]

こんな予想が現実なら神レベルかも?まあ、実際には未来はそんな簡単に予測は出来ないとは思いますが、先ずはベストな最適が見つければと思ってます。

どこまで行けるか

 順位の学習ですが、2,000秒20回では良いものが得られませんでした。今は2,200秒20回中です。早々にRMSE 1.6133が出たのでいつもの目安の検証しました。

単勝:的中[47.63%] 回収[361.96%] 複勝:的中[85.88%] 回収[211.57%]
枠連:的中[35.61%] 回収[561.39%] 馬連:的中[30.35%] 回収[1,033.15%]
ワイド:的中[58.87%] 回収[682.76%] 馬単:的中[19.43%] 回収[1,277.47%]
三連複:的中[24.57%] 回収[2,867.54%] 三連単:的中[8.35%] 回収[5,647.52%]
予想[6,912] 的中[5,985] (86.59%) 購入[¥4,769,200] 払戻[¥87,002,360 (1,824.25%)]

これまでの最適より的中率も回収率も上がってます。ただ、既に今日の前半は以前の物で投票済み。ちょっと朝用事があり出掛けたのでその前に済ませてました。後半戦はこちらを試してみようかと思います。

2023/09/29

仮住まいでのネット環境

 ここにも9月7日に書きましたが、仮住まいに引越してPIXELAのSIMフリールーターを楽天モバイルでと準備してたので利用開始って繋がらない😖 iPhoneにも元々デュアルSIMで楽天モバイル入れてましたのでiPhoneでも楽天モバイルにしてみると「圏外」です。主回線のドコモは若干遅い感じはするもののアンテナ4本で問題ない。楽天モバイルは駐車場に出ると入る場所もなくもないが、アパート内ではどこでも「圏外」。解約する事にしたんですが、ネット回線が無い状態で、PCからは出来ないのでiPhoneで挑んだんです。解約するのにワンタイムパスワードがメールで届くってタイムアウト15分になっているけど確認出来るのに30分程度掛かるのでチャットで挑む。チャットももっさりで最初は切れるので電話で挑むが最初10分程お待ち下さいだった案内が途中で15分に伸びたので断念。楽天Linkの無料通話だとパケット消費するからだらだら待つのは危険との判断からです。で、まあ、解約をチャットで出来たんですが2時間程掛かりました。

ドコモ回線が室内でも使えるのは分かったのでmineo Dタイプに決定して申込。早ければ即日的な案内がサイトにあったので申込んだんですが、結局火曜日(9/26)早朝に申込してSIMカードは本日(9/29)に郵送されてきました。カスタマーサポートに電話したら、即日的なのはeSIMで郵送とか無いからって事でした。市内に取扱店的なのがあるから取りに行けばって勝手に思ったのが間違いでした。

楽天モバイルでは無制限3,278円/月の予定でしたが、mineo マイピタ20GB Dタイプにパケット放題Plusが無料で付いて1,925円/月。毎月20GBは最速3Mbpsで、パケット放題Plusを有効にすると最速1.5Mbpsに下がる。この切替を有効に活用って事らしい。パケット放題Plusで3日間で10GB超えると次の日はペナルティーになるらしい。そんなに使う事は無いと思うのであまり気にしないでおきます。

2023/09/24

勝手に限界とか

 今週末も実戦投入したりして負けました😖 まだまだなんだなっとは思いながら実は更に順位の学習に挑んだりしてます。なんとなくこれまでの最適が出た2,100秒で更に20回やってるんですが、これまでの最適を大きく更新したモデルが出てきました。RMSE 1.6628です。いつもの目安の検証は

単勝:的中[44.10%] 回収[296.39%] 複勝:的中[83.93%] 回収[190.94%]
枠連:的中[33.52%] 回収[488.71%] 馬連:的中[27.85%] 回収[734.34%]
ワイド:的中[54.90%] 回収[524.70%] 馬単:的中[17.01%] 回収[894.62%]
三連複:的中[22.35%] 回収[1,936.90%] 三連単:的中[6.60%] 回収[3,515.71%] 
予想[6,912] 的中[5,875] (85.00%) 購入[¥4,769,200] 払戻[¥58,982,660 (1,236.74%)]

これで十分かとか、これが限界かとか、何の根拠もなく決めない方が良さそうです。

Model Builderのバージョンアップが行われたら、また試してみたいと思うし、Tensorflowの方ですが、やはり、手強いのは間違いないです。C#や.NETでの実装はラッパーとかがもう少し充実してこないと厳しいんじゃないかと思ってます。というのも、Pythonでは取敢えずTensorflowを使って新馬戦用の学習はさせる事が出来、Onnx形式での保存までは来ました。このモデルをC#のMicrosoft.ML側でロードして予測して検証してみないと何ともなんですが...ただ、RMSEが滅茶苦茶巨大な値で実際の検証結果をみないと判断が出来ません。

2023/09/22

ML.NET Model BuilderのLightGBM問題の回答

ここに8月20日に書きましたModel BuilderにLightGBMだけ指定するとエラーで動かない件で"issue has been fixed in the latest version main Build 17.17.0.2335401"との回答を頂けました。ただ、そこにも書かれてましたがこのバージョンはまだリリース前だとの事で、リリースをお待ち下さいとの事でした。Model Builderの今入っているバージョンは17.17.0.2332602なのでどんなタイミングでリリースになるのかは分かりませんが、少なくとも次のバージョンアップでは改善されるのかなぁっと。

ただ、既にAutoMLで相当やり込んでいますので改めてModel Builderで行う意味合いが微妙ではありますが、予想精度が上がる可能性があれば試してみます。

2023/09/21

Microsoft Rewards 8回目

 前回から50日なのでちょっと長かったです。デイリーストリークは146日なので抜けた日はない筈ですが、日々の内容的にってのと昨日ちょっと色々としてて、昨日申請出来ていたかもではあります。

今回の申請ってかAmazonギフト貰うのに途中でエラーになったので焦りましたが、履歴見たら即座に反映されていたので、いつもは申請してメールが来るのを待って受け取る感じでしたが、履歴から直接受ける感じでAmazonに反映しました。来週月曜日に引越なのでそこでドタバタしてデイリーストリークが切れるかも😔

2023/09/20

TensorFlow.NETでの初フライト

何度も何度も、もう数えきれない程アイビー先生とグーグル先生に質問ぶつけてはサンプルコードをコピペして...コピペ時点でエラーの嵐な日々でした。Tensorflow入門だとかのチュートリアルを見てみたりドキュメントにも目を通し、努力は続けてますが機械学習は挫折しやすい的な話をどこかのチュートリアルで見かけた。これ、Microsoft.MLとMicrosoft.ML.AutoMLと比較するとあまりにも...チュートリアルが悪いのか、そもそもそれぞれのパッケージが未だVer1.0未満だとか、もしくは自分自身の学習能力不足なのか、この1ヶ月以上は苦悩の日々でした。

本日やっとコピペのエラーは全て無くなり実行にこぎつけました。が!いや、実行まで行けただけで、実行時エラーが出ますけどね。ただ、徐々にですが前に進めたかな~っとね。何が分かり辛いって、そもそもの学習データの準備がもう大変です。CSVファイルから読み込んでどうする?がそもそも入り口が多くて選択には悩まさせるし、あっちもこっちもでごちゃごちゃになりやすいしなんです。

NuGetパッケージで今使っているのは

TensorFlow.NET ver0.110.3

です。これって実行形式(?)ってかバックボーン(?)が無く単体では実行出来ず環境なんかで選択する必要があるんですが、取敢えず

SciSharp.TensorFlow.Redist ver2.11.4

を入れました。GPU使う奴とかもあるんですが、まっ、画像系じゃないからトラブル避けるにも普通のにって感じです。画像認識とかだとGPU使うと良いのかな~っと勝手に思っただけで実際にはCPUパワーだけよりGPUにも力を借りればかもですが、先ずは動かす事に集中。

取敢えず、現時点での問題は、NDArrayというものを、NumSharpから使うかTensorflow.Numpyから使うかとか、まだまだ学習する事がいっぱいなのかも...

2023/09/18

そろそろ限界かな

 通常用と順位で2,100秒30回を行いました。

2023/09/17      7:18       85656371 SouhaTime2100_8282.zip
2023/09/17      7:54         644940 SouhaTime2100_11540.zip
2023/09/17      8:30         812308 SouhaTime2100_11444.zip
2023/09/17      9:07       28226614 SouhaTime2100_8398.zip
2023/09/17      9:48      109934440 SouhaTime2100_8169.zip
2023/09/17     10:23         221531 SouhaTime2100_11818.zip
2023/09/17     10:59         344101 SouhaTime2100_11758.zip
2023/09/17     11:34         331462 SouhaTime2100_11771.zip
2023/09/17     12:16       47719354 SouhaTime2100_10939.zip
2023/09/17     12:52         637786 SouhaTime2100_11953.zip
2023/09/17     13:27          35525 SouhaTime2100_12397.zip
2023/09/17     14:09      155194199 SouhaTime2100_8231.zip
2023/09/17     14:45         975407 SouhaTime2100_11368.zip
2023/09/17     15:20         143486 SouhaTime2100_12287.zip
2023/09/17     15:55         177255 SouhaTime2100_11858.zip
2023/09/17     16:34       24801729 SouhaTime2100_10548.zip
2023/09/17     17:09         297511 SouhaTime2100_11945.zip
2023/09/17     17:45         273565 SouhaTime2100_11887.zip
2023/09/17     18:20         130184 SouhaTime2100_12219.zip
2023/09/17     18:57         376008 SouhaTime2100_11859.zip
2023/09/17     19:41       65292209 SouhaTime2100_9643.zip
2023/09/17     20:16         197009 SouhaTime2100_12400.zip
2023/09/17     20:54        2071765 SouhaTime2100_11015.zip
2023/09/17     21:30         795541 SouhaTime2100_11592.zip
2023/09/17     22:13      162233822 SouhaTime2100_8343.zip
2023/09/17     22:50         476945 SouhaTime2100_12135.zip
2023/09/17     23:25         488476 SouhaTime2100_12047.zip
2023/09/18      0:01         175596 SouhaTime2100_11932.zip
2023/09/18      0:39       51340013 SouhaTime2100_9721.zip
2023/09/18      1:16        2290920 SouhaTime2100_10966.zip

通常用は5回目に最適ですが、これまでを超えず、

2023/09/17      7:13          79058 RaceJuni2100_19823.zip
2023/09/17      8:24          52704 RaceJuni2100_19902.zip
2023/09/17     10:09          15889 RaceJuni2100_20723.zip
2023/09/17     10:44         185986 RaceJuni2100_19761.zip
2023/09/17     11:19          97156 RaceJuni2100_19969.zip
2023/09/17     11:54         296553 RaceJuni2100_19690.zip
2023/09/17     12:30         130037 RaceJuni2100_19874.zip
2023/09/17     13:40          67363 RaceJuni2100_20024.zip
2023/09/17     14:50           7138 RaceJuni2100_20737.zip
2023/09/17     15:25         154601 RaceJuni2100_19764.zip
2023/09/17     16:00         218296 RaceJuni2100_19705.zip
2023/09/17     16:36         244341 RaceJuni2100_19815.zip
2023/09/17     17:11         278494 RaceJuni2100_19826.zip
2023/09/17     18:56          33313 RaceJuni2100_20169.zip
2023/09/17     19:32        6148520 RaceJuni2100_20717.zip
2023/09/17     20:07         141936 RaceJuni2100_19795.zip
2023/09/17     20:42         230865 RaceJuni2100_19782.zip
2023/09/17     21:20       55048711 RaceJuni2100_18529.zip
2023/09/17     22:30           4950 RaceJuni2100_0.zip
2023/09/17     23:06         247594 RaceJuni2100_19732.zip
2023/09/17     23:41         229551 RaceJuni2100_20535.zip
2023/09/18      0:17         616087 RaceJuni2100_19625.zip

順位は22個しかセーブされてません。少なくとも3回程度RMSEがゼロだったのは見掛けましたので、ログ確認したら8回もありました😔 順位学習側のみの問題なのか何だろ? まあ、こちらは25回目に最適でこれは昨晩検証とかも書いた通りです。

2023/09/17

偶然とかではなくRMSEが0

 今やっていてる2,100秒30回でもRMSEが0になる事がありました。しかも1回ではないですね。これっまあ、単純に何かのバグなのか当たり前ですが、RMSEを比較して最適判断してるのでこれ出た回ははこれが最適でこれ以上はないのでこれが残りますね😔考えたくないケースはこれまでの最適を超えたものが出ていてもこのゼロによって全て消されちゃうんですよね。今回も途中ではありますが、このゼロが出た直前の回の最適が1.8529とこれまでの最適を更新しましたので、いつもの目安の検証してみました。

単勝:的中[33.43%] 回収[185.69%] 複勝:的中[70.72%] 回収[146.55%]
枠連:的中[21.98%] 回収[250.50%] 馬連:的中[17.36%] 回収[348.10%] 
ワイド:的中[36.52%] 回収[283.91%] 馬単:的中[10.00%] 回収[356.39%]
三連複:的中[11.33%] 回収[729.39%] 三連単:的中[3.31%] 回収[1,127.73%]
予想[6,912] 的中[4,957] (71.72%) 購入[¥4,769,200] 払戻[¥23,522,820 (493.22%)]

これは随分と的中率も上がりましたし、回収率もまずまずなので実戦でその実力が発揮されれば良いんですが...実は今日は一日用事で外出でしたので、早朝全てのレースに投票(厳密には阪神1Rは合成オッズが低過ぎて見送り、結果総的中orz)して18:00過ぎて帰宅。結果確認すると
昨日の利益のほとんどを放出してる結果でした😖 明日、リベンジ!


2023/09/16

奇妙な現象

 順位2,400秒20回が終わったんですが、妙です😓

2023/09/16      7:30         214642 RaceJuni2400_19735.zip
2023/09/16      8:51          50328 RaceJuni2400_19854.zip
2023/09/16      9:32         128420 RaceJuni2400_19888.zip
2023/09/16     10:12        5124916 RaceJuni2400_18872.zip
2023/09/16     10:53         222925 RaceJuni2400_20055.zip
2023/09/16     11:33        1415406 RaceJuni2400_19331.zip
2023/09/16     13:34          76953 RaceJuni2400_19972.zip
2023/09/16     14:14         225732 RaceJuni2400_19733.zip
2023/09/16     14:54         127196 RaceJuni2400_19865.zip
2023/09/16     15:36         654422 RaceJuni2400_19788.zip
2023/09/16     16:16        1356823 RaceJuni2400_19402.zip
2023/09/16     19:37           5650 RaceJuni2400_20737.zip
2023/09/16     20:17           4950 RaceJuni2400_0.zip

たった13個しかセーブされていないのは単に重なった事が多かったのはあれですが、最後がゼロって何?もうシビアなところで限界に近いから似たようなRMSEで重なったってのは分からないでもないんですよね。4回目?前の書込みで5回目って書いてるので、多分8:10辺りに有ったのが上書きされて無くなってるんですね。にしても、これ、更にやるべきか悩む所です。

本日6Rまでは前日までの最適なモデルを利用してましたが、7R移行はこのRMSE 1.8872のモデルに変更しての実戦配備でしたが、

まあ、助かりました😁 この調子で行けるならまずまずな成績ですね。今回のモデルを1Rから行けてたらもう少し成績良かった感じでしたけどね。


途中経過ではありますが

 ひたすら学習プロセスは走らせてます。順位の最適RMSE 1.8872とか出たのでいつもの目安の検証をしてみました。

単勝:的中[28.56%] 回収[147.12%] 複勝:的中[63.59%] 回収[130.18%]
枠連:的中[17.32%] 回収[184.89%] 馬連:的中[13.02%] 回収[245.29%]
ワイド:的中[29.43%] 回収[211.01%] 馬単:的中[7.22%] 回収[239.79%]
三連複:的中[7.96%] 回収[436.62%] 三連単:的中[1.68%] 回収[496.17%]
予想[6,912] 的中[4,490] (64.96%) 購入[¥4,769,200] 払戻[¥14,325,430 (300.37%)]

的中率は少し上がってますが、回収率が微減と微妙です。的中率の上昇は歓迎しなきゃですね。ただ、まだ2,400秒20回の5回目なんで今後にも期待です。

相変わらずOutOfMemoryは解消せず

 ビルドし直しても結局OutOfMemoryは発生してます。まっ、制限なしを制限しても変わらなくても当然と言えば当然な気はします。次からは触らずにビルドします。

で、通常用2,400秒20回をしてみたんですが、

2023/09/15     10:50         949856 SouhaTime2400_11899.zip
2023/09/15     11:30         208622 SouhaTime2400_11960.zip
2023/09/15     12:11         637643 SouhaTime2400_11815.zip
2023/09/15     12:56       87637330 SouhaTime2400_8165.zip
2023/09/15     13:36         273158 SouhaTime2400_12092.zip
2023/09/15     14:16         677329 SouhaTime2400_11558.zip
2023/09/15     14:57         345389 SouhaTime2400_11813.zip
2023/09/15     15:39        1147239 SouhaTime2400_12122.zip
2023/09/15     16:19          20216 SouhaTime2400_12893.zip
2023/09/15     16:59          82066 SouhaTime2400_12162.zip
2023/09/15     17:39         274620 SouhaTime2400_11847.zip
2023/09/15     18:31      154052923 SouhaTime2400_8992.zip
2023/09/15     19:18      173740647 SouhaTime2400_8114.zip
2023/09/15     20:01       38622341 SouhaTime2400_9672.zip
2023/09/15     20:42        1056055 SouhaTime2400_11574.zip
2023/09/15     21:31      111048349 SouhaTime2400_8715.zip
2023/09/15     22:11         219802 SouhaTime2400_11824.zip
2023/09/15     23:02      181090741 SouhaTime2400_8111.zip
2023/09/15     23:45       50058699 SouhaTime2400_8658.zip
2023/09/16      0:26         485985 SouhaTime2400_11576.zip

最適はなんとか18回目に更新出来てますが、

単勝:的中[20.16%] 回収[82.23%] 複勝:的中[47.86%] 回収[83.17%]
枠連:的中[11.82%] 回収[92.16%] 馬連:的中[7.78%] 回収[80.83%]
ワイド:的中[18.53%] 回収[85.86%] 馬単:的中[4.34%] 回収[82.99%]
三連複:的中[3.99%] 回収[72.79%] 三連単:的中[0.78%] 回収[54.03%] 
予想[6,314] 的中[3,109] (49.24%) 購入[¥4,360,500] 払戻[¥3,948,770 (90.56%)]

的中率、回収率共にダウンなものでした😖 RMSEってどれだけ誤差が少ないかの指標なんで、着順予測に直結してる訳ではないって事なのかな。

今週末の戦略検討するのに先週の予想を確認してると、予想表示が変わっている事に気が付きました。これ、先々週末の時に前日と当日とかで予想が変わってるのに気が付きましたが、朝の予想はレース発送時点までは変わってないのは確認してます。何かがミスコーディングされてるとしたら嫌な感じです。

TensorFlowには相変わらず苦戦してます。Python環境構築でも苦労したりで...来月には3.12がリリースされるっていうからRC2を入れてみるがTensorFlowが新バージョン未対応で元に戻したりとかね。TensorFlow.NETにも色々バージョンがあったり、TensorFlow for .NETが存在してたり、まだまだ環境自体が微妙なのも苦労させられる原因の一つですね。

2023/09/15

LightGBM v4.1.0

LightGBMのGitHubに行ってみると3日前にv4.1.0がリリースされてました。って事で改めてダウンロードしてビルド。そんな裏でも学習プロセスは稼働してたんですがOutOfMemoryの文字が目に入ったので、この際って事でFAQの指示に従おうと確認すると、まあ、キャッシュのサイズ指定を変えるって事なんですが、これが元々は無制限になってまして、これ、逆に制限して意味あるかは別として、うちは実メモリ64GBしか積んでませんので32GB程度にしてみようかと思いましたが、まあ、この際だから(?)40GBって事にしてビルドしてみました。これがどうなるかは何度か動かしてみない事には分からないです。

学習データが200MBとして、その10倍は必要になるって話で2GBです。その20倍用意してるので、これで足りなきゃどうしようもないです。しかし、チラッと見たその辺りの資料に100GB超えのものもあったので何ともです。今後数年すれば128GB積んだPCも普通に組める時代になるかもですけど😜

追記 2023/9/15 19:39
40GBでは相変わらずOutOfMemoryExceptionはあるので50GBにしてビルドし直してみましたが、実行中にコピーしてどうなのかは微妙です。

トレーニングの平均学習時間未満

 やはりCSVファイルの大きさからModel Builderで示されている平均学習時間より短いとたとえ回数こなしても良い結果は得られない感じですね。いやまあ、それは当然だと言われれはそうなんですけどね😓 まあ、前回1,000秒の次に選択したのは1,500秒40回です。

2023/09/14     13:50         746578 SouhaTime1500_12045.zip
2023/09/14     14:21       75659232 SouhaTime1500_8472.zip
2023/09/14     14:46         182161 SouhaTime1500_12094.zip
2023/09/14     15:12         379075 SouhaTime1500_11723.zip
2023/09/14     15:37         113010 SouhaTime1500_11969.zip
2023/09/14     16:02         249514 SouhaTime1500_12082.zip
2023/09/14     16:28         698401 SouhaTime1500_11483.zip
2023/09/14     16:54         790689 SouhaTime1500_11466.zip
2023/09/14     17:19         105138 SouhaTime1500_12341.zip
2023/09/14     17:44         186409 SouhaTime1500_12150.zip
2023/09/14     18:09         251044 SouhaTime1500_11875.zip
2023/09/14     19:02       35330180 SouhaTime1500_8736.zip
2023/09/14     19:28         273675 SouhaTime1500_12025.zip
2023/09/14     19:53          79759 SouhaTime1500_12032.zip
2023/09/14     20:19         861538 SouhaTime1500_11698.zip
2023/09/14     20:44         104999 SouhaTime1500_11980.zip
2023/09/14     21:10        1037961 SouhaTime1500_11410.zip
2023/09/14     21:35          72554 SouhaTime1500_12351.zip
2023/09/14     22:02        1691274 SouhaTime1500_11200.zip
2023/09/14     22:27         268791 SouhaTime1500_12089.zip
2023/09/14     23:00       98932105 SouhaTime1500_9666.zip
2023/09/14     23:27       17923794 SouhaTime1500_9240.zip
2023/09/14     23:52         677588 SouhaTime1500_11619.zip
2023/09/15      0:19       43405673 SouhaTime1500_8651.zip
2023/09/15      0:44          49834 SouhaTime1500_12668.zip
2023/09/15      1:10         283343 SouhaTime1500_11937.zip
2023/09/15      1:35         837529 SouhaTime1500_11366.zip
2023/09/15      2:01         463779 SouhaTime1500_11628.zip
2023/09/15      2:27         435365 SouhaTime1500_12027.zip
2023/09/15      2:53        1103468 SouhaTime1500_11717.zip
2023/09/15      3:24      104184350 SouhaTime1500_9679.zip
2023/09/15      3:49          79960 SouhaTime1500_12193.zip
2023/09/15      4:15         199117 SouhaTime1500_11887.zip
2023/09/15      4:40          63591 SouhaTime1500_12655.zip
2023/09/15      5:15      129856020 SouhaTime1500_9685.zip
2023/09/15      5:44       52821808 SouhaTime1500_9701.zip
2023/09/15      6:10       38202202 SouhaTime1500_8437.zip
2023/09/15      6:35          63294 SouhaTime1500_12291.zip
2023/09/15      7:01         269930 SouhaTime1500_11798.zip

40回行っているのによくよく確認すると39ファイルしかないんですが、RMSEが同じで上書きされた可能性かも。14日18:09の次が14日19:02分になってるのでその間のトライアルとそれ以降で一致して上書きされているのかと。まあ、ログで確認すれば...18:35に11980がセーブされているので20:44に上書きされてますね。38回目に最適出てるんですが、それでもこれまでの最適は超えてません。なので1,000秒も1,500秒も時間が短過ぎるんだと思います。

1,000秒 → 0.8282
1,500秒 → 0.8437
2,000秒 → 0.8205
2,500秒 → 0.8136
3,000秒 → 0.8160

これまでの最適は2,500秒なので時間的にはその辺りが妥当なんだと。ただ、回数が違ったのが影響してるかもですが、リニアではない感じなので判断が微妙になる。ただ、可能なら0.8の壁を破りたい。

2023/09/14

時間のチョイスを

通常用1,000秒50回を行いました。15時間程度掛かりましたが先程終了。

2023/09/13     21:51         430022 SouhaTime1000_11627.zip
2023/09/13     22:09       37502055 SouhaTime1000_8282.zip
2023/09/13     22:27         833136 SouhaTime1000_11373.zip
2023/09/13     22:46       12094312 SouhaTime1000_10348.zip
2023/09/13     23:04        1810569 SouhaTime1000_11214.zip
2023/09/13     23:21           6919 SouhaTime1000_23135.zip
2023/09/13     23:38         176868 SouhaTime1000_11891.zip
2023/09/13     23:54         154123 SouhaTime1000_12064.zip
2023/09/14      0:28          53251 SouhaTime1000_12131.zip
2023/09/14      0:45         190291 SouhaTime1000_12004.zip
2023/09/14      1:03         455487 SouhaTime1000_12104.zip
2023/09/14      1:21        1424381 SouhaTime1000_11525.zip
2023/09/14      1:38         212444 SouhaTime1000_11827.zip
2023/09/14      1:55         143483 SouhaTime1000_11968.zip
2023/09/14      2:11          67912 SouhaTime1000_12412.zip
2023/09/14      2:33      109471149 SouhaTime1000_8554.zip
2023/09/14      2:50         294649 SouhaTime1000_12167.zip
2023/09/14      3:10       56305143 SouhaTime1000_9671.zip
2023/09/14      3:27         585320 SouhaTime1000_11513.zip
2023/09/14      3:44         240082 SouhaTime1000_11867.zip
2023/09/14      4:02         281797 SouhaTime1000_11936.zip
2023/09/14      4:18          50568 SouhaTime1000_12310.zip
2023/09/14      4:36         657353 SouhaTime1000_11991.zip
2023/09/14      4:53         522535 SouhaTime1000_11903.zip
2023/09/14      5:11         491405 SouhaTime1000_11607.zip
2023/09/14      5:27         218514 SouhaTime1000_11831.zip
2023/09/14      5:44         199988 SouhaTime1000_12304.zip
2023/09/14      6:01         230624 SouhaTime1000_12182.zip
2023/09/14      6:18          52506 SouhaTime1000_13134.zip
2023/09/14      6:35         212483 SouhaTime1000_12036.zip
2023/09/14      6:52          78088 SouhaTime1000_21169.zip
2023/09/14      7:09         199822 SouhaTime1000_11828.zip
2023/09/14      7:26         462420 SouhaTime1000_11790.zip
2023/09/14      7:44        6893866 SouhaTime1000_10560.zip
2023/09/14      8:01          68832 SouhaTime1000_22392.zip
2023/09/14      8:18         125465 SouhaTime1000_12660.zip
2023/09/14      8:35          52463 SouhaTime1000_14397.zip
2023/09/14      8:51         365330 SouhaTime1000_11782.zip
2023/09/14      9:09         358132 SouhaTime1000_12341.zip
2023/09/14      9:26          48361 SouhaTime1000_22783.zip
2023/09/14      9:43         448010 SouhaTime1000_11638.zip
2023/09/14     10:00         158100 SouhaTime1000_12282.zip
2023/09/14     10:16         187402 SouhaTime1000_12162.zip
2023/09/14     10:33         286004 SouhaTime1000_18097.zip
2023/09/14     10:50         468181 SouhaTime1000_11861.zip
2023/09/14     11:07        6578614 SouhaTime1000_8994.zip
2023/09/14     11:24         247376 SouhaTime1000_12217.zip
2023/09/14     11:41           6830 SouhaTime1000_24626.zip
2023/09/14     12:01       75302236 SouhaTime1000_10018.zip

結局これまでの最適を超えるものは出ませんでした。時間を無駄にした感じですが、これもやってみなきゃ分からない事なので、今後の参考にはなるかな。次は1,500秒にするか3,500秒とかにするかが何とも判断し辛いです。

2023/09/13

数をこなせばもしかすると

 順位2,500秒20回してみました。

2023/09/13      7:47         464009 RaceJuni2500_19683.zip
2023/09/13      8:29         287020 RaceJuni2500_19725.zip
2023/09/13      9:12         384113 RaceJuni2500_19664.zip
2023/09/13      9:54         154176 RaceJuni2500_19788.zip
2023/09/13     10:35         122264 RaceJuni2500_19814.zip
2023/09/13     11:18         576892 RaceJuni2500_19597.zip
2023/09/13     12:01         308365 RaceJuni2500_19710.zip
2023/09/13     12:43         190353 RaceJuni2500_19740.zip
2023/09/13     13:24          85604 RaceJuni2500_19820.zip
2023/09/13     14:06         181645 RaceJuni2500_19780.zip
2023/09/13     14:49         299404 RaceJuni2500_19722.zip
2023/09/13     15:31         334204 RaceJuni2500_19808.zip
2023/09/13     16:13         236373 RaceJuni2500_19769.zip
2023/09/13     16:55         104292 RaceJuni2500_19849.zip
2023/09/13     17:37         112791 RaceJuni2500_20095.zip
2023/09/13     19:00           7151 RaceJuni2500_20737.zip
2023/09/13     19:42          26424 RaceJuni2500_20252.zip
2023/09/13     20:24         170778 RaceJuni2500_19813.zip

結果的には今一でした。6回目が最適でしたが2,000秒の最適は超えませんでした。なので検証もしてません。

TensorFlow.NETなんですが、どうも上手く進められない。更に今後Ver1.0がリリースされるのか何だったか正式名称か何かを募集してた感じ。なので、早々にリリースされるならそこで上手く乗れればと思ってみたり。ってのも、現バージョンはいくつかある様でそのバージョン違いで微妙な違いがあったりで、ネットで見つける先駆者の情報が嚙み合わなかったり。

2023/09/12

分からなければ試すしかない

 通常用2,500秒20回をしてみました。

2023/09/12      7:00          59826 SouhaTime2500_12548.zip
2023/09/12      7:42           6919 SouhaTime2500_21994.zip
2023/09/12      8:26        2240640 SouhaTime2500_11604.zip
2023/09/12      9:09        1350758 SouhaTime2500_11766.zip
2023/09/12      9:59      173425459 SouhaTime2500_8449.zip
2023/09/12     10:41         456203 SouhaTime2500_11987.zip
2023/09/12     11:25       12116191 SouhaTime2500_10897.zip
2023/09/12     12:07         199826 SouhaTime2500_12215.zip
2023/09/12     12:50         933746 SouhaTime2500_11633.zip
2023/09/12     13:32         159402 SouhaTime2500_11950.zip
2023/09/12     14:14         458781 SouhaTime2500_11884.zip
2023/09/12     14:57         890778 SouhaTime2500_12142.zip
2023/09/12     15:49      247165665 SouhaTime2500_8231.zip
2023/09/12     16:31          95703 SouhaTime2500_12008.zip
2023/09/12     17:13         336280 SouhaTime2500_11717.zip
2023/09/12     17:55         595154 SouhaTime2500_11607.zip
2023/09/12     18:37         318260 SouhaTime2500_11720.zip
2023/09/12     19:26      147512024 SouhaTime2500_8136.zip
2023/09/12     20:08         152211 SouhaTime2500_11887.zip
2023/09/12     20:50         134492 SouhaTime2500_12220.zip

18回目に最適なRMSE 0.8136が出てくれて一安心。で、いつもの検証ですが、

単勝:的中[21.89%] 回収[83.48%] 複勝:的中[49.89%] 回収[84.63%]
枠連:的中[11.29%] 回収[83.16%] 馬連:的中[7.89%] 回収[81.46%] 
ワイド:的中[18.51%] 回収[79.18%] 馬単:的中[4.59%] 回収[84.83%]
三連複:的中[4.37%] 回収[74.51%] 三連単:的中[1.11%] 回収[76.98%]
予想[6,314] 的中[3,241] (51.33%) 購入[¥4,360,500] 払戻[¥4,043,610 (92.73%)]

これ、的中率がやっと上がってますが、回収率が下がってます。もう少し改善の余地がある感じですが、そこはもしかしたら...


1回の学習時間

 通常用3,000秒20回が終わりました。

2023/09/11      6:58         727617 SouhaTime3000_11427.zip
2023/09/11      7:59      111843050 SouhaTime3000_8314.zip
2023/09/11      8:52       52451010 SouhaTime3000_8181.zip
2023/09/11      9:42         479920 SouhaTime3000_12078.zip
2023/09/11     10:33         143413 SouhaTime3000_12221.zip
2023/09/11     11:23          91429 SouhaTime3000_12313.zip
2023/09/11     12:19       92940094 SouhaTime3000_9694.zip
2023/09/11     13:09         162057 SouhaTime3000_11966.zip
2023/09/11     14:01       49812041 SouhaTime3000_8529.zip
2023/09/11     14:52         759207 SouhaTime3000_11820.zip
2023/09/11     15:42         117313 SouhaTime3000_12327.zip
2023/09/11     16:33         593628 SouhaTime3000_11893.zip
2023/09/11     17:24         334006 SouhaTime3000_11697.zip
2023/09/11     18:16           8861 SouhaTime3000_14169.zip
2023/09/11     19:07         518268 SouhaTime3000_11564.zip
2023/09/11     19:58         284490 SouhaTime3000_12179.zip
2023/09/11     21:07      271441003 SouhaTime3000_8160.zip
2023/09/11     21:58         625779 SouhaTime3000_12190.zip
2023/09/11     22:48         179535 SouhaTime3000_11884.zip
2023/09/11     23:39         505512 SouhaTime3000_11579.zip

17回目のRMSE 0.8160が最適でした。いつもの目安の検証ですが、

単勝:的中[15.95%] 回収[86.88%] 複勝:的中[37.95%] 回収[80.15%]
枠連:的中[7.32%] 回収[91.02%] 馬連:的中[4.56%] 回収[74.65%]
ワイド:的中[11.75%] 回収[90.17%] 馬単:的中[2.49%] 回収[92.37%]
三連複:的中[2.36%] 回収[102.67%] 三連単:的中[0.41%] 回収[118.46%]
予想[6,314] 的中[2,480] (39.28%) 購入[¥4,360,500] 払戻[¥4,595,460 (105.39%)]

前回の最適よりも的中率が下がるも回収率が上がってます。まあ、誤差レベルのRMSE上昇だとそんな感じもあるのかも。

相変わらずトライアルのエラーもなんですが、タイムアウトでの長時間トライアルの途中での学習終了なんかが気になります。もう一度3,000秒20回をやるか、時間延ばしてやるべきかが悩み所です。

2023/09/11

機械学習とディープラーニング

 今現在の新馬戦用CSVでは15項目、通常用CSVでは60項目、順位用CSVでは28項目です。機械学習とディープラーニングの違いとかを調べると単純なものは機械学習で複雑になるとディープラーニングが良い感じの話があるようです。通常用の精度がもう一息な感じなのはもしかすると機械学習ではなく、ディープラーニングしなきゃならないレベルなのかもと思い始めてはいましたが、TensorFlowはディープラーニングらしいので調べてはいるのですがなかなか難しいです。ただ、現状から更に上を目指すなら避けて通れない気がしてきました。

今はちょっと別の機能をやり始めたので、これ完成させるには数日掛かるかと思いますので、その後に本腰入れてみます。ただ、単純にコーディングの量をこなすだけなのでCPUパワーは余ってますので通常用の3,000秒20回やり始めました。既に2,000秒の最適は超えたのでちょっと期待です。

2023/09/10

最適な学習時間と回数

 新馬戦用は1,000秒20回でまずまずのモデルが得られている感じなので特に変える必要は感じません。通常用と順位はなんともです。新馬戦用の学習でもトライアルがちょっと長引いてタイムアウトでってのはあります。

2023/09/10      3:34          59182 RaceJuni2000_20253.zip
2023/09/10      4:08         188404 RaceJuni2000_20171.zip
2023/09/10      4:41          83293 RaceJuni2000_20228.zip
2023/09/10      5:15        2396160 RaceJuni2000_19582.zip
2023/09/10      5:49         322008 RaceJuni2000_20133.zip
2023/09/10      7:48       16340028 RaceJuni2000_19101.zip
2023/09/10      8:28      146488533 RaceJuni2000_19673.zip
2023/09/10      9:02          36184 RaceJuni2000_20285.zip
2023/09/10      9:36         217199 RaceJuni2000_20200.zip
2023/09/10     10:09          14636 RaceJuni2000_20391.zip
2023/09/10     10:43         142863 RaceJuni2000_20230.zip
2023/09/10     11:16         386012 RaceJuni2000_19916.zip
2023/09/10     12:23          50359 RaceJuni2000_20265.zip
2023/09/10     12:57         172542 RaceJuni2000_20217.zip
2023/09/10     13:35       39641310 RaceJuni2000_19260.zip
2023/09/10     14:08           5736 RaceJuni2000_20738.zip
2023/09/10     14:42         110151 RaceJuni2000_20201.zip
2023/09/10     15:15          57918 RaceJuni2000_20254.zip
2023/09/10     15:49         211943 RaceJuni2000_20241.zip
2023/09/10     16:23         112154 RaceJuni2000_20231.zip
2023/09/10     16:56         172342 RaceJuni2000_20194.zip
2023/09/10     17:30         210605 RaceJuni2000_20197.zip
2023/09/10     18:04          80145 RaceJuni2000_20234.zip
2023/09/10     18:37         113693 RaceJuni2000_20243.zip

順位2,000秒20回ですが、4回の後に止まらない現象が出たので(?)一旦中断して再度20回やったのでちょっと多かったです。最適は6回目に出てます。

単勝:的中[28.27%] 回収[182.10%] 複勝:的中[63.17%] 回収[150.21%]
枠連:的中[16.74%] 回収[214.49%] 馬連:的中[12.04%] 回収[302.18%] 
ワイド:的中[28.21%] 回収[273.03%] 馬単:的中[6.25%] 回収[340.38%]
三連複:的中[6.81%] 回収[532.11%] 三連単:的中[1.27%] 回収[771.07%] 
予想[6,912] 的中[4,471] (64.68%) 購入[¥4,769,200] 払戻[¥18,967,200 (397.70%)]

参考程度のいつもの検証です。少しでも改善出来る様に時間と回数の調整してみます。

2023/09/09

新たにやり直した新馬戦用

 新馬戦用1,000秒20回は5時間半程度で終わるので先に。

2023/09/09     11:39         179216 ShinbaTime1000_12614.zip
2023/09/09     11:56          48617 ShinbaTime1000_13855.zip
2023/09/09     12:13       36997509 ShinbaTime1000_9598.zip
2023/09/09     12:30        1213571 ShinbaTime1000_12852.zip
2023/09/09     12:47         227556 ShinbaTime1000_12983.zip
2023/09/09     13:03         109980 ShinbaTime1000_12718.zip
2023/09/09     13:20         315004 ShinbaTime1000_12243.zip
2023/09/09     13:37          38948 ShinbaTime1000_13194.zip
2023/09/09     13:54          62085 ShinbaTime1000_13392.zip
2023/09/09     14:10          54762 ShinbaTime1000_13181.zip
2023/09/09     14:27        8800912 ShinbaTime1000_9737.zip
2023/09/09     14:44         614565 ShinbaTime1000_12649.zip
2023/09/09     15:04      177169755 ShinbaTime1000_9681.zip
2023/09/09     15:20          40022 ShinbaTime1000_13196.zip
2023/09/09     15:37         113804 ShinbaTime1000_12697.zip
2023/09/09     15:54          73099 ShinbaTime1000_13255.zip
2023/09/09     16:10         127551 ShinbaTime1000_12737.zip
2023/09/09     16:28       46916965 ShinbaTime1000_9766.zip
2023/09/09     16:47       66661701 ShinbaTime1000_9969.zip
2023/09/09     17:03         766378 ShinbaTime1000_13351.zip

3回目に最適が出てますね。

単勝:的中[64.55%] 回収[668.29%] 複勝:的中[90.97%] 回収[255.52%]
枠連:的中[59.52%] 回収[1,055.13%] 馬連:的中[52.51%] 回収[2,706.86%] 
ワイド:的中[78.09%] 回収[1,144.97%] 馬単:的中[45.32%] 回収[4,693.14%]
三連複:的中[43.14%] 回収[10,665.42%] 三連単:的中[33.44%] 回収[56,316.99%] 
予想[598] 的中[546] (91.30%) 購入[¥408,700] 払戻[¥46,244,320 (11,314.98%)]

この所の新馬戦用はこんな当て過ぎな検証なので、まあこんな感じかなって程度に。通常用は倍の時間掛かるのでまだ半分しか終わってませんが、ここまでの最適なRMSEは0.8205となってます。

単勝:的中[16.77%] 回収[80.40%] 複勝:的中[41.70%] 回収[86.54%]
枠連:的中[8.02%] 回収[77.59%] 馬連:的中[4.74%] 回収[60.45%]
ワイド:的中[12.37%] 回収[71.51%] 馬単:的中[2.34%] 回収[58.22%]
三連複:的中[2.33%] 回収[63.55%] 三連単:的中[0.43%] 回収[36.97%]
予想[6,314] 的中[2,728] (43.21%) 購入[¥4,360,500] 払戻[¥3,333,470 (76.45%)]

まあ、少しはマシですが、ちょっとまだまだな感じはしますね。後半で少し改善してくれれば良いのですが、このままでは実戦には無理っぽいです。

追記2023/9/10 3:05
通常用2,000秒20回が終わりました。

2023/09/09     11:57         327261 SouhaTime2000_11922.zip
2023/09/09     12:47      147707466 SouhaTime2000_9737.zip
2023/09/09     13:25       63475717 SouhaTime2000_8205.zip
2023/09/09     13:58         108016 SouhaTime2000_11998.zip
2023/09/09     14:32         472724 SouhaTime2000_11770.zip
2023/09/09     15:05         354357 SouhaTime2000_11827.zip
2023/09/09     15:41         817692 SouhaTime2000_11402.zip
2023/09/09     16:15         478467 SouhaTime2000_11591.zip
2023/09/09     16:49         511662 SouhaTime2000_11608.zip
2023/09/09     17:22         276208 SouhaTime2000_11755.zip
2023/09/09     17:56         668952 SouhaTime2000_11475.zip
2023/09/09     18:30         171237 SouhaTime2000_11991.zip
2023/09/09     19:03         499462 SouhaTime2000_11736.zip
2023/09/09     19:39       44793754 SouhaTime2000_9703.zip
2023/09/09     20:13         159215 SouhaTime2000_12478.zip
2023/09/09     20:52         126956 SouhaTime2000_12423.zip
2023/09/09     21:26         486510 SouhaTime2000_11605.zip
2023/09/09     22:00       10012431 SouhaTime2000_9203.zip
2023/09/09     22:34         647998 SouhaTime2000_11459.zip
2023/09/09     23:40      232934030 SouhaTime2000_9701.zip

結局あのまま最適の更新は無かったorz

通常用検証から新馬・未出走除外

新馬戦用を別に学習しているのに通常用検証時には全レース対象にしてきましたが、新馬戦以外で学習させているので新馬・未出走は検証から外してみたんですが、これが酷い😖

単勝:的中[12.12%] 回収[77.61%] 複勝:的中[32.29%] 回収[84.83%]
枠連:的中[6.24%] 回収[78.39%] 馬連:的中[3.53%] 回収[73.78%]
ワイド:的中[9.09%] 回収[77.93%] 馬単:的中[1.69%] 回収[68.55%]
三連複:的中[1.65%] 回収[42.56%] 三連単:的中[0.30%] 回収[49.67%] 
予想[6,314] 的中[2,121] (33.59%) 購入[¥4,360,500] 払戻[¥3,447,220 (79.06%)]

ここまで悪い原因がバグなのか何なのか突き止めないと使い物にならないレベルです。不思議なのはこれでRMSEが0.6791とかなんです。新馬戦用のRMSEが0.9232なのでそれ以上の精度でもおかしくないのに変です。

今、順位の2,000秒20回が終わりました。

2023/09/09      0:07         196884 RaceJuni2000_41186.zip
2023/09/09      0:41         241795 RaceJuni2000_41518.zip
2023/09/09      1:15         152402 RaceJuni2000_41515.zip
2023/09/09      1:48          51905 RaceJuni2000_41614.zip
2023/09/09      2:22         302516 RaceJuni2000_41345.zip
2023/09/09      2:56         169227 RaceJuni2000_41401.zip
2023/09/09      3:29          56364 RaceJuni2000_41615.zip
2023/09/09      4:03          39621 RaceJuni2000_41644.zip
2023/09/09      4:36         969017 RaceJuni2000_41514.zip
2023/09/09      5:10         172104 RaceJuni2000_41230.zip
2023/09/09      5:44         101033 RaceJuni2000_41436.zip
2023/09/09      6:17           5657 RaceJuni2000_43010.zip
2023/09/09      6:50        6341705 RaceJuni2000_36952.zip
2023/09/09      7:24         228994 RaceJuni2000_41346.zip
2023/09/09      7:58          98970 RaceJuni2000_41552.zip
2023/09/09      8:31         110657 RaceJuni2000_41458.zip
2023/09/09      9:05         138835 RaceJuni2000_41449.zip
2023/09/09      9:38          70394 RaceJuni2000_42068.zip
2023/09/09     10:14        1374808 RaceJuni2000_40960.zip
2023/09/09     10:48          22737 RaceJuni2000_42574.zip

13回目の3.6952が最適っぽいですが、↑の通常用の問題抱えたものなので微妙です。

でまあ、気になってたのはファイル名からRMSEだと思ってる数字を頼りに選択してますが、これがもしかしてと思い、試しにSouhaTime2000_13140.zipを検証してみると

単勝:的中[13.62%] 回収[85.79%] 複勝:的中[33.21%] 回収[81.15%]
枠連:的中[5.84%] 回収[71.48%] 馬連:的中[3.15%] 回収[73.99%]
ワイド:的中[8.68%] 回収[74.08%] 馬単:的中[1.74%] 回収[100.82%]
三連複:的中[1.24%] 回収[88.29%] 三連単:的中[0.27%] 回収[116.23%] 
予想[6,314] 的中[2,185] (34.61%) 購入[¥4,360,500] 払戻[¥4,325,890 (99.21%)]

となり、RMSEが1.3140だと思うモデルが0.6791と思われるものより良い結果とか。これヒントにコーディング見直してバグ発見!修正してやり直しです。

2023/09/08

若干微妙な感じ

 新馬戦用は問題なく終わってましたが、通常用が残り2回となってましたが、時間が来てもトライアルが終わらない現象が出ました。実はこれ、何回か起きてたんですが、AutoMLの部分の話で自分がどうこう出来る所ではないので、あれ?何これ?って感じでたまたま起きた事象かなって感じにしてました。まあ、仮にレポートしても対応は微妙だし、取敢えずここまでの成果です。新馬戦用は

2023/09/08      9:29         148633 ShinbaTime1000_16842.zip
2023/09/08      9:46       23272496 ShinbaTime1000_11544.zip
2023/09/08     10:03         448739 ShinbaTime1000_13970.zip
2023/09/08     10:20       14079345 ShinbaTime1000_20187.zip
2023/09/08     10:37          38337 ShinbaTime1000_17096.zip
2023/09/08     10:53         516627 ShinbaTime1000_15169.zip
2023/09/08     11:11       69679605 ShinbaTime1000_9232.zip
2023/09/08     11:28         223011 ShinbaTime1000_17058.zip
2023/09/08     11:44        1456861 ShinbaTime1000_15801.zip
2023/09/08     12:01         145938 ShinbaTime1000_17890.zip
2023/09/08     12:18       17334374 ShinbaTime1000_10668.zip
2023/09/08     12:35         531141 ShinbaTime1000_13742.zip
2023/09/08     12:52         137331 ShinbaTime1000_16010.zip
2023/09/08     13:09          31434 ShinbaTime1000_18086.zip
2023/09/08     13:26         273364 ShinbaTime1000_16321.zip
2023/09/08     13:43         387962 ShinbaTime1000_15451.zip
2023/09/08     14:00         153446 ShinbaTime1000_18000.zip
2023/09/08     14:20      114292635 ShinbaTime1000_9297.zip
2023/09/08     14:37         788773 ShinbaTime1000_14789.zip
2023/09/08     14:53        1616981 ShinbaTime1000_13364.zip

って事で、7回目が最適でした。通常用は

2023/09/08      9:48       11398690 SouhaTime2000_8880.zip
2023/09/08     10:28      122111871 SouhaTime2000_6945.zip
2023/09/08     11:02         140213 SouhaTime2000_15064.zip
2023/09/08     11:35         191641 SouhaTime2000_14145.zip
2023/09/08     12:15      101928695 SouhaTime2000_6898.zip
2023/09/08     12:54      127752278 SouhaTime2000_6791.zip
2023/09/08     13:28         525236 SouhaTime2000_13389.zip
2023/09/08     14:02          58979 SouhaTime2000_17001.zip
2023/09/08     14:35         147964 SouhaTime2000_14825.zip
2023/09/08     15:08          48292 SouhaTime2000_60646.zip
2023/09/08     15:42         263436 SouhaTime2000_14512.zip
2023/09/08     16:16         360107 SouhaTime2000_13706.zip
2023/09/08     16:49         389296 SouhaTime2000_13631.zip
2023/09/08     17:24         895749 SouhaTime2000_13181.zip
2023/09/08     17:57         416429 SouhaTime2000_14165.zip
2023/09/08     18:32        1233732 SouhaTime2000_13693.zip
2023/09/08     19:07        1525906 SouhaTime2000_14064.zip
2023/09/08     19:41         633240 SouhaTime2000_13140.zip

で、1つ少ないですが、6回目が最適となりました。さて、これらを元に順位用CSVの再度出力が必要となり行ってます。これ、確か4時間弱だった記憶がありますが、それ済んだら再度順位学習ですね。

訂正 2023/9/9 7:24
アルゴリズム指定ミスな分も入れてしまってましたので修正。