深度学习初学者的困惑.....理论上感觉明白了一丢丢,但实战中发现还有很多细节没搞清楚。
理解input输入层到embedding层的具体计算,一开始真的很费解......知乎、csdn、简书杂七杂八看了很多博文,讲得都很好,可总还差了些什么。
现在我的理解就不重复赘述了,就简单记录一下学习理解过程中查到的一些比较容易懂得博文资料。
1、概念整理
- embedding层:嵌入层,神经网络结构中的一层,由embedding_size个神经元组成,[可调整的模型参数]。是input输入层的输出。
- 词嵌入:也就是word embedding...根据维基百科,被定义为自然语言处理NLP中的一组语言建模和特征学习技术的集体名称,其中来自词汇表的单词或者短语被映射成实数向量。
- word2vec:词嵌入这个技术的具体实现,也可以理解成是将向量从高维度映射到低维度的计算过程。 具体的包含两种处理方式也就是两个典型的模型---CBOW模型和SG模型。假设,原始数据有F个特征,通过one-hot编码后,表示成N维的向量,即input层的维度是N,和权重矩阵相乘,变成embeddingsize维的向量。(embedding_size <N)
- 词向量:也就是通过word2vec计算处理后的结果的释义。比如说...从input输入层到embedding层的权重矩阵,记作是N✖embedding_size的,那么这个矩阵的一行就是一个词向量,是第几行就对应input输入层one-hot编码中第几列那个1所对应的词。
2、拓展
具体的可以看看下面参考的第二篇专栏。