请检查此链接的方程式并将其转换为简单 keras 模型的 python 损失函数。
将其转换为 Python 的 KERAS 所需的损失方程的公式图片或图像链接
其中图中方程的max部分或曲线选择部分为铰链损失,yi表示每个样本的标签,φ(x)表示特征表示,b是偏差,k是训练样本的总数, w 是要学习的分类器。
为了便于检查,示例方程为 -
min(w) [
1/k(sum of i to k)
max(0, 1 - y_i(w.φ(x) - b))
]
+
1/2||w||^ 2
.
实际上我可以在图片中找到方程的最大部分或曲线部分,但我找不到 1/2 * || w ||^ 2 部分。
您也检查此链接以寻求帮助-
在这里,我附上了一些示例代码来清除我的问题的概念:
print("Create Model")
model = Sequential()
model.add(Dense(512,
input_dim=4096, init='glorot_normal',W_regularizer=l2(0.001),activation='relu'))
model.add(Dropout(0.6))
model.add(Dense(32, init='glorot_normal',W_regularizer=l2(0.001)))
model.add(Dropout(0.6))
model.add(Dense(1, init='glorot_normal',W_regularizer=l2(0.001),activation='sigmoid'))
adagrad=Adagrad(lr=0.01, epsilon=1e-08)
model.compile(loss= required_loss_function, optimizer=adagrad)
def required_loss_function(y_true, y_pred):
IN THIS LOSS FUNCTION,
CONVERT THE EQUATION IN THE
PICTURE INTO PYTHON CODE.
作为提及,您必须找到的是 - 1/2 * || w || ^ 2 . 我可以在链接的图片中找到方程式剩余部分或其他部分的python代码。铰链损失部分可以很容易地使用这个等式计算 -
import keras
keras.losses.hinge(y_true, y_pred)
如果您需要进一步的帮助,请评论以获取详细信息。