热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

舆情监控系统——step2.利用SVM实现中文文本分类

先放GitHub代码,如果觉得写得不错,记得加个star哦,嘻嘻~基本流程1、准备好数据食材、去停用词并利用结巴(jieba)进行分词处理数据食材选用参考:NLP中必不可少的语料资

先放GitHub代码,如果觉得写得不错,记得加个star哦,嘻嘻~

基本流程

1、准备好数据食材、去停用词并利用结巴(jieba)进行分词处理

数据食材选用参考:NLP中必不可少的语料资源

jieba分词模块参考官方文档啦~

# 参照代码中的cutWords.py文件

2、利用卡方检验特征选择

卡方检验:在构建每个类别的词向量后,对每一类的每一个单词进行其卡方统计值的计算。
1. 首先对卡方 检验所需的 a、b、c、d 进行计算。
a 为在这个分类下包含这个词的文档数量;
b 为不在该分类下包含这个词的文档数量;
c 为在这个分类下不包含这个词的文档数量;
d 为不在该分类下,且不包含这个词的文档数量。
2. 然后得到该类中该词的卡方统计值
公式为 float(pow((a*d – b*c), 2)) /float((a+c) * (a+b) * (b+d) * (c+d))。
3. 对每一类别的所有词按卡方值进行排序,取前 k 个作为该类的特征值,这里我们取 k 为 1000

# featureSelection.py

3、利用TF*IDF算法进行特征权重计算

TF-IDF算法

  • 全称叫 Term Frequency-Inverse Document Frequency 词频-逆文档频率算法
  • 主要用于关键词抽取
  • 优点:每个词的权重与特征项在文档中出现的频率成正比,与在整个语料中出现该特征项的文档数成反比。
  • 原理解说:
    《舆情监控系统——step2.利用SVM实现中文文本分类》
    训练文本的特征向量表示数据在 train.svm文件中,测试文本的特征向量表示数据在test.svm 中。

# featureWeight.py

3、基于训练文本的特征向量数据,使用LIBSVM库训练SVM 模型

使用libsvm对train.svm进行模型训练,和对test.svm模型进行预测

测试命令:

对train.svm文件数据进行缩放到[0,1]区间
./svm-scale -l 0 -u 1 train.svm > trainscale.svm
对test.svm文件数据进行缩放到[0,1]区间
./svm-scale -l 0 -u 1 test.svm > testscale.svm
对trainscale.svm 文件进行模型训练
./svm-train -s 1 trainscale.svm trainscale.model
对testscale.svm 文件进行模型预测,得到预测结果,控制台会输出正确率
./svm-predict testscale.svm trainscale.model testscale.result

4、对于测试集进行特征向量表示,代入训练得到的 SVM 模型中进行预测分类
预测结果:92%
《舆情监控系统——step2.利用SVM实现中文文本分类》

目前这个阶段,能够讲到这个程度,以后在补充吧,小明酱撤退了~


推荐阅读
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • GPT-3发布,动动手指就能自动生成代码的神器来了!
    近日,OpenAI发布了最新的NLP模型GPT-3,该模型在GitHub趋势榜上名列前茅。GPT-3使用的数据集容量达到45TB,参数个数高达1750亿,训练好的模型需要700G的硬盘空间来存储。一位开发者根据GPT-3模型上线了一个名为debuid的网站,用户只需用英语描述需求,前端代码就能自动生成。这个神奇的功能让许多程序员感到惊讶。去年,OpenAI在与世界冠军OG战队的表演赛中展示了他们的强化学习模型,在限定条件下以2:0完胜人类冠军。 ... [详细]
  • 机器学习之数据均衡算法种类大全+Python代码一文详解
    目录前言一、为什么要做数据均衡?二、数据场景1.大数据分布不均衡2.小数据分布不均衡三、均衡算法类型1.过采样2.欠采样3.组合采样四、算法具体种类1 ... [详细]
  • 使用机器学习的疾病预测原文:https://www.gees ... [详细]
  • 开源真香 离线识别率高 Python 人脸识别系统
    本文主要介绍关于python,人工智能,计算机视觉的知识点,对【开源真香离线识别率高Python人脸识别系统】和【】有兴趣的朋友可以看下由【000X000】投稿的技术文章,希望该技术和经验能帮到 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文介绍了Android 7的学习笔记总结,包括最新的移动架构视频、大厂安卓面试真题和项目实战源码讲义。同时还分享了开源的完整内容,并提醒读者在使用FileProvider适配时要注意不同模块的AndroidManfiest.xml中配置的xml文件名必须不同,否则会出现问题。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 前言:拿到一个案例,去分析:它该是做分类还是做回归,哪部分该做分类,哪部分该做回归,哪部分该做优化,它们的目标值分别是什么。再挑影响因素,哪些和分类有关的影响因素,哪些和回归有关的 ... [详细]
  • cs231n Lecture 3 线性分类笔记(一)
    内容列表线性分类器简介线性评分函数阐明线性分类器损失函数多类SVMSoftmax分类器SVM和Softmax的比较基于Web的可交互线性分类器原型小结注:中文翻译 ... [详细]
  • 在本教程中,我们将看到如何使用FLASK制作第一个用于机器学习模型的RESTAPI。我们将从创建机器学习模型开始。然后,我们将看到使用Flask创建AP ... [详细]
  • 【论文】ICLR 2020 九篇满分论文!!!
    点击上方,选择星标或置顶,每天给你送干货!阅读大概需要11分钟跟随小博主,每天进步一丢丢来自:深度学习技术前沿 ... [详细]
  • 支持向量机训练集多少个_25道题检测你对支持向量机算法的掌握程度
    介绍在我们学习机器算法的时候,可以将机器学习算法视为包含刀枪剑戟斧钺钩叉的一个军械库。你可以使用各种各样的兵器,但你要明白这些兵器是需要在合适的时间合理 ... [详细]
  • http:hi.baidu.comsuperdxfblogitemb169cc1686d38a4f21a4e9ee.html最近用了这两种software去测试打手机, ... [详细]
author-avatar
一切随缘2502885767
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有