2020年07月

13

【やってみた】H2O Driverless AIをIBM Power System AC922で動かして予想する (その2)

皆さま、こんにちは。 てくさぽBLOG メンバーの佐藤です。

前回の続きになります。

【やってみた】H2O Driverless AIをIBM Power System AC922で動かして競馬予想する (その1)

 

今回の目的

Driverless AIによって予測した内容と実際の結果を照らしあわせ、予測の精度が有用かどうか検証します。

前回、回帰分析が終了したところまで、書きました。
回帰分析した内容を確認します。

 

回帰分析結果を確認

イテレーション検証スコア

まず、左下の赤枠の中、イテレーション検証スコアから確認します。
こちらの内容はどのくらいの精度で的中するかになります。
0に近づくほど精度が高くなります。

スコアリングについては前回記載した通りMAEやRMSEをご確認ください。
スコアが、2.6021という値ですので、仮にスコアが1として1着予測としても3着程度までが平均精度になります。

 

特徴量の重要度

次に下中央の特徴量の重要度です。
こちらの内容はどのようなデータを用いて予測するのか?になります。どのデータを元にしどのような割合で利用するのか、予測の調合データです。
上に行くほど高い重要度になりますので、より着順に関係性が深い値ということになります。
一番上の CVTE とは Cross Validation Target Encoding の略で、着順が低いともう一方の数値の傾向があるという関連性を見つけており、CID調教素点は調教データを数値化した指数となります。
つまり、調教が良い状態であれば結果(着順)も良いという事になります。

2行目にご注目ください。
Freq とありますが、Frequency Encoding の略になります。Frequency Encoding とは、こういう条件のときにこうなりやすいという確率です。
例えば、”芝で1枠だと1着になりやすい” といった傾向分析になります。
このケースの場合、”情報指数” “条件” “距離適性” という3つのデータの特定条件が揃うと着順に対して傾向がある事を Driverless AI が発見しています。

Driverless AI の特徴として個々の列データの特徴だけでなく、複数列のデータを組み合わせ新たな条件を作り出せます。
複数の列データの組み合わせ及び抽出条件を様々テストするというのは手作業でやるには大変な労力になります。また人間の目でみて関係なさそうな組み合わせからも有効な組み合わせを発見できる、これが Driverless AI の強味になります。

 

予測

回帰分析が完了しましたので次は予測してみます。

まずは予測したいファイルを用意します。
今回回帰分析したデータは2020年3月頭までになるため、それより後の日付のデータを用意します。
回帰分析したデータを予測データとして読み込むと予測は可能ですが、非常に高い精度で的中してしまいますので、回帰分析に用いたデータより未来の2020年4月~2020年5月16日までのデータを用意しました。



Experience 画面から他のデータセットを用いて予測を押し、データを選択します。
するとしばらく待った後ファイルダウンロードが始まりますので保存します。
Driverless AI の内部では回帰分析で生成された条件式に従い計算するという作業しますが、答え合わせの処理ですので、回帰分析する時間よりはかなり短い時間で終わります。

少し待った後ファイルダウンロードが始まりますので保存します。
保存したファイルを開くと最終列に “着順.predicted” という列が追加されています。
これが Driverless AI が予測した順位になります。


予測結果は小数点で表示されます。

 

検証

実際の結果と予測データを照らし合わせます。

的中率を算出します。
今回は3連複、ボックス6頭という Driverless AI の結果の数字が低い順に6頭を選ぶと仮定して当たりはずれを検証しました。

3連複は任意の3頭が1着2着3着に入ることを予測する買い方になります。BOX は任意の数でのすべての組み合わせとなります。6頭BOX ですと20通りになります。
仮に12~18頭レースとすると三連複の組み合わせは220~816通りありますので、単純な確率ですと6頭BOX の場合の的中率は 2.5%~9% となります。

結果444レース中187レース的中しました。的中率約 41% となります。
純粋に的中率でいえば、完全なランダムと比較して圧倒的に高い数字ですので、予測は機能してるという事はわかります。

 

さらに精度を上げる

ここからはもう少し結果に対して掘り下げを行います。根気よくデータを見ることによってさらに精度を上げることができます。
今回のケース、条件によって的中率に変化があるのか検証します。
エクセルで頑張りましたが、この作業の時に IBM SPSS のような BIツールがあれば便利ではないかなと感じました。

いくつか見方を試してみたところ、レース番号と距離よって的中率にばらつきがあることがわかりました。

 

レース番号と的中率の関係

レース番号 レース数 あたり はずれ 的中率
1 37 23 14 62%
2 37 17 20 46%
3 37 16 21 43%
4 37 19 18 51%
5 37 11 26 30%
6 37 16 21 43%
7 37 19 18 51%
8 37 12 25 32%
9 37 16 21 43%
10 37 17 20 46%
11 37 9 28 24%
12 37 10 27 27%

レース距離と的中率の関係

レース距離 レース数 あたり はずれ 確率
1000 3 0 3 0.0%
1150 13 5 8 38.5%
1200 76 23 53 30.3%
1300 5 4 1 80.0%
1400 57 27 30 47.4%
1600 57 25 32 43.9%
1700 26 11 15 42.3%
1800 97 40 57 41.2%
1900 4 1 3 25.0%
2000 47 21 26 44.7%
2100 5 2 3 40.0%
2200 11 4 7 36.4%
2300 2 0 2 0.0%
2400 15 11 4 73.3%
2500 1 1 0 100.0%
2600 5 3 2 60.0%
2750 5 2 3 40.0%
2770 5 3 2 60.0%
2880 1 0 1 0.0%
2890 3 1 2 33.3%
3140 1 1 0 100.0%
3200 1 0 1 0.0%
3380 1 1 0 100.0%
3930 1 0 1 0.0%
4250 1 0 1 0.0%

第5レースと第11レースと第12が的中率が悪いため、外してみます。

次に20レース以上ある中で的中率が悪い距離を見てみます。
1200mが30%程で悪いので外します。

276レース中137的中で的中率49.6%という事でほぼ半分当てることができました。

 

払戻金傾向

払戻金に傾向があるか回帰分析してみます。
今度は配当金のデータを Driverless AI で解析してみます。
やり方は同じで Terget を配当金にします。


“このモデルを解釈” をクリックすると、データの傾向がわかります。


発走時刻で見ますと14:45以降が配当金が高い傾向がわかります。
14時45分以降ですと10R~12Rとなります。

こちらの条件で絞ると、狙い目のレースを絞ることができます。

 

AC922の優位性

最後に今回のデータを使って、AC922 と一般的な IAサーバとで Driverless AI の回帰分析時間を比較してみました。

条件をそろえるためにどちらもGPUは “無効”、
AC922 については、”48スレッド(Power9は1Coreあたりのスレッド数4)” “メモリ128GB”
に制限して実行しました。

【AC922(8335-GTH)】
Power9 2.4GHz~3.0GHz 40コア160スレッド →48スレッドに制限
メモリ1024GB →128GBに制限
GPU NVIDIA V100 16GB ×2 →GPU無効
960GB SSD ×2(RAID1)

回帰分析完了までの時間:2時間39分43秒

【IAServer】
Xeon E5-2680v3 2.5GHz~3.3GHz 12コア24スレッド
メモリ128GB
GPU Titan RTX ×1 →GPU無効
480GB SSD ×1

回帰分析完了までの時間:4時間23分54秒

 

まとめ

AIで競馬予測のまとめに入ります。

今回、出た予測結果に対して内容を掘り下げることをによって、適用条件を絞ることによりさらに高い精度で運用できる事を確認できました。Driverless AI の結果そのままではうまくいかない場合は範囲を絞って運用し、知見を貯め、追加のデータを用意し、徐々に適用範囲を広げていくのが良いと感じました。
また、AC922 Power9 の強力な演算性能により短時間で終わらせることも確認できました。

その他の記事

2022年06月24日

【早わかり】AIX と IBM i ライセンス情報

こんにちは。エヌアイシー・パートナーズ 村上です。 2022年度は新しい試みとして、 ・理解しているつもりだけど説明はできない ・時間があれば調べたいと思っていた ・当たり前な知識かもしれなくて質問しにくい という内容を取り上げた「早わかりシリーズ」を掲載していきます。 今回は、IBM Power のメインOS、AIX と IBM i のライセンス情報をご紹介します。 AIX とIBM i は、片方のライセンス情報しか知らないという方も意外と多いので、ぜひこの機会に比較しながら読んでみてくださいね。   セクション 1) 永続ライセンスのおさらい 2) マンスリーとサブスクリプションをご存じですか? 3) ライフサイクルとバージョンのポイント   1) 永続ライセンスのおさらい AIX とIBM i のスタンダードなライセンス「永続ライセンス」。 有効期限のない永続ライセンスは、SWMA (SoftWare MAintenance) と合わせて所有します。 永続ライセンス OSを利用できる権利。1年目に購入。 SWMA 「サブスクリプション(最新バージョンへのアップグレード)」と「テクニカルサポート(対象製品に対するQAサポート)」の権利。 1年~5年で選択し、継続するためには都度オーダーが必要。 更改などで新ハードウェアへ移行する場合、 AIX 永続ライセンスはIBM Power本体に紐づくので、新ハードウェアになるタイミングで永続ライセンスが買い直しになります IBM i 既存機のライセンスを新ハードウェア移管することが可能です(移行先の機械レベルが高くなる場合は追加料金が発生) IBM i には、移行中ライセンスとして安価なITL(IBM Temporary License)が提供されたり、DR機専用のライセンスがあったりもします。   2) マンスリーとサブスクリプションをご存じですか? さて、このセクションが今回のブログの本題です。 2022年6月現在、AIX とIBM i には「永続」「マンスリー」「サブスクリプション」と3種類のライセンスがあります。 以下は利用ケースのイメージです。 利用ケース 永続ライセンス ・長期間利用 マンスリーラインセンス ・移行時の短期利用 ・スパイク(最低限の環境をさっと作って概ねの方向性を確認する) サブスクリプションライセンス ・初期投資を抑えたい場合に利用 ・HWに依存せず臨機応変に利用(中長期間でAIXの場合) サブスクリプションライセンスは、AIX は2021年、IBM i は2022年に提供が開始されました。 (表が見えにくいのでクリックして拡大してご覧ください) サブスクリプションライセンスは、今後拡張が予定されています。 利用ケースにあったライセンスを選択できるようになってきたので、臨機応変な検討ができるようになりますね。   3) ライフサイクルとバージョンのポイント 2022年6月時点で、IBMは「AIX も IBM i も将来の投資を継続する」という発表をしています。 IBM Power ユーザとしては一安心です。 どちらのOSも、サポートライフサイクルは10年間となります。 下記にバージョンのポイントを纏めてみました。 <AIX > 購入できるバージョン v7.2 , v7.3 標準サポートがあるバージョン v7.1, v7.2, v7.3 どうやってもサポートが終わっているバージョン v5.3 実はまだ有償延長サポートがあるバージョン v6.1 TLが出るタイミング(※) 1回/年、成熟してくると1回/2年 サポートライフサイクル(10年) 標準(最短6年)+延長保守(3~5年) <IBM i > 購入できるバージョン v7.3 , v7.4, v7.5 標準サポートがあるバージョン v7.3, v7.4, v7.5 どうやってもサポートが終わっているバージョン v6.1 実はまだ有償延長サポートがあるバージョン v7.1, v7.2 TRが出るタイミング(※) 2回/年(最新バージョンと1世代前のバージョンに対して) サポートライフサイクル(10年) 標準(7年)+延長保守(3年) <※TLとTRの補足> TL:テクノロジー・レベル。AIXにおける問題の修正、新しいハードウェアのサポート、ソフトウェアの機能拡張が含まれたプログラム。 TR:テクノロジー・リフレッシュ。IBM i におけるオファリング、サービス、およびハードウェアの機能拡張を提供するプログラム。 かなり前のバージョンも、延長保守のサポートがあるため更改時も安心です。 ただ、延長保守サポートは、部品不足による急な保守終了や、新規の問い合わせに対応いただけない、という面があるので要注意です。 また、延長保守サポートには細かい前提が設けられており前提にも随時変更が入りますので、ご利用を検討される際はお問い合わせください。   さいごに つい先日(2022年6月)、IBM i の複数のソフトウェアラインセンスが無償化される発表(IBM PartnerWorld)がありました。 IBM i では更改の検討が始まると、実際に利用している有償ソフトウェアの見直しが入ったりして、見積もりに時間がかかることがありますよね。 有償ライセンスが減ったことで、見積もりが少しでも簡単になり助かります。 クラウドシフトが進む中で、ライセンス体系、課金、監査方法が複雑化しています。 弊社には毎日のようにパートナー様からライセンス関連の相談やお問い合わせが来ています。 OSのみではなく、あらゆるソフトウェアのライセンス情報収集に日々奮闘(?)しているSEが多数おりますので、お困りの際はお気軽にご連絡ください! ※ 本ブログの情報は時間経過とともに変更が入る可能性があります。   お問い合わせ この記事に関する、ご質問は下記までご連絡ください。 エヌアイシー・パートナーズ株式会社 E-Mail:voice_partners@niandc.co.jp  

back to top