最近在阅读Phil Kim写的《MATLAB Deep Learning》一书,为了鞭策自己能够读完这本英文书籍,准备将书中的内容再加上自己的理解作为学习笔记记录下来,书中的实践例子用matlab编写,比较直观易懂,便于验证,希望可以提高对深度学习的理解。
(一)什么是机器学习?
深度学习,机器学习和人工智能的关系可以这样来形容,机器学习是人工智能的一个分支,而深度学习是机器学习一种实现方法。人工智能可以包涵各种类型的智能技术,但机器学习只是其中一个特定领域。对于机器学习来说 ,它也包涵了很多种实现方法,深度学习就是其中一种比较好的方法。深度学习在许多领域上的应用比较成功,但追根溯源,深度学习只是机器学习的一种方法,所以机器学习的一些局限性,深度学习也是存在的。
在明白什么是深度学习之前,首先需要了解什么是机器学习。通俗来讲,机器学习就是和数据相关的一种建模手段。机器学习就是通过训练数据,最终得到一个解决问题的模型,这一过程是计算机自己完成,不需要人的干预,所以称之为“学习”。举个例子,现在我们要做一个水果自动分类系统,这个系统就是我们最终想要的“模型”,为了建立这一模型,可以有很多种方法,比如我可以设定不同的颜色和形状的组合代表不同的水果特点,以此来进行分类,长的绿色的圆柱形的判定为黄瓜,圆的红色的球体判定为西红柿。这样建立出来的模型就是传统意义上的人为的建模过程,这种模型可以解决一部分问题,比如水果特征差别较大的时候,识别准确率较高。但是当水果之间的特征差异较小,比如葱和黄瓜,就不太好区分,需要去加入更多的特征点才能辨别,人要不断的去修改模型,最终也未必能够达到要求。换一个角度思考,黄瓜和葱摆在你的面前,你一秒钟就可以分辨出它们,不需要去过多的考虑它们之间不同的特征,这是由于从小到大,你已经见过了太多的葱和黄瓜。那么计算机是否可以模仿这样一种识别方法,通过大量的黄瓜和葱的图片训练,自己分辨出它们,这就是机器学习的基本概念,利用训练数据建立模型,这样就可以解决人为建模无法解决的一些问题。