课程回顾-Structuring Machine Learning Projects
单一评价指标
保证训练、验证、测试的数据分布一致
不同的错误
错误分析
数据分布不一致
迁移学习 transfer learning
多任务学习 Multi-task learning
端到端的深度学习系统
好处
坏处
Reference
这门课不是具体的技术,而是帮助你决定现在最有价值做的应该是什么
正交化 Orthogonalization
简单的说就是有些调整是不相互影响的,所以可以分开做
单一评价指标
一般来说有一个单一数值作为评价指标会更好
如果存在多个指标,一般可以优化一个,其他几个满足一定条件就好
除了通用的一些指标,我们可以通过给样本加权的方式,使得获得更加适合我们应用的评价指标
保证训练、验证、测试的数据分布一致
不同的错误
- 任务的理论上限: bayes optimal error
- 人类的水平: human error
- 任务的理论上限: bayes optimal error
- 人类的水平: human error
假设一个图像识别的任务
| Humans | 1% | 7.5% |
|---|---|---|
| Training error | 8% | 8% |
| Dev Error | 10% | 10% |
- 左边的例子,如果人类的错误率是1%,那么我们应该关注的是bias
- 右边的例子,如果说人类错误率是7.5%,那么我们应该关注的是variance
- 在这个例子中我们能够用人类错误率来代替理论上限是因为人类在图像识别的任务上做的非常好

错误分析
可以通过手动随机抽样分析一些数据,看哪类的数据它出错最多,从而做针对性改进。
也可以分析一些他分对的业务和没对的业务,从而得到他的不足
数据分布不一致
数据分布不一致会导致上面的分析存在问题,所以这时候需要引入类似train-dev机制来实现
迁移学习 transfer learning
典型的就是fine-tunning
多任务学习 Multi-task learning
同时做多个任务,并且这多个任务可以互相帮助
端到端的深度学习系统
好处
- 充分利用数据
- 设计简单
坏处
- 需要更多数据
- 无法利用手工设计的有效特征(在小数据的情况下他们可能是很有效的)
Reference
https://github.com/mbadry1/DeepLearning.ai-Summary
课程回顾-Structuring Machine Learning Projects的更多相关文章
- 课程三(Structuring Machine Learning Projects),第一周(ML strategy(1)) —— 0.Learning Goals
Learning Goals Understand why Machine Learning strategy is important Apply satisficing and optimizin ...
- 课程三(Structuring Machine Learning Projects),第一周(ML strategy(1)) —— 1.Machine learning Flight simulator:Bird recognition in the city of Peacetopia (case study)
[]To help you practice strategies for machine learning, the following exercise will present an in-de ...
- 课程三(Structuring Machine Learning Projects),第二周(ML strategy(2)) —— 1.Machine learning Flight simulator:Autonomous driving (case study)
[中文翻译] 为了帮助您练习机器学习的策略, 在本周我们将介绍另一个场景, 并询问您将如何行动.我们认为, 这个工作在一个机器学习项目的 "模拟器" 将给一个任务, 告诉你一个机器 ...
- 课程三(Structuring Machine Learning Projects),第二周(ML strategy(2)) —— 0.Learning Goals
Learning Goals Understand what multi-task learning and transfer learning are Recognize bias, varianc ...
- 《Structuring Machine Learning Projects》课堂笔记
Lesson 3 Structuring Machine Learning Projects 这篇文章其实是 Coursera 上吴恩达老师的深度学习专业课程的第三门课程的课程笔记. 参考了其他人的笔 ...
- [C5] Andrew Ng - Structuring Machine Learning Projects
About this Course You will learn how to build a successful machine learning project. If you aspire t ...
- 吴恩达《深度学习》-课后测验-第三门课 结构化机器学习项目(Structuring Machine Learning Projects)-Week1 Bird recognition in the city of Peacetopia (case study)( 和平之城中的鸟类识别(案例研究))
Week1 Bird recognition in the city of Peacetopia (case study)( 和平之城中的鸟类识别(案例研究)) 1.Problem Statement ...
- Structuring Machine Learning Projects 笔记
1 Machine Learning strategy 1.1 为什么有机器学习调节策略 当你的机器学习系统的性能不佳时,你会想到许多改进的方法.但是选择错误的方向进行改进,会使你花费大量的时间,但是 ...
- 吴恩达《深度学习》-第三门课 结构化机器学习项目(Structuring Machine Learning Projects)-第一周 机器学习(ML)策略(1)(ML strategy(1))-课程笔记
第一周 机器学习(ML)策略(1)(ML strategy(1)) 1.1 为什么是 ML 策略?(Why ML Strategy?) 希望在这门课程中,可以教给一些策略,一些分析机器学习问题的方法, ...
随机推荐
- 学习java之路 简单日历查询代码
/** * 31天的 1, 3, 5, 7, 8, 10 ,12 30天的 4, 6,9,11 28天(平年) 2 29天(闰年) 2 */ class Demo{ public static voi ...
- 【mysql】:mysql性能优化总结
一.Mysql引擎概述 1.MyISAM存储引擎 MyISAM表是独立于操作系统的,这说明可以轻松地将其从Windows服务器移植到Linux服务器:每当我们建立一个MyISAM引擎的表时,就会在本地 ...
- Linux开发黑客
参考网站:http://blog.chinaunix.net/uid/20543672/abstract/1.html tekkamanninja
- MySQL优化:使用show status查看MySQL服务器状态信息
在网站开发过程中,有些时候我们需要了解MySQL的服务器状态信息,譬如当前MySQL启动后的运行时间,当前MySQL的客户端会话连接数,当前MySQL服务器执行的慢查询数,当前MySQL执行了多少SE ...
- Mac OS mysql数据库安装与初始化
一.官网下载mysql 二.安装并启用 三.数据库初始化 192:bin zhuyajing$ ./mysql -u root -p Enter password: Welcome to the My ...
- php 与 memcache 笔记
一:安装 Memcache是什么Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力.它 ...
- [swarthmore cs75] Compiler 1 – Adder
课程回顾 Swarthmore学院16年开的编译系统课,总共10次大作业.本随笔记录了相关的课堂笔记以及第3次大作业. 编译的过程:首先解析(parse)源代码,然后成抽象语法树(AST),再生成汇编 ...
- easyUI分页实现加搜索功能
前台页面: js代码: ps:pagination为true时会在table下面加上easyUI的分页. load函数会将查询值传给datagrid并传给后台重新加载. DAO.xml为: 后台代码实 ...
- 解决weblogic 部署环境后出现的乱码问题
1.在startWebloci.cmd 中 set CLASSPATH=%SAVE_CLASSPATH% 下增加一行 JAVA_OPTIONS="${JAVA_OPTIONS} -Dfile ...
- 架构(四)Git简介,安装以及相关命令SourceTree
一 Git介绍 1.1 Git是什么? Git是一个分布式版本控制软件: 版本控制:假如开发人员开发了一个a功能,结果项目经理觉得不够需要修改,开发人员又改成了b功能,后来又改成了c功能,但是最终项目 ...