基于TF-IDF的新闻标签提取
基于TF-IDF的新闻标签提取
1. 新闻标签
新闻标签是一条新闻的关键字,可以由编辑上传,或者通过机器提取。新闻标签的提取主要用于推荐系统中,所以,提取的准确性影响推荐系统的有效性。同时,对于将标签展示出来的新闻网站,标签的准确性也会影响用户体验。
2. 新闻标签提取算法
新闻首先是一段文本,新闻的标签首先是这一段文本的关键字。在文本关键字提取当中,TD-IDF是首先可以想到的算法。TF-IDF算法的优点是:简单快速,结果比较符合实际情况;缺点是,单纯以“词频”衡量一个词的重要性,不够全面,而且重要的词可能出现次数少。
直接将新闻文本利用TF-IDF出来的结果往往包含比较宽泛,不能够直接使用。将TF-IDF输出的结果集中的每个关键词添加一个标签权重。权重计算方式为 TF-IDF的权重乘标签热度权重,其中,标签热度权重可以通过爬取海量历史新闻的标签,统计标签出现次数,以标签次数作为热度的权重。
如果想要精益求精的话,可以不简单统计次数相加,而是带上时间属性,给近期时间一个较大的值,久的时间一个小的值。
3. 新闻标签提取流程
a) 统计海量新闻标签,并得到标签热度;
b)利用TF-IDF得新闻文本关键字集(取top20);
c) 将20个关键字的权重乘对应标签热度 Ti = TFIDFi * (1 + HOTi) 其中,加一是为了避免关键字不在标签字典里导致结果为0;
d) 根据计算结果重新排序,取前5个关键字;
4. 实验结果
最后简单验证了一下,利用jieba完成TF-IDF,再python计算。
验证了一条财经新闻 链接为:http://finance.caijing.com.cn/20170607/4281440.shtml
网站新闻的关键字为: 要么, 房贷, 业务, 银行
程序得到关键字为:房贷,贷款,银行,利率,流动性
效果比较:显然,程序得到的标签更为准确。
基于TF-IDF的新闻标签提取的更多相关文章
- 基于TF/IDF的聚类算法原理
一.TF/IDF描述单个term与特定document的相关性TF(Term Frequency): 表示一个term与某个document的相关性. 公式为这个term在document中出 ...
- Elasticsearch由浅入深(十)搜索引擎:相关度评分 TF&IDF算法、doc value正排索引、解密query、fetch phrase原理、Bouncing Results问题、基于scoll技术滚动搜索大量数据
相关度评分 TF&IDF算法 Elasticsearch的相关度评分(relevance score)算法采用的是term frequency/inverse document frequen ...
- TF/IDF(term frequency/inverse document frequency)
TF/IDF(term frequency/inverse document frequency) 的概念被公认为信息检索中最重要的发明. 一. TF/IDF描述单个term与特定document的相 ...
- 信息检索中的TF/IDF概念与算法的解释
https://blog.csdn.net/class_brick/article/details/79135909 概念 TF-IDF(term frequency–inverse document ...
- 使用solr的函数查询,并获取tf*idf值
1. 使用函数df(field,keyword) 和idf(field,keyword). http://118.85.207.11:11100/solr/mobile/select?q={!func ...
- TF/IDF计算方法
FROM:http://blog.csdn.net/pennyliang/article/details/1231028 我们已经谈过了如何自动下载网页.如何建立索引.如何衡量网页的质量(Page R ...
- tf–idf算法解释及其python代码实现(下)
tf–idf算法python代码实现 这是我写的一个tf-idf的简单实现的代码,我们知道tfidf=tf*idf,所以可以分别计算tf和idf值在相乘,首先我们创建一个简单的语料库,作为例子,只有四 ...
- tf–idf算法解释及其python代码实现(上)
tf–idf算法解释 tf–idf, 是term frequency–inverse document frequency的缩写,它通常用来衡量一个词对在一个语料库中对它所在的文档有多重要,常用在信息 ...
- 文本分类学习(三) 特征权重(TF/IDF)和特征提取
上一篇中,主要说的就是词袋模型.回顾一下,在进行文本分类之前,我们需要把待分类文本先用词袋模型进行文本表示.首先是将训练集中的所有单词经过去停用词之后组合成一个词袋,或者叫做字典,实际上一个维度很大的 ...
随机推荐
- 接口调用 GET方式
/** * 第一步 视图展示 . 视图页面(忽略) * @return [type] [description] */ /** * 第二步 控制器先将要运行的接口处理好(接口及参数)传到到Model层 ...
- 透视I/O多路复用
透视I/O多路复用 我写的不是select这些函数的教学,需要了解的请自行Google或者去man,这些是帮助我理解函数的封装之下的道理. 需要回答的问题 I/O准备好了指什么?什么叫I/O已经可读/ ...
- sqoop关系型数据迁移原理以及map端内存为何不会爆掉窥探
序:map客户端使用jdbc向数据库发送查询语句,将会拿到所有数据到map的客户端,安装jdbc的原理,数据全部缓存在内存中,但是内存没有出现爆掉情况,这是因为1.3以后,对jdbc进行了优化,改进j ...
- bzoj1487 [HNOI2009]无归岛
Description Neverland是个神奇的地方,它由一些岛屿环形排列组成,每个岛上都生活着之中与众不同的物种.但是这些物种都有一个共同的生活习性:对于同一个岛 上的任意两个生物,他们有且仅有 ...
- Linux下Hadoop2.7.1集群环境的搭建(超详细版)
本文旨在提供最基本的,可以用于在生产环境进行Hadoop.HDFS分布式环境的搭建,对自己是个总结和整理,也能方便新人学习使用. 一.基础环境 ...
- Java核心技术 卷I chapter05 继承
2017年4月10日19:41:44 仅仅用于打好基础 1. 在Java中,所有的继承都是公有继承,而没有C++中的私有继承和保护继承! 2.关键字super的使用方法: (1) 子类中想调用父类中的 ...
- sublime Text2 快捷键精华版
Ctrl+Shift+P:打开命令面板Ctrl+P:搜索项目中的文件Ctrl+G:跳转到第几行Ctrl+W:关闭当前打开文件Ctrl+Shift+W:关闭所有打开文件Ctrl+Shift+V:粘贴 ...
- [刷题]算法竞赛入门经典(第2版) 5-14/UVa1598 - Exchange
题意:模拟买卖,当出售价bid等于或低于出售价ask,则交易. 代码:(Accepted,0.330s) //UVa1598 - Exchange //Accepted 0.330s //#defin ...
- JAVA中的Buffer
一.属性 Buffer有四个基本属性: 1.capacity 容量,buffer能够容纳的最大元素数目,在Buffer创建时设定并不能更改 2.limit buffer中有效位置数目,不能对超过li ...
- Brief introduction to Cassandra 【Cassandra简介】
From wikipedia https://en.wikipedia.org/wiki/CAP_theorem In theoretical computer science, the CAP t ...