Machine learning 机器学习中的纸牌游戏建模

Machine learning 机器学习中的纸牌游戏建模,machine-learning,neural-network,classification,deep-learning,Machine Learning,Neural Network,Classification,Deep Learning,我正在寻找一些帮助来模拟这个机器学习问题 一手牌由三行组成(分别包含3、5和5张牌)。你的目标是打造得分最高的手牌。你在称为streets(街道)的间隔内收到卡,第一条街收到五张卡,接下来的四条街收到三张卡(你必须在最后四条街丢弃其中一张卡)。卡一旦放置,就不能移动 我的目标是建立一个系统,在给定一组街道的情况下,发挥与我们最好的球员相似的作用。很明显,我需要为每条街道建立一个神经网络,使用基于现有手牌和街上的牌集的功能。我有大量的数据(街道、位置和最终分数),但我有点不确定如何建模问题,因为可

我正在寻找一些帮助来模拟这个机器学习问题

一手牌由三行组成(分别包含3、5和5张牌)。你的目标是打造得分最高的手牌。你在称为streets(街道)的间隔内收到卡,第一条街收到五张卡,接下来的四条街收到三张卡(你必须在最后四条街丢弃其中一张卡)。卡一旦放置,就不能移动

我的目标是建立一个系统,在给定一组街道的情况下,发挥与我们最好的球员相似的作用。很明显,我需要为每条街道建立一个神经网络,使用基于现有手牌和街上的牌集的功能。我有大量的数据(街道、位置和最终分数),但我有点不确定如何建模问题,因为可能的输出在一组卡片上是唯一的(尽管第一条街上的位置不到3^5,第二条街上的位置不到3^3)。我以前只处理固定类别的分类问题


是否有人有类似问题的例子或建议,当您有独特的输出时,如何准备培训数据?

一个模糊的问题给出了模糊的答案(这是我懒于编码的借口;-)

你写道你有很多数据,似乎你想把游戏映射到监督学习的经验上。但这不是游戏优化的工作方式。通常不进行监督学习,而是强化学习。差异是微妙的,但强化学习(以马尔可夫决策过程作为其理论基础)提供了更多的局部视图——比如优化给定特定状态的决策。监督学习相当于一次优化多个决策

通常的监督学习方法的另一个阻碍因素是,即使你有很多数据,它几乎肯定会太少。而且它不会提供“必需的路径”

通常的方法至少是因为Thesauro的双陆棋玩家更喜欢:建立游戏的基本规则,可能引入人类知识作为启发,然后让程序尽可能经常地与自己对抗——例如,google deep mind就是这样建立一个大师级的围棋玩家的。另见

在你的情况下,任务原则上应该没有那么难,因为游戏状态的数量相对较少,重要的是,心理学涉及的任何问题,如虚张声势、始终如一的游戏等等,都是完全不存在的

同样地,构建一个可以与自身对抗的机器人。一个常见的基础是一个函数
Q(S,a)
,它为玩家的任何游戏状态和可能的行为分配一个值——这称为Q-学习。这个函数通常被实现为一个神经网络。。。虽然我认为这里不需要那么复杂


我现在就不说了。但如果有必要,我很乐意进一步帮助您。

一个模糊的问题给出了模糊的答案(这是我懒得编码的借口;-)

你写道你有很多数据,似乎你想把游戏映射到监督学习的经验上。但这不是游戏优化的工作方式。通常不进行监督学习,而是强化学习。差异是微妙的,但强化学习(以马尔可夫决策过程作为其理论基础)提供了更多的局部视图——比如优化给定特定状态的决策。监督学习相当于一次优化多个决策

通常的监督学习方法的另一个阻碍因素是,即使你有很多数据,它几乎肯定会太少。而且它不会提供“必需的路径”

通常的方法至少是因为Thesauro的双陆棋玩家更喜欢:建立游戏的基本规则,可能引入人类知识作为启发,然后让程序尽可能经常地与自己对抗——例如,google deep mind就是这样建立一个大师级的围棋玩家的。另见

在你的情况下,任务原则上应该没有那么难,因为游戏状态的数量相对较少,重要的是,心理学涉及的任何问题,如虚张声势、始终如一的游戏等等,都是完全不存在的

同样地,构建一个可以与自身对抗的机器人。一个常见的基础是一个函数
Q(S,a)
,它为玩家的任何游戏状态和可能的行为分配一个值——这称为Q-学习。这个函数通常被实现为一个神经网络。。。虽然我认为这里不需要那么复杂


我现在就不说了。但如有必要,我很乐意进一步帮助您。

有趣的问题。糟糕的问题。。。。由于太宽而下垂。请细化你的问题。我不确定我是否完全理解,但你能不能用矩阵展开之类的方法来表示当前的手/特征集和输出?例如,看起来像[23400;56789;10 11 12 13 14]的手将表示为[2340056789 10 11 13 14]。更容易处理,在第三条街道的第三个神经网络的末尾,你可以将向量提取回一个矩阵来表示最后一只手。这个问题是否应该转移到(ML问题的宿主)?有趣的问题。糟糕的问题。。。。由于太宽而下垂。请细化你的问题。我不确定我是否完全理解,但你能不能用矩阵展开之类的方法来表示当前的手/特征集和输出?例如,看起来像[23400;56789;10 11 12 13 14]的手将表示为[2340056789 10 11 13 14]。更容易处理,在第三条街道的第三个神经网络的末尾,你可以将向量提取回矩阵来表示最后一只手