快速搭建系统并进行迭代

1.建立dev/test set,并确定你的目标

2.快速建立初始化的系统

3.使用前面提到的bias/variance分析和错误分析来进行模型优化和迭代

针对以上的过程,Andrew Ng建议在搭建第一个系统的时候遵循quick and dirty的思路

不要过度复杂化初始系统,显然地无论如何都要进行多次迭代的情况下,如果过度复杂化了初始系统,也许会提前走向偏移正确道路的方向

在不同的划分上进行训练和测试

深度学习对于train数据有很大的胃口,因此越来越多的团队倾向于收集大量的数据,不管这些数据和测试数据是不是same distribution的,针对这种情况请看下面的例子:

现在假设抓取了200000张来自网络的图片,拥有10000张用户上传的图片。这两部分图片显然是不同分布的,但是我们又需要大量的图片作为训练集。

第一种做法:不建议

将两部分图片混合后,这210000张图片再random shuffle(随机分配)到train/dev/test中,205000/2500/2500

这种方法的好处:此时遵循了same distribution

这种方法的坏处:test的2500张图片必然有大部分来自于网络而不是我们真正关心的用户数据,可能只有数学期望值为2500*10000/210000=119张图片来自用户。

这绝对不是我们想要的,因为设立test集合的目标就是测试真实环境下模型的表现。

第二种做法:建议

train/dev/test中,205000/2500/2500,只不过此时的train包含了全部的20w张网络图片和5k张用户图片,而dev和test集合的所有图片均来自于用户

这种方法的好处:长期而言,这种基于目标的划分可以带来模型的精准化迭代

这种方法的坏处:此时并不遵循same distribution,但是在后面我们会介绍一些方法来改善这个问题,请看11.3

ubuntu之路——day11.2 快速搭建系统并进行迭代、在不同的划分上进行训练和测试的更多相关文章

  1. 使用ASP.NET MVC+Entity Framework快速搭建系统

    详细资料: http://www.cnblogs.com/dingfangbo/p/5771741.html 学习 ASP.NET MVC 也有一段时间了,打算弄个小程序练练手,做为学习过程中的记录和 ...

  2. Ubuntu 16 Java Develop环境快速搭建

    安装JDK 1. 更新apt-get: $ sudo apt-get update 2. 安装jdk: $ sudo apt-get install openjdk-8-jdk 部分eclipse现只 ...

  3. ubuntu之路——day11.7 end-to-end deep learning

    在传统的数据处理系统或学习系统中,有一些工作需要多个步骤进行,但是端到端的学习就是用一个神经网络来代替中间所有的过程. 举个例子,在语音识别中: X(Audio)----------MFCC----- ...

  4. Ubuntu 18.04.1 下快速搭建 LNMP环境

    1.Nginx的安装 Nginx安装是属于最简单的,只需要在命令行执行 sudo apt-get install nginx 就能自动安装 Nginx,其中过程中需要 选择 Y/n 的选择Y就行了,当 ...

  5. ubuntu之路——day11.6 多任务学习

    在迁移学习transfer learning中,你的步骤是串行的sequential process 在多任务学习multi-task learning中,你试图让单个神经网络同时做几件事情,然后这里 ...

  6. ubuntu之路——day11.5 迁移学习

    在深度学习领域中,最强力的理念之一就是可以将神经网络学习的一种知识应用到另一个独立的任务中. 看上面的例子,首先我们有一个已经完成训练的神经网络,其目标是图像识别,我们有了绿色的1000000张图片并 ...

  7. ubuntu之路——day11.4 定位数据不匹配与人工合成数据

    1.人工检验train和dev/test之间的区别: 比如:汽车语音识别中的噪音.地名难以识别等等 2.使得你的训练集更靠近(相似于)dev/test,收集更多类似于dev的数据: 比如:dev中存在 ...

  8. ubuntu之路——day11.3 不匹配数据划分的偏差和方差

    在11.2中,我们提到了一种数据划分的方法,那么怎么衡量这种数据划分方法中的误差呢? 来看一个例子:有20w条各种领域的语音识别数据,2w条汽车语音定位数据 train+dev+test,其中trai ...

  9. ubuntu之路——day11.1 如何进行误差分析

    举个例子 还是分类猫图片的例子 假设在dev上测试的时候,有100张图片被误分类了.现在要做的就是手动检查所有被误分类的图片,然后看一下这些图片都是因为什么原因被误分类了. 比如有些可能因为被误分类为 ...

随机推荐

  1. UCOSIII钩子函数

    OSIdleTaskHook 空闲任务调用这个函数,可以用来让CPU进入低功耗模式 void OSIdleTaskHook (void) { #if OS_CFG_APP_HOOKS_EN > ...

  2. linux对象系统---kobject, ktype, kset, subsys

    本文转自:linux中kobject/ktype/kset/subsys之间的关系 随着内核版本的发展,会有一些变化,无论怎样,变化的是形式,不变的是思想! 那么他们之间具有什么关系?那应该不是'小3 ...

  3. vue-cli脚手架——3.0版本项目案例

    一.[准备工作] node与git部分见vue-cli2.0搭建案例 vue-cli3.0是一个基于 Vue.js 进行快速开发的完整系统.有三个组件: CLI:@vue/cli 全局安装的 npm ...

  4. vs2017 官方下载地址 和 官方建立脱机安装包的方法

    vs2017 官方下载地址: https://docs.microsoft.com/zh-cn/visualstudio/releasenotes/vs2017-relnotes VS2017 官方建 ...

  5. Python——元组

    是为了满足,某些值当被定义以后就不可修改或删除而出现的元组形式. 特点: 元组中的元素不可被修改或删除 没有独立的功能 可以进行嵌套,当嵌套方可以修改删除时,可以对嵌套方进行. 元组可以进行公共功能中 ...

  6. 编写订单支付api中遇到的问题

    首先我是按照已经有的已经有的支付api去编写订单支付api,但是由于两者是有区别的,所以类似去搬用难免会出问题,首先我是套用已经写好的model,然后写相应的serializer,实现序列化之后就开始 ...

  7. (备忘)解决用Xftp向CentOS7 传文件速度慢的问题

    问题原因:之前用XFTP上传文件的时候一直挺好的,今天突然速度特别慢,上传了一个多小时也没把一个一百兆的文件成功上传 查询过程: 1.网络原因:网络的确有点卡,但不至于这么慢吧,几K的速度,鉴于网络问 ...

  8. 191011 python3-format函数

    # 题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半:# 再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?方法一: l = 100.0 s = 100 for i in r ...

  9. kubernetes之pod健康检查

    目录 kubernetes之pod健康检查 1.概述和分类 2.LivenessProbe探针(存活性探测) 3.ReadinessProbe探针(就绪型探测) 4.探针的实现方式 4.1.ExecA ...

  10. plsql查看是否锁表,锁模式等,以及解锁SQL

    --工作中的点滴积累SELECT l.session_id sid, s.serial#, l.locked_mode 锁模式, l.oracle_username 登录用户, l.os_user_n ...