作者laechan (小太保)
看板mud_sanc
标题[闲聊] 彩号模型
时间Fri Jul 27 17:27:40 2012
这个是我最近要用 ASP 做的东西,大致讲一下。
首先,我们已经有 n+1 组的开奖号码,假设第 n+1 组号码
跟前面 n 组是有关连的,那我们就可以用这 n 组号码当做
类神经网路的「输入」,把第 n+1 组号码当做「期望输出」
则第一步就是对输入及输出做「标准化」,一般是把号码标
准化到 0~1 之间。(例如奖号 3 -> 3/49 = 0.0612)
接着,我们就需要权重向量 W,用来跟输入向量相乘,得到
「实际值」。通常权重向量最初是用 random 产生,并令其
各值介於 0~1 之间。通常 W 是 1xn 的向量。
那权重向量跟输入向量相乘後,会得到「实际输出」向量,
而实际输出跟期望输出之间是有落差的,对这个落差做特殊
的计算得到如下的值..
1 __ 2
E = --- x > (实际值i - 期望值i)
2  ̄
而 W 的调整就可以依照底下的公式来算...
W = W - 学习速率 x E,学习速率一般选 <1 的值即可。
然後因为 E 恒正,输入跟期望输出也恒正,所以 W 里面的
每一个元素也会越来越小,则乘出来的实际输出每经过一次
上面的计算後也会越来越小,循环之後每一次的 E 也就越小
, 因此这里可以设定一个终止误差值,例如 0.0001,只要
E 算出来小於 0.0001 即终止计算。
这时得出的 W 就是我们要的权重向量。
那实际上,其实还会配发一组「偏权值向量bias」,以上面
为例它类似 W x X = Y,然後藉 Y 与 Y' 之间的误差来调
整权重 W。加上偏权值的做法则类似 W x X + B = Y,然後
同样藉由 Y 与 Y' 之间的误差,同时调整 W 及 B 向量。
它的好处就是不会让 X 与 Y 之间的「线性」过於明显,也
就是说实际上你不可能由前面 n 组号码得出准确的第 n+1
组号码(不然人人都是大富翁了),我们需要一些非线性的因
素,这即是偏权值的作用。
威力彩从年初开到现在刚好 60 组号码,那麽理论上我们就
可以取 59 组号码来当输入,把第 60 组来当输出。
另一种做法就是从 60 组里每 10 组 10 组地依序取出,比
方第一次取 1-10 组,第二次取 2-11 组,... 然後也依序
以第 11,12,13,... 组号码来当做期望输出,然後其训练的
方法就是以这 60-10 群号码(每群10组)来做训练这样,这样
就可以得到 50 群的输入。
这两种号码各有优缺点。
总之做法很多,因此它的重点在於你怎麽定义你的「输入及
输出」,以及你所选用的「类神经网路模型」。我自己在过
去思考论文的过程中有想到一种做法叫做「主管决策模式」
,这次刚好 ASP 也很熟了(不然应该用 matlab..但忘光了)
,拿来写这模型就刚好。
不用圣殿写的原因则是因为..
1.假设需递回 1000 次以上,圣殿会 crash。
2.需要用到很多的小数,用圣殿的 code 写很麻烦。
总之这次的目标就是建构威力彩彩号预测模型。
Laechan
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.61.157.53