03.结构化机器学习项目 W1.机器学习策略(1)

文章目录

    • 1. 机器学习策略
    • 2. 正交化 Orthogonalization
    • 3. 单一数字评估指标
    • 4. 满足和优化指标
    • 5. 训练/开发/测试集划分
    • 6. 开发集和测试集的大小
    • 7. 什么时候该改变开发/测试集和指标
    • 8. 人类的表现水准
    • 9. 可避免偏差
    • 10. 理解人的表现
    • 11. 超过人的表现
    • 12. 改善你的模型的表现
    • 测试题作业

参考:
吴恩达视频课
深度学习笔记

1. 机器学习策略

如何改善模型的性能

  • 收集更多数据
  • 训练集多样性(如,识别猫,收集各种姿势的猫,以及反例)
  • 训练的时间更长一些
  • 尝试不同的优化算法(如 Adam优化)
  • 规模 更大 / 更小 的神经网络
  • 尝试 DropOut 正则化
  • 尝试添加 L2 正则化
  • 新的网络结构(修改激活函数,隐藏单元数目)

你可以去尝试,但是万一花了半年时间,最后发现是错误的?那就哭吧!

需要判断哪些是有效的,哪些是可以放心舍弃的。

2. 正交化 Orthogonalization

各个调整的变量之间最好没有耦合关系

定位出模型的性能瓶颈在哪个环节,利用对应的方法去改善

early stopping,就是一个不那么正交化的方法
过早停止,影响训练集准确率,同时它又可以改善在开发集的准确率
它同时影响两件事情,尽量用其他的正交化控制方法

3. 单一数字评估指标

在这里插入图片描述

  • 准确率、召回率、F1值(前两者的平均)

F1=21precision+1recall=2∗precison ∗recallprecison +recall=TPTP+FN+FP2F 1=\frac{2}{\frac{1}{\text {precision}}+\frac{1}{\text {recall}}}=2 * \frac{\text {precison } * \text {recall}}{\text {precison }+\text {recall}}=\frac{T P}{T P+\frac{F N+F P}{2}}F1=precision1+recall12=2precison +recallprecison recall=TP+2FN+FPTP

单一评估指标
有一个单实数评估指标可以提高你的效率 或 做出决策的效率

4. 满足和优化指标


考虑 N 个指标,有时候选择其中一个做为优化指标是合理的。

尽量优化那个指标,然后剩下 N-1 个指标都是满足指标,意味着只要它们达到一定阈值,你不再关心指标在阈值内的大小

5. 训练/开发/测试集划分


举例:前4个区域的数据作为开发集,后4个作为测试集

  • 非常不好,他们很可能来自不同的分布
  • 应该随机打乱所有的数据,重新划分

6. 开发集和测试集的大小

早期 机器学习数据集划分比例
现代 机器学习数据集划分比例

7. 什么时候该改变开发/测试集和指标


更改测试指标:
误差:1∑w(i)∑i=1mdevw(i)L{(y^(i)≠y(i))}误差: \frac{1}{\sum w^{(i)}} \sum_{i=1}^{m_{d e v}} w^{(i)} \mathcal{L}\left\{\left(\hat{y}^{(i)} \neq y^{(i)}\right) \bigg\}\right.:w(i)1i=1mdevw(i)L{(y^(i)=y(i))}

w(i)={1if x(i)是非色情图片 10if x(i)是色情图片w^{(i)}=\left\{\begin{array}{cl}1 & \text { if } x^{(i)} \text { 是非色情图片 } \\ 10 & \text { if } x^{(i)} \text { 是色情图片}\end{array}\right.w(i)={110 if x(i) 是非色情图片  if x(i) 是色情图片

以上方法,你必须自己过一遍数据,把色情图片标记出来


在比如:你的开发/测试集都是很清晰的专业图片,而应用最终上线是针对不专业的图片(模糊,角度不好等)

那么就要更改开发/测试集,加入不专业图片作为训练数据

8. 人类的表现水准

把机器学习的水平和人类的水平相比较是很自然的。我们希望机器比人做的更好

对于人类擅长的任务,只要机器学习算法比人类,就可以让人帮你标记数据,就有更多的数据可以喂给学习算法,改进算法

9. 可避免偏差

10. 理解人的表现

在这里插入图片描述

11. 超过人的表现

情况B:超过 0.5% 的门槛(比最好的医生的误差还低),要进一步优化你的机器学习问题就没有明确的选项和前进的方向了

12. 改善你的模型的表现

总结:

以上的方法就是一种正交化的改进思路。

  • 训练集误差 与 贝叶斯估计误差 之间的差距:可避免偏差
  • 训练集误差 与 开发集误差 之间的差距:方差

改进偏差

  • 更大规模的模型
  • 训练更久、迭代次数更多
  • 更好的优化算法(Momentum、RMSprop、Adam)
  • 更好的新的神经网络结构
  • 更好的超参数
  • 改变激活函数、网络层数、隐藏单元数
  • 其他模型(循环NN,卷积NN)

改进方差

  • 收集更多的数据去训练
  • 正则化(L2正则、dropout正则、数据增强)
  • 更好的新的神经网络结构
  • 更好的超参数

测试题作业

参考博文链接


我的CSDN博客地址 https://michael.blog.csdn.net/

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
Michael阿明

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/474052.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Educational Codeforces Round 104 (Rated for Div. 2)A~E解题报告

Educational Codeforces Round 104 (Rated for Div. 2) A. Arena \quad原题链接 http://codeforces.com/contest/1487/problem/A \quad解题思路 首先,我们看战斗次数是无限的,任意非最小值的英雄都有赢得次数,既然有场次可以赢&#xff0…

LeetCode 1130. 叶值的最小代价生成树(区间DP/单调栈贪心)

文章目录1. 题目2. 解题2.1 DP2.2 单调栈贪心1. 题目 给你一个正整数数组 arr,考虑所有满足以下条件的二叉树: 每个节点都有 0 个或是 2 个子节点。数组 arr 中的值与树的中序遍历中每个叶节点的值一一对应。(知识回顾:如果一个…

03.结构化机器学习项目 W2.机器学习策略(2)

文章目录1. 进行误差分析2. 清除标注错误的数据3. 快速搭建你的第一个系统,并进行迭代4. 使用来自不同分布的数据,进行训练和测试5. 数据分布不匹配时,偏差与方差的分析6. 定位数据不匹配问题7. 迁移学习 Transfer learning8. 多任务学习 Mul…

Codeforces Round #702 (Div. 3)解题报告

Codeforces Round #702 (Div. 3) 全部题解 读错题意,写了半天真是心态爆炸,总的来看这次题目不难的。 A. Dense Array http://codeforces.com/contest/1490/problem/A 解题思路 相邻的数字必然是倘若不满足的话是需要插入数据的,那么我们…

LeetCode 930. 和相同的二元子数组(哈希+前缀和)

文章目录1. 题目2. 解题1. 题目 在由若干 0 和 1 组成的数组 A 中,有多少个和为 S 的非空子数组。 示例: 输入:A [1,0,1,0,1], S 2 输出:4 解释: 如下面黑体所示,有 4 个满足题目要求的子数组&#xff…

poj 3469(网络流模版)

题目链接&#xff1a;http://poj.org/problem?id3469 思路&#xff1a;终于把网络流的模版测试好了&#xff0c;在Dinic和Sap之间还是选择了Sap,事实证明Sap确实比Dinic效率高&#xff0c;在此贴出自己的网络流模版&#xff1a; 1 #include<iostream>2 #include<cstd…

盒子的真实宽高

盒子的宽 两边border 两边padding 盒子的高度 上下border 上下padding

04.卷积神经网络 W1.卷积神经网络

文章目录1. 计算机视觉2. 边缘检测示例3. 更多边缘检测4. Padding5. 卷积步长6. 三维卷积7. 单层卷积网络8. 简单卷积网络示例9. 池化层10. 卷积神经网络示例11. 为什么使用卷积&#xff1f;作业参考&#xff1a; 吴恩达视频课 深度学习笔记 1. 计算机视觉 举例&#xff1a;图…

JAVA基础学习预科部分 (Markdown + dox)2021/2/22持续更新中

javaSE从 2021/02/22开始&#xff0c;预计到2021/02/28&#xff0c;原本预计的算法题解先鸽一下。 -博客Blog的重要性 & Markdown语法 基础markdown语法 标题&#xff0c; 直接使用 ‘#’&#xff0c;一级二级…五级字体&#xff0c;斜体(左右个一个∗*∗)&#xff0c;加…

LeetCode 1031. 两个非重叠子数组的最大和(一次遍历,要复习)*

文章目录1. 题目2. 解题2.1 暴力枚举2.2 一次遍历1. 题目 给出非负整数数组 A &#xff0c;返回两个非重叠&#xff08;连续&#xff09;子数组中元素的最大和&#xff0c;子数组的长度分别为 L 和 M。&#xff08;这里需要澄清的是&#xff0c;长为 L 的子数组可以出现在长为…

Java入门篇 2021/02/22

Java入门篇 2021/02/22 Java的三大版本 java三大版本主要包括 JavaSE, JavaME, JavaEE&#xff0c;其中现如今的JavaME已经是很少见了&#xff0c;JavaSE是JavaEE的基础。 JDK、JER、JVM三个关系 JDK, JRE, JVM具体的关系可以参照下图&#xff0c;是名副其实的包含关系。 J…

LeetCode 911. 在线选举(二分查找)

文章目录1. 题目2. 解题1. 题目 在选举中&#xff0c;第 i 张票是在时间为 times[i] 时投给 persons[i] 的。 现在&#xff0c;我们想要实现下面的查询函数&#xff1a; TopVotedCandidate.q(int t) 将返回在 t 时刻主导选举的候选人的编号。 在 t 时刻投出的选票也将被计入…

java 流程控制篇 2021/02/26持续更新中

1. 用户交互Scanner 1.1 简单的Scanner用法 首先&#xff0c;需要 import java.util.Scanner其次&#xff0c;需要创建一个 Scanner 类的对象&#xff0c; Scanner s new Scanner(System.in);通过调用Scanner对象的方法来完成&#xff0c; 一定要注意有开有关&#xff0c;最…

04.卷积神经网络 W1.卷积神经网络(作业:手动/TensorFlow 实现卷积神经网络)

文章目录作业1&#xff1a;实现卷积神经网络1. 导入一些包2. 模型框架3. 卷积神经网络3.1 Zero-Padding3.2 单步卷积3.3 卷积神经网络 - 前向传播4. 池化层5. 卷积神经网络 - 反向传播5.1 卷积层反向传播5.1.1 计算 dA5.1.2 计算 dW5.1.3 计算 db5.2 池化层 - 反向传播5.2.1 最…

html的实战性介绍

Html 简介 超文本结构语言 html并非一种编程语言&#xff0c; 而是一种描述超文本文档的标记语言&#xff0c;用html编写的超文本文档成为html文档。 超文本文档指的是&#xff0c;可以加入图片、声音、动画、影视等内容&#xff0c;并可以利用超链接方便的从一个文件跳转到网…

LeetCode 808. 分汤(动态规划)

文章目录1. 题目2. 解题1. 题目 有 A 和 B 两种类型的汤。一开始每种类型的汤有 N 毫升。有四种分配操作&#xff1a; 提供 100ml 的汤A 和 0ml 的汤B。提供 75ml 的汤A 和 25ml 的汤B。提供 50ml 的汤A 和 50ml 的汤B。提供 25ml 的汤A 和 75ml 的汤B。 当我们把汤分配给某…

LeetCode 848. 字母移位(前缀和+取模)

文章目录1. 题目2. 解题1. 题目 有一个由小写字母组成的字符串 S&#xff0c;和一个整数数组 shifts。 我们将字母表中的下一个字母称为原字母的 移位&#xff08;由于字母表是环绕的&#xff0c; ‘z’ 将会变成 ‘a’&#xff09;。 例如&#xff0c;shift(a) b&#xff…

第一章、OS引论1

1.1 操作系统的目标和作用 1.1.1 操作系统的目标 计算机上安装操作系统&#xff0c;主要目标是&#xff1a;方便性、有效性、可扩充性和开放性。 方便性&#xff1a;方便用户&#xff0c;使计算机变得易学易用有效性&#xff1a;提高系统资源(资源指CPU(处理机),存储器,文件(…

LeetCode 858. 镜面反射(最小公倍数/最大公约数)

文章目录1. 题目2. 解题1. 题目 有一个特殊的正方形房间&#xff0c;每面墙上都有一面镜子。 除西南角以外&#xff0c;每个角落都放有一个接受器&#xff0c;编号为 0&#xff0c; 1&#xff0c;以及 2。 正方形房间的墙壁长度为 p&#xff0c;一束激光从西南角射出&#xf…

Ubuntu从零安装 Hadoop And Spark

安装 linux 以Ubuntu为例 选择镜像&#xff0c;虚拟机安装 虚拟机下&#xff0c;直接安装镜像即可&#xff0c;选择好自己的配置&#xff0c;一定要注意路径名选好&#xff0c;而且和你虚拟机的名称匹配&#xff0c;这里我的镜像是 ubuntu-20.04.2.0-desktop-amd64.iso 切换…