【问题标题】:How to modify word2vec code to build embedding for tab-delimited sequence of phrases?如何修改 word2vec 代码为制表符分隔的短语序列构建嵌入?
【发布时间】:2018-01-31 14:18:11
【问题描述】:

给定的文本文件行如下:

Phrase foo\tPhrase bla\tPhrase blabla\t...
Phrase bar\tPhrase blabla\tPhrase blablabla\t...

每个文本行是一个以制表符分隔的短语序列,可以包含space 和其他特殊字符。我们对词组级别的嵌入感兴趣,而不是单词级别。

目前 word2vec.c 支持“空格”、“制表符”、“换行符”作为分隔符。在这种情况下,如何禁用“空格”并仅启用“制表符”和“换行符”作为 word2vec.c 中的分隔符?

我从 Tomas Mikolov GitHub 得到 word2vec.c

【问题讨论】:

    标签: c text-parsing word2vec


    【解决方案1】:

    https://github.com/tmikolov/word2vec/blob/20c129af10659f7c50e86e3be406df663beff438/word2vec.c#L80 行定义了word2vec.c 中的分隔符;如果您正在编译该文件,则可以编辑该行并重新编译以使其行为不同。

    但是,如果您只是对文本进行预处理以将其转换为预期的形式,那么它会更容易、更健壮(如果实际上您使用的是其他 word2vec 实现)。例如,您可以将所有空格 ' ' 更改为下划线 '_'(或其他一些插入字符,如果任何原始下划线对于保持区分很重要)。

    稍后解释结果时,请记住对查找应用相同的空格到下划线转换,或者通过用空格替换下划线来反转它以显示结果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-24
      • 1970-01-01
      • 2011-04-13
      • 1970-01-01
      • 1970-01-01
      • 2012-03-22
      • 2020-12-26
      • 2012-08-04
      相关资源
      最近更新 更多