黑客挖掘机们,数据挖掘具体学什么!有人要学这个

基本黑客技术&
黑客态度是重要的,但技术更加重要。态度无法替代技术,在你被别的黑客称为黑客之前,有一套基本的技术你必须掌握。 这套基本技术随着新技术的出现和老技术的过时也随时间在缓慢改变。例如,过去包括使用机器码编程,而知道最近才包括了HTML语言。但现在明显包括以下技术:&
1 学习如何编程 这当然是最基本的黑客技术。如果你还不会任何计算机语言,我建议你从Python开始。它设计清晰,文档齐全,对初学者很合适。尽管是一门很好的初级语言,它不仅仅只是个玩具。它非常强大,灵活,也适合做大型项目。
但是记住,如果你只会一门语言,你将不会达到黑客所要求的技术水平,甚至也不能达到一个普通程序员的水平---你需要学会如何以一个通用的方法思考编程问题,独立于任何语言。要做一名真正的黑客,你需要学会如何在几天内通过一些手册,结合你现在所知,迅速掌握一门新语言。这意味着你应该学会几种不同的语言。
如果要做一些重要的编程,你将不得不学习C语言,Unix的核心语言。其他对黑客而言比较重要的语言包括Perl和LISP。 Perl很实用,值得一学;它被广泛用于活动网页和系统管理,因此即便你从不用Perl写程序,至少也应该能读懂它。 LISP 值得学习是因为当你最终掌握了它你会得到丰富的经验;这些经验使你在以后的日子里成为一个更好的程序员,即使你实际上可能很少使用LISP本身。&
当然,实际上你最好四种都会。 (Python, C, Perl, and LISP). 除了是最重要的四种基本语言,它们还代表了四种非常不同的编程方法,每种都会让你受益非浅。
这里我无法完整地教会你如何编程---这是个复杂的活儿。但我可以告诉你,书本和课程也不能作到。几乎所有最好的黑客都是自学成材的。真正能起作用的就是去亲自读代码和写代码。
学习如何编程就象学习用自然语言写作一样。最好的做法是读一些大师的名著,试着自己写点东西,再读些,再写点,又读些,又写点....如此往复,直到你达到自己在范文中看到的简洁和力量。
过去找到好的代码去读是困难的,因为很少有大型程序的可用源代码能让新手练手。这种状况已经得到了很大的改善;现在有很多可用的开放源码软件,编程工具和操作系统(全都有黑客写成)。这使我们自然地来到第二个话题...&
2 得到一个开放源码的Unix并学会使用、运行它
我假设你已经拥有了一台个人计算机或者有一个可用的( 今天的孩子们真幸福 :-) )。新手们最基本的一步就是得到一份Linux或BSD-Unix,安装在个人计算机上,并运行它。&
当然,这世界上除了Unix还有其他操作系统。但它们都是以二进制形式发送的---你无法读到它的源码,更不可能修改它。尝试在DOS或Windows的机器上学习黑客技术,就象是在腿上绑了铁块去学跳舞。
除此之外,Unix还是Internet的操作系统。你可以不知道Unix而学会用Internet,但不懂它你就无法成为一名Internet黑客。因为这个原因,今天的黑客文化在很大程度上是以Unix为中心的。(这点并不总是真的,一些很早的黑客对此很不高兴,但Unix和Internet之间的共生关系已是如此之强,甚至连微软也无可奈何)
So,装一个Unix---我个人喜欢Linux,不过也有其他选择。(你也可以在同一台机器上同时运行DOS,Windows和Linux)学会它。运行它。用它跟Internet对话。读它的代码。试着去修改他。你会得到比微软操作系统上好的多的编程工具(包括C,Lisp,
Python, and Perl),你会得到乐趣,并将学到比你想象的更多知识。
关于学习Unix的更多信息,请看 The Loginataka.&
要得到Linux,请看: 哪里能得到 Linux.&
3 学会如何使用WWW和写HTML&
大多黑客文化建造的东西都在你看不见的地方发挥着作用,帮助工厂、办公室和大学正常运转,表面上很难看到它对他人的生活的影响。Web是一个大大的例外。即便政客也同意,这个巨大而耀眼的黑客玩具正在改变整个世界。单是这个原因(还有许多其它的), 你就需要学习如何掌握Web。
这并不是仅仅意味着如何使用浏览器(谁都会),而是要学会如何写HTML,Web的标记语言。如果你不会编程,写HTML会教你一些有助于学习的思考习惯。因此,先建起自己的主页。&
但仅仅建一个主页也不能使你成为一名黑客。 Web里充满了各种网页。
多数是无意义的,零信息量垃圾。 要想有价值,你的网页必须有内容---必须有趣或对其它黑客有用。
这样,我们来到下一个话题.... 黑客文化中的地位大教堂与集市”,解释了许多Linux和开放源码文化的运做原理。我还在它的续集“大教堂与集市”,解释了许多Linux和开放源码文化的运做原理。我还在它的续集“开拓智域”一文中有更直接的论述。&
FAQ(常问问题解答)&
问:你会教我如何做黑客吗?
自从第一次发布此页,我每周都会得到一些请求,要我“教会他如何做黑客”;遗憾的是,我没有足够的时间和精力来做这个;我自己的编程项目已经占用了我110%的时间。&
甚至即便我想教你也不可能,黑客基本上是一项需要你自行修炼的的态度和技术。你会发现即使真正的黑客想帮助你,如果你乞求他们填鸭一样教你的话,你不会赢得他们的尊敬。 首先去学习。显示你在尝试,你能靠自己去学习。然后再去向黑客们请教问题。
问:你会帮我“黑”掉一个站点吗?或者教我怎么黑它?&
No. 任何在读完FAQ后还问此问题人,都是愚不可及的家伙,即使有时间我也不会理睬。 任何发给我的此类mail都会被忽略或被痛斥。
问:哪里能找到真正的可以与之交流的黑客?&
最佳办法是就近参加一个Unix或Linux的用户组,参加他们的会议。
问:我该先学哪种语言?&
HTML, 如果你还不会的话. 但它不是一个真正的编程语言。当你准备编程时,我建议你从 Python开始. 会有很多人向你推荐Perl,它比Python还受欢迎,但却难学一些。
C 是非常重要的,但它却是最难学的。不要一开始就尝试学C。
问:开放源码的自由软件不会使程序员饿肚子吗?
这似乎不大可能---到目前,开放源码软件产业创造了而不是消灭了大量工作机会。 如果写一个程序比不写一个程序只是个纯粹经济上的收益的话,无论它是否免费,只要它被完成,程序员都会从中得到回报。而且,无论软件是由多么的free的方法开发的,对更新的软件应用的需求总是会有的。
问:我从何学起?哪里有免费的Unix?&
本页的其他地方指向最常用的免费Unix。要做一名黑客,你需要自立自强,以及自我教育的能力。 现在开始吧
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:48691次
积分:1222
积分:1222
排名:千里之外
原创:52篇
转载:15篇
(3)(1)(2)(3)(1)(13)(4)(1)(4)(7)(3)(2)(8)(1)(5)(3)(25)(14)(2)(5)(2)机器学习,数据挖掘在研究生阶段大概要学些什么?_知识号
说三道四 最新新闻话题新闻专题评论
> 新闻内容
机器学习,数据挖掘在研究生阶段大概要学些什么?
机器学习,数据挖掘在研究生阶段大概要学些什么?能给一个梗概或者方向么?最好可以列出主要的课程或者相关资源,谢谢学习数据挖掘机器学习研究生知乎用户,薛定谔的猫这个方面数学要求较高。建议,概率论统计学,代数好好学学,以及探讨各种优化问题。是数学,你都读读吧,没有坏处的。基础是数学,这是真的,没有扎实的基,
机器学习,数据挖掘在研究生阶段大概要学些什么?能给一个梗概或者方向么? 最好可以列出主要的课程或者相关资源,谢谢学习数据挖掘机器学习研究生知乎用户,薛定谔的猫这个方面数学要求较高。建议,概率论统计学,代数好好学学,以及探讨各种优化问题。是数学,你都读读吧,没有坏处的。基础是数学,这是真的,没有扎实的基本功,这方面的东西看起来会很费劲。给你推荐一个系列的课程?只推荐个机器学习的课程吧,其他很多相关的学科大多都要用到机器学习的思想。stanford的机器学习课程,很有名了。斯坦福大学公开课 :机器学习课程Coursera.org以及这方面的笔记Coursera公开课笔记: 斯坦福大学机器学习第一课“引言(Introduction)”JerryLead的很牛翻译过来的笔记(全套,可以研读下)Machine Learning一些博客推荐Free Mind(pluskid写的一系列很厉害)Free Mind机器学习 - 标签(leftnoeasy)Rachel Zhang的专栏http:///page/2/Tutorials by Avi KakStatistical Data Mining Tutorials这本书很有名,忘了说Pattern Recognition and Machine Learning/Christopher M. Bishop-图书与这方面相关的其他课程模式识别数据挖掘机器视觉自然语言推荐系统神经网络概率图论人工智能等等有相通的内容,很多都在用机器学习的方法,都可以看看。。。随便搜索就知道,这方面大多都是在搞统计学习方法之类。。。所以,就一句话,数学在这个方向很重要。知乎用户,玩的不是科研,是梦想这是一个很难回答的问题,每个人的基础不同起点也不同,需要学的东西也完全不一样。先说我的观点:不要想一下子吃成一个胖子;很多时候,想吃的越多反而什么也消化不了。让我们先看一道面试题(非原创):一条路上有N棵树,每棵树都有两个指标,一个是位置a_i(是整数),一个是体积w_i(是整数),现在要把这些树砍下来,运到K个仓库,我该如何选择这些仓库的位置(也是整数),使得搬运的成本尽量小呢?假设理想情况下,每棵树的搬运成本为树的体积 x 搬运的位移^2。如果你看完这个题目,不能条件反射的告诉我你的思路,你其实并没有真正懂什么是聚类算法(K-means)。每个机器学习算法,犹如这道题一样具有两面性,一面是算法,也就是怎么算;一面是优化目标,为什么这么算。不能区分的看待机器学习的两面性,就不能明白为什么一群号称做机器学习研究的人整天却在玩数学。先挖个坑,以下是《理论篇》,《实践篇》以后在写了 = =我自己是本科数学出身,本科毕业的时候,我并不知道什么是机器学习,也没有写过大型程序,更不要说去搞一个机器学习的算法和实践了。但是回头看,真是因为本科时代打下的坚实数学基础,让我毕业后学习这些相关知识变得轻车熟路。这些本科时代就应该熟练掌握的东西包括线性代数(线性空间,矩阵计算,张量)数值数学(数值代数,数值分析,线性规划,二次规划,凸优化理论,常见的数值优化算法)概率论和统计(没有这个基础,后面学概率图模型,统计计算都无从谈起)实分析和泛函的基础(这块内容有助于提升抽线思维的能力,一些经典结论对之后一些理论的理解很有帮助,比如RKHS)有了这个基础,我们再来看机器学习都有哪些东西,其实真心不多,看我用一个知乎回答就告诉你,最简单的当然是从分类器(classification)谈起了。总结一下,学习这些东西要先知道哪些数学内容呢?Naive Bayes:真的只需要懂一点概率论就行了。Linear Discriminant Analysis:这个你只需要知道什么是多变量Gaussian分布。Logistic Regression:如果知道线性回归和广义线性回归,LR也不是什么特别的东西。如果知道最大熵原理,并能从它推导出LR那说明你对LR的理解又更深入了。Linear SVM:这个稍微复杂一点,因为问题的formulation需要先理解max-margin原理。而具体的算法实际上就只是经典的二次规划和凸优化内容。Kernel SVM:要真正理解这个或许需要先明白什么是RKHS。然后其他算法部分只是仿照Linear SVM的简单推广。RKHS相关内容可以参照http://www.umiacs.umd.edu/~hal/docs/daume04rkhs.pdfAdaboost:这个东西如果只需要知道算法过程,是很简单的东西。但是如果你能明白为什么这么做,在什么假设下这么做会收敛到最优解,那你的理解也非常不错了。Decision Tree:有两个需要了解CART 和 c4.5。这个很简单,没什么好说的,但是你能不能高效的实现它们呢?Neural network:这个是我见过最傻的模型,你要知道怎么做优化,乃至怎么做随机优化,结果看天吃饭。再来看一些非监督模型,比如经典的有数据处理与可视化:PCA,LDA,MDS,以及其他“高大上”但不一定work的manifold learning算法聚类算法,以及如何评价聚类结果稀疏编码:如何把一个带LASSO的问题转化成线性约束?有哪些别的更快的方法求解LASSO。以上这些东西,算是入门性质的。本科毕业后大概一年左右,这些东西我就基本熟悉了。要学习这些东西,看一些教材自然是好的,但是书里废话比较多呢,而且一本书的作者知道的东西毕竟有限,我都是倾向直接从维基出发找资料看的。说实话,现在很少会自己去实现这些算法了,这些经典算法都有现成的开源工具。事实上要写一个高效的Linear SVM也不是很容易的事情。我主要讲讲学完这些,应该怎么学更高级的内容,当然还是结合我自己的经历。授人以鱼不如授人以渔,要学习前沿的内容就要掌握基础的工具。书分为两种,一种书看完了就是看完了,你学到了一堆技能,但却不能用这些技能产生新的知识,面对问题也不能因地制宜,如果是这样学估计只能用来应付找工作面试吧;另一种书看完了才是学习新东西的开始,你学到了如何读懂别人的论文,如何开发新的知识,如何根据情况选择和调整算法。概率图模型(Probabilistic graphical model):我是在Coursera上学习概率图模型这门课的,讲得真的非常好,正打算过二周目。学完这个课,掌握了图模型的设计,推断,和采样方法之后,就可以开始学习两个核心的机器学习模型,一个是Latent Dirichlet Allocation(LDA),常用于文本处理;一个是Probabilistic Matrix Factorization(PMF),常用于推荐系统。有个有趣的事情,某年Siggraph上有一篇文章做的是自动生成美丽的图案上色,这篇文章简直是我的最爱啊,作者是个华裔姐姐长得也很萌 &_&
http://graphics.stanford.edu/~mdfisher/Data/patternColoring.pdf其实是为了看懂她的工作,我才去学的这门课呢。这类图模型都在研究两个基本的问题:如何采样;如何inference隐含变量,是用EM、MCMC、还是Variational Bayes,从而用来估算参数。为了搞清楚这些,学习下面这门课就非常必要了。统计计算(Statistical computing):这个课系统的介绍了数值积分方法,Monte Carlo方法(importance sampling, MCMC,Sequential/Particle
MCMC,bootstrap),EM/MM。学完这门课,你能对这个领域的工具有个全局性的了解,明白每个工具的利弊,它们产生的历史来源,从而在具体问题中正确的选择使用它们。有了这些工具,你会发现大部分research的工作都是在这些细分领域做一些简单的扩展。比如Bayesian PMF(ICML'08)这篇文章几乎就完全是MCMC在PMF的应用。话说回来,Research大部分时候就是以这样一种循序渐进的方式进行的,把一些现成的idea排列组合。深度学习(Deep learning):说实话我刚开始接触这块内容发现,这尼玛就是传说中的黑科技啊。你不知道模型里面发生了什么,好坏都是看天吃饭的感觉。为了搞清楚这个,我决定重头开始实现神经网络。(代码在bobye/neuron · GitHub )前前后后花了近半年的时间,在实现的过程中,我学习了构造和训练神经网络的各个细节。我是从Stanford这个Tutorial开始学习的UFLDL Tutorial 课程资料里提供了Matlab的源码,不过我喜欢重新造轮子,那个时候恰好在学习Scala,就用Scala重写了一个神经网络的库(这个语言的特性非常适合写神经网络的算法)。近几年深度学习的主流被深度卷积网络代替,这种监督学习的算法虽然对某些问题十分有效,但是数学上并不是特别神奇的东西,我还是比较关注那些非监督的神经网络。优化(optimization):没有优化算法,任何机器学习模型都是空中楼阁,如何用更高效的优化算法,如何trade-off 计算时间和准确度,如何把已有问题scale到更高规模的数据上一直都是“优化大师们”做不完的工作。这也是一个非常大的分支,我觉得现在比较流行的两个大类是随机梯度优化和ADMM。前者用来解决大规模非约束优化问题,现实情景用的很多,但我们对它知道的很少;后者用来解决带约束问题,有很多变体。此外,优化大家庭也又有很多别的成员,这时候我要推荐的资料包括J Nocedal的numerical optimization这本书,讲的内容非常充实。此外ADMM的内容当然看Boyd巨牛11年的Tutorial paper。话说“概率图模型画圈,神经网络调参数,优化问题加正则”,不会科研也会胡诌了。。。最后说说答主最近在看的东西PAC学习理论(PAC Learning):这个理论已经相对古老了,它的历史价值很大,应用价值很有争议,但是一直有人在继续这个方向的工作,并试图用它来构造新的模型,所以还是有必要知道的。推荐一下最近的新书:Understanding Machine Learning: From Theory To Algorithms.非参数贝叶斯统计(Non-parametric Bayesian statistics):这个方向还非常年轻,有很多需要挖掘的东西,也是我PhD的一个重要课题。我觉得如果你开始看这些东西了,我已经没资格给你指路了,哈哈TonyOuyang,打怪升级有一次我听了Eric Xing的一个报告,讲machine learning综述和展望的,非常引人入胜,事后我邮件他要slides,他说"sure" & 等他回去以后给我,然后...就没有然后了...--------------------- 正经回答分割线 ---------------------------machine learning综述的话,推荐这篇:A Few Useful Things to Know about Machine Learning中文版在这里:机器学习那些事还有好心人做了图片版:数据挖掘方面,有好心人写了一篇:大数据工程人员知识图谱ps 楼上说到的Andrew Ng在Coursera上的课,我觉得最好的一点是讲了怎么去科学地"debugging a learning algorithm",以及要设计一个machine learning system的时候,你该怎么判断哪些事情需要花时间哪些事情暂时还不重要(而不是没头苍蝇到处乱来)X. Advice for Applying Machine Learning (Week 6)XI. Machine Learning System Design (Week 6)这是太多的其他课程/教学资料里没有讲或者一笔带过的东西,但却是最基本需要掌握的地方,I wish I knew ....=========看到评论有求图的,见@祝铭嘉 的回答知乎用户,自然语言处理民工三个字:勤动手~~其实机器学习和数据挖掘是两个相差的比较多的领域,机器学习比较偏向数学问题的推导, 所以在顶会上的很多paper更看重idea,不是很看重实验是否来源于真实数据(有一些实验数据会自己构造,比如Andrew Ng的谱聚类自己构造了一个图,图里面的点组成了四个英文字母NIPS,他证明他的谱聚类比之前的聚类方法好)
来让我们感受一下这个飘逸的图而数据挖掘说土点就是老子就是会抽feature~的领域,比如Kaggle上的入门题Titanic,我们都知道善良的美帝人民喜爱拯救小孩子(快!让小孩先走),所以年龄对于生还人员预测很重要,可是有些人的Age缺失了在给定的数据中。咱们这种土人只会给缺失的人扔个年龄平均数,然而那些有洞察力的人,认为他的姓名中暗示了年龄,Mrs与Miss,Mr与Master分别对应了年龄的某个区间,然后他们刁刁的可以用逻辑斯蒂回归模型就拿到很好的分数。对于找工作解决实际问题而言~数据(代表着分布式系统领域)&特征(数据挖掘与自然语言处理与图像)&模型(机器学习)。这并不是说模型不重要,而是一定要对具体问题做模型的Adaptation,你直接把图像领域的CNN拍到自然领域处理领域可能效果还不如一些传统方法,然而你把模型改吧改吧改成了DCNN,你就超越了Baseline,所以一定要能看懂模型,然后结合你的具体问题,把问题给解决了!所以,对于你的问题,大家推荐了那么多理论学习资料,我觉得肯定够了,我的忠告是不要沉迷于数学公式的推导,一定要理解他是如何运用数据的,比如SVM他的分类决策是根据和分类面最接近的那些点的支持向量决定的,贝叶斯的分类决策是根据大量先验知识决定的。所以在解决实际问题时候,贝叶斯会特别特别对先验和后验的同分布特别敏感,而SVM的鲁棒性会好很多。千万不要最后只知道SVM利用了拉格朗日乘子,对偶问题,极小极大与极大极小的转换做的分类器,而忽略了他怎么利用数据的特征~最后想说的是:学好Python,掌握好开源的Tool。在工作解决实际问题的过程中,往往是这个逻辑:这个问题我们需要这个数据我们去crawl吧!!!(爬虫能力)-& 这些数据应该抽取ABCD这些特征(对数据的感觉)-&这种数据特征的拟合用这个模型好!!!我记得这个开源Tool实现了(对开源机器学习模型的了解)-& 还是不work,我们写Rule吧(有多少人工就有多少智能的步骤)。当然最后一步十分重要,尤其对于自然语言处理问题(摊手脸)陈然,Data Scientist @ The Open Source Data Science Masters by datasciencemasters看到一个不错的网站,是一个Stanford的CS学生维护的,上面列出了这个方向相关的课程和相应的资源,我觉得很不错。李映真,理论的自洽和精神的纯粹给你推荐我们用的课本,把其中一本仔细读完都会有很大的收获。Kevin P. Murphy Machine Learning: a Probabilistic Perspective, the MIT Press (2012)David Barber Bayesian Reasoning and Machine Learning, Cambridge University Press (2012)Christopher M. Bishop Pattern Recognition and Machine Learning. Springer (2006)David J.C. MacKay Information Theory, Inference, and Learning Algorithms, Cambridge University Press (2003)第二和第四本在作者主页有 pdf 版本,个人比较喜欢 MacKay 的书,不过比较老了。Han Hsiao,发现隐藏的价值刚回答过这个问题,如有兴趣建议抽出时间看一看。如何系统地学习数据挖掘?研究生的重点是做学术研究发论文,建议前期多看一些核心会议和期刊近三年来的发表和获奖论文(会议和期刊推荐在上面的介绍里有)找到自己感兴趣的方向,然后开始找数据做实验(数据来源可参考:数据分析和挖掘有哪些公开的数据来源?)发paper。祝多发paper,挖掘快乐:)李文哲,PhD@USC, Chief Scientist@puhuifinance,…想学所有的知识永远也学不完, 最重要的是专一。 与其翻阅不同的教材,我觉得还不如去尝试去解决实际问题,在这个过程当中根据需要适当的补充知识(假设你已经大概了解了机器学习的领域) 去kaggle尝试一下实际的问题吧, 之后你自己就会有方向感了,
http://www./competitions知乎用户,杂学杂用。楼主问的其实是两个相关(很多人分不清)但其实差不少的领域。现在排名第一的 @安岩 在推荐阅读上回答非常详尽,就不在这个方面多废话了,只是简单按照自己的经验说一下这两个的区别和联系:机器学习的终极目标是让计算机完成一些被我们认为是“智能”的工作,一开始的研究是从逻辑学方向入手的,之后几十年一直是统计机器学习的天下(说是“统计”,但其实更多是概率方向的知识),而近几年沉睡很久的神经网络也在得到更多甚至说是狂热的重视(神经网络可以认为是统计模型,但相比传统统计机器学习(statistical/probabilistic)而言,它更多时候更接近一个确定性(deterministic)模型)。另一方面,数据挖掘更侧重于实际应用,而且也和统计学(注意,这和概率有很大的区别)的关联更加显著。传统的应用包括购物篮分析(常购买商品、常共同购买商品),和比较新的一些社交网络、UGC分析(User Generated Contents, 用户生成的内容)等等。一个简单的数据挖掘和机器学习的区分就是,数据挖掘并不那么关心算法的细节,而相对更重视结果的解释及其统计意义;而相反,机器学习似乎更在乎算法的设计、优化,在分类、聚类、或者一些既定问题上的效果,而较少关心统计意义方面的考量。具体来说,一个数据挖掘专家可能会用线性回归甚至关联分析,这些被机器学习学者认为是上世纪初产物的模型完成一些非常有趣的实际工作,并得到确定的统计意义(比如95%置信区间、某个事件是否具有“突发”统计意义等),也就是说这些结果最终还是服务于人,需要人去理解;而机器学习学者会尽量设计模型来自动别难过完成相对“智能、复杂”的任务,比如图像识别、语音识别、自然语言理解等,提高算法在这些问题上的准确性,但通常会被统计学家吐槽很多模型的效果提升其实统计意义不明。最后简单总结一些两者分别(有些其实界限不是很清晰了,我只是列在了被研究得更多的那边)和公共的搜索词:数据挖掘(不熟,轻拍):Data Analysis, (Social) Network Analysis, UGC Analysis, Market Segmentation, Recommendation/Ads Systems机器学习:Computer Vision, Speech Recognition, Natural Language Processing/Understanding, Pattern Recognition, Statistical Learning Theory (Convergence, Error Analysis), Probabilistic Graphical Models, Neural Networks公共:Linear Algebra, Parallelization/Large-Scale/Distributed Computation, Optimization, Probability/Statistics道道Coursera上有个5门UIUIC的课拿一个certificate的data mining program,我觉得课程的选择和渐进都是非常接近实际的data mining硕士program的(实际研究生program可能会多一些基础统计和CS课程,和一些辅助理论和算法课程,另外多一些选修方向)。这个program的几位教授都是data mining学术界的大牛 (有位是我研究生时期data mining教授读书时期的博士导师,还有位连我这样的门外汉也听说过他的大名)。附上链接:Coursera - Specializations课程组成:1. Pattern Discovery in Data Mining2. Text Retrieval and Search Engines3. Cluster Analysis in Data Mining4. Text Mining and Analytics5. Data Visualization如果非要让我选的话,Data Visualization可能不是必须的,但是非常有趣而且实用,是很有益处的“bonus”。另外如果统计的基础知识不太记得清楚的话很推荐去上一门基础统计科或者refresh一下统计知识…因为对理解这些课程的帮助很大。许靖,银行/数据挖掘/andriod开发KDD的论文及各种reference,KDD的比赛及各种参赛算法,当然,最优化理论是必学的。马卡,愤青如果是单纯做机器学习的话,需要学习统计,矩阵分析,凸优化,概率图模型,这些是核心课程。其他做应用的话看兴趣,例如自然语言处理,信息检索,计算机视觉,数据挖掘,大规模机器学习等等。杨超,程序员不知道题主说的硕士还是博士。就以自己的经历说下吧。西北某军工类院校,计算机,实验室做语音的。学院没什么机器学习的积累,也没有高质量的课,英语烂,网上的视频看不下去,就自己看书,纯粹自学。书籍:大四导师就推荐了本prml,整个研究生阶段就反复看,做题,跟同学分享讨论,给同学讲解。模式分类,图模型(jordan的未发行版),模式分析,统计学习基础等等这些经典也都刷过。那些集体智慧,机器学习实战也都看过。"数学"方面:线性代数应该这样学,学校的矩阵论和数理统计课。这是指我学的觉得有用的,其他我还看了一大堆数学书的第一章或者前两章,什么实复泛函分析啦,拓扑学啦,测度论啦。可是因为自己的脑力毅力加之没人逼我学,实在没能读下去。优化我没学过,虽然也翻过不少优化书的前两章,但学习过程中确实没用到啥复杂的优化算法,没需求,而且那东西我觉得一点都不有趣,就没去学。2011年.学nlp的东西,刷了一本jur啥写的特厚的nlp的书,写的特别好,把里面的算法实现了一遍。看prml。这时看不懂LDA。2012年论文方向是深度学习,那时候也没找到现成的工具包,自己写了一个支持cuda的深度神经网络的工具包。(其实代码很简单,就花了几个晚上而已)。看prml。可以看懂了LDA。2013年.实在觉得深度学习没意思,论文换了题目,开始研究狄利克雷过程。中间去实习,实习完了继续看,加起来看了有半年。反复看prml。纯粹应为太闲,这时重新看LDA论文,就非常清晰了。论文精读了百篇以上,除了当时花心思研究的深度学习和DP看了一大堆论文外,其他方面只精读各种经典论文,也就是各个模型的第一篇,如果论文太多,先看nips,icml之类的。另外,survey也是值读的。虽然好的survey并不多。其实大论文比较容易看懂,因为更详细,学DP时研读neal,sudderth和eb fox的博士论文,感觉收获很大,也很佩服这些牛人phd做的工作,不管有没有用,至少做的特别认真,特别严谨。另外,有一套Foundations and Trends 系列的introduction也是蛮不错的。每天拿来学习的时间也就3-4小时。其他时间都在玩。最后结果:自己连机器学习应用的门槛还没进,不过感觉跟很多同领域的小硕比起来,还算不差。感想:我时间都花在概率模型上,或者说贝叶斯模型,对于真的去训练模型,我不擅长。我尤其厌烦那种把机器学习当个黑盒子,什么问题非要去套这个黑盒子,更讨厌那些明知其理还在鼓吹的人。研究问题,不静下来从物理的角度(事物的原理)出发,反而一上来就倒过来,期望靠统计来发现一些表象的规律。由一些基本的原理不断组合产生出的世界,才体现出美感,而拟合输入输出对实在太丑陋。贝叶斯方法相比某些方法还算有点物理意义,所以自己还感点兴趣。这些年,记忆最深的当属一篇cvpr的best paper。讲的一个去雾算法,我觉得这篇论文比拟合来拟合去的强上无数倍。对于phd:phd就不是这节奏了,我的phd师兄就比我学的多多的了,但是要折腾的杂事也比我多。phd的基础要很扎实,不能像我这样糊弄了事,而且phd要发论文,必须得时刻了解动向,发现机会,熬夜折腾论文实验,不像小硕,玩玩混过去即可。远离学术圈,尽可能少的发表论文留下污点。孔秋强高票答案说的都很好。数学真的很重要!如果你还是研一阶段,推荐你去听一听数学学院的课程。楼上关于机器学习方面的资料推荐已经很详细了,我就补充一些推荐的数学资料吧。有些数学课程真的不适合自学,有老师讲一下就马上不一样了。有用的数学知识有:最优化。推荐《Numerical Optimization 2ed - Nocedal》,机器学习里到处都是优化,如神经网络权值的计算等。学最优化的好处是学的时候顺便也能把矩阵给复习一下。泛函分析。推荐《泛函分析》张恭庆著。这门课能极大扩宽视野,有些数学上的证明,比如三层神经网络能逼近任意函数,就是需要有泛函的知识才能看懂的。再往深有Soblev空间和调和分析,就更加数学一些,对做信号处理方向会有很大帮助。概率论。暂无推荐。机器学习实际上就是统计学习,PRML的书几乎把每种模型都贝叶斯化了。入了机器学习的坑,就离不开概率。测度论。推荐《测度论》严加安著。测度论是概率论的基础,能够让你对概率有更深入的了解。随机过程。暂无推荐。在数学院里,随机过程是在测度论之后开的,涉及了大量的测度论知识。没学测度论也没关系,可以看针对工科写的应用随机过程。多元统计分析。推荐《实用多元统计分析_第四版》Richard A. Johnson等著。机器学习统计学习不分家,也是大量的数据矩阵表达,矩阵运算,这门课最大的好处就是把眼花缭乱的积分号矩阵化,更加简洁。抽象代数。这门课对机器学习的直接作用不大,有时间学一学也能够扩宽视野。比如知道矩阵及矩阵乘法实际是一个非阿贝尔群(乘法不可交换)。表示论。我对表示论了解不多,只是零星学过一点群表示论。表示论也是数学一个重要部分。在机器学习中的应用不详。===================================至于机器学习的书籍,上面高票答得都很好!匿名用户好好刷两遍PRML,顺便替第一名默哀……肖智博,做过几个项目研究生阶段都是跟着导师做课题,从中抽出来一个题目做。即使不是这样,论文的题目也会非常具体到一个很细小的问题,所涉及的方法也不会很多。课程看学校安排了,如果学校安排课程也是一门大课,讲述各种方法,不过这样光说不练是掌握不了的。研究生阶段有的是时间,找你想学的方法自己动手实现一下才好。我觉得课程和书都是带你入门的,结合题目细致研究一个领域才是正道。手机上写的,比较简略。有熊出没,This deck is billed a million dollar我喜欢题主这个问题,知友们对具体知识的回答很详细了,我换个角度切入下。首先,数据挖掘不一定要有后期的machine learning, SQL会了以后,很多基础的,有实际意义的东西就会通过数据整合显示出来,而机器学习对于数据量并没有太大的要求,对于数据的质的要求会更高,一旦training data biased, 整个model会被严重影响。很多情况下(实际商业)big data会止于浅层挖掘,只有部分有意义的数据会最终被用来learn. 其次,如果题主读的是统计硕士,大部分学校的focus是expand你对机器学习的认识,介绍很多已经成熟的模型以及应用。但个人觉得machine learning 是一个非常 programming intensive的方向,所以应该学校会叫你学两三门编程语言。如果题主读的是博士,那你的研究方向可能最终会落脚于某个算法的提升或开发,而且对于成熟的算法,要有比较深刻的理解和认识,deep learning貌似是目前统计方面比较热的一个方向,当然,至于语言,R基本是必备的。书籍的话,Berkeley和Stanford都会用the elements of statistical learning,这本书连同其完整的数据练习相当有意思,可深可浅,值得用心去读。咩咩咩沁沁数学专业 一定要学这个吗 走统计方向QW Hai,东西为了了解svm,看了一沓论文然后实现了简单模型。匿名用户想请教下~在某网站上看到关于机器学习~数据挖掘的招聘很少~学习了机器学习~数据挖掘 可以去哪些公司啊?除了bat~
浏览:71发布: 20:27:02
浏览:153发布: 15:06:14
浏览:37发布: 5:16:05
浏览:137发布: 15:08:43
浏览:57发布: 12:05:33
浏览:111发布: 19:18:46
浏览:29发布: 2:32:02
浏览:74发布: 13:01:56
浏览:93发布: 2:16:17
浏览:80发布: 7:37:45

我要回帖

更多关于 黑客军团 的文章

 

随机推荐