#1 深度学习笔记 I – 卷积神经网络的直观解释 A - 整体结构
#2 深度学习笔记 II – 卷积神经网络的直观解释 B - Convolution & Pooling Step
#3 深度学习笔记 III – 卷积神经网络的直观解释 C - Introducing Non Linearity & Fully Connected
#4 深度学习笔记 IV – 多层感知器-前馈神经网络与反向传播学习 - Multi Layer Perceptron - Feedforward Neural Network&Backward Propagation of Errors
#5 深度学习笔记 V – 激活函数ReLU - ReLU Activation Function
记录几个之前错过的知识点。
监督学习 无监督学习 半监督学习 【Supervised learning Unsupervised Learning Semi-supervised learning】
这个知识点本来不想记录了,因为非常直观。今天和同事讨论machine learning 和 deep learning的时候讨论到了监督和无监督的问题,想想还是记录一下。
监督学习就是之前所有文章中讲到的神经网络训练的过程,给定训练数据,这些数据已知Feature(特征)和Label(标签,e.g. 阿猫阿狗小船汽车),然后找到特征和标签之间的关系。当学习到了这个关系以后,再有已知特征但未知标签的输入的时候,便可以识别出对应的标签,这个过程其实就是分类(Classification)。
无监督学习就是训练数据只有特征但没有标签,需要学习过程对这些数据进行聚集(clustering),自主地聚集!物以类聚人以群分在机器里也是存在的啊,XD!
半监督就是一些数据有标签,一些数据没标签,然后打一套漂亮的Clustering 和Classification的组合拳!
关于监督和半监督的pros and cons,显然监督学习会比无监督学习得到更完美的分类结果,然而标签的获得需要大量的工作量!
今天一个最初就没分清楚的问题一直在脑子里:machine learning 和 deep learning 的 区别?
Image source[1]
上面的图片来自nvidia网站上一篇博客 What’s the Difference Between Artificial Intelligence, Machine Learning, and Deep Learning?。 图中的意思是机器学习包含了深度学习,文章中其中对于人工智能,机器学习和深度学习的标题性概述感觉总结的非常好:
Artificial Intelligence — Human Intelligence Exhibited by Machines
Machine Learning — An Approach to Achieve Artificial Intelligence
Deep Learning — A Technique for Implementing Machine Learning
大名鼎鼎的Google Alpha Go 就是最出色的deep learning的杰作,最近它的纪录片要有希望冲击奥斯卡最佳纪录片了,我看了预告片,好多李世石的画面,下围棋的人抽烟都那么雅
反向传播算法【Back Propagation algorithm】
前面先记录一下监督学习,就是为了这个反向传播算法,因为这个反向传播显然是需要特征和标签都已知的,所以反向传播算法发生在监督学习过程中。
其实反向传播算法在前面的笔记中已经算是记录过了,但这一篇Principles of training multi-layer neural network using backpropagation是我读到的关于反向传播算法最好最好的解释,图文并茂!只有一点是算法中有一个参数η的设定在文章中只是一笔带过,不过感觉这个参数是重中之重。文章里非常直观的用一步一步的图形讲解了反向传播算法,看到国内很多作者都直接用了这篇文章的图片,也不知道获没获得原作者的许可,就把人家图片用了。
另一篇Calculus on Computational Graphs: Backpropagation,这里面非常详细得从唤醒导数的求法开始(求导的目的当然是为了看变化率的大小,这样就能知道权重的影响力);接下来回顾了前向模式求导( forward-mode differentiation) 反向模式求导(reverse-mode differentiation),前向求导模式是看一个输入如何影响每一个节点,而反向求导模式是查看每一个节点如何影响一个输出(越来越清晰了有没有!), 说明了前向和反向带来的计算量的巨大差异!作者在文章末尾的总结挺有意思。
这个视频[4]做的要挺生动的,可惜的是并没有反向传播算法的细节,但可以从中看到训练一个简单的计数器也需要大量的时间。
Reference
[1] What’s the Difference Between Artificial Intelligence, Machine Learning, and Deep Learning?
[2] How do you explain back propagation algorithm to a beginner in neural network?
[3] Principles of training multi-layer neural network using backpropagation
[4]https://rimstar.org/science_electronics_projects/backpropagation_neural_network_software_3_layer.htm
谢谢阅读 !
Thanks for your reading!
Please feel free to upvote, comment and follow me @victory622
厉害
人工智慧不得不留意啊~~
来跟着你继续学习,我学到三了
厉害!
参数η就是学习速度learning rate。它的大小是在训练的时候调整。
这个也在训练的时候调整啊,谢谢!