机器学习与深度学习
机器学习
机器学习(Machine Learning):专门研究计算机怎样模拟或实现人类的学习行为,以获取新知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
是人工智能的一个学科分支。
原理
赋予机器学习的能力让它完成直接变成无法实现的功能。
传统编程:依靠人总结规律,设计算法。
机器学习:依靠机器训练得出模型。
学习形式分类
监督学习:有特征,有标签
半监督学习:有特征,部分标签
无监督学习:有特征,无标签
强化学习:通过反馈的结果不断调整之前的策略
监督学习(supervised learning)
从给定的有标注训练集中学习出一个函数(模型参数),当新的数据到来时,可以根据这个函数预测结果。
分类与回归。
无监督学习(unsupervised learning)
无标注训练集,根据统计规律对样本集进行分析。
聚类。
强化学习(reinforcement learning)
机器学习的一个重要分支。通过反馈的结果不断调整之前的策略,从而算法能够学习到:在何种情况下选择何种结果可以获得最好的结果。
例如AlphaGo可以不断尝试围棋的解法,在获得反馈后不断调整策略,直至获取最佳解法。
深度学习
深度学习(Deep Learning)是机器学习领域中一个新的研究方向。
意在学习样本数据的内在规律和表示层次,最终目标是让机器能够像人一样具有分析学习能力。
是一个复杂的机器学习算法,在语音和图像识别等方面效果出众。
深度学习往往无需人工设计特征,而通过机器学习自身来产生。
如图:将特征工程并入到机器来实现。
前馈神经网络
最简单的神经网络,只有“前馈”没有“反馈”。即数据流顺序地通过每一层,前一层的输出即为后一层的输入。
卷积神经网络(CNN)
是一类包含卷积计算且具有深度结构的前馈神经网络,是深度学习的代表算法之一。因其能平移不变分类,也称平移不变神经网络。
图片分类、目标检测、图像分割、人脸识别、人体姿态识别等。
循环神经网络(RNN)
节点按链式连接的递归神经网络。
自然语言处理、计算机视觉。
生成式对抗网络(GAN)
复杂分布上的无监督学习。
通过至少两个模块:生成模型和判别模型进行互相博弈学习来产生相当好的输出。
图像生成、数据增强。
深度强化学习
深度学习 - 感知能力
强化学习 - 决策能力
复杂问题的感知决策问题。
深度学习发展历程
深度学习开发工具
深度学习框架:整合了大量重复代码。
PaddlePaddle、Tensorflow、Caffe、Theano、MXNet、Torch、PyTorch。
PyTorch
以 Torch 为基础,用Python 重写了大量内容,支持动态神经网络。
Tensor Flow
C++开发的开源数学计算软件,使用数据流图的形式计算,适用于各个领域。
Caffe
深度学习框架,C++/CUDA架构。
PaddlePaddle
百度研发,国内领先。
MXNet
亚马逊的官方框架,分布式支持,性能强,显存占用低。
深度学习的应用
计算机视觉、自然语言处理等