当前位置: 首页 > wzjs >正文

流量打不开网站怎么办郑州百度分公司

流量打不开网站怎么办,郑州百度分公司,服装网站开发的意义,广西网络公司网站建设原创 化心为海 深入理解XGBoost(何龙 著)学习笔记(四) 3.2 线性回归 本章节首先介绍了正规方程和梯度下降的基本原理,其次介绍了模型评估方法和指标,最后通过线性回归模型预测房价。 🚜 什…

原创 化心为海 

深入理解XGBoost(何龙 著)学习笔记(四)

3.2 线性回归

本章节首先介绍了正规方程和梯度下降的基本原理,其次介绍了模型评估方法和指标,最后通过线性回归模型预测房价。

🚜 什么是线性回归

线性回归是一种线性方法,用于对因变量y和一个或多个自变量之间的关系进行建模。如果自变量个数为1则称为一元回归分析,当有两个或两个以上自变量时,称为多元回归分析。线性回归主要解决回归问题,即对连续型变量进行预测,如房价,销售量等。

线性回归是一种解决回归问题的常用方法。在线性回归中,求解最优参数的方法是最小化其损失函数。最小化损失函数有两种方法:正规方程和梯度下降法。正规方程通过矩阵求得最优参数,梯度下降法是沿负梯度的方向一步步最小化损失函数,求解最优参数。

线性回归的目标是,对于输入向量x,预测其目标值y。例如,预测房屋价格,以y表示要预测的房屋价格,以向量x中的元素xⱼ表示房屋的特征(如房屋面积、卧室数量等)。已知很多房屋数据中,用xᵢ表示第i个房屋的特征,用yᵢ表示其房屋价格。

下面通过公式推导,演示如何使用线性回归解决连续型数据预测的问题。

因为是连续型数据的预测,我们希望找到一个函数,yᵢ = h(x),则可以通过h(x)对未知价格的房屋进行房价预测。我们采用线性函数表示h(x),即h(x)=ωᵀx。现在的问题是如何从已知的数据中找到最优的w参数,满足任意的yᵢ = ωᵀxᵢ。即通过h(x)得到的预测值和真实值是一样的,他们之间的差值为0。在有限的数据集中并不能找到一个理想的ω,不过可以基于现有的数据集找到接近于理想值的ω。同时,采用平方误差来评估ω是否最接近理想值,公式如下:

该函数可以作为线性回归的损失函数,损失函数值越小,则ω越接近理想值。

🚜 正规方程(Normal Equation)

正规方程是线性回归中用于直接求解最优参数ω的解析方法,其核心是通过最小化平方误差损失函数推导出闭式解。以下是详细的求导过程(来源:deepseek):

综上,正规方程中有一项 (XᵀX)⁻¹,因此,XᵀX必须可逆。当样本数小于特征数时,XᵀX的逆是不可以直接计算的。如果XᵀX不可逆,比如一些特征存在线性依赖时,一般可以考虑删除冗余特征;如果样本数小于特征数,则要删除一些特征。

#python代码实现正规方程求解示例

#python代码实现正规方程求解示例import numpy as np# 生成数据
X = np.array([[1, 1], [1, 2], [1, 3]])  # 含偏置项
y = np.array([2, 3, 4])# 正规方程求解
w = np.linalg.inv(X.T @ X) @ X.T @ y
print(w)  # 输出: [1. 1.](即 w0=1, w1=1)
代码解释:

3.2.1 🚜 梯度下降法

除了正规方程意外,在求解机器学习算法的模型参数时,另一种常见的方法是梯度下降法。

1.什么是梯度?

多元函数对每个参数求偏导,然后将各个参数的偏导数组合成一个向量,该向量称为梯度。它的几何意义是函数增加最快的方向。例如,f(x,y),对参数x求偏导为∂f/∂x,对参数y求偏导为∂f/∂y,组成梯度向量(∂f/∂x, ∂f/∂y)ᵀ,简称为∇f(x,y)。函数f(x,y)在点(x0,y0)处沿着∇f(x,y)移动,其函数值增加的最快,换一句话说,如果沿着梯度的反方向,则函数值下降的最快,更容易找到最小值。

In [11]:

#梯度下降代码示意图
#梯度下降代码示意图
import numpy as np
import matplotlib.pyplot as plt# 定义目标函数和梯度
def f(x): return x**2 - 4*x + 1
def df(x): return 2*x - 4# 梯度下降迭代
x = 50  # 初始值
alpha = 0.1
path = []
for _ in range(100):path.append(x)x = x - alpha * df(x)# 绘制函数和路径
x_vals = np.linspace(-10, 50, 100)
plt.plot(x_vals, f(x_vals), 'b-')
plt.plot(path, [f(p) for p in path], 'ro--')
plt.xlabel('x'), plt.ylabel('f(x)')
plt.show()

2.什么是梯度下降?

优化模型的目标是最小化损失函数。我们可以通过梯度下降的方法解决损失函数的问题,即沿着负梯度方向一步一步接近最小值。从一个更直观的角度理解梯度下降,加入站在山上某一处,梯度下降方向即最陡峭的下坡方向,我们沿着最陡峭的下坡方向下山, 可以最快速地到达山脚下。

运用梯度下降法能否一定可以找到全局最优解吗?并不一定,梯度下降法可能只会得到局部最优解,就像最陡峭的下坡方向不一定能直接通向山脚,可能只达到山峰的低处。

图片来源:《深入理解XGBoost:高效机器学习算法与进阶》,侵权删除

3.梯度下降算法过程

首先,确定损失函数的梯度,对于当前位置ωⱼ,梯度如下:

然后,用步长α乘以梯度,得到当前梯度下降的距离

检查梯度下降的距离是否小于阈值ε,若小于则算法停止,否则更新ω,对于ωⱼ,有

更新ω后再次检查下降距离和阈值ε的关系,重复上述步骤直至算法停止。可以看到,在计算梯度距离时会乘一个步长系数α,梯度向量决定了梯度下降的方向,而步长则决定了梯度下降的距离,还是以下山为例,步长就是沿最陡峭的方向向前走一步的距离。

4.梯度下降的方式

梯度下降法有多种方式,如批量梯度下降法、随机梯度下降法、mini-batch梯度下降法等。

🚜批量梯度下降法是每次使用所有样本来更新参数,前面介绍的方法用的就是批量梯度下降法。

🚜随机梯度下降法是每次只使用一个样本来更新参数。

这两种方法的优缺点都非常明显。批量梯度下降计算量比较大,训练速度慢,而随机梯度下降因为只需要一个样本,因此训练速度大大加快了。但随机梯度下降法仅用一个样本决定梯度的方向,导致其可能并不是最优的方向,迭代方向变化较大,函数收敛较慢。

🚜mini-batch梯度下降法是以上两种方法的折中算法,每次选取一个样本集的子集(mini-batch)进行参数更新,从而平衡了前两种方法的优缺点。

小贴士:批量梯度过程说明以及示例:(源自:deepseek)

示例如下:

http://www.dtcms.com/wzjs/504018.html

相关文章:

  • 郑州做网站 熊掌号网站免费优化
  • 装饰公司网站开发竞价推广怎样管理
  • ueditor 文件大小超出网站限制男生和女生在一起探讨人生软件
  • 博物馆网站做的最好的百度竞价优缺点
  • 南山区网站建设公司营销培训课程2022
  • 移动网站建设哪家便宜大学生网络营销策划方案书
  • 河南洛阳网站建设seo网站推广方案
  • 网络规划设计师2022论文5月360seo
  • 公司网站建设前期情况说明千牛怎么做免费推广引流
  • 最新流行网站开发技术seo如何提高网站排名
  • 日本 女做受视频网站百度客服号码
  • 如何查询一个网站是那家公司做的sem广告
  • 开店做网站seo软件资源
  • 南通哪些公司做网站网站关键词优化怎么弄
  • 视频网站开发有哪些功能品牌营销策略有哪些
  • 动态Js文件 做网站标题广州百度推广优化排名
  • 石家庄网站开发公司建站为应用技术
  • 哪些网站开业做简单海报seo运营工作内容
  • 阿里巴巴的网站架构银行营销技巧和营销方法
  • 深圳做网站 龙华信科站长工具seo优化建议
  • 做后期的网站关键词点击排名软件
  • 营销成功案例网站360优化大师官方免费下载
  • 开发手机端网站模板下载不了今日国内新闻大事20条
  • 许昌做网站联系电话天津seo外包平台
  • wordpress链接在哪里常用的seo工具推荐
  • 怎么下载网站的视频域名注册哪个网站好
  • 重庆优化网站排名百度推广优化怎么做的
  • 上海沙龙网站建设天津seo管理平台
  • 别人网站建设多少钱网络推广培训去哪里好
  • 南京设计公司有哪些公司重庆做seo外包的