機械学習
前回に引き続きリファクタリング。getParamの第1引数は、馬のデータが入ったファイルなんだけど、これを日本語(全角カナ)で読み込めるようにした。 これは単に、馬の名前は全角カナなので、ファイル名=馬の名前としておきたいというだけ。 calctime(getPa…
僕は、pythonの素人で、行き当たりばったりなコーディングをしているため、ソースが冗長で汚くなってきたので、このタイミングでリファクタリングしようと思います。機械学習で競馬予想という本筋から逸れてしまいますが、(筆者の)今後のためにも仕方あり…
そういえば、ちょっと前の話ですが、これにチームジェントルマンの一員として参加しました。 モバイルナースという人の顔色から体調の状態等を診断しアドバイスするというソフトを作ってみました。完成度的には、chainerを使ったディープラーニング部分の学…
前回のエントリの反省点を取り込んで見ました。反省点は以下の箇条書きのとおり。 パラメータとして(天候による)馬場の状態を追加する。 すべてのデータを使うよりも近場のデータ(直近2年分くらい?)を使う。 開催地によってタイムが変わる(馬場の整備…
大井競馬場に行ってきました。 ルールとしては、2015/09/18の第8R~第12Rまでをシステムに1着~4着をタイム順で予想させて、その通りに馬単の馬券を買うというかなり無茶なチャレンジです。 仕事後に競馬場に向かう都合で、10Rからしか実際には馬券を買えま…
前回予想に使ったプログラムの実装は以下のとおりです。 loadHorseDataでtsvファイルを読込みdataShapingで読み込んだデータを回帰分析しやすいように整形して、回帰分析でパラメータを取得という流れになっています。 回帰分析の説明変数は、距離、馬番、馬…
タイトルを「機械学習 ~其のXXX~」から実態に合わせて「機械学習で競馬予想 ~其のXXX~」に変えました。先日のエントリで分析したトップライジングですが、結果は、10着でタイムは1:15.7(75.7秒)という結果に終わり惨敗でした。 先日の分析では、タイムも…
前回のエントリでは1200mレースの着順事のタイムレンジを分析することで、1着の馬のタイム期待値を求めようとしてみましたが、レンジ幅が大きすぎていまいちな結果となったので、今回は馬のデータについて分析してみようと思います。データは以下のような感…
前回までは単に1200mのレースに絞ってデータを分析していましたが、今回は更に1200mのレースでも一般のレースに絞ってデータを分析してみたいと思います。 どういうことかというと、前回のレースは2歳限定、3歳限定といったレースのものも全部混ぜていたので…
前回のエントリで、1レース分の着順事のタイムをプロットしてみました。今回はこのデータを更に増やしてみます。 例によってnankankeiba.com/から大井競馬場の8/24~8/28の1200mのレースに絞ってデータを集め表示してみました。基本的には前回のエントリと同…
データを処理する際に、入手したデータをそのまま使えないことがあるのは、機械学習 其の003のとおり。今回は前回のデータを、結果として必要な部分だけを抽出、加工し表示してみます。 まずは、前回のデータは数値以外の箇所がnanとして読み込まれていたの…
SciPy SciPyには数値計算のための各種アルゴリズム(行列計算、クラスタリング、高速フーリエ変換、etc...)が実装されています。 また、SciPyの名前空間からNumPyの名前空間にアクセスするこも可能です。 # -*- coding: utf-8 -*- import scipy, numpy print …
NumPyやSciPyってな~に?って方は、こちら。 NumPyは、プログラミング言語Pythonにおいて数値計算を効率的に行うための拡張モジュールである。効率的な数値計算を行うための型付きの多次元配列(例えばベクトルや行列などを表現できる)のサポートをPython…
仕事やめたら自由になったけど、なんとか自活せにゃ~ってわけで、ちょっと齧ったことのある機械学習を学びなおそうと思い立ちました。 最終的な目標としては、競馬の予想システムを作成してニヤニヤしようと思ってます。実践 機械学習システム作者: Willi R…