强化学习与监督学习的区别在于,监督学习的每条样本都有一个独立的label,而强化学习的奖励(label)是有延后性,往往需要等这个回合结束才知道输赢 Policy Gradients(PG)计算某个状态下所有策略的分布概率,类似于经典分类问题给每个类别预测一个概率,好的PG应该给优良的策略分配较高的概率 PG基于以下假定: 如果只在游戏终结时才有奖励和惩罚,该回合赢了,这个回合的所有样本都是有""偏正的",反之则该回合所有样本都是“偏负的” 距离赢的那刻越近,贡献越大,越远贡…
与Policy Gradients的不同之处在于,这两个算法评估某个状态s执行某个动作a的期望奖励,即Q(s,a) Q(s,a) 有两种方法计算方法,第一种直接查表或者模型预估,Q(s, a) = checkTable(s, a),这个在训练初期是非常不准确的:第二种方法是通过"一步蒙特卡洛"方法获取,假设执行a后状态是s',且s'执行了动作了a',Q’(s, a) = 当前状态奖励 + 衰减系数 * Q(s',a'),近似于一个动态规划问题,当游戏结束,就只有当前状态奖励.但与动态规…
RNN 一般神经网络隐层的计算是h=g(w * x),其中g是激活函数,相比于一般神经网络,RNN需要考虑之前序列的信息,因此它的隐藏h的计算除了当前输入还要考虑上一个状态的隐藏,h=g(w*x+w'*h'),其中h'是上一次计算的隐层,可见信息传递是通过隐层完成的. LSTM 有上面普通RNN可以知道,每个状态下的RNN输入实际有两个,上一个隐藏h'以及当前输入x.RNN有个问题是对序列中的各个状态都是等同对待的,如果某个状态很重要,是无法长期影响后面的输出的.LSTM为了解决这个问题提出了类…
背景 假设现在有个商品点击预测的任务,有用户端特征性别.年龄.消费力等,商品侧特征价格.销量等,样本为0或者1,现在对特征进行one hot encode,如性别特征用二维表示,男为[1,0],女为[0,1],其他特征相同处理后拼接起来一共有n维,n是所有特征的类别数之和. Logistic Regression(LR)与二阶 线性模型,y = sigmoid(w, x),w有n维,优点是简单易解释,缺点是太简单,无法挖掘特征组合的情况,如男性+游戏类商品可能是个很强特征.为了弥补这个缺点往往需…
DQN利用深度学习对Q-learning的一个扩展,回顾上篇文章,Q-learning的核心在于Q(s,a)的建模.如果状态s非常复杂,很难通过一张表来存储所有的状态. 深度学习正好可以自动提取s的特征,所以我们只需要对Q(s,a)建立一个深度学习网络 但是s可能是一个极高维度的向量,a可能只低维度向量(如上下左右),建模起来可能有点困难 解决的办法是,对每个动作a都建一个网络.因为对于每个网络的a输入的是个固定值,没有任何信息量可以忽略掉,问题就可以简化为对每个动作建立一个网络来表示Q(s)…
另外献上在<线体验Demo地址>希望大家也能从中得到一些启示. 地址:http://121.40.148.178:8080/ . username:guest,password:123456 QQ技术交流群:239168429 "尼玛哥,你今天有空么?" "今天周日呀,怎么会没空,你这是要约么?麻辣烫凉皮我都吃,在哪儿,我一会儿就到." "约你妹呀,我昨天都加一天班了,东西到如今还没搞完,你给我快点过来呀,我须要你!" "别…
使用yii的layout,加入<?php echo $content; ?>这句话时,它会自动在子页面上面添加一个div包裹,而且div的id命名为id=content,这个和已有id重复,如何解决? http://hi.baidu.com/jyhscy/item/2b05034c9d9f1e35fb8960d1 yii中layout的column和main文件之间的关系 在yii创建应用成果之后,在view/layouts/目录下,会产生3个布局页面: -->main.php --&g…
NOIP前必须记住的30句话 1.比赛前一天晚上请准备好你的各种证件,事先查好去往考场的路线2.比赛之前请先调整你的屏幕分辨率到你喜欢的大小3.比赛之前请把编译器的字体调为你平时惯用的字体,尤其是注意这种字体中的逗号,点,1,l这种易混淆的字是不是区分明显4.在不影响视野的情况下,请将字号尽可能调大,方便查错5.请将题目通读完以后,再开始深入思考你认为最容易的一道题6.即使这道题再容易,也不要着急写代码,请先明确自己每一步要干什么后,再开始写,轻敌会是你最大的错误7.即使这道题看起来再没法做,也…
假设p是指针,当delete p;时,后面一定要p=NULL将p指向空 cin cout cerr 都是iostream类型的对象.cout<<"hello world"<<endl; 其中cout是左操作数对象,<<是操作符,作用是将右操作数写到左操作数对象,"hello world"是右操作数,前面半句话的意思是将hello world写入cout对象.同理,<<endl是将endl写入cout,endl表示刷新缓…
JavaScript的作用域一直以来是前端开发中比较难以理解的知识点,对于JavaScript的作用域主要记住几句话,走遍天下都不怕... 一.“JavaScript中无块级作用域” 在Java或C#中存在块级作用域,即:大括号也是一个作用域. public static void main () { if(1==1){ String name = "seven"; } System.out.println(name); } // 报错 Java public static void…