对于很多做统计的人员来说,对统计中的算法知道的不是很全面,下面就对统计中分类算法做个总结。
主要有两种:
l 归一化处理
主要通过把数据归一到一特定的区间范围,如[0,1],便于明确样本值在指标整体中的位置.
应用场景: 归一化处理基本上是所有分析计算之前必做的一个预处理.
l 标准化处理
主要是通过把数据标准到正态分布区间内,便于各FEATURE之间的计算,即考虑综合指标的之间的作用时.
应用场景: 标准化处理主要用在聚类分析中.
主要有四种常见的检验方式:
一) 连续型指标的检验
l T检验
应用场景: 判断二分类变量对一连续型指标的显著影响
前提条件: 没有,就是针对二分类变量的
原理: 判断不同水平间目标连续指标的均值是否相等
例子: 性别对某APP访问量的影响
l 单因素方差分析
应用场景: 判断多分类变量对一连续型指标的显著影响
前提条件:
1) 多分类变量
2) 各水平(分组)数据的特征:
a) 服从正态分布
b) 方差相等(方差齐次)
检验流程:
例子: 各年龄段对某APP访问量的影响
l 单因素协方差分析
应用场景: 在某一连续变量影响下,判断多分类变量对目标连续指标的显著影响
前提条件:
1) 另一连续变量对目标连续型指标有影响
2) 多分类变量
3) 各水平(分组)数据的特征:
a) 服从正态分布
b) 方差相等(方差齐次)
4) 连续变量与分类变量无交互作用
如何判断两者之间的交互作用:
1) 分别做它们与目标连续指标的回归分析, 观察斜率是否相同. 如果相同, 则无交互作用; 否则, 有交互作用
2) 直接根据AOV(Y ~ X1*X2)作回归分析, 观察综合因素X1*X2对应的概率P是否小于0.05(默认). 即T检验对应斜率等于0的概率.如果小于0.05, 则有交互作用; 否则, 无交互作用.
例子: 注册时间的影响下不同年龄段对某APP访问量的显著影响
二) 非连续型指标的检验
l 卡方检验
应用场景: 对比分类变量在不同水平下的转换率数据是否有显著差异
前提条件:
1) 目标变量为分类变量(例如: 网站用户数可分为下订单数与非下订单数)
原理: 判断目标分类变量在不同水平下差异. 这里具体的可以参考卡方公式
例子: 网站改版前后对订单的转换有无影响(订单的转换率的显著变化)
说的定性就是把连续型的数据转换成分类型的数据(即离散化或者叫水平化); 定量处理就是把分类型的数据转换成连续型的数据. 这个问题在之前, 个人一直以为: 定性处理很简单, 不就是简单地”分段”嘛! 但是定量怎么处理呢? 下面有讲, 这里着重提一下, 主要通过把”某个变量取某个水平值”的问题转换成”某个变量等于某个水平值的概率”的问题. 这就实现了量化处理。
定性与定量的处理一般都是针对特定的算法做的,比方说,在要用回归的方式来解决分类问题,而且此时解释变量中有分类型的变量,此时就需要做定量处理;又比方说,在某些不支持输入变量为分类型的变量的算法中,需要先做定性处理后才能使用该算法。
需要注意以下几个细节:
l 相关参数的理解
1) 各系数对应的P值
意义: 对应的系数是否有意义. 小于0.05(默认), 则有意义; 否则, 无意义
原理: 通过T检验, 判断各系数等0的概率. 即等于0与不等0两水平下,对目标连续指标是否有显著的影响. 小于0.05(默认), 则有显著影响(不可为0); 否则, 无显著影响(可以为0)
2) 调整后的卡方值, 即 Adjusted R-squared
意义: 整体系数对目标变量的关联性
= 0 , 则完全不相关
<0.09 , 则不相关
>0.09 且 < 0.25, 则低度相关
>0.25 且 < 0.64, 则中度相关
>0.64, 则高度相关
= 1, 则完全相关
原理: 通过卡方检验, 判断整体模型的有效性
3) F检验对应的P值
意义: 检验整体模型的参数等于0的概率
原理: 通过F检验判断整体模型的有效性
l 模型的修订
1) UPDATE方法
主要通过增加变量或者减少变量,或者对目标变量做变换(取对数或者指数等). 这是一种人为修订模型的方法.
2) STEP
主要通过减少变量的方法来使各变量都能通过T检验. 这是一种自动修订模型的方法.
l 分类型变量在回归中的处理
主要通过将分类型变量的水平取值转换成”是否等于某水平取值”的模式. 可以理解为取某个水平值的概率.
几个常用的回归方法:
主要是多变量回归
l Logic 回归
Logic回归本质上属于分类方法, 因为它的目标变量是分类型变量, 严格上说是二分类. 只是它通过特定的公式把分类问题转换成了回归问题. 将目标变量由分类型变量转换成了连续型变量, 即”等于某个水平值的概率”. 由公式计算出的值大于0.5 即为正类; 否则为负类. Logic公式可以把一个线性模型的目标值归一到0-1之间.
大概步骤:
1) 目标变量的LOGIC转化. 必要时把解释变量中的分类型也转化成连续型的.
2) 模型的修订(其中的线性部分)
3) 预测和性能的衡量
l 回归树 CART
它不仅可以处理回归问题,也可以处理分类问题. 也就是说目标变量可以是分类型变量,也可以是连续型变量. 理论上它可以处理几乎所有的分类问题.
回归树主要问题在剪枝上. 通过观察每次分裂项, 选择合适的分裂次数即可. CP值的大小基本上代表了结点的混合程度, 理论上随着分裂, CP的值是越来越小的, XERR(预测的误差)是先减小后增大, XSTD代表预测误差的标准差. 一般选择CP的原则是, 选择最小XERR值正负对应的XSTD范围内,最小的XERR对应的项.
几种常见的分类方法:
l K邻近KNN
它适合解决分类问题,但也可以解决回归问题。即目标变量可以是分类型的也可以是连续型的。
原理:通过计算与哪K个样本点最近, 就把目标点划分到K个点中目标分类最多的分类. 因为它要跟每个点做计算, 因此计算量相当大.
l 决策树(C4.5 CART)
它适合处理多分类问题, 输入可以是连续型的变量也可以是分类型的变量.属于规则性的分类方法。
1) C4.5 它是在最原始的决策树算法上做的一个改进方法, 仍然使用熵来评估分裂条件的贡献大小. 它根据取的每个水平值做分支条件, 因此是一种多叉树, 相比CART而言. 同样它的重点在后剪枝上面.
这种方法在WEKA里面有非常成熟的一套实现. 在R中可以把相应的包给IMPORT进来后, 直接调用.
2) CART 前面已经提到后, 它在这里扮演的角色就是处理分类问题了. 它使用GINI来评估分裂条件的贡献大小. 属于二叉树, 相比C4.5. 关于它的剪枝方法不多介绍了.
l 朴素贝叶斯分类
前提条件是各解释变量间相互独立, 因为在很多时候, 解释变量是无法做到完全独立的, 不过, 贝叶斯神经网络可以解决独立性问题, 只是相对要复杂很多.
原理:目标是计算X条件下取Y各水平值时的条件概率,选取其中条件概率最大的Y水平值。由于对于特定的X取值,本质上就是从训练集中取X Y联合概率分布中最大值。
适合处理二分类问题
原理:
在样本点的特征空间中寻找一个合适的超平面, 使它的MARGIN边缘最大化. 落在边缘上的样本点即为支持向量, 计算目标分类时只需要根据这些向量计算即可, 因此计算量特别小, 如果向量越多, 就越接近于KNN算法. 因此, 可以说KNN 是SVM的一种特殊.
优势:
1)在高维空间中特别有效,但维度最好不要超过样本数。
2)计算时只使用支持向量,内存利用率高
劣势:
1)维度数如果过高(远远超过样本量)效果就不好
l AdaBoost 和 随机森林
适合处理二分类问题
原理:
它们主要是通过把简单的分类器, 加上权重后组合成一个大的分类器, 然后用它来处理分类问题.
步骤:
1)用户指定一个迭代次数,初始化每个实例的权重。
2)选择简单分类器。每次迭代中,遍历每个属性的每个取值及每个条件(大于或者小于),根据它对样本实例进行划分,满足条件即为1;不满足条件即为-1。最后取误差率最小的组合条件作为简单分类器。
3)根据简单分类器的误差计算出该分类器的权重,然后再更新每个实例的权重。
4)将该简单分类器加入到组合分类器中,统计当前组合分类器的误差个数。如果误差个数达到0或者指定的下限值,就停止迭代。
l 人工神经网络
可以解决多分类问题
原理:主要分为三层,输入层、隐藏层、输出层,各层的数据都是以神经元的形式呈现的。输出层中的神经元对应到输入的维度,即有多个输入维度就有多少个神经元;隐藏层中神经元的个数作为参数的形式由应用传入,它跟分类的个数有关;输出层中神经元的个数对应到分类的个数,即如果是二分类,一个神经元就成(大于0.5为1,小于0.5为0),如果是多分类,几分类就对应几个神经元(每个神经元的输出对应一个分类,大于0.5为真,小于0.5为假,这也是将分类问题转化为线性问题的一个地方)。各层之间的关系通过一个一元一阶线性函数来关联的。在遍历每个实例的过程中,计算输出层中神经元的输出误差,以此,然后倒推计算出隐藏层的输出误差,分别更新隐藏层与输出层之间关联函数的系数和输出层与隐藏层之间关联函数的系数。
注意:
二分类器与多分类器本质上没有明显的界限, 可以重复利用二分类器来解决多分类问题, 所以分类问题不必在分类方法上有所顾虑, 注重的是分类的性能问题.
l 最简单的方式是直接观察分类器在测试集中的预测准确率大小
l 由于交叉验证需要做大量的计算,耗费大量的CPU,因此在机器能够承受的情况下,
通过交叉验证的方式来取平均预测准确率的大小,从而判断分类器的性能。
l 对于某些场景,比如在二分类问题中,应用比较关注预测为正例的正确率,此时,会经常用到ROC曲线及AUC面积来考证一个分类器的性能。这种方式主要应用在金融领域,对用户的信用度进行评估时。
补充:
1)ROC曲线是FPR(预测为正例,但为错误判断的概率)与TPR(预测为正例,而且也为正确判断的概率)曲线。FPR = FP/(TN+FP) 表示负例当中被错误地预测为正例的比例;查全率或者叫recall ,TPR = TP/(TP+FN) 表示正例当中被正确地预测为正例的比例。
2)AUC面积指的是ROC曲线下的面积,即ROC曲线与X轴(FPR)围成的面积。面积越大,分类器的性能越好。
l 对于某些场景,比如类似精准营销的问题,希望通过对全体消费者进行分类,从而得到具有较高响应率的客户群,以便实现投入产出比。这时,可以选择提升曲线或者洛伦兹曲线作为评估分类器的指标。在提升曲线中,在Y轴值尽量大的情况下X轴值不能太小。
数据分析咨询请扫描二维码
CDA数据分析师认证:CDA认证分为三个等级:Level Ⅰ、Level Ⅱ和Level Ⅲ,每个等级的报考条件如下: Le ...
2024-11-14自学数据分析可能是一条充满挑战却又令人兴奋的道路。随着数据在现代社会中的重要性日益增长,掌握数据分析技能不仅能提升你的就 ...
2024-11-14数据分析相关职业选择 数据分析领域正在蓬勃发展,为各种专业背景的人才提供了丰富的职业机会。从初学者到有经验的专家,每个人 ...
2024-11-14数据挖掘与分析在金融行业的使用 在当今快速发展的金融行业中,数据挖掘与分析的应用愈发重要,成为驱动行业变革和提升竞争力的 ...
2024-11-14学习数据挖掘需要掌握哪些技能 数据挖掘是一个不断发展的领域,它结合了统计学、计算机科学和领域专业知识,旨在从数据中提取有 ...
2024-11-14统计学作为一门基于数据的学科,其广泛的应用领域和多样的职业选择,使得毕业生拥有丰厚的就业前景。无论是在政府还是企业,统计 ...
2024-11-14在当今高速发展的技术环境下,企业正在面临前所未有的机遇和挑战。数字化转型已成为企业保持竞争力和应对市场变化的必由之路。要 ...
2024-11-13爬虫技术在数据分析中扮演着至关重要的角色,其主要作用体现在以下几个方面: 数据收集:爬虫能够自动化地从互联网上抓取大量数 ...
2024-11-13在数据分析中,数据可视化是一种将复杂数据转化为图表、图形或其他可视形式的技术,旨在通过直观的方式帮助人们理解数据的含义与 ...
2024-11-13在现代银行业中,数字化用户行为分析已成为优化产品和服务、提升客户体验和提高业务效率的重要工具。通过全面的数据采集、深入的 ...
2024-11-13在这个数据飞速增长的时代,企业若想在竞争中占据优势,必须充分利用数据分析优化其营销策略。数据不仅有助于理解市场趋势,还可 ...
2024-11-13数据分析行业的就业趋势显示出多个积极的发展方向。随着大数据和人工智能技术的不断进步,数据分析在各行各业中的应用变得越来越 ...
2024-11-13市场数据分析是一门涉及多种技能和工具的学科,对企业在竞争激烈的市场中保持竞争力至关重要。通过数据分析,企业不仅可以了解当 ...
2024-11-13数据分析与数据挖掘是数据科学领域中两个关键的组成部分,它们各有独特的目标、方法和应用场景。尽管它们经常在实际应用中结合使 ...
2024-11-13在如今这个数据驱动的时代,数据分析能力已经成为许多行业的重要技能。无论是为工作需要,还是为了职业转型,掌握数据分析都能够 ...
2024-11-13在如今这个数据驱动的时代,数据分析能力已经成为许多行业的重要技能。无论是为工作需要,还是为了职业转型,掌握数据分析都能够 ...
2024-11-13作为一名业务分析师,你肩负着将业务需求转化为技术解决方案的重任。面试这一角色时,涉及的问题多种多样,涵盖技术技能、分析能 ...
2024-11-13自学数据分析可能看似一项艰巨的任务,尤其在开始时。但是,通过一些策略和方法,你可以系统地学习和掌握数据分析的相关知识和技 ...
2024-11-10Excel是数据分析领域中的一款强大工具,它凭借其灵活的功能和易用的界面,成为了许多数据分析师和从业者的首选。无论是简单的数 ...
2024-11-10在快速发展的商业环境中,数据分析能力已经成为许多行业的核心竞争力。无论是初学者还是经验丰富的专家,搭建一个有效的数据分析 ...
2024-11-10