吴恩达《机器学习》11-1-11-2:首先要做什么、误差分析

一、首先要做什么

选择特征向量的关键决策

以垃圾邮件分类器算法为例,首先需要决定如何选择和表达特征向量 𝑥。视频提到的一个示例是构建一个由 100 个最常出现在垃圾邮件中的词构成的列表,根据这些词是否在邮件中出现来创建特征向量,尺寸为 100×1。

构建分类器算法的决策

对于垃圾邮件分类器,面临多个决策:

  1. 收集更多数据:获取更多垃圾邮件和非垃圾邮件的样本,以提高算法的性能。

  2. 基于邮件的路由信息开发特征:利用邮件的路由信息构建一系列复杂的特征。

  3. 基于邮件的正文信息开发特征:考虑邮件正文信息,包括截词的处理,开发一系列复杂的特征。

  4. 探测刻意的拼写错误:开发复杂的算法来检测拼写错误,如将 "watch" 写成 "w4tch"。

在这些选项中,决定在哪个方向上投入时间和精力是一个关键的决策。而这个决策不仅仅依赖于数学和模型,更需要智慧的选择。视频中提到,比起凭感觉走,通过系统性的思考和头脑风暴来确定方向会更好。

如何作出明智的选择?

视频强调了在机器学习中,常常需要通过头脑风暴,想出不同的方法来尝试提高算法的精度。实际上,当你能够列出可能的方法时,你可能已经走在了很多人的前面。大多数人不会尝试列出各种可能的方法,而是靠灵感和突发奇想。

误差分析的重要性

在接下来的课程中,将介绍误差分析,探讨如何以更系统的方式从各种方法中选择最合适的方法。这种方法能够帮助你在一堆可能的方法中,选择一个真正有效的方法,从而更有可能进行深入研究并取得显著的进展。

综合来看,系统性地思考和设计机器学习系统是成功的关键之一。在这个过程中,对于特征选择、算法设计和下一步的决策,都需要深入思考和明智的选择,而不是凭感觉随意尝试。这是构建大型机器学习系统时节省时间的关键。

二、误差分析

构建简单而快速的算法

视频强调了在研究机器学习问题时,建议从构建一个简单而快速的算法开始。即便这个算法可能并不完美,通过快速实现并运行,可以迅速得到结果。这一过程通常不需要花费过多时间。

学习曲线和检验误差

绘制学习曲线是判断算法性能的有效方法。通过学习曲线,可以了解算法是否存在高偏差和高方差的问题,以及其他可能的缺陷。进一步的决策可以包括增加数据量、添加更多特征等。

误差分析的重要性

误差分析是机器学习实践中的关键步骤。通过人工检查算法在交叉验证集上产生预测误差的实例,可以发现系统性的规律。观察被错误分类的垃圾邮件和非垃圾邮件,有助于发现算法的短处和提升空间。

通过量化数据进行决策

视频强调了使用量化数据进行决策的重要性。在进行误差分析时,不仅仅依赖于主观判断,而是通过数值评估来决定算法的表现。这样可以更快速地实践新的想法,找出能够提高算法性能的方法。

误差分析的步骤
  • 观察错误分类的实例:检查算法在交叉验证集上产生预测误差的实例。
  • 分类错误的邮件分组:将错误分类的邮件按照类别分组,例如医药品垃圾邮件、仿冒品垃圾邮件等。
  • 检查分类器对每组邮件的预测误差:观察分类器对哪一组邮件的预测误差最大,从而确定优化的方向。
  • 思考如何改进分类器:根据观察结果,思考是否缺少某些特征,记录错误出现的次数,以便有针对性地改进算法。
推荐方法
  1. 实现简单而快速的算法:快速得到初步结果,成为进一步决策的有力工具。
  2. 绘制学习曲线:通过学习曲线判断算法的偏差和方差问题,决定下一步的改进方向。
  3. 进行误差分析:在交叉验证集上进行误差分析,观察错误分类的实例,找出系统性规律。
  4. 量化数据进行决策:依赖数值评估,快速实践新的想法,通过数据判断算法的表现优劣。

参考资料

[中英字幕]吴恩达机器学习系列课程

黄海广博士 - 吴恩达机器学习个人笔记

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

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

相关文章

鸿蒙4.0开发笔记之ArkTS语法基础之条件渲染和循环渲染的使用(十五)

文章目录 一、条件渲染(if)二、循环渲染(ForEach) 一、条件渲染(if) 1、定义 正如其他语言中的if…else…语句,ArkTS提供了渲染控制的能力,条件渲染可根据应用的不同状态&#xff0…

Linux安装MySQL

更新密钥 rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022安装Mysql yum库 rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpmyum安装Mysql yum -y install mysql-community-server设置开机自启 systemctl start mysqld systemctl…

React立即更新DOM

正常情况下,react会等待set完毕后再进行页面渲染,所以在set时无法拿到更新后的dom import { useRef, useState } from "react"export default () > {const div useRef(null)const [count, setCount] useState(0)const btnClick () >…

怎么检测电脑电源?电脑电源检测系统软件如何助力?

电源是电脑的重要组成部分,为电脑提供稳定电源,保证电脑正常工作。但是在电脑实际使用过程中总会遇到各种各样的问题和故障,比如无法开机,因此电脑电源检测是非常重要的测试内容。 如何测试电脑电源? 1. 用万用表检测 a. 将万用表…

【Qt之QSqlRelationalTableModel】描述及使用

描述 QSqlRelationalDelegate链接: https://blog.csdn.net/MrHHHHHH/article/details/134690139 QSqlRelationalTableModel类为单个数据库表提供了一个可编辑的数据模型,并支持外键。 QSqlRelationalTableModel的行为类似于QSqlTableModel,但允许将列设…

MySQL根据binlog恢复数据

简介 本文介绍了使用mysqlbinlog导出数据,根据binlog恢复数据,和导出数据时报需要super权限的解决方法。 环境 MySQL: 5.7.40 说明 MySQL的binlog是数据库服务器在运行过程中产生的日志文件,记录了数据库增删改的操作,可用于恢复和…

【理解ARM架构】中断处理 | CPU模式

🐱作者:一只大喵咪1201 🐱专栏:《理解ARM架构》 🔥格言:你只管努力,剩下的交给时间! 目录 🍜中断🍨GPIO中断代码实现 🍜CPU🍨CONTROL…

docker集群的详解以及超详细搭建

文章目录 一、问题引入1. 多容器位于同一主机2. 多容器位于不同主机 二、介绍三、特性四、概念1. 节点nodes2. 服务(service)和任务(task)3. 负载均衡 五、docker网络1. overlay网络 六、docker集群搭建1. 环境介绍2. 创建集群3. 集群网络4. 加入工作节点 七、部署可视化界面po…

MYSQL数据库中运行SQL文件报错

报错显示 当使用mysql数据库运行SQL文件报错时 [Err] 1273 - Unknown collation: utf8mb4_0900_ai_ci 报错原因 版本高低问题,一个是5.7版本,一个是8.0版本生成转储文件的数据库版本为8.0,要导入sql文件的数据库版本为5.7,因为是高版本导入到低版本&a…

ThermalLabel SDK for .NET 13.0.23.1113 Crack

ThermalLabel SDK for .NET 是一个 .NET 典型类库,它允许用户和开发人员创建非常创新的条码标签并将其发布在 zebra ZPL、EPL、EPSON ESC、POS 以及 Honeywell intermec 指纹中通过在 VB.NET 或 C# 上编写 .NET 纯代码来实现热敏打印机,以实现项目框架的…

通过仿真理解信道化接收机分析过程

概要 信道化从子信道带宽划分上可分为临界抽取和非临界抽取两种,从各子信道中心频率布局上可分为偶型排列和奇型排列,从处理流程上可分为信道化分析与信道化综合过程。本文主要通过仿真来理解偶型排列/临界抽取/信道化分析过程。 基本原理 常规的数字…

音频修复和增强软件iZotope RX 10 mac特点介绍

iZotope RX 10 mac是一款音频修复和增强软件,主要特点包括: 声音修复:iZotope RX 10可以去除不良噪音、杂音、吱吱声等,使音频变得更加清晰干净。 音频增强:iZotope RX 10支持对音频进行音量调节、均衡器、压缩器、限…

人工智能_机器学习053_支持向量机SVM目标函数推导_SVM条件_公式推导过程---人工智能工作笔记0093

然后我们再来看一下支持向量机SVM的公式推导情况 来看一下支持向量机是如何把现实问题转换成数学问题的. 首先我们来看这里的方程比如说,中间的黑线我们叫做l2 那么上边界线我们叫l1 下边界线叫做l3 如果我们假设l2的方程是上面这个方程WT.x+b = 0 那么这里 我们只要确定w和…

软考高项第四版五组十域表+ITTO背诵笔记及助记

基于第四版做的笔记,助记是自己编的 还是得靠理解记忆,下面是文档,也用anki制作了记忆卡片,需要的可以自行导入卡包

慎用!3个容易被打的Python恶搞脚本

Python 无限恶搞朋友电脑,别提有多爽了,哈哈,打造自己的壁纸修改器,电脑无限锁屏, 无线弹窗,都在这里!!! 1、修改电脑桌面壁纸 工具使用 开发环境:python3…

线段树基础模板c++

线段树的基础模板代码 #include <bits/stdc.h> using namespace std; #define N 100005 #define int long long#define lc p << 1 // 2*i #define rc p << 1 | 1 // 2*i1int n, m; int w[N];struct node {int l, r, sum, add;} tr[N * 4]; // 构建线段树…

【Openstack Train安装】四、MariaDB/RabbitMQ 安装

本章介绍了MariaDB/RabbitMQ的安装步骤&#xff0c;MariaDB/RabbitMQ仅需要在控制节点安装。 在安装MariaDB/RabbitMQ前&#xff0c;请确保您按照以下教程进行了相关配置&#xff1a; 【Openstack Train安装】一、虚拟机创建 【Openstack Train安装】二、NTP安装 【Opensta…

分支和循环

通常来说&#xff0c;C语言是结构化的程序设计语言&#xff0c;这里的结构包括顺序结构、选择结构、循环结构&#xff0c;C语言能够实现这三种结构&#xff0c;如果我们仔细分析&#xff0c;我们日常生活中所见的事情都可以拆分为这三种结构或者它们的组合。 下面我会仔细讲解我…

Windows驱动中使用数字签名验证控制设备访问权限

1. 背景 在一般的驱动开发时&#xff0c;创建了符号链接后在应用层就可以访问打开我们的设备并进行通讯。 但我们有时候不希望非自己的进程访问我们的设备并进行交互&#xff0c;虽然可以使用 IoCreateDeviceSecure 来创建有安全描述符的设备&#xff0c;但大数的用户账户为了方…

基于Vue.js的厦门旅游电子商务预订系统的设计和实现

项目编号&#xff1a; S 030 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S030&#xff0c;文末获取源码。} 项目编号&#xff1a;S030&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 景点类型模块2.2 景点档案模块2.3 酒…