《边做边学深度强化学习:PyTorch程序设计实践》
文章平均质量分 88
じょりゅう
一个人要快乐的读博
展开
-
《边做边学深度强化学习:PyTorch程序设计实践》——6.3Dueling Network
实际上,adv的大小是[minibatch的大小×动作类型的数量],val的大小是[minibatch的大小×1]。因此,在求val时,使用expand调整它的大小,使其成为[minibatch的大小×动作的数量]。在Net类的初始化函数中,与DDQN类似地构建输入层fc1和第一个隐藏层fc2,在最后创建与Advantage有关的层fc3_adv和与状态价值有关的层fc3_v。组成的部分,和该动作确定的部分。相关的网络连接参数,学习所需的实验轮数比DQN更少,随着动作选择的增加,优势更加明显。原创 2024-01-26 00:00:00 · 1534 阅读 · 0 评论 -
《边做边学深度强化学习:PyTorch程序设计实践》——6.2DDQN
重新实现函数update_target_q_function,在其中执行Brain类的函数update_target_q_network,在Environment类的试验(episode)结束时,执行Agent类的函数update_target_q_function。Dueling Network是一种在动作价值函数输出层之前增加一层,用于输出状态价值V(s)和优势函数A(s,a) = Q(s,a)-V(s)的方法,学习状态价值V(s)时,能独立于动作而学习状态价值V(s),具有提高学习性能的优点。原创 2024-01-26 00:00:00 · 1152 阅读 · 1 评论 -
《边做边学深度强化学习:PyTorch程序设计实践》——5深度强化学习DQN
在表格表示的Q学习中,行号表示智能体的状态,列号对应智能体的动作,表格存储的时动作价值Q(s,a),这种表示的问题是,随着状态变量类型数量增加,每个变量被精细的离散化的话,表格中的行数会变得很大,如果以图像作为状态,每个像素对应于状态变量,50像素的方哥具有2500多个状态变量,用表格表示的强化学习解决大量状态的任务是不显示的。第3章解释的表格表示的Q学习中,Brain类有一个表,但这里有一个神经网络,使用函数replay和函数decision_action。基本上与第3章中的Q学习相同,这里有一点变化。原创 2024-01-25 01:30:00 · 932 阅读 · 0 评论 -
《边做边学深度强化学习:PyTorch程序设计实践》——4使用pytorch进行深度学习
这个模型可以理解为神经元和神经元在称为突触的部分功能性连接,“高尔基理论”认为神经元在突触处时物理上直接连接的,二“卡哈尔理论”认为两者在突触上没有物理连接,是间接连接的,比如乙酰胆碱、多巴胺和GABA的神经递质,神经递质的传递时称为“激发”的信息传递。那么h1的输入之和就是3×1+2×3+1×(-5)=4类似地,h2的输入之和为3×2+2×(-4)+1×(-6)=-8在隐藏层中,此输入的总和由ReLU转换,因此h1的输出为4,h2的输出为0。y2的输出是:2×3+0×7=6所以输出y是(-2,6)。原创 2024-01-25 00:00:00 · 1038 阅读 · 0 评论 -
《边做边学深度强化学习:PyTorch程序设计实践》——3.2~3.4倒立摆CartPole
gym.make是启动一个openai环境游戏的指令,执行时,首先env.reset()初始化环境,返回初始状态,将其存储在变量obeservation之中,env.step(action)是将游戏环境推进一步的指令,action=0对应于将小车推向左侧,1对应于推向右侧,输出5个变量,reward是即时奖励,小车在[-2.4,2.4]范围内且杆未超过20.9°则奖励为1,否则为0。done是一个变量,结束为True,info包含调试等所需的信息。原创 2024-01-25 00:00:00 · 486 阅读 · 0 评论 -
《边做边学深度强化学习:PyTorch程序设计实践》——2.6.1Q learning
来更新动作价值函数Q,因此Sarsa算法的特征之一是Q更新依赖于求取。下动作价值函数中的最大值来进行更新,由于Sarsa使用下一个动作。贪婪法产生的随机性不用于更新公式,Q的收敛优于Sarsa。和Sarsa不同的就是动作价值函数的更新公式不同。Sarsa更新时需要求取下一步动作。的策略,策略依赖型特征。用于更新,Q学习使用状态。原创 2024-01-25 00:00:00 · 1030 阅读 · 0 评论 -
《边做边学深度强化学习:PyTorch程序设计实践》——2.4~2.5Sarsa的实现
贪婪法:采取Q值最大的动作,在没有正确求得Q值时这种方法,会导致根据随机生成的动作价值的初始值确定动作,可能无法很好地学习,比如S0位置每次向右移动,因此,我们以一定的概率。价值迭代法受限需要定义价值,生活中价值的确定需要货币的概念,比如钻石换成多少人民币。在行为经济学里,人们倾向对未来价值打超过必要的折扣,人类的时间折扣率受到大脑纹状体区域何血清素的影响。结合利率何复利效应,考虑未来的总奖励时,也将折扣率考虑进来,使用累计折扣奖励表示。由于学习过程尚未求得正确的动作价值函数,该等式不成立,等式两边的差。原创 2024-01-25 00:00:00 · 934 阅读 · 0 评论 -
《边做边学深度强化学习:PyTorch程序设计实践》——2.3.2策略迭代法和价值迭代法
2.2节中使用的是随机迭代。让智能体学习向目标前进的方式主要有两种方式:策略迭代,更快到达目标的策略所执行的动作最重要;价值迭代:从目标反向计算在目标前一步、前两步的位置,一步一步引导智能体,给状态也附加价值(优先级)本节中对参数到策略的转换函数进行修改,用softmax函数。是学习速率,如果太小,学习就很慢,太大就无法正常学习,是一个参数,用于确定在状态sj下采取aj的概率。是负数也可以求出策略,指数函数只输出正值。是反温度,反温度越小,行为越随机。是实现目标所采取的总步数。原创 2024-01-25 00:00:00 · 869 阅读 · 0 评论 -
《边做边学深度强化学习:PyTorch程序设计实践》——2.2迷宫和智能体的实现
最近在看一本书《边做边学深度强化学习:PyTorch程序设计实践》小川雄太郎,写的挺好的,将书中的代码敲了一下。原创 2024-01-25 00:00:00 · 2051 阅读 · 0 评论