数据挖掘易犯的11个错误Word文档格式.docx
- 文档编号:22250569
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:24
- 大小:314.52KB
数据挖掘易犯的11个错误Word文档格式.docx
《数据挖掘易犯的11个错误Word文档格式.docx》由会员分享,可在线阅读,更多相关《数据挖掘易犯的11个错误Word文档格式.docx(24页珍藏版)》请在冰豆网上搜索。
也就是说,在独立于训练样本之外的测试集上进行了开集测试,并与其它广泛采用的方法进行了对比。
使用一系列好的工具和方法。
(每种工具或方法可能最多带来5%~10%的改进)。
3.提错了问题(AsktheWrongQuestion)
一般在分类算法中都会给出分类精度作为衡量模型好坏的标准,但在实际项目中我们却几乎不看这个指标。
为什么?
因为那不是我们关注的目标。
a)项目的目标:
一定要锁定正确的目标
欺诈侦测(关注的是正例!
)(Shannon实验室在国际长途电话上的分析):
不要试图在一般的通话中把欺诈和非欺诈行为分类出来,重点应放在如何描述正常通话的特征,然后据此发现异常通话行为。
b)模型的目标:
让计算机去做你希望它做的事
大多数研究人员会沉迷于模型的收敛性来尽量降低误差,这样让他们可以获得数学上的美感。
但更应该让计算机做的事情应该是如何改善业务,而不是仅仅侧重模型计算上的精度。
4.只靠数据来说话(Listen(only)totheData)
“让数据说话”没有错,关键是还要记得另一句话:
兼听则明,偏听则暗!
如果数据+工具就可以解决问题的话,还要人做什么呢?
4a.投机取巧的数据:
数据本身只能帮助分析人员找到什么是显著的结果,但它并不能告诉你结果是对还是错。
4b.经过设计的实验:
某些实验设计中掺杂了人为的成分,这样的实验结果也常常不可信。
5.使用了未来的信息(AcceptLeaksfromtheFuture)
看似不可能,却是实际中很容易犯的错误,特别是你面对成千上万个变量的时候。
认真、仔细、有条理是数据挖掘人员的基本要求。
预报(Forecast)示例:
预报芝加哥银行在某天的利率,使用神经网络建模,模型的准确率达到95%。
但在模型中却使用了该天的利率作为输入变量。
金融业中的预报示例:
使用3日的移动平均来预报,但却把移动平均的中点设在今天。
要仔细查看那些让结果表现得异常好的变量,这些变量有可能是不应该使用,或者不应该直接使用的。
给数据加上时间戳,避免被误用。
6.抛弃了不该忽略的案例(DiscountPeskyCases)
到底是“宁为鸡头,不为凤尾”,还是“大隐隐于市,小隐隐于野”?
不同的人生态度可以有同样精彩的人生,不同的数据也可能蕴含同样重要的价值。
异常值可能会导致错误的结果(比如价格中的小数点标错了),但也可能是问题的答案(比如臭氧洞)。
所以需要仔细检查这些异常。
研究中最让激动的话语不是“啊哈!
”,而是“这就有点奇怪了……”
数据中的不一致性有可能会是解决问题的线索,深挖下去也许可以解决一个大的业务问题。
在直邮营销中,在对家庭地址的合并和清洗过程中发现的数据不一致,反而可能是新的营销机会。
可视化可以帮助你分析大量的假设是否成立。
7.轻信预测(Extrapolate)
依然是辩证法中的观点,事物都是不断发展变化的。
人们常常在经验不多的时候轻易得出一些结论。
即便发现了一些反例,人们也不太愿意放弃原先的想法。
维度咒语:
在低维度上的直觉,放在高维度空间中,常常是毫无意义的。
进化论。
没有正确的结论,只有越来越准确的结论。
8.试图回答所有问题(AnswerEveryInquiry)
有点像我爬山时鼓励自己的一句话“我不知道什么时候能登上山峰,但我知道爬一步就离终点近一步。
”
“不知道”是一种有意义的模型结果。
模型也许无法100%准确回答问题,但至少可以帮我们估计出现某种结果的可能性。
9.随便地进行抽样(SampleCasually)
9a降低抽样水平。
例如,MD直邮公司进行响应预测分析,但发现数据集中的不响应客户占比太高(总共一百万直邮客户,其中超过99%的人未对营销做出响应)。
于是建模人员做了如下抽样:
把所有响应者放入样本集,然后在所有不响应者中进行系统抽样,即每隔10人抽一个放入样本集,直到样本集达到10万人。
但模型居然得出如下规则:
凡是居住在Ketchikan、Wrangell和WardCoveAlaska的人都会响应营销。
这显然是有问题的结论。
(问题就出在这种抽样方法上,因为原始数据集已经按照邮政编码排序,上面这三个地区中不响应者未能被抽取到样本集中,故此得出了这种结论)。
“喝前摇一摇!
”先打乱原始数据集中的顺序,从而保证抽样的随机性。
9b提高抽样水平。
例如,在信用评分中,因为违约客户的占比一般都非常低,所以在建模时常常会人为调高违约客户的占比(比如把这些违约客户的权重提高5倍)。
建模中发现,随着模型越来越复杂,判别违约客户的准确率也越来越高,但对正常客户的误判率也随之升高。
(问题出在数据集的划分上。
在把原始数据集划分为训练集和测试集时,原始数据集中违约客户的权重已经被提高过了)
先进行数据集划分,然后再提高训练集中违约客户的权重。
10.太相信最佳模型(BelievetheBestModel)
还是那句老话-“没有最好,只有更好!
可解释性并不一定总是必要的。
看起来并不完全正确或者可以解释的模型,有时也会有用。
“最佳”模型中使用的一些变量,会分散人们太多的注意力。
(不可解释性有时也是一个优点)
一般来说,很多变量看起来彼此都很相似,而最佳模型的结构看上去也千差万别,无迹可循。
但需注意的是,结构上相似并不意味着功能上也相似。
把多个模型集装起来可能会带来更好更稳定的结果。
数据挖掘最重要的要素是分析人员的相关业务知识和思维模式。
丰富的业务知识是设计有效的相关变量的必要条件,而分析人员的思维模式从另外一个方面也保障了设计变量的结构化和完整性。
所以我们在掌握丰富的业务知识同时,如果能够按照正确的思维模式去思考问题,将会发现解决问题并不是很困难的。
一般来说,数据挖掘主要侧重解决四类问题:
分类、聚类、关联、预测。
数据挖掘非常清晰的界定了它所能解决的几类问题。
这是一个高度的归纳,数据挖掘的应用就是把这几类问题演绎的一个过程。
下面让我们来看看它所解决的四类问题是如何界定的:
1、分类问题
分类问题属于预测性的问题,但是它跟普通预测问题的区别在于其预测的结果是类别(如A、B、C三类)而不是一个具体的数值(如55、65、75……)。
举个例子,你和朋友在路上走着,迎面走来一个人,你对朋友说:
我猜这个人是个上海人,那么这个问题就属于分类问题;
如果你对朋友说:
我猜这个人的年龄在30岁左右,那么这个问题就属于后面要说到的预测问题。
商业案例中,分类问题可谓是最多的:
∙给你一个客户的相关信息,预测一下他未来一段时间是否会离网?
∙信用度是好/一般/差?
是否会使用你的某个产品?
∙将来会成为你的高/中/低价值的客户?
∙是否会响应你的某个促销活动?
∙……
有一种很特殊的分类问题,那就是“二分”问题,显而易见,“二分”问题意味着预测的分类结果只有两个类:
如是/否;
好/坏;
高/低……;
这类问题也称为0/1问题。
之所以说它很特殊,主要是因为解决这类问题时,我们只需关注预测属于其中一类的概率即可,因为两个类的概率可以互相推导。
如预测X=1的概率为P(X=1),那么X=0的概率P(X=0)=1-P(X=1),这一点是非常重要的。
可能很多人已经在关心数据挖掘方法是怎么预测P(X=1)这个问题的了,其实并不难。
解决这类问题的一个大前提就是通过历史数据的收集,已经明确知道了某些用户的分类结果。
例如已经收集到了10000个用户的分类结果,其中7000个是属于“1”这类;
3000个属于“0”这类。
伴随着收集到分类结果的同时,还收集了这10000个用户的若干特征(指标、变量)。
这样的数据集一般在数据挖掘中被称为训练集,顾名思义,分类预测的规则就是通过这个数据集训练出来的。
训练的思路大概是这样的:
对所有已经收集到的特征/变量分别进行分析,寻找与目标0/1变量相关的特征/变量,然后归纳出P(X=1)与筛选出来的相关特征/变量之间的关系(不同方法归纳出来的关系的表达方式是各不相同的,如回归的方法是通过函数关系式,决策树方法是通过规则集)。
如需了解细节,请查阅:
决策树、Logistic回归、判别分析、神经网络、Chi-square、Gini、……等相关知识。
2、聚类问题
聚类问题不属于预测性的问题,它主要解决的是把一群对象划分成若干个组的问题。
划分的依据是聚类问题的核心。
所谓“物以类聚,人以群分”,故得名聚类。
聚类问题容易与分类问题混淆,主要是语言表达的原因,因为我们常说这样的话:
“根据客户的消费行为,我们把客户分成三个类,第一个类的主要特征是……”,实际上这是一个聚类问题,但是在表达上容易让我们误解为这是个分类问题。
分类问题与聚类问题是有本质区别的:
分类问题是预测一个未知类别的用户属于哪个类别(相当于做单选题),而聚类问题是根据选定的指标,对一群用户进行划分(相当于做开放式的论述题),它不属于预测问题。
聚类问题在商业案例中也是一个非常常见的,例如需要选择若干个指标(如价值、成本、使用的产品等)对已有的用户群进行划分:
特征相似的用户聚为一类,特征不同的用户分属于不同的类。
聚类的方法层出不穷,基于用户间彼此距离的长短来对用户进行聚类划分的方法依然是当前最流行的方法。
大致的思路是这样的:
∙首先确定选择哪些指标对用户进行聚类;
∙然后在选择的指标上计算用户彼此间的距离,距离的计算公式很多,最常用的就是直线距离(把选择的指标当作维度、用户在每个指标下都有相应的取值,可以看作多维空间中的一个点,用户彼此间的距离就可理解为两者之间的直线距离);
∙最后聚类方法把彼此距离比较短的用户聚为一类,类与类之间的距离相对比较长。
聚类分析、系统聚类、K-means聚类、欧氏距离、马氏距离等知识。
3、关联问题
说起关联问题,可能要从“啤酒和尿布”说起了。
有人说啤酒和尿布是沃尔玛超市的一个经典案例,也有人说,是为了宣传数据挖掘/数据仓库而编造出来的虚构的“托”。
不管如何,“啤酒和尿布”给了我们一个启示:
世界上的万事万物都有着千丝万缕的联系,我们要善于发现这种关联。
关联分析要解决的主要问题是:
∙一群用户购买了很多产品之后,哪些产品同时购买的几率比较高?
∙买了A产品的同时买哪个产品的几率比较高?
可能是由于最初关联分析主要是在超市应用比较广泛,所以又叫“购物篮分析”,英文简称为MBA,当然此MBA非彼MBA,意为MarketBasketAnalysis。
如果在研究的问题中,一个用户购买的所有产品假定是同时一次性购买的,分析的重点就是所有用户购买的产品之间关联性;
如果假定一个用户购买的产品的时间是不同的,而且分析时需要突出时间先后上的关联,如先买了什么,然后后买什么?
那么这类问题称之为序列问题,它是关联问题的一种特殊情况。
从某种意义上来说,序列问题也可以按照关联问题来操作。
关联分析有三个非常重要的概念,那就是“三度”:
支持度、可信度、提升度。
假设有10000个人购买了产品,其中购买A产品的人是1000个,购买B产品的人是2000个,AB同时购买的人是800个。
∙支持度:
指的是关联的产品(假定A产品和B产品关联)同时购买的人数占总人数的比例,即800/10000=8%,有8%的用户同时购买了A和B两个产品;
∙可信度:
指的是在购买了一个产品之后购买另外一个产品的可能性,例如购买了A产品之后购买B产品的可信度=800/1000=80%,即80%的用户在购买了A产品之后会购买B产品;
∙提升度:
就是在购买A产品这个条件下购买B产品的可能性与没有这个条件下购买B产品的可能性之比,没有任何条件下购买B产品可能性=2000/10000=20%,那么提升度=80%/20%=4。
关联规则、apriror算法中等相关知识。
4、预测问题
此处说的预测问题指的是狭义的预测,并不包含前面阐述的分类问题,因为分类问题也属于预测。
一般来说我们谈预测问题主要指预测变量的取值为连续数值型的情况。
例如天气预报预测明天的气温、国家预测下一年度的GDP增长率、电信运营商预测下一年的收入、用户数等?
预测问题的解决更多的是采用统计学的技术,例如回归分析和时间序列分析。
回归分析是一种非常古典而且影响深远的统计方法,最早是由达尔文的表弟高尔顿在研究生物统计中提出来的方法,它的主要目的是研究目标变量与影响它的若干相关变量之间的关系,通过拟和类似Y=aX1+bX2+……的关系式来揭示变量之间的关系。
通过这个关系式,在给定一组X1、X2……的取值之后就可以预测未知的Y值。
相对来说,用于预测问题的回归分析在商业中的应用要远远少于在医学、心理学、自然科学中的应用。
最主要的原因是后者是更偏向于自然科学的理论研究,需要有理论支持的实证分析,而在商业统计分析中,更多的使用描述性统计和报表去揭示过去发生了什么,或者是应用性更强的分类、聚类问题。
一元线性回归分析、多元线性回归分析、最小二乘法等相关知识。
数据分析也好,统计分析也好,数据挖掘也好、商业智能也好都需要在学习的时候掌握各种分析手段和技能,特别是要掌握分析软件工具!
我曾经说过,沈老师的学习方法,一般是先学软件开始,再去应用,再学会理论和原理,因为是老师,再去教给别人!
没有软件的方法就不去学了,因为学了也不能做,除非你自己会编程序。
那么在数据分析领域,都有哪些软件分析工具呢?
如何选择呢?
其实很多领域或者说分析方法都有相应的软件工具,只要你想找就应该能够找到!
这里我把软件分成纵横四个层次的的象限图来表达!
第一维度:
数据存储层——>
数据报表层——>
数据分析层——>
数据展现层
第二维度:
用户级——>
部门级——>
企业级——>
BI级
首先,存储层:
我们必须能够存储数据,对个人来讲至少应该掌握一种数据库技术,当然也不一定要熟练操作,但至少要能够理解数据的存储和数据的基本结构和数据类型,比如数据的安全性、唯一性、冗余性,表的关系,粒度,容量等,最好能够理解SQL查询语言的基本结构和读取等等!
∙Access2003、Access07等:
这是最基本的个人数据库,经常用于个人或部分基本的数据存储;
∙MySQL数据库,这个对于部门级或者互联网的数据库应用是必要的,这个时候关键掌握数据库的库结构和SQL语言的数据查询能力;
∙SQLServer2005或更高版本,对中小企业,一些大型企业也可以采用SQLServer数据库,其实这个时候本身除了数据存储,也包括了数据报表和数据分析了,甚至数据挖掘工具都在其中了;
∙DB2,Oracle数据库都是大型数据库了,主要是企业级,特别是大型企业或者对数据海量存储需求的就是必须的了,一般大型数据库公司都提供非常好的数据整合应用平台;
∙BI级,实际上这个不是数据库,而是建立在前面数据库基础上的,这个主要是数据库的企业应用级了,一般这个时候的数据库都叫数据仓库了,DataWarehouse,建立在DW级上的数据存储基本上都是商业智能平台,或许整合了各种数据分析,报表、分析和展现!
第二:
报表层
当企业存储了数据后,首先要解决的报表,还不是分析问题,是要能够看到,看到报表,各种各样的报表!
国内外有专门提供报表分析服务的企业和软件。
∙CrystalReport水晶报表,Bill报表,这都是全球最流行的报表工具,非常规范的报表设计思想,早期商业智能其实大部分人的理解就是报表系统,不借助IT技术人员就可以获取企业各种信息——报表。
而且很多数据库内置的报表也是采用CR报表的开发版嵌入的!
∙Tableau软件,这个软件是近年来非常棒的一个软件,当然它已经不是单纯的数据报表软件了,而是更为可视化的数据分析软件,因为我经常用它来从数据库中进行报表和可视化分析,先暂列在报表层;
这个软件从3.0开始,现在已经有了5.1版本,两年的时间已经到了服务器和Web方式了!
当然,如果企业有上万张报表,需要好好管理起来,还有安全性,并发请求等,就需要有Server版;
博易智讯公司专门提供CrystalReport和CrystalReportServer版销售和软件服务;
第三:
数据分析层
这个层其实有很多分析工具,当然我们最常用的就是Excel,我经常用的就是统计分析和数据挖掘工具;
∙Excel软件,首先版本越高越好用这是肯定的;
当然对Excel来讲很多人只是掌握了5%Excel功能,Excel功能非常强大,甚至可以完成所有的统计分析工作!
但是我也常说,有能力把Excel玩成统计工具不如专门学会统计软件;
∙SPSS软件:
当前版本是18,名字也改成了PASWStatistics;
我从3.0开始Dos环境下编程分析,到现在版本的变迁也可以看出SPSS社会科学统计软件包的变化,从重视医学、化学等开始越来越重视商业分析,现在已经成为了预测分析软件。
∙Clementine软件:
当前版本13.0,数据挖掘工具,我从6.0开始用,到了13版,已经越来越多的提高了更多有好的建模工具,现在改名叫PASWModeler13建模器了。
而且与SPSS统计功能有了更多的整合,数据处理也更加灵活和好用。
∙SAS软件:
SAS相对SPSS其实功能更强大,SAS是平台化的,EM挖掘模块平台整合,相对来讲,SAS比较难学些,但如果掌握了SAS会更有价值,比如离散选择模型,抽样问题,正交实验设计等还是SAS比较好用,另外,SAS的学习材料比较多,也公开,会有收获的!
当然,我主要是采用SPSS和Clementine,有时候就是习惯,当然会了一种软件在学其他的也不是很困难!
∙JMP分析:
SAS的一个分析分支
∙XLstat:
Excel的插件,可以完成大部分SPSS统计分析功能
∙Ucinet社会网分析软件:
SNA社会网络分析是非常流行和有价值的分析工具和方法,特别是从关系角度进行分析社会网络,关系分析非常重要,过去我们都是属性数据分析
第四:
表现层
最近我一直在研究数据可视化技术,一方面是因为Excel大家有需求,另一方面就是我第一个购买了Xcelsius,也写了《Excel高级应用与数据分析》和《数据展现的艺术——Xcelsius》。
这个领域的软件,特别是一些小工具非常有价值!
∙PowerPoint软件:
这个没得说了,大部分人都是用PPT写报告;
∙Visio、SmartDraw软件:
这些都是非常好用的流程图、营销图表、地图等,而且从这里可以得到很多零件;
∙SwiffChart软件:
制作图表的软件,生成的是Flash;
∙ColorWheel软件:
配色软件
∙Yed软件:
网络关系图、流程图和图形分析软件,类似SNA分析,我经常用来设计流程图,还有就是分析优化关系图;
∙Netdraw软件:
这是社会网络分析展现软件,主要是可视化网络关系图的,读取Ucinet软件;
∙Mindmanager软件:
思维导图,非常好的软件,可以把非线性思维很快构建起来,并且项目组织管理、报告设计构想都可以应用,直接生成PPT等,当然这个软件功能非常强大,我的学生都用它来做笔记和会议记录;
∙Xcelsius软件:
Dashboard制作和数据可视化报表工具,可以直接读取数据库,在Excel里建模,互联网展现,最大特色还是可以在PPT中实现动态报表;
这个是我最希望应用的一个软件工具,非常有价值!
最后,需要说明的是,我这样的分层分类并不是区分软件,只是想说明软件的应用,其实每个层次的软件都是相互融合的,追求:
平台化,整合化,智能化,可视化,专业化,都是各有特色;
价格也不同,有免费的,有上百万的;
有单机版的,有服务器版的;
有正版的,有盗版的!
有时候我们把数据库就用来进行报表分析,有时候报表就是分析,有时候分析就是展现;
当然有时候展现就是分析,分析也是报表,报表就是数据存储了!
没有最好,只有更好,适合你的就是最好的!
其实还有很多数据分析软件:
∙AMOS软件:
结构方程式模型SEM,实证研究和理论模型的重要分析工具,从事学术研究的人,特别是社会科学工作者应该掌握;
∙Lisrel软件:
结构方程式模型SEM,同上!
∙HLM软件:
分层线性模型;
很多朋友问沈老师,我是学统计分析的,为什么我还是不知道如何应用呢?
问题:
沈浩老师,我有些问题想跟您请教一下,我现在从事的工作是互联网行业数据分析工作,我以前学的专业是统计学,但是工作中有很多多元统计方法并没有应用,虽然学了很多方法,但是在实际中还是有点不知道如何运用?
我应该从哪些方面着手?
请指教!
谢谢!
相信,这个朋友的问题带有普遍性,其实我在前面的文章中或多或少的解释了数据分析的学习方法,但是可能还是有些建议可以给朋友们,当然,我一直强调每个人都有自己的学习路径,适合自己的才是最好的。
我经常这么说:
学数学的不一定会统计分析,学统计的不一定就会数据分析!
为什么这么说呢?
因为社会科学!
特别是企业经营分析、市场研究等领域
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 挖掘 11 错误
![提示](https://static.bdocx.com/images/bang_tan.gif)