前篇总结

  1. 深度学习_简介及相关概念
    http://blog.csdn.net/xieyan0811/article/details/78401473
  2. 深度学习_工具
    http://blog.csdn.net/xieyan0811/article/details/78411882
  3. 深度学习_BP神经网络
    http://blog.csdn.net/xieyan0811/article/details/78425453
  4. 深度学习_卷积神经网络CNN
    http://blog.csdn.net/xieyan0811/article/details/78438329
  5. 深度学习_循环神经网络RNN与LSTM
    http://blog.csdn.net/xieyan0811/article/details/78462982

 朋友反馈说,看不懂CNN和RNN篇.文章确实因为篇幅原因,有点跳步了.不过我觉得主要原因还是跳过了前面的基础部分.我们很多时候喜欢直击重点,跳过过程,但是有的过程确实跳不过去.
 数据挖掘,机器学习,机器视觉,语言处理这些背后有很多数学概率基础,且不止于此,它和大多数程序员之前接触的写应用,网络编程,数据库,配系统,学习编程语言,把人家的库拿来搭一搭… 不一样,那些即使不懂原理,也能照猫画虎做个七八成.在这里,我们用Python/R,它们把技术细节都解决了,这里拼的不是工作量,拼的是算法,是对数据的理解.参加个比赛或者技术选型,人家用啥模型,咱也用啥模型,即使只调参,也需要理解数据和掌握数学工具.不明白原理,还是没法跟人家拼?
我个人觉得,这个很难速成.对于程序员来说,唯一的捷径可能是从代码入手,在做的过程中,逐步把数学和原理补上.程序员对代码直觉相对好一点,有时候我看不懂图和公式,但我看得懂代码.

谈谈我对深度学习的理解

深度学习可以理解成一层一层地抽象提取隐含的特征,最后求解问题.一开始我觉得这和浅层学习中的算法集成差不多,那个也可以一层一层搭起来的.
随着学习的深入,我觉得它确实有明显的优势,比如:
第一:它引入的激活函数可以解决非线性问题.
第二:数据从x流向y,而误差从y逐层流回x,整个网络中所有权值都在不断调整,不是某一层调完就不动了,浅层集成大多数时候是单向的,没这灵活.
第三:它相对自动化,第个层间具体传输的内容,不用人手动指定和对接.

神经网络解决的问题

 一般把有监督学习分为三种(概念引自《机器学习》Peter Flach著):几何模型(如线性拟合),概率模型(如贝叶斯网络),逻辑模型(如决策树).具体算法可能是其中一种或多种的结合.
 看看神经网络与这三种模型的关系:
第一:几何模型,神经网络层与层间的连续就是线性变换,然后利用误差调整参数,这个过程就是线性拟合.
第二:概率模型,神经网络本来就是个概率类模型.它网络中各个权重表示的就是它对最终结果的影响,预测出的值也可以是结果的概率.
第三:逻辑模型,逻辑模型主要是:与,或,非,异或这些运算的组合,最常看到激活函数的例子就是处理异或运算.我们也常在池化中见到与或运算.因此,它也是神经网络可以实现的.
 还有一些无监督学习,在CNN的卷积和DropOut中也实现了一部分.
 那么是不是神经网络就可以代替所有算法了呢?杀鸡需要牛刀吗?异或还需要训练吗?确实很多算法都可以迂回地改用神经网络实现.但是还要考虑运算量和复杂度的问题.正如人脑处理简单问题和复杂问题也有不同的路径:有的是查表,有的是套路,有的是具体问题具体分析.神经网络也不是一种算法,而是一类算法的集合.好坏还是要看具体场景.写算法就像搭积木,你中有我,我中有你,不好讲哪块好,哪块不好.

关于鹦鹉学舌

 机器学习现阶段还是以模仿为主,即人们常说的鹦鹉学舌.真正的强人工智能,自主的思考,至少需要有常识(大量地采样和组织数据),才能识别出非常态的"特性",有了这些才能组合,理解,发现因果.再深入到确定目标,以及目标分解等等.这条链上缺失的东西有还是很多很多,目前以学术研究为主.想了解更多,建议阅读马文明斯基的《心智社会》.

推荐

 关于深度学习的书也不太多,有一些从具体工具入手,如Caffe,TensorFlow等等.卖 得最好的是《深度学习》Ian Goodfellow, Yoshua Bengio, Aaron Courville著("花书"),目前在当当的计算机网络类图书排名第一,也可见现在"深度学习"有多热门.虽然字不大,还很厚,不过去掉前边的数学知识,后面的附录,也还好,并且复杂的公式不多,讲得也很细,确实是良心之作.

总结

 机器学习只是人工智能的一部分,光靠它恐怕实现不了强人工智能.不过随着技术地进步越来越多相关技术也更多地溶入和结合起来,我们也不妨把它作为人工智能的切入点.
 本篇是本次深度学习系列的最后一篇,接下来的文章还会围绕机器学习展开,包括经典算法的代码实例,常用工具,Kaggle比赛介绍等等,可能会穿插地写.
 在这个过程中我们尽量不调库自己写算法,加入真实的应用场景,并且和原理结合起来,不过顺序可能会从兴趣出发,并非由浅入深.呵呵,我尽量写吧,欢迎继续关注…

技术文章定时推送
请关注公众号:算法学习分享


posted on 2017-11-07 12:33  xieyan0811  阅读(26)  评论(0编辑  收藏  举报