【学习记录】《DeepLearning.ai》第八课:机器学习策略(1)(ML strategy(1))

简介: 2021/9/9

第八课:机器学习策略(1)(ML strategy(1))

1.1 什么是ML策略

image

ML策略总结就是让人少走弯路,能够选择合适的方法来优化系统。


1.2 正交化(Orthogonalization)

image

针对不同的环节出现的问题进行不同方式的解决。判断出系统的性能瓶颈出现在那里,然后找到一组特定的旋钮来调整系统,来改善它特定的性能。


1.3 单一数字评估指标(Single number evaluation metric)

image

对于上面两个分类器,分别给出了它们的查准率和召回率,通常这两个特征必须折中,因此无法判断哪个分类器的效果更好,我们引入一个参数:

$$ F_1Score:2\frac{PR}{P+R} $$

如上图所示,很显然分类器A的参数值FScore最大,因此选择A分类器。

选择$F_1Score$较大的那个值

通常将算法的预测结果分为四种情况:

1.正确肯定(True Positive,TP):预测为真,实际为真;

2.正确否定(True Negative,TN):预测为假,实际为真;

3.错误肯定(False Positive,FP):预测为真,实际为假;

4.错误否定(False Negative,FN):预测为假,实际为真。

$$ 查准率(Precision)=\frac{TP}{TP+FP}\\ 查全率/召回率(Recall)=\frac{TP}{TP+FN} $$

image

查准率通常用P表示,查全率或召回率通常用R表示,则可以得到上面F_1Score的公式。

image

对于如上图可以选择每个算法在各地的误差平均值,计算之后发现平均值误差最小的是算法C,因此我们选择算法C.

这就是单一数字评估指标的基本概念,选择一个数字来评估。


1.4 满足和优化指标(Satisficing and opeimizing metrics)

当需要顾及多个指标,比如有一个优化指标以及一个或多个满足指标,对于需要满足的指标,需要达到一定门槛即可。这些评价指标必须是在训练集、开发集、测试集上求出来的,因此必须设立训练集、开发集、测试集。下节课见。


1.5 训练/开发/测试集划分(Train/dev/test distributions)

选择开发集以及评估指标,就定义了所要瞄准的目标。同时让开发集和测试集在同一分布之中。


1.6 开发集和测试集的大小(Size of dev and test sets)

image

划分训练集、开发集、测试集划分方法如上,如果数据量较少可以划分为7:3和6:2:2.但如果数据量比较大,可以划分为98:1:1。

在实际工作中,可能有时候不需要测试集,只有开发集和训练集两部分。测试集的目的是评估最终的成本偏差。


1.7 何时改变开发/测试集/指标

实操经验:首先构建分类器和指标,将设立目标作为第一步,而瞄准和射击目标作为第二步,也就是在设立目标之后,应该想着如何优化系统提高指标评分,比如改变神经网络的优化成本函数J。

在解决问题时候,应该首先设立评估指标和开发集。


1.8 为何比较机器学习和人类的表现

贝叶斯最优错误率:指理论上可能达到的最优错误率,无论如何设置,都无法让其超过一定的准确度。

如上图蓝线为人类的精确度,绿线为贝叶斯最优错误率,紫色线表示机器学习的学习表现。

对于人类擅长的任务:比如可以让人标记数据,人工错误率分析,同时更好的分析偏差和方差。


1.9 可避免偏差(Avoidable bias)

image

选择避免方差策略还是避免偏差策略:

如上图,当贝叶斯误差与训练集误差之差比开发集误差与训练集误差之差比较相对较大时候,选择避免偏差策略,

相反,当贝叶斯误差与训练集误差之差比开发集误差与训练集误差之差比较相对较小时候,选择避免方差策略。


1.10 理解人的表现

image

image

人类水平错误率可以用贝叶斯错误率来近似代替,在人类水平误差与训练集误差之间用来调试偏差,在训练集误差与开发集误差之间人们用来调试方差。


1.11 超过人的表现

image

机器学习超过人的水平???


1.12 改善你的模型表现

image

解决高方差(过拟合)问题:

1.获得更多的训练样本

2.减少特征的数量

3.尝试增加正则化程度$\lambda$

解决高偏差(欠拟合)问题:

1.增加特征的数量

2.增加多项式特征

3.减少正则化程度$\lambda$

4.训练更好的优化算法,如Rmsprop,adam,momunte等等

如上图所示


2021/9/9结束,冲冲冲

相关文章
|
2月前
|
人工智能 安全 架构师
不只是聊天:从提示词工程看AI助手的优化策略
不只是聊天:从提示词工程看AI助手的优化策略
301 119
|
3月前
|
人工智能 自然语言处理 IDE
模型微调不再被代码难住!PAI和Qwen3-Coder加速AI开发新体验
通义千问 AI 编程大模型 Qwen3-Coder 正式开源,阿里云人工智能平台 PAI 支持云上一键部署 Qwen3-Coder 模型,并可在交互式建模环境中使用 Qwen3-Coder 模型。
746 109
|
3月前
|
机器学习/深度学习 数据采集 人工智能
PyTorch学习实战:AI从数学基础到模型优化全流程精解
本文系统讲解人工智能、机器学习与深度学习的层级关系,涵盖PyTorch环境配置、张量操作、数据预处理、神经网络基础及模型训练全流程,结合数学原理与代码实践,深入浅出地介绍激活函数、反向传播等核心概念,助力快速入门深度学习。
225 1
|
4月前
|
人工智能 自然语言处理 搜索推荐
上下文学习的神奇魔法:轻松理解AI如何无师自通
你有没有想过,为什么给GPT几个例子,它就能学会新任务?这就像魔法一样!本文用轻松幽默的方式解密上下文学习的原理,通过「智能客服训练」场景,带你理解AI如何像人类一样从示例中学习,无需额外训练就能掌握新技能。
180 28
|
3月前
|
存储 人工智能 搜索推荐
一种专为AI代理设计的内存层,能够在交互过程中记忆、学习和进化
Mem0 是专为 AI 代理设计的内存层,支持记忆、学习与进化。提供多种记忆类型,可快速集成,适用于开源与托管场景,助力 AI 代理高效交互与成长。
548 123
一种专为AI代理设计的内存层,能够在交互过程中记忆、学习和进化
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
迁移学习:让小数据也能驱动AI大模型
迁移学习:让小数据也能驱动AI大模型
331 99
|
4月前
|
数据采集 人工智能 前端开发
AI智能体如何从错误中学习:反思机制详解
探索AI智能体的反思能力:从哲学思考到技术实现,看AI如何像人类一样从错误中学习和成长。通过轻松有趣的方式,深入了解Reflexion和ReAct等前沿框架,掌握让AI更智能的核心秘密。
|
4月前
|
机器学习/深度学习 人工智能 PyTorch
GPT为定制AI应用工程师转型第一周学习计划
本计划帮助开发者快速入门AI领域,首周涵盖AI基础理论、Python编程及PyTorch实战。前两天学习机器学习、深度学习与Transformer核心概念,掌握LLM工作原理。第三至四天快速掌握Python语法与Jupyter使用,完成基础编程任务。第五至七天学习PyTorch,动手训练MNIST手写识别模型,理解Tensor操作与神经网络构建。
242 0
|
2月前
|
人工智能 JavaScript 前端开发
GenSX (不一样的AI应用框架)架构学习指南
GenSX 是一个基于 TypeScript 的函数式 AI 工作流框架,以“函数组合替代图编排”为核心理念。它通过纯函数组件、自动追踪与断点恢复等特性,让开发者用自然代码构建可追溯、易测试的 LLM 应用。支持多模型集成与插件化扩展,兼具灵活性与工程化优势。
254 6
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
如何让AI更“聪明”?VLM模型的优化策略与测试方法全解析​
本文系统解析视觉语言模型(VLM)的核心机制、推理优化、评测方法与挑战。涵盖多模态对齐、KV Cache优化、性能测试及主流基准,助你全面掌握VLM技术前沿。建议点赞收藏,深入学习。
818 8