Hierarchical Probabilistic Neural Network Language Model

Hierarchical Probabilistic Neural Network Neural Language Model

Frederic Morin, Yoshua Bengio, U Montreal

Hierarchical Deconposition Can Provide Exponential Speed-Up

先是分析了一下使用传统语言模型的复杂度,然后提出先将最后一层的输出,使用一个clustering,也就是两层预测,来代替,这样可以有效减少计算的复杂度.通过建设normalization的分母计算.

$$P(Y=y |X=x) = P(Y=y | C=c(y), X) \cdot P(C=c(y)|X=x)$$

第j层来预测第i个单词的概率是

$$P(v|w{t-1}, ..., w{t-n+1}) = \prod{j=1}^m P( b_j(v) | b_1(v), ..., b{j-1}(v), w{t-1}, ..., w{t-n+1} )$$

这就好比是一个树,每一个叶子是一个单词,每一个节点通过从根到节点的binary seq来index.比如可以构造一个balanced binary tree.如果再考虑到词频来构造树,那么更进一步提速三成.不过相比于考虑到词频,单纯使用balanced hierarchy的提速效果更加明显.

Sharing Parameters Across the Hierarchy

如果对应于每一个节点,都构造一个分类器,除了存储上的消耗,还有overfitting的问题.因此要构造一个model,能够share parameters.

首先,word embedding可以当作一个全局已知量,也就是所有的node都能够访问.因为hierarcy中的每一个节点都假设有语义上的意义,所以可以将每一个节点连接到一个特征向量.可以把建模为$$P(b|node, w{t-1}, ..., w{t-n+1})$$,其中node是hierarchy中的到node的seq,b是该node的childrenbit,也就是下一个bit(0或者1).

Using the WordNet to Build the Hierarchical Decomposition

模型中非常关键的点是如何构造hierarchical word clustering.这篇paper用了一些假设来保证单词embedding的唯一性和binary tree.

Appendix

这篇paper是看目前最新的LSTM模型用到的

Character-Award Neural Language Models

算上这一篇

Hierarchical Probabilistic Neural Network Language Model

还有这一篇paper提到的

Classes For Fast Maximum EntropyTraining

results matching ""

    No results matching ""