机器学习 day33(误差分析、添加数据、迁移学习)

  1. 误差分析
  • 我们可以手动查看分类错误的子集样本(通常为100个),并统计他们的错误类型
  • 在所有错误类型中,选择一种或几种最常见的错误,进行改进。这可以最高效的改进你的模型
  • 误差分析的一个限制是:它只能很好的解决人类擅长的问题
  1. 添加数据
  • 添加数据有三种常见方法:直接添加全新的数据,数据增强,数据合成
  • 添加所有类型的全新数据可能又贵又慢,因此添加有针对性的全新数据可以更低成本的改进模型
    机器学习 day33(误差分析、添加数据、迁移学习)_第1张图片
  • 在图像和音频领域,数据增强是一种显著增加数据集的方法。
  • 数据增强:通过旋转、缩小、方法、增加对比度、镜像变换等改变已有的训练样本,来获得一个全新的训练样本
  • 数据增强的高级变换例子:在图片上加一个网格,并随机扭曲网格,从而获得一个更丰富的数据集
  • 数据增强,是在数据中制造更多的噪音,同时最后的结果应当与测试集接近
  • 数据合成:通常用于计算机视觉领域。上图右侧的例子是使用电脑上的字体,通过不同的对比度,颜色,字体进行截图得到。
    机器学习 day33(误差分析、添加数据、迁移学习)_第2张图片
  • AI包括代码(算法或模型)+ 数据,通常我们是以模型为中心来改进我们的系统,但也可以以数据为中心来改进我们的系统
  1. 迁移学习
  • 迁移学习分为两步:首先为监督预训练,即在一个非常大且与任务目标不完全相关数据集上对模型进行预训练,其次为微调,即在监督预训练中获得或初始化大部分参数的基础上,根据任务目标相关的数据集,进一步运行梯度下降或Adam算法,来微调所有权重参数或仅获得(改变)输出层参数
  • 微调有两种方法:一种是仅获得(改变)输出层的参数,适用于任务目标相关的数据集比较小。一种是训练所有权重参数,适用于任务目标相关的数据集稍大
  • 迁移学习的一个好处是,我们可以在网络上下载已经预训练完成的神经网络,省去了我们自己进行监督预训练的步骤
  • 由上图可以看出,神经网络在前几层学会了检测边缘,检测角点,检测曲线等通用基本形状,这对神经网络进行其他图片识别任务很有帮助。
  • 迁移学习的一个限制是,预训练和微调的数据集必须是同一个类型的,即都是图像数据或音频数据或文本数据

你可能感兴趣的:(机器学习,人工智能)