创建单词嵌入,而不将fastText Vector文件保存在存储库中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建单词嵌入,而不将fastText Vector文件保存在存储库中相关的知识,希望对你有一定的参考价值。
我试图在Infersent的帮助下嵌入一个句子,并且Infersent使用fastText向量进行单词嵌入。 fastText矢量文件接近5 GiB。
当我们将fastText矢量文件与代码存储库一起保存时,它会使存储库大小变大,并使代码难以共享/部署(甚至创建一个docker容器)。
有没有任何方法可以避免将矢量文件与存储库一起保存,但重用它来嵌入新的句子?
答案
你嵌入了什么样的句子,它是否与生成fastText嵌入的域相同?
尝试在令牌中表示您的数据,即一组所有令牌,或者您想要使用fastText嵌入的句子中出现的最常见令牌的某些表示。
计算令牌与fastText中的标记的重叠,从fastText中删除那些未出现在数据表示中的标记。
我最近这样做,从一个1.4GB的文件,一些预先训练的字嵌入到200 MB,主要是因为与我的语料库重叠约10%。
以上是关于创建单词嵌入,而不将fastText Vector文件保存在存储库中的主要内容,如果未能解决你的问题,请参考以下文章
删除一个单词而不将其添加到 Emacs 中的 kill-ring