深度学习概念入门

  1. 机器学习
  2. 强化学习
  3. 深度学习
  4. 总结
  5. 再举个例子

研究生是cv方向,也发了一篇四区sci,工作后计划不在此方向发展,但如果今后需要用到,还是要尽快拾起来。此文档记录机器学习、深度学习、增强学习概念入门

机器学习

有监督学习:监督式学习的常见应用场景如分类问题和回归问题。常见监督式学习算法有决策树(ID3,C4.5算法等),朴素贝叶斯分类器,最小二乘法,逻辑回归(Logistic Regression),支持向量机(SVM),K最近邻算法(KNN,K-NearestNeighbor),线性回归(LR,Linear Regreesion),人工神经网络(ANN,Artificial Neural Network),集成学习以及反向传递神经网络(Back Propagation Neural Network)等等。

非监督学习(Unsupervised Learing)是另一种研究的比较多的学习方法,它与监督学习的不同之处,在于我们事先没有任何训练样本,而需要直接对数据进行建模。是否有监督(Supervised),就看输入数据是否有标签(Label)。输入数据有标签(即数据有标识分类),则为有监督学习,没标签则为无监督学习(非监督学习)。在很多实际应用中,并没有大量的标识数据进行使用,并且标识数据需要大量的人工工作量,非常困难。我们就需要非监督学习根据数据的相似度,特征及相关联系进行模糊判断分类。

半监督学习:应用场景包括分类和回归,算法包括一些对常用监督式学习算法的延伸,这些算法首先试图对未标识数据进行建模,在此基础上再对标识的数据进行预测。如自训练算法(self-training)、多视角算法(Multi-View)、生成模型(Enerative Models)、图论推理算法(Graph Inference)或者拉普拉斯支持向量机(Laplacian SVM)等。

强化学习

在企业数据应用的场景下, 人们最常用的可能就是监督式学习和非监督式学习的模型。 在图像识别等领域,由于存在大量的非标识的数据和少量的可标识数据, 目前半监督式学习是一个很热的话题。 而强化学习更多的应用在机器人控制及其他需要进行系统控制的领域。

强化学习(Reinforcement Learning)也叫再励学习、评价学习,在智能控制和机器人领域有许多应用。输入数据作为对模型的反馈,不像监督模型那样,输入数据仅仅是作为一个检查模型对错的方式。在强化学习下,输入数据直接反馈到模型,模型必须对此立刻作出调整。常见算法包括 Q-Learning、TD 算法(时间差分学习,Temporal Difference)、SARSA 算法。

强化学习灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的预期,产生能获得最大利益的习惯性行为。这个方法具有普适性,因此在其他许多领域都有研究,例如博弈论、控制论、运筹学、信息论、模拟优化方法、多主体系统学习、群体智能、统计学以及遗传算法。 它的本质就是解决“决策(decision making)”问题,即学会自动进行决策。它在没有任何label告诉算法应该怎么做的情况下,通过先尝试做出一些行为——然后得到一个结果,通过判断这个结果是对还是错来对之前的行为进行反馈。由这个反馈来调整之前的行为,通过不断的调整算法能够学习到在什么样的情况下选择什么样的行为可以得到最好的结果。

重点:强化学习其实就是自动进行决策,并且可以做连续决策。强化学习有很多应用,比如自动直升机,机器人控制,市场决策,工业控制,无人驾驶,AlphaGo,玩游戏,还在制造业、库存处理、电商、广告、推荐、金融、医疗等与我们生活息息相关的领域也有应用。例如一家日本公司 Fanuc,工厂机器人在拿起一个物体时,会捕捉这个过程的视频,记住它每次操作的行动,操作成功还是失败了,积累经验,下一次可以更快更准地采取行动。

举个例子:在向用户推荐新闻文章的任务中,非监督式会找到用户先前已经阅读过类似的文章并向他们推荐其一,而强化学习将通过向用户先推荐少量的新闻,并不断获得来自用户的反馈,最后构建用户可能会喜欢的文章的“知识图”。

深度学习

深度学习(Deep Learning)是机器学习的一种,是它的一个大的分支,深度学习的概念由Hinton等人于2006年提出,深度学习的概念源于人工神经网络的研究。

深度学习实际上指的的深度神经网络学习,普通神经网络由于训练代价较高,一般只有3-4层,而深度神经网络由于采用了特殊的训练方法加上一些技术算法,可以达到8-10层。深度神经网络能够捕捉到数据中的深层联系,从而能够得到更精准的模型,而这些联系不容易被普通的机器学习方法所发觉。

用官方的含义就是:含多隐层的多层感知器就是一种深度学习结构。

深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示

同机器学习方法一样,深度机器学习方法也有监督学习与无监督学习之分。不同的学习框架下建立的学习模型很是不同。

例如,卷积神经网络(Convolutional neural networks,简称CNNs)就是一种深度的监督学习下的机器学习模型,而深度置信网(Deep Belief Nets,简称DBNs)就是一种无监督学习下的机器学习模型。

深度学习整个过程就是数据收集、数据清洗处理、传入数据进行训练模型和学习优化、经过不断优化调节后形成高准确率的识别分类模型,供相应的领域进行传入相关数据进行应用分类。

总结

机器学习和深度学习的核心就是数据、算法(模型函数)、算力(计算机运算能力)。

我们研究的核心就是算法,也就是针对某一应用需求场景,选择各种合适的函数公式进行构建和叠加形成一个处理数据的模型(也就是常说的训练数据模型)。

这个模型的作用是什么?就是能够将我们的普通数据输入进去,经过这个模型处理后,输出数据或者一个结果,这个输出的就是供我们参考或者使用的。

那我们怎么评判这个模型的好坏?例如每年 ImageNet 都会进行比赛,那么评判的结果就是你这个模型算法进行数据分析和处理的准确度。例如人脸识别,有的算法识别率 80%,有的达到 98%。那么这个高识别率的模型算法就要好一些。我们需要改进的也就是这个模型算法(也就是调优),其中就会涉及到权重(Weight)和损失函数(Loss)。当然损失函数越低说明我们的算法处理数据越接近最佳结果。

再举个例子

我们进行预测某天天气的状况,这是一个需求。

某天天气的状况,会受到很多因素的影响,例如季节、地理位置、时间、人为因素等等,这些因素可能会有几十个。在深度学习模型里,这些影响结果的因素我们称之为特征。我们可以通过一些有标签的天气数据去输入到我们的模型里,不断的给各个特征设置权重、损失函数,不断的进行调优。最后形成能够很好的准确预测天气的一个模型。

我们在进行机器学习和深度学习的核心,就是在算法这块,也就是设计处理问题(数据)的模型。模型需要针对不同的问题和需求进行合理的选择或者搭配。会涉及到很多数学公式和函数。其实这些数学函数在一些框架里已经囊括了,如tensorflow,python 的 numpy 库。我们需要的就是通过训练数据进行模型测试训练,调优,再应用。

先有需求和目的:这个模型是干嘛的,处理什么问题的。输入的数据什么样的,想要有什么输出结果才是最好的,能够达到我们想要的目的的。是数据和需求驱动我们选择什么样的模型和函数算法。确定了大概的方案模型和算法函数,我们就要给模型不断的喂数据进行调整优化,使他能够输出更加准确的数据处理结果,也就是常说的训练模型。当模型通过数据训练好了后,我们就可以进行应用了,喂给它真实的数据进行处理。


欢迎转载,欢迎错误指正与技术交流,欢迎交友谈心

文章标题:深度学习概念入门

文章字数:2.5k

本文作者:Brain Cao

发布时间:2018-03-21, 16:49:52

最后更新:2020-03-09, 20:56:01

原始链接:https://braincao.cn/2018/03/21/deep-learning/

版权声明:本文为博主原创文章,遵循 BY-NC-SA 4.0 版权协议,转载请保留原文链接与作者。

目录
×

喜欢请收藏,疼爱就打赏