基于word2vec新闻分类任务实现

        word2vec是一个经典基础的词嵌入模型,将单词转化到高维向量空间。人们认为向量空间中,距离相近的向量,其语义更接近。利用这一思想,我们可实现新闻分类任务,向量表示被分到同一簇的新闻文本,其语义事件描述大概率是属于同一类新闻。

        本博文采用gensim库的word2vec模型词嵌入,利用sklearn库中consine_similarity()函数直接计算向量间的余弦相似度,实现新闻分类任务,以下是主要代码逻辑:

1. 定义需要的类型;

        这里定义需要分类的是体育新闻和政治新闻两个类别。

2. 为指定的类型分别训练相应语料库的词向量,可采用基于gensim库的word2vec模型;

        class_vectors为获取体育新闻语料库和政治新闻语料库的文本向量。(一篇文章中所有词向量按维度取平均表示为文本向量)

3. 将待分类的输入文本词向量化,分别与以上类别的向量表示比较相似程度。

        下面分三块介绍自定义的分类器classify函数

  • 将待分类的输入文本词向量化,采用基于gensim库的word2vec模型;

  • 最简单的办法是进行余弦相似度计算,分别计算输入文本向量表示,与各个类别向量表示之间的相似度。向量空间上夹角越小语义越相近,所以余弦值越接近1,说明越有可能和该类别相似。

  • 选择余弦相似度最大的,相应的类别名称。获取类别标签作为最终输出。

        其中class_labels在最开头已给出定义,返回predicted_class即为文本分类标签结果

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值