神经网络中的词嵌入与语言检测应用
1. CBOW 嵌入
在处理词嵌入时,我们可以使用如下代码保存整个 CBOW 模型:
torch.save(model, 'cbow.model')
实际上,我们真正感兴趣的只是嵌入部分,它对应模型的第一层。我们可以通过以下代码提取它:
model[0].weight
之后,我们可以像之前介绍的那样,将这些嵌入存储在 Pandas 的 DataFrame 中,并保存到文件里。
训练好模型后,我们可以使用特定函数计算一些词的余弦相似度。当使用批量大小为 1024、 mean() 函数聚合向量以及进行五个轮次的训练后,对于“he”、“she”、“ulysses”、“penelope”、“achaeans”和“trojans”这几个词,与之语义最相似的五个词分别如下:
| 词 | 最相似的五个词 |
| ---- | ---- |
| he | [‘she’, ‘they’, ‘i’] |
| she | [‘he’, ‘vulcan’, ‘they’] |
| ulysses | [‘telemachus’, ‘antinous’, ‘juno’] |
| penelope | [‘helen’, ‘telemachus’, ‘juno’] |
| achaeans | [‘danaans’, ‘trojans’, ‘argives’]
超级会员免费看
订阅专栏 解锁全文
1万+

被折叠的 条评论
为什么被折叠?



