2019-04-18 10:44:22 kgsew 阅读数 179
  • 机器学习&深度学习系统实战!

    购买课程后,可扫码进入学习群,获取唐宇迪老师答疑 数学原理推导与案例实战紧密结合,由机器学习经典算法过度到深度学习的世界,结合深度学习两大主流框架Caffe与Tensorflow,选择经典项目实战人脸检测与验证码识别。原理推导,形象解读,案例实战缺一不可!具体课程内容涉及回归算法原理推导、决策树与随机森林、实战样本不均衡数据解决方案、支持向量机、Xgboost集成算法、神经网络基础、神经网络整体架构、卷积神经网络、深度学习框架--Tensorflow实战、案例实战--验证码识别、案例实战--人脸检测。 专属会员卡优惠链接:http://edu.csdn.net/lecturer/1079

    39695 人正在学习 去看看 唐宇迪

有监督学习(Supervised Learning)是指这样的一种场景:

有一组数量较多的历史样本集,其中每个样本有一组特征(features)和一个或几个标示其自身的类型或数值的标签(label);对历史样本学习得到模型后,可以用新样本的特征预测其对应的标签。

1. 场景

在有监督学习中可以将每条数据看成是一条由特征到标签的映射,训练的目的是找出映射的规律。根据标签的类型可以将有监督学习再分为两个子类:

  1. 分类(Classification):标签是可数的离散类型,比如疾病诊断(疾病的类型有限)、图像文字识别(文字的总量有限)。
  2. 回归(Regression):标签是不可数的连续类型、有大小关系,比如房价预测(值无法枚举)。

图1-8是一个胸科诊断的分类案例。

图1-8 分类学习示例

图1-8中的年龄、血液PH值、是否吸烟就是模型的特征,诊断结果(肺气肿/正常)是学习的标签。

注意:图1-8中分类问题的特征变量也可以是连续类型(年龄、PH值)。

2. 算法

有监督学习是机器学习中最易理解、发展最成熟的一个领域,其应用最广泛算法可以分成以下几类:

  1. 线性分析(Linear Analysis):来源于统计学,这其中众所周知的最小二乘法(Ordinary Least Squares,OLS)是优化目标最易理解的回归学习算法;通过对优化目标的调整还衍生了Ridge Regression、Lasso Regression等算法。此外还包括线性判别分析(Linear Discriminant Analysis)。
  2. 梯度下降法(Gradient Descent):用于寻找函数最小值或最大值问题。主要包括三个分支:批量梯度下降法BGD、随机梯度下降法SGD、小批量梯度下降法MBGD。
  3. 朴素贝叶斯(Naïve Bayes):基于概率论的分类方法。在贝叶斯理论中,该方法要求所有特征之间相互独立,但2004年Harry Zhang的论文《The Optimality of Naive Bayes》中阐述了特征之间有比较平和的关联时朴素贝叶斯也能达到很好效果。
  4. 决策树(Decision Tree):源自风险管理的辅助决策系统,是一个利用树状模型的决策支持工具,根据其建分支的策略不同派生了很多子算法,如ID3、C4.5、CART等。其优点是学习结果易于人类理解,缺点是当数据集变化时决策图变化较大。
  5. 支持向量机(Support Vector Machine,SVM):上世纪六十年代就被提出,直到1992由Bernhard E.Boser等人改进为可以应用于非线形问题后被广泛应用,在本世纪初期的很长时间里被认为是最好的分类器。
  6. 神经网络(Neutral Network,NN):由名称可知源于生物神经学,具有较长历史,可以处理复杂的非线形问题。传统神经网络的研究曾一度停滞,但随着计算机计算能力的提升和卷积网络结构的提出,由其发展而来的深度学习(Deep Learning)已经成为当前机器学习中最强大的工具。
  7. 集成学习(Ensemble Learning):是一种利用若干个基础分类器共同执行决策的方法。此方法近来被广泛应用,其中的随机森林(Random Forrest)正在逐步取代SVM的地位;此外还有以AdaBoost为代表的提升方法(Boosting Methods)。

所有的有监督学习算法都有一定的容错性,即不要求所有历史样本绝对正确、可以有部分标签被错误分配的样本。当然,样本中的错误越多越不容易训练出正确的模型。

3. 回归与分类的关系

读者应该已经发现:虽然有监督学习的适用场景可以分成两类,但介绍算法时并没有区分哪些适用于回归,哪些适用于分类。其实大多数的算法都可以同时处理这两类问题。如图1-9,假设某算法可以处理回归问题,那么当然可以将其值域划分成可数的几段用以表征分类问题。

图1-9 回归模型可以解决分类问题

图1-9中,左图是训练的原始样本;用线性回归学习后可得到中图的回归线,回归线上的点就是之后的预测点;右图示意对回归结果设置阀值可以用来表达分类问题。从这个角度看,回归与分类的区别只不过是从不同角度分析学习结果而已。

另一方面,如果一个模型可以解决分类问题,则在分类类别之间作线性插值就是一种最简单的将分类模型转化为回归模型的方法。

因此,与很多教程书籍不同,本书不刻意区分它们,将有监督学习算法详细原理与实践的介绍统一在了第3章。此外考虑内容的连贯性将神经网路方面的内容放在深度学习章节一起讲解。

 

从机器学习,到深度学习

从深度学习,到强化学习

从强化学习,到深度强化学习

从优化模型,到模型的迁移学习

一本书搞定!

2019-10-21 09:19:41 nanhuaibeian 阅读数 746
  • 机器学习&深度学习系统实战!

    购买课程后,可扫码进入学习群,获取唐宇迪老师答疑 数学原理推导与案例实战紧密结合,由机器学习经典算法过度到深度学习的世界,结合深度学习两大主流框架Caffe与Tensorflow,选择经典项目实战人脸检测与验证码识别。原理推导,形象解读,案例实战缺一不可!具体课程内容涉及回归算法原理推导、决策树与随机森林、实战样本不均衡数据解决方案、支持向量机、Xgboost集成算法、神经网络基础、神经网络整体架构、卷积神经网络、深度学习框架--Tensorflow实战、案例实战--验证码识别、案例实战--人脸检测。 专属会员卡优惠链接:http://edu.csdn.net/lecturer/1079

    39695 人正在学习 去看看 唐宇迪

是否有监督(supervised),就看输入数据是否有标签(label)。输入数据有标签,则为有监督学习,没标签则为无监督学习。

一、监督式学习

在这里插入图片描述
在监督式学习下,输入数据被称为“训练数据”,每组训练数据有一个明确的标识或结果,如对防垃圾邮件系统中“垃圾邮件”“非垃圾邮件”,在建立预测模型的时候,监督式学习建立一个学习过程,将预测结果与“训练数据”的实际结果进行比较,不断的调整预测模型,直到模型的预测结果达到一个预期的准确率。
监督式学习的常见应用场景如分类问题和回归问题。
常见算法有逻辑回归(Logistic Regression)和反向传递神经网络(Back Propagation Neural Network)

此处以高考为例,高考的题目在上考场前我们未必做过,但在高中三年我们做过很多很多题目,懂解题方法,因此考场上面对陌生问题也可以算出答案。机器学习的思路也类似:我们能不能利用一些训练数据(已经做过的题),使机器能够利用它们(解题方法)分析未知数据(高考的题目)?最简单也最普遍的一类机器学习算法就是分类
(classification)。
对于分类,输入的训练数据有特征(feature),有标签(label)。所谓的学习,其本质就是找到特征和标签间的关系(mapping)。这样当有特征而无标签的未知数据输入时,我们就可以通过已有的关系得到未知数据标签。在上述的分类过程中,如果所有训练数据都有标签,则为有监督学习(supervised learning)。如果数据没有标签,显然就是无监督学习(unsupervised learning)了,也即聚类(clustering)。

二、无监督式学习

我们有一些问题,但是不知道答案,我们要做的无监督学习就是按照他们的性质把他们自动地分成很多组,每组的问题是具有类似性质的(比如数学问题会聚集在一组,英语问题会聚集在一组,物理…)。
所有数据只有特征向量没有标签,但是可以发现这些数据呈现出聚群的结构,本质是一个相似的类型的会聚集在一起。把这些没有标签的数据分成一个一个组合,就是聚类(Clustering)。
比如Google新闻,每天会搜集大量的新闻,然后把它们全部聚类,就会自动分成几十个不同的组(比如娱乐,科技,政治…),每个组内新闻都具有相似的内容结构。
无监督学习还有一个典型的例子就是鸡尾酒会问题(声音的分离),在这个酒会上有两种声音,被两个不同的麦克风在不同的地方接收到,而可以利用无监督学习来分离这两种不同的声音。注意到这里是无监督学习的原因是,事先并不知道这些声音中有哪些种类(这里的种类就是标签的意思)。

目前分类算法的效果还是不错的,但相对来讲,聚类算法就有些惨不忍睹了。确实,无监督学习本身的特点使其难以得到如分类一样近乎完美的结果。
这也正如我们在高中做题,答案(标签)是非常重要的,假设两个完全相同的人进入高中,一个正常学习,另一人做的所有题目都没有答案,那么想必第一个人高考会发挥更好,第二个人会发疯。
这时各位可能要问,既然分类如此之好,聚类如此之不靠谱,那为何我们还可以容忍聚类的存在?
因为在实际应用中,标签的获取常常需要极大的人工工作量,有时甚至非常困难。例如在自然语言处理(NLP)中,Penn Chinese Treebank在2年里只完成了4000句话的标签……

三、半监督式学习

对于半监督学习,其训练数据的一部分是有标签的,另一部分没有标签,而没标签数据的数量常常极大于有标签数据数量(这也是符合现实情况的)。
隐藏在半监督学习下的基本规律在于:数据的分布必然不是完全随机的,通过一些有标签数据的局部特征,以及更多没标签数据的整体分布,就可以得到可以接受甚至是非常好的分类结果。

参考
【1】https://blog.csdn.net/luolang_103/article/details/79861257
【2】https://www.zhihu.com/question/23194489/answer/25028661
【3】https://www.zhihu.com/question/23194489/answer/75555668

2014-06-04 11:24:51 lanhaics 阅读数 1571
  • 机器学习&深度学习系统实战!

    购买课程后,可扫码进入学习群,获取唐宇迪老师答疑 数学原理推导与案例实战紧密结合,由机器学习经典算法过度到深度学习的世界,结合深度学习两大主流框架Caffe与Tensorflow,选择经典项目实战人脸检测与验证码识别。原理推导,形象解读,案例实战缺一不可!具体课程内容涉及回归算法原理推导、决策树与随机森林、实战样本不均衡数据解决方案、支持向量机、Xgboost集成算法、神经网络基础、神经网络整体架构、卷积神经网络、深度学习框架--Tensorflow实战、案例实战--验证码识别、案例实战--人脸检测。 专属会员卡优惠链接:http://edu.csdn.net/lecturer/1079

    39695 人正在学习 去看看 唐宇迪

推荐深度学习的教程。Andrew Ng老师的,已有部分章节翻译为中文。


http://deeplearning.stanford.edu/wiki/index.php/

说明:本教程将阐述无监督特征学习和深度学习的主要观点。通过学习,你也将实现多个功能学习/深度学习算法,能看到它们为你工作,并学习如何应用/适应这些想法到新问题上。

本教程假定机器学习的基本知识(特别是熟悉的监督学习,逻辑回归,梯度下降的想法),如果你不熟悉这些想法,我们建议你去这里

机器学习课程,并先完成第II,III,IV章(到逻辑回归)。


稀疏自编码器


矢量化编程实现


预处理:主成分分析与白化


Softmax回归


自我学习与无监督特征学习


建立分类用深度网络


自编码线性解码器


处理大型图像



注意: 这条线以上的章节是稳定的。下面的章节仍在建设中,如有变更,恕不另行通知。请随意浏览周围并欢迎提交反馈/建议。


混杂的

混杂的主题


进阶主题:

稀疏编码

独立成分分析样式建模

其它

2019-03-12 22:28:51 qq_42160304 阅读数 125
  • 机器学习&深度学习系统实战!

    购买课程后,可扫码进入学习群,获取唐宇迪老师答疑 数学原理推导与案例实战紧密结合,由机器学习经典算法过度到深度学习的世界,结合深度学习两大主流框架Caffe与Tensorflow,选择经典项目实战人脸检测与验证码识别。原理推导,形象解读,案例实战缺一不可!具体课程内容涉及回归算法原理推导、决策树与随机森林、实战样本不均衡数据解决方案、支持向量机、Xgboost集成算法、神经网络基础、神经网络整体架构、卷积神经网络、深度学习框架--Tensorflow实战、案例实战--验证码识别、案例实战--人脸检测。 专属会员卡优惠链接:http://edu.csdn.net/lecturer/1079

    39695 人正在学习 去看看 唐宇迪

人工智能与机器学习与深度学习

什么是人工智能?
人类用各种方式让机器拥有与人类相仿的“智能”,就是人工智能。
什么是机器学习?
机器学习就是实现人工智能的一种方式。

什么是深度学习?
深度学习就是实现机器学习的一种技术。

机器学习

为什么要机器学习呢?你想啊,人类这么聪明是为什么,还不是因为在整个人类历史中,人类不断学习,所以才有现在的智能。既然要让机器拥有与人类相仿的智能,那就让机器去学习吧。

机器学习大概可分为两种:有监督学习和无监督学习

有监督学习

有监督学习的大致过程(以图片识别猫为例):
1. 数据采集(就是找一堆猫的图片,假设是x张,当然数量很庞大,至于多大我也不清楚)
2. 特征提取(就是在图片是把猫圈起来,然后给一个标签:猫;而没有圈起来的部分全部作为背景,同时也给一个标签:背景。当然啦,这都是在软件上进行的)
3. 图片转换:人类看图片是很简单的,而机器是怎么看图的呢。机器看到的图片是由一堆数字组成的,如下图
在这里插入图片描述
当然啦,数字是我乱填的。一张彩色图片通常是三层(rgb,即红色red,绿色green,蓝色blue)的,所以是由三张和上面的图一样的图,你也可以看作是三张填满数字的表格。
当然,黑白图片就只有一层的,相当于只有一张表格咯。表格中的数字代表着颜色的程度。
假设上图是一张黑白图的表格,第一个小格子数字是255,那么这个小格的黑色程度是255(最低是0,最高是255),而我们人来看到这个格子就是全黑的。如果这个格子是0,那么我们看到的这个格子就是全白的。
4.开始学习(详细的后面再讲)
5. 当机器学习完这么多的猫图后,它就大概知道上面样子的物体是猫了。
6. 学习的过程也是一个训练的过程
7. 然后就是测试了
什么是测试呢?我们用了很多图片来让机器知道什么是猫,那总要知道机器学习得怎么样吧,就好像你上学时的测验和考试
8.测试:也是用一堆猫图(数量大概是x/4张)然后用来测试机器学习学习的效果
9. 根据学习的结果与真实结果作比较,通过一些公式来计算误差,就知道学得好不好啦(好比学习的结果里面有90%是猫,那么训练的效果就很好了,至于要用什么公式来计算误差,之后再说)

无监督学习

而无监督学习呢,厉害了,它不需要人来圈出那些部分是猫,它就能自己识别出什么是猫:
它和有监督学习的最大差别在于第二点的特征提取,因为它不用提取,因此也导致了学习的方式与有监督学习不一样。
怎么不一样呢:
简单来说就是给机器一堆猫图和一堆狗图,它就相似的图片归为一类,自动分成了猫图和狗图。
怎么算是相似呢?其实一类图片和另一类图片之间是由某种距离的,而这种距离就是关键。距离短的就是相似,距离长的就是不相似。
这个距离是什么呢?举个超级简单的例子吧:最黑和最白,在机器看来就是0和255,那么0和255的差距就是0-255=-255,这个差距带入到某公式里,就可以计算距离啦。详细的之后再讲吧。

2018-12-01 22:14:57 lk3030 阅读数 3970
  • 机器学习&深度学习系统实战!

    购买课程后,可扫码进入学习群,获取唐宇迪老师答疑 数学原理推导与案例实战紧密结合,由机器学习经典算法过度到深度学习的世界,结合深度学习两大主流框架Caffe与Tensorflow,选择经典项目实战人脸检测与验证码识别。原理推导,形象解读,案例实战缺一不可!具体课程内容涉及回归算法原理推导、决策树与随机森林、实战样本不均衡数据解决方案、支持向量机、Xgboost集成算法、神经网络基础、神经网络整体架构、卷积神经网络、深度学习框架--Tensorflow实战、案例实战--验证码识别、案例实战--人脸检测。 专属会员卡优惠链接:http://edu.csdn.net/lecturer/1079

    39695 人正在学习 去看看 唐宇迪

机器学习(machine learning)

机器学习的主要任务:

  • 分类(classification):将实例数据划分到合适的类别中。

  • 回归(regression):主要用于预测数值型数据。

机器学习可以分为三种形式:

  • 监督学习(supervised learning)

  • 非监督学习(unsupervised learning)

  • 强化学习(reinforcement learning)

监督学习(supervised learning)

  • 必须确定目标变量的值,以便机器学习算法可以发现特征和目标变量之间的关系。在监督学习中,给定一组数据,我们知道正确的输出结果应该是什么样子,并且知道在输入和输出之间有着一个特定的关系。 (包括:分类和回归)

  • 训练样本 = 特征(feature) + 目标变量(label: 分类-离散值/回归-连续值)

非监督学习(unsupervised learning)

  • 无监督学习,即在未加标签的数据中,试图找到隐藏的结构。数据没有类别信息,也没有给定的目标值。

  • 非监督学习包括的类型:

    • 聚类:将数据集分成由类似的对象组成多个类。

    • 密度估计:通过样本分布的紧密程度,来估计与分组的相似性。

  • 此外,无监督学习还可以减少数据特征的维度,以便我们可以使用二维或三维图形更加直观地展示数据信息。

强化学习(reinforcement learning)

强化学习,又称再励学习或者评价学习,也是机器学习的技术之一。

所谓强化学习就是智能系统从环境到行为映射的学习,以使奖励信号(强化信号)函数值最大,由于外部给出的信息很少,强化学习系统必须依靠自身的经历进行自我学习。通过这种学习获取知识,改进行动方案以适应环境。

强化学习最关键的三个因素:

  • 状态

  • 行为

  • 环境奖励。

强化学习和深度学习的主要区别:

  • 深度学习的训练样本是有标签的,强化学习的训练是没有标签的,它是通过环境给出的奖惩来学习

  • 深度学习的学习过程是静态的,强化学习的学习过程是动态的。这里静态与动态的区别在于是否会与环境进行交互,深度学习是给什么样本就学什么,而强化学习是要和环境进行交互,再通过环境给出的奖惩来学习

  • 深度学习解决的更多是感知问题,强化学习解决的主要是决策问题。因此有监督学习更像是五官,而强化学习更像大脑。

应用:

关于深度学习和强化学习的实例,最典型的莫过于谷歌的AlphaGo和AlphaZero两位了。AlphaGo是通过深度卷积神经网络,在训练了大约三千万组人类的下棋数据生成的模型,而AlphaZero使用强化学习的方式,通过自己和自己下棋的方式生成模型。而最终的实验结果也很让人震撼。AlphaGo击败了人类围棋顶尖高手,而AlphaZero击败了AlphaGo。

强化学习实际应用目前还较窄,主要包括AI游戏(如Atari),推荐系统,机器人控制相关(如Ng的无人机飞行)

传统机器学习

机器学习(ML)技术在预测中发挥了重要的作用,ML经历了多代的发展,形成了丰富的模型结构,例如:

  • 线性回归

  • 逻辑回归

  • 决策树

  • 支持向量机

  • 贝叶斯模型

  • 正则化模型

  • 集成模型

  • 神经网络

这些预测模型中的每一个都基于特定的算法结构,参数都是可调的。训练预测模型涉及以下步骤:

  1. 选择一个模型结构(例如逻辑回归,随机森林等)。

  2. 用训练数据(特征和标签)输入模型。

  3. 学习算法将输出最优模型(即具有使训练错误最小化的特定参数的模型)。

每种模式都有自己的特点,在一些任务中表现不错,但在其他方面表现不佳。但总的来说,我们可以把它们分成低功耗(简单)模型和高功耗(复杂)模型。选择不同的模型是一个非常棘手的问题。

机器学习的主要障碍是特征工程这个步骤,特征工程要靠手动设计完成,需要大量领域专业知识,因此它成为当今大多数机器学习任务的主要瓶颈。

深度学习 (deep learning)

深度学习,也是一种机器学习的技术。最初的深度学习网络是利用神经网络来解决特征层分布的一种学习过程。

DNN(深度神经网络)可以将原始信号(例如RGB像素值)直接作为输入值,而不需要创建任何特定的输入特征。通过多层神经元(这就是为什么它被称为“深度”神经网络),DNN可以“自动”在每一层产生适当的特征,最后提供一个非常好的预测,极大地消除了寻找“特征工程”的麻烦。

DNN也演变成许多不同的网络拓扑结构,例如:

  • CNN(卷积神经网络)

  • RNN(递归神经网络)

  • LSTM(长期短期记忆网络)

  • GAN(生成对抗网络)

所有的这些被统称为深度学习(Deep Learning)。

迁移学习 (transfer learning)

迁移学习能够将适用于大数据的模型迁移到小数据上,作为小数据模型的训练起点,节约训练神经网络需要的大量计算和时间资源。

例如采用在计算机视觉挑战赛通过ImageNet数据(源数据)集训练出来的AlexNet 模型迁移应用到另一个新的数据集(目标数据集)重新进行训练(微调)。

主要步骤:

  • 在源数据上训练一个神经网络。比如在 ImageNet 上训练出的 AlexNet 模型。

  • 将模型的输出层改成适合目标数据的大小。 新加载的数据并不需要作1000个类别的分类任务,因此 AlextNet 的最后三层可以针对性按照新的分类问题重新调整,例如:

    • 降低之前训练网络的特征初始学习率,减缓迁移层的学习。

    • 降低迁移学习设置过多的迭代训练次数,提高训练效率。

    • 减小批(Mini Batch Size)的大小,降低内存使用率。

  • 将输出层的权重初始化成随机值,但其他层的权重保持跟原先训练好的权重一致。

  • 在目标数据集上开始训练。

深度学习概览

阅读数 27

弱监督深度学习

阅读数 1618

没有更多推荐了,返回首页