tms*_*ont 9 nlp machine-learning word2vec
在题为" 机器学习极限 " 的论文中,Canny等.人.报告大量的word2vec处理速度改进.
我正在使用本文中使用的BIDMach库,并且找不到任何解释Word2Vec如何实现或如何在此框架中使用的资源.
回购中有几个脚本:
我试过运行它们(在构建引用的tparse2.exe文件之后)没有成功.
我已经尝试修改它们以使它们运行但除了错误之外什么也没有.
我通过电子邮件发送了作者,并在github repo上发布了一个问题,但一无所获.我只有其他人有同样的麻烦,谁说他得到它运行,但速度比新GPU硬件报告的速度慢得多.
我一直在搜索试图找到任何使用过此库以达到这些速度而没有运气的人.这个库中有多个引用浮动到这个库,作为最快的实现,并引用了论文中的数字:
当我搜索一个类似的库(gensim),以及import运行它所需的代码时,我发现了数以千计的结果和教程,但是对BIDMach代码的类似搜索仅产生了BIDMach仓库.
这个BIDMach实现肯定是最好的声誉,但是那里的任何人都可以告诉我如何使用它吗?
我想要做的就是运行一个简单的培训过程,将它与我自己硬件上的一些其他实现进行比较.
我可以找到的这个概念的每个其他实现都可以使用原始shell脚本测试文件,提供实际指令,或提供自己的shell脚本进行测试.
更新:该库的作者添加了额外的shell脚本以使前面提到的脚本运行,但它们究竟是什么意思或它们如何工作仍然是一个完全的谜,我无法理解如何让word2vec训练程序运行我自己的数据.
编辑(赏金)
我将给予任何可以解释我如何使用我自己的语料库(text8会很棒),然后训练模型,然后将输出向量和词汇表保存到Omar可以读取的文件的任何人的赏金.Levy的Hyperwords.
这正是原始C实现对参数的作用 -binary 1 -output vectors.bin -save-vocab vocab.txt
这也是英特尔的实现,以及其他CUDA实现等,所以这是生成可以轻松与其他版本进行比较的东西的好方法......
UPDATE(赏金过期但没有回答)
John Canny已经更新了repo中的一些脚本并添加了一个fmt.txt文件,因此可以运行repo中包的测试脚本.
但是,我尝试使用text8语料库运行此操作会在高位字测试中产生接近0%的准确率.
在十亿字基准(这就是repo脚本现在所做的)上运行训练过程也会在高字测试中产生低于平均值的准确度.
因此,要么库在这些测试中从未达到准确性,要么我仍然在我的设置中遗漏了一些东西.
小智 1
BIDMach 的 Word2vec 是一种学习单词向量表示的工具,也称为单词嵌入。要在 BIDMach 中使用 Word2vec,您需要首先下载并安装 BIDMach,这是一个用 Scala 编写的开源机器学习库。安装 BIDMach 后,您可以使用 word2vec 函数在文本数据语料库上训练 Word2vec 模型。该函数需要许多参数,例如词向量的大小、训练的纪元数以及要使用的模型类型。您可以在 BIDMach 文档中找到有关如何使用 word2vec 函数的更详细说明和示例。
| 归档时间: |
|
| 查看次数: |
299 次 |
| 最近记录: |