热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

新兴机器学习算法:在线学习

1.前言前面介绍的是对于所有训练样本{(xi,yi)}i1->n同时进行学习的回归、分类算法。一般来说,在训练样本不同时给定的情况下,比起将所有的训练样本集中起来同
1.前言
前面介绍的是对于所有训练样本{(xi,yi)}i=1->n同时进行学习的回归、分类算法。一般来说,在训练样本不同时给定的情况下,比起将所有的训练样本集中起来同时进行学习,把训练样本逐个输入到学习算法中,并在新的数据进来的时候马上对现在的学习结果进行更新,这样的逐次学习算法更加有效。本篇博客介绍可以进行逐次学习的在线学习算法,当训练样本总数n非常大的时候,在线学习算法对于有限内存的利用、管理来说非常有效,是大数据时代的一种优秀的机器学习算法。
为了便于理解,仅仅讨论简单的关于输入的线性模型:

但是,这里讨论的内容,都可以直接扩展为与参数相关的线性模型:

2.被动攻击学习

2.1 梯度下降量的抑制

回归和分类中对参数的学习都是使与训练样本相关的损失达到最小。在训练样本(x,y)逐个给定的在线学习中,可以使用随机梯度算法进行参数的更新。首先切得与新输入的训练样本(x,y)相关的损失J的梯度▽J。然后朝着梯度下降的方向对参数Θ进行更新。

在这里,e为表示梯度下降幅度的正常值。
概率梯度下降法中,当梯度下降幅度过大时,学习结果往往会不稳定;而当梯度下降幅度过小时,又会使得收敛速度变慢。
梯度下降法中幅度的设定
下降幅度过大,学习结果不稳定;下降幅度过小,收敛速度慢
一般来说,如果能合理选择平方损失等损失函数的话,也能一起呵成地使梯度快速下降到谷底(也就是说可以求得下降过程中的最有解析解,即平稳解)。
因此,一般会引入一个惩罚系数,即偏离现在的解Θ'的幅度,对梯度下降量进行适当的调整:

其中,λ为正的标量。这样的学习方法对基金的梯度下降可以进行有效地抑制,称为被动攻击学习。

2.2 被动攻击分类

进行分类时的损失函数,一般使用Hinge损失的平方形式,即二乘Hinge损失:

在这里,m=Θ'xy表示的是间隔。二乘Hinge损失,可以用损失右侧等于零是的损失来解释:

与分类问题相对应的二乘Hinge损失
与二乘Hinge损失相对应的被动攻击学习中,可以求得解析解。具体而言,先进行分解,变成一个最优化的问题:

继而利用拉格朗日乘子可以求解。
下图给出的是被动攻击分类的具体算法流程:

下图给出了被动攻击分类的实例:

被动攻击分类的实例
经过三次迭代后,基本上得到了与最终结果类似的分类,正样本和负样本都得到了很好的分离。

2.3 被动攻击回归

稍微改变一下损失函数的话,被动攻击学习的思想对回归问题也是适用的。在这里,对于残差r=Θ'x-y,使用L2损失或L1损失:

推到过程相同。可以的带如下与L2损失或L1损失相对应的如下参数更新规则。

3.适应正则化学习
被顶攻击学习中使用的是没有上界的损失函数,因此不能很好滴处理异常值。如果采用图基(Tukey)或Ramp损失等有上界的损失函数的话,就可以大幅度提高他对异常值的鲁棒性。然而,具有上界的损失函数是非凸函数,想要进行最优化求解往往很困难。
这里重点介绍一种利用在线学习特性的鲁邦学习方法——适应正则化学习

3.1 参数分布的学习

适应正则化学习,并不只是对参数Θ进行学习,而是对参数的概率分布进行学习。具体而言,首先假定参数Θ的概率分布为高斯分布。用下面的概率密度函数决定概率分布:

期望为u=(0,0)'/协方差矩阵为(2,1;1,2)的高斯分布
适应正则化学习中,对下式的规则为最小时所对应的Θ的期望值u和协方差矩阵∑进行学习:

第一项的J(u),表示的是新输入的训练样本(x,y)满足参数Θ=u时的损失。第二项为协方差矩阵对应的正则化项,根据训练输入样本向量x的各种元素大小,对正则化的大小进行调整。第三项的作用于被动攻击学习类似,
即调整解的变化量。式中,C>0表示的是正则化参数的倒数,u'和∑'是当前迭代次数下对应的均值与协方差的解。KL(p||q)是概率密度函数p到q的KL距离:

同理,改变参数的更新规则,也可以利用适应正则化进行分类与回归。


推荐阅读
  • 机器学习核心概念与技术
    本文系统梳理了机器学习的关键知识点,涵盖模型评估、正则化、线性模型、支持向量机、决策树及集成学习等内容,并深入探讨了各算法的原理和应用场景。 ... [详细]
  • 机器学习公开课备忘录(三)机器学习算法的应用与大数据集
    机器学习公开课备忘录(三)机器学习算法的应用与大数据集对应机器学习公开课第六周和第10周机器学习算法模型的选择与评价1、对于一个data,可以将data划分为trainingset、t ... [详细]
  • Python中HOG图像特征提取与应用
    本文介绍如何在Python中使用HOG(Histogram of Oriented Gradients)算法进行图像特征提取,探讨其在目标检测中的应用,并详细解释实现步骤。 ... [详细]
  • Google排名优化-面向Google(Search Engine Friendly)的URL设计 ... [详细]
  • LambdaMART算法详解
    本文详细介绍了LambdaMART算法的背景、原理及其在信息检索中的应用。首先回顾了LambdaMART的发展历程,包括其前身RankNet和LambdaRank,然后深入探讨了LambdaMART如何结合梯度提升决策树(GBDT)和LambdaRank来优化排序问题。 ... [详细]
  • 在互联网信息爆炸的时代,当用户需求模糊或难以通过精确查询表达时,推荐系统成为解决信息过载的有效手段。美团作为国内领先的O2O平台,通过深入分析用户行为,运用先进的机器学习技术优化推荐算法,提升用户体验。 ... [详细]
  • 支持向量机(SVM)是一种基于统计学习理论的模型,主要在VC维和结构风险最小化的理论基础上发展而来。本文将探讨几种不同的SVM方法及其优化策略,旨在提高模型的效率和适用性。 ... [详细]
  • 2017年人工智能领域的十大里程碑事件回顾
    随着2018年的临近,我们一同回顾过去一年中人工智能领域的重要进展。这一年,无论是政策层面的支持,还是技术上的突破,都显示了人工智能发展的迅猛势头。以下是精选的2017年人工智能领域最具影响力的事件。 ... [详细]
  • 本文深入探讨了CART(分类与回归树)的基本原理及其在随机森林中的应用。重点介绍了CART的分裂准则、防止过拟合的方法、处理样本不平衡的策略以及其在回归问题中的应用。此外,还详细解释了随机森林的构建过程、样本均衡处理、OOB估计及特征重要性的计算。 ... [详细]
  • 智慧城市建设现状及未来趋势
    随着新基建政策的推进及‘十四五’规划的实施,我国正步入以5G、人工智能等先进技术引领的智慧经济新时代。规划强调加速数字化转型,促进数字政府建设,新基建政策亦倡导城市基础设施的全面数字化。本文探讨了智慧城市的发展背景、全球及国内进展、市场规模、架构设计,以及百度、阿里、腾讯、华为等领军企业在该领域的布局策略。 ... [详细]
  • Python库在GIS与三维可视化中的应用
    Python库极大地扩展了GIS的能力,使其能够执行复杂的数据科学任务。本文探讨了几个关键的Python库,这些库不仅增强了GIS的核心功能,还推动了地理信息系统向更高层次的应用发展。 ... [详细]
  • 随着技术的发展,黑客开始利用AI技术在暗网中创建用户的‘数字孪生’,这一现象引起了安全专家的高度关注。 ... [详细]
  • 本文旨在探讨机器学习与数据分析之间的差异,不仅在于它们处理的数据类型,还包括技术背景、业务应用场景以及参与者的不同。通过深入分析,希望能为读者提供清晰的理解。 ... [详细]
  • 随着iPhone 11系列的发布,苹果公司引入了先进的夜间模式,显著提升了夜间摄影的质量,解决了之前版本在低光环境下拍摄效果不佳的问题。 ... [详细]
  • 在Ubuntu 16.04中使用Anaconda安装TensorFlow
    本文详细介绍了如何在Ubuntu 16.04系统上通过Anaconda环境管理工具安装TensorFlow。首先,需要下载并安装Anaconda,然后配置环境变量以确保系统能够识别Anaconda命令。接着,创建一个特定的Python环境用于安装TensorFlow,并通过指定的镜像源加速安装过程。最后,通过一个简单的线性回归示例验证TensorFlow的安装是否成功。 ... [详细]
author-avatar
gaoxuxinyue23
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有