APP下载

应用神经网络的足球比赛结果预测

2021-12-09黄易

微型电脑应用 2021年11期
关键词:神经元神经网络精度

黄易

(咸阳职业技术学院 体育学院, 陕西 咸阳 712000)

0 引言

随着计算机技术的迅速发展,为解决以前无法解决的各种任务开辟了新的机遇。机器学习,尤其是神经网络的普及,最近达到了顶峰,因为机器学习算法被描述得比他们的使用更早,甚至对几乎每个人都买得起的计算机也变得相当有效。机器学习是一个非常有前途的行业,特别是使用神经网络[1-5]。

博彩领域,与机器学习不同,已经流行多年。尽管这一领域存在时间长,而且无障碍,但统计数字显示,这一领域的受欢迎程度每年都在增长,这使它得以发展,而且每年都在使用新的方法来鼓励越来越多的人投入其中。

考虑到博彩这一领域的不断普及,以及市场上有很多投注处,可以得出这样的结论:目前还没有一种算法能够准确预测将要发生的体育赛事结果。因为一场体育比赛的结果受到很多因素的影响,其中许多因素是不可预测的。尽管如此,世界上许多顶尖大学都在致力于发明一种具有高预测性的算法[6-11]。因此,体育赛事本身,例如一场足球比赛的结果,是由许多因素拟合的结果,每一个因素都有不同程度的影响。由于影响因素之间缺乏明显的联系,专家们无法根据自己的逻辑结论百分之百地预测出结果。

1 神经网络原理

尽管有神经网络的原理,但它的实现有很多方法、结构变体和学习算法[12]。有些神经网络易于实现,有些则难以实现,但为学习提供了重要的方法。文献分析表明,与其他神经网络结构相比,直连神经网络的效率高,实现复杂度高。

BP(Back Propagation)神经网络是最流行的神经网络结构之一,不仅因为其实现的复杂性,还因为它的生产率和效率高[13-15]。这类神经网络之间最大的区别是其组成部分不形成回路,与递归神经网络相反。

在直连的BP神经网络中,神经元从与之相关的其他神经元接收更高层次的数据,并将结果传递到更低层次。因此,根据神经网络的名称,其中的信息只有一种分布方式,即从入口到出口,通过神经网络的所有隐含层。

在这种神经网络中,结果的形成是一种标准方法,其中信息通过神经元中具有一定权重的突触传递,这些突触对所获得的结果进行总结,并将激活函数(传递函数)应用于所获得的数据。这个过程是不变的,它贯穿于神经网络的所有隐含层。

如上所述,神经网络包含隐含层。考虑了神经网络在输入层和输出层之间的隐含层。特别是它们的数量,是神经网络效率的决定性因素之一,它直接影响结果的准确性[16-17]。隐含层越多,对神经网络的资源要求就越高。因此,一个有效的神经网络可以被称为一个正确选择了许多因素的网络,包括隐含层的数量。

神经网络训练算法的选择对神经网络结果的准确性也有很大的影响。训练是创建神经网络的关键步骤,神经网络在实现后立即出现。考虑到神经网络的种类繁多,有几种训练算法。神经网络训练的基本原理是调整突触上的权值,使神经网络输出的结果与参考数据之间的误差最小化。

在仔细分析文献的基础上,选择了用于神经网络训练的逆误差传播方法[18-19]。该方法是一种迭代梯度算法,其原理是将神经网络输出的误差信号传输到输入端。这种神经网络教学方法是所述方法中最流行、最有效的方法之一。

2 神经网络实现

因为直连BP神经网络是一种逆误差传播的前馈神经网络,所以整个直连BP神经网络的结构如图1所示。

图1 神经网络的结构示意图

具体的整个网络的学习过程为:当样本从输入层进入隐含层后,隐含层通过式(1)输出数据。

y=f(XTW1+θ)

(1)

式中,X为输入样本的属性;y为隐含层的输出;W1为从输入层到隐含层的连接权值;θ为隐含层设置的阈值;f(·)为sigmoid函数,在此设置为tansig函数,其值通过式(2)得到。

(2)

接下来再从隐含层到输出层,最终得到输出层的结果。其值计算过程为式(3)。

(3)

式中,O为输出层的最终结果;W21为从输入层直接到输出层的权值;W22为隐含层到输出层的权值;β为设置的输出层阈值。

整个训练是在参考数据样本上进行的,在这种情况下,数据样本由直接影响足球比赛结果形成的因素表示。为了给神经网络训练提供必要的性能和有效性,对影响神经网络训练的因素进行了详细的分析,选择了12个影响最大的因素作为样本。

由于在这种情况下,最优隐含层数是未知的,因此决定分别实现两层和四层隐含层的神经网络,以便对这种神经网络的效率进行实验比较。

3 实验设计

实验环境为Windows764位系统的台式机,16 GB内存,英特尔酷睿 i7,3.5 GHz处理器,显卡为8 GB的英伟达GTX1080。由于神经网络的流行、足够的性能和内置的功能,在此使用的是Python 2.7编程语言实现的。并利用了NumPy库,该库允许使用必要的数学函数,并为大型多维数组提供支持。数据集中的数据为足球数据查询平台创冰中的2016—2019年英超联赛比赛数据。

为了评估神经网络的工作,因此选择了一些匹配项,这些匹配项的结果是预先知道的,即在测试时已经发生了。将同一组测试数据应用于两个神经网络,以比较它们的工作结果。

如上所述,在为训练神经网络而选择的比赛中,只选择那些对足球比赛结果的形成有重大影响的比赛。因此,可以区分以下几项。

(1) 每队最近五场比赛的统计;

(2) 当前团队会议统计;

(3) 主队会议上的比赛统计;

(4) 在观众出口处对比赛信息的统计。

这些因素是最有影响的因素之一。比如,可以用来制定预测的一个主要因素就是队伍的形式,而它通常是由最近五场球队比赛的统计数据决定的,所以这个因素也属于影响最大的一个组,其他因素类似。因此,使用这些因素可以达到预期的最大效果。

但也有一些对结果形成的影响要小得多的因素,其中包括。

(1) 比赛期间的天气;

(2) 比赛实际进行的时间段;

(3) 比赛场地及地点;

(4) 犯规、罚球、角球统计。

为了评估神经网络训练参数选择的可行性和正确性,并在实践中检验它们对结果形成的影响,决定应用这2个样本因子并进行比较。

因此,在由所有影响因素组成的2个试验组形成后,根据被归类为最有影响组的因素,下一阶段是神经网络的训练阶段,其结果是训练好的神经网络,准备对所提供的输入数据进行预测。

训练神经网络的过程,如图2所示。

图2 数据互操作模块

“Epoch”和“Error”变量分别对应通过的迭代次数和错误。随着训练的每次迭代,误差减小,表明训练过程的成功。

不同隐含层数和因子数的神经网络预测精度,如表1所示。

表1 神经网络预测的精度

由表1的数据可以看出,4个隐含层20个因子的神经网络预测效果最好,预测精度为67.25%。由2个隐含层组成的神经网络,在应用20个因子的情况下,其结果明显较差,为55.06%。

尽管要素数量的差异很大,但利用多种因素得到的结果表明,所选择的要素对结果的形成影响要大得多。因此,如果生产率因素是关键的,其余的因素可以忽略不计。

研究了神经网络的隐含层数。在研究中,形成了一组特征,并依次用于预测。特性以及结果的预测如表2所示。

表2 神经元数目对预测精度影响

根据神经网络隐含层数变化对预测精度影响的研究结果,可以得出:8层和10层隐含层神经网络的预测效果最好,分别为16个信号的65%、68%和61%,对8个信号成功预测的65%。值得注意的是,一个具有10个隐含层的神经网络的训练过程花费了相当长的时间,并且随着隐含层数量增加到12个,训练过程极其缓慢,这使得研究成为不可能。在所有情况下,本研究都使用一种算法来训练神经网络,即反向误差传播算法。

神经网络的一个重要特征是神经元的数目,神经元的隐含层由神经元组成。它们的数量对神经网络的训练过程和预测的成功与否有着重要的影响。为了保证在神经网络训练允许的时间内预测的高精度,研究了神经网络的最优数目。

为了进行研究,形成了一组特征,并进行了一致的实验。误差减小的可视化如图3所示。

图3 误差减小的可视化

神经网络的特性和实验结果如表3所示。

表3 神经元数目对预测精度影响的结果

通过对神经网络隐含层神经元数量变化的研究,可以得出结论:为了达到最佳的效果,应该在隐含层中使用10到13个神经元,这将在神经网络训练的允许时间内提供最准确的预测结果。虽然随着神经网络中神经元数量的增加,预测精度也在不断提高,但随着神经网络每一隐含层中14个神经元的使用,训练过程持续时间非常长,这使得在有限的资源条件下,这样多的神经元的使用是不可能的。

在形成神经网络结果的过程中,一个同样起着重要作用的因素是训练神经网络的过程所采用的算法。考虑到所选神经网络结构的特殊性,以及所分析的学习算法的特点,决定选择一种逆向误差传播算法来训练神经网络。还有另一个版本的实现,它不同于矩的标准使用(有时称为“脉冲率”)。

使用经典算法和基于矩的算法的训练过程中的误差变化的可视化,如图4、图5所示。

图4 经典算法在训练过程中的误差变化

图5 使用带矩算法的训练过程中的误差变化

获得的研究结果如表4所示。

表4 训练算法对预测精度影响的结果

4 结果讨论

在测试了可用于预测足球比赛结果的工具(这表明问题仍然存在)之后,下一步是分析拟用于预测足球比赛结果的算法以及有关神经网络的材料。为了分析替代算法和预测方法,选择了以下方法。

(1) 使用“朴素”贝叶斯分类器的方法;

(2) 方法K-medium(聚类分析)。

在实验结果中,采用“朴素”贝叶斯分类器的方法预测精度达到33%,而K-medium方法虽然取得了较好的效果,但其预测精度为47%,效果并不理想。在进行了必要的实验之后,对所提出的方法的预测精度进行了检验,确定了它们的低效性以及需要一种全新的方法来解决这个问题,特别是使用深层神经网络。

在应用神经网络进行调查的过程中,对影响体育比赛成绩形成的因素进行了分析和筛选。选择了两组因素来比较神经网络的工作与它的各种特征,其中一些主要包括比赛本身的信息,而另一些则提供了关于两支球队的信息。选取对足球比赛结果影响最大的主要指标,对其进行归一化处理,用于神经网络。

在选择了神经网络的主要特征后,研究了改变神经网络的隐含层数目以及这些隐含层所形成的神经元数目的影响。调查前的目标是准确地确定隐含层的最佳数目和神经元的数目,因为这些特性不仅影响预测的准确性,还影响神经网络的训练过程,以及这个过程的大部分持续时间。

通过对神经网络特性的研究和交替变化,确定了神经网络的最优特性,在使用16个输入信号的情况下,预测精度达到75%,在使用8个输入信号的情况下,预测精度达到70%。

最后一个阶段是研究训练算法对神经网络本身训练过程的影响,即用矩的概念替换其经典变量。在研究过程中,根据得到的结果,确定了利用该算法对逆误差随矩传播神经网络进行训练更为有效。

对预测运动比赛结果的算法进行了研究,其预测精度在42%—71%之间,预测精度在52%—75%之间,表明该算法表现出了良好的效果,可以在以后的软件开发中使用。

为了提高算法的预测精度,可以采用更多的隐含层神经网络,这表明随着隐含层数的增加,预测结果的精度会迅速提高,但随后神经网络的训练时间也会相应增加。

5 总结

鉴于人们对投注行业的兴趣每年都在增加,但软件种类非常少,所以在本文中提出了一种基于BP神经网络对足球比赛结果预测的方法,该方法不仅可以帮助感兴趣的人预测特定的比赛,而且还可以帮助球队及其他的专业人士对比赛进行模拟和分析,在实验中,实验结果表明,提出的方法对结果预测的准确率平均在70%以上。

该算法具有很大的发展潜力,由于隐含层的层数越多,则节点越多,那么精确度越高,由于目前隐含层最多只有10—12层,在未来使用更多的隐含层理论上可以提高精确度,但由于隐含层越多,运算速度越慢,所以在未来,还需要解决运算速度的问题。另外,对于预测准确率的提升可以通过获取更多的特征来进行学习。众所周知,除本文已用特征外,教练的技战术、球员的生理心理状态、球队排名等,都会对足球比赛结果产生影响,在未来,可以结合更多特征进行预测。

猜你喜欢

神经元神经网络精度
热连轧机组粗轧机精度控制
超高精度计时器——原子钟
神经网络抑制无线通信干扰探究
分析误差提精度
基于神经网络的中小学生情感分析
基于DSPIC33F微处理器的采集精度的提高
跃动的神经元——波兰Brain Embassy联合办公
基于神经网络的拉矫机控制模型建立
ERK1/2介导姜黄素抑制STS诱导神经元毒性损伤的作用
毫米波导引头预定回路改进单神经元控制