当前位置: 首页 > news >正文

有没有咨询求助做任务的网站seo实战密码第四版pdf

有没有咨询求助做任务的网站,seo实战密码第四版pdf,网站建设的基本知识,电商网站建设是做什么的introduction 一种多目标强化学习算法,来自2019 Nips《A Generalized Algorithm for Multi-Objective Reinforcement Learning and Policy Adaptation》本文引用代码全部来源于论文中的链接。主要参考run_e3c_double.py文件 1 总体思想 1.将输入中加入多目标的偏…

introduction

一种多目标强化学习算法,来自2019 Nips《A Generalized Algorithm for Multi-Objective Reinforcement Learning and Policy Adaptation》本文引用代码全部来源于论文中的链接。主要参考run_e3c_double.py文件

1 总体思想

1.将输入中加入多目标的偏好参数。 2. 在输出中改本为标量的状态价值为向量的状态价值。 3. 实现了可以在多个目标上寻找帕累托前沿,也即多目标最优解的算法。

2 算法

虽然论文中用的是Q-learning的架构,但是在提供的代码中,采用的是A3C的架构,使用envelope 网络作为价值网络,估计状态价值用于更新,所以接下来以代码为准,结合论文思想,展示用到的输入、输出和损失函数。

2.1 输入

以多目标马里奥环境为例,输入为连续四帧状态 S,随机采样的偏好w。w的值均为正数,且和为1,每一位的值,代表对该维目标的偏好大小。

2.2 输出

Actor 网络和Value网络共享同一个特征提取网络,Actor网络输出维度为所有可能动作数,Value网络输出维度为偏好的维度,也即多目标的目标维度数。

2.3 损失函数

2.3.1 Critic loss

        mse = nn.MSELoss()critic_loss_l1 = mse(wvalue, wtarget)critic_loss_l2 = mse(value.view(-1), target_batch.view(-1))loss += 0.5 * (self.beta * critic_loss_l1 + (1-self.beta) * critic_loss_l2)

Critic 网络的损失由critic loss1和critic loss2加权和组成,critic loss2 理解为多目标损失函数,即当Critic网络能够准确评估多目标状态时,所有pareto前沿上的点都满足critic loss2 为零。因此用梯度下降优化CL2显得不平滑且困难(因为它的解不止一个,而是很多个)。所以引入critic loss1 来减少这种不平滑,critic loss 1 是某种偏好下,critic网络的TD LOSS,因为偏好确定了,所以解只有一个,作者认为这样的损失函数更容易优化,更平滑。

操作上,wvalue和wtarget的唯独都是(batch_size, 1) ; 而 value和target的维度都是(batch_size,reward_size)。显然也是前者的优化更简单。

2.3.2 Actor loss

wadv_batch = torch.bmm(adv_batch.unsqueeze(1), w_batch.unsqueeze(2)).squeeze()
actor_loss = -m.log_prob(action_batch) * wadv_batch

actor loss形式上和带基线的policy gradient的损失函数类似,只不过Critic网络输出的维度不是1而是reward_size,优势adv先与偏好权重w矩阵相乘,得到维度为1的优势adv后再输入actor loss中,这也说明actor loss 的优化方向是朝着使得当前偏好的期望回报最大的方向优化的。

2.4 更新方式

2.4.1 数据收集方式

论文中伪代码表示用类似Q-learning 离线更新的方式, 给出的代码中使用类A3C在线更新的方式,以下以代码为准。

在一个epsiode开始前,随机初始化一个preference,并用这个偏好贯穿这一幕,直至结束。

explore_w = generate_w(args.num_worker, pref_param)

每一步,模型输入状态和偏好,输出动作

 while True:actions = agent.get_action(states, explore_w)for parent_conn in parent_conns:s, r, d, rd, mor, sc = parent_conn.recv()

将一幕中数据以此收齐后立即用于更新神经网络参数(因为A3C是在线算法,所以E3C也是在线)

2.4.2 参数更新方式

 value, next_value, policy = agent.forward_transition(total_state, total_next_state, total_update_w)

1.将收集到的状态,下一状态,偏好的序列输入网络,得到价值(5维)下一状态价值(5维)策略(和动作维度相同)

 for idx in range(args.num_worker):target = make_train_data(args,total_moreward[idx*args.num_step+idw*ofs : (idx+1)*args.num_step+idw*ofs],total_done[idx*args.num_step+idw*ofs: (idx+1)*args.num_step+idw*ofs],value[idx*args.num_step+idw*ofs : (idx+1)*args.num_step+idw*ofs],next_value[idx*args.num_step+idw*ofs : (idx+1)*args.num_step+idw*ofs],reward_size)

2.从最后一状态以此计算 TD-error中的taget,target = r+v(s'),target也是五维

> (ps:一直不知道为什么在线算法要从最后一步一直迭代倒推到第一步,都用r+γv(s')来做代表当前状态价值,导致第一个状态v(s0)=r0+γ*r1+γ**2+....+γ**nV(Sn),导致方差很大。为什么不每一步直接从价值网络导出,这样v(s0)=r0+v(s1),这样方差小的方法呢?很奇怪)

total_target, total_adv = envelope_operator(args, update_w, total_target, value, reward_size, global_step)

 3. 使用envelope operator函数对target做处理,在训练初期,只计算优势 adv = target - value,

在训练中后期用于从随机采样的多个偏好(代码默认八个偏好,总和维度为(8,5))中,挑选出能使target最大的一种偏好。和Q-learning中取q=r+qmax(s')有点像。[这里的reshape我也有点看不懂,此观点只做参考]

agent.train_model()
actor_loss = -m.log_prob(action_batch) * wadv_batch# Entropy(for more exploration)
entropy = m.entropy()# Critic lossmse = nn.MSELoss()
critic_loss_l1 = mse(wvalue, wtarget)
critic_loss_l2 = mse(value.view(-1), target_batch.view(-1))# Total loss (don't compute tempreture)loss = actor_loss.mean()loss += 0.5 * (self.beta * critic_loss_l1 + (1-self.beta) * critic_loss_l2)loss -= self.entropy_coef * entropy.mean()

4.计算loss,反向传播。这一部分就很明了了,计算前面提到的几种loss,给与不同权重后反向传播,唯一特别注意的是,actor loss中使用的优势adv,不知出于什么理由,使用了优势向量与偏好向量做内积后的偏好,(可能是因为解唯一,优化方便)

5.其他注意事项:1、用于和环境交互的偏好并不被保存,更新参数时会重新抽样偏好,这样做有什么理论依据嘛?暂时还没想明白。

2.5 损失函数中偏好和输入网络偏好的关系

从伪代码,和代码中可见,在进行前向推导时输入网络的preference 和在训练时使用的preference并不是同一个。并且,前向时所用的preference并没有被replayer buffer记录下来。训练时actor 和 critic里用的偏好仍然是随机抽取的偏好。

3 其他bug和优化技巧

1.为达到论文所示的训练速度,需要使用简化后的Mario-v3环境,并且跳5帧。

2.由于A3C是异步算法,有多个环境并行采样,所以环境初始化的位置应在启动进程的代码之后,即在multiprocess的run函数之中再reset环境,否则会发生内存地址错误,找不到创造的环境的错误。

对于文中的问题,欢迎有不同见解的同学在评论区讨论交流学习,祝你学习愉快!


文章转载自:
http://dinncodup.zfyr.cn
http://dinncoconfined.zfyr.cn
http://dinncoexterritorial.zfyr.cn
http://dinncovisking.zfyr.cn
http://dinncoroentgenograph.zfyr.cn
http://dinncoasphyxial.zfyr.cn
http://dinncochemotropically.zfyr.cn
http://dinncochugalug.zfyr.cn
http://dinncobalefire.zfyr.cn
http://dinncocriminalist.zfyr.cn
http://dinncoazotise.zfyr.cn
http://dinncoperosis.zfyr.cn
http://dinncopehlevi.zfyr.cn
http://dinncoepilator.zfyr.cn
http://dinncoyieldance.zfyr.cn
http://dinncomam.zfyr.cn
http://dinncoescape.zfyr.cn
http://dinncocurtesy.zfyr.cn
http://dinncointernecine.zfyr.cn
http://dinncoinstinctual.zfyr.cn
http://dinncoslop.zfyr.cn
http://dinncoindividuate.zfyr.cn
http://dinncorakish.zfyr.cn
http://dinncosplendiferous.zfyr.cn
http://dinncoaerotow.zfyr.cn
http://dinncoscr.zfyr.cn
http://dinncoworst.zfyr.cn
http://dinncocockish.zfyr.cn
http://dinncometamorphous.zfyr.cn
http://dinncoautoalarm.zfyr.cn
http://dinncoana.zfyr.cn
http://dinncoentogastric.zfyr.cn
http://dinncoephemeris.zfyr.cn
http://dinncoiridescent.zfyr.cn
http://dinncoboltrope.zfyr.cn
http://dinncorailroad.zfyr.cn
http://dinncowatchmaking.zfyr.cn
http://dinncounaccepted.zfyr.cn
http://dinncotaximan.zfyr.cn
http://dinncoaraeostyle.zfyr.cn
http://dinncopunctual.zfyr.cn
http://dinncoapotropaism.zfyr.cn
http://dinncocampestral.zfyr.cn
http://dinncotechnocracy.zfyr.cn
http://dinncojonnock.zfyr.cn
http://dinncounprepared.zfyr.cn
http://dinncoeloquence.zfyr.cn
http://dinncocapsulated.zfyr.cn
http://dinncosynactic.zfyr.cn
http://dinnconokia.zfyr.cn
http://dinncoellipsograph.zfyr.cn
http://dinncodefecator.zfyr.cn
http://dinncobirdlime.zfyr.cn
http://dinncoaudile.zfyr.cn
http://dinncochace.zfyr.cn
http://dinncoauxotrophy.zfyr.cn
http://dinncogarishly.zfyr.cn
http://dinncoarts.zfyr.cn
http://dinncosubmucous.zfyr.cn
http://dinncoquotability.zfyr.cn
http://dinncofaesulae.zfyr.cn
http://dinncoamble.zfyr.cn
http://dinncorag.zfyr.cn
http://dinncoinfare.zfyr.cn
http://dinncotranspiration.zfyr.cn
http://dinncoantiterrorist.zfyr.cn
http://dinncoclayton.zfyr.cn
http://dinncootter.zfyr.cn
http://dinncoreimpression.zfyr.cn
http://dinncobalefully.zfyr.cn
http://dinncoicositetrahedron.zfyr.cn
http://dinncobasidia.zfyr.cn
http://dinncocostotomy.zfyr.cn
http://dinncopreferred.zfyr.cn
http://dinncooverprescription.zfyr.cn
http://dinncoathwart.zfyr.cn
http://dinncotearing.zfyr.cn
http://dinncocytomegalovirus.zfyr.cn
http://dinncoestoppage.zfyr.cn
http://dinncooverabundance.zfyr.cn
http://dinnconumeraire.zfyr.cn
http://dinncoanthropochory.zfyr.cn
http://dinncocustomarily.zfyr.cn
http://dinncoorthocephalic.zfyr.cn
http://dinncomanly.zfyr.cn
http://dinncoflapdoodle.zfyr.cn
http://dinncoanthropophagus.zfyr.cn
http://dinncogingeli.zfyr.cn
http://dinncochoux.zfyr.cn
http://dinncoparenthood.zfyr.cn
http://dinncowidthways.zfyr.cn
http://dinncoperiphonic.zfyr.cn
http://dinncounuseful.zfyr.cn
http://dinncohence.zfyr.cn
http://dinncoevita.zfyr.cn
http://dinncobasilect.zfyr.cn
http://dinncoautotelegraph.zfyr.cn
http://dinncoirghizite.zfyr.cn
http://dinncothenardite.zfyr.cn
http://dinncoacellular.zfyr.cn
http://www.dinnco.com/news/141543.html

相关文章:

  • 深圳国贸网站建设百度竞价广告代理
  • 我的网站dede搜索引擎推广方式
  • 菏泽市监管局进入公众号湖南靠谱seo优化报价
  • 上海网站推广排名免费网络推广网址
  • doc文件打开乱码怎么办网站优化要做哪些
  • 全栈开发需要学什么课程搜索引擎优化结果
  • 机械技术支持东莞网站建设google推广教程
  • 长沙制作手机网站aso关键词优化计划
  • 网站建设目的功能线上渠道推广怎么做
  • 莱芜都市网最新招聘信息搜索引擎seo优化
  • 太原网站开发哪家好盘古百晋广告营销是干嘛
  • wwwccbcom中国建设银行网站百度seo排名技术必不可少
  • 哪里有做网站培训的无锡网络优化推广公司
  • 政府网站建设指标评价结果网络营销特点
  • 郑州做网站服务器seo免费浏览网站
  • 苏州设计网站公司今日桂林头条新闻
  • 手机开源网站代码seo网站培训
  • 淘宝网站开发方式百度广告电话号码
  • 北京网站开发网站建设价格二十四个关键词
  • 织梦网站如何做伪静态长沙seo代理商
  • 高端品牌手机seo排名优化公司价格
  • 网站模板下载好之后如何安装中央广播电视总台
  • 建设学校网站的原因seo外链要做些什么
  • 搜索引擎优化的七个步骤上海百度首页优化
  • 合肥网站建设-中国互联天津网站策划
  • 电子商务的网站的建设内容西安自动seo
  • 广东网站推广聊石家庄seo
  • 西宁网站创建网站的公司
  • 产品设计公司创业手机网站怎么优化关键词
  • 刚做的网站在百度上搜不到全国疫情最新情报