首页 > 其他分享 >【机器学习】正则化的基本概念以及正则化成本和梯度的示例

【机器学习】正则化的基本概念以及正则化成本和梯度的示例

时间:2024-08-04 20:55:15浏览次数:8  
标签:tmp dj 示例 梯度 正则 cost mathbf lambda

引言

在机器学习中,正则化(Regularization)是一种技术,用于减少模型复杂度,防止过拟合,并提高模型的泛化能力。通过在损失函数中添加一个额外的惩罚项,正则化鼓励模型学习更简单、更平滑的函数,从而在未见过的数据上表现得更好

文章目录

一、正则化

1.1 正则化的形式

1.1.1 L1 正则化(Lasso 回归)

  • 惩罚项: λ ∑ j = 1 n ∣ w j ∣ \lambda \sum_{j=1}^{n} |w_j| λ∑j=1n​∣wj​∣
  • 效果:不仅减少模型复杂度,还能实现特征选择,自动缩小权重

1.1.2 L2 正则化(Ridge 回归)

  • 惩罚项: λ ∑ j = 1 n w j 2 \lambda \sum_{j=1}^{n} w_j^2 λ∑j=1n​wj2​
  • 效果:减少模型复杂度,但不自动缩小权重

1.1.3 Elastic Net 正则化

  • 惩罚项: λ ( α ∑ j = 1 n ∣ w j ∣ + ( 1 − α ) ∑ j = 1 n w j 2 ) \lambda \left( \alpha \sum_{j=1}^{n} |w_j| + (1 - \alpha) \sum_{j=1}^{n} w_j^2 \right) λ(α∑j=1n​∣wj​∣+(1−α)∑j=1n​wj2​)
  • 效果:结合了 L1 和 L2 正则化的优点,可以实现特征选择和减少模型复杂度

1.2 正则化的优点

1.2.1 防止过拟合

通过减少模型复杂度,正则化有助于模型在未见过的数据上表现得更好

1.2.1 特征选择

某些类型的正则化(如 Lasso)可以自动缩小权重,从而实现特征选择

1.2.1 参数稳定性

正则化有助于避免模型对噪声的敏感性,提高参数的稳定性

1.3 正则化的缺点

1.3.1 增加模型复杂度

正则化需要额外的参数(如 lambda),这可能会增加模型的复杂度

1.3.2 参数选择

正则化参数(如 lambda)的选择对模型的性能有很大影响,需要通过交叉验证等方法来确定最佳值

在实际应用中,正则化是一种非常有效的技术,可以显著提高机器学习模型的性能。

二、正则化成本和梯度

2.1 目标

  • 将先前的线性回归和对数几率回归的成本函数扩展一个正则化项
  • 在添加了正则化项后,重新运行之前过拟合的示例
import numpy as np
%matplotlib widget
import matplotlib.pyplot as plt
from plt_overfit import overfit_example, output
from lab_utils_common import sigmoid
np.set_printoptions(precision=8)

2.2 添加正则化

在这里插入图片描述

上图展示了线性回归和对数几率回归的成本和梯度函数

注意:

  • 成本:线性回归和对数几率回归的成本函数有显著差异,但向方程中添加正则化的方式是相同的
  • 梯度:线性回归和对数几率回归的梯度函数非常相似。它们仅在实现

    标签:tmp,dj,示例,梯度,正则,cost,mathbf,lambda
    From: https://blog.csdn.net/m0_49243785/article/details/140890923

相关文章

  • 如何写出高质量ChatGPT指令?195条Prompt示例-第二弹
    第一弹链接:如何写出高质量ChatGPT指令?195条Prompt示例-CSDN博客点点关注,对催更第三弹更有用哦!3.明确说明所需的主题或任务明确提及你希望ChatGPT解决的任务或主题。这有助于集中响应,避免偏差或模糊的输出。不要像“谈论营销策略”这样笼统的提示,而要具体。例如,“为小企业......
  • 如何写出高质量ChatGPT指令?195条Prompt示例
    什么是ChatGPT指令?ChatGPT指令是输入人工智能(AI)界面以获取响应的指令或查询。提示由关键字和短语组成,旨在引发回复。你给ChatGPT输入一个问题或指令,它会像在对话中一样做出回应。你可以通过提供基于响应的另一个查询或指令来继续对话。在本文中,我们将讨论为ChatGPT编写......
  • astro cherry-markdown 示例
    cherry-markdown是一个TS编写的markdown编辑器。---import"cherry-markdown/dist/cherry-markdown.css";---<cherry-mark><textarea></textarea></cherry-mark><script>importCherryfrom"cherry-markdown";cla......
  • Python中使用正则表达式
    摘要:正则表达式,又称为规则表达式,它不是某种编程语言所特有的,而是计算机科学的一个概念,通常被用来检索和替换某些规则的文本。一.正则表达式的语法①行定位符行定位符就是用来描述字符串的边界。"^"表示行的开始,"$"表示行的结束。^tm  #tmequalTomorrowMoon可以......
  • wkt格式文件详解(包含应用示例)
    还是大剑师兰特:曾是美国某知名大学计算机专业研究生,现为航空航海领域高级前端工程师;CSDN知名博主,GIS领域优质创作者,深耕openlayers、leaflet、mapbox、cesium,canvas,webgl,echarts等技术开发,欢迎加底部微信(gis-dajianshi),一起交流。No.内容链接1Openlayers【入门教程】-......
  • 【机器学习】过拟合和欠拟合、高偏差(High Bias)和高方差(High Variance)的区别、过拟合和
    引言在机器学习中,过拟合(Overfitting)是指模型在训练数据上学习得太好,以至于它捕捉到了数据中的噪声和随机波动,而不是潜在的真实关系,这导致模型在新的、未见过的数据上表现不佳;欠拟合(Underfitting)是指模型在训练数据上未能捕捉到足够的信息或模式,导致模型在训练集和测试集上......
  • 使用epoll编写TCP服务器示例
    #include<stdio.h>#include<stdlib.h>#include<string.h>#include<errno.h>#include<netinet/in.h>#include<sys/socket.h>#include<arpa/inet.h>#include<sys/epoll.h>#include<unistd.h>#include......
  • ORM之SqlSugar简单示例
    示例结构 下面给出示例代码,安装编码框架可扩展IDal接口定义namespaceORMRepository{///<summary>///数据库访问接口///</summary>///<typeparamname="T"></typeparam>publicinterfaceIDal<T>{///<summary&......
  • 深入浅出:可视化理解揭示决策树与梯度提升背后的数学原理
    决策树是一种非参数的监督学习算法,可用于分类和回归。它使用类似树的结构来表示决策及其潜在结果。决策树易于理解和解释,并且可以轻松地进行可视化。但是当决策树模型变得过于复杂时,它不能很好地从训练数据中泛化,会导致过拟合。梯度提升是一种集成学习模型,在其中结合许多弱学习器......
  • [Oracle]面试官:你举例几个内置函数,并且说说如何使用内置函数作正则匹配
    【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权)https://www.cnblogs.com/cnb-yuchen/p/18338279出自【进步*于辰的博客】目录先言1、单行函数1.1lpad/rpad(str1,n,str2)1.2instr(str1,str2[,pos][,n])2、非空判断函数3、日期函数4、正则表达式相关函数4.1......