在自己的语料库上训练 fasttext 词嵌入
Training fasttext word embedding on your own corpus
我想在自己的语料库上训练 fasttext。但是,在继续之前我有一个小问题。我需要将每个句子作为语料库中的不同项目,还是可以将多个句子作为一个项目?
例如,我有这个 DataFrame:
text | summary
------------------------------------------------------------------
this is sentence one this is sentence two continue | one two other
other similar sentences some other | word word sent
基本上,text
栏是一篇文章,所以它有很多句子。由于预处理,我不再有句号 .
。所以问题是我可以直接做这样的事情还是需要拆分每个句子。
docs = df['text']
vectorizer = TfidfVectorizer()
vectorizer.fit_transform(docs)
根据我阅读的教程,我需要每个句子的单词列表,但是如果我有文章中的单词列表怎么办?有什么区别?这是在自己的语料库中训练 fasttext 的正确方法吗?
谢谢!
FastText 需要 text 作为它的训练数据——而不是像 TfidfVectorizer
那样预先矢量化的任何东西。 (如果那是您的 FastText 流程的一部分,那就放错地方了。)
Gensim FastText 支持需要训练语料库作为 Python 可迭代,其中每个项目都是一个字符串词标记列表.
每个标记列表通常是一些有凝聚力的文本,其中相邻的词在通常的自然语言中具有一起使用的关系。它可能是一个句子、一个段落、一个 post、一个 article/chapter 或其他任何内容。 Gensim 的唯一限制是每个文本的长度不应超过 10,000 个标记。 (如果你的文本比这更长,它们应该被分割成单独的 10,000 或更少的部分。但是不要太担心分割点周围的关联丢失 - 在训练集中对于像 FastText 这样的算法来说足够大,任何此类上下文丢失都可以忽略不计。)
我想在自己的语料库上训练 fasttext。但是,在继续之前我有一个小问题。我需要将每个句子作为语料库中的不同项目,还是可以将多个句子作为一个项目?
例如,我有这个 DataFrame:
text | summary
------------------------------------------------------------------
this is sentence one this is sentence two continue | one two other
other similar sentences some other | word word sent
基本上,text
栏是一篇文章,所以它有很多句子。由于预处理,我不再有句号 .
。所以问题是我可以直接做这样的事情还是需要拆分每个句子。
docs = df['text']
vectorizer = TfidfVectorizer()
vectorizer.fit_transform(docs)
根据我阅读的教程,我需要每个句子的单词列表,但是如果我有文章中的单词列表怎么办?有什么区别?这是在自己的语料库中训练 fasttext 的正确方法吗?
谢谢!
FastText 需要 text 作为它的训练数据——而不是像 TfidfVectorizer
那样预先矢量化的任何东西。 (如果那是您的 FastText 流程的一部分,那就放错地方了。)
Gensim FastText 支持需要训练语料库作为 Python 可迭代,其中每个项目都是一个字符串词标记列表.
每个标记列表通常是一些有凝聚力的文本,其中相邻的词在通常的自然语言中具有一起使用的关系。它可能是一个句子、一个段落、一个 post、一个 article/chapter 或其他任何内容。 Gensim 的唯一限制是每个文本的长度不应超过 10,000 个标记。 (如果你的文本比这更长,它们应该被分割成单独的 10,000 或更少的部分。但是不要太担心分割点周围的关联丢失 - 在训练集中对于像 FastText 这样的算法来说足够大,任何此类上下文丢失都可以忽略不计。)