拖延了一两个月,我终于要憋不住洪荒之力开始写这个主题。它会是一个系列,因为内容实在是多如网红(如果我拖延癌办法没有写下去,请忘掉这个flag)。
机器学习是2016年计算机界的当红炸子鸡,连文科出身的罗胖在跨年演讲时都专门讲到了相关内容,可见它大红大紫的程度。
机器学习可以完成许多事情,比如,图像识别,语音合成,自动翻译等等。听起来很美好,可是现成的软件已经很多了啊,我干嘛要学呢?正经的答案应该是为了顺应时代的潮流啊,为了社会主义建设,更是为了我们伟大的祖国的繁荣昌盛!但普通人学嘛,大家都懂的,主要是为了装逼, 或者找工作而已…
可是装逼在机器学习的错综复杂面前显然形成不了足够的动力。你说耗费大量经历拼死拼活就写出个识别数字的程序,有嘛意思?!
这种思想很危险!为什么不进一步呢,图像识别当然不仅仅限于数字,还有更广阔的应用滴。比如写个程序能自动识别电影配图里面是不是包含你喜爱的动作片艺术家们,从而精准地在下载网站上挑出心仪的影片,这效果是不是突然就带感起来?
机器学习还可以被用来玩游戏,想想吧,你可以写出一个不吃饭不睡觉一直干活的“代练”,它还比你玩得好,什么空中开大回环转体180度再闪现回来继续干敌方都是小case。
这些应用都太给劲,我不敢继续往下想,毕竟想了也做不出来。接下来还是脚踏实地的入个机器学习的门比较实在。
首先,明确几个概念。当我们说起机器学习的时候,经常会听到人工智能,深度学习这些词,有的文章里也会混着用,反正意思差不多。那它们到底有什么区别呢?人工智能、机器学习和深度学习,就像女人、美女、美少女之间的关系。人工智能包含机器学习,机器学习又包含深度学习。
机器学习是人工智能实现的一个方式,平常计算系学习在学校写的五子棋程序,其实也算人工智能,因为“机器”有“智慧”了能跟你下棋了。但是这种五子棋程序,往往主要用的是“程序”里人为写好的各种规则,接受指令,来进行下一步操作。代码写成第一步下在中间, 那么第一步就会下在中间。但是机器学习不同,可以理解成机器学习接受的不是指令,而是数据。通过机器学习,我们能发现一些规律,然后当有新的数据输入时,根据已经学到的规律就可以推测出新数据对应的结果。
而深度学习呢,是实现机器学习的一种方式。也就是说,机器学习其实蛮多实现方式,我记得15年那会,火的是SVM(当然,那个时候深度学习也已经非常火了,只是还没有现在这么火)。深度学习一些核心概念其实上世纪八九十年代(也就是二三十年前)已经成型了,为啥现在才火起来呢?大量标注好的数据集以及GPU的使用,被认为是主要原因。有了这些之后,各种各样的深度学习领域新技术被提出并运用,实现了比其他方式更好的效果,这又促进了深度学习进一步的发展壮大。
深度学习,跟另外一个概念又密不可分,它就是神经网络。神经网络就像天地会的运作一样,信息从最底层的分舵收集整理起来,传到另一层分舵继续处理,直到传到总舵汇总所有的信息,并得到这些信息对应的结论。这样一层一层传递的方式,就跟大脑神经传递信息的方式类似,因此叫神经网络。多层(大于3,好像是)的神经网络,就叫深度神经网络,而利用深度神经网络进行机器学习,就叫深度学习。
终于写完了,累cry。好了,就这么多了。
注:本(系列)文章类似于笔记,一看就不是什么正经的机器学习教程。有任何错误,欢迎指正。