首页 理论教育 Python中文文本分析:词向量训练过程的步骤

Python中文文本分析:词向量训练过程的步骤

时间:2023-11-06 理论教育 版权反馈
【摘要】:使用Gensim工具训练Word2Vec词向量的主要过程如下:文本数据预处理。把文本数据转化成可迭代对象,作为参数输入Word2Vec对象进行词向量模型训练。window:是指词向量训练时当前词和预测词的扫描窗口大小,如window为3,则表明选择当前词前后3个词作为扫描窗口。min_count:是对词进行过滤,频率小于min_count的词会被忽略。workers:训练模型时选用的工作线程数。如果为0,并且“negative”不为0,则将采用负采样训练模型;如果为1,将用Hierarchical Softmax训练模型。

Python中文文本分析:词向量训练过程的步骤

使用Gensim工具训练Word2Vec词向量的主要过程如下:

(1)文本数据预处理。首先需要采用文本预处理方法实现文本分词、停用词去除等,把文本转换成词序列,即一篇文本文档作为一个序列。

(2)对于预处理后的文本数据,可采用基于词频统计的特征选择等方法,实现低频词过滤。

(3)把文本数据转化成可迭代对象,作为参数输入Word2Vec对象进行词向量模型训练。

Gensim中的Word2Vec描述如下:

参数:

sentences:文本数据集,是一个可迭代对象,对于大语料集,建议使用BrownCorpus,Text8Corpus或lineSentence构建。

size:每个词向量的维数。

window:是指词向量训练时当前词和预测词的扫描窗口大小,如window为3,则表明选择当前词前后3个词作为扫描窗口。在实际应用中,可根据文本数据的大小和实际需求来调整window大小。(www.xing528.com)

min_count:是对词进行过滤,频率小于min_count的词会被忽略。

alpha:是初始的学习速率。

max_vocab_size:构建词表最大数,当词大于这个数时按照频率排序,去除频率低的词汇。

seed:用于随机数发生器。

workers:训练模型时选用的工作线程数。

sg:可选0或1。0表示CBOW,1表示Skip-gram。

hs:可选0或1。如果为0,并且“negative”不为0,则将采用负采样训练模型;如果为1,将用Hierarchical Softmax训练模型。

negative:设置为整型。如果大于0,使用负采样,且negative绝对值决定了“noise words”的个数,一般情况下取值范围为5~20;如果设置为0,则采用非负采样方法。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈