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

搜广推校招面经三十一

vivo策略算法

一、机器学习中 L1 和 L2 正则化的原理

见【搜广推校招面经二十五】
L1 正则化将某些特征权重置0实现模型简化,而 L2 正则化主要通过平滑权重来实现模型简化。

1.1. 正则化的原理

正则化的核心思想是在损失函数中加入一个惩罚项(Regularization Term),通过对模型参数施加约束,避免模型过于复杂,从而减少过拟合的风险。
假设原始损失函数为 L ( θ ) L(\theta) L(θ),其中 θ \theta θ 是模型参数。引入正则化后,损失函数变为:
L regularized ( θ ) = L ( θ ) + λ R ( θ ) L_{\text{regularized}}(\theta) = L(\theta) + \lambda R(\theta) Lregularized(θ)=L(θ)+λR(θ)

  • L ( θ ) L(\theta) L(θ):原始损失函数(如均方误差或交叉熵)。
  • R ( θ ) R(\theta) R(θ):正则化项,用于惩罚模型参数。
  • λ \lambda λ:正则化系数,控制正则化强度。

通过最小化 L regularized ( θ ) L_{\text{regularized}}(\theta) Lregularized(θ),可以找到既拟合数据又满足正则化约束的模型参数。

2.2. L1 和 L2 正则化的定义

(1)L1 正则化

L1 正则化使用参数绝对值之和作为正则化项:
R ( θ ) = ∥ θ ∥ 1 = ∑ i = 1 n ∣ θ i ∣ R(\theta) = \|\theta\|_1 = \sum_{i=1}^{n} |\theta_i| R(θ)=θ1=i=1nθi

(2)L2 正则化

L2 正则化使用参数平方和的平方根作为正则化项:
R ( θ ) = ∥ θ ∥ 2 2 = ∑ i = 1 n θ i 2 R(\theta) = \|\theta\|_2^2 = \sum_{i=1}^{n} \theta_i^2 R(θ)=θ22=i=1nθi2

2.3. L1 和 L2 正则化的几何解释

(1)无正则化的情况

在没有正则化的情况下,优化目标是最小化损失函数 L ( θ ) L(\theta) L(θ)。假设 L ( θ ) L(\theta) L(θ) 的等高线是一个椭圆形状,则最优解位于椭圆的最低点。

(2)加入正则化后的优化目标

加入正则化后,优化目标变为:
min ⁡ θ L ( θ ) + λ R ( θ ) \min_\theta L(\theta) + \lambda R(\theta) θminL(θ)+λR(θ)
此时,正则化项 R ( θ ) R(\theta) R(θ) 对参数空间施加了一个约束。我们可以将优化问题视为在参数空间中寻找满足约束条件的最优解。

  • L1 正则化 R ( θ ) = ∥ θ ∥ 1 R(\theta) = \|\theta\|_1 R(θ)=θ1 定义了一个菱形约束区域(在二维情况下)。
  • L2 正则化 R ( θ ) = ∥ θ ∥ 2 2 R(\theta) = \|\theta\|_2^2 R(θ)=θ22 定义了一个圆形约束区域(在二维情况下)。

当损失函数的等高线与正则化约束区域相交时,得到的解即为最终参数。

2.4. L1 正则化为何能让模型变得稀疏?

L1 正则化倾向于使模型参数中的某些值变为零,从而使模型变得稀疏。其原因可以从以下几个方面解释:

(1)几何解释

  • 在 L1 正则化中,参数空间的约束区域是一个菱形。
  • 损失函数的等高线与菱形的边界相交时,由于菱形的顶点在坐标轴上,交点往往落在坐标轴上(即某些参数为零)。
  • 在顶点处,部分坐标值为零(例如 ( w 1 , 0 ) (w_1, 0) (w1,0) ( ( 0 , w 2 ) ((0, w_2) ((0,w2))。因此,L1 正则化倾向于将部分参数压缩到零,形成稀疏解。

(2)数学解释

  • L1 正则化的目标是最小化 L ( θ ) + λ ∥ θ ∥ 1 L(\theta) + \lambda \|\theta\|_1 L(θ)+λθ1。由于 ∥ θ ∥ 1 \|\theta\|_1 θ1 是绝对值的和,优化过程会优先减少较小的参数值,甚至将其直接压缩为零。

2.5. L2 正则化为何不能让模型变得稀疏?

L2 正则化不会使模型参数变为零,而是通过缩小参数值的绝对值来平滑模型。其原因如下:

(1)几何解释

  • 在 L2 正则化中,参数空间的约束区域是一个圆形。
  • 损失函数的等高线与圆形的边界相交时,交点通常不在坐标轴上(即所有参数都不为零)。
  • 因此,L2 正则化不会导致稀疏解,而是均匀地缩小所有参数。

(2)数学解释

  • L2 正则化的目标是最小化 L ( θ ) + λ ∥ θ ∥ 2 2 L(\theta) + \lambda \|\theta\|_2^2 L(θ)+λθ22。由于 ∥ θ ∥ 2 2 \|\theta\|_2^2 θ22 是参数平方的和,优化过程会均匀地缩小所有参数值,而不是将某些参数压缩为零。

二、Sigmoid函数什么情况下会导致梯度消失,如何处理梯度消失

见【搜广推校招面经十八、搜广推校招面经七】

三、46. 全排列(hot100_回溯_中等)

在这里插入图片描述

class Solution:def permute(self, nums: List[int]) -> List[List[int]]:def dfs(x):if x == len(nums) - 1:res.append(list(nums))               # 添加排列方案returnfor i in range(x, len(nums)):nums[i], nums[x] = nums[x], nums[i]  # 交换,将 nums[i] 固定在第 x 位dfs(x + 1)                           # 开启固定第 x + 1 位元素nums[i], nums[x] = nums[x], nums[i]  # 恢复交换res = []dfs(0)return res
http://www.lryc.cn/news/542659.html

相关文章:

  • 【JavaWeb13】了解ES6的核心特性,对于提高JavaScript编程效率有哪些潜在影响?
  • C++知识整理day9——继承(基类与派生类之间的转换、派生类的默认成员函数、多继承问题)
  • pyautogui库的screenshot()函数
  • App测试--逍遥模拟器抓包问题
  • STM32 HAL库0.96寸OLED显示液晶屏
  • 动态表头导出EasyExcel
  • 【前端】react+ts 轮播图的实现
  • 清华大学出品DeepSeek 四部教程全收录(附下载包),清华deepseek文档下载地址
  • Android 布局系列(三):RelativeLayout 使用指南
  • ubuntu20.04音频aplay调试
  • 前缀和代码解析
  • Windows 环境下安装 Anaconda 并配置
  • 大模型在尿潴留风险预测及围手术期方案制定中的应用研究
  • JavaScript 简单类型与复杂类型
  • AI绘画软件Stable Diffusion详解教程(1):Windows系统本地化部署操作方法(专业版)
  • 大白话Vue 双向数据绑定的实现原理与数据劫持技术
  • VUE 获取视频时长,无需修改数据库,前提当前查看视频可以得到时长
  • antv G6绘制流程图
  • 完美隐藏滚动条方案 (2024 最新验证)
  • 单片机的串口(USART)
  • 实现分布式限流开源项目
  • 递归构建行政区域树(二)
  • AR技术下的电商:虚拟试穿/试用/试戴成新风尚
  • 社群团购平台的愿景构建与开源链动2+1模式S2B2C商城小程序应用探索
  • 笔记20250225
  • 【项目】基于Boost自主实现搜索引擎
  • 使用 Open3D 批量渲染并导出固定视角点云截图
  • 汽车无钥匙进入一键启动操作正确步骤
  • JMeter 的基础知识-安装部分
  • 解决后端跨域问题