Predict a Value Wizard: Configure Model
Modify Field Dialog: Prediction Model
Ä Note: The title of this page may be displayed as just Model to allow for more tabs to be displayed on this dialog.
This dialog appears in several forms. The Predict a Value Wizard allows you to create a new prediction field in a data series or in all data series in a portfolio or group. The Modify Field Dialog allows you to modify the properties of a previously created field. This page allows you to specify the general characteristics of the neural network used for the prediction.
Ä Note: Fields that are currently being used by the Solution Service cannot be modified.
& For help with predictions, see Predicting and Modeling Financial Data.
Selecting a Model Type
TradingSolutions includes over 50 neural network topologies which can be infinitely customized from within the software. In addition, custom neural network topologies can be created with NeuroSolutions and generated for use with TradingSolutions using the Custom Solution Wizard. These two products are available in a bundle with TradingSolutions as the TradingSolutions Suite.
¨ Model Type
This option allows you to select the source of the neural network.
· Use built-in neural network.
This option uses a built-in neural network topology, which can be selected and configured using the Neural Network Model section.
· Use a Custom Solution Wizard generated DLL.
This option uses a neural network that was created using NeuroSolutions, then generated for use with TradingSolutions using the Custom Solution Wizard.
Selecting a Built-in Neural Network Topology
The selection of a neural network topology is a relatively abstract process. In theory, a more complex topology should be capable of learning more complex relationships than a simple one, but it will also be harder to train effectively. In addition, some neural models contain memory elements or recurrent loops, which may allow them to better predict relationships between values in time series.
To select a neural network topology, specify the values listed below. A thumbnail diagram of the current topology will be displayed as the values are updated. This is reduced scale version of the topology diagram on the Advanced Topology Settings Dialog.
¨ Neural Model
This value specifies the overall neural model of the topology. The topologies are listed by relative order of complexity.
· Multilayer Perceptron (MLP)
These topologies are the most basic of the neural network topologies. The data in a multilayer perceptron follows a single path with no recursion or memory elements. Despite its simplicity, the multilayer perceptron can be used to solve the vast majority of problems solvable by supervised neural networks.
· Modular Network
These topologies contain multiple processing paths. Each processing path has the potential of specializing on a different aspect of the incoming data, allowing it specialize on multiple conditions.
· Jordan/Elman Network
These topologies, based on the research of Michael I. Jordan and Jeffrey Elman, include the concept of context in their processing. This allows them to use previous information without the complexity associated with dynamic networks with memory elements.
· Time-Lag Recurrent Network (TLRN)
These topologies include memory elements that allow it to identify patterns that occur over multiple samples.
· Recurrent Network
These topologies delay one or more of the processing values in the network so that they will be used in the calculation of the next output, rather than the current output. These are often combined with the memory elements found in time-lag recurrent networks.
¨ Hidden Layers
This value specifies the number of hidden layers in the topology. Hidden layers are the layers of processing between the input and output layers. Increasing the number of hidden layers increases the complexity of the neural network.
¨ Characteristics
This value specifies one or two additional elements specific to the chosen neural model. It includes such options as what type of memory elements to use and where to attach feed-forward elements. The following concepts are included in the selections.
· Context Axon
This is one type of context used in Jordan/Elman networks.
· Feedforward (FF)
This characteristic makes it so that values can bypass the processing in one or more hidden layers. Values that go through feedforward processing are combined with values that go through the hidden layers to produce a single value. Different feedforward characteristics determine which layers are bypassed.
· Focused
Focused time-lag recurrent networks have memory only in the input axon. This differs from unfocused networks, which also have memory in each hidden layer.
· Fully Recurrent
A recurrent neural network that does not include a non-recurrent feedforward processing path. Because of this, all data must flow through the recurrent processing.
· Gamma Memory
Gamma memory is similar to an exponential moving average in that a percentage of each new value is combined with an opposing percentage of the previous value. Each additional memory tap does this with the value of the previous memory tap. This allows fewer memory values to be used to store more historical information, but may significantly water down the information in those values.
· Integral Axon
This is one type of context used in Jordan/Elman networks.
· Laguarre Memory
Laguarre memory is similar to gamma memory in that a percentage of each new value is combined with an opposing percentage of the previous value. However, Laguarre memory includes improvements that make the values of later memory taps include more specific information.
· Partially Recurrent
A recurrent neural network that also includes a non-recurrent feedforward processing path.
· TDNN Memory
In TDNN memory, short for time-delay neural network memory, the first memory taps contain the current value of each input to the memory. Each memory tap after that contains the last value of each previous memory tap for each input, effectively creating a buffer of the last several input values. Since the actual values of the inputs are stored, the memory depth of a TDNN memory is the same as the number of memory taps.
¨ Memory Depth
This value specifies the relative amount of memory of previous values in Time-Lag Recurrent Networks and Recurrent Networks. For each unit of memory depth, the neural network topology effectively has one more previous value for each of the inputs.
Ä Note: Some memory depths cannot be specified for Gamma and Laguarre memories since these memory types require fewer than one memory tap to produce each level of memory depth. For example, one memory tap produces a memory depth of 2 and two memory taps produce a memory depth of 4, therefore a memory depth of 3 cannot be specified.
Ä Note: Since the memory depth is applied to all inputs to the neural network, increasing the memory depth can greatly increase the effective number of inputs to the system. This also increases the number of weights in the network. To simulate memory only on specific inputs, select to lag those specific inputs from the Prediction Inputs page.
& For help with the individual neural models, see Configuring Neural Network Models.
After selecting a neural network topology, the individual elements of the network can be fine-tuned using the Advanced Topology Settings… button. This will display the Advanced Topology Settings Dialog.
Ä Note: By default, TradingSolutions will automatically maintain the best estimates of settings to use.
Understanding the Data Ratio
The ratio of data samples in the training set to the weights in the neural network topology can greatly effect the ability of a neural network to model the data. While the neural network topology is being modified, TradingSolutions will automatically monitor the ratio of samples to weights and display it on this page.
p Samples
This value is the approximate size of the training set, based on the training data distribution specified on the Modify Optimization Range Dialog.
p Weights
This value is a count of the total number of weights in the selected neural network topology. The number of weights in the topology is dependent on the number of inputs and outputs, the memory depth, the number of internal processing elements, and the complexity of the topology.
Ä Note: If the number of weights is the minimum number it can be for the amount of inputs and memory selected, an * will appear next to this number.
p Samples to Weights
This is a ratio of the number of samples to the number of weights.
By default, TradingSolutions will automatically adjust the number of internal processing elements so that the samples-to-weights ratio is as close to the target value as possible. For large numbers of samples, this ratio may be larger in order to keep the number of processing elements restricted to a reasonable number. A good rule of thumb is to keep this ratio to at least 10-to-1 as a starting point for creating the topology.
The target samples-to-weights ratio can be set on the Modify Training Settings Dialog. The option to automatically maintain the ratio can be turned off by pressing the Advanced Topology Settings… button and disabling the option to automatically maintain best estimates.
Ä Note: In order to maintain a good samples to weights ratio, the number of samples must be adequate for the number of inputs and the memory depth selected. If a ratio of at least 5-to-1 cannot be maintained, try increasing the size of the training set by increasing the date range or decreasing the size of the cross validation or testing sets. Alternatively, try removing some inputs or reducing the memory depth.
Using a Custom Solution Wizard Generated DLL
After selecting Use a Custom Solution Wizard generated DLL, additional controls will be displayed allowing you to select the DLL to use.
p Select DLL…
This button allows you to select which Custom Solution Wizard generated DLL to use.
& For help with the file selection dialog, see the help for the File Selection Dialog.
p Adjust Seed…
This button displays the Adjust Random Number Seed Dialog which allows you to modify the seed used for generating random initial conditions in the DLL.
& For help using Custom Solution Wizard DLLs, see Developing Models with NeuroSolutions.
TradingSolutions cannot modify the topologies associated with Custom Solution Wizard DLLs. However, it will modify the following settings for DLLs generated specifically for TradingSolutions.
· Inputs
The number of inputs will be set to the number of input fields.
· Outputs
The number of outputs will be set to the number of desired output fields (typically 1).
· Weight Update Samples per Exemplar
Dynamic networks will be trained using the Online/Batch and Samples Per Exemplar settings on the breadboard. However, if the number of samples per exemplar in the DLL is larger than the number of samples in the training set, the number of samples per exemplar will be lowered to the number of samples available.
Static networks will be trained using the settings on the breadboard.
All other settings must be adjusted in the NeuroSolutions breadboard. This includes the number of hidden layers, number of processing elements in the hidden layers, memory taps, and learning rates.
Ä Note: If the Custom Solution Wizard DLL is not generated for TradingSolutions, the number of inputs and outputs and the weight update samples also must be set in the NeuroSolutions breadboard.
What Do I Do Next?
If you are creating a new field, press the Next button to continue on to the Create Prediction page. If you would like to exit the Wizard without creating a new field, press the Cancel button. If you would like to change any of the options specified previously, including switching to a general model, press the Back button to return to the Select Options page.
If you are finished updating the properties of a previously created field, press the OK button to save your changes or select another property page. If you would like to exit from this dialog without performing any changes, press the Cancel button.
Additional Property Pages
The Modify Field Dialog has many different property pages that will be displayed as is appropriate for the type of field being modified. For information on the other property pages available, see the help for the Modify Field Dialog.
How Did I Get Here?
The Configure Model page appears after the Select Options page in the Predict a Value Wizard. However, it is only displayed when you select View or modify the neural network model for this prediction.
The Modify Field Dialog appears when you select to modify or analyze the selected field from the Modify Data Series Dialog or the Modify Portfolio/Group Dialog. It is also displayed when you select Modify Field… from the context menu for a field in a chart or spreadsheet.