吴恩达机器学习训练秘籍整理一到十章(一)

2023-10-09 16:59

本文主要是介绍吴恩达机器学习训练秘籍整理一到十章(一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

第一到四章:

1.为什么选用机器学习策略。机器学习是无数重要应用的基础。

2.先修知识与符号标记。有监督学习的经验。了解机器学习。

3.驱动机器学习发展的原因。数据的可用性和计算规模。

传统算法和神经网络算法在数据集较小的情况下区别不大,但是随着数据集的增加和网络层数的加深,效果会越来越好。

假设我们要做的产品是一个APP,用户上传图片我们来自动的找到图中有猫的照片。 

 

第五章:

这一章主要介绍测试集,开发集和训练集。

我们训练自己的网络需要先收集大量猫的数据集(正样本)和不含有猫的数据集(负样本)。将这些数据集按照7:3的比例划分为训练集和测试集。

1.训练集:训练你的算法

2.开发集:用于调整参数,选择特征,以及对学习算法作出其它决定。有时也称为留出交叉验证集(hold-out cross validation set)。在训练的过程中对算法进行评价。

3.测试集:评估算法的好坏。训练结束后对模型进行评价

对于数据较少的机器学习来说一般按照7:3或者8:2来划分。加入开发集一般按照6:2:2来进行划分。

对于深度学习的大量数据来说一般按照98:1:1来进行划分。

第六章:

开发集和测试集应该服从同一分布。

第七章:

开发集和测试集应该有多大?

1. 开发集的大小应该在1000-10000之间。主要还是看你所在的领域对于精度的要求有多高,要求的精度越高开发集就应该越多。

2. 虽然现在我们机器学习的数据在不断的增加,因此开发集和测试集的数据的绝对数量都在增加,可是总体上分配给他们的比例是在减少的。因此也可以看出来开发集和测试集并不是越大越好。

第八章:

查准率(精度)和查全率(召回率)

查准率:在训练集(或者测试集中)被预测为猫的图片中,实际类别是猫的样本比例。

查全率:在训练集(或者测试集中)所有类别为猫的图片中,被准确识别为猫的比例。

在开发过程中有可能只需要考虑其中的一个标准就可以,或者将两个标准合并在一起来评价算法的好坏。

第九章:

优化指标和满意度指标。多评价指标问题。

假设我们既要关心算法的准确率又要关心其运行时间。

我们将准确率和时间放入到公式里面计算得出单个指标,这似乎不太自然

Accuracy-0.5*Running time

我们可以采用一个代替方案,首先定义一个我们可以接受的程序运行时间100ms。然后再在这个运行时间之内找一个准确率最高的分类器,这样我们就可以找到分类器B。此时时间在这里就是一个‘满意度指标’,而准确率就是一个‘优化指标’。

假设我们有N个不同的标准,比如运行时间,模型大小和准确率这三个标准。我们可能需要考虑N-1个满意度指标,下一步定义一个优化指标。例如时间和模型大小是满意度指标,准确率是优化指标。

第十章:

如何解决面临的问题

1.尝试一些新的想法。

2.通过代码实现想法。

3.根据实验判断想法是否行得通。

上图所示循环迭代的越快,我们的进展就会越快。此时拥有开发集、测试集和度量指标的重要性便得以体现了:每当你有了一个新想法,在开发集上评估其性能可以帮你判断当前的方向是否正确。

这篇关于吴恩达机器学习训练秘籍整理一到十章(一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/174270

相关文章

MySQL 多列 IN 查询之语法、性能与实战技巧(最新整理)

《MySQL多列IN查询之语法、性能与实战技巧(最新整理)》本文详解MySQL多列IN查询,对比传统OR写法,强调其简洁高效,适合批量匹配复合键,通过联合索引、分批次优化提升性能,兼容多种数据库... 目录一、基础语法:多列 IN 的两种写法1. 直接值列表2. 子查询二、对比传统 OR 的写法三、性能分析

Javaee多线程之进程和线程之间的区别和联系(最新整理)

《Javaee多线程之进程和线程之间的区别和联系(最新整理)》进程是资源分配单位,线程是调度执行单位,共享资源更高效,创建线程五种方式:继承Thread、Runnable接口、匿名类、lambda,r... 目录进程和线程进程线程进程和线程的区别创建线程的五种写法继承Thread,重写run实现Runnab

Spring IoC 容器的使用详解(最新整理)

《SpringIoC容器的使用详解(最新整理)》文章介绍了Spring框架中的应用分层思想与IoC容器原理,通过分层解耦业务逻辑、数据访问等模块,IoC容器利用@Component注解管理Bean... 目录1. 应用分层2. IoC 的介绍3. IoC 容器的使用3.1. bean 的存储3.2. 方法注

MySQL 删除数据详解(最新整理)

《MySQL删除数据详解(最新整理)》:本文主要介绍MySQL删除数据的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录一、前言二、mysql 中的三种删除方式1.DELETE语句✅ 基本语法: 示例:2.TRUNCATE语句✅ 基本语

Python变量与数据类型全解析(最新整理)

《Python变量与数据类型全解析(最新整理)》文章介绍Python变量作为数据载体,命名需遵循字母数字下划线规则,不可数字开头,大小写敏感,避免关键字,本文给大家介绍Python变量与数据类型全解析... 目录1、变量变量命名规范python数据类型1、基本数据类型数值类型(Number):布尔类型(bo

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

MySQL复杂SQL之多表联查/子查询详细介绍(最新整理)

《MySQL复杂SQL之多表联查/子查询详细介绍(最新整理)》掌握多表联查(INNERJOIN,LEFTJOIN,RIGHTJOIN,FULLJOIN)和子查询(标量、列、行、表子查询、相关/非相关、... 目录第一部分:多表联查 (JOIN Operations)1. 连接的类型 (JOIN Types)

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

JAVA数组中五种常见排序方法整理汇总

《JAVA数组中五种常见排序方法整理汇总》本文给大家分享五种常用的Java数组排序方法整理,每种方法结合示例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录前言:法一:Arrays.sort()法二:冒泡排序法三:选择排序法四:反转排序法五:直接插入排序前言:几种常用的Java数组排序