【发布时间】:2022-01-07 23:49:36
【问题描述】:
我对 CNN 在图像检测中的运作方式的理解是通过使用在图像中滑动的内核来检测特征(边缘等)。因此,单个内核可能正在学习检测边缘,无论它在图像中的哪个位置。这对于图像识别问题非常有用,其中狗的图像向右移动或倒置仍然是狗的图像。 This article 声明“内核学习的特征必须足够通用,才能来自图像的任何部分”。文章还说明了如何将 CNN 用于与数据组织顺序无关的分类数据可能是“灾难性的”。
但是,在某些情况下,算法需要具有位置感知能力以便更好地进行分类。以使用 CNN 来训练一个网络来预测桥牌游戏中的纸牌游戏(一种双假人版本,其中所有纸牌都是开放的——完美信息、确定性)为例。在游戏开始时,发给四人的牌可能看起来(非常不切实际)是这样的。
其中 Leader = 在第 1 轮中打出领先牌的玩家,随后的玩家组织为 Leader.LeftHandOpponent、Leader.Partner 和 Leader.RightHandOpponent。每个玩家的牌被组织成四个花色,从 Trump_Suit 开始,然后是原始花色层次结构中的其他花色。卡片从顶部“A”中的最高值到底部“2”中的最低值。
这是上图的转置。
如果从每个花色中的控制牌分布和手牌强度的角度来看,这种布局提供了很多关于游戏将如何进行以及谁将最终赢得多少技巧的视觉提示。因此,对于 CNN 是否真的能够处理这些数据以提供良好预测的问题,答案是肯定的(至少对我而言)。
但是,问题在于 - 具有 (4, 1) 步幅且没有填充的滑动内核的常规 CNN 不会区分红色框,而实际上它们之间存在巨大差异。
可能的解决方案? - 由仅在一个方向(可能水平或垂直)滑动的非滑动内核/内核组成的过滤器理论上只会寻求学习位置感知功能并且可能会提高准确性?只是在天空中射箭。
有研究过吗?有人已经实施了吗?这行得通吗?
P.S:CNN 已在 AlphaGo Zero 上使用取得了巨大成功。显然,在围棋游戏中,位于棋盘顶部的图案与位于底部的图案具有相同的重量。如果板翻转 180 度,游戏玩法不会改变。然而,在合同桥牌游戏中情况并非如此。我正在研究如何解决这个问题。
【问题讨论】:
标签: machine-learning deep-learning convolutional-neural-networks