【漫画机器学习】082.岭回归(或脊回归)中的α值(alpha in ridge regression)

岭回归(Ridge Regression)中的 α 值

岭回归(Ridge Regression)是一种 带有 L2​ 正则化 的线性回归方法,用于处理多重共线性(Multicollinearity)问题,提高模型的泛化能力。其中,α 值(正则化强度) 是岭回归的关键超参数,它决定了正则化项的权重。


1. 岭回归的损失函数

岭回归的目标是在最小化均方误差(MSE)的基础上,引入 L2​ 正则化,以防止过拟合。其损失函数(目标函数)如下:

其中:

  • 是普通最小二乘回归(OLS)的损失项(残差平方和,RSS)。
  • ​ 是正则化项(L2 惩罚项),防止回归系数 β 过大。
  • α 是超参数,控制正则化强度:
    • α = 0:岭回归退化为普通最小二乘回归(OLS)。
    • :所有回归系数趋近于零,模型趋向于最简单(偏置高,方差低)。

2. α 值的影响

α 值的大小直接影响岭回归模型的性能:

α 值影响
α = 0退化为普通最小二乘(OLS),没有正则化,容易过拟合。
小 α保留大部分特征的贡献,轻微减少过拟合。
较大 α增强正则化,减少系数的大小,降低方差但可能增大偏差。
α → ∞所有系数趋近于 0,模型变得过于简单,可能欠拟合。

一般来说,α 值需要通过 交叉验证(Cross-Validation) 来选择,使得模型在训练集和测试集上都能表现良好。


3. 岭回归的矩阵形式

岭回归的最优解可以通过闭式解公式求得:

其中:

  • X 是输入特征矩阵,
  • y 是目标变量,
  • I 是单位矩阵,
  • α 控制正则化强度。

相比普通最小二乘回归的解:

岭回归通过在 矩阵上加上 使其可逆,从而避免多重共线性问题。


4. α 值的选择(超参数调优)

通常,我们可以通过 交叉验证(Cross Validation) 选择最优 α 值:

方法 1:手动搜索

尝试多个 α 值,计算交叉验证误差(如 MSE),选择最优 α。

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import Ridge
from sklearn.model_selection import cross_val_score# 生成模拟数据
np.random.seed(42)
X = np.random.rand(100, 5)
y = X.dot(np.array([1.5, -2, 3, 0, 4])) + np.random.randn(100) * 0.5# 选择不同的 α 值
alpha_values = np.logspace(-4, 2, 50)
cv_scores = [np.mean(cross_val_score(Ridge(alpha=a), X, y, cv=5, scoring='neg_mean_squared_error'))for a in alpha_values]# 画出 α 与误差的关系
plt.plot(alpha_values, -np.array(cv_scores), marker='o')
plt.xscale('log')
plt.xlabel("Alpha")
plt.ylabel("Negative MSE")
plt.title("选择最佳 Alpha")
plt.show()

 

方法 2:使用 GridSearchCV 自动搜索

from sklearn.model_selection import GridSearchCVridge = Ridge()
param_grid = {'alpha': np.logspace(-4, 2, 50)}
grid = GridSearchCV(ridge, param_grid, cv=5, scoring='neg_mean_squared_error')
grid.fit(X, y)print("最佳 Alpha 值:", grid.best_params_['alpha'])

 


5. α 值与 Lasso 的对比

  • 岭回归(Ridge) 采用 L2 正则化,会使系数变小但不会变成 0(适合高维但重要特征较多的情况)。
  • Lasso 回归(Lasso) 采用 L1 正则化,可以使某些系数完全变为 0,从而实现特征选择。

6. 总结

  • α 是岭回归中的正则化参数,控制模型的复杂度和泛化能力。
  • α 过小,模型容易过拟合;α 过大,模型容易欠拟合。
  • 可以使用交叉验证选择最优 α 值,以获得最佳的泛化能力。
  • 岭回归适用于多重共线性数据,可防止回归系数过大,提高模型的稳定性。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/13324.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入理解和使用定时线程池ScheduledThreadPoolExecutor

文章目录 前言认识定时线程池什么是定时线程池?定时线程池基本API使用定时线程池的应用场景1、定时任务调度2、缓存过期清理3、心跳检测4、延迟任务执行 定时线程池scheduleAtFixedRate与scheduleWithFixedDelay区别scheduleAtFixedRate案例demo(period&…

【React】合成事件语法

React 合成事件是 React 为了处理浏览器之间的事件差异而提供的一种跨浏览器的事件系统。它封装了原生的 DOM 事件,提供了一致的事件处理机制。 合成事件与原生事件的区别: 合成事件是 React 自己实现的,封装了原生事件。合成事件依然可以通…

中小企业的采购流程,采购管理是如何进行的?

经营中小企业的,都明白高效采购管理的重要性。我见过不少中小企业,采购环节混乱无序,花费大量成本,却难以保障物资的优质供应。然而到底该如何梳理采购流程,怎样开展采购管理工作呢?这让众多中小企业主愁眉…

在线教程丨YOLO系列10年更新11个版本,最新模型在目标检测多项任务中达SOTA

YOLO (You Only Look Once) 是计算机视觉领域中最具影响力的实时目标检测算法之一,以其高精度与高效性深受业界青睐,广泛应用于自动驾驶、安防监控、医疗影像等领域。 该模型最早于 2015 年由华盛顿大学研究生 Joseph Redmon 发布,开创了将目…

IOPS与吞吐量、读写块大小及延迟之间的关系

IOPS(每秒输入/输出操作次数)、吞吐量、读写块大小及延迟是衡量存储系统性能的四个关键指标,它们之间存在密切的关系。以下从多个方面详细说明这些指标之间的关系: 1. IOPS与吞吐量的关系 公式关系:吞吐量&#xff0…

DeepSeek 部署过程中的问题

文章目录 DeepSeek 部署过程中的问题一、部署扩展:docker 部署 DS1.1 部署1.2 可视化 二、问题三、GPU 设置3.1 ollama GPU 的支持情况3.2 更新 GPU 驱动3.3 安装 cuda3.4 下载 cuDNN3.5 配置环境变量 四、测试 DeepSeek 部署过程中的问题 Windows 中 利用 ollama 来…

DeepSeek RAGFlow构建本地知识库系统

学习目标 DeepSeek RAGFlow 构建本地知识库系统 学习内容 下载安装Docker 1.1 Docker 是什么 1.2 下载Docker 1.3 安装Docker配置DockerRAGFlow 配置 3.1 下载RAGFlow 3.2 RAGFlow配置 3.3 启动RAGFlow Docker新建知识库 4.1 查看本机IP 4.2 OLLAMA_HOST 变量配置 4.3 添加模…

11 享元(Flyweight)模式

享元模式 1.1 分类 (对象)结构型 1.2 提出问题 做一个车管所系统,将会产生大量的车辆实体,如果每一个实例都保存自己的所有信息,将会需要大量内存,甚至导致程序崩溃。 1.3 解决方案 运用共享技术有效…

arcgis for js范围内天地图高亮,其余底图灰暗

在GIS地图开发中,有时我们需要突出显示某个特定区域,而将其他区域灰暗处理,以达到视觉上的对比效果。本文将介绍如何使用ArcGIS for JavaScript实现这一功能,具体效果为:在指定范围内,天地图高亮显示&#…

Spring AI + Ollama 实现 DeepSeek-R1 API 服务和调用

随着大语言模型的快速发展,越来越多的开发者开始探索如何将这些强大的推理模型本地化运行。DeepSeek-R1,作为一款性能卓越的开源AI模型,以其低成本和出色的推理能力在技术圈内引起了广泛关注。本文将详细介绍如何使用Ollama部署DeepSeek-R1&a…

Ubuntu 20.04配置网络

1,检查自己网络是否配通。 网络配置成功显示的网络图标 不成功的网络图标 如果看不见网络图标,可以使用ping命令。连接一下百度网。 ping www.baidu.com ping失败的样子 ping成功的样子 2,接下来进入正题,我们开始配置网络。 这…

ElasticSearch入门

目录 1._cat 2.索引一个 document 3.查询document 4.更新document 5.删除document 或 index 6.批量_bulk API 1._cat Get/_cat/nodes 查看所有节点 Get/_cat/indices 查看所有索引(indices :index的复数) Get/_cat/master 查看…

java练习(8)

ps:题目来自力扣 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素。元素的顺序可能发生改变。然后返回 nums 中与 val 不同的元素的数量。 假设 nums 中不等于 val 的元素数量为 k,要通过此题,您需要执行以下操作…

Java常用类

文章目录 包装类(Wrapper)包装类的继承体系装箱和拆箱包装类与String类型的相互转换 String类创建 String 对象的两种方式String 类的常见方法案例演示 StringBuffer类类的继承体系String VS StringBufferStringBuffer构造器String 和 StringBuffer 相互转换StringBuffer 类常见…

算法设计与分析三级项目--管道铺设系统

摘 要 该项目使用c算法逻辑,开发环境为VS2022,旨在通过Prim算法优化建筑物间的连接路径,以支持管线铺设规划。可以读取文本文件中的建筑物名称和距离的信息,并计算出建筑物之间的最短连接路径和总路径长度,同时以利用…

【C语言系列】深入理解指针(5)

深入理解指针(5) 一、sizeof和strlen的对比1.1sizeof1.2strlen1.3sizeof和strlen的对比 二、数组和指针笔试题解析2.1 一维数组2.2 字符数组2.2.1代码1:2.2.2代码2:2.2.3代码3:2.2.4代码4:2.2.5代码5&#…

设计模式——策略模式

设计模式——策略模式 简单介绍一个例子 策略模式是设计模式里面比较简单的设计模式,其特点简单又实用,并且可以让你的代码看起来高大上,维护代码时还方便扩张 多重条件语句不易维护,而使用策略模式可以避免使用多重条件语句&…

【玩转 Postman 接口测试与开发2_018】第14章:利用 Postman 初探 API 安全测试

《API Testing and Development with Postman》最新第二版封面 文章目录 第十四章 API 安全测试1 OWASP API 安全清单1.1 相关背景1.2 OWASP API 安全清单1.3 认证与授权1.4 破防的对象级授权(Broken object-level authorization)1.5 破防的属性级授权&a…

MySQL的 MVCC详解

MVCC是多版本并发控制,允许多个事务同时读取和写入数据库,而无需互相等待,从而提高数据库的并发性能。 在 MVCC 中,数据库为每个事务创建一个数据快照。每当数据被修改时,MySQL不会立即覆盖原有数据,而是生…

【Uniapp-Vue3】z-paging插件组件实现触底和下拉加载数据

一、下载z-paing插件 注意下载下载量最多的这个 进入Hbuilder以后点击“确定” 插件的官方文档地址: https://z-paging.zxlee.cn 二、z-paging插件的使用 在文档中向下滑动,会有使用方法。 使用z-paging标签将所有的内容包起来 配置标签中的属性 在s…