我正在努力通过最小化正确数据和“输入*输出”之间的损失来在Keras中训练模型,但不知道如何处理。
给出
X:模型输入(训练数据)
Y:模型输出
T:正确的数据
模型=模型(输入= X,输出= Y)
然后,据我了解, 根据用户定义的损失函数,model.fit(X,T)训练模型以最小化Y(= model(X))和T之间的距离。
我的问题是: 如果我想最小化Y * X和T之间的距离怎么办?
我认为诸如“ model.fit(X * model.predict(X),T)”这样的写作会很好吗? (实际上没有) 我不知道如何编写代码来做到这一点。
谢谢您的建议。
答案 0 :(得分:0)
建立功能性的API模型:
inputs = Input(input_shape)
outputs = SomeLayer(...)(inputs)
outputs = SomeLayer(...)(outputs)
outputs = SomeLayer(...)(outputs)
....
outputs = Multiply()([inputs, outputs])
model = Model(inputs, outputs)
model.compile(optimizer=optimizer, loss=loss, metrics=metrics)
model.fit(X, T, ...)