李宏毅机器学习深度学习:机器学习任务攻略

课程概要

介绍了当我们遇到模型效果(loss)不理想时,进行模型优化的分析方法和思路。

Part 1> 原因分析

可能的原因:

  • 数据集标签不够(标签之间的因果关联性不强)

  • 模型简单(神经元层数不够)

  • 优化问题(optimization)

  • 训练过拟合 (ovefiting)

  • 训练集和测试集 统计学数据分布不匹配(mismatch)

判断方法

是不是训练集和测试集mismatch

训练集如果loss很低,但测试集loss高,则可以分析 训练集和测试集的区别

mismatch的情况示例:

e.g.1 用动物园的图像分类模型,识别野生动物

e.g.2 用亚洲人的特征识别模型,识别欧洲人的特征

是不是过拟合

训练集如果loss很低,但测试集loss高,且不太可能是mismatch的情况,说明很可能是过拟合

模型简单

加了神经元,没有优化效果:加了神经元,训练集和测试集的loss依然很高

则排除是模型简单的原因;

是不是optimization问题

不是上述两个,则可能是optimization

Part 2> 解决思路

应对overfiting:

方法一:增加/丰富数据集

  • 收集真实数据

  • 通过小样本扩增法(e.g. 图像左右反转、镜像等合理调整)

方法二:增加限制条件

  • 简化模型------减少参数

  • 减少关联性较少的标签(features)

  • 减少训练次数

  • 【预告】regularization数据归一化处理

  • 简化模型------减少少神经元(dropout)

  • 【预告】全连接网络、CNN部分讲

Part 3> 验证效果

通过公开数据集、私有数据集和自己的数据集中划分出的validtion set验证。

public数据集验证:

目的:公众说服力

示例:MINST手写数字

private数据集验证:

目的:公众说服力 / 领域内说服力。

示例:医患数据集(医患数据涉及病人隐私,常为非公开数据集)

validation数据集验证:

目的:证明神经网络/模型结构设计合理性、可解释性(逻辑自洽);也可以证明 泛用性(可迁移性)通用性

方法:validation 数据集划分(N-flod Cross法划分, "交叉验证"取平均值)

图为N-flod中N为3的示例。

相关推荐
Json_6 分钟前
Vue v-bind指令
前端·vue.js·深度学习
lilye668 分钟前
程序化广告行业(39/89):广告投放的数据分析与优化秘籍
大数据·人工智能·数据分析
Json_9 分钟前
JS中的冒泡简洁理解
前端·javascript·深度学习
欧雷殿9 分钟前
再谈愚蠢的「八股文」面试
前端·人工智能·面试
Json_10 分钟前
Vue 自定义指令
前端·vue.js·深度学习
修复bug1 小时前
trae.ai 编辑器:前端开发者的智能效率革命
人工智能·编辑器·aigc
掘金安东尼1 小时前
为什么GPT-4o可以生成吉卜力风格照片,原理是什么?
人工智能
机器鱼1 小时前
1.2 基于卷积神经网络与SE注意力的轴承故障诊断
深度学习·机器学习·cnn
励志成为大佬的小杨1 小时前
pytorch模型的进阶训练和性能优化
人工智能·pytorch·python
知舟不叙1 小时前
OpenCV的基础操作
人工智能·opencv·计算机视觉