机器学习之基于文本内容的垃圾短信识别

本文介绍了一种使用机器学习方法识别垃圾短信的实践,包括数据探索、预处理、文本向量化和模型训练与评价。通过分词、去除停用词、TF-IDF权重策略,构建识别模型,旨在准确过滤垃圾短信。
摘要由CSDN通过智能技术生成

机器学习之基于文本内容的垃圾短信识别

1.背景与目标
2.数据探索
3.数据预处理
4.文本的向量表示
5.模型训练与评价

1.背景与目标

  • 我国目前的垃圾短信现状
    垃圾短信黑色利益链
    缺乏法律保护
    短信类型日益多变
    在这里插入图片描述
  • 案例目标:垃圾短信识别。
    基于短信文本内容,建立识别模型,准确地识别出垃圾短信,以解决垃圾短信过滤问题

在这里插入图片描述

2.数据探索

  • 总体流程
    在这里插入图片描述
  • 数据展示
    在这里插入图片描述
    *观察数据,请思考:
    建模前需要对文本数据做哪些处理?
    需要怎么评价模型的好坏?
  • 数据分布
    对原始80万条数据进行数据探索,发现数据中并无存在空值,进一步查看垃圾短信和非垃圾短信的分布情况。
    在这里插入图片描述
  • 欠抽样
    在这里插入图片描述
  • 数据抽取
    随机抽取上文的2W条文本处理后的数据的80%作为训练样本,其余作为测试集样本。

3.数据预处理
步骤:数据清洗----分词—添加词典去停用词—绘制词云

  • 去除空格 (空格及全角情况下的空格)
    在这里插入图片描述
  • x序列 (将银行账户、电话、固话、QQ、价格、日期替换成x序列)

在这里插入图片描述

  • 文本去重
    在数据的的储存和提取过程中,由于技术和某些客观的原因,造成了相同短信文本内容缺失等情况,因此需要对文本数据进行去重,去重即仅保留重复文本中的一条记录。

在这里插入图片描述

  • 中文分词
    中文分词是指以词作为基本单元,使用计算机自动对中文文本进行词语的切分,即使词之间有空格,这样方便计算机识别出各语句的重点内容。
    在这里插入图片描述

  • 正向最大匹配法
    在这里插入图片描述

  • NLP概率图:HMM针对中文分词应用-Viterbi算法
    利用Viterbi算法找出一条概率最大路径。
    在这里插入图片描述

  • python 结巴分词(jieba)支持三种分词模式
    支持繁体分词
    支持自定义词典

  • 停用词过滤
    中文表达中最常用的功能性词语是限定词,如“的”、“一个”、“这”、“那”等。这些词语的使用较大的作用仅仅是协助一些文本的名词描述和概念表达,并没有太多的实际含义。
    而大多数时候停用词都是非自动生产、人工筛选录入的,因为需要根据不同的研究主题人为地判断和选择合适的停用词语。
    在这里插入图片描述

  • 绘制词云图
    词云图是文本结果展示的有利工具,通过词云图的展示可以对短信文本数据分词后的高频词予以视觉上的强调突出效果,使得阅读者一眼就可获取到主旨信息。
    在这里插入图片描述垃圾短信

在这里插入图片描述 正常短信

如何将文本数据放入模型?
在这里插入图片描述
4.文本的向量表示

  • 文本分类实例
    1.'My dog has flea problems, help please.’
    2.'Maybe not take him to dog park is stupid.’
    3.'My dalmation is so cute. I love him.’
    4.'Stop posting stupid worthless garbage.’
    5.'Mr licks ate mu steak, what can I do?.’
    6.'Quit buying worthless dog food stupid’
    labels = [0,1,0,1,0,1] #文档标签:是否是消极情感
  • One-Hot表达
    在这里插入图片描述
    在这里插入图片描述
  • TF-IDF权重策略
    在这里插入图片描述

权重策略文档中的高频词应具有表征此文档较高的权重,除非该词也是高文档频率词
TF:Term frequency即关键词词频,是指一篇文档中关键词出现的频率
在这里插入图片描述
IDF:Inverse document frequency指逆向文本频率,是用于衡量关键词权重的指数,由公式

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值