目录
第一章 机器学习基础
1.0 前言
机器学习的核心目标是让机器具备学习并找到描述数据之间关系的函数的能力。根据函数输出的不同,机器学习任务可以分为三大类:
- 回归: 输出为数值型数据,例如预测房价、股票价格等。
- 分类: 输出为类别标签,例如判断邮件是否为垃圾邮件、识别图片中的物体等。
- 结构化学习: 输出为具有结构的数据,例如生成文本、图像等。
1.1 案例学习:视频点击次数预测
第零步 确定步骤
目标: 预测未来视频观看次数。
步骤:
建立模型: 选择一个函数 f(x) = wx + b,其中 x 是前一天观看次数,w 和 b 是未知参数。
定义损失函数: 选择一个函数 L(w, b) 来衡量预测值与真实值之间的差距,例如平均绝对误差或均方误差。
优化: 使用梯度下降等方法找到使损失函数最小的 w 和 b 值。
第一步 确定目标&模型
线性模型: 特征与输出之间是线性关系,y = b + w ∗ x1,。
优缺点:
优点: 简单易懂,计算效率高。
缺点: 无法处理非线性关系。
第二步 定义损失
目标: 找到使损失函数最小的参数值。
方法:
随机选择初始参数值。
计算参数对损失函数的梯度。
根据梯度更新参数值。
重复步骤 2 和 3,直到满足停止条件(例如梯度接近 0 或达到最大迭代次数)。
第三步 梯度下降——解一个最优化问题
问题: 梯度下降可能无法找到全局最小值,而陷入局部最小值。
解决方法:
尝试不同的初始参数值。
使用更复杂的优化算法。
第四步 寻找局部最小值(优化)
问题: 梯度下降可能无法找到全局最小值,而陷入局部最小值。
解决方法:
尝试不同的初始参数值。
使用更复杂的优化算法。
第五步 深度学习框架
PyTorch 等框架: 自动计算梯度,简化了梯度下降等优化过程。
学习心得:
机器学习的核心是找到合适的函数来描述数据之间的关系。
梯度下降是一种常用的优化方法,但需要选择合适的初始参数和学习率。
深度学习框架可以简化机器学习模型的开发过程。
待学习内容:
不同类型的损失函数
其他优化算法
非线性模型
深度学习模型
总结:
本章介绍了机器学习的基础知识,包括案例学习、线性模型、梯度下降和深度学习框架。通过学习本章内容,我们可以了解到机器学习的基本原理和方法,为后续学习深度学习打下基础。