既然对于某些特定的应用来说,肯定存在一些更好的转化和统一化方法,我们就可以自己探索各種各样的方法。一旦选定了网络体系结构,并且输入的数据经过选择和预处理后,就必须选择数据事实。
事实选择 事实是以一行相关的数字表示的,在这行数字里,第一个i数字与i网络输入相关,第j个数字与j网络输出相关。一堆相关的事实组合就叫做“事实集”。如果两个事实有完全相同的输入和输出值,那么就只能有一个事实被归到事实集中。一旦定义了这个事实集,在大多数金融应用中,它就会被分成一些相互排斥的训练和测试子集。
向后传播的网络以两个模式运作:一个是学习模式,网络使用来自训练集的事实,通过改变它们的权重来更改它的内在表达:另一个就是回忆模式.网络处理来自测试集的输入。并利用先前学会的表达产生相关的输出。应该把测试集对各種训练网络的相对表现用来决定哪个网络包含进金融应用中。
训练和测试 一旦事实被选定后、就在训练期间把它连续地引入网络。允许网络在模拟一个問題时采用内在表达的权重,这些权重一般都初始化为一些比较小的随机分配的权重。如果初始的权重被设置成相同的值.网络可能就永遠无法学习了,因为误差的改变与权重值是成比例的。每次通过训练集时,网络都对每个输出层的输出计算实际输出与理论输出之间的误差大小,然后这些误差就通过网络一层一层地向后传播,并且为了使与每个输出有关的整体误差最小化,还需要不停改变神经元之间的权重关系。
每次权重改变时,网络就在表示整体误差空间的多维表面上迈一步:在训练期间,网络就在表面上穿行,力图找到最低点或者最小误差点、权重的改变与被叫做“学习速率”的训练参数成比例,在训练过程中可以调整的其他训练参数包括温度、收入和噪音等。
有了各種训练参数、预处理方法和可以探索的体系结构的配置,就需要一个结合了测试和训练的自动的训练和测试制度。类似于遗传的运算法则和模拟退火工具。这个制度可以加速对这些参数空间的寻找过程。遗传运算法则对很多参数优化任务来说都是很有效的。在训练期间,模拟退火通过引入一个影响学习速率的变化的温度条件来使学习速率的调整自动化。温度高时,学习速率就很快,而当温度降下来时,由于网络要了结一个解决方案,学习速度就降下来。
过度训练 过度训练与基于惯例的投资理论曲线拟合类似,是开发神经系统网络时必须避开的主要缺陷之一。过度训练在网络存储细微差别和训练集合的特质时發生,会减弱综合新数据的能力。当过度训练發生时,虽然网络在训练集的表现比较好,但在样本外的测试集以及之后的实际交易期间的表现就会比较差。为了避免过度训练,网络训练应被预定的间隔周期中断一下,以回忆模式继续運行测试集,并根据预定的误差标准来评估网络的业绩。然后训练再从原来的中断点开始重新进行。这个自动化的过程不停地反复,直到测试集的表现开始下降。意味着网络开始过度训练了。之后再进一步评价所有符合误差标准的中间结果。
误差统计 另一个重要的网络设计决策关系到使用哪種误差统计方法进行训练和测试。一種测度方法可能是类似移动平均值的实际统计计算与网络输出之间的差别。对测试集中的每个事实都要进行这種差别的计算,然后对结果求和,并除以测试集中的事实总数,这是一種标准的误差测度方法,叫做“平均误差”。各種误差测度包括绝对值平均误差、平方和误差和均值平方根误差。选定了一个网络模型后,就需要进行周期性的再训练,利用正在进行中的研究来修改输入、输出、体系结构和测试训练过程的全部工具,以便提高网络表现和预测的正确性。
一个有效的神经网络金融预测应用的设汁是无法预料的,除非你有相当多的交易经验、编程和数学方面的专门知识,以及能够投入到这个任务上的时间。成功的神经系统网络开发是对“艺术”和“科学”两者的结合。即使是对于一群共同工作的专家来说,这種努力也是极其耗费时间和体力的。
以我的经验来说一下。1991年,我公司的研究开发部门技术预测群在进行了20世纪80年代中期开始的跨市场分析实验后,引进了跨市场分析的优势软件。为了预测市场走势、移动平均和第二天各種金融期货市场的价格,该优势软件把神经系统网络应用到了跨市场分析中。目前,交易商可以从跨市场分析受益的通货、利率市场、股票指数和能源组合有21種惯例定制优势程序,不需要我们再另外去发明车轮或者必须成为一个尖端科学家了。