作者:禅与计算机程序设计艺术
1.简介
模型训练过程中涉及到各种各样的算法、方法、技巧,其中大部分都是需要对代码进行修改和调整才能实现效果,对于很多初级工程师来说,在处理这些繁琐的代码时,很容易被困惑,因此,本文将介绍一些机器学习中常用的代码,并通过阅读源代码的方式加深对模型训练过程中的基础知识理解,帮助读者更好的理解现实世界中的模型训练。
首先,我们先来回顾一下模型训练过程。无论是监督学习还是无监督学习,都可以分为以下四个阶段:
- 数据准备:包括数据清洗、特征工程、数据切割、标签编码等。
- 模型选择或搭建:包括模型选择、超参数调优等。
- 模型训练:包括损失函数、优化器、学习率衰减策略、正则化项等。
- 模型评估:验证集和测试集上的指标。
在这里,我们主要介绍第三步中的三个关键点——Loss Function(损失函数),Optimizer(优化器),Hyperparameters(超参数)。除此之外,也会介绍 Learning Rate Scheduler 和 Regularization。
2. 概念阐述及关键技术解析
2.1 Loss Function(损失函数)
损失函数(loss function)用来衡量预测值(predicted value)与真实值(true label)之间的差距,是模型训练的目标函数,用以描述模型预测值的好坏程度。
最常用的损失函数包括均方误差(MSE), 交叉熵(Cros