Machine learning 什么类型的神经网络可以处理可变的输入和输出大小?
我试图使用本文中描述的方法,使算法学习一个新游戏 只有一个问题不直接适用于这种方法。我试图学习的游戏没有固定的棋盘大小。因此,目前输入张量的维度为Machine learning 什么类型的神经网络可以处理可变的输入和输出大小?,machine-learning,neural-network,conv-neural-network,rnn,Machine Learning,Neural Network,Conv Neural Network,Rnn,我试图使用本文中描述的方法,使算法学习一个新游戏 只有一个问题不直接适用于这种方法。我试图学习的游戏没有固定的棋盘大小。因此,目前输入张量的维度为m*n*11,其中m和n是游戏板的维度,并且每次玩游戏时都可能发生变化。所以首先,我需要一个神经网络,能够利用这些不同的输入大小 输出的大小也是电路板大小的函数,因为它有一个向量,其中包含电路板上每个可能的移动的条目,因此如果电路板大小增加,输出向量将更大 我读过关于递归和递归神经网络的书,但它们似乎都与NLP有关,我不确定如何将其转化为我的问题 任何
m*n*11
,其中m和n是游戏板的维度,并且每次玩游戏时都可能发生变化。所以首先,我需要一个神经网络,能够利用这些不同的输入大小
输出的大小也是电路板大小的函数,因为它有一个向量,其中包含电路板上每个可能的移动的条目,因此如果电路板大小增加,输出向量将更大
我读过关于递归和递归神经网络的书,但它们似乎都与NLP有关,我不确定如何将其转化为我的问题
任何关于NN架构的想法都可以处理我的案件 您需要回到一个固定的输入/输出问题
应用于图像/时间序列时解决此问题的常用方法。。。就是使用滑动窗口缩小尺寸。也许这可以应用到你的游戏中。完全卷积神经网络能够做到这一点。conv层的参数是卷积核。卷积内核不太关心输入大小(是的,与步幅、填充输入和内核大小相关的某些限制) 典型的用例是一些convlayers,然后是maxpooling,并一次又一次地重复,直到过滤器变平并连接到稠密层。密集层是一个问题,因为他希望以固定的大小输入。如果存在另一个conv2图层,则输出将是另一个大小适当的要素图 这种网络的例子可以是YOLOv3。例如,如果使用图像416x416x3对其进行馈送,输出可以是13x13x3个过滤器(我知道YOLOv3有更多的输出层,但由于简单,我将只讨论一个)。如果向YOLOv3提供图像256x256x3,输出将是特征映射6x6x过滤器数量
所以网络不会崩溃并产生结果。结果会好吗?我不知道,也许是,也许不是。我从来没有以这种方式使用它,我总是将图像大小调整到推荐的大小或重新训练网络。您需要的是指针网络() 以下是一篇文章的引言: 指针网络是一种新的神经结构,它学习指向输入序列中位置的指针。这是新的,因为现有的技术需要有固定数量的目标类,这是不普遍适用的-考虑旅行商问题,其中类的数量等于输入的数量。另一个例子是对大小可变的序列进行排序。 - 这是一种基于注意力的模式 实际上,指针网络用于预测返回到输入的指针,这意味着您的输出层实际上不是固定的,而是可变的 我使用它们的一个用例是将原始文本转换为SQL查询
- 输入:“1983年在美国销售了多少辆汽车?”
- 输出:从Car_表中选择COUNT(Car_id),其中(Country='US'和 年份=='1983')
您的情况非常相似,您需要将输入、游戏元数据以及您需要的内容作为输出的一部分作为附加索引传递。然后指针网络只需从输入中进行选择(指向它们)。我可以使用4×4的游戏板训练网络,然后对每4×4的游戏板进行单独预测。那么,问题是如何组合结果,以及与考虑整个董事会时相比,如何共同补偿信息丢失,因为相距较远的部分往往会相互影响。平均、多数投票、自定义规则。。。我不知道你们的游戏对于不同的输入大小,这里有一些很好的答案:对于不同的输出大小,这对我来说仍然是个谜。高度理论化,完全卷积的网络。例如,YOLOv3能够处理不同大小的图像(在therms中,网络不会崩溃)。您测试过自己吗?我认为TF/keras/。。。不匹配张量大小的上升误差(类似这样的事情)。你是说填充?