0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

不同角度的机器学习算法比较

汽车玩家 来源:今日头条 作者:闻数起舞 2020-05-03 18:35 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

"当您改变看待事物的方式时,您看待的事物就会改变。" ―Wayne Dyer

人类发明了无数的机器学习(ML)算法。 当然,大多数时候,只有一小部分用于研究和工业。 但是,对于人类来说,理解并记住所有这些ML模型的所有细节都是有些不知所措的。 某些人可能还会误以为所有这些算法都是完全无关的。 更重要的是,当两者看起来都是有效的算法时,如何选择使用算法A而不是算法B?

本文旨在为读者提供不同角度的机器学习算法。 基于这些观点,可以基于共同的理由对算法进行比较,并且可以轻松地对其进行分析。 本文编写时考虑了两个主要的ML任务-回归和分类。

方法与目标

本质上,所有机器学习问题都是优化问题。 机器学习模型或始终需要优化的基本目标函数背后总有一种方法论。 比较算法背后的主要思想可以增强关于它们的推理。

例如,线性回归模型的目的是使预测值和实际值的平方损失最小化(均方误差,MSE),而Lasso回归的目的是通过在MSE上添加额外的正则项来限制MSE,同时限制学习参数。 防止过度拟合。

参数化

尽管没有严格定义参数模型的定义,但是这种模型分类法已广泛用于统计学习领域。 简单地说,参数模型意味着模型的参数数量是固定的,而当有更多数据可用时,非参数模型的参数数量会增加[3]。 定义参数模型的另一种方法是基于其有关数据概率分布形状的基本假设。 如果没有假设,那么它是一个非参数模型[4]。

可并行性

并行算法意味着一种算法可以在给定的时间完成多个操作。 这可以通过在不同的工作人员之间分配工作负载来完成,例如在一台或多台计算机中的处理器。 像梯度提升决策树(GBDT)这样的顺序算法很难并行化,因为下一个决策树是根据前一个决策树所犯的错误建立的。

在线和离线

在线和离线学习是指机器学习软件学习更新模型的方式。 在线学习意味着可以一次提供一个训练数据,以便在有新数据时可以立即更新参数。 但是,离线学习要求训练在新数据出现时重新开始(重新训练整个模型)以更新参数。 如果一种算法是在线算法,那将是有效的,因为生产中使用的参数可以实时更新以反映新数据的影响。

偏差方差权衡

不同的ML算法将具有不同的偏差方差权衡。 偏差误差来自模型偏向特定解决方案或假设的事实。 例如,如果线性决策边界适合非线性数据,则偏差会很大。 另一方面,方差度量的是来自模型方差的误差。 它是模型预测和期望模型预测的平均平方差[2]。

Bias-variance tradeoff, extracted from [2].

不同的模型进行不同的偏差方差折衷。 例如,朴素贝叶斯由于过于简单的假设而被认为是高偏差,低方差模型。

样品复杂度

样本复杂性衡量了训练网络以保证有效概括所需的训练示例的数量。 例如,深度神经网络具有很高的样本复杂度,因为需要大量的训练数据来训练它。

空间复杂度

空间复杂度衡量一个算法需要运行多少内存。 如果ML算法将过多的数据加载到机器的工作存储器中,则ML程序将无法成功运行。

时间复杂度

RAM模型[1]下,算法所需的"时间"通过算法的基本运算来衡量。 尽管用户和开发人员可能会更多地关注算法训练模型所需的挂钟时间,但使用标准最坏情况下的计算时间复杂度来比较模型训练所需的时间会更公平。 使用计算复杂度的好处是可以忽略诸如运行时使用的计算机功能和体系结构以及底层编程语言之类的差异,从而使用户可以专注于算法基本运算的基本差异。

请注意,在训练和测试期间,时间复杂度可能会大不相同。 例如,线性回归等参数模型可能需要较长的训练时间,但在测试期间却很有效。

参考

[1]计算的RAM模型

[2]讲座12:偏差-偏差权衡

[3] D. S. Raschka。 "参数学习算法和非参数学习算法之间有什么区别?"

[4] T. Hoskin,"参量和非参量:使术语神秘化",Mayo诊所,2012年,第1-5页。

总之,可以基于不同的标准来分析ML算法。 这些标准实际上可以帮助衡量不同ML模型的有效性和效率。

您能从其他角度比较机器学习算法吗?

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 算法
    +关注

    关注

    23

    文章

    4816

    浏览量

    98797
  • 机器学习
    +关注

    关注

    67

    文章

    8570

    浏览量

    137421
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    在阿里云PAI平台的机器人感知强化学习规模化实践

    物理 AI 正在迅速从基础运动控制迈向更复杂的环境理解。传统机器人强化学习(RL)长期依赖本体感知(proprioception),包括关节角度、力矩反馈和内部状态,来训练灵巧的运动技能。
    的头像 发表于 05-18 10:34 358次阅读
    在阿里云PAI平台的<b class='flag-5'>机器</b>人感知强化<b class='flag-5'>学习</b>规模化实践

    它人机器人深度参与机器人移动算法测评规范国标制定

    近日,由上海机器人产业技术研究院有限公司牵头起草的《机器人移动算法测评规范》国家标准(计划号:20256386-T-604)第一次工作组会议,在杭州云栖小镇国际会展中心顺利召开。它人机器
    的头像 发表于 05-16 10:22 560次阅读

    机器学习中的数据质量双保障:从“验证”到“标记”

    机器学习的世界里,有句老话尤为贴切:“garbagein,garbageout”(输入垃圾,输出垃圾)。无论模型架构多先进、算法多精妙,数据的质量始终是决定模型性能的核心。本文聚焦数据处理中两个
    的头像 发表于 04-24 15:48 172次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>中的数据质量双保障:从“验证”到“标记”

    麦歌恩磁编码器芯片INL≤±0.07°高精度角度解算算法研究 -艾毕胜电子

    磁编码器凭借抗油污、耐振动、低成本等优势,逐步成为工业运动控制、机器人关节、伺服电机等领域的核心位置反馈器件。积分非线性(INL)是衡量磁编码器角度测量精度的核心指标,直接决定系统定位控制精度。麦歌
    的头像 发表于 03-18 15:33 292次阅读

    算法工程师需要具备哪些技能?

    算法工程师需要掌握一系列跨学科的技能,涵盖数学基础、编程能力、算法理论、工程实践以及业务理解等多个方面。 以下是具体技能及学习建议: 线性代数核心内容:矩阵运算、特征值分解、向量空间等。应用场
    发表于 02-27 10:53

    机器学习和深度学习中需避免的 7 个常见错误与局限性

    无论你是刚入门还是已经从事人工智能模型相关工作一段时间,机器学习和深度学习中都存在一些我们需要时刻关注并铭记的常见错误。如果对这些错误置之不理,日后可能会引发诸多麻烦!只要我们密切关注数据、模型架构
    的头像 发表于 01-07 15:37 411次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>和深度<b class='flag-5'>学习</b>中需避免的 7 个常见错误与局限性

    如何深度学习机器视觉的应用场景

    深度学习视觉应用场景大全 工业制造领域 复杂缺陷检测:处理传统算法难以描述的非标准化缺陷模式 非标产品分类:对形状、颜色、纹理多变的产品进行智能分类 外观质量评估:基于学习的外观质量标准判定 精密
    的头像 发表于 11-27 10:19 400次阅读

    角度传感器原理、技术与实用指南

    在众多的工业控制、机器人技术和航空航天等领域,角度传感器扮演着不可或缺的角色,为精确测量角度变化提供了关键的技术支持。 工 作 原 理  电位器式角度传感器 原理: 通过旋转轴带动滑动
    的头像 发表于 11-04 15:14 681次阅读
    <b class='flag-5'>角度</b>传感器原理、技术与实用指南

    机器视觉检测PIN针

    角度,凸显Pin针轮廓、高度差异及表面缺陷(如划痕、异物)。精密运动平台(可选):用于多角度成像或定位被测连接器。核心检测算法:定位与计数: 模板匹配或Blob分析快速定位连接器及所有Pin针,确保数量
    发表于 09-26 15:09

    量子机器学习入门:三种数据编码方法对比与应用

    在传统机器学习中数据编码确实相对直观:独热编码处理类别变量,标准化调整数值范围,然后直接输入模型训练。整个过程更像是数据清洗,而非核心算法组件。量子机器
    的头像 发表于 09-15 10:27 1069次阅读
    量子<b class='flag-5'>机器</b><b class='flag-5'>学习</b>入门:三种数据编码方法对比与应用

    AI 驱动三维逆向:点云降噪算法工具与机器学习建模能力的前沿应用

    在三维逆向工程领域,传统方法在处理复杂数据和构建高精度模型时面临诸多挑战。随着人工智能(AI)技术的发展,点云降噪算法工具与机器学习建模能力的应用,为三维逆向工程带来了创新性解决方案,显著提升
    的头像 发表于 08-20 10:00 934次阅读
    AI 驱动三维逆向:点云降噪<b class='flag-5'>算法</b>工具与<b class='flag-5'>机器</b><b class='flag-5'>学习</b>建模能力的前沿应用

    PID控制算法学习笔记资料

    用于新手学习PID控制算法
    发表于 08-12 16:22 7次下载

    FPGA在机器学习中的具体应用

    ,越来越多地被应用于机器学习任务中。本文将探讨 FPGA 在机器学习中的应用,特别是在加速神经网络推理、优化算法和提升处理效率方面的优势。
    的头像 发表于 07-16 15:34 3180次阅读

    【嘉楠堪智K230开发板试用体验】K230机器视觉相关功能体验

    K230开发板摄像头及AI功能测评 摄像头作为机器视觉应用的基础,能够给机器学习模型提供输入,提供输入的质量直接影响机器学习模型的效果。 K
    发表于 07-08 17:25

    FPGA使用Cordic算法求解角度正余弦值

    在进行坐标变换的时候,需要计算角度的正余弦值,而在FPGA中是不能直接进行求解的,需要采用其它的方式进行求解。
    的头像 发表于 06-19 09:54 1625次阅读
    FPGA使用Cordic<b class='flag-5'>算法</b>求解<b class='flag-5'>角度</b>正余弦值