【问题标题】:How are matrices multiplied in Hierarchical Softmax model?Hierarchical Softmax 模型中的矩阵是如何相乘的?
【发布时间】:2018-03-13 00:11:03
【问题描述】:

据我了解,简单的 word2vec 方法使用两个矩阵,如下所示: 假设语料库由 N 个单词组成。 维度为 NxF 的加权输入矩阵 (WI)(F 是特征数)。 尺寸为 FxN 的加权输出矩阵 (WO)。 我们将一个热向量 1xN 与 WI 相乘,得到一个神经元 1xF。 然后我们将神经元与 WO 相乘,得到一个输出向量 1xN。 我们应用 softmax 函数并选择向量中的最高条目(概率)。 问题:使用 Hierarchical Softmax 模型时如何说明? 将与哪个矩阵相乘得到将导致向左或向右分支的二维向量? 附:我确实理解使用二叉树等的 Hierarchical Softmax 模型的想法,但我不知道乘法是如何在数学上完成的。

谢谢

【问题讨论】:

    标签: deep-learning word2vec hierarchical softmax


    【解决方案1】:

    为简单起见,假设 N 是 2 的幂。二叉树将有 N-1 个内部节点。这些节点连接到尺寸为 Fx(N-1) 的 WO。

    计算每个内部节点的值后,计算左右分支值。使用类似 sigmoid 函数的东西来分配(比如说)左分支。右分支只是 1 减去左分支。

    为了预测,找到从根到叶子的最大概率路径。

    为了训练,识别正确的叶子并识别内部节点到根的路径。从这些 log(N) 节点开始反向传播。

    【讨论】:

      猜你喜欢
      • 2019-01-23
      • 2019-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-10
      • 2011-05-02
      • 2013-12-09
      相关资源
      最近更新 更多