Race Handicapping Prenetwork - Detail

Top 

Race Handicapping Prenetwork - Detail

_bm16Note:  The Race Handicapping Option is useful for ranking many things, not just horses.

 

Neural networks are often used successfully to predict the outcome of a horse race or dog race or for other ranking problems.  Input data may include data about a race that is the same for all horses (called common statistics, e.g., track conditions) as well as statistics on each horse.  Each training pattern may include statistics on 8 to 10 horses in a race and the network will try to compare all horses at the same time.  Actually, you can choose any number of horses.

 

This module will preprocess the data so that the network will be able to compare only two horses at a time (in other words, "explode" the file into a number of two horse comparisons).  This will simplify the network for training purposes and increase the accuracy of the predictions.

 

File Note:  This module defaults to creating a .PAT file for further processing by NeuroShell 2.  Once the network is applied to this file, the Race Handicapping Postnetwork module may be used to return the file to its original form of an entire field of 8 to 10 horses with a predicted finish place or ranking for each horse in the race.  We call the prenetwork process "exploding" the file and the postnetwork process "imploding" the file.

 

Training a Network

 

1.  File Requirements

To use this module, you need a .PAT file that meets the following requirements:

A. Each row in the file contains all inputs for a race.

 

B. The first column(s) in the row should contain all of the Common Data for each race, such as track condition, followed by input statistics on each horse.  Each horse must have the same number of input statistics and the statistics must be in the same order for each horse.

 

C.  When using the file to train the network, you need to include a column for the finish place for each horse as an actual output on the same row as the inputs.  The value for finish place is a number from 1 to N where N is the total number of horses in the race.  The file should contain N output columns. The finish place for each horse must appear in the same order that the input statistics for each horse were entered.

 

D. The file may contain blank data cells with the exception of cells in the first row. The first row must include a maximum number of cells equal to:  the total number of columns with common data plus the number of horses times the number of statistics per horse that the user enters on the Horse Race Handicapping Prenetwork window (see below for details).  For example, if you specify that there are 3 inputs of common data, 8 horses in the race, and 3 inputs per horse, the first row of the file must contain 27 data inputs and 8 outputs.  The number of inputs are computed as follows:   [3 + (8 x 3)] = 27.

 

Example

The following data file will explain how a file should be structured prior to processing by the Race Handicapping Prenetwork module.

 

_bm15

The file includes 2 Common Data inputs, track condition and temperature, followed by 2 input statistics for each of the 3 horses in the race:  jockey weight and speed in last race.  The last three columns are the finish place for horses # 1, #2, and #3 respectively.  When you want to apply the network to a new set of data, the values in the last 3 columns would be omitted.

 

This module explodes the .PAT file into the following file, which compares the horses 2 at a time:

 

_bm17

WARNING:  Using this module can create a file that is much larger than your original data file since a row (or pattern) that contains statistics on 8 horses explodes to 56 rows (or patterns), a row that contains statistics on 9 horses explodes to 72 rows, etc.  We generate permutations of pairs, not just combinations of pairs, so the network won't become sensitive to order of the two horses.

 

The first two rows contain label information (represented by ***) after explosion by our program which will be used after the file is processed by the network to implode (restore) it back again.

 

The exploded file displays rows of data that compare 2 horses at a time.  The finish place is either a 1 or 0, where 1 denotes a horse that beats the other horse in the comparison.

 

2.  The Race Handicapping Module

Enter the following data in the module window before exploding the file:

 

Common Data

Common Data is information that applies to all horses in the race (such as track condition or day of the week) rather than data that only applies to one horse.

 

Click on the "No Common Statistics" button if there is no Common Data.

 

Click on the "Number of Common Statistics" button if there is Common Data.  Enter the number of statistics in the text edit box, i.e., the number of variables that are common to all horses.

 

Horse Data

Enter the number of horses per race in the text edit box. The module works on the assumption that there are the same number of horses in all of the races in the file.  If a particular race has less horses than other races, enter an * for the inputs and output (finish place) for the missing horse(s).

 

Enter the number of input statistics per horse. This number includes the number of individual statistics on each horse but does not include the finish place which is an output.

 

Use the File Menu to select a pattern file or to view a pattern file.  If you view the pattern file after it has been exploded, several label rows will appear at the top of the file.  These rows store information that will be used by the Race Handicapping Postnetwork module.

 

Use the Explode Menu to begin processing the file or to interrupt processing.

 

3.  Further Processing

Once a file has been exploded, creation of the network continues as for any other network.  Because you use the Define Inputs/Outputs module after you explode the file, you should define two actual outputs because the network will be trained to compare two horses at a time.  The number of inputs is equal to twice the number of horse statistics plus the number of common statistics.  You must do any test set extractions as well as design and train the network, after the .PAT file is exploded, not before.

 

When you use the Apply Module, the trained network is used to produce results for two horse comparisons.  The Apply Module defaults to working with the .PAT file.

 

Note:  When applying a trained network to a file created with the Race Handicapping Module, do not select the check boxes that create extra columns in the file, i.e.,  Include actuals in .OUT file or Include in .OUT file actuals minus network outputs. The extra columns will interfere with restoring your file to its original condition in the Race Handicapping Post Network module.  If you get an error when trying to implode a file, it is often because this extra data is in the .OUT file, or because you have not created an .OUT file, or because you have not attached the .PAT file to the .OUT file.

 

After applying the trained network, you may want to view the file which includes the network's prediction for each horse in the race.  You need to use the Attach Module and then use the Race Handicapping Post Network module to "implode" the file.  The result will be a file that includes all of the information for a single race on a single row in the spreadsheet.  The output neuron results for each horse have been combined to produce a ranking for each horse.

 

Making Predictions

 

1.  File Requirements

A. If you're using the file to make predictions, you do not need to include a finish place for each horse in the output columns. This file should have a .PRO extension and should be used with the Advanced System's Production option (refer to the Advanced System for details).

 

Note:  If you are applying the network to a file in which you know the results of the race, you may place the actual race results in the actual output columns.  The network's predictions will be placed in columns to the right of the actual output columns.

 

B.  Other than 1 above, the rest of the file should match the specifications for creating a .PAT file for training purposes.

 

2.  The Race Handicapping Module

When this module is selected for processing a .PRO file, default information will be displayed for the Common Data and Horse Data.  The default information was entered when the network was trained and should not be changed if it is correct when applying the network to new data.

 

Use the Explode Menu to begin processing the file or to interrupt processing.

 

3.  Further Processing

Once a file has been exploded, creation of the network continues as for any other network.

 

When you use the Apply Module, the trained network is used to produce results for two horse comparisons.  When you are in the Production mode, the Apply Module defaults to producing results for a .PRO file.

 

Note:  When applying a trained network to a file created with the Race Handicapping Module, do not select the check boxes that create extra columns in the file, e.g. Include actuals in .OUT file or Include in .OUT file actuals minus network outputs. The extra columns will interfere with restoring your file to its original condition in the Race Handicapping Post Network module.

 

After applying the trained network, you may want to view the file which includes the network's prediction for each horse in the race.  You need to use the Attach Module and then use the Race Handicapping Post Network module to "implode" the file.  The result will be a file that includes all of the information for a single race on a single row in the spreadsheet.  The neuron output values in the .OUT file will have been mathematically combined to produce rankings for the horses.

 

Note:  We suggest making a copy of your original .PAT and/or .PRO file before exploding the file(s).  You may want to add more races to your file and this is not possible after the file has been exploded.  The first time your .PAT file is exploded, a copy is made with a .OLD extension; but if you process additional files through the network your original file is lost.  We suggest that you make a copy with a .BAK extension so you will not lose your original file.