您当前的位置:首页 > 政策法规

如何通过自学成为数据挖掘高手

2018-04-18 13:22:43

导读:

如何通过自学,成为数据发掘“高手”

基础篇:

1.读书《IntroductiontoDataMining》,这本书很浅显易懂,没有复杂精深的公式,很适合入门的人。另外可以用这本书做参考《DataMining:ConceptsandTechniques》。第2本比较厚,也多了1些数据仓库方面的知识。如果对算法比较喜欢,可以再浏览《IntroductiontoMachineLearning》。

2.实现经典算法。有几个部份:

a.关联规则发掘(Apriori,FPTree,etc.)

b.分类(C4.5,KNN,LogisticRegression,SVM,etc.)

c.聚类(Kmeans,DBScan,SpectralClustering,etc.)

d.降维(PCA,LDA,etc.)

e.推荐系统(基于内容的推荐,协同过滤,如矩阵分解等)

然后在公然数据集上测试,看实现的效果。可以在下面的站找到大量的公然数据集:

址:

3.熟习几个开源的工具:Weka(用于上手);LibSVM,scikit-learn,Shogun

4.到上参加几个101的比赛,学会如何将1个问题抽象成模型,并从原始数据中构建有效的特点(FeatureEngineering).

到这1步的话基本几个国内的大公司都会给你面试机会。

进阶篇:

1.读书,下面几部都是大部头,但学完进步非常大。

a.《PatternRecognitionandMachineLearning》

b.《TheElementsofStatisticalLearning》

c.《MachineLearning:AProbabilisticPerspective》

第1本比较偏Bayesian;第2本比较偏Frequentist;第3本在二者之间,但我觉得跟第1本差不多,不过加了很多新内容。固然除这几本大而全的,还有很多介绍不同领域的书,例如《BoostingFoundationsandAlgorithms》,《ProbabilisticGraphicalModelsPrinciplesandTechniques》;和理论1些的《FoundationsofMachineLearning》,《OptimizationforMachineLearning》等等。这些书的课后习题也非常有用,做了才会在自己写Paper的时候推公式。

2.读论文。

包括几个相干会议:KDD,ICML,NIPS,IJCAI,AAAI,WWW,SIGIR,ICDM;和几个相干的期刊:TKDD,TKDE,JMLR,PAMI等。跟踪新技术跟新的热门问题。固然,如果做相干research,这1步是必须的。例如我们组的风格就是上半年读Paper

,暑假找问题,秋季做实验,春节左右写/投论文。

3.跟踪热门问题。

例如最近几年的RecommendationSystem,SocialNetwork,BehaviorTargeting等等,很多公司的业务都会触及这些方面。和1些热门技术,例如现在很火的DeepLearning。

4.学习大范围并行计算的技术,例如MapReduce、MPI,GPUComputing。基本每一个大公司都会用到这些技术,由于现实的数据量非常大,基本都是在计算集群上实现的。

5.参加实际的数据发掘的比赛,例如KDDCUP,或上面的比赛。这个进程会训练你如何在1个短的时间内解决1个实际的问题,并熟习全部数据发掘项目的全进程。

6.参与1个开源项目,如上面提到的Shogun或scikit-learn还有Apache的Mahout,或为1些流行算法提供更加有效快速的实现,例照实现1个Map/Reduce平台下的SVM。这也是锻炼Coding的能力。

到这1步国内的大公司基本是想哪去哪,而且待遇也不差;如果英语好,去USA那边的公司难度也不大了。

相干讨论

1,可以先找1些数据发掘方面优秀教材来看,把1些基础且重要的东西理解清楚。R/matlab/SAS之类是都是1些工具,虽然学会使用工具挺重要,但关键还是工具后面的思想。关于自学,不知lz是不是看过下面的帖子。其中,我挺赞同帖子中pongba的‘只看好书’的看法。

2,个人觉得非常重要的1点,尽可能参与1些真实的实践项目,从实际项目/问题动身学得更快,也学得更好!数据发掘是个很宽泛的概念,触及面很广,不同利用领域的数据发掘也不1样。从1些项目作为切入点,你可以了解到哪些知识是最欠缺的,哪些最需要学的,然后再逐步扩充相干的知识。

3,估计学甚么都差不多,需要不断坚持和积累吧。

数据发掘这个东西,要看你寻求的是甚么?

注意到你是想自学?那1帮情况下,就能够理解为不是奔科研去的,看起来应当是寻求实用。

那末作为1个带了N年数据分析团队,算是有点经验的人,建议你找点实际的项目去做。

首先是要弄明白你想挖点甚么出来?如果你说不知道,抱歉,你可能还是在追科研的路。

实际项目

首先就是要明确你希望挖的东西能产生甚么业务价值,而非用甚么发掘算法,那是手段。

可以在后面再关注;要能够具体描绘你的发掘目标、价值,和发掘成果的预期展现情势,说服力如何,等等;

其次,和相干的小火伴讨论,为了挖出你想要的成果,需要利用到哪些数据?这些数据中,哪些是已有的,哪些还得想办法去搜集?其中是不是有些数据根本是不可能搜集到的?这些搜集不到的数据对你想挖的成果会有甚么影响?如果是致命影响,直接致使你的发掘成果缺少说服力,那就此歇菜,另找其他方向吧。反之,则安排计划和资源,把能搜集到的数据尽快搜集起来;

再次,根据搜集到的数据的特点和搜集进程的质量情况,清洗搜集到的数据;

根据发掘目标的情况和搜集到的数据的特点,制定发掘计划,选择适合的发掘算法;

然后,就开始挖吧;

第1轮挖完,看看成果如何?有道理吗?有说服力吗?大多数情况,你会发现,哦,晕,忘了应当把这几个因素斟酌进去了,还应当加进去这几方面的数据才能看出来。好,继续转向第2步,继续搜集数据、清洗、调算法/参数,挖出来后再评估,1般情况得这么循环N个回合;

马马虎虎出来个差不多靠谱、委曲能自圆其说的初胚,这个成果看上去像那末回事儿了。

总结1个说法出来,为了你的说法,把数据再针对性地洗上几遍,给出1个更加干净的分析成果,这个版本基本上有说服力了。

讲求1点的,再画个信息图甚么的,图文并茂,就能够初步交作业了;

在真实的项目中,还有1步,就是选取重要的评估视角和指标,根据具体的业务特点,把你的分析进程做成每周/逐日/每小时都能给个角度固定的分析报告的服务。

再往前1步,如果你对这块业务真的很熟的话,还可以针对不同类型的分析结果,能给出相应的建议应对措施,这样这此发掘的业务价值就真正明确了。你做的活儿也没有停留在“活儿”这个份儿上,而是决策支持这个级别上了。

磨刀不误砍柴工。在学习数据发掘之前应当明白几点:

数据发掘目前在中国的还没有流行开,犹如屠龙之技。

数据早期的准备通常占全部数据发掘项目工作量的70%左右。

数据发掘本身融会了统计学、数据库和机器学习等学科,其实不是新的技术。

数据发掘技术更合适业务人员学习

数据发掘适用于传统的BI没法支持的领域。

数据发掘项目通常需要重复1些毫无技术含量的工作。

如果你浏览了以上内容觉得可以接受,那末继续往下看。

学习1门技术要和行业靠拢,没有行业背景的技术如空中楼阁。技术特别是计算机领域的技术发展是宽泛且快速更替的,1般人没有这个精力和时间全方位的掌握所有技术细节。但是技术在结合行业以后就可以够独当1面了,1方面有益于捉住用户痛点和刚性需求,另外一方面能够累计行业经验,使用互联思惟跨界让你更容易获得成功。不要在学习技术时想要四平八稳,这样会失去你的核心竞争力。

1、目前国内的数据发掘人员工作领域大致可分为3类。

1)数据分析师:在具有行业数据的电商、金融、电信、咨询等行业里做业务咨询,商务智能,出分析报告。

2)数据发掘工程师:在多媒体、电商、搜索、社交等大数据相干行业里做机器学习算法实现和分析。

3)科学研究方向:在高校、科研单位、企业研究院等高大上科研机构研究新算法效力改进及未来利用。

2、说说各工作领域需要掌握的技能。  (1).数据分析师

需要有深厚的数理统计基础,但是对程序开发能力不做要求。

需要熟练使用主流的数据发掘工具如BusinessAnalyticsandBusinessIntelligenceSoftware、SPSS、EXCEL等。

需要对与所在行业有关的1切核心数据有深入的理解,和1定的数据敏感性培养。

经典图书推荐:《几率论与数理统计》、《统计学》推荐DavidFreedman版、《业务建模与数据发掘》、《数据发掘导论》、《SAS编程与数据发掘商业案例》、《Clementine数据发掘方法及利用》、《Excel2007VBA参考大全》、《IBMSPSSStatistics19StatisticalProceduresCompanion》等。

(2).数据发掘工程师

需要理解主流机器学习算法的原理和利用。

需要熟习最少1门编程语言如。

需要理解数据库原理,能够熟练操作最少1种数据库,能够明白MapReduce的原理操作和熟练使用Hadoop系列工具更好。

经典图书推荐:《数据发掘概念与技术》、《机器学习实战》、《人工智能及其利用》、《数据库系统概论》、《算法导论》、《Web数据发掘》、《Python标准库》、《thinkinginJava》、《ThinkinginC++》、《数据结构》等。

(3).科学研究方向

需要深入学习数据发掘的理论基础,包括关联规则发掘、分类算法。目标可以先吃透数据发掘10大算法各自的使用情况和优缺点。

相对SAS、SPSS来讲R语言更合适科研人员TheRProjectforStatisticalComputing,由于R软件是完全免费的,而且开放的社区环境提供多种附加工具包支持,更合适进行统计计算分析研究。虽然目前在国内流行度不高,但是强烈推荐。

可以尝试改进1些主流算法使其更加快速高效,例照实现Hadoop平台下的SVM云算法调用平台--web工程调用hadoop集群。

需要广而深的浏览世界著名会议论文跟踪热门技术。如KDD,ICML,IJCAI,AssociationfortheAdvancementofArtificialIntelligence,ICDM等等;还有数据发掘相干领域期刊:ACMTransactionsonKnowledgeDiscoveryfromData,IEEETransactionsonKnowledgeandDataEngineering,JournalofMachineLearningResearchHomepage,IEEEXplore:PatternAnalysisandMachineIntelligence,IEEETransactionson等。

可以尝试参加数据发掘比赛培养全方面解决实际问题的能力。如SigKDD,Kaggle:GofromBigDatatoBigAnalytics等。

可以尝试为1些开源项目贡献自己的代码,比如ApacheMahout:Scalablemachinelearninganddatamining,myrrix等。

经典图书推荐:《机器学习》《模式分类》《统计学习理论的本质》《统计学习方法》《数据发掘实用机器学习技术》《R语言实践》,英文素质是科研人材必备的《MachineLearning:AProbabilisticPerspective》《ScalingupMachineLearning:ParallelandDistributedApproaches》《DataMiningUsingSASEnterpriseMiner:ACaseStudyApproach》《PythonforDataAnalysis》等。

3、以下是通讯行业数据发掘工程师的工作感受。  真正从数据发掘项目实践的角度讲,沟通能力对发掘的兴趣爱好是最重要的,有了爱好才可以愿意研究,有了不错的沟通能力,才可以正确理解业务问题,才能正确把业务问题转化成发掘问题,才可以在相干不同专业人材之间清楚表达你的意图和想法,获得他们的理解和支持。

所以我认为沟通能力和兴趣爱好是个人的数据发掘的核心竞争力,是很难学到的;而其他的相干专业知识谁都可以学,算不上个人发展的核心竞争力。

说到这里可能很多数据仓库专家、程序员、统计师等等都要扔砖头了,对不起,我没有别的意思,你们的专业对数据发掘都很重要,大家本来就是1个整体的,但是作为单唯一个个体的人来讲,精力有限,时间有限,不可能这些领域都能掌握,在这类情况下,选择最重要的核心,我想应当是数据发掘技能和相干业务能力吧。这从另外一个方面也说明了为何沟通能力的重要,这些个完全不同的专业领域,想要有效有机地整合在1起进行数据发掘项目实践,你说没有好的沟通能力行吗?

数据发掘能力只能在项目实践的熔炉中提升、升华,所以随着项目学发掘是最有效的捷径。国外学习发掘的人都是1开始随着老板做项目,刚开始不懂不要紧,越不懂越知道应当学甚么,才能学得越快越有效果。我不知道国内的数据发掘学生是怎样学的,但是从上的1些论坛看,很多都是纸上谈兵,这样很浪费时间,很没有效力。

另外现在国内关于数据发掘的概念都很混乱,很多BI只是局限在报表的展现和简单的统计分析,却也号称是数据发掘;另外一方面,国内真正范围化实行数据发掘的行业是寥寥可数,其他行业的利用就只能算是小范围的,比如很多大学都有些相干的发掘课题、发掘项目,但都比较分散,而且都是处于摸索阶段,但是我相信数据发掘在中国1定是好的前景,由于这是历史发展的必定。

讲到移动方面的实践案例,如果你是来自移动的话,你1定知道国内有家叫华院分析的公司,他们的业务现在已覆盖了绝大多数中国省级移动公司的分析发掘项目,你上搜索1下应当可以找到1些详细的资料吧。我对华院分析印象最深的1点就是2002年这个公司白手起家,自己不懂不要紧,1边自学1边开始拓展客户,到现在在中国的移动通讯市场全面开花,的确佩服佩服呀。他们最开始都是用EXCEL处理数据,用肉眼比较选择比较不同的模型,你可以想象这其中的艰巨吧。

至于移动通讯的具体的数据发掘的利用,那太多了,比如不同话费套餐的制定、客户流失模型、不同服务交叉销售模型、不同客户对优惠的弹性分析、客户群体细分模型、不同客户生命周期模型、渠道选择模型、歹意讹诈预警模型,太多了,记住,从客户的需求动身,从实践中的问题动身,移动中可以发现太多的发掘项目。

最后告知你1个秘密,当你数据发掘能力提升到1定程度时,你会发现不管甚么行业,其实数据发掘的利用有大部份是重合类似的,这样你会觉得更轻松。

本站内容大部分来源于络,仅供参考,如有侵权请联系删除谢谢!

深圳废锡回收
大红袍花椒苗
山东电缆回收
猪粪处理
推荐阅读
图文聚焦