我是机器学习的新手。
tflearn我在某处发现了这个例子。这是程序的一部分,我们在训练之前初始化一个虚拟模型。在示例中,有 4 个输入层和 2 个输出层。我不懂任何术语,但我运行了该程序并且它有效。
def neural_network_model(input_size):
network = input_data(shape=[None, input_size, 1], name='input')
network = fully_connected(network, 128, activation='relu')
network = dropout(network, 0.8)
network = fully_connected(network, 256, activation='relu')
network = dropout(network, 0.8)
network = fully_connected(network, 512, activation='relu')
network = dropout(network, 0.8)
network = fully_connected(network, 256, activation='relu')
network = dropout(network, 0.8)
network = fully_connected(network, 128, activation='relu')
network = dropout(network, 0.8)
network = fully_connected(network, 2, activation='softmax')
network = regression(network, optimizer='adam', learning_rate=LR, loss='categorical_crossentropy', name='targets')
model = tflearn.DNN(network, tensorboard_dir='log')
return model
我想重用这个函数来创建一个模型,我将使用具有 24 个输入层和 4 个输出层的数据进行训练,但它给了我以下错误:
无法为形状为“(?, 2)”的张量“targets/Y:0”提供形状 (64, 4) 的值
有人能解释一下上面所有的术语是什么意思吗?我应该改变什么以适应我的 24 x 4 层?