深度学习vs..机器学习——方法选择与模型训练
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
image(picture); title(char(label)); drawnow; end
% Show the picture % Show the label
3
人工智能,机器学习和深度学习
人工智能
任何能让机器 模仿人类智能
的技术
机器学习
深度学习
统计方法使机器能在
没有明确编程的情况下 从数据中"学习"任务
无监督学习
仅对输入数据进行分 组或解释
算法类型
分类
回归
Support Vector Machines
支持向量机
Discriminant Analysis
判别分析
Naive Bayes
朴素贝叶斯
Nearest Neighbor
最近邻
Linear Regression
GLM
SVR, GPR
Ensemble Methods
算法分类
分类
输出是分类的结果(正常、不正 常)
回归
输出是一个数值(温度、股票价 格)
聚类
没有输出-仅从输入数据中找到自 然分组和模式
5
深度学习还是机器学习?
▪ 你有标签数据吗?
– 如果没有,传统的机器学习可能是更合 适
▪ 是否能够接受黑盒子模型?
– 如果不能,传统的机器学习可能更合适
▪ 你了解你的数据吗?
17
结构:循环神经网络(RNN)
▪ RNN 是连接时间的神经网络 ▪ RNN 可以处理任意输入/输出长度 ▪ 使用输入之间的依赖关系
RNN
展开
18
结构:长短期记忆网络(LSTM)
lstmLayer()
▪ LSTM 是递归神经网络(RNN)的延伸
▪ LSTM 也可以通过时间连接,它们保存了长期和短期的依赖关系
12
你需要哪种应用?
A. 图片 B. 视频 C. 语音 D. 文字 E. 传感器 F. 以上都不是
▪ 应用类型 ▪ 输入/输出类型 ▪ 网络结构
没有图片,怎么办?
遇到序列数据或者时间序列数据,怎么办?
13
பைடு நூலகம்
Sequence 模型应用 输入/输出类型
one to one
one to sequence
输入:单词序列(句子)
▪ 发动机剩余使用时间(回归)
positive
输出:标签(positve)或negative
130 (小时)
输入:传感器信号时间序列
输出:发动机失效的时间(标量)
15
Sequence-to-Sequence 类型
▪ 字母级语言建模(分类) ‘h’ ‘e’ ‘l’ ‘l’
输入:字母序列
▪ 发动机剩余使用时间(回归)
‘e’ ‘l’ ‘l’ ‘o’
输出:输入字母的下一个字母预测序列
输入:传感器信号时间序列
输出:每个时间点发动机失效的程度
16
结构: 卷积神经网络 (CNN)
▪ 应用类型 ▪ 输入/输出类型 ▪ 网络结构
▪ CNN 是理想的图像和视频处理网络 ▪ CNN 采用固定大小的输入并生成固定大小的输出 ▪ 卷积将输入图像通过一组卷积滤波器,每一个都从图像中激活某些特征
具有许多层的神经网络,可以“直接” 从数据学习表示和任务。
FLOPS
1950s
Thousand
1980s
Million
在图像分类应用中,深度 学习比人类更准确
2015
Quadrillion
4
机器学习类型
机器学习 深度学习
学习类型
监督学习
基于输入输出数据开 发预测模型
无监督学习
仅对输入数据进行分 组或解释
while true
picture = camera.snapshot;
% Take a picture
picture = imresize(picture,[227,227]); % Resize the picture
label = classify(nnet, picture); % Classify the picture
▪ 额外算法 – Multiclass SVM, kmediods clustering
▪ 支持大数据 Tall Array ▪ 支持代码生成
“如果没有这个 图形 App,我不 会想要尝试机器学习”
10
深度学习
11
深度学习在行动
语音识别 情感分析
交易算法 动作判断
我们从何起步? ▪ 应用类型 ▪ 输入/输出类型 ▪ 网络结构
– 如果重要的特征提取需要专业领域知识, 选择机器学习
▪ 是否有 GPU 计算资源?
– 深度学习需要大规模计算资源
▪ 你的数据规模是什么?
– 深度学习通常需要大规模数据集
▪ 你的模型期望精度是多少?
– 机器学习可能会面临精度平台
6
机器学习
7
机器学习分类
机器学习
学习类型
监督学习
基于输入输出数据开 发预测模型
sequence to one
▪ 应用类型 ▪ 输入/输出类型 ▪ 网络结构
sequence to sequence
图像分类
图片字幕
▪ 时间序列分类
▪ 语言翻译
▪ 时间序列回归(预测) ▪ 自动补全(下个词组
▪ 情绪分析
补全)
▪ 动作识别
▪ 语音到文字翻译
14
Sequence-to-One 类型
▪ 电影评论的情感分析(分类) “This” “is” “the” “best” “movie” “ever”
深度学习 vs.. 机器学习 —— 方法选择与模型训练
© 2018 The MathWorks, In1c.
10行 MATLAB 代码实现深度学习
camera = webcam; % Connect to the camera nnet = alexnet; % Load the neural net
Decision Trees
Neural Networks
线性回归 支持向量回归 组合方法 决策树 神经网络
聚类
kMeans, kmedoids Fuzzy C-Means
Hierarchical
Gaussian Mixture
Neural Networks
Hidden Markov Model
K均值 分层聚类 高斯混合模型 神经网络 隐马尔科夫模型
8
选择模型与算法的挑战
1. 我应该选择哪个算法? 2. 需要自己开发及其学习算法吗? 3. 如何比较不同算法的结果? 4. 如何将新的数据应用到选择的模型? 5. 在开发过程中如何理解算法?
Classification Learner Regression Learner
9
统计与机器学习工具箱
▪ 高效、易用 – Classification Learner app – Regression Learner app – 并行计算选项