我是强化学习和深度学习的初学者,我想为 DQN 代理(在 Keras 中)构建一个神经网络,它接收一个长度等于 3 的向量作为输入,并输出另一个长度等于 10 的向量。
输入向量有一个元素等于 1,其他元素等于 0。它也可以全为零,但不能有多个值为 1 的元素。
例子:
[0, 1, 0]
或者:
[0, 0, 0]
输出必须是一个包含 10 个元素的向量,其中一个元素等于 1,所有其他元素的值都等于 0。就像输入向量一样,它也可以全为零,但不能超过一个值为 1 的元素。
例子:
[0, 0, 1, 0, 0, 0, 0, 0, 0, 0]
或者:
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
如果输入向量中包含“1”,则输出向量必须最多有一列值为 1。
如果输入向量全为零,则输出向量必须将所有值设置为 0。
我试图创建一个卷积神经网络,但我遇到的示例将图像(因此是 2D 矩阵)视为输入,并将一个值作为输出而不是向量。