读书《Introduction to Data Mining》,这本书很浅显易懂,没有复杂高深的公式,很合适入门的人。另外

根底篇:

怎么经过自学,成为数据发掘“高手”?(怎么学数据挖掘)  自学 高手 数据分析 第1张

1. 读书《Introduction to Data Mining》,这本书很深化浅出,没有杂乱深邃的公式,很适宜入门的人。其他能够用这本书做参阅《Data Mining : Concepts and Techniques》。第二本比较厚,也多了一些数据仓库方面的常识。假如对算法比较喜爱,能够再阅览《Introduction to Machine Learning》。

2. 完成经典算法。有几个部分:

a. 相关规矩发掘 (Apriori, FPTree, etc.)

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

c. 聚类 (Kmeans, DBScan, Spectral Clustering, etc.)

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

e. 引荐体系 (依据内容的引荐,协同过滤,如矩阵分化等)

然后在揭露数据集上测验,看完成的作用。能够鄙人面的网站找到许多的揭露数据集:http://archive.ics.uci.edu/ml/

3. 了解几个开源的东西: Weka (用于上手); LibSVM, scikit-learn, Shogun

4. 到 https://www.kaggle.com/ 上参与几个101的竞赛,学会怎么将一个问题笼统成模型,并从原始数据中构建有用的特征 (Feature Engineering).

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

进阶篇:

1. 读书,下面几部都是大部头,但学完前进十分大。

a.《Pattern Recognition and Machine Learning》

b.《The Elements of Statistical Learning》

c.《Machine Learning: A Probabilistic Perspective》

第一本比较偏Bayesian;第二本比较偏Frequentist;第三本在两者之间,但我觉得跟第一本差不多,不过加了不少新内容。当然除了这几本大而全的,还有许多介绍不同范畴的书,例如《Boosting Foundations and Algorithms》,《Probabilistic Graphical Models Principles and Techniques》;以及理论一些的《Foundations of Machine Learning》,《Optimization for Machine Learning》等等。这些书的课后习题也十分有用,做了才会在自己写Paper的时分推公式。

2. 读论文。包含几个相关会议:KDD,ICML,NIPS,IJCAI,AAAI,WWW,SIGIR,ICDM;以及几个相关的期刊:TKDD,TKDE,JMLR,PAMI等。盯梢新技能跟新的热门问题。当然,假如做相关research,这一步是有必要的。例如咱们组的风格便是上半年读Paper,暑假找问题,秋天做试验,新年左右写/投论文。

3. 盯梢热门问题。例如最近几年的Recommendation System,Social Network,Behavior Targeting等等,许多公司的事务都会触及这些方面。以及一些热门技能,例如现在很火的Deep Learning。

4. 学习大规模并行核算的技能,例如MapReduce、MPI,GPU Computing。根本每个大公司都会用到这些技能,由于实践的数据量十分大,根本都是在核算集群上完成的。

5. 参与实践的数据发掘的竞赛,例如KDDCUP,或 https://www.kaggle.com/ 上面的竞赛。这个进程会练习你如安在一个短的时刻内处理一个实践的问题,并了解整个数据发掘项目的全进程。

6. 参与一个开源项目,如上面提到的Shogun或scikit-learn还有Apache的Mahout,或为一些盛行算法供给愈加有用快速的完成,例如完成一个Map/Reduce途径下的SVM。这也是训练Coding的才干。

到这一步国内的大公司根本是想哪去哪,并且待遇也不差;假如英语好,去US那儿的公司难度也不大了。

2条评论

1bitbp 2012-09-22 11:57

支撑者: ifas 张小耳 Candy Two shuimuyuan 白色羽毛笔 更多

自己谈不上什么高手,下面是个人的一点观点。

一,能够先找一些数据发掘方面优异教材来看,把一些根底且重要的东西了解清楚。R/matlab/SAS之类是都是一些东西,尽管学会运用东西挺重要,但要害仍是东西后边的思想。关于自学,不知lz是否看过下面的帖子。其间,我挺附和帖子中pongba的‘只看好书’的观点。

http://www.guokr.com/question/132920/?bsh_bid=98365272

二,个人觉得十分重要的一点,尽量参与一些实在的实践项目,从实践项目/问题动身学得更快,也学得更好!数据发掘是个很广泛的概念,触及面很广,不同运用范畴的数据发掘也不一样。从一些项目作为切入点,你能够了解到哪些常识是最短缺的,哪些最需求学的,然后再逐步扩大相关的常识。

三,估量学什么都差不多,需求不断坚持和堆集吧。

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

留意到你是想自学?那一帮状况下,就能够了解为不是奔科研去的,看起来应该是寻求有用。

那么作为一个带了N年数据剖析团队,算是有点经历的人,主张你找点实践的项目去做。

首要是要弄了解你想挖点什么出来?假如你说不知道,抱愧,你或许仍是在追科研的路。

实践的项目中:

首要便是要清晰你期望挖的东西能发生什么事务价值,而非用什么发掘算法,那是手法,能够在后边再重视;要能够详细描绘你的发掘方针、价值,以及发掘作用的预期展现方式,说服力怎么,等等;

其次,和相关的小伙伴评论,为了挖出你想要的作用,需求利用到哪些数据?这些数据中,哪些是现已有的,哪些还得想办法去搜集?其间是否有些数据根本是不或许搜集到的?这些搜集不到的数据关于你想挖的作用会有什么影响?假如是丧命影响,直接导致你的发掘作用缺少说服力,那就此歇菜,另找其他方向吧。反之,则组织方案和资源,把能搜集到的数据赶快搜集起来;

再次,依据搜集到的数据的特色和搜集进程的质量状况,清洗搜集到的数据;

依据发掘方针的状况和搜集到的数据的特色,拟定发掘规划,挑选适宜的发掘算法;

然后,就开端挖吧;

第一轮挖完,看看作用怎么?有道理吗?有说服力吗?大多数状况,你会发现,哦,晕,忘了应该把这几个要素考虑进去了,还应该加进去这几方面的数据才干看出来。好,持续转向第2步,持续搜集数据、清洗、调算法/参数,挖出来后再评价,一般状况得这么循环N个回合;

敷衍了事出来个差不多靠谱、牵强能无懈可击的初胚,这个作用看上去像那么回事儿了。

总结一个说法(剖析作用)出来,为了你的说法,把数据再针对性地洗上几遍,给出一个愈加洁净的剖析作用,这个版别根本上有说服力了。

考究一点的,再画个信息图什么的,图文并茂,就能够开端交作业了;

在实在的项目中,还有一步,便是选取重要的评价视角和方针,依据详细的事务特色,把你的剖析进程做成每周/每日/每小时都能给个视点固定的剖析陈述的服务。

再往前一步,假如你对这块事务真的很熟的话,还能够针对不同类型的剖析成果,能给出相应的主张应对办法(Action),这样这此发掘的事务价值就真实清晰了。你做的活儿也没有停留在“活儿”这个份儿上,而是决议计划支撑这个等级上了。

磨刀不误砍柴工。在学习数据发掘之前应该了解几点:

数据发掘现在在我国的没有盛行开,犹如屠龙之技。

数据初期的预备一般占整个数据发掘项目作业量的70%左右。

数据发掘自身交融了核算学、数据库和机器学习等学科,并不是新的技能。

数据发掘技能更适合事务人员学习(比较技能人员学习事务来的更高效)

数据发掘适用于传统的BI(报表、OLAP等)无法支撑的范畴。

数据发掘项目一般需求重复一些毫无技能含量的作业。

假如你阅览了以上内容觉得能够承受,那么持续往下看。

学习一门技能要和职业挨近,没有职业布景的技能如海市蜃楼。技能尤其是核算机范畴的技能开展是广泛且快速替换的(十年前做网页规划都能建立公司),一般人没有这个精力和时刻全方位的把握全部技能细节。可是技能在结合职业之后就能够独立自主了,一方面有利于捉住用户痛点和刚性需求,另一方面能够累计职业经历,运用互联网思想跨界让你更简略获得成功。不要在学习技能时想要八面玲珑,这样会失掉你的中心竞争力。

一、现在国内的数据发掘人员作业范畴大致可分为三类。

1)数据剖析师:在具有职业数据的电商、金融、电信、咨询等职业里做事务咨询,商务智能,出剖析陈述。

2)数据发掘工程师:在多媒体、电商、查找、交际等大数据相关职业里做机器学习算法完成和剖析。

3)科学研讨方向:在高校、科研单位、企业研讨院等巨大上科研机构研讨新算法功率改善及未来运用。

二、说说各作业范畴需求把握的技能。

(1).数据剖析师

需求有深沉的数理核算根底,可是对程序开发才干不做要求。

需求娴熟运用干流的数据发掘(或核算剖析)东西如Business Analytics and Business Intelligence Software(SAS)、SPSS、EXCEL等。

需求对与地点职业有关的全部中心数据有深化的了解,以及必定的数据敏感性培育。

经典图书引荐:《概率论与数理核算》、《核算学》引荐David Freedman版、《事务建模与数据发掘》、《数据发掘导论》、《SAS编程与数据发掘商业事例》、《Clementine数据发掘办法及运用 》、《Excel 2007 VBA参阅大全》、《IBMSPSSStatistics 19 Statistical Procedures Companion》等。

(2).数据发掘工程师

需求了解干流机器学习算法的原理和运用。

需求了解至少一门编程言语如(Python、C、C++、Java、Delphi等)。

需求了解数据库原理,能够娴熟操作至少一种数据库(Mysql、SQL、DB2、Oracle等),能够了解MapReduce的原理操作以及娴熟运用Hadoop系列东西更好。

经典图书引荐:《数据发掘概念与技能》、《机器学习实战》、《人工智能及其运用》、《数据库体系概论》、《算法导论》、《Web数据发掘》、《 Python规范库》、《thinking in Java》、《Thinking in C++》、《数据结构》等。

(3).科学研讨方向

需求深化学习数据发掘的理论根底,包含相关规矩发掘 (Apriori和FPTree)、分类算法(C4.5、KNN、Logistic Regression、SVM等) 、聚类算法 (Kmeans、Spectral Clustering)。方针能够先吃透数据发掘10大算法各自的运用状况和优缺点。

相对SAS、SPSS来说R言语更适合科研人员The R Project for Statistical Computing,由于R软件是彻底免费的,并且敞开的社区环境供给多种附加东西包支撑,更适合进行核算核算剖析研讨。尽管现在在国内盛行度不高,可是强烈引荐。

能够测验改善一些干流算法使其愈加快速高效,例如完成Hadoop途径下的SVM云算法调用途径--web 工程调用hadoop集群。

需求广而深的阅览国际闻名会议论文盯梢热门技能。如KDD,ICML,IJCAI,Association for the Advancement of Artificial Intelligence,ICDM等等;还有数据发掘相关范畴期刊:ACM Transactions on Knowledge Discovery from Data,IEEE Transactions on Knowledge and Data Engineering,Journal of Machine Learning Research Homepage,IEEE Xplore: Pattern Analysis and Machine Intelligence, IEEE Transactions on等。

能够测验参与数据发掘竞赛培育全方面处理实践问题的才干。如Sig KDD,Kaggle: Go from Big Data to Big Analytics等。

能够测验为一些开源项目奉献自己的代码,比方Apache Mahout: Scalable machine learning and data mining,myrrix等(详细能够在SourceForge或GitHub.上发现更多好玩的项目)。

经典图书引荐:《机器学习》 《形式分类》《核算学习理论的实质》《核算学习办法》《数据发掘有用机器学习技能》《R言语实践》,英文本质是科研人才必备的《Machine Learning: A Probabilistic Perspective》《Scaling up Machine Learning : Parallel and Distributed Approaches》《Data Mining Using SAS Enterprise Miner : A Case Study Approach》《Python for Data Analysis》等。

三、以下是通讯职业数据发掘工程师的作业感触。

真实从数据发掘项目实践的视点讲,交流才干对发掘的兴趣喜好是最重要的,有了喜好才干够乐意研究,有了不错的交流才干,才干够正确了解事务问题,才干正确把事务问题转化成发掘问题,才干够在相关不同专业人才之间清楚表达你的目的和主意,获得他们的了解和支撑。所以我以为交流才干和兴趣喜好是个人的数据发掘的中心竞争力,是很难学到的;而其他的相关专业常识谁都能够学,算不上个人开展的中心竞争力。

提到这儿或许许多数据仓库专家、程序员、核算师等等都要扔砖头了,对不住,我没有其他意思,你们的专业关于数据发掘都很重要,咱们原本便是一个全体的,可是作为独自一个个别的人来说,精力有限,时刻有限,不或许这些范畴都能把握,在这种状况下,挑选最重要的中心,我想应该是数据发掘技能和相关事务才干吧(从其他的一个极点的比方,咱们能够看, 比方一个迷你型的发掘项目,一个懂得商场营销和数据发掘技能的人应该能够担任。这其间他尽管不明白数据仓库,可是简略的Excel就足以担任高打6万个样本的数据处理;他尽管不明白专业的展现展现技能,可是只需他自己看的懂就行了,这就无需什么展现展现;前面说过,核算技能是应该把握的,这对一个人的迷你项目很重要;他尽管不明白编程,可是专业发掘东西和发掘技能满足让他练习的;这样在迷你项目中,一个懂得发掘技能和商场营销事务才干的人就能够圆满完成了,乃至在一个数据源中依据事务需求能够无穷无尽的发掘不同的项目思路,试问便是这个迷你项目,单纯的一个数据仓库专家、单纯的一个程序员、单纯的一个展现展现技师、乃至单纯的一个发掘技能专家,都是无法担任的)。这从另一个方面也说明晰为什么交流才干的重要,这些个彻底不同的专业范畴,想要有用有机地整合在一起进行数据发掘项目实践,你说没有好的交流才干行吗?

数据发掘才干只能在项目实践的熔炉中提高、提高,所以跟着项目学发掘是最有用的捷径。国外学习发掘的人都是一开端跟着老板做项目,刚开端不明白没关系,越不明白越知道应该学什么,才干学得越快越有作用。我不知道国内的数据发掘学生是怎样学的,可是从网上的一些论坛看,许多都是坐而论道,这样很浪费时刻,很没有用率。

其他现在国内关于数据发掘的概念都很紊乱,许多BI仅仅限制在报表的展现和简略的核算剖析,却也声称是数据发掘;另一方面,国内真实规模化施行数据发掘的职业是寥寥无几(银行、保险公司、移动通讯),其他职业的运用就只能算是小规模的,比方许多大学都有些相关的发掘课题、发掘项目,但都比较涣散,并且都是处于探索阶段,可是我信任数据发掘在我国必定是好的远景,由于这是前史开展的必定。

讲到移动方面的实践事例,假如你是来自移动的话,你必定知道国内有家叫华院剖析的公司(声明,我跟这家公司没有任何关系,我仅仅站在数据发掘者的视点剖析过我国大多数的声称数据发掘服务公司,觉得华院还不错,比许多名不副实的大公司来得更实践),他们的事务现在现已覆盖了绝大多数我国省级移动公司的剖析发掘项目,你上网查找一下应该能够找到一些详细的材料吧。我对华院剖析形象最深的一点便是2002年这个公司自食其力,自己不明白没关系,一边自学一边开端拓宽客户,到现在在我国的移动通讯商场全面开花,确实敬服敬服呀。他们最开端都是用EXCEL处理数据,用肉眼比较挑选比较不同的模型,你能够幻想这其间的困难吧。

至于移动通讯的详细的数据发掘的运用,那太多了,比方不同话费套餐的制定、客户丢失模型、不同服务穿插出售模型、不同客户对优惠的弹性剖析、客户集体细分模型、不同客户生命周期模型、途径挑选模型、歹意诈骗预警模型,太多了,记住,从客户的需求动身,从实践中的问题动身,移动中能够发现太多的发掘项目。最终告知你一个隐秘,当你数据发掘才干提高到必定程度时,你会发现无论什么职业,其实数据发掘的运用有大部分是重合的类似的,这样你会觉得更轻松。

转载请说明出处
知优网 » 怎么经过自学,成为数据发掘“高手”?(怎么学数据挖掘)

发表评论

您需要后才能发表评论