了解在DBOW的单个时期发生了什么

时间:2019-06-13 22:24:41

标签: batch-processing epoch doc2vec mini-batch stochastic-gradient

我正在使用分布式单词袋(DBOW),我很好奇在一个纪元时期会发生什么? DBOW是循环浏览所有文档(又称“批处理”)还是循环浏览一部分文档(又称“小批量”)?此外,对于给定的文档,DBOW将从文本窗口中随机抽取一个单词,并学习权重以将该目标单词与窗口中的周围单词相关联,这是否意味着DBOW可能不会遍历文档中的所有文本? / p>

我已经通过GENSIM(https://github.com/RaRe-Technologies/gensim)代码来确定是否存在用于批处理的参数,但是没有运气。

1 个答案:

答案 0 :(得分:0)

在gensim Doc2Vec中进行PV-DBOW训练的一个时期将遍历所有文本,然后针对每个文本遍历所有单词,尝试依次预测每个单词,然后反向传播修正立即预测到单词。也就是说,根本没有“迷你批处理”:每个目标词都是一个单独的预测/反向传播。

(在如何将文本组发送到工作线程方面有些繁琐,可以稍微改变顺序,但是呈现给神经网络的每个单独的训练示例都需要单独进行纠正,因此没有正在发生SGD小批量交易。)

每个文本的单词都是按顺序考虑的,只有在(a)单词出现少于min_count次的情况下才跳过; (b)该单词非常常见,并通过sample参数的值进行随机删除。因此,您通常可以将培训视为包括每个文档的所有重要单词。