神经网络八股(三)

news/2025/2/22 14:26:45

1.什么是梯度消失和梯度爆炸

梯度消失是指梯度在反向传播的过程中逐渐变小,最终趋近于零,这会导致靠前层的神经网络层权重参数更新缓慢,甚至不更新,学习不到有用的特征。

梯度爆炸是指梯度在方向传播过程中逐渐变大,权重参数更新变化较大,导致损失函数的上下跳动,导致训练不稳定

可以使用一些合理的损失函数如relu, leakRelu,归一化处理,batchnorm,确保神经元的输出值在合理的范围内

2.为什么需要特征归一化

因为特征之间的单位与尺度不同,为了消除此间差异,对每个维度等同看待,防止尺度大的特征起决定性作用,所以需要进行特征归一化使不同特征在数值范围和尺度上保持一致。

优点:加快模型训练速度、提高模型性能、避免数值不稳定,增强模型的泛化能力

平均值归一化:

最大最小值归一化:

标准化:

3.什么是组合特征,如何组合高阶特征

组合特征是指多个特征组合起来,作为新的特征,组合的方法有:基本运算、聚合、聚合后进行基本运算等。

组合高阶特征可以对类别特征进行embedding嵌入、然后对特征实施FM因子分解机特征组合。

Embedding是一种将类别特征转换为低维稠密向量的技术。具体来说,它将每个类别映射到一个固定维度的向量空间中

因子分解机(FM)是一种专门用于处理稀疏数据和特征组合的机器学习模型。它特别擅长处理类别特征的交互(interaction)和组合。FM的核心思想是:

  • 将每个特征(包括类别特征的embedding)表示为一个向量。

  • 通过计算特征向量之间的内积(点积),捕捉特征之间的交互关系。

4.欧式距离与曼哈顿距离的区别

欧式距离是定义在欧几里得空间中,两点之间的距离,他具有明显的缺点是将样本不同属性之间的差别等同看待;曼哈顿距离也叫城市区块距离,是欧几里得空间上两点所形成的线段对轴产生的投影的距离总和

4.为什么一些场景使用余弦相似度而不是欧式相似度

余弦相似度指的是两个向量之间的角度关系,并不关心他们的绝对值大小,而欧式距离体现的是数值上的绝对差异

余弦相似度:衡量的是两个向量之间的夹角,只关注方向,而不考虑向量的长度,对向量的方向差异敏感,但对长度不敏感

欧即里得距离:衡量的是两个点在空间中的绝对距离,关注的是向量的长度和位置

5.one-hot独热编码得作用是什么

将每个类别特征的取值转换为一个唯一的二进制向量,其中只有一个位置的值为1,其余位置的值为0。能够避免类别数据的序数关系,提供稀疏的特征表示,支持多类别特征的组合,并且与大多数算法兼容。然而,在处理类别数量较多的特征时,需要考虑其维度爆炸和稀疏性问题

6.参数模型和非参数模型

在统计学中,参数模型通常假设总体(随机变量)服从某一个分布,该分布由一些参数确定(比如正态分布由均值和方差确定),在此基础上构建的模型称为参数模型,参数模型的形式和复杂度在训练之前已经确定,模型的输出依赖于一组固定数量的参数.模型形式固定,参数量有限,训练速度块,线性回归、逻辑回归、感知机:所需样本量少、拟合快、复杂度低。

非参数模型对于总体的分布不做任何假设,只是知道总体是一个随机变量,其分布是存在的(分布中也可能存在参数),但是无法知道其分布的形式,更不知道分布的相关参数,只有在给定一些样本的条件下,能够依据非参数统计的方法进行推断。非参数模型的形式和复杂度在训练过程中根据数据动态确定,模型的输出不依赖于固定数量的参数。形式灵活,参数不固定,训练慢。K近邻算法,SVM向量机,高斯过程。所需样本量多、拟合慢、容易过拟合

7.L1和L2正则先验分别服从什么分布

L1:lasso回归拉普拉斯分布

L1正则化通过惩罚参数的绝对值,使得模型参数倾向于稀疏化,即很多参数会趋近于零。这种稀疏性可以帮助进行特征选择,减少模型复杂度

L2:岭回归,高斯分布,L2正则化通过惩罚参数的平方,使得模型参数的值保持较小,但不会将参数完全置为零。这种正则化方法有助于平滑模型,避免过拟合。

8.回归问题常用得模型评估方法

均方误差:MSE预测值与实际值之差的平方的平均值。MSE的值越小,表示模型的预测结果越接近实际值,模型的性能越好。

均方根误差RMESE:均方误差(MSE)的平方根,它衡量的是模型预测值与实际值之间的标准差。RMSE的值越小,表示模型的预测结果越接近实际值,模型的性能越好

和方误差:SSE=i=1∑n​(yi​−y^​i​)2

平均绝对误差MAE:计算的是模型预测值与实际值之差的绝对值的平均值。

平均绝对百分比误差MAPE

决定系数:表示模型解释的因变量的方差比例。R2的值介于0和1之间,值越接近1,表示模型对数据的拟合越好,即模型解释的方差比例越高


http://www.niftyadmin.cn/n/5862388.html

相关文章

c++ std::list使用笔记

c std::list使用笔记 1. 包含头文件2. 创建和初始化 std::list3. 添加元素4. 删除元素5. 访问元素6. 遍历 std::list7. 容量相关操作8. 其他常用操作9. 示例代码总结 std::list 是 C 标准库中的一个双向链表容器。与 std::vector 不同, std::list 不支持随机访问&…

单片机 Bootloade与二进制文件的生成

单片机的 Bootloader 是一种特殊的程序,负责在单片机上电后初始化硬件、更新用户应用程序(固件),并将控制权移交给用户程序。以下是其运行机制和关键流程的详细说明: 1、单片机 Bootloader 的核心作用 固件更新&…

python入门 介绍及变量的使用

1.python介绍 python 是一门计算机语言 常见的计算机语言:python、java、C语言。。。 什么是计算机语言:就是让计算机知道你想干什么,把你的需求使用它能听懂的语言说出来 中国也有一门计算机语言:易语言 能认为是语言的本质上…

我使用windows笔记本通过远程桌面连接连接linux服务器,但是远程桌面连接显示“未启动对服务器的远程访问”,我应该怎么做才能使用笔记本连接服务器呢?

当使用 Windows 笔记本通过远程桌面连接 Linux 服务器时出现“未启动对服务器的远程访问”提示,可能是由于 Linux 服务器未开启远程桌面服务、防火墙限制、网络问题等原因导致。以下为你详细介绍不同的解决办法: 1. 在 Linux 服务器上开启远程桌面服务 …

力扣每日一题【算法学习day.131】

前言 ###我做这类文章一个重要的目的还是记录自己的学习过程,我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非常非常高滴!!! 习题 1.用地毯覆盖后的最少白色砖块 题…

利用瓦片信息生成xml格式的地理坐标文件(python实现)

在现代地图应用中,我们通常会使用瓦片(Tiles)来展示全球地图的局部区域。每个瓦片都具有其特定的x、y坐标和缩放级别z,这些信息决定了该瓦片在地图中的位置和大小。在一些应用中,我们可能需要为每个瓦片生成地理坐标信…

使用Ubuntu搭建Java部署环境

White graces:个人主页 🙉专栏推荐:Java入门知识🙉 🐹今日诗词:小舟从此逝,江海寄余生🐹 ⛳️点赞 ☀️收藏⭐️关注💬卑微小博主🙏 ⛳️点赞 ☀️收藏⭐️关注💬卑微小…

5分钟下载excel模板

PostMapping("/downloadTemplate") Operation(summary"下载入职excel模板") public void downloadExcel(HttpServletResponse response){try{//获取输入流,原始模板位置String filePath "template/gridPersonTemplate.xlsx";ClassPa…