下面链接里面也有很多相关的词向量模型,但是有些其实不太常用。以下总结了一些比较常用的一些词向量的相关博文和实战代码。
当前最好的词句嵌入技术概览:从无监督学习转向监督、多任务学习
1. Word Embedding
1.1 Word2Vec
一文详解 Word2vec 之 Skip-Gram 模型(结构篇)
一文详解 Word2vec 之 Skip-Gram 模型(训练篇)
一文详解 Word2vec 之 Skip-Gram 模型(实现篇)
基于分布假设(在相同的上下文中出现的单词往往具有相似的含义)的无监督学习方法
1.2 GloVe
GloVe(Global Vectors for Word Representation)是一种基于共现矩阵分解的词向量。
NLP︱高级词向量表达(一)——GloVe(理论、相关测评结果、R&python实现、相关应用)
基于分布假设(在相同的上下文中出现的单词往往具有相似的含义)的无监督学习方法
1.3 WordRank
1.4 Polyglot
1.5 fastText
NLP︱高级词向量表达(二)——FastText(简述、学习笔记)
有监督 + ngram(可以解决OOV问题) + 速度快
2. Contextualized Word Embedding
从Word Embedding到Bert模型-自然语言处理中的预训练技术发展史(理论+实践)
2.1 Transformer
Transformer代码分析:https://github.com/JepsonWong/Transformer
2.2 ELMO
代码很清晰,可读性很好。https://github.com/codertimo/ELMO-tf
注意:ELMo模型的输入是字符而不是单词。
2.3 BERT
BERT代码实战(中英文文本分类):https://github.com/JepsonWong/BERT
3. 其他
3.1 基于笔画的中文词的word embedding
cw2vec
4. 词嵌入模型的最优维度
NeurIPS 2018 oral论文解读:如何给词嵌入模型选择最优维度
里面有各个词向量的最优维度以及最优维度的选择原理。
github资源
Pre-trained word vectors of 30+ languages,里面有中文word2vec和fastText的词向量
博客资源
注意:训练好的word2vec和glove词向量均可以用gensim导入。
Google’s trained Word2Vec model in Python
60维训练好的中文词向量-gensim版本要对应,要不然没法用!
python 环境下gensim中的word2vec的使用笔记
论文
Mikolov的原始论文
《DistributedRepresentations of Words and Phrases and their Compositionality》
《Efficient Estimation ofWord Representations in Vector Space》
DL在language model中应用的祖先文章(2003年)
《A Neural ProbabilisticLanguage Model》 by Yoshua Bengio et. al.
Word2Vec在文章种被解释为一种变种PCA
《Neural Word Embedding asMatrix Factorization》by Yoav Goldberg et. al.
以unsupervised的方式产生embedding
Stanford的Chris Manning的 Glove:《Global Vectors for WordRepresentation》