基于 python TF-IDF K-means 算法的校园微博热点话题发现系统 附代码
目前新浪微博平台,已经存在热点话题的发现和推荐功能,但这些功能对校园微博热点发现与舆情监控方面存在不足之处。
校园微博有针对性的舆情监控目的,而微博平台没有提供针对校园微博的热点发现,因此校园微博热点话题发现系统对于高校舆情监控有着关键的意义。本文基于 K-means 聚类算法实现一套校园微博热点话题发现系统,通过改进相关算法等步骤提高了获取热点话题的准确性,并实现可视化界面操作获取微博数据和热点话题等操作,方便舆情人员快速获取舆情热点。
2 相关技术介绍
2.1 网络爬虫技术
网络爬虫 (web crawler),也叫网络蜘蛛( spider),是一种按照特定规则,用来自动浏览并获取万维网上资源的程序或脚本。网络爬虫程序也是搜索引擎中的重要组成部分。目前网络爬虫主要分为几种类型:通用网络爬虫、主题网络爬虫、增量式网络爬虫、深层网络爬虫。
2.2 中文分词技术
中文分词,即是 Chinese Word Segmentation,指的是将汉字序列切分成一个个单独的词。由于计算机无法直接处理自然语言文本,因此需要对微博文本进行分词并构建数据模型,这也是文本挖掘的基础。
中文分词技术属于自然语言处理技术的范畴。目前现有的分词算法有:基于字符串匹配的分词、基于理解的分词和基于统计的分词三大类。
表 2-1 分词优劣对比
分词方法 |
字符串匹配分词 |
理解分词 |
统计分词 |
歧义识别 |
差 |
强 |
强 |
新词识别 |
差 |
强 |
强 |
需要词典 |
需要 |
不需要 |
不需要 |
需要词典 |
否 |
否 |
是 |
需要语料库 |
否 |
是 |
否 |
需要规则库 |
容易 |
难 |
一般 |
算法复杂性 |
成熟 |
不成熟 |
成熟 |
技术成熟度 |
容易 |
难 |
一般 |
实施难度 |
一般 |
准确 |
较难 |
分词准确性 |
快 |
慢 |
一般 |
分词速度 |
差 |
强 |
强 |
在实际使用上中文分词技术仍然存在着问题,中文文本不同于英文文本,英文文本单词之间有空格作为分隔符,而中文只有句子,段落有分隔符,因此文本分词要复杂很多。对于微博文本而言,由于存在大量的网络新词,例如围脖、豆你玩、高富帅等新词。这些网络新词、缩略语、谐音词给分词处理带来了新的挑战。
目前中文分词技术已经取得很大的进展,典型的中文分词工具有中科院的汉语词法分析系统 ICTCLAS、SCWS、IKAnalyer、NLPIR、jieba 等。本文的校园微博热点话题发现系统使用的是 jieba 中文分词工具。
2.3 特征选择及权重计算
特征选择
特征选择是为了构建模型而选择相关特征子集的过程。特征选择指的是从原始多维数据集合中选取 K 个最有效的特征使系统达到最优化。使用特征选择可以剔除不相关或亢余特征,降低数据集合的维度,提高模型准确性,使得分析特征、训练模型的时间更短。微博文本特征选择也是构建向量空间模型的前提条件。特征选择的原理图如图 2-3 所示,其具体步骤如下:
产生过程,选取特征子集。
评价函数,评价特征子集好坏。
停止准则,当评价函数值达到一个阈值后停止搜索。
验证过程,验证特征子集的有效性。
图 2-3 特征选择过程
常见的特征选择方法有文档频率、互信息、信息增益法、期望交叉熵等。
特征权重计算
特征权重计算指的是为特征空间中文本向量的每一维确定合适的数值,该数值体现了对应特征在文本中的重要程度,通常用于评估某一特征词对于文本主题的重要性。常见的做法就是统计文本的词频,根据算法计算出每一个特征合适的权重值。常见的特征权重计算方法有:布尔权重、频度权重、 TF-IDF 权重等。
布尔权重
布尔权重也叫二值权重,是比较简单的权重计算方法。特征 ti 在文本 dj 中的权重为:
基于 python TF-IDF K-means 算法的校园微博热点话题发现系统 附代码相关推荐
- 基于 K-means 算法的校园微博热点话题发现系统 完整代码 +论文
完整代码: https://download.csdn.net/download/qq_38735017/87382373 一.研究目的 微博由其 "短平快 " 的信息能力和快速传 ...
- 【毕业设计_课程设计】基于 K-means 算法的校园微博热点话题发现系统(源码+论文)
文章目录 0 前言 1 项目说明 2 开发环境 3 系统架构 4 研究结果 5 论文目录 6 项目工程 0 前言 基于 K-means 算法的校园微博热点话题发现系统 提示:适合用于课程设计或毕业设计 ...
- 计算机毕业设计 K-means 算法的校园微博热点话题发现系统(源码+论文)
文章目录 0 前言 1 项目说明 2 开发环境 3 系统架构 4 研究结果 5 论文目录 0 前言 基于 K-means 算法的校园微博热点话题发现系统 提示:适合用于课程设计或毕业设计,工作量达标, ...
- 基于Python爬虫和K-means算法的校园微博热点话题发现系统
微博由于其"短平快"的信息生产能力和快速传播能力,已经广泛流行于高校学生的日常生活中.但微博上的负面舆情信息给社会.学校和个人带来巨大的危害.由于微博的多而快特点,无法依赖人工对相 ...
- 基于 K-means 算法的校园微博热点话题发现系统
一.研究目的 微博由其 "短平快 " 的信息能力和快速传播能力 ,已广泛流行于高校学生的常生活中.但微博上的负面舆情信息给社会 .学校和个人带来巨大的危害 .由于微博的多而快特点 ...
- kmeans改进 matlab,基于距离函数的改进k―means 算法
摘要:聚类算法在自然科学和和社会科学中都有很普遍的应用,而K-means算法是聚类算法中经典的划分方法之一.但如果数据集内相邻的簇之间离散度相差较大,或者是属性分布区间相差较大,则算法的聚类效果十分有 ...
- 送你一份使用k近邻算法实现回归的实用指南(附代码、链接)
作者:AISHWARYA SINGH, AUGUST 22, 2018 翻译:赵雪尧 校对:张玲 本文约4200字,建议阅读10分钟. 本文解释了在k近邻算法工作原理的基础上,简单介绍三种计算点距离方 ...
- 基于Python opencv实现车牌识别及二维码条形码识别系统 附完整源码
完整代码:https://download.csdn.net/download/qq_38735017/87416699 原理简介 车牌字符识别使用的算法是 opencv 的 SVM opencv 的 ...
- 基于Python+Open CV的手势识别算法设计
素材资料下载: 基于Python+OpenCV的手势识别算法设计源代码材料-机器学习文档类资源-CSDN下载采用Python的集成开发环境Pycharm进行本次课程设计,在Pycharm中进行需要库( ...
最新文章
- excel 打开显示安装office自定义项 安装期间出错
- 开发日记-20190615 关键词 读书笔记《鸟哥的Linux私房菜-基础学习篇》
- 安防工程商必须知道的PoE供电真相
- static的用法及其与auto的区别小结
- python中x_python中round(x,[n])的使用
- 使用CUBA进行开发–是Spring的重大转变吗?
- 链表反转python
- python与线性代数 向量方程
- iOS关键代码遭泄露;Google正式抛弃HTTP;微博网页版出故障 | 一周业界事
- Popclip的JSON格式化扩展
- 01.业务编号规则与算法整合
- 技能大赛训练题:交换机虚拟化练习
- mapboxgl绘制3D线教程
- java版mini聊天室
- php学习笔记:登录练习(3)
- electron通过注册表打开软件
- 使用yaf+yar实现基于http的rpc服务
- linux蓝牙语音遥控器,蓝牙智能遥控器介绍
- 数据库操作之导入导出dmp
- android 远程代码,如何通过代码远程解锁Android手机