RL-DouZero

RL-DouZero

Desc: GAME, RL
Finished?: Yes
Tags: Paper
URL1: https://arxiv.org/abs/2106.06135
URL2: https://github.com/kwai/DouZero
URL3: https://github.com/datamllab/rlcard-showdown)

使用蒙特卡洛方法进行自我对弈不断更新预测模型的方法,这实际上也是普通人对于强化学习如何在self-play中实现自我更新的最基础的想法把:
自我对弈(记录动作序列)- 用最终的胜负(价值)更新网络。

算法的设计和思路

算法的目标是学习一个价值网路。网络的输入是当前状态和一个动作,输出是在当前状态做这个动作的期望收益(比如胜率)。简单来说,价值网络在每一步计算出哪种牌型赢的概率最大,然后选择最有可能赢的牌型。蒙特卡罗方法不断重复以下步骤来优化价值网络:

  • 用价值网络生成一场对局
  • 记录下该对局中所有的状态、动作和最后的收益(胜率)
  • 将每一对状态和动作作为网络输入,收益作为网络输出,用梯度下降对价值网络进行一次更新

其实,所谓的蒙特卡罗方法就是一种随机模拟,即通过不断的重复实验来估计真实价值。

如下图所示,斗零采用一个价值神经网络,其输入是状态和动作,输出是价值。首先,过去的出牌用 LSTM 神经网络进行编码。然后 LSTM 的输出以及其他的表征被送入了 6 层全连接网络,最后输出价值。


Leetcode 题型和框架代码总结
Pooling

Pooling

DownSampling:Pooling的全面调研

@Aiken 2021 笔记摘录:

深度神经网络中的池化方法:全面调研(1989-2020) - 知乎相同论文的简单中文Version

16页综述,共计67篇参考文献。网络千奇百怪,但基础元素却大致相同!本文全面调研了1989至2020年一些著名且有用的池化方法,并主要对20种池化方法进行了详细介绍(这些方法,你都知道么?) 注1:文末附【计算机视…

来自 https://zhuanlan.zhihu.com/p/341820742

原文:《Pooling Methods in Deep Neural Networks, a Review》

整合2

池化的根本目的(Motivation)

卷积神经网络是DNN的一种特殊类型,它由几个卷积层组成,每个卷积层后都有一个激活函数和一个池化层。

池化层是重要的层,它对来自上一层的特征图执行下采样,并生成具有简化分辨率的新feature maps 。该层极大地减小了输入的空间尺寸。 它有两个主要目的。 首先是减少参数或权重的数量,从而减少计算成本。 第二是控制网络的过拟合。

  • 池化可以增加网络对于平移(旋转,伸缩)的不变性,提升网络的泛化能力。
  • 增大感受野;
  • 降低优化难度和参数数目,

理想的池化方法应仅提取有用的信息,并丢弃无关的细节。

特征不变性、特征降维、在一定程度上防止过拟合,更方便优化


OW-openmix

OW-openmix

@Aiken 2021 究极万恶的撞车论文

Intro

Motivation :Tackle the problem of 发现无标注数据中与给定(已知)类别不相交的新类。

Related Research:

现有的方法通常1. 使用标记数据对模型进行预训练; 2. 无监督聚类在未标记的数据中识别新的类

作者认为label带来的essential knowledge在第二步中没有被充分学习利用到,这样模型就只能从第一步的现成知识中获益,而不能利用标记数据和未标记数据之间的潜在关系


Reward is Enough

Reward is Enough

Desc: RL
Finished?: Yes
Tags: Paper

通用人工智能,是否能通过强化学习的奖励机制就实现

实现AGI,强化学习就够了?Sutton、Silver师徒联手:奖励机制足够实现各种目标

对reward构建AGI的可行性的分析和探讨

这篇文章实际上没有给出一个很好的方案通过reward来实现各种AGI的设计,但是给出了在每一种场景下的AGI的reward设计的设想把。和对用reward进行设计的可行性分析。
同时分析了:感知、社交、语言、泛化、模仿,这几个方面

类似地,如果人工智能体的经验流足够丰富,那么单一目标(例如电池寿命或生存)可能隐含地需要实现同样广泛的子目标的能力,因此奖励最大化应该足以产生一种通用人工智能。

这不久回到了最基础的问题,没有这种长线以及大量数据交互以及全面场景的经验流,来支撑这样一个AGI的学习,所以这不也是在现阶段上纸上谈兵嘛?

对这篇论文我的总结是,我不推荐详细阅读,我觉得收益有限,太理想化,其实和强化学习本身的假设也没有太多新东西,我们可以假设强化学习能带来一个AGI,但是对应的约束和限制确实是有点多了。


RL-MobaAI

RL-MobaAI

Created by: Aiken H
Desc: GAME, RL
Finished?: Yes
Tags: Paper

《Master Complex Control in MOBA Games with Deep Reinforcement Learning》 论文阅读笔记

@Aiken H 2021.06

MOBA游戏的复杂度和状态空间都远比以前的围棋之类的运动更大,所以难度会更大一些

早一些的游戏ai使用的是(2015) Deep Q-Network 通过 supervised learning and self-play 结合的训练策略在围棋上击败了专业人类,而最近更多的使用了DRL(Deep Reinforcement Learning)的方法在近几年被进一步的应用。

Neural Network Architecture Include

Contributions

  • the encoding of Multi-modal inputs 多模态输入
  • the decoupling of inter-correlations in controls 控制内关联解码
  • exploration pruning mechanism 剪枝设置
  • Action mask for efficient exploration ❓效率
  • attack attention(for target selection) Attention机制做目标选择
  • LSTM for learning skill combos LSTM 机制做技能释放和链接
  • Optimize by multi-label proximal policy algorithm(improved PPO)
    • dual-clip PPO 帮助训练的收敛


RL Notebook 01

RL Notebook 01

Created by: Aiken H
Detail: survey
Finished?: No
Tags: Paper
URL1: https://www.cnblogs.com/pinard/category/1254674.html
URL2: https://github.com/ljpzzz/machinelearning
URL3: https://datawhalechina.github.io/easy-rl/#/

Chapter1 模型基础

强化学习(一)模型基础

强化学习是介于监督和无监督学习之间的,强化学习没有输出值,但是有reward: 同时这个reward是事后给出的,而不是及时回馈的。而无监督学习是只有数据特征,同时数据之间是独立的,没有前后依赖的关系。

https://images2018.cnblogs.com/blog/1042406/201807/1042406-20180729163058011-290427357.png

Theory理论基础


经典深度学习与机器学习算法
Involution

Involution

@Aiken 2021-4-8

Ariticle Paper:star:Code; ZHIHU

Intro 引子

提出了一种新的神经网络算子(operator或op)称为involution,它比convolution更轻量更高效,形式上比self-attention更加简洁,可以用在各种视觉任务的模型上取得精度和效率的双重提升。

通过involution的结构设计,我们能够以统一的视角来理解经典的卷积操作和近来流行的自注意力操作。

基本思想

将传统Convolution Kernel 的两个基本特性:

  • 空间不变性:在同个通道的HW上共享3*3的卷积系数,参数共享;
  • 通道特异性:在每个通道上有特异的卷积核,最终使用1*1 like的方式来进行通道间的整合

反对称的修改成:

  • 空间特异性: 对每个Feature有对应size $H·W·K·K·G | G<<C$ 的kernel,特异性的对不同图像的不同部分进行处理
    • G表示Involution操作的分组数,如果需要下采样,就需要接步长为2的平均池化层,最终可以得到,实际上是一个分组卷积的方式,也就是说,我们K个一组的共享一个Kernel。用G去切分C,最终组合起来
  • 通道不变性:对每个通道之间共享这样的kernel,然后做简单的线性整合,对每个不同的channel有相同的处理方式。

传统的卷积基于邻域相关性的思想,同时旨在同一个channel中用单一的角度去分析特征,所以有空间不变性核通道特异性的这两个特征。

而Involution实际上更像是Self-Attention这种思路,通过Whole-Size的Kernel,执行一个特异性处理?

要点分析


Knowledge Evolution

Knowledge Evolution

Knowledge Evolution in Neural Networks

@Aiken 2021.4.7

Article:只能当成OverView,技术细节写的很差;Mendeley;

Code_PyTorch

Intro引子

Problem:如何在较小的数据集上训练神经网络,这到底是个小样本的方法还是个类别增量的方法?

Motivation: 考虑生物“基因”进化的方式,有一部分是“祖传”,另一部分是“适应”,通过对“祖传”的假设的不断学习进化,得到一个新的模型。

基因编码了从祖先到后代的遗传信息(知识),而基因传递将遗传信息从父母传递至其后代。虽然祖先并不一定具有更好的知识,但是遗传信息(知识)在几代人之间的发展将会促进后代更好的学习曲线。

Hypothesis:

  • 拟合假设$H^{origin}$:
  • 重置假设:$H^{later}$

TOBEUPDATE:将神经网络拆分成两个假设(子网络):通过重新训练多代网络来进化$H^{origin}$ 中的知识,每一代都会扰乱$H^{later}$的内部权重来鼓励$H^{origin}$ 学习独立的表达形式。

将深度神经网络的知识封装在一个名为拟合假设的子网络H中,将拟合假设的知识从父母网络传递至其后代,即下一代神经网络。并反复重复此过程,在后代网络中证明了其性能的显著提升:

图片

Contribution

提出了KELS(内核级卷积感知拆分),为CNN量身定做。虽然增加了训练时间,但是大大降低了推理成本,也减轻了较小数据集中的过拟合问题。