您现在的位置:主页 > O素生活 >[讨论] 统如何分辨出垃圾邮件- 资料挖掘演算法与现实生活中

[讨论] 统如何分辨出垃圾邮件- 资料挖掘演算法与现实生活中

2020-05-27 人气:891

本文,主要想简单介绍下资料挖掘中的演算法,以及它包含的类型。然后,通过现实中触手可及的、活生生的案例,去诠释它的真实存在。

一、资料挖掘的演算法类型
资料挖掘
[讨论] 统如何分辨出垃圾邮件? 资料挖掘演算法与现实生活中
一般来说,资料挖掘的演算法包含四种类型,即分类、预测、聚类、关联。前两种属于有监督学习,后两种属于无监督学习,属于描述性的模式识别和发现。

(一)有监督学习
有监督的学习,即存在目标变数,需要探索特徵变数和目标变数之间的关係,在目标变数的监督下学习和优化演算法。例如,信用评分模型就是典型的有监督学习,目标变数为「是否违约」。演算法的目的在于研究特徵变数(人口统计、资产属性等)和目标变数之间的关係。

(1)分类演算法
分类演算法和预测演算法的最大区别在于,前者的目标变数是分类离散型(例如,是否逾期、是否肿瘤细胞、是否垃圾邮件等),后者的目标变数是连续型。一般而言,具体的分类演算法包括,逻辑回归、决策树、KNN、贝叶斯判别、SVM、随机森林、神经网路等。

(2)预测演算法
预测类演算法,其目标变数一般是连续型变数。常见的演算法,包括线性回归、回归树、神经网路、SVM等。

(二)无监督学习
无监督学习,即不存在目标变数,基于资料本身,去识别变数之间内在的模式和特徵。例如关联分析,通过资料发现项目A和项目B之间的关联性。例如聚类分析,通过距离,将所有样本划分为几个稳定可区分的群体。这些都是在没有目标变数监督下的模式识别和分析。

(1)聚类分析
聚类的目的就是实现对样本的细分,使得同组内的样本特徵较为相似,不同组的样本特徵差异较大。常见的聚类演算法包括kmeans、系谱聚类、密度聚类等。

(2)关联分析
关联分析的目的在于,找出项目(item)之间内在的联繫。常常是指购物篮分析,即消费者常常会同时购买哪些产品(例如游泳裤、防晒霜),从而有助于商家的捆绑销售。

二、基于资料挖掘的案例和应用
上文所提到的四种演算法类型(分类、预测、聚类、关联),是比较传统和常见的。还有其他一些比较有趣的演算法分类和应用场景,例如协同过滤、异常值分析、社会网路、文本分析等。下面,想针对不同的演算法类型,具体的介绍下资料挖掘在日常生活中真实的存在。下面是能想到的、几个比较有趣的、和生活紧密关联的例子。
资料挖掘
[讨论] 统如何分辨出垃圾邮件? 资料挖掘演算法与现实生活中

(一)基于分类模型的案例
这里面主要想介绍两个案例,一个是垃圾邮件的分类和判断,另外一个是在生物医药领域的应用,即肿瘤细胞的判断和分辨。
资料挖掘
(1)垃圾邮件的判别
邮箱系统如何分辨一封Email是否属于垃圾邮件?这应该属于文本挖掘的範畴,通常会採用朴素贝叶斯的方法进行判别。它的主要原理是,根据邮件正文中的单词,是否经常出现在垃圾邮件中,进行判断。例如,如果一份邮件的正文中包含「报销」、「发票」、「促销」等辞彙时,该邮件被判定为垃圾邮件的概率将会比较大。

一般来说,判断邮件是否属于垃圾邮件,应该包含以下几个步骤。

第一,把邮件正文拆解成单片语合,假设某篇邮件包含100个单词。

第二,根据贝叶斯条件概率,计算一封已经出现了这100个单词的邮件,属于垃圾邮件的概率和正常邮件的概率。如果结果表明,属于垃圾邮件的概率大于正常邮件的概率。那幺该邮件就会被划为垃圾邮件。

(2)医学上的肿瘤判断
如何判断细胞是否属于肿瘤细胞呢?肿瘤细胞和普通细胞,有差别。但是,需要非常有经验的医生,通过病理切片才能判断。如果通过机器学习的方式,使得系统自动识别出肿瘤细胞。此时的效率,将会得到飞速的提升。并且,通过主观(医生)+客观(模型)的方式识别肿瘤细胞,结果交叉验证,结论可能更加靠谱。

如何操作?通过分类模型识别。简言之,包含两个步骤。首先,通过一系列指标刻画细胞特徵,例如细胞的半径、质地、周长、面积、光滑度、对称性、凹凸性等等,构成细胞特徵的资料。其次,在细胞特徵宽表的基础上,通过搭建分类模型进行肿瘤细胞的判断。

(二)基于预测模型的案例
这里面主要想介绍两个案例。即通过化学特性判断和预测红酒的品质。另外一个是,通过搜索引擎来预测和判断股价的波动和趋势。

(1)红酒品质的判断
如何评鑒红酒?有经验的人会说,红酒最重要的是口感。而口感的好坏,受很多因素的影响,例如年份、产地、气候、酿造的工艺等等。但是,统计学家并没有时间去品尝各种各样的红酒,他们觉得通过一些化学属性特徵就能够很好地判断红酒的品质了。并且,现在很多酿酒企业其实也都这幺干了,通过监测红酒中化学成分的含量,从而控制红酒的品质和口感。

那幺,如何判断鑒红酒的品质呢?

第一步,收集很多红酒样本,整理检测他们的化学特性,例如酸性、含糖量、氯化物含量、硫含量、酒精度、PH值、密度等等。
第二步,通过分类回归树模型进行预测和判断红酒的品质和等级。

(2)搜索引擎的搜索量和股价波动
一只南美洲热带雨林中的蝴蝶,偶尔扇动了几下翅膀,可以在两周以后,引起美国德克萨斯州的一场龙捲风。你在互联网上的搜索是否会影响公司股价的波动?

很早之前,就已经有文献证明,互联网关键词的搜索量(例如流感)会比疾控中心提前1到2周预测出某地区流感的爆发。

同样,现在也有些学者发现了这样一种现象,即公司在互联网中搜索量的变化,会显着影响公司股价的波动和趋势,即所谓的投资者注意力理论。该理论认为,公司在搜索引擎中的搜索量,代表了该股票被投资者关注的程度。因此,当一只股票的搜索频数增加时,说明投资者对该股票的关注度提升,从而使得该股票更容易被个人投资者购买,进一步地导致股票价格上升,带来正向的股票收益。这是已经得到无数论文验证了的。

(三)基于关联资料分析的案例:沃尔玛的啤酒尿布
啤酒尿布是一个非常非常古老陈旧的故事。故事是这样的,沃尔玛发现一个非常有趣的现象,即把尿布与啤酒这两种风马牛不相及的商品摆在一起,能够大幅增加两者的销量。原因在于,美国的妇女通常在家照顾孩子,所以,她们常常会嘱咐丈夫在下班回家的路上为孩子买尿布,而丈夫在买尿布的同时又会顺手购买自己爱喝的啤酒。沃尔玛从资料中发现了这种关联性,因此,将这两种商品并置,从而大大提高了关联销售。

啤酒尿布主要讲的是产品之间的关联性,如果大量的资料表明,消费者购买A商品的同时,也会顺带着购买B产品。那幺A和B之间存在关联性。在超市中,常常会看到两个商品的捆绑销售,很有可能就是关联分析的结果。

(四)基于聚类分析的案例:零售客户细分
对客户的细分,还是比较常见的。细分的功能,在于能够有效的划分出客户群体,使得群体内部成员具有相似性,但是群体之间存在差异性。其目的在于识别不同的客户群体,然后针对不同的客户群体,精準地进行产品设计和推送,从而节约营销成本,提高营销效率。

例如,针对商业银行中的零售客户进行细分,基于零售客户的特徵变数(人口特徵、资产特徵、负债特徵、结算特徵),计算客户之间的距离。然后,按照距离的远近,把相似的客户聚集为一类,从而有效的细分客户。将全体客户划分为诸如,理财偏好者、基金偏好者、活期偏好者、国债偏好者、风险均衡者、渠道偏好者等。
资料挖掘
[讨论] 统如何分辨出垃圾邮件? 资料挖掘演算法与现实生活中

(五)基于异常值分析的案例:支付中的交易欺诈侦测
採用支付宝支付时,或者刷信用卡支付时,系统会实时判断这笔刷卡行为是否属于盗刷。通过判断刷卡的时间、地点、商户名称、金额、频率等要素进行判断。这里面基本的原理就是寻找异常值。如果您的刷卡被判定为异常,这笔交易可能会被终止。

异常值的判断,应该是基于一个欺诈规则库的。可能包含两类规则,即事件类规则和模型类规则。第一,事件类规则,例如刷卡的时间是否异常(凌晨刷卡)、刷卡的地点是否异常(非经常所在地刷卡)、刷卡的商户是否异常(被列入黑名单的套现商户)、刷卡金额是否异常(是否偏离正常均值的三倍标準差)、刷卡频次是否异常(高频密集刷卡)。第二,模型类规则,则是通过演算法判定交易是否属于欺诈。一般通过支付资料、卖家资料、结算资料,构建模型进行分类问题的判断。

(六)基于协同过滤的案例:电商猜你喜欢和推荐引擎
电商中的猜你喜欢,应该是大家最为熟悉的。在京东商城或者亚马逊购物,总会有「猜你喜欢」、「根据您的浏览历史记录精心为您推荐」、「购买此商品的顾客同时也购买了**商品」、「浏览了该商品的顾客最终购买了**商品」,这些都是推荐引擎运算的结果。

这里面,确实很喜欢亚马逊的推荐,通过「购买该商品的人同时购买了**商品」,常常会发现一些质量比较高、较为受认可的书。
一般来说,电商的「猜你喜欢」(即推荐引擎)都是在协同过滤演算法(Collaborative Filter)的基础上,搭建一套符合自身特点的规则库。即该演算法会同时考虑其他顾客的选择和行为,在此基础上搭建产品相似性矩阵和用户相似性矩阵。基于此,找出最相似的顾客或最关联的产品,从而完成产品的推荐。

(七)基于社会网路分析的案例:电信中的种子客户
种子客户和社会网路,最早出现在电信领域的研究。即,通过人们的通话记录,就可以勾勒出人们的关係网路。电信领域的网路,一般会分析客户的影响力和客户流失、产品扩散的关係。

基于通话记录,可以构建客户影响力指标体系。採用的指标,大概包括如下,一度人脉、二度人脉、三度人脉、平均通话频次、平均通话量等。基于社会影响力,分析的结果表明,高影响力客户的流失会导致关联客户的流失。其次,在产品的扩散上,选择高影响力客户作为传播的起点,很容易推动新套餐的扩散和渗透。

此外,社会网路在银行(担保网路)、保险(团伙欺诈)、互联网(社交互动)中也都有很多的应用和案例。
资料挖掘
(八)基于文本分析的案例
这里面主要想介绍两个案例。一个是类似「扫描王」的APP,直接把纸质文档扫描成电子文档。相信很多人都用过,这里準备简单介绍下原理。另外一个是,江湖上总是传言红楼梦的前八十回和后四十回,好像并非都是出自曹雪芹之手,这里面準备从统计的角度聊聊。

(1)字元识别:扫描王APP
手机拍照时会自动识别人脸,还有一些APP,例如扫描王,可以扫描书本,然后把扫描的内容自动转化为word。这些属于图像识别和字元识别(Optical Character Recognition)。图像识别比较複杂,字元识别理解起来比较容易些。

查找了一些资料,字元识别的大概原理如下,以字元S为例。

第一,把字元图像缩小到标準像素尺寸,例如12*16。注意,图像是由像素构成,字元图像主要包括黑、白两种像素。

第二,提取字元的特徵向量。如何提取字元的特徵,採用二维直方图投影。就是把字元(12*16的像素图)往水平方向和垂直方向上投影。水平方向有12个维度,垂直方向有16个维度。这样分别计算水平方向上各个像素行中黑色像素的累计数量、垂直方向各个像素列上的黑色像素的累计数量。从而得到水平方向12个维度的特徵向量取值,垂直方向上16个维度的特徵向量取值。这样就构成了包含28个维度的字元特徵向量。

第三,基于前面的字元特徵向量,通过神经网路学习,从而识别字元和有效分类。

(2)文学着作与统计:红楼梦归属
这是非常着名的一个争论,悬而未决。对于红楼梦的作者,通常认为前80回合是曹雪芹所着,后四十回合为高鹗所写。其实主要问题,就是想确定,前80回合和后40回合是否在遣词造句方面存在显着差异。

这事让一群统计学家比较兴奋了。有些学者通过统计名词、动词、形容词、副词、虚词出现的频次,以及不同词性之间的相关係做判断。有些学者通过虚词(例如之、其、或、亦、了、的、不、把、别、好),判断前后文风的差异。有些学者通过场景(花卉、树木、饮食、医药与诗词)频次的差异,来做统计判断。总而言之,主要通过一些指标量化,然后比较指标之间是否存在显着差异,藉此进行写作风格的判断。

4500+企业选择FineReport报表与 BI 商业智慧工具【免费下载】
opensource开发,类excel设计,全方位异质资料库整合,资料填报、Flash列印、权限控制、行动应用、客制化、交互分析、报表协同作业管理系统。
分享自:比格雅塔