前往我的主页以获得更好的阅读体验深度学习基础-线性回归 - DearXuan的主页
文章图片
https://www.dearxuan.top/2022/03/18/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0%E5%9F%BA%E7%A1%80-%E7%BA%BF%E6%80%A7%E5%9B%9E%E5%BD%92/
回归模型 一个房子的价格取决于多个因素,例如房屋状况,位置,占地面积等
如果仅考虑面积和房龄,可设面积为x1,房龄为x2,价格为y这样我们就能建立起一套基于x1和x2的线性方程来计算y的值
文章图片
其中 wi 称为权重,b 称为偏差。它们均为标量。模型的输出
文章图片
是对真实价格 y 的估计,它们之间不可避免地存在误差
模型训练 为了训练上面地回归模型,我们需要收集一些真实地数据,这些数据地集合被称为训练集,其中地某一项被称为样本
假设对于上面的线性回归模型,我们收集了 n 个样本,则我们就能通过下面的表达式来计算出预测值
文章图片
损失函数 由于估计值不可避免地与实际值存在偏差,为了量化偏差的大小,提出了损失函数的概念,下面的函数能够计算一个样本的偏差
文章图片
该函数的实质是方差,前面的系数 1/2 是为了在求导后能够抵消掉平方,使其在形式上更简单
因此,损失函数的值越小,表示估计值越精确。当损失函数为0时,说明估计值完全等于实际值
在计算整个训练集的偏差时,通常用样本误差的平均值来衡量预测质量
文章图片
【深度学习基础|深度学习基础-线性回归】我们希望通过损失函数来找到一组参数 (w1*,w2*,b*),使得样本误差平均值最低
文章图片
算法优化 线性回归模型可以通过公式直接求出最佳参数,这种解称为解析解。然而大多数深度学习模型并没有解析解,只能通过有限次迭代来尽可能接近方程的解,这种解称为数值解
设函数 f(x),为了求出 f 的零点,可以通过导数来无限逼近。当f'(x0)太大或太小时,说明 x0 离零点很远,则下一个值 x1 需要离 x0 更远。当f'(x0)接近 0 时,说明 x0 离零点很近,则下一个值 x1 需要离 x0 更近
于是我们得到 x(i+1) 与 xi 的关系
文章图片
其中 η 称为学习率,它决定了下一个值与导数之间的倍数关系
将该函数推广到多元函数,只需要用偏导数代替导数,就能得到下面的表达式
设函数 f(x1,x2, ... xi),则
文章图片
回到我们上面的线性回归方程,我们只需要把模型的参数进行下面的迭代就能得到最佳参数
文章图片
模型预测 在训练停止时,我们可以得到一组特殊的参数 (w1*,w2*,b),这组参数不一定是使损失函数最小化的最优解,而是一组目前最接近最优解的特殊解,将这些参数带入回归方程就能得到预测值
推荐阅读
- 机器学习|机器学习_pytorch_高级神经网络结构_AutoEncoder自编码
- 自动驾驶|手握全球最大ADAS激光雷达订单(这家公司股价却急速“跌落”)
- 数据科学从0到1|python使用numpy生成指定步长的浮点数序列
- EECS6127 分类器
- 数据分析|python机器学习之模型选择与优化
- 人工智能+大数据|逻辑回归(使用激活函数sigmoid)详细介绍
- 统计学|灰色关联分析,Python实现GRA(gray relation analysis)
- python|总结|图像分割5大经典方法
- 目标检测|yolov5——断点训练/继续训练【解决方法、使用教程】