机器学习中的数学原理——分类的正则化

news2024/11/26 10:41:19

通过这篇博客,你将清晰的明白什么是分类的正则化。这个专栏名为白话机器学习中数学学习笔记,主要是用来分享一下我在 机器学习中的学习笔记及一些感悟,也希望对你的学习有帮助哦!感兴趣的小伙伴欢迎私信或者评论区留言!这一篇就更新一下《 白话机器学习中的数学——分类的正则化》

文章目录

  • 一、分类的正则化
  • 二、包含正则化项的表达式的微分

一、分类的正则化

在上一篇问文章中我们介绍了正则化,正则化是减少过拟合的有效手段。之前讨论的是回归的情况,对于分类也可以应用正则化,大家还记得逻辑回归的目标函数吗?也就是对数似然函数
在这里插入图片描述
分类也是在这个目标函数中增加正则化项就行了,道理是相同的。
在这里插入图片描述
注意一下前面添加了负号,那么对数似然函数本来以最大化为目标。但是,这次我想让它变成和回归的目标函数一样的最小化问题,所以加了负号。这样就可以像处理回归一样处理它,所以只要加上正则化项就可以了。也就是说:反转符号是为了将最大化问题替换为最小化问题
反转了符号之后,在更新参数时就要像回归一样,与微分的函数的符号反方向移动才行。目标函数的形式变了,参数更新的表达式也会变!不过,只要再把正则化项的部分也微分了就行。

二、包含正则化项的表达式的微分

在上面的的学习中,我们把回归的目标函数分成了 C(θ) 和 R(θ)。这是新的目标函数的形式,我们要对它进行微分。
在这里插入图片描述
因为是加法,所以对各部分进行偏微分:
在这里插入图片描述
C(θ) 是原来的目标函数,讲解回归的时候我们已经求过它的微分形式了。
在这里插入图片描述
求过就不用再求了,所以接下来只要对正则化项进行微分就行了。正则化项只是参数平方的和,所以它的微分也很好求。
在这里插入图片描述
在这里插入图片描述
可以看出,在微分时表达式中的 1/2 被抵消,微分后的表达式变简单了。那么最终的微分结果就是这样的:
在这里插入图片描述
剩下要做的就是把这个微分结果代入到参数更新表达式里去。
在这里插入图片描述
上面就是这加入了正则化项的参数更新表达式,不过,我们之前说过一般不对 θ0 应用正则化。R(θ) 对 θ0 微分的结果为 0,所以 j = 0 时表达式 中的 λθj 就消失了。因此,实际上我们需要像这样区分两种情况。
在这里插入图片描述
逻辑回归的流程也是一样的。原来的目标函数是 C(θ),正则化项是 R(θ),现在对 E(θ) 进行微分。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在上面的表达式中我们已经求过逻辑回归原来的目标函数 C(θ) 的微分,不过现在考虑的是最小化问题,所以要
注意在前面加上负号。也就是要进行符号的反转

在这里插入图片描述
另外,刚才我们已经求过正则化项 R(θ) 的微分了,可以直接使用。
在这里插入图片描述
也就是说这次不需要任何新的计算。那么,参数更新表达式应该是这样的——这次我把 θ0 的情况区分出来了。
在这里插入图片描述
刚才我们介绍的方法其实叫L2正则化。除 L2 正则化方法之外,还有 L1正则化方法。它的正则化项 R 是这样的。
在这里插入图片描述
L1 正则化的特征是被判定为不需要的参数会变为 0,从而减少变量个数。而 L2 正则化不会把参数变为 0。刚才我说过二次式变为一次式的例子吧,用 L1 正则化就真的可以实现了。L2 正则化会抑制参数,使变量的影响不会过大,而 L1 会直接去除不要的变量。使用哪个正则化取决于要解决什么问题,不能一概而论。现在只要记住有这样的方法就行,将来一定会有用的。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Go异步任务解决方案 Asynq

今天为大家介绍一个Go处理异步任务的解决方案:Asynq,是一个 Go 库,用于排队任务并与 worker 异步处理它们。它由Redis提供支持,旨在实现可扩展且易于上手。 一、概述 Asynq 是一个 Go 库,用于对任务进行排队并与工作人…

Python爬虫学习-简单爬取网页数据

疫情宅家无事,就随便写一些随笔吧QwQ… 这是一篇介绍如何用Python实现简单爬取网页数据并导入MySQL中的数据库的文章。主要用到BeautifulSoup requests 和 pymysql。 以网页https://jbk.39.net/mxyy/jbzs/为例,假设我们要爬取的部分数据如下图所示&#…

【板栗糖GIS】——如何下载哔哩哔哩的视频CC字幕为不带时间节点的纯文字

【板栗糖GIS】——如何下载哔哩哔哩的视频CC字幕为不带时间节点的纯文字 目录 1. 打开edge浏览器或谷歌浏览器 2. 安装油猴插件 3. 安装字幕插件 4. 打开哔哩哔哩视频播放页面,点击字幕 首先在想要下载之前需要先判定视频是否有云字幕,如果有才可以…

xxl-job详解

什么是xxl-job? ​ xxl-job是一个分布式的任务调度平台,其核心设计目标是:学习简单、开发迅速、轻量级、易扩展,现在已经开放源代码并接入多家公司的线上产品线,开箱即用。xxl是xxl-job的开发者大众点评的许雪里名称的…

SpringBoot+vue 实现监控视频rtsp播放(java+Nginx+ffmpeg+flv.js)

其实原理就是: 将监控通过FFMPEG,推送给Nginx,前端通过Nginx地址拉取视频,就可以播放了。 1:安装FFMPEG. 2:下载并且配置nginx. 3:使用java代码实现调用cmd或者linux窗口,并且运行操作FFMPEG的命令,进行监控视频rtsp格式的推送,推送给nginx. …

模板方法设计模式的学习和使用

1、模板方法设计模式的学习 当涉及到一系列具有相似行为的算法或操作时,模板方法设计模式是一种有效的设计模式。它允许你定义一个算法的骨架,同时将某些步骤的实现细节交给子类来实现。   模板方法模式基于以下两个核心原则: 抽象类定义模板方法骨架&#xff1a…

chatgpt赋能python:Python将一张图片分割成多张:从理论到实践

Python将一张图片分割成多张:从理论到实践 简介 随着Internet的爆炸式增长,图片已经成为了我们生活中不可或缺的一部分。具有高质量、高清晰度的图片可以提升网站的美观程度,帮助网站吸引更多的用户。但是,有时候大型的图片并不…

chatgpt赋能python:Python并不是一门简单的编程语言

Python 并不是一门简单的编程语言 Python 是一门直观且易学的编程语言,这一点没有错,但是要说它是简单的,那其实是不准确的。Python 有着广泛的应用领域,包括人工智能、大数据分析、Web开发、自动化测试等。尽管初学者可以迅速上…

MySQL中BETWEEN AND(范围查询)

0 写在前面 MySQL 提供了 BETWEEN AND 关键字,用来判断字段的数值是否在指定范围内。 BETWEEN AND 需要两个参数,即范围的起始值和终止值。如果字段值在指定的范围内,则这些记录被返回。如果不在指定范围内,则不会被返回。 最近…

JS 装饰器

JS 装饰器 JavaScript 装饰器是一种以 符号开头的特殊语法,放在目标代码的前面用于包装或扩展代码功能。JavaScript 的装饰器语法目前仍处于提案阶段,现阶段使用的话需要通过 bable 等方式进行编译之后,才能在浏览器正常运行。装饰器分为两…

chatgpt赋能python:Python将空值替换成0

Python 将空值替换成 0 在数据分析和处理过程中,清洗数据往往是非常重要的一个环节。而在清洗数据过程中,经常会遇到空值(Missing Values)的问题。空值是指在数据集中出现的缺失值,它可能是由于数据输入错误、数据采集…

chatgpt赋能python:Python定义数据框:介绍和基础操作

Python定义数据框:介绍和基础操作 数据框是一种非常方便的数据结构,用于在Python中存储和处理表格数据。数据框可以看作是围绕Series对象构建的2D数据结构,Series是一种存储单个列的一维标记数组。在本文中,我们将介绍如何使用Py…

基于树莓派4B的车牌号识别

目录 0. 前言1. Raspbian系统烧录2. 更换清华源1. 查看树莓派系统版本2. 更换清华国内源3. Raspi镜像修改4. 系统源更新5. 错误排查 3. opencv安装4. 安装 hyperlprpip安装编译安装 5. 验证项目可行性 0. 前言 基于树莓派4B的车牌号识别系统 操作系统:Raspbian PC…

QT实例2(QTableWidget表格中增删数据)

案例介绍 本案例仅简单介绍QTableWidget部分使用方法,如在表格中插入或删除一行数据以及清空表格数据等。在添加数据时,设置了条件判断如正则表达式,若用户输入的数据不合法,则添加失败并提示用户错误的地方,便于用户…

IPsec的NAT穿越详解

问题场景 左边的支部,它的防火墙上联路由器,由于防火墙内部的接口使用的是私网地址,这就导致其无无法在公网上与对端防火墙进行IPsec的隧道建立 。所以必须在AR5上面不是NAT地址转换,由于一般使用的是NAPT,isakmp协议因…

ChatGPT评测

总结:ChatGPT很强大,用作学术方面的问答或者软件行业的辅助工具是有一定的作用,但是有些回答设置了限制,并且中文回答方面总是回答一半,需要一直让他继续说,篇幅不是很长,但是往往能说道精髓&am…

最新加装ChatGPT的New Bing申请流程(含出错解决办法)

两天获得New Bing测试资格流程记录 前言一、Microsoft Edge Dev浏览器下载二、Microsoft账号注册与登陆三、浏览器插件下载与添加四、加入候补名单五、写封信给Bing团队 前言 2023.03.08,下午收到了Microsoft Bing公司的邮件,提示测试资格申请成功&…

Qt Xlsx的基本使用

前言 在很多时候 ,我们需要将数据导出,之前我是将数据表导出为CSV格式,CSV文件虽然可以用Excel打开,但相对于真正的Xlsx文件,还是有许多不足的。偶然之间,发现了QtXlsx这个第三方库。 1、QtXlsx官网对QtX…

makefile工具的使用,编写一个或多个文件!(简单易上手)

一、make 和 makefile 是什么 1. make 是一个 命令。 2. makefile 是一个 文件,可以自动化的构建项目。 3. 编写 makefile 需要: (1)依赖关系 (2)依赖方法 二、什么是依赖关系、什么是依赖方法 下面我简单…

【Java】Java核心要点总结:60

文章目录 1. 乐观锁一定就是好的吗2. Synchronized和ReentrantLock有什么异同3. ReentrantLock是如何实现可重入性的4. 和Synchronized相比,可以重入锁ReentrantLock实现原理有什么不同5. AQS框架 1. 乐观锁一定就是好的吗 乐观锁并不一定好,它有自己的适…