發展歷程
詞嵌入技術起源於2000年。約書亞·本希奧等人在一系列論文中使用了神經機率語言模型(Neural probabilistic language models)使機器“習得詞語的分散式表示(learning a distributed representation for words)”,從而達到將詞語空間降維的目的。羅維斯(Roweis)與索爾(Saul)在《科學》上發表了用局部線性嵌入(LLE)來學習高維數據結構的低維表示方法。這個領域開始時穩步發展,在2010年後突飛猛進;一定程度上而言,這是因為這段時間裡向量的質量與模型的訓練速度有極大的突破。
詞嵌入領域的分支繁多,有許多學者致力於其研究。2013年,谷歌一個托馬斯·米科洛維(Tomas Mikolov)領導的團隊發明了一套工具word2vec來進行詞嵌入,訓練向量空間模型的速度比以往的方法都快。許多新興的詞嵌入基於人工神經網路,而不是過去的n元語法模型和非監督式學習。
生物序列中的套用:BioVectors
阿斯加里(Asgari)和莫夫拉德(Mofrad)提出了生物信息學中生物序列(DNA、RNA和蛋白質等)基於n元語法的詞嵌入技術。bio-vectors(BioVec)表示生物序列的統稱,protein-vectors(ProtVec)表示蛋白質(胺基酸序列),gene-vectors(GeneVec)表示基因序列。BioVec在蛋白質組學與基因組學的深度學習中有廣泛套用。他們提出的結果表明,BioVectors可描述生物化學與生物物理學意義下生物序列的基本模式 。
Thought vectors
將詞嵌入擴展到對句子或整個文本的嵌入後得到的結果稱為 Thought vectors。部分研究者期望用Thought vectors來提升機器翻譯的質量。
軟體實現
使用詞嵌入技術的訓練軟體包括托馬斯·米科洛維的Word2vec、史丹福大學的GloVe和Deeplearning4j。主成分分析(PCA)和t-分布鄰域嵌入算法(t-SNE)也可以用來對詞語空間降維,並實現詞嵌入的可視化與詞義感應。