机器学习入门概念理论
1.机器学习的底层理论:
机器学习的底层理论有一些,比如推理与规划、近似可计算理论、正则化、提升理论、核方法、当然还有大名鼎鼎的统计机器学习理论等等。这部分内容不是初学者学的。
一是这些理论其实是在实践中总结的,没有基础的机器学习方法是不能明白理论的;二是这些理论需要的数学很高,您那高等数学啥的就别提了,这些理论至少也得有泛函分析的一般知识、优化理论的一般知识、矩阵理论的一般知识、高等概率论、随机分析等等的数学基础。三是这些理论对于大部分只是想用一下机器学习方法的人,我觉得毫无意义;您要只是想用一下机器学习,这些理论对您估计看过全当娱乐。
2.机器学习方法:
【机器学习入门概念理论】这部分才是初学者应该学的,也是必须学的。1.监督学习:也就是你的数据都已经处理的很好了,哪些数据是哪种情况都分清楚了。
2.非监督学习:你的数据太原始了,全是一堆数,都不知道哪个是哪个情况。
3.半监督学习:因为监督学习效果好,但是数据要求太高;非监督学习效果不咋地呀,但对数据要求低;那么我们折中一下,先标注一部分数据,然后用监督学习对其他未标注数据进行标注,如果算法产生的准确率在某个参数以下,则将这个数据给人来标准。
4.迁移学习:比如我们现在有种方法,用在了图书之间的相似分析上,那么这个方法可不可以用在人人网上用户的相关分析上呢?这就是迁移学习。
5.强化学习:根据环境反馈进行学习。
6.“各种乱入学习”:其实,还有很多奇葩的学习方法不是以上五种比较常见的学习方法,他们大体上都是各种奇葩的想法,加上各种有爱的数学理论推导而成。因为还不是十分的成熟,所以初学者也不必太纠结这部分。
3.最常见的机器学习方法 = 基础方法 * 拓展方法 * 应用领域 (基础方法)
1.关联分析:现在数据是一条条的销售记录,我们要找出其中哪些商品经常被一起买,这个到时候会有两个主要方法:Apriori方法,主要就是剪枝,和他相识的有AIS和STEM,其中STEM是针对SQL语言使用的关联分析算法;FP-growth,主要是建立一个树,通过这个结构加速算法;还有垂直关联挖掘、数组方法。
2.决策树:有一个叫读心术的应用,他不断让你提供你心中所想的人的信息,进行不断的推演最终找到你所想的人。这个应用看似神奇,其实说白了用决策树就可以大概做一个。决策树就是一颗树,树的每个边上都有条件,根节点是起始节点,叶节点是结果节点;从根节点,不断的依据边上的信息移动到相应的树节点上,直到叶节点,给出结果。这就是决策树。决策树是一大类算法,主要有ID3、C4.5等等。
3.感知器:还记得我刚才说的向量空间么?每一个向量都可以表示为空间中的一个点,那如果我们可以找到一条直线把所有点分为两部分,一部分都是A类,另一部分都是B类。那么我们以后还有一个点,我们只要看他在直线的哪边就可以直接判定他的类别。感知器是一大类算法,算法太多了,不一一枚举。
4.支持向量机:感知器的升级版。如果学过泛函的同学,都知道完备的内积空间就是Hilbert空间,核方法可以在Hilbert空间上进行。支持向量机就是使用了间隔最大原则和核方法来对感知器进行改进,从而得到相对好的效果。支持向量机,是一大类算法。
5.反馈神经网络:感知器的升级版。感知器是一个线性函数,如果多个线性函数互相嵌套,而且使用非线性动力提供复杂的向量空间曲面描述,我们会得到比感知器更好的效果。= =!提问支持向量机和反馈神经网络杂合是啥?
6.神经网络:其实神经网络包括反馈神经网络。之所以把反馈神经网络单独提出来,是因为用的太多,而且他是继承感知器的。但是神经网络本身可是一个非常非常非常非常丰富的一大大大类算法,而且错综复杂。我尝试分个类吧,主要有层次网络、时延神经网络、耦合神经网络、自组织神经网络、递归神经网络(和时延神经网络有点像,但是在连续和离散量上有些许的不同,连续可用模拟电路实现)、径向基函数网络(这个其实是正则化的网络,一般用的RBF网络就是反馈神经网络T-正则化)、集成神经网络、模糊神经网络、玻尔兹曼机(使用退火算法的一种网络)、概率神经网络等等等等等等。当然还有神经场理论,需要微分几何的知识,属于机器学习的基础理论,初学者可以无视。当然还有人试图设计神经网络计算机,初学者也可以无视。当然神经网络可是很神奇的,他连PCA、ICA、LDA(线性判别分析)、LDA(隐藏地理特来分布)啥的都可以用神经网络学习。
- 统计判决方法:是依据统计理论设计的统计判决理论。其实,统计判决是很实用的理论,而且其中包含的很多方法都在各个机器学习领域应用,比如最小化最大损失、贯序判决、参数估计等等。朴素贝叶斯就是其中的一个。这也是一大类算法。
8.贝叶斯网络:推理和规划理论支持的一个理论。
9.序列分析方法:就是分析一个序列的学习。语言就是一个文字的序列,所以诸如隐马尔科夫方法啥的。
10.逻辑回归:如果你学习过生态学,你对逻辑方程和逻辑回归就毫不陌生,其实这个和感知器是一个尿性的东西。他和隐马尔科夫模型的学习可以用到一个叫最大熵原则。其实最大熵原则是可以在信息论下被用变分法中的柯西-拉格朗日方程推出来的,这也是Duda的《模式分类》后的一道习题。
11.聚类方法:我们有一堆数据,我们想知道他们自己之间的哪些是一类。也是一大类方法,常用的有:k-均值、层次聚类、密度分布聚类、模型聚类、图聚类算法(包括蚁群聚类)。
12.数据处理方法:比如主成分分析(PCA)、线性判决LDA、独立分析ICA等等。
1.在线化:因为我们知道,现在的数据都是不断的来,不断的更新。但由于数据巨大,我们不能每更新一次,我们就重新计算一次,所以让算法对增量有办法的方法叫在线化。基础方法都可以查到他们的在线化方法。
2.分布式和并行化:这个还是针对大数据,提供以上所有基础方法的分布式和并行化方法。
3.修正过拟合方法:由于以上基础方法中大部分都存在过拟合问题,说白了就是对数据中的噪声进行了拟合,使得学习效果变差,本来应该得到的信息是y=x+1 , 而现在得到的信息是y=(x100+1)/(x99+1)+1。。显然后一种得到的太过于精密,反而效果不好了。以上大部分基础方法都可以用修正过拟合的方法来修正。其中正则化就是一个比较好的方法。
4.各种数学乱入的方法:没错,你没看错,各种数学乱入呀。比如模糊数学乱入,产生一堆新方法:模糊SVM、模糊神经网络啥的。再比如比较综合的数学乱入,商空间和粒运算啥的。再比如李群:李群机器学习。再比如微分几何乱入,有什么流形学习。这些我觉得,看过全当娱乐吧。
(应用领域)
1.应用到图,摇身一变为图挖掘。
2.应用到数据库和数据仓库中,摇身一变为数据挖掘。
3.应用到社交网络中,摇身一变为网络科学。
4.应用到自然语言处理中,摇身一变为统计自然语言处理(多有错误,全当娱乐)。
推荐阅读
- 由浅入深理解AOP
- 继续努力,自主学习家庭Day135(20181015)
- python学习之|python学习之 实现QQ自动发送消息
- 一起来学习C语言的字符串转换函数
- 定制一套英文学习方案
- 漫画初学者如何学习漫画背景的透视画法(这篇教程请收藏好了!)
- 《深度倾听》第5天──「RIA学习力」便签输出第16期
- 如何更好的去学习
- 【韩语学习】(韩语随堂笔记整理)
- 焦点学习田源分享第267天《来访》