Regularization&feature selection

机器学习--正则化(regularization)防止分类器过拟合 本文参考吴恩达《机器学习》课程。 阅读详情

Cross validation / multual information / Bayesian statistics and regularization

在之前我们讨论了最小化风险函数,但很多时候这样做的效果并不好,这是由于bias and variance的权衡。因此,我们需要进行模型选择,来自动的选择最合适的模型。

Cross validation

假设我们有一些有限的模型,如何来选择哪个模型能够使得其泛化能力最好?

常用的方法是交叉验证:

  1. hold-out cross validation
    • 使用一部分数据(70%)作为train data进行训练,使用剩下的数据作为validation data进行验证,选择在验证集上误差最小的模型
  2. k-fold cross validation
    • 在hold-out cross validation中,我们的30%的数据实际上都被浪费了。而如果数据量本来就很小,那么这样做并不合理。因此,更常用的是每次使用30%的数据作为验证集,训练多次得到其平均误差。
    • k=10是常用的做法,但计算量会很大
  3. leave-one-out cross validation.
    • 可以令k=m,也就是划分的数量和数据集大小一样,每次只用一个样本作为验证。
    • 只适合在数据量非常少的情况下使用。

Feature selection

如果我们有很多feature,但很可能大部分feature对于我们的分类任务都没有太大帮助。因此,我们要选择最为合适的feature子集,但其选择空间有2n2^n2n,是在太大了。

因此,有几种启发式的feature selection方法:

  1. Wrapper model feature selection
    • forward search
      • 很简单的想法,我们每次尝试加入一个feature,如果加入这个feature能在验证集上表现得更好,那么我们就要他;如果表现得更差,那么就抛弃他
    • backward search
      • 同样的想法,每次删去一个feature,看训练集上的表现是否提高
  2. Filter feature selection
    • 在之前的算法中,计算量非常大。因此,一个直观的想法是定义一个score function,来衡量某个feature能表示的信息量大小,即S(i)S(i)S(i),然后,选择kkk个能使得score 最大的feature。
    • 一般来说,S(i)S(i)S(i)是根据xix_ixi​和yyy之间的相关性来度量的
    • mutual information
      • MI⁡(xi,y)=∑xi∈{0,1}∑y∈{0,1}p(xi,y)log⁡p(xi,y)p(xi)p(y)\operatorname{MI}\left(x_{i}, y\right)=\sum_{x_{i} \in\{0,1\}} \sum_{y \in\{0,1\}} p\left(x_{i}, y\right) \log \frac{p\left(x_{i}, y\right)}{p\left(x_{i}\right) p(y)}MI(xi​,y)=∑xi​∈{0,1}​∑y∈{0,1}​p(xi​,y)logp(xi​)p(y)p(xi​,y)​
    • 可以发现,mutual information可以表示为KL散度的形式:
      • MI⁡(xi,y)=KL(p(xi,y)∥p(xi)p(y))\operatorname{MI}\left(x_{i}, y\right)=\mathrm{KL}\left(p\left(x_{i}, y\right) \| p\left(x_{i}\right) p(y)\right)MI(xi​,y)=KL(p(xi​,y)∥p(xi​)p(y))
      • 因此,mutual information衡量了分布p(xi,y)p(x_{i}, y)p(xi​,y) 和 p(xi)p(y)p(x_{i}) p(y)p(xi​)p(y) 的差异。

Bayesian statistics and regularization

  • 频率学派
    • 认为参数是已知的,我们需要做的只是从数据中学习参数,一般使用极大似然估计等方式
  • 贝叶斯学派
    • 认为参数也是随机变量,因此我们有一个先验分布,我们需要求解的是在已知数据的情况下参数的分布(后验分布):
      • p(θ∣S)=p(S∣θ)p(θ)p(S)=(∏i=1mp(y(i)∣x(i),θ))p(θ)∫θ(∏i=1mp(y(i)∣x(i),θ)p(θ))dθ\begin{aligned} p(\theta | S) &=\frac{p(S | \theta) p(\theta)}{p(S)} \\ &=\frac{\left(\prod_{i=1}^{m} p\left(y^{(i)} | x^{(i)}, \theta\right)\right) p(\theta)}{\int_{\theta}\left(\prod_{i=1}^{m} p\left(y^{(i)} | x^{(i)}, \theta\right) p(\theta)\right) d \theta} \end{aligned}p(θ∣S)​=p(S)p(S∣θ)p(θ)​=∫θ​(∏i=1m​p(y(i)∣x(i),θ)p(θ))dθ(∏i=1m​p(y(i)∣x(i),θ))p(θ)​​
    • 当我们想要得到一个新的xxx的输出时,对后验分布进行积分:
      • p(y∣x,S)=∫θp(y∣x,θ)p(θ∣S)dθp(y | x, S)=\int_{\theta} p(y | x, \theta) p(\theta | S) d \thetap(y∣x,S)=∫θ​p(y∣x,θ)p(θ∣S)dθ
    • 分母其实就是 P(S), 而我们就是要让P(S)在各种参数的影响下能够最大(这里只有参数θ)。因此我们只需求出随机变量θ中最可能的取值,这样求出θ后,可将θ视为固定值,那么预测时就不用积分了,而是直接像最大似然估计中求出θ后一样进行预测,这样就变成了点估计。这种方法称为最大 后验概率估计(Maximum a posteriori)方法:
      • θMAP=arg⁡max⁡θ∏i=1mp(y(i)∣x(i),θ)p(θ)\theta_{\mathrm{MAP}}=\arg \max _{\theta} \prod_{i=1}^{m} p\left(y^{(i)} | x^{(i)}, \theta\right) p(\theta)θMAP​=argmaxθ​∏i=1m​p(y(i)∣x(i),θ)p(θ)
    • 很神奇的是,我们这个形式与最大似然的形式非常相似,除了最后的p(θ)p(\theta)p(θ)
    • 一般来说,我们可以将先验假设成:θ∼N(0,τ2I)\theta \sim \mathcal{N}\left(0, \tau^{2} I\right)θ∼N(0,τ2I),也就是很多的feature的参数值都为零(消除这个feature)。使用这个假设,那么MAP比最大似然有更小的norm,也就是更不容易过拟合。
      • 实际上,对于线性回归而言,最大似然实际上就是使得其误差平方和最小;在MAP中,就是在误差平方和后再加入一个正则项λ∣∣θ∣∣2\lambda||\theta||^2λ∣∣θ∣∣2
    • 一个很好的例子是Bayesian logistic regression对于文本分类是一种很有效的算法,即使当feature远远大于样本数量时。
基于IMDb数据集的情感分析(Doc2Vec模型与神经网络实现) 使用Doc2Vec模型参加Kaggle的NLP比赛,最终score达到0.97,前2%。 本文所有的代码都可以在我的github上找到。 在上一篇博文中,我们使用了TF-IDF,准确率达到了0.95,已经进入前100,但还不够,我们试试使用更加高大上的Doc2Vec结合神经网络模型,其准确率能否再次提升。 数据介绍 本数据来源于IMDB电影评论集,是Kaggle上一个入门的项目。... 阅读详情

相关推荐

交叉熵与softmax

介绍改进神经网络的基本方法:交叉熵代价函数与softmax。 二次代价函数 之前我们一直使用二次代价函数,貌似在一定程度上也挺work。但其实,当输入值与目标值差距很大时,二次代价函数就不是很恰当了;这是因为当差距很大时,此函数的学习速率会很慢。我们可以通过一个简单的例子观察这种变化: 假设我们只使用一个神经元与一个输出神经元,定义代价函数为: C=(y−a)22C=(y−a)...

crazy_scott的博客 6139

Stanford机器学习-Regularization

The problem of overfitting 在前面的Linear Regression和Logistic Regression中,给定一个数据集,我们都希望找到一条线去拟合数据或是对数据进行合理有效的分类。 在线性回归预测房价的例子中,第一次我们用一条直线来拟合数据,但处于一直上升的趋势,实际中房价应该会逐步趋于平稳,显然不符合实际,我们说这个拟合模型是“欠拟合的”或是“高偏差的...

Forlogenの解忧杂货铺 973

基于IMDb数据集的情感分析(TF-IDF与机器学习实现)

使用TF-IDF模型,结合机器学习进行情感分类,能取得较好的准确率。 本文的JupyterNotebook可参考这里。 本文介绍NLP的通用方法TF-IDF的使用,并且分类准确率能达到0.95,进入kaggle排行榜的前100。 TF-IDF TF-IDF(词频-逆文档频率)算法是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。 TFIDF的主要...

crazy_scott的博客 5293

机器学习(三)正则化Regularization

正则化背景-过拟合线性回归正则化 Regularized Linear Regression更通用的一个定义:梯度下降法规范解 Normal equation逻辑回归正则化MLE MAP 背景-过拟合 由图中可以看出,当只有一次项的时候,拟合程度不够Underfitting,当存在五次方项的时候就存在过拟合现象,假设函数很好的fit给定的数据,但是不利于数据的预测 解决过拟合问题的方案: 1、减少特征值的数量 2、正则化: 不改变特征值的数量,减小他的系数θj\theta_jθj​以削弱影响 当我们有大

greatcoder的博客 366

生成模型

介绍判别模型和生成式模型,朴素贝叶斯。 生成模型和判别模型 discriminative learning algorithms,也就是根据特征值来求结果的概率。 可以表示为P(y∣x;θ)P(y|x;\theta)P(y∣x;θ),在参数确定的条件下,直接求得在当前样本feature下的y的概率 实际上是求条件概率 常见的判别模型有线性回归、对数回归、线性判别分析、支持向量机、boosti...

crazy_scott的博客 2679

决策树原理及实现(二)--CART算法及剪枝

本节介绍决策树中使用最多的CART方法以及剪枝,主要参考资料。 在上一节我们将了ID3算法,和ID3算法的改进版C4.5算法。对于C4.5算法,我们也提到了它的不足,特别是不能处理连续数据等。而目前最常见的CART既可以做回归,也可以做分类,在skleran包中的决策树也采用此种方法。 特征选择方法 前面无论是ID3或者C4.5算法,我们都是使用的“熵”这一度量单位来选取特征。但计算...

crazy_scott的博客 2002

六、回归——套索回归 (Lasso Regression)的基本应用

一、使用场合 与岭回归类似,套索 (Least Absolute Shrinkage and Selection Operator) 也会对回归系数的绝对值添加一个罚值。此外,它能降低偏差并提高线性回归模型的精度。看看下面的等式: 套索回归与岭回归有一点不同,它在惩罚部分使用的是绝对值,而不是平方值。这导致惩罚(即用以约束估计的绝对值之和)值使一些参数估计结果等于零。使用的惩罚值越大,估计...

Nicole的博客 4万+

PCA算法推导

PCA理解与应用。 Motivation PCA与Factor analysis非常相似,都是主要用于reduction data dimensions。但PCA的想法相比于Factor analysis更简单,实现起来也更加直观和容易(只需要算特征值)。 PCA tries to identify the subspace in which the data approximately li...

crazy_scott的博客 1996

Python中机器学习的特征选择技术

Introduction 介绍 Feature selection is the selection of reliable features from the bundle of large number of features. Having a good understanding of feature selection/ranking can be a great asset for ...

weixin_26752765的博客 687

ML之FE之FS:特征工程/数据预处理之特征筛选三大技术简介之Filter、Wrapper(基于搜索策略的三类)、Embedded)及其代码实现

​ ML之FE之FS:特征工程/数据预处理之特征筛选三大技术简介之Filter、Wrapper(基于搜索策略的三类)、Embedded)及其代码实现 目录 基于评价准则划分的三种分类 1、Filter—先对特征集进行特征选择再训练学习器—最快 2、Wrapper包裹式/封装式——基于搜索策略的三类——选择的是“量身定做”的特征子集——比过滤式更好但耗内存 3、Embedded嵌入式——融为一体,在学习的过程中自动进行特征选择 案例实战应用

头部AI社区如有邀博主AI主题演讲请私信—心比天高,仗剑走天涯,保持热爱,奔赴向梦想!低调,专注,谦虚,自律,反思,成长,还算比较正能量的博主,公益免费传播…内心特别想在AI界做出一些可以推进历史进程影响力的技术(兴趣使然,有点小情怀,也有点使命感呀 1万+

激光光束质量评估与光斑尺寸计算:从理论到MATLAB实践

本文详细解析激光光束质量评估与光斑尺寸计算的理论基础及MATLAB实践方法,重点介绍M²因子的测量与应用。通过高斯光束模型、CCD成像法和MATLAB算法实现,帮助读者掌握从理论到实践的完整流程,提升激光系统调试与评估能力。

weixin_29083373的博客 444

最优化方法:L1和L2正则化regularization

http://blog.youkuaiyun.com/pipisorry/article/details/52108040机器学习和深度学习常用的规则化方法之一:L范数正则化(规格化)。一般来说,监督学习可以看做最小化下面的目标函数):θ∗=arg⁡minθ1N∑i=1NL(yi,f(xi;θ))+λ 

皮皮blog 5万+

告别手动拖拽!PyQt5/PyQt6 QTableView列宽自适应窗口的三种实战方案(附性能对比)

本文详细介绍了PyQt5/PyQt6中QTableView列宽自适应窗口的三种实战方案,包括Stretch模式、resizeEvent手动计算和ResizeToContents模式,并附有性能对比。帮助开发者解决窗口大小变化时列宽不变的常见问题,提升用户体验和开发效率。

weixin_42538752的博客 231

决策树原理及实现(一)--ID3算法及改进(C4.5)

决策树是机器学习中很经典也很直观的算法。本文介绍决策树的基本思路和原理。 引言 决策树(Decision Tree)是一种基本的分类与回归算法。决策树是一种树形结构,这在计算机中的数据结构中很常见,也很容易理解:我们选择一种属性对其进行划分,通过其属性的取值不同划分节点,直到最后属性完全相同或不能继续划分为止。 因此,其学习的关键在于如何选择最优划分属性。这也是我们接下来要重点介绍的...

crazy_scott的博客 4842

银河麒麟V10 SP3下NFS客户端挂载失败?5个常见问题排查与修复

本文针对银河麒麟V10 SP3系统中NFS客户端挂载失败的常见问题,提供了5个实战排查方案。从基础服务状态检查到防火墙配置、版本兼容性、/etc/fstab设置及权限映射,详细解析了问题根源与解决方案,帮助用户快速恢复NFS文件共享功能。

weixin_42525005的博客 358

线性回归与分类

回顾线性回归,logistic回归和softmax。 LMS 先构造线性函数进行拟合:h(x)=θ0+θ1x1+θ2x2h(x) = \theta_0 + \theta_1 x_1 + \theta_2 x_2h(x)=θ0​+θ1​x1​+θ2​x2​ 定义cost function:J(θ)=12∑(h(xi)−yi)2​J(\theta) = \frac{1}{2} \sum (h(x^...

crazy_scott的博客 872

SPEI计算避坑指南:gma中Distribution和FitMethod参数怎么选?

本文深入探讨了在SPEI计算中如何科学选择gma库中的Distribution和FitMethod参数,帮助研究者避开常见陷阱。详细分析了LogLogistic、Gamma和Pearson3三种分布的适用场景,以及LMoment与MLE拟合方法的优缺点,为气象干旱研究提供实用指南。

weixin_30308101的博客 250

机器学习系统--GraphLab

介绍分布式机器学习系统架构GraphLab。 GraphLab简介 是一个以数据为中心的机器学习系统。 实际中很多模型都可以转化为图的形式: 社交网络 推荐系统 文本分析 概率图模型 我们之前已经有了基于BSP Model的Pregel,其主要特点是需要进行同步(双屏障),而同步是由最慢的节点决定,造成: 资源的浪费(大部分节点会等待少部分节点收敛) 某些算法可能并不需要同步更新 某些机...

crazy_scott的博客 641

利用恒源云在云端租用GPU服务器训练YOLOv8模型(包括Linux系统命令讲解)

为当涉及到深度学习的训练任务时,GPU的计算能力是不可或缺的。相对于传统的中央处理器(CPU),图形处理器(GPU)具有更强大的并行计算能力,能够显著加速深度学习模型的训练过程。深度学习算法通常涉及大量的矩阵运算和张量操作,而GPU的并行计算架构使得它们能够高效地执行这些计算,从而加速模型训练的速度。恒源云是一个经济高效的云计算平台,您可以通过恒源云的控制台或者命令行界面来管理实例、上传和下载数据、执行训练任务等。

Snu77的博客 6719

【深度学习新浪潮】智能体在图像处理领域的技术突破与实践指南

智能体正在重构图像处理的技术版图:从多智能体分工的"专业化协作",到多模态统一的"极简架构",再到工具增强的"实战能力",技术突破不断降低开发门槛并拓展应用边界。对于开发者而言,2025年的核心机遇在于结合具体场景选择成熟框架(如医疗用IteR-MRL、工业用NVIDIA NIM),通过微调与工具集成快速落地解决方案。随着硬件成本下降与开源生态完善,图像处理智能体将从当前的"高端场景赋能"走向"千行百业普及",真正成为数字世界的"视觉感知与操作核心"。

专注:太空算力、AI infra、异构调度、大模型成本工程 438

SVM入门笔记

本文不是一篇正式的tutorial,只是帮助回忆和理解SVM推导的笔记。此文章会长期更新。 分类问题 SVM(support vector machine)是一种著名的分类算法。我们学过Logistic回归,但它只能处理简单的线性分类。在现实生活中,很多问题的属性不能简单的用线性分类完成,或者说线性分类的效果不好,这时候我们就要想其他办法。 超平面 我们可以想象这样一个方程: wTx+b=0w^T...

crazy_scott的博客 436

rk3568 Android12 增加 USB HOST 模式开关(二)

将原有 USB-C 改为 USB-A,并在设置中增加USB工作模式开关可以让用户选择USB端口的功能模式,例如充电、文件传输、或MIDI设备。用户能够灵活管理设备的连接方式,优化数据传输和设备兼容性。

weixin_35723192的博客 733

EM算法推导

推导EM算法,并证明收敛性。 Jensen’s inequality 定理:若fff是凸函数,XXX是随机变量,我们有:E[f(X)]≥f(EX)\mathrm{E}[f(X)] \geq f(\mathrm{E} X)E[f(X)]≥f(EX) 若fff是严格凸函数,也就是f′′>0f^{''} > 0f′′>0恒成立,同...

crazy_scott的博客 371

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

EM 思想

以Kmeans和GMM为例,阐述EM思想。 Kmeans kmeans是一种相当简单和直观的聚类算法,主要分类两步: 对于每个点,选择离他最近的聚类中心作为他的类别:c(i):=arg⁡min⁡j∥x(i)−μj∥2​c^{(i)} :=\arg \min _{j}\left\|x^{(i)}-\mu_{j}\right\|^{2}​c(i):=argminj​∥∥​x(i)−μj​∥∥​2​...

crazy_scott的博客 336

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Factor Analysis

这应该是学ML以来推导过的最痛苦的算法了,所以我想先用直观的语言描述什么是Factor analysis。 因子分析(factor analysis)是一种数据简化的技术。它通过研究众多变量之间的内部依赖 关系,探求观测数据中的基本结构,并用少数几个假想变量来表示其基本的数据结构。这几 个假想变量能够反映原来众多变量的主要信息。原始的变量是可观测的显在变量,而假想变量是不可观测的潜在变量,称为因子...

crazy_scott的博客 326

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

上一篇: Convex Formulation for Learning from Positive and Unlabeled Data
下一篇: Advice for applying Machine Learning -- Andrew Ng
zealscott
博客等级 码龄9年 327粉丝 196原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值