liuruoze / mini-AlphaStar

(JAIR'2022) A mini-scale reproduction code of the AlphaStar program. Note: the original AlphaStar is the AI proposed by DeepMind to play StarCraft II. JAIR = Journal of Artificial Intelligence Research.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

想请教一下关于预训练的数据问题

Lucklycat opened this issue · comments

大佬您好,想请教下关于与训练的数据问题:
1.通过对回放视频进行处理,可以得到预训练数据,关于这里我想请教问下:这个提取数据,以及出来的特征和标签是暴雪那边给好的吗?也就是这一部分数据打标是怎么来的呢? 特征我理解就是当前局面的一些统计特征、地图特征等等,但标签是什么呢?是动作的one-hot形式?
2.如果仅仅是动作的话,怎么实现对整个网络的训练的呢? 我理解按照:动作类型——delay——排序队伍——选择动作执行单位——目标单位——目标地址(这里可以是目标单位,或者某一个地方),那么后面几步的标签怎么来呢? 还是我理解的哪里不到位,希望能够给出一点指点,感谢。
3.那么后续强化学习的奖励,是否就和这个地方标签如何打标是具有一定的关系了? 因为我看论文里面,奖励主要是设置伪奖励,伪奖励除开较为好设计的击杀等,主要是建造顺序这些设置,那么这种设置是否就要和前面的标签结合

  1. 可以看下三个encoder的实现,这些特征一部分是pysc2给出(pysc2是暴雪和deepmind联合出品)的,一部分是deepmind的alphastar自己总结的;
  2. 我不理解你说的后面几部的标签是什么意思?
  3. 强化学习的奖赏分成若干部分:1.输赢奖赏(根据游戏的结果给出);2.相似度奖赏(这个根据当前智能体与人类玩家动作的相似度给出);3.设计的奖赏(这些是一些经验性的)。具体的可以看下rl_loss里的奖赏部分的设计实现。注意,在mAS里,所有奖赏的实现都给出了,在本期的rl训练里,我们给出了一个基于输赢奖赏来训练智能体的脚本。

谢谢大佬回复,之前也给您发了邮件,还以为你最近忙,没看到。 那我先再去赌侠那两部分代码,有问题在向您请教。

就是我这边想补充问一下,就是当前监督训练的时候。 label到底是什么呢? 是动作,还是目标呢?因为我看label是经过one-hot的吧,所以这个label应该只有一个含义吧。

就是我这边想补充问一下,就是当前监督训练的时候。 label到底是什么呢? 是动作,还是目标呢?因为我看label是经过one-hot的吧,所以这个label应该只有一个含义吧。

label是动作和目标都有的。
首先确定动作是什么,如进攻或者建造单位,
动作确定以后,会继续更具动作的类型决定目标,
例如具体要进攻哪个单位,或者要建造什么目标。

关于这点以及相关的信息,我建议先读一下AlphaStar的论文,这样会比较清楚。

好的,感谢。

您好,最近读了论文,我想请问下模型中地形特征是如何转换的呢? 我看代码是直接成feature layers层里面拿到的,也看了说这个feature layers里面总共包含了很多地形、迷雾等,想问下这个是怎么做到进行数值化的呢?有详细的地方讲吗? 是对地图画格子,然后根据格子的值去给予一定的值,从而表示地形码?

您好,我这边跑训练时候,老是跑到22秒,客户端就变成无响应了,请问这种一般是啥问题
image

您好,最近读了论文,我想请问下模型中地形特征是如何转换的呢? 我看代码是直接成feature layers层里面拿到的,也看了说这个feature layers里面总共包含了很多地形、迷雾等,想问下这个是怎么做到进行数值化的呢?有详细的地方讲吗? 是对地图画格子,然后根据格子的值去给予一定的值,从而表示地形码?

feature layers中的表示事实上是在deepmind的pysc2里定义的,如何定义可以看pysc2对应的源码。至于每个值代表什么涵义,则是由Blizzard的sc2client-api协议定义的。

您好,我这边跑训练时候,老是跑到22秒,客户端就变成无响应了,请问这种一般是啥问题 image

这里希望你能提供更多的详细信息,例如,把对应代码页的debug打开后,把print窗口里的更多信息展示出来。

你好。如果暂时没有更多新问题的话,我会暂时把这个issue先关闭。如果之后有需要的话(例如问题还没有完全解决的话),可以随时把它再次打开。