(1)
在用神经网络计算拟合最优价值函数 (最大利益)的实践中,最大的挑战,就是神经网络的参数无法收敛到最优值,无法求解. 换句话说,神经网络的参数变得发散 (Divergent).
传统的‘发散思维’一词,指某人思维活跃有想象力. 但是神经网络的参数发散,在这里就对应于大脑无所适从,精神错乱了。
这个问题的第一个原因是, 增强学习在和环境互动的过程中, 获得的数据都是高度相关的连续数列。当神经网络依靠这些数据来优化时,存在严重的样本偏差。
打个比方,当一个交易员短暂的成长过程中,恰好遇到牛市,那么他的世界观就是“涨,涨,涨”, 逢跌就买入, 英文又称 "Buy the f**king dip".
如果碰巧他的成长过程遇到美国上世纪三十年代的长达十几年的经济大萧条,那么他的世界观就是 "经济衰退随时可能发生,任何成长的新生事物都是泡沫", 捂着现金不敢冒任何风险.
(2)
这个问题的第二个原因,在于神经网络对于价值函数的估算值极为敏感。 如果价值函数值出现波动,会直接影响到在和环境互动,学习的过程中收集到的新的数据样本,进而影响神经网络参数的巨大波动而无法收敛.
比如一个机器人在探索环境,学习的过程中,如果价值函数值的改变,告诉他去探索左边的环境,那么他很长时间内收集到的数据都是左边的环境的信息,而无法自拔。如果因为波动,它又到右边去了,那么他学习的数据很长时间又是右边的环境的信息。依靠这样的实验数据培训的神经网络,参数出现错乱的大幅波动和发散,也就不足为奇了.
打个比方,没有任何投资经验的小白,他的学习思路,一般主要是看周围别的人是如何成功的。旁人的成功经验,就好比来自价值函数的信号。 听说有人炒期货成功,就一头扎进去学期货。损失惨重之后,听说有人炒股很厉害,又跑去学做股票。这种策略的本质缺陷,是对周围环境和机会,对前人的好的和坏的经验,缺乏一个整体的,全面的, 系统的理解和学习.
这种现象,用现代语言说,就是,“读过很多书,走过很多路,还是过不好这一生”.
(3)
发散问题的第三个原因,在于价值函数值的范围,事前很难有正确的估计.
如果在学习中突然获得了远大于历史值的回报或者损失,使用反向传播算法的神经网络会出现所谓的 "梯度爆炸问题" (exploding gradient problem), 求解无法收敛.
生活中少数人遇到极度悲伤或者惊喜的事情,而导致精神失常,本质上就是这种“梯度爆炸问题”的后果.
神经网络用于增强学习,在1992年双陆棋的突破之后,很长时间无法有新的进展。P 派观点长期占上风,好派一直在艰难的探索中.
怎么办?如何让神经网络不再发散?
著名思想家郭德纲老师,很早就高瞻远瞩地指出了正确的道路,“(活得明白)不需要时间,需要经历。三岁经历一件事就明白了,活到九十五还没经历这个事他也明白不了。 "
解决的办法,就是“经历回放” (experience replay)
0
推荐