(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022098507
(43)【公開日】2022-07-04
(54)【発明の名称】データ構造
(51)【国際特許分類】
G06Q 50/34 20120101AFI20220627BHJP
【FI】
G06Q50/34
【審査請求】未請求
【請求項の数】3
【出願形態】OL
(21)【出願番号】P 2020211903
(22)【出願日】2020-12-22
(71)【出願人】
【識別番号】718000680
【氏名又は名称】杉村 紀夫
(72)【発明者】
【氏名】杉村 紀夫
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049CC54
(57)【要約】
【課題】
競走馬の将来の成績の序列予測に用いることにより、POGにおいてゲーム参加者が候補馬をより効率的に選択できるように支援するデータ構造を提供する。
【解決手段】
競走馬の父、母父、性別、調教師、馬主、生産者、取引価格、母の競走成績、誕生月日、誕生時の母年齢から選択される少なくとも3つ以上のファクターを含むデータ構造であって、各データが上記ファクターごとで括られる過去世代の競走馬の成績に基づく数値データからなり、各データの重み係数に基づく演算をコンピュータに行わせることにより各競走馬を相対比較しうるスコア値を出力するようにしたものである。
【選択図】
図1
【特許請求の範囲】
【請求項1】
競走馬の父、母父、性別、調教師、馬主、生産者、取引価格、母の競走成績、誕生月日、誕生時の母年齢から選択される少なくとも3つ以上のファクターを含むデータ構造であって、各データが前記ファクターごとで括られる過去世代の競走馬の成績に基づく数値データからなり、各データの重み係数に基づく演算をコンピュータに行わせることにより各競走馬を相対比較しうるスコア値を出力することを特徴とする、競走馬の成績予測に用いられるデータ構造。
【請求項2】
請求項1に記載のデータ構造において、成績予測を行おうとする対象世代より過去世代の競走馬の前記データ構造を学習用データとして用いて、前記各データを説明変数とし、前記過去世代の競走馬の成績を表す情報を目的変数としてコンピュータに学習させることにより前記重み係数を得ることを特徴とする、データ構造。
【請求項3】
請求項2に記載のデータ構造において、前記重み係数を決定する方法として、過去世代のm頭の競走馬を賞金の大きい順に並べた1番目からi(但しi=1,2,3,・・・,n(n≦m))番目の馬までの賞金合計と、前記スコア値の大きい順に並べた1番目からi番目の馬までの賞金合計との差の、i=1番目からn番目までの積算値が最小となるように、前記重み係数が決定されることを特徴とする、データ構造。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、競走馬の成績予測に用いられるデータ構造に関する。
【背景技術】
【0002】
POG(Paper Owner Game)とは、参加者が現実の競走馬を仮想馬主として選択し、選択した競走馬の競走成績により得られる賞金を換算したポイントを競うゲームの一種である。ゲームの参加者は実際の馬主になるのではなく、「紙上での馬主」になることから、Paper Ownerと云われる。競馬雑誌やインターネット媒体が主催するPOGでは、多いもので数万人が参加する大規模なものもあり、獲得ポイント上位入賞者に賞品が授与されるなど、広く普及している。中央競馬を対象とする一般的なPOGのルールとしては、2歳新馬戦開始から翌年の東京優駿施工日の最終競走までの1年間を期間とし、未出走の新馬から10頭前後を選択、ポイントは1着から5着までの本賞金を1万分の1程度に換算、選択馬の獲得したポイントの合計により勝敗を決めるものが多い。
【0003】
毎年4月から6月にかけて、選択候補となる2歳馬の情報を掲載した書籍、いわゆるPOG本が出版される。例えば、「POGの達人」光文社、「天才のPOG青本」メディアボーイ、「競馬王のPOG本」ガイドワークス、「丸ごとPOG」サンケイスポーツなどがある。また、当該時期には多くの競馬雑誌、競馬専門紙、例えば、「優駿」中央競馬ピーアール・センター、「サラブレ」KADOKAWAなど、においてPOGの特集記事が組まれる。
【0004】
POGにおいて、将来、本賞金を多く獲得する可能性の高い2歳馬をいかに上手く選択できるかは、書籍、雑誌の情報の他、インターネットなどの大量の情報を効率よく取捨し、重要な情報を選別する技術に依るところが大きい。しかし、各種メディアから提供される2歳馬についての情報は、牧場、厩舎関係者、馬主らによるコメントと、記者、評論家らによる主観的な評価が主だったもので、客観性に乏しい。
【0005】
競馬王編集部編「負けないPOG入門」白夜書房出版 2009年には、競走馬の父、母、母父、性別、調教師、馬主、生産者、誕生月日、取引価格、募集価格といった客観的なデータを分析することにより、候補馬を絞り込む方法が記載されている。著書において、競走馬の父、性別、調教師、馬主、生産者、誕生月日といった各ファクターを比較するのに、1走あたり賞金という指標を用いている。
【0006】
1走あたり賞金とは、例えば調教師というファクターでデータを整理する場合、各調教師の厩舎に所属していた過去何世代かの競走馬のPOG期間中の本賞金合計をPOG期間中の総出走回数で除した値である。例えば、2009年にデビューする2歳馬を評価する場合、過去5世代の1走あたり賞金を計算するなら、2002年生まれの馬の2004年の2歳戦から2005年東京優駿までの3歳戦、2003年生まれの馬の2005年の2歳戦から2006年東京優駿までの3歳戦、2004年生まれの馬の2006年の2歳戦から2007年東京優駿までの3歳戦、2005年生まれの馬の2007年の2歳戦から2008年東京優駿までの3歳戦、2006年生まれの馬の2008年の2歳戦から2009年東京優駿までの3歳戦を対象にする。
【0007】
各ファクターの1走あたり賞金は、JRAシステムサービス株式会社が提供するJRA公式データを使った競馬情報サービスJRA-VAN Data Lab.(登録商標)からインターネット経由でコンピュータにデータを取り込み、対応するアプリケーションプログラム、例えば「TARGET frontier JV」を使用することで得ることができる。
【0008】
著者は、各ファクターのうち特に競走馬の父、生産者、調教師の3つを重視し、1走あたり賞金の低いファクターがひとつでもあれば指名候補から外すことで絞り込む方法を推奨している。
【先行技術文献】
【非特許文献】
【0009】
【非特許文献1】競馬王編集部編「負けないPOG入門」白夜書房出版 2009年
【発明の概要】
【発明が解決しようとする課題】
【0010】
POGで本賞金を多く獲得する可能性の高い素質馬を選択するためには、前準備として、何らかの客観的な指標を用いて候補馬を絞り込む、あるいは候補馬を順位付けできれば効率的である。
【0011】
例えば、競走馬の父、母父、性別、調教師、馬主、生産者、取引価格、母の競走成績、誕生月日、誕生時の母年齢といったファクターで過去何世代かの成績を比較し、全馬に序列をつければ効率よく候補馬を選択できる。
【0012】
しかしながら、日本国内で血統登録される競走馬は年間約7,000頭、そのうち中央競馬でデビューする競走馬だけでも年間約4,000頭おり、1頭1頭の各ファクターを詳細に、且つ総合的に比較するには膨大な時間が掛かる問題があった。
【0013】
また、1頭の競走馬が有する複数のファクターのうち、どのファクターを重視して各馬を比較するかは、既存の方法ではゲーム参加者の判断によるため、1走あたり賞金といった客観的なデータを使用したとしても、競走馬の将来の成績の序列を精度よく予測することは難しかった。
【0014】
本発明が解決しようとする課題は、POGにおいて、ゲーム参加者の経験やセンスに頼らず一定の予測結果を得ることができ、競走馬の将来の成績の序列予測に用いることにより、ゲーム参加者が候補馬をより効率的に選択できるように支援するデータ構造を提供することにある。
【課題を解決するための手段】
【0015】
本発明による競走馬の成績予測に用いられるデータ構造は、競走馬の父、母父、性別、調教師、馬主、生産者、取引価格、母の競走成績、誕生月日、誕生時の母年齢から選択される少なくとも3つ以上のファクターを含むデータ構造であって、各データが前記ファクターごとで括られる過去世代の競走馬の成績に基づく数値データからなり、各データの重み係数に基づく演算をコンピュータに行わせることにより各競走馬を相対比較しうるスコア値を出力することを特徴とする。
【0016】
また、本発明に係る前記データ構造は、成績予測を行おうとする対象世代より過去世代の競走馬の前記データ構造を学習用データとして用いて、前記各データを説明変数とし、前記過去世代の競走馬の成績を表す情報を目的変数としてコンピュータに学習させることにより前記重み係数を得ることを特徴とする。
【0017】
また、本発明に係る前記データ構造は、前記重み係数を決定する方法として、過去世代のm頭の競走馬を賞金の大きい順に並べた1番目からi(但しi=1,2,3,・・・,n(n≦m))番目の馬までの賞金合計と、前記スコア値の大きい順に並べた1番目からi番目の馬までの賞金合計との差の、i=1番目からn番目までの積算値が最小となるように、前記重み係数が決定されることを特徴とする。
【発明の効果】
【0018】
本発明によれば、POGにおいてゲーム参加者の経験やセンスに頼らず一定の予測結果を得ることができる、競走馬の成績の序列予測に用いられるデータ構造を提供することができる。結果、ユーザーは客観的な指標を用いて、POGで本賞金を多く獲得する可能性の高い素質馬を効率的に選択することが期待できる。
【図面の簡単な説明】
【0019】
【
図1】データ構造により機能されるコンピュータAの機能構成を示すブロック図である。
【
図2】データ構造の作成に用いるコンピュータBの機能構成を示すブロック図である。
【
図3】データ構造の一例としてデータ構造(2017)を一部抜粋したものである。
【
図4】
図2に示したコンピュータによる1走あたり賞金算出処理の処理手順と処理内容の一例を示すフロー図である。
【
図5】
図2に示したコンピュータによる学習用データ作成処理の処理手順と処理内容の一例を示すフロー図である。
【
図6】
図2に示したコンピュータによる学習用データ取得処理および重み係数の算出の処理手順と処理内容の一例を示すフロー図である。
【
図7】
図2に示したコンピュータによる予測用データ作成処理の処理手順と処理内容の一例を示すフロー図である。
【
図8】
図2に示したコンピュータによる成績予測モデルであるデータ構造の作成手順と処理内容の一例を示すフロー図である。
【
図9】
図2に示したコンピュータによって取得される実績データD1の一例、実績データD1(2007-2016)を示す図である。
【
図10】
図2に示したコンピュータによって算出される1走あたり賞金データセットD2の一例、1走あたり賞金データセットD2(2007-2016)を示す図である。
【
図11】
図2に示したコンピュータによって作成される学習用データD3の一例、学習用データD3(2012)を示す図である。
【
図12】
図2に示したコンピュータによって取得される予測用データD4の一例、予測用データD4(2017)を示す図である。
【
図13】
図2に示したコンピュータによって作成されるスコア算出用データD5の一例、スコア算出用データD5(2017)を示す図である。
【
図14】
図1に示したコンピュータによるデータ構造のプロフィルデータ補足の処理手順と処理内容の一例を示すフロー図である。
【
図15】データ構造(2017)によるスコア値の分布を示すヒストグラムおよびスコア値の各区間における本賞金100位内発生率、本賞金200位内発生率を示すグラフである。
【発明を実施するための形態】
【0020】
本発明に係るデータ構造は、データ構造を取り込んだコンピュータに演算を行わせ、スコア値を出力させる。本発明のデータ構造は、コンピュータに直接指令するプログラムではないが、データ要素間の相互関係と組み込まれた演算式により、コンピュータの処理を規定し、他のプログラムとの組み合わせでコンピュータを機能させるものである。
【0021】
まず、本発明の実施形態に係るデータ構造が機能させるコンピュータAの構成について説明する。
図1は、データ構造により機能されるコンピュータAの機能構成を示す概略ブロック図である。コンピュータAは、入出力インタフェースユニット10と、制御ユニット20と、記憶ユニット30とを備えている。
【0022】
入出力インタフェースユニット10は、インタフェースと、入力デバイスと、ディスプレイ装置(いずれも図示せず)から構成される。インタフェースは、有線または無線の通信ネットワークを介して外部データベースとの間で情報の送受信を行う。また、入力デバイスは、ユーザーによって入力された種々のデータを制御ユニット20に入力するための、キーボードやマウス等を含む装置である。また、ディスプレイ装置は、制御ユニット20から出力された表示データをユーザーに提示する、例えば液晶ディスプレイなどの表示デバイスである。
【0023】
制御ユニット20は、ハードウェアプロセッサであるCPU(Central Processing Unit)と、プログラムメモリである主記憶装置(いずれも図示せず)から構成される。
【0024】
記憶ユニット30は、補助記憶装置(図示せず)から構成される。補助記憶装置は、記憶媒体として例えばHDD(Hard Disc Drive)またはSSD(Solid State Drive)等の随時書き込みおよび読み出しが可能な不揮発メモリを使用したものの他、光磁気ディスク、CD-ROM、DVD―ROM等を使用したものも含む。
【0025】
本発明の実施形態に係るデータ構造は、補助記憶装置に記憶されていてもよい。CPUは、データ構造を補助記憶装置から読み出して主記憶装置に展開し、データ構造により規定された所定の処理を実施する。
【0026】
また、本発明の実施形態に係るデータ構造が通信回線によってコンピュータAに配信される場合、インタフェースを介して配信を受けたコンピュータAのCPUがデータ構造を主記憶装置に展開し、所定の処理を実行してもよい。
【0027】
コンピュータAは、機能的には、制御ユニット20に補足用データ取得部21と、データ構造補足部22と、スコア算出部23と、出力制御部24とを、記憶ユニット30にデータ構造格納部31を備えて構成される。記憶ユニット30は、ファクターデータ記憶部32を備えていてもよい。
【0028】
データ構造格納部31は、成績予測を行おうとする対象世代の競走馬の成績予測モデルであるデータ構造を記憶する。データ構造格納部31に記憶されているデータ構造は、本賞金が上位となる競走馬の発生しやすさを表すスコア値を算出するのに最低限必要な、成績予測を行おうとする対象世代の競走馬に関するプロフィル情報と、各ファクターに対応する数値データと、スコア値算出に用いられる重み係数と、スコア値算出式とを備えている。
【0029】
ファクターデータ記憶部32は、ファクターごとで括られる過去世代の競走馬の成績に基づく数値データ、例えば1走あたり賞金データ等を記憶する。
【0030】
補足用データ取得部21は、入出力インタフェースユニット10を介してインターネット経由で、外部データベース、例えば競馬情報サービスJRA-VANデータラボから、成績予測を行おうとする対象世代の競走馬に関するプロフィルを補足するためのデータを取得する。もしくは、記憶ユニット30を介して磁気ディスクや光ディスクなどのコンピュータ読み取り可能な記録媒体から、同質のデータを読み取ってもよい。
【0031】
データ構造補足部22は、記憶ユニット30のデータ構造格納部31に記憶されているデータ構造を読み出し、補足用データ取得部21によって取得されたデータをデータ構造と結合し、プロフィルを補足する処理を行う。あるいは、データ構造補足部22は、ユーザーによるキーボードやマウスなどの入力デバイスの手動操作により、データ構造のプロフィル情報が補正もしくは補足される際にも機能する他、スコア値を算出するのに使用する重み係数が直接入力される際にも機能する。また、データ構造補足部22は、記憶ユニット30のファクターデータ記憶部32に記憶されている数値データを読み出し、上記手順により補足されたプロフィルに該当する数値データを抽出し、データ構造に取り込む処理を行う。
【0032】
スコア算出部23は、データ構造の各データの重み係数に基づく演算を行うことにより、本賞金が上位となる競走馬の発生しやすさを表すスコア値を算出する。また、スコア算出部23は、算出したスコア値をデータ構造に取り込む処理を行う。
【0033】
出力制御部24は、スコア算出部23で算出されたスコア値に基づいて出力用のデータを作成し、入出力インタフェースユニット10を介して表示デバイスや外部端末に出力する処理を行う。例えば、出力制御部24は、指名候補馬に対してスコア値上位順に優先度付けを行った優先度リストを出力データとして作成することができる。
【0034】
以下、各ファクターに対応する数値データとして、1走あたり賞金データを用いる実施形態を例に説明するが、これだけに限定されない。本発明の要旨を逸脱しない範囲で、競走馬の成績に基づく種々の数値データを用いることができる。
【0035】
本発明の実施形態に係る、データ構造の作成に用いるコンピュータBについて説明する。
図2は、コンピュータBの概略ブロック図およびシステム構成図の例である。コンピュータBは、ハードウェアとして、入出力インタフェースユニット10と、制御ユニット20と、記憶ユニット30とを備えている。
【0036】
各ユニットの詳細構成は、データ構造が機能させるコンピュータAの構成と同様である。データ構造の作成に用いるコンピュータBは、データ構造が機能させるコンピュータAと同一であっても構わないし、別のコンピュータであっても構わない。
【0037】
記憶ユニット30は、本実施形態を実現するために必要な記憶領域として、実績データ記憶部301と、1走あたり賞金データ記憶部302と、学習用データ記憶部303と、学習済みデータ記憶部304と、スコア算出用データ記憶部305と、データ構造格納部306とを備えている。
【0038】
実績データ記憶部301は、既にPOG期間の終了した過去の競走馬に関するプロフィル情報と、例えば期間中の出走回数と獲得した本賞金など成績を表す情報とを関連づけた、実績データD1を記憶する。
【0039】
1走あたり賞金データ記憶部302は、実績データD1に基づいて算出される、各ファクターの区分されたグループごとの1走あたり賞金情報を含む、1走あたり賞金データセットD2を記憶する。
【0040】
学習用データ記憶部303は、実績データD1から抽出された過去の競走馬のプロフィル情報と、1走あたり賞金データセットD2から抽出された各ファクターに対応する1走あたり賞金情報を含む、学習用データD3を記憶する。
【0041】
学習済みデータ記憶部304は、学習用データD3を使用して予測モデルを生成した結果算出された重み係数W、および予測モデルと同じスコア値算出式を記憶する。
【0042】
スコア算出用データ記憶部305は、成績予測を行おうとする対象世代の競走馬の予測モデルを作成するのに使用する、スコア算出用データD5を記憶する。
【0043】
データ構造格納部306は、成績予測を行おうとする対象世代の競走馬の成績予測モデルであるデータ構造を記憶する。
【0044】
制御ユニット20は、本実施形態における処理機能を実行するために、実績データ取得部201と、1走あたり賞金算出部202と、学習用データ作成部203と、学習用データ取得部204と、学習部205と、予測用データ取得部206と、スコア算出用データ作成部207と、データ構造作成部208と、スコア算出部209とを備えている。これらの各部における処理機能はいずれもプログラムメモリに格納されたプログラムを上記ハードウェアプロセッサに実行させることによって実現される。なお、これらの処理機能は、プログラムメモリに格納されたプログラムを用いて実現されるものではなく、ネットワークを通して提供されるプログラムを用いて実現されてもよい。
【0045】
実績データ取得部201は、入出力インタフェースユニット10を介して、入力デバイスや外部データベースなどから、既にPOG期間の終了した過去の競走馬に関するプロフィル情報と、例えば期間中の出走回数と期間中に獲得した本賞金など成績を表す情報とを取得し、それらを関連づけた実績データD1を作成し、実績データ記憶部301に格納する。
【0046】
1走あたり賞金算出部202は、記憶ユニット30の実績データ記憶部301に記憶された実績データD1を読み出し、それぞれのファクターのグループごとに1走あたり賞金を表すデータセットD2を生成する処理を実行する。1走あたり賞金算出部202は、取得した過去の全データから上記1走あたり賞金を算出してもよいし、任意の数世代のデータから上記1走あたり賞金を算出してもよい。ファクターごとに、1走あたり賞金の算出に用いるデータの世代数が違っていてもよい。
【0047】
学習用データ作成部203は、記憶ユニット30の実績データ記憶部301に記憶された実績データD1および1走あたり賞金データ記憶部302に記憶されている1走あたり賞金データセットD2を読み出し、競走馬の成績を予測するための予測モデルを生成するために用いられる、学習用データD3を作成する処理を行う。学習用データD3には、成績予測を行おうとする対象世代より過去世代の競走馬の実績データD1が用いられる。また、学習用データD3には、上記実績データD1が対象とする世代よりさらに1世代以上過去の世代の実績データを用いて算出された1走あたり賞金データセットD2が、実績データD1と組み合わせられ用いられる。学習用データ作成部203は、作成した学習用データD3を学習用データ記憶部303に格納する。
【0048】
学習用データ取得部204は、記憶ユニット30の学習用データ記憶部303に記憶されているデータを読み出し、競走馬の成績を予測するための予測モデルを生成するために用いられる、複数の学習用データD3を結合した1つの学習用データD3を生成する処理を行う。
【0049】
学習部205は、学習用データD3を用いて統計分析する処理を実行する。例えば、学習部205は、上記学習用データD3中の1走あたり賞金を説明変数とし、さらに、当該データセットに含まれる過去世代の競走馬の成績を表す情報である本賞金を目的変数として、上記目的変数が上位の競走馬の発生しやすさを表すスコア値を上記説明変数から算出するための、各ファクターに対応する重み係数を最適化する処理を実行する。得られた重み係数Wは、学習済みデータ記憶部304にて記憶される。また、得られた重み係数Wは、予測モデルに取り込むことで予測処理に用いることができる。また、重み係数Wを最適化する処理に用いたのと同じスコア値算出式が、学習済みデータ記憶部304にて記憶される。
【0050】
予測用データ取得部206は、入出力インタフェースユニット10を介して、入力デバイスや外部データベースなどから、成績予測を行おうとする対象世代の競走馬に関するプロフィル情報を表すデータを取得し、予測用データD4を作成する。予測用データ取得部206は、上記予測用データD4に対応する成績予測を行おうとする対象世代より、1世代以上過去の世代の実績データを用いて算出された1走あたり賞金データ記憶部302に記憶された1走あたり賞金データセットD2を読み出す。
【0051】
スコア算出用データ作成部207は、予測用データ取得部206が作成した予測用データD4と1走あたり賞金データセットD2とを用いて、競走馬の成績を予測するための予測モデルを生成するための、スコア算出用データD5を作成する処理を行う。スコア算出用データ作成部207は、作成したスコア算出用データD5をスコア算出用データ記憶部305に格納する。
【0052】
データ構造作成部208は、スコア算出用データ記憶部305に記憶されたスコア算出用データD5に、学習済みデータ記憶部304に記憶された重み係数Wと、スコア値算出式を組み込むことで、予測モデルであるデータ構造を生成する。
【0053】
スコア算出部209は、データ構造の各データの重み係数に基づく演算を行うことにより、本賞金が上位となる競走馬の発生しやすさを表すスコア値を算出する。また、スコア算出部209は、算出したスコア値をデータ構造に取り込む処理を行う。スコア算出部209は、作成したデータ構造をデータ構造格納部306に格納する。
【0054】
本発明の実施形態に係るデータ構造について説明する。データ構造は、例えばMicrosoft社のEXCEL(登録商標)等の表計算ソフトを使用することにより作成される。
【0055】
図3にデータ構造の一例を示す。1つの行に1頭の競走馬の馬名、誕生月日、性別、父名、母名、誕生時の母年齢、母父名、生産者、調教師、馬主、取引価格といった、いわゆるプロフィルが表される。本発明のデータ構造は、こうしたプロフィルを表すファクターを少なくとも3つ以上含む。
【0056】
これらのうち馬名、調教師、馬主といった情報は、未出走馬では未定である場合も多く、空欄であっても構わない。たとえ馬名が未定であっても、1頭の母馬がその年に出産する馬は通常1頭であるので、母名でもって競走馬を特定することができる。
【0057】
また、取引価格も市場取引された場合を除き公にならない場合が多いので、空欄であっても構わない。
【0058】
データ構造を構成する各データは、これらプロフィルを表す各ファクターに対応する数値データである。各データは
図3のように、ファクターの直近に併記しておくのが好ましい。
【0059】
また、データ構造は、各データの重み係数に基づく演算の結果であるスコア値を含んでいてもよい。演算は任意に定めた式もしくは関数の組み合わせによるものであり、スコア値の大小を比べることにより、各競走馬を相対比較することを目的とするものである。
【0060】
次に、本発明の実施形態に係るプロフィルを表す各ファクターについて説明する。各データは、ファクターごとで括られる過去世代の競走馬の成績に基づく数値データからなる。以下、個々のファクターと対応する数値データの算出方法について説明する。
【0061】
競走馬の父とは、すなわち種牡馬を意味するファクターである。競走馬の父で括られる過去世代の競走馬とは、2歳世代から過去の世代にあたる3歳以上の世代の、同じ種牡馬を父とする産駒群を表す。ここでいう世代とは、同一年に誕生した競走馬を1世代とする。
【0062】
競走馬の父で括られる過去世代の競走馬の成績に基づく数値データを算出するのに、十分な世代数の成績データを用いる。好ましい世代数としては、成績の序列予測を行おうとする未出走世代に対して直近の1世代前を含む、3~10世代の競走馬の成績データを用いる。世代数が少なすぎると信頼性に足る十分な量のデータが得られない。逆に世代数が多すぎると、過去の成績が強く反映され、近年の産駒成績が不振であっても過大評価となる傾向がある。
【0063】
数値データの形式として1走あたり賞金に限定されないが、例えば数値データとして1走あたり賞金を計算するには、競走馬の父で括られる過去の所定の世代の競走馬のPOG期間中の総本賞金合計を、POG期間中の総出走回数で除することで求められる。例えば、種牡馬Aを父とする産駒全体の総本賞金が10億円で総出走回数が1000回であれば、数値データは100万円となる。
【0064】
数値データを求める際、総出走回数があまりにも少ないと、個々の賞金データからの計算結果が不安定となり、信頼性に足りる数値データが得られない。所定の総出走回数に満たない場合、競走馬の父ファクターの数値データをなしとしても構わない。所定の総出走回数として、好ましくは30走から100走以上を境とする。成績の序列予測を行おうとする対象世代が競走馬デビューする初めての世代となる新種牡馬の場合も、過去世代が存在しないため、数値データなしとする。
【0065】
競走馬の母父とは、競走馬の母方の祖父に当たる種牡馬を意味するファクターである。競走馬の母父で括られる過去世代の競走馬とは、2歳世代から過去の世代にあたる3歳以上の世代の、同じ種牡馬を母方の祖父とする産駒群を表す。ここでいう世代とは、同一年に誕生した競走馬を1世代とする。
【0066】
競走馬の母父で括られる過去世代の競走馬の成績に基づく数値データを算出するのに、十分な世代数の成績データを用いる。しかし、母馬は国内生産されるのみならず諸外国から輸入される場合もあるため、競走馬の父に比べて競走馬の母父は多様であり数が多い。そのため、世代あたりの同一の母父を持つ競走馬の総出走回数は、同一の父を持つ競走馬の総出走回数に比べると少ない傾向にある。よって、数値データを算出するのに、競走馬の父がファクターの場合よりも多くの過去世代の成績データを用いるのが好ましい。好ましい世代数としては、成績の序列予測を行おうとする未出走世代に対して直近の1世代前を含む、5~20世代の競走馬の成績データを用いる。世代数が少なすぎると信頼性に足る十分な量のデータが得られない。逆に世代数が多すぎると、過去の成績が強く反映され、近年の産駒成績が不振であっても過大評価となる傾向がある。
【0067】
数値データの形式として1走あたり賞金に限定されないが、例えば数値データとして1走あたり賞金を計算するには、競走馬の母父で括られる過去の所定の世代の競走馬のPOG期間中の総本賞金合計を、POG期間中の総出走回数で除することで求められる。例えば、種牡馬Bを母父とする産駒全体の総本賞金が10億円で総出走回数が1000回であれば、数値データは100万円となる。
【0068】
数値データを求める際、総出走回数があまりにも少ないと、個々の賞金データからの計算結果が不安定となり、信頼性に足りる数値データが得られない。所定の総出走回数に満たない場合、競走馬の母父ファクターの数値データをなしとしても構わない。所定の総出走回数として、好ましくは30走から200走以上を境とする。成績の序列予測を行おうとする対象世代が競走馬デビューする初めての世代となる母父の場合も、過去世代が存在しないため、数値データなしとする。
【0069】
競走馬の性別をファクターとして数値データを計算してもよい。競走馬の性別は牡馬、牝馬、セン馬の3種類あるが、デビュー前の2歳のうちに牡馬がセン馬となることは稀であるため、牡馬とセン馬を一括りのファクターとして扱っても構わない。
【0070】
競走馬の性別で括られる過去世代の競走馬とは、2歳世代から過去の世代にあたる3歳以上の世代の、牡馬・セン馬で括る群と牝馬で括る群の産駒群を表す。ここでいう世代とは、同一年に誕生した競走馬を1世代とする。
【0071】
競走馬の性別で括られる過去世代の競走馬の成績に基づく数値データを算出するのに、十分な世代数の成績データを用いる。好ましい世代数としては、成績の序列予測を行おうとする未出走世代に対して直近の1世代前を含む、5~20世代の競走馬の成績データを用いる。
【0072】
数値データの形式として1走あたり賞金に限定されないが、例えば数値データとして1走あたり賞金を計算するには、競走馬の性別で括られる過去の所定の世代の競走馬のPOG期間中の総本賞金合計を、POG期間中の総出走回数で除することで求められる。例えば、牡馬・セン馬の産駒全体の総本賞金が1000億円で総出走回数が10万回であれば、数値データは100万円となる。
【0073】
もしくは性別と他のファクターとを組み合わせて数値データを求めてもよい。例えば、種牡馬によっては産駒の成績に、性別により偏りがあることが知られている。そこで、競走馬の父を同じくする牡馬・セン馬、もしくは競走馬の父を同じくする牝馬で括り、それぞれに分けて数値データを計算してもよい。この場合、牡馬・セン馬、牝馬とで分ける以外は、競走馬の父がファクターの場合と同様に、数値データを計算する。
【0074】
競走馬の調教師とは、すなわち競走馬が所属する厩舎を意味するファクターである。競走馬の調教師で括られる過去世代の競走馬とは、2歳世代から過去の世代にあたる3歳以上の世代の、同じ厩舎に所属した産駒群を表す。ここでいう世代とは、同一年に誕生した競走馬を1世代とする。
【0075】
競走馬の調教師で括られる過去世代の競走馬の成績に基づく数値データを算出するのに、十分な世代数の成績データを用いる。好ましい世代数としては、成績の序列予測を行おうとする未出走世代に対して直近の1世代前を含む、3~10世代の競走馬の成績データを用いる。世代数が少なすぎると信頼性に足る十分な量のデータが得られない。逆に世代数が多すぎると、過去の成績が強く反映され、近年の成績が不振であっても過大評価となる傾向がある。
【0076】
数値データの形式として1走あたり賞金に限定されないが、例えば数値データとして1走あたり賞金を計算するには、競走馬の調教師で括られる過去の所定の世代の競走馬のPOG期間中の総本賞金合計を、POG期間中の総出走回数で除することで求められる。例えば、調教師Cの管理する産駒全体の総本賞金が10億円で総出走回数が1000回であれば、数値データは100万円となる。
【0077】
数値データを求める際、総出走回数があまりにも少ないと、個々の賞金データからの計算結果が不安定となり、信頼性に足りる数値データが得られない。所定の総出走回数に満たない場合、競走馬の調教師ファクターの数値データをなしとしても構わない。所定の総出走回数として、好ましくは30走から100走以上を境とする。成績の序列予測を行おうとする対象世代が競走馬デビューする初めての世代となる新人調教師の場合、過去世代が存在しないため、数値データなしとなる。また、デビュー前の2歳馬は、調教師が決まっていないか決まっていても未公表の場合も多い。このように調教師が未定である場合も、数値データなしとして構わない。
【0078】
競走馬の馬主をファクターとして数値データを計算してもよい。競走馬の馬主で括られる過去世代の競走馬とは、2歳世代から過去の世代にあたる3歳以上の世代の、同じ馬主が所有した産駒群を表す。ここでいう世代とは、同一年に誕生した競走馬を1世代とする。
【0079】
競走馬の馬主で括られる過去世代の競走馬の成績に基づく数値データを算出するのに、十分な世代数の成績データを用いる。好ましい世代数としては、成績の序列予測を行おうとする未出走世代に対して直近の1世代前を含む、3~10世代の競走馬の成績データを用いる。世代数が少なすぎると信頼性に足る十分な量のデータが得られない。逆に世代数が多すぎると、過去の成績が強く反映され、近年の成績が不振であっても過大評価となる傾向がある。
【0080】
数値データの形式として1走あたり賞金に限定されないが、例えば数値データとして1走あたり賞金を計算するには、競走馬の馬主で括られる過去の所定の世代の競走馬のPOG期間中の総本賞金合計を、POG期間中の総出走回数で除することで求められる。例えば、馬主Dの所有する産駒全体の総本賞金が10億円で総出走回数が1000回であれば、数値データは100万円となる。
【0081】
数値データを求める際、総出走回数があまりにも少ないと、個々の賞金データからの計算結果が不安定となり、信頼性に足りる数値データが得られない。所定の総出走回数に満たない場合、競走馬の馬主ファクターの数値データをなしとしても構わない。所定の総出走回数として、好ましくは30走から100走以上を境とする。成績の序列予測を行おうとする対象世代が競走馬デビューする初めての世代となる新参馬主の場合、過去世代が存在しないため、数値データなしとなる。デビュー前の2歳馬は、馬主が決まっていないか決まっていても未公表の場合も多い。このように馬主が未定である場合も、数値データなしとして構わない。
【0082】
競走馬の生産者とは、すなわち競走馬の生産牧場を意味するファクターである。競走馬の生産者で括られる過去世代の競走馬とは、2歳世代から過去の世代にあたる3歳以上の世代の、同じ牧場で生産された産駒群を表す。ここでいう世代とは、同一年に誕生した競走馬を1世代とする。
【0083】
競走馬の生産者で括られる過去世代の競走馬の成績に基づく数値データを算出するのに、十分な世代数の成績データを用いる。好ましい世代数としては、成績の序列予測を行おうとする未出走世代に対して直近の1世代前を含む、3~10世代の競走馬の成績データを用いる。世代数が少なすぎると信頼性に足る十分な量のデータが得られない。逆に世代数が多すぎると、過去の成績が強く反映され、近年の成績が不振であっても過大評価となる傾向がある。
【0084】
数値データの形式として1走あたり賞金に限定されないが、例えば数値データとして1走あたり賞金を計算するには、競走馬の生産者で括られる過去の所定の世代の競走馬のPOG期間中の総本賞金合計を、POG期間中の総出走回数で除することで求められる。例えば、生産者Eの生産した産駒全体の総本賞金が10億円で総出走回数が1000回であれば、数値データは100万円となる。
【0085】
数値データを求める際、総出走回数があまりにも少ないと、個々の賞金データからの計算結果が不安定となり、信頼性に足りる数値データが得られない。所定の総出走回数に満たない場合、競走馬の生産者ファクターの数値データをなしとしても構わない。所定の総出走回数として、好ましくは30走から100走以上を境とする。成績の序列予測を行おうとする対象世代が競走馬デビューする初めての世代となる新参生産者の場合、過去世代が存在しないため、数値データなしとなる。
【0086】
競走馬の取引価格をファクターとして数値データを計算してもよい。JRA-VANが提供するデータには、日本国内で開催されている競走馬取引市場の取引価格データが含まれており、競走馬の取引価格を参照することができる。競走馬の取引価格をいくつかの価格帯に区分して、競走馬の価格帯で括られる過去世代の競走馬の成績に基づく数値データを算出する。価格帯の例として、100万円未満、100万~500万円未満、500万~1000万円未満、1000万~2000万円未満、2000万~3000万円未満、3000万~5000万円未満、5000万~7000万円未満、7000万~1億円未満、1億円以上のように分割する。
【0087】
競走馬の価格帯で括られる過去世代の競走馬とは、2歳世代から過去の世代にあたる3歳以上の世代の、同じ価格帯の産駒群を表す。ここでいう世代とは、同一年に誕生した競走馬を1世代とする。
【0088】
競走馬の価格帯で括られる過去世代の競走馬の成績に基づく数値データを算出するのに、十分な世代数の成績データを用いる。好ましい世代数としては、成績の序列予測を行おうとする未出走世代に対して直近の1世代前を含む、5~20世代の競走馬の成績データを用いる。世代数が少なすぎると信頼性に足る十分な量のデータが得られない。逆に世代数が多すぎると、競走馬の取引価格は経済情勢に影響されるため、取引価格と成績との相関が近年のデータと過去のデータとの間で乖離が大きくなり不具合が生じる。
【0089】
数値データの形式として1走あたり賞金に限定されないが、例えば数値データとして1走あたり賞金を計算するには、競走馬の価格帯で括られる過去の所定の世代の競走馬のPOG期間中の総本賞金合計を、POG期間中の総出走回数で除することで求められる。例えば、取引価格1000万~2000万円の産駒全体の総本賞金が100億円で総出走回数が1万回であれば、数値データは100万円となる。
【0090】
数値データを求める際、総出走回数があまりにも少ないと、個々の賞金データからの計算結果が不安定となり、信頼性に足りる数値データが得られない。総出走回数が100走に満たない取引価格帯が発生するような区分は避ける。
【0091】
競走馬の母の競走成績をファクターとして数値データを計算してもよい。競走馬の母の競走成績をいくつかの成績グループに区分して、競走馬の母の競走成績グループで括られる過去世代の競走馬の成績に基づく数値データを算出する。競走成績グループで区分する方法として、例えばPOG期間中の合計本賞金額や1走あたり賞金で区分する方法がある。
【0092】
競走馬の母の競走成績グループで括られる過去世代の競走馬とは、2歳世代から過去の世代にあたる3歳以上の世代の、母が同じ成績グループに属していた産駒群を表す。ここでいう世代とは、同一年に誕生した競走馬を1世代とする。
【0093】
競走馬の母の競走成績で括られる過去世代の競走馬の成績に基づく数値データを算出するのに、十分な世代数の成績データを用いる。好ましい世代数としては、成績の序列予測を行おうとする未出走世代に対して直近の1世代前を含む、5~20世代の競走馬の成績データを用いる。世代数が少なすぎると信頼性に足る十分な量のデータが得られない。
【0094】
数値データの形式として1走あたり賞金に限定されないが、例えば数値データとして1走あたり賞金を計算するには、競走馬の母の競走成績グループで括られる過去の所定の世代の競走馬のPOG期間中の総本賞金合計を、POG期間中の総出走回数で除することで求められる。例えば、POG期間中の合計本賞金額が500万~1000万円の競走馬の母の産駒全体の総本賞金が100億円で総出走回数が1万回であれば、数値データは100万円となる。
【0095】
数値データを求める際、総出走回数があまりにも少ないと、個々の賞金データからの計算結果が不安定となり、信頼性に足りる数値データが得られない。総出走回数が100走に満たない競走馬の母の競走成績グループが発生するような区分は避ける。競走馬の母が海外から輸入されたなどの事情で、国内での競走成績がない場合は、数値データなしとして構わない。
【0096】
競走馬の誕生月日をファクターとして数値データを計算してもよい。誕生月日をいくつかの期間に区分して、同じ誕生期間で括られる過去世代の競走馬の成績に基づく数値データを算出する。最も簡単な方法としては、誕生月で区分する方法がある。誕生期間で括られる過去世代の競走馬とは、2歳世代から過去の世代にあたる3歳以上の世代の、誕生月日を区分して同じ期間に属していた産駒群を表す。ここでいう世代とは、同一年に誕生した競走馬を1世代とする。
【0097】
誕生期間で括られる過去世代の競走馬の成績に基づく数値データを算出するのに、十分な世代数の成績データを用いる。好ましい世代数としては、成績の序列予測を行おうとする未出走世代に対して直近の1世代前を含む、5~20世代の競走馬の成績データを用いる。世代数が少なすぎると信頼性に足る十分な量のデータが得られない。
【0098】
数値データの形式として1走あたり賞金に限定されないが、例えば数値データとして1走あたり賞金を計算するには、誕生期間で括られる過去の所定の世代の競走馬のPOG期間中の総本賞金合計を、POG期間中の総出走回数で除することで求められる。例えば、4月生まれの産駒全体の総本賞金が100億円で総出走回数が1万回であれば、数値データは100万円となる。
【0099】
数値データを求める際、総出走回数があまりにも少ないと、個々の賞金データからの計算結果が不安定となり、信頼性に足りる数値データが得られない。総出走回数が100走に満たない誕生期間が発生するような区分は避ける。7月から12月生まれの競走馬は、例えば南半球での生産馬が該当するが日本で競走馬登録される頭数は比較的少なく、個々の誕生月で区分すると総出走回数が100走に満たない場合も生じる。総出走回数が少ない区分が発生するのを避けるため、例えば7月から12月生まれの競走馬を一つの群として構わない。
【0100】
競走馬の出産時の母の年齢をファクターとして数値データを計算してもよい。競走馬の出産時の母の年齢で括られる過去世代の競走馬の成績に基づく数値データを算出する。競走馬の誕生時の母年齢で括られる過去世代の競走馬とは、2歳世代から過去の世代にあたる3歳以上の世代の、出産時の母の年齢が同じであった産駒群を表す。ここでいう世代とは、同一年に誕生した競走馬を1世代とする。
【0101】
競走馬の誕生時の母年齢で括られる過去世代の競走馬の成績に基づく数値データを算出するのに、十分な世代数の成績データを用いる。好ましい世代数としては、成績の序列予測を行おうとする未出走世代に対して直近の1世代前を含む、5~20世代の競走馬の成績データを用いる。世代数が少なすぎると信頼性に足る十分な量のデータが得られない。
【0102】
数値データの形式として1走あたり賞金に限定されないが、例えば数値データとして1走あたり賞金を計算するには、競走馬の誕生時の母年齢で括られる過去の所定の世代の競走馬のPOG期間中の総本賞金合計を、POG期間中の総出走回数で除することで求められる。例えば、競走馬の誕生時の母年齢が10歳の産駒全体の総本賞金が100億円で総出走回数が1万回であれば、数値データは100万円となる。
【0103】
数値データを求める際、総出走回数があまりにも少ないと、個々の賞金データからの計算結果が不安定となり、信頼性に足りる数値データが得られない。誕生時の母年齢が20歳以上である競走馬は比較的少なく、個々の母年齢で区分すると総出走回数が100走に満たない場合も生じる。総出走回数が少ない区分が発生するのを避けるため、例えば誕生時の母年齢が20歳以上の産駒を一つの群として構わない。
【0104】
次に、本発明の実施形態に係る、演算に用いる各データの重み係数について説明する。コンピュータに、ファクターごとの数値データに対して重み係数に基づく演算を行わせることにより各競走馬を相対比較できるスコア値を出力させる。
【0105】
演算方法として、例えば各ファクターの数値データの加重平均を計算する方法がある。f個のファクターの数値データx1,x2,・・・,xfに対して、それぞれの重み係数をw1,w2,・・・,wfとすると、演算方法は式1で表される。
式1・・・(w1x1+w2x2+・・・+wfxf)/(w1+w2+・・・wf)
【0106】
演算方法として、例えば各ファクターの数値データの加重調和平均を計算する方法がある。f個のファクターの数値データx1,x2,・・・,xfに対して、それぞれの重み係数をw1,w2,・・・,wfとすると、演算方法は式2で表される。
式2・・・(w1+w2+・・・+wf)/(w1/x1+w2/x2+・・・wf/xf)
【0107】
加重平均、加重調和平均といった重み付き平均値を採用する場合、重み係数が大きいファクターほど重要度が高く、演算結果のスコア値が大きいほど成績の予測序列結果が上位であり、成績上位の競走馬が発生する確率が高いことを意味する。
【0108】
重み係数は、POG期間中の成績が既に確定している過去の世代について、成績の序列を予測した結果が最良に近い結果になるように、最適化した数値を用いる。
【0109】
重み係数の最適化の方法として、過去世代のm頭の競走馬を本賞金の大きい順に並べた1番目からi(但しi=1,2,3,・・・,n(n≦m))番目の馬までの賞金合計と、各データの重み係数に基づくスコア値の大きい順に並べた1番目からi番目の馬までの賞金合計との差の、i=1からnまでの積算値が最小となるように、各データの重み係数が決められる。
【0110】
本賞金の大きい順に並べたk番目の馬の賞金をa
kで表すとすると、1番目からi番目の馬までの賞金合計は式Aで表現される。
【0111】
一方、各データの重み係数に基づく演算結果のスコア値の大きい順に並べたk番目の馬の賞金をb
kで表すとすると、1番目からi番目の馬までの賞金合計は式Bで表現される。
【0112】
本賞金の大きい順に並べた1番目からi番目の馬までの賞金合計と、各データの重み係数に基づく演算結果のスコア値の大きい順に並べた1番目からi番目の馬までの賞金合計との差は、(式A-式B)となる。
【0113】
よって、本賞金の大きい順に並べた1番目からi番目の馬までの賞金合計と、各データの重み係数に基づく演算結果のスコア値の大きい順に並べた1番目からi番目の馬までの賞金合計との差の、i=1からnまでの積算値は式Cで表現される。
【0114】
ここで、過去世代のm頭の競走馬を本賞金の大きい順に並べることは、成績の予測序列結果が最良となった並べ順を意味する。すなわち式Aで表される並びの1番目からi番目の馬までの賞金合計はi!通りあるすべての並び順の中で最大となる。
【0115】
過去の世代の成績の予測序列結果が最良に近いほど、式Bで表される各データの重み係数に基づく演算結果のスコア値の大きい順に並べた1番目からi番目の馬までの賞金合計は大きくなるが、式Aで表される実際に本賞金の大きい順に並べた1番目からi番目の馬までの賞金合計を超えることはない。
【0116】
例えば、各ファクターの重み係数を段階的に仮定し、式Cで表される積算値を計算し、比較するプログラムをコンピュータに実行させることで、積算値が最小となる最適な重み係数を求めことができる。
【0117】
この場合、重み係数w1,w2,・・・,wfとしては、1から10の自然数や0.1から1.0の少数などを採用することができる。例えば、1から10の数値を重み係数の候補として計算する場合、f個の重み係数(w1,w2,・・・,wf)を(1,1,・・・,1)から(10,10,・・・10)まで段階的に変え、10f通りの式Cで表される積算値を計算させる。計算結果が最小となる組み合わせを、各ファクターの重み係数として採用する。
【0118】
過去世代のm頭の競走馬の選択方法としては、成績の序列予測を行おうとする世代に対して直近の1世代前を含む、5~20世代の競走馬を選択するのが好ましい。世代の全頭を選択してもよいし、データが大きくなりすぎないように各世代の成績上位数百頭を抽出して選択してもよい。
【0119】
こうして得られる重み係数を取り入れたデータ構造を用いることにより、未出走世代の成績の序列予測を行うのに便利な、一定の予測結果が得られる。
【実施例0120】
次に、2017年産駒のデータ構造を作成する処理手順を実施例として説明する。重み係数を算出するために、過去5世代分にあたる2012年~2016年産駒の学習用データを使用した。各ファクターの数値データとして1走あたり賞金を計算するために、当該世代より過去10世代分にあたる実績データを使用した。すなわち、2017年産駒のデータ構造の1走あたり賞金は2007年~2016年産駒の実績データ、2012年産駒の学習用データの1走あたり賞金は2002年~2011年産駒の実績データ、2013年産駒の学習用データの1走あたり賞金は2003年~2012年産駒の実績データ、2014年産駒の学習用データの1走あたり賞金は2004年~2013年産駒の実績データ、2015年産駒の学習用データの1走あたり賞金は2005年~2014年産駒の実績データ、2016年産駒の学習用データの1走あたり賞金は2006年~2015年産駒の実績データをそれぞれ使用した。
【0121】
(1)1走あたり賞金の算出
図4は、
図2に示した制御ユニット20による、2017年産駒のスコア算出用データ作成に使用する1走あたり賞金算出の処理手順と処理内容の一例を示すフロー図である。
【0122】
ステップS101において、制御ユニット20は、実績データ取得部201の制御の下、入出力インタフェースユニット10を介して、入力デバイスまたは外部データベース等から、2007年~2016年産駒のプロフィルデータおよび成績データを取得し、実績データD1(2007)~D1(2016)として、実績データ記憶部301に記憶させる。
【0123】
次いで、ステップS102において、実績データ取得部201は、実績データD1(2007)~D1(2016)をひとまとめにし、実績データD1(2007~2016)を作成し、実績データ記憶部301に記憶させる。
図9は、作成される実績データD1の一例を示す。実績データD1には、競走馬の馬名と、競走馬の成績を表す情報として一定の期間中に獲得した本賞金と、前記期間中の出走回数とが少なくとも含まれる。実績データD1にはさらに、競走馬のプロフィルを表すファクターとして誕生月日、性別、父名、母名、誕生時の母年齢、母父名、生産者、調教師、馬主、取引価格などが含まれる。
【0124】
ステップS103において、制御ユニット20は、1走あたり賞金算出部202の制御の下、実績データD1(2007~2016)を実績データ記憶部301から読み出し、実績データD1(2007~2016)のファクターのカラムを参照し、実績データD1(2007~2016)のファクターのグループごとに本賞金データと出走回数データを抽出する処理を行う。複数のファクターに対して、プロフィルの特徴により区分されるグループごとに処理を行う。
【0125】
続いて、ステップS104において、ファクターのグループごとに抽出されたデータに基づき、1走あたり賞金を算出する。1走あたり賞金の算出は、当該グループの本賞金合計を当該グループの出走回数の合計で除することで算出される。
【0126】
ステップS105において、1走あたり賞金算出部202は、算出された1走あたり賞金をファクターのグループに対して結合し、これを1走あたり賞金データd2(2007~2016)とする。1走あたり賞金データd2は、ファクターごとに複数作成される。
図10は、ファクターに対しての一部のグループの1走あたり賞金データd2の例を示す。1走あたり賞金データには、区分されたグループを示す表記と当該グループの1走あたり賞金が含まれる。
【0127】
ステップS106において、1走あたり賞金算出部202は、ファクターごとに作成された複数の1走あたり賞金データd2(2007~2016)をひとまとめにし、1走あたり賞金データセットD2(2007~2016)を作成する。具体的には、誕生月日、競走馬の父、誕生時の母年齢、競走馬の母父、生産者、調教師、馬主、取引価格などファクターごとに別々のファイルからなる1走あたり賞金データd2(2007~2016)を、1つのファイルにまとめる。例えばデータセットD2は、データセットD2の作成にEXCEL(登録商標)を使用する場合、ファクターごとのデータd2を保持するシートを複数有する1つのブックの形態を取ることが好ましい。
【0128】
ステップS107において、作成された1走あたり賞金データセットD2(2007~2016)は、1走あたり賞金データ記憶部302に格納される。
【0129】
2012年産駒の学習用データ作成に使用する1走あたり賞金データセットD2(2002~2011)、2013年産駒の学習用データ作成に使用する1走あたり賞金データセットD2(2003~2012)、2014年産駒の学習用データ作成に使用する1走あたり賞金データセットD2(2004~2013)、2015年産駒の学習用データ作成に使用する1走あたり賞金データセットD2(2005~2014)、2016年産駒の学習用データ作成に使用する1走あたり賞金データセットD2(2006~2015)も、2017年産駒のスコア算出用データ作成に使用する1走あたり賞金データセットD2(2007~2016)と同様の処理手順で作成し、1走あたり賞金データ記憶部302に格納する。
【0130】
(2)予測モデルの生成
(2-1)学習用データの作成
図5は、
図2に示した制御ユニット20による2017年産駒のデータ構造に使用する重み係数を算出するための、学習用データの一部となる2012年産駒の学習用データ作成処理の処理手順と処理内容の一例を示すフロー図である。
【0131】
ステップS201において、制御ユニット20は、学習用データ作成部203の制御の下、実績データ記憶部301に記憶された実績データD1(2012)を読み出す。
【0132】
ステップS202において、学習用データ作成部203は、1走あたり賞金データ記憶部302に記憶された1走あたり賞金データセットD2(2002~2011)を読み出す。ステップS202は、ステップS201の後に実行されても、ステップS201と同時並行して実行されても、またはステップS201の前に実行されてもよい。
【0133】
ステップS203において、学習用データ作成部203は、実績データD1(2012)の各ファクターを参照し、それらの条件に該当する1走あたり賞金データを1走あたり賞金データセットD2(2002~2011)から抽出し、結合して、学習用データD3(2012)を作成する。具体的には、学習用データ作成部203は、実績データD1(2012)から、誕生月日、性別、父名、母名、誕生時の母年齢、母父名、生産者、調教師、馬主、取引価格などを参照し、それらの条件に対応する1走あたり賞金データを1走あたり賞金データセットD2(2002~2011)から抽出し、実績データD1(2012)に結合して、学習用データD3(2012)を作成する。
【0134】
図11は、学習用データD3の一例を示す。学習用データD3には、例えば、実績データD1から抽出された、馬名、本賞金、誕生月日、性別、父名、母名、誕生時の母年齢、母父名、生産者、調教師、馬主、取引価格などと、1走あたり賞金データセットD2から抽出された、各ファクターに対応する1走あたり賞金が含まれる。
【0135】
ステップS204において、制御ユニット20は、作成された学習用データD3(2012)を学習用データ記憶部303に格納する。
【0136】
2013~2016年産駒の学習用データD3(2013)、D3(2014)、D3(2015)、D3(2016)も、2012年産駒の学習用データD3(2012)と同様の処理手順で作成する。ただし、学習用データD3(2013)の作成には実績データD1(2013)および1走あたり賞金データセットD2(2003~2012)を、学習用データD3(2014)の作成には実績データD1(2014)および1走あたり賞金データセットD2(2004~2013)を、学習用データD3(2015)の作成には実績データD1(2015)および1走あたり賞金データセットD2(2005~2014)を、学習用データD3(2016)の作成には実績データD1(2016)および1走あたり賞金データセットD2(2006~2015)を使用する。
【0137】
(2-2)重み係数の最適化
図6は、
図2に示した制御ユニット20による2017年産駒のデータ構造に使用する重み係数を算出するための学習用データ取得処理および重み係数の最適化の処理手順と処理内容の一例を示すフロー図である。
【0138】
ステップS301aにおいて、制御ユニット20は、学習用データ取得部204の制御の下、学習用データD3(2012)を学習用データ記憶部303から読み出す。
【0139】
同様に、ステップS301b~ステップS301eにおいて、学習用データ取得部204は、学習用データ記憶部303に記憶された学習用データD3(2013)~学習用データD3(2016)を読み出す。ステップS301a~ステップS301eは、順次実行されてもよいし、同時並行して実行されてもよい。
【0140】
ステップS302において、学習用データ取得部204は、学習用データD3(2012)~学習用データD3(2016)を結合して、学習用データD3(2012~2016)とする。
【0141】
ステップS303において、学習用データ取得部204は、任意に定められた計算式もしくは関数の組み合わせからなるスコア値算出式と仮の重み係数Wを、学習用データD3(2012~2016)に組み込む。この時点で、学習用データD3(2012~2016)は、プロフィル情報と、数値データとしての1走あたり賞金データと、重み係数と、スコア値算出式を備えており、データ構造の要件を満たす。学習用データD3(2012~2016)は、仮の重み係数に基づいてスコア値算出式に基づき算出された、仮のスコア値を備えていてもよい。
【0142】
ステップS304において、学習部205は、学習用データ取得部204から学習用データD3(2012~2016)を取得し、統計分析する処理を実行することで予測モデルを生成する。本実施形態では、学習部205は、学習用データD3(2012~2016)における本賞金を目的変数とし、各ファクターの1走あたり賞金を説明変数とした学習を行い、成績が上位の競走馬の発生しやすさを表すスコア値を算出するための重み係数Wを最適化する。
【0143】
ステップS305において、学習部205は、算出された最終的な重み係数Wを学習済みデータ記憶部304に格納する。また、学習部205は、重み係数W算出に用いた予測モデルと同じスコア値算出式を、学習済みデータ記憶部304に記憶する。
【0144】
(3)データ構造の作成
(3-1)予測用データの取得
図7は、
図2に示した制御ユニット20による2017年産駒の予測用データ作成処理の処理手順と処理内容の一例を示すフロー図である。
【0145】
ステップS401において、制御ユニット20は、予測用データ取得部206の制御の下、入出力インタフェースユニット10を介して、入力デバイスまたは外部データベース等から2017年産駒のプロフィルデータを取得し、予測用データD4(2017)を作成する。
図12は、予測用データD4の一例を示す。例えば、予測用データD4には、競走馬の馬名、もしくは馬名未定の場合には競走馬のアイデンティティを表す母名と誕生年を組み合わせた情報などが少なくとも含まれる。予測用データD4にはさらに、競走馬のプロフィルを表すファクターとして誕生月日、性別、父名、母名、誕生時の母年齢、母父名、生産者、調教師、馬主、取引価格などが含まれる。
【0146】
ステップS402において、予測用データ取得部206は、1走あたり賞金データ記憶部302に記憶された1走あたり賞金データセットD2(2007~2016)を読み出す。ステップS402は、ステップS401の後に実行されても、ステップS401と同時並行して実行されても、またはステップS401の前に実行されてもよい。
【0147】
(3-2)スコア算出用データの作成
図7のステップS403において、制御ユニット20は、スコア算出用データ作成部207の制御の下、予測用データ取得部206にて生成された予測用データD4(2017)の各ファクターを参照し、それらの条件に該当する1走あたり賞金データを1走あたり賞金データセットD2(2007~2016)から抽出し、結合して、スコア算出用データD5(2017)を作成する。具体的には、スコア算出用データ作成部207は、予測用データD4(2017)から、誕生月日、性別、父名、母名、誕生時の母年齢、母父名、生産者、調教師、馬主、取引価格などを参照し、それらの条件に対応する1走あたり賞金データを1走あたり賞金データセットD2(2007~2016)から抽出し、予測用データD4(2017)に結合して、スコア算出用データD5(2017)を作成する。
【0148】
図13は、スコア算出用データD5の一例を示す。スコア算出用データD5には、例えば、予測用データD4から抽出された、馬名、もしくは母名と誕生年を組み合わせた情報、誕生月日、性別、父名、母名、誕生時の母年齢、母父名、生産者、調教師、馬主、取引価格などと、1走あたり賞金データセットD2から抽出された、各ファクターに対応する1走あたり賞金が含まれる。
【0149】
ステップS404において、制御ユニット20は、作成されたスコア算出用データD5(2017)をスコア算出用データ記憶部305に格納する。
【0150】
(3-3)重み係数とスコア算出式の組み込み
図8は、
図2に示した制御ユニット20による2017年産駒の成績予測モデルであるデータ構造の作成手順と処理内容の一例を示すフロー図である。
【0151】
ステップS501において、制御ユニット20は、データ構造作成部208の制御の下、スコア算出用データD5(2017)をスコア算出用データ記憶部305から読み出す。
【0152】
次いで、ステップS502において、データ構造作成部208は、学習済データ記憶部304に格納された重み係数W、及びスコア値算出式を取得する。
【0153】
ステップS503において、データ構造作成部208は、スコア算出用データD5に、重み係数W、及びスコア値算出式を組み込むことで、2017年産駒の成績予測モデルであるデータ構造(2017)を生成する。
【0154】
次いで、ステップS504において、スコア算出部209がデータ構造(2017)の各ファクターの1走あたり賞金を変数として、スコア算出式に基づく演算を行うことで、スコア値を算出してもよい。
【0155】
最後に、ステップS505において、制御ユニット20は、作成されたデータ構造(2017)をデータ構造格納部306に格納する。
【0156】
以上の処理手順によりデータ構造を作成するが、インターネット経由のデータの読み込み、情報の抽出、加工、予測モデルの作成、データ構造の構築、式もしくは関数の組み合わせのデータ構造への組み込みといった一連の処理は、全てもしくは一部を、アプリケーションプログラムが自動的に実施してもよい。
【0157】
あるいは、上記一連の処理の全てもしくは一部は、アプリケーションプログラムのユーザーによる操作によって実施されてもよい。
【0158】
次に、上記一連の処理により作成されたデータ構造(2017)を使用して、2017年産駒の成績予測を行う処理手順を実施例として説明する。
【0159】
(1)プロフィルデータの補足
図14は、
図1に示した制御ユニット20による2017年産駒のデータ構造のプロフィルデータ補足の処理手順と処理内容の一例を示すフロー図である。
【0160】
ステップS1001において、制御ユニット20は、補足用データ取得部21の制御の下、入出力インタフェースユニット10を介して、外部データベース等から、2017年産駒の補足用データD4+(2017)を取得する。もしくは、記憶ユニット30を介して磁気ディスクや光ディスクなどから、上記補足用データD4+(2017)を取得してもよい。D4+は、予測用データD4と同様に、競走馬の馬名もしくは母名と誕生年を組み合わせた情報の他、競走馬のプロフィルを表すファクターとして誕生月日、性別、父名、母名、誕生時の母年齢、母父名、生産者、調教師、馬主、取引価格など取得時点での最新の情報が含まれる。
【0161】
ステップS1002において、制御ユニット20は、データ構造補足部22の制御の下、データ構造格納部31からデータ構造(2017)を読み出す。ステップS1002は、ステップS1001の後に実行されても、ステップS1001と同時並行して実行されても、またはステップS1001の前に実行されてもよい。
【0162】
次いで、ステップS1003において、データ構造補足部22は、データ構造(2017)および補足用データ取得部21が取得した補足用データD4+(2017)の各ファクターを参照し、データ構造において不足しているプロフィルがあれば、補足用データと結合することで補足する。具体的には、データ構造作成時に未定であった馬名、調教師、馬主、取引価格などの情報が補足される。また、データ構造作成時より後に輸入された海外生産馬など、データ構造作成時に未登録であった産駒の情報も補足される。
【0163】
ステップS1004において、データ構造補足部22は、ファクターデータ記憶部32に記憶された1走あたり賞金データセットD2(2007~2016)を読み出す。
【0164】
ステップS1005において、データ構造補足部22は、上記で補足したプロフィルに該当するファクターの1走あたり賞金データを1走あたり賞金データセットD2(2007~2016)から抽出し、データ構造(2017)に取り込む。
(2)スコア値の算出
【0165】
ステップS1006において、スコア算出部23がデータ構造(2017)の各ファクターの1走あたり賞金を変数として、スコア算出式に基づく演算を行うことで、スコア値を算出する。演算の結果として得られたスコア値は、スコア算出部23により、データ構造に取り込まれる。
【0166】
ステップS1007において、出力制御部24は、入出力インタフェースユニット10を介して、スコア値を出力する。スコア値は、
図3のように、各競走馬のプロフィルを表す行の先頭付近に出力されるのが、比較するのに容易となるため好ましい。また、出力制御部24は、スコア値に基づいてデータの並び替えを実施してもよい。任意に定めた式もしくは関数の内容によるが、例えばスコア値が大きいほど予想序列順位が高い場合、スコア値の大きい順に並べ替えるのが候補馬の選択に効率的であり好ましい。
【0167】
以上の処理手順によりデータ構造(2017)を使用して2017年産駒の成績予測を行うが、インターネット経由のデータの読み込み、データの補足、情報の抽出、演算といった一連の処理は、全てもしくは一部を、アプリケーションプログラムが自動的に実施してもよい。
【0168】
ステップS1003において、データ構造補足部22は、補足用データD4+(2017)を参照してデータ構造を補足する代わりに、ユーザーによるキーボードやマウスなどの入出力インタフェースユニット10の手動操作にて入力されたデータを用いて、プロフィル情報の補正もしくは補足を行ってもよい。
【0169】
データ構造中のスコア算出に用いる各データの重み係数は、ユーザーにより任意のタイミングで、入出力インタフェースユニット10の手動操作にて変更されてもよい。
【0170】
上記のようにユーザーの手動操作を起点にして、プロフィルデータの補正もしくは補足、重み係数の変更が行われた場合、スコア算出部23により演算が行われスコア値が算出される。次いで、出力制御部24により、更新されたスコア値が出力される。演算の動作、およびスコア値の更新は、各データおよび重み係数が更新される度に、アプリケーションプログラムにより自動的に行われるのが好ましい。
【0171】
(検証)
実施形態により算出されるスコア値の有用性を評価するために、2017年産駒の2019年6月から2020年5月までの成績データを取得して作成した実績データD1(2017)を用いて検証を行った。具体的には、実績データD1(2017)から各競争馬が期間中に獲得した本賞金を抽出して、データ構造(2017)と結合し、スコア値の評価を行った。
【0172】
図15は、データ構造(2017)における競走馬のスコア値の分布を示すヒストグラムおよびスコア値の各区間における本賞金100位内発生率、本賞金200位内発生率を示すグラフである。
【0173】
ヒストグラムにおいて区間の間隔はスコア値で20毎とし、区間の最小の境界値よりも大きく、最大の境界値以下のスコア値に該当する競走馬をカウントし、各区間の頭数とした。例えば、データ構造(2017)において、スコア値が160より大きく、180以下であった160-180区間に該当する競走馬は74頭であった。
【0174】
本賞金100位内発生率は、上記本賞金順に並べた上位100位以内、2017年産駒においては2490万円以上の本賞金を獲得した競走馬の各区間の頭数を、上記でカウントした各区間の全体頭数で除した値である。例えば、データ構造(2017)において、160-180区間における本賞金100位以内の競走馬は13頭であったので、本賞金100位内発生率は17.6%と計算された。
【0175】
本賞金200位内発生率は、本賞金順に並べた上位200位以内、2017年産駒においては1710万円以上の本賞金を獲得した競走馬の各区間の頭数を、上記でカウントした各区間の全体頭数で除した値である。例えば、データ構造(2017)において、160-180区間における本賞金200位以内の競走馬は17頭であったので、本賞金200位内発生率は23.0%と計算された。
【0176】
例えば、データ構造(2017)において、スコア値が160より大きい競走馬97頭から、本賞金上位100位以内が17頭、本賞金上位200位以内が23頭出ており、それぞれ本賞金100位内発生率は17.5%、本賞金200位内発生率は23.7%であった。デビュー前のスコア値上位の競走馬から候補馬を検討することにより、POGで本賞金を多く獲得する競走馬を効率よく選択することが期待できる結果が示された。