周志华 机器学习 Day20

本文探讨了嵌入式特征选择方法及其在学习器训练中的应用,并介绍了L1正则化如何帮助实现特征稀疏化。此外,还讨论了稀疏表示与字典学习的概念,以及它们在降低模型复杂度方面的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

嵌入式选择与L1正则化

嵌入式特征选择是将特征选择过程与学习器训练过程融为一体,两者在同一个优化过程中完成,即在学习器训练过程中自动地进行了特征选择。

给定数据集D=,其中x∈R,y∈R。我们考虑最简单的线性回归模型,以平方误差为损失函数,则优化目标为

当样本特征很多,而样本数相对较少时,上式容易陷入过拟合。为了缓解过拟合问题,可对上式引入正则化项,若使用L2范数正则化。

其中正则化参数λ>0。上式称为“岭回归”,通过引入L2范数正则化,确能显著降低过拟合的风险。

L1范数和L2范数正则化都有助于降低过拟合风险,但前者还会带来一个额外的好处:它比后者更易于获得“稀疏”解,即它求得的ω会有更少的非零分量。

稀疏表示与字典学习

不妨把数据集D考虑成一个矩阵,其每行对应于一个样本,每列对应于一个特征。特征选择所考虑的问题是特征具有“稀疏性”,即矩阵中许多列与当前学习任务无关,通过特征选择去除这些列,则学习器训练过程仅需在小的矩阵上进行,学习任务的难度可能有所降低,设计的计算和存储开销会减少,学得模型的可解释性也会提高。

一般的学习任务中(例如图像分类),我们需要学习出这样一个“字典”。为普通稠密表达的样本找到合适的字典,将样本转化为合适的稀疏表示形式,从而使学习任务得以简化,模型复杂度得以降低,通常称为“字典学习”,亦称“稀疏编码”。“字典学习”更侧重于学得字典过程,而“稀疏编码”则更侧重于对样本进行稀疏表达的过程。

其中,B∈R(d*k)是字典矩阵,k称为字典的词汇量,通常由用户指定,ai∈Rk则是样本xi∈Rd的稀疏表示。

 

### 关于周志华机器学习》中的公式推导 为了更好地理解周志华机器学习》中的公式推导,可以从几个方面入手: #### 1. 掌握基础知识 确保具备足够的数学背景知识对于理解和掌握书中涉及的各种公式至关重要。这包括但不限于线性代数、概率论统计学的基础概念[^3]。 #### 2. 阅读相关章节并跟随逻辑推理 每章开头通常会给出该部分的核心思想和目标,在阅读过程中应当注意作者是如何逐步引入新的知识点,并通过具体的例子或应用场景加深理解。当遇到复杂的定理证明时,建议先尝试自己思考其背后的原理再对照原文验证自己的想法是否正确[^4]。 #### 3. 参考其他资源辅助学习 如果觉得某些地方难以理解,则可以寻找额外的学习材料作为补充说明。例如,《机器学习》这本书在系列原创机器学习30讲的基础上进行了扩展,提供了详细的公式推导和代码实现案例,有助于更深入地了解各个算法的工作机制及其数学依据[^1]。 #### 4. 实践练习巩固所学内容 理论联系实际是提高编程能力和解决具体问题的有效途径之一。可以通过编写简单的程序来重现书中的实验结果或是参开源项目贡献等方式积累经验。此外,“南瓜书”也是一份非常有价值的参考资料,它记录了许多人在自学过程中遇到的问题及解决方案,可以帮助读者克服难关成为更加优秀的开发者。 ```python import numpy as np def calculate_gradient(X, y, w): """ 计算梯度下降法中的梯度 参数: X (numpy.ndarray): 输入特征矩阵 y (numpy.array): 输出标签向量 w (numpy.array): 权重参数 返回: grad_w (numpy.array): 对w求偏导后的梯度值 """ N = len(y) predictions = 1 / (1 + np.exp(-X.dot(w))) error = predictions - y grad_w = (1/N) * X.T.dot(error) return grad_w ``` 此函数展示了如何基于给定的数据集计算逻辑回归模型中权重更新所需的梯度,这是许多机器学习教材都会讨论的一个典型实例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值