基于SVD的单词分布式表示
参考了《深度学习进阶:自然语言处理》的第二章,基于共现矩阵计算点互信息,然后用SVD降维做word embedding
感想:拿基于统计的方法做词嵌入还是太慢了!虽然解释性比较强,但是对于大的词表来说算起来太慢了。莎士比亚的数据我只敢喂一小部分,全部喂进去词表维度有两万维,算共现矩阵的时间复杂度是n方,SVD降维时时间复杂度是n立方!数据清洗也很麻烦,拿到的原始数据得用正则表达式先处理下,正则匹配的时候记得用re.escape()方法来处理pattern。
数据集:https://ocw.mit.edu/ans7870/6/6.006/s08/lecturenotes/files/t8.shakespeare.txt