如何解决该参数不会在整个优化过程中更新
我想使用pytorch或Tensorflow优化算法(如Adam)优化参数vector,gamma和v。下面的代码是我的成本函数,相对于上述三个参数,我想将其最小化。不幸的是,gamma参数根本不会更改和更新! 我认为这是为了利用Sign函数,因为当我使用softsign或tanh函数对其进行更改时,它将得到更新。但是,对我来说,保持精度和零点处的严格聚类并同时使gamma更新是非常必要的。有人可以帮我解决这个问题吗?
def objective_function(self,x):
nvector = self.vector / torch.norm(self.vector)
alpha = torch.matmul(x,nvector) + self.gamma
q1 = torch.sign(alpha)
yh= q1 * self.v
error = x - torch.matmul(yh,nvector.T)
log_error = torch.log2( torch.mean( torch.square( torch.norm(error) ) ) )
return log_error
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。