机器学习第6天:线性回归模型正则化

文章目录

机器学习专栏 

正则化介绍

岭回归

岭回归成本函数

核心代码

示例

Lasso回归

Lasso回归损失函数

核心代码

弹性网络

弹性网络成本函数

核心代码

结语


机器学习专栏 

机器学习_Nowl的博客-CSDN博客

正则化介绍

作用:正则化是为了防止模型过拟合

原理:在损失函数中加入一个正则项,使模型减少损失的同时还要降低模型复杂度

它往往给模型约束,来使它无法完全迎合训练集数据

在本文中我们将看到三种正则化方法

三种方法思想差不多,只是约束模型复杂度的方法不同


岭回归

岭回归成本函数

J(w)=MSE(w)+a*\frac{1}{2}*\sum_{i=1}^{n}w^{2}

我们先前已经知道MSE损失函数,这个公式后面加的项就叫作正则项,岭回归的正则项是l2范数的平方的一半

a*\frac{1}{2}*\sum_{i=1}^{n}w^{2}

此时模型训练时就不能只考虑MSE函数的损失了,还必须减小w参数的大小(降低模型复杂度,减少过拟合的可能性)

核心代码

以下是sklearn库使用岭回归的基本代码

from sklearn.preprocessing import PolynomialFeaturesmodel = Ridge(alpha=1)
model.fit(x, y)

alpha就是公式中的a参数,越小则代表正则程度越小  

我们来看几种不同alpha的情况

 该图参数从左到右逐渐增大(岭回归越强),可以看到模型的复杂度也逐渐降低了

示例

我们已经清楚一点,正则化能让模型变得更简单,考虑以下情景

我们有这样一组数据

可以看到,开始的点排列的还是很有规律的,但是右上角的点显得非常突兀,那么如果进行普通的预测 

可能得到以下结果

而使用岭回归可能得到更好的结果,如下

再一次体现了正则化的作用(防止模型过拟合而降低泛化能力) 

我们也可以看一个代码示例

分别用线性模型和加入正则的模型拟合数据

from sklearn.linear_model import Ridge
from sklearn.linear_model import LinearRegression
import numpy as npx = np.random.rand(100, 1)
y = 4 * x + np.random.rand(100, 1)model1 = LinearRegression()
model1.fit(x, y)
print(model1.coef_)model = Ridge(alpha=1)
model.fit(x, y)
print(model.coef_)

看看它们拟合的参数 

可以看到岭回归拟合的模型更简单(在这个实例中当然效果不好,这里只是为了演示它的作用,在实际情况中我们应该用指标测试模型是否过拟合了,再尝试使用岭回归)


Lasso回归

Lasso回归损失函数

Lasso回归公式和岭回归类似,只不过它的正则项是l1范数,它与岭回归的一个区别是它倾向于完全消除掉最不重要的特征

J(w)=MSE(w)+a*\sum_{i=1}^{n}\left | w \right |

则正则项为

a*\sum_{i=1}^{n}\left | w \right |

效果与岭回归相同

核心代码

以下是sklearn库使用Lasso回归的基本代码

from sklearn.linear_model import Lassomodel = Lasso(alpha=1)
model.fit(x, y)

alpha就是公式中的a参数,越小则代表正则程度越小 


弹性网络

弹性网络成本函数

弹性网络是岭回归于Lasso回归的中间地带,你可以控制r来控制其他两种正则化方法的混合程度,r为0时,弹性网络就是岭回归,为1时,弹性网络就是Lasso回归

J(w)=MSE(w)+ra\sum_{i=1}^{n}\left | w \right |+\frac{1-r}{2}a\sum_{i=1}^{n}w^{2}

正则项为

ra\sum_{i=1}^{n}\left | w \right |+\frac{1-r}{2}a\sum_{i=1}^{n}w^{2}

核心代码

以下是sklearn库使用弹性网络的基本代码

from sklearn.linear_model import ElasticNetmodel = ElasticNet(alpha=0.1, l1_radio=0.5)
model.fit(x, y)

alpha对应公式中的a参数,l1_radio对应公式中的r 

结语

在具体任务中,我们应该用学习曲线或其他性能判断模型是否过拟合后再考虑使用正则化,同时根据不同特征选取不同的正则化方法

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

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

相关文章

​软考-高级-系统架构设计师教程(清华第2版)【第9章 软件可靠性基础知识(P320~344)-思维导图】​

软考-高级-系统架构设计师教程(清华第2版)【第9章 软件可靠性基础知识(P320~344)-思维导图】 课本里章节里所有蓝色字体的思维导图

vs2017打开工程提示若要解决此问题,请使用以下选择启动 Visual Studio 安装程序: 用于 x86 和 x64 的 Visual C++ MFC

下载安装文件。 下载之后点击C项目,他会提示需要安装编译依赖。这个时候需要选择 用于 x86 和 x64 的 Visual C MFCWindows SDK 版本8.1 点击右下角的安装等待即可 error MSB8036: 找不到 Windows SDK 版本8.1。请安装所需的版本的 Windows SDK 或者在项目属性页…

Excel vlookup 如何使用

Excel vlookup 如何使用 打开WX, 搜索 “程序员奇点” Excel vlookup可以说是利器,非常好用的工具,用来查询 Excel 或者进行数据匹配,十分方便。 VLookuP 如何使用,不常用的同学经常容易忘记,这次做个记录&#xff…

【数据分享】2023年我国省市县三级的专精特新“小巨人”企业数量(Excel/Shp格式)

企业是经济活动的参与主体。一个城市的企业数量决定了这个城市的经济发展水平!比如一个城市的金融企业较多,那这个城市的金融产业肯定比较发达;一个城市的制造业企业较多,那这个城市的制造业肯定比较发达。 之前我们给大家分享了…

文章分类列表进行查询(实体类日期格式设置)

categoryController GetMappingpublic Result<List<Category>> list(){List<Category> cs categoryService.list();return Result.success(cs);} categoryService //列表查询List<Category> list(); categoryServiceImpl Overridepublic List<Cat…

Django模型层

模型层 与数据库相关的&#xff0c;用于定义数据模型和数据库表结构。 在Django应用程序中&#xff0c;模型层是数据库和应用程序之间的接口&#xff0c;它负责处理所有与数据库相关的操作&#xff0c;例如创建、读取、更新和删除记录。Django的模型层还提供了一些高级功能 首…

【STM32】串口和printf

1.数据通信的基本知识 1.串行/并行通信 2.单工/半双工/全双工通信 类似于【广播 对讲 电话】 不是有两根线就是全双工&#xff0c;而是输入和输出都有对应的数据线。 3.同步/异步通信 区分同步/异步通信的根本&#xff1a;判断是否有时钟信号&#xff08;时钟线&#xff09;。…

人工智能发展前景

随着人工智能的快速发展&#xff0c;这个行业对人才的需求也在不断增长。越来越多的有志之士开始关注人工智能&#xff0c;希望通过自学获得相关技能&#xff0c;进而在人工智能领域找到心仪的职业。本文将探讨人工智能职业发展的前景&#xff0c;并为大家提供自学人工智能的途…

零基础安装分布式数据服务注册系统

一、先安装VM虚拟机&#xff0c;安装最新的ubuntu22系统&#xff0c; 先安装mysql&#xff0c; sudo apt install mysql-server sudo mysql_secure_installation 根据自己需求选择 密码安全级别时&#xff0c;选择n 删除匿名用户&#xff1f;&#xff08;按y|Y表示是&…

此芯科技加入绿色计算产业联盟,参编绿色计算产业发展白皮书

近日&#xff0c;此芯科技正式加入绿色计算产业联盟&#xff08;Green Computing Consortium&#xff0c;简称GCC&#xff09;&#xff0c;以Arm架构通用智能CPU芯片及高能效的Arm PC计算解决方案加速构建软硬协同的绿色计算生态体系&#xff0c;推动绿色计算产业加速发展。 继…

【Spring总结】基于配置的方式来写Spring

本篇文章是对这两天所学的内容做一个总结&#xff0c;涵盖我这两天写的所有笔记&#xff1a; 【Spring】 Spring中的IoC&#xff08;控制反转&#xff09;【Spring】Spring中的DI&#xff08;依赖注入&#xff09;Dependence Import【Spring】bean的基础配置【Spring】bean的实…

基于单片机设计的电子指南针(LSM303DLH模块(三轴磁场 + 三轴加速度)

一、前言 本项目是基于单片机设计的电子指南针&#xff0c;主要利用STC89C52作为主控芯片和LSM303DLH模块作为指南针模块。通过LCD1602液晶显示屏来展示检测到的指南针信息。 在日常生活中&#xff0c;指南针是一种非常实用的工具&#xff0c;可以帮助我们确定方向&#xff0…

Elasticsearch 之聚合分析

本文主要介绍 Elasticsearch 的聚合功能&#xff0c;介绍什么是 Bucket 和 Metric 聚合&#xff0c;以及如何实现嵌套的聚合。 首先来看下聚合&#xff08;Aggregation&#xff09;&#xff1a; 1 什么是 Aggregation&#xff1f; 首先举一个生活中的例子&#xff0c;这个是京…

Mybatis学习笔记-映射文件,标签,插件

目录 概述 mybatis做了什么 原生JDBC存在什么问题 MyBatis组成部分 Mybatis工作原理 mybatis和hibernate区别 使用mybatis&#xff08;springboot&#xff09; mybatis核心-sql映射文件 基础标签说明 1.namespace&#xff0c;命名空间 2.select&#xff0c;insert&a…

2023年R1快开门式压力容器操作证模拟考试题库及R1快开门式压力容器操作理论考试试题

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2023年R1快开门式压力容器操作证模拟考试题库及R1快开门式压力容器操作理论考试试题是由安全生产模拟考试一点通提供&#xff0c;R1快开门式压力容器操作证模拟考试题库是根据R1快开门式压力容器操作最新版教材&#…

text/xml和application/xml

困惑 在http消息中&#xff0c;同样是传送xml信息&#xff0c;有的时候看到Content-Type的值是text/xml&#xff0c;有的时候值是application/xml&#xff0c;感到困惑。 例如&#xff0c;用Postman发送http消息给Tomcat中的基于JAX-WS的 web服务&#xff1a; 请求中传送了xm…

buuctf-web-p6 [NPUCTF2020]web 狗

java: HelloWorld.class import java.io.PrintStream;public class HelloWorld {public static void main(String[] paramArrayOfString){System.out.println("众所周知&#xff0c;你是一名WEB选手&#xff0c;掌握javaweb也是一项必备技能&#xff0c;那么逆向个java应…

代码随想录算法训练营第五十七天丨 动态规划part17

647. 回文子串 思路 动态规划 动规五部曲&#xff1a; 确定dp数组&#xff08;dp table&#xff09;以及下标的含义 如果大家做了很多这种子序列相关的题目&#xff0c;在定义dp数组的时候 很自然就会想题目求什么&#xff0c;我们就如何定义dp数组。 绝大多数题目确实是…

性能测试 —— Jmeter接口处理不低于200次/秒-场景

需求&#xff1a;期望某个接口系统的处理能力不低于200次/秒&#xff0c;如何设计&#xff1f; ①这个场景是看服务器对某个接口的TPS值是否能大于等于200&#xff0c;就可以了&#xff1b; ②系统处理能力&#xff1a;说的就是我们性能测试中的TPS&#xff1b; ③只要设计一…

【论文精读】VOYAGER: An Open-Ended Embodied Agent with Large Language Models

Understanding LSTM Networks 前言Abstract1 Introduction2 Method2.1 Automatic Curriculum2.2 Skill Library2.3 Iterative Prompting Mechanism 3 Experiments3.1 Experimental Setup3.2 Baselines3.3 Evaluation Results3.4 Ablation Studies3.5 Multimodal Feedback from …