【问题标题】:Tensorflow sampled_softmax_loss exampleTensorFlow sampled_softmax_loss 示例
【发布时间】:2016-11-03 12:13:00
【问题描述】:

谁能给我一个关于 Tensorflow 的sampled_softmax_loss简单示例?

我尝试使用 sampled_softmax_loss 更改 tutorial 的 softmax 和 cross_entropy,并为 num_sampled 设置不同的数字,但结果非常糟糕。

【问题讨论】:

  • 澄清一下,您知道如何使用它,但想要一个在模型中成功运行的示例?
  • 让我们看看。我对阅读文档的理解是,此操作对 softmax 进行采样,以避免计算每个类的总和,并最终返回训练损失。真的是这样吗?在代码中,我所做的只是将 softmax 和 cross_entropy 的行替换为 sampled_softmax_loss。
  • 啊。是的,sampled_softmax_loss computes the cross entropy after sampling。文档可能应该更明确地说明这一点。

标签: python tensorflow sampling softmax


【解决方案1】:

当您有大量输出类时使用示例 softmax。 主要原因是如果你对大量输出类使用正常的 softmax 损失,比如说 5000,它的效率非常低,而且我们的计算机计算起来很麻烦。因此,在计算 softmax 损失时,样本 softmax 只会考虑总类数中的 k 个类。

使用的一个例子是 TensorFlow 中的序列到序列模型。

这些模块可以预测顺序发生的事情。假设给定一个句子预测下一个单词。所以在这里为了预测这个词你有很多输出类。 在这种情况下,它等于词汇量。所以 sample softmax 在这方面非常方便。 Link to the tensorflow seq2seq models

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-03-26
    • 2016-05-16
    • 2016-04-17
    • 1970-01-01
    • 2017-06-11
    • 1970-01-01
    • 2018-02-26
    • 2021-08-20
    相关资源
    最近更新 更多