首页 > 解决方案 > Tensorflow 自定义模型权重不会随每个时期更新

问题描述

我是 Tensorflow 的新手,我目前正在制作个人项目以获取经验。目前,我正在尝试根据 2017 年的研究论文“An Unsupervised Neural Attention Model for Aspect Extraction”创建一个个人项目。本文的链接在此处给出。我一直在大量使用研究人员的 Github 存储库中提到的代码来训练这个自定义模型的部分。可以在此处找到指向她的 repo 的链接。可以看出,每个 epoch 之后权重都没有更新。这是我笔记本的链接。请帮助我解决这个问题。另外,您能否分享一下她为什么定义该模型的损失和指标,如下所示?

def max_margin_loss(y_true, y_pred):
    return K.mean(y_pred)

optimizer_ = Adam(learning_rate=0.001, beta_1=0.9, beta_2=0.999, epsilon=1e-08, clipnorm=10, clipvalue=0)
my_model.compile(optimizer=optimizer_, loss=max_margin_loss, metrics=[max_margin_loss])

有没有办法使用铰链损失自定义层作为损失?

标签: pythontensorflowkerasdeep-learning

解决方案


是的,如果你想使用铰链损失函数,你可以直接调用它。

model.compile(loss='hinge', optimizer=opt, metrics=['accuracy'])

推荐阅读