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

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

3天内不再提示

机器学习算法的介绍

新机器视觉 ? 来源:机器人网 ? 作者:机器人网 ? 2022-06-05 14:17 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

b16add9c-e171-11ec-ba43-dac502259ad0.jpg

哲学要回答的基本问题是从哪里来、我是谁、到哪里去,寻找答案的过程或许可以借鉴机器学习的套路:组织数据->挖掘知识->预测未来。组织数据即为设计特征,生成满足特定格式要求的样本,挖掘知识即建模,而预测未来就是对模型的应用。

b19a7a7a-e171-11ec-ba43-dac502259ad0.jpg

特征设计依赖于对业务场景的理解,可分为连续特征、离散特征和组合高阶特征。本篇重点是机器学习算法的介绍,可以分为监督学习和无监督学习两大类。

b1bf5246-e171-11ec-ba43-dac502259ad0.jpg

无监督学习算法很多,最近几年业界比较关注主题模型,LSA->PLSA->LDA为主题模型三个发展阶段的典型算法,它们主要是建模假设条件上存在差异。LSA假设文档只有一个主题,PLSA假设各个主题的概率分布不变(theta都是固定的),LDA假设每个文档和词的主题概率是可变的。

b20f703c-e171-11ec-ba43-dac502259ad0.jpg

LDA算法本质可以借助上帝掷骰子帮助理解,详细内容可参加Rickjin写的《LDA数据八卦》文章,浅显易懂,顺便也科普了很多数学知识,非常推荐。

b24f76dc-e171-11ec-ba43-dac502259ad0.jpg

监督学习可分为分类和回归,感知器是最简单的线性分类器,现在实际应用比较少,但它是神经网络深度学习的基本单元。

b27c3f82-e171-11ec-ba43-dac502259ad0.jpg

线性函数拟合数据并基于阈值分类时,很容易受噪声样本的干扰,影响分类的准确性。逻辑回归(Logistic Regression)利用sigmoid函数将模型输出约束在0到1之间,能够有效弱化噪声数据的负面影响,被广泛应用于互联网广告点击率预估。

b2c56c20-e171-11ec-ba43-dac502259ad0.jpg

b2e98e48-e171-11ec-ba43-dac502259ad0.jpg

逻辑回归模型参数可以通过最大似然求解,首先定义目标函数L(theta),然后log处理将目标函数的乘法逻辑转化为求和逻辑(最大化似然概率 -> 最小化损失函数),最后采用梯度下降求解。

b301a604-e171-11ec-ba43-dac502259ad0.jpg

b326e1f8-e171-11ec-ba43-dac502259ad0.jpg

相比于线性分类去,决策树等非线性分类器具有更强的分类能力,ID3和C4.5是典型的决策树算法,建模流程基本相似,两者主要在增益函数(目标函数)的定义不同。

b34b38dc-e171-11ec-ba43-dac502259ad0.jpg

线性回归和线性分类在表达形式上是类似的,本质区别是分类的目标函数是离散值,而回归的目标函数是连续值。目标函数的不同导致回归通常基于最小二乘定义目标函数,当然,在观测误差满足高斯分布的假设情况下,最小二乘和最大似然可以等价。

b370df42-e171-11ec-ba43-dac502259ad0.jpg

当梯度下降求解模型参数时,可以采用Batch模式或者Stochastic模式,通常而言,Batch模式准确性更高,Stochastic模式复杂度更低。

b38d0ee2-e171-11ec-ba43-dac502259ad0.jpg

b3ed7ba6-e171-11ec-ba43-dac502259ad0.jpg

上文已经提到,感知器虽然是最简单的线性分类器,但是可以视为深度学习的基本单元,模型参数可以由自动编码(Auto Encoder)等方法求解。

b42f756a-e171-11ec-ba43-dac502259ad0.jpg

深度学习的优势之一可以理解为特征抽象,从底层特征学习获得高阶特征,描述更为复杂的信息结构。例如,从像素层特征学习抽象出描述纹理结构的边缘轮廓特征,更进一步学习获得表征物体局部的更高阶特征。 俗话说三个臭皮匠赛过诸葛亮,无论是线性分类还是深度学习,都是单个模型算法单打独斗,有没有一种集百家之长的方法,将模型处理数据的精度更进一步提升呢?当然,Model Ensembel就是解决这个问题。Bagging为方法之一,对于给定数据处理任务,采用不同模型/参数/特征训练多组模型参数,最后采用投票或者加权平均的方式输出最终结果。 Boosting为Model Ensemble的另外一种方法,其思想为模型每次迭代时通过调整错误样本的损失权重提升对数据样本整体的处理精度,典型算法包括AdaBoost、GBDT等。

b4591816-e171-11ec-ba43-dac502259ad0.jpg

不同的数据任务场景,可以选择不同的Model Ensemble方法,对于深度学习,可以对隐层节点采用DropOut的方法实现类似的效果。

b4823dea-e171-11ec-ba43-dac502259ad0.jpg

b4a5cb84-e171-11ec-ba43-dac502259ad0.jpg

b4cc1172-e171-11ec-ba43-dac502259ad0.jpg

介绍了这么多机器学习基础算法,说一说评价模型优劣的基本准则。欠拟合和过拟合是经常出现的两种情况,简单的判定方法是比较训练误差和测试误差的关系,当欠拟合时,可以设计更多特征来提升模型训练精度,当过拟合时,可以优化特征量降低模型复杂度来提升模型测试精度。

b4f27376-e171-11ec-ba43-dac502259ad0.jpg

特征量是模型复杂度的直观反映,模型训练之前设定输入的特征量是一种方法,另外一种比较常用的方法是在模型训练过程中,将特征参数的正则约束项引入目标函数/损失函数,基于训练过程筛选优质特征。

b511daae-e171-11ec-ba43-dac502259ad0.jpg

模型调优是一个细致活,最终还是需要能够对实际场景给出可靠的预测结果,解决实际问题。期待学以致用!

审核编辑 :李倩

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

    关注

    23

    文章

    4716

    浏览量

    95762
  • 机器学习
    +关注

    关注

    66

    文章

    8510

    浏览量

    134901

原文标题:零基础入门机器学习算法(附图)

文章出处:【微信号:vision263com,微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

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

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

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

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

    【「# ROS 2智能机器人开发实践」阅读体验】视觉实现的基础算法的应用

    : 一、机器人视觉:从理论到实践 第7章详细介绍了ROS2在机器视觉领域的应用,涵盖了相机标定、OpenCV集成、视觉巡线、二维码识别以及深度学习目标检测等内容。通过
    发表于 05-03 19:41

    请问STM32部署机器学习算法硬件至少要使用哪个系列的芯片?

    STM32部署机器学习算法硬件至少要使用哪个系列的芯片?
    发表于 03-13 07:34

    机器学习模型市场前景如何

    当今,随着算法的不断优化、数据量的爆炸式增长以及计算能力的飞速提升,机器学习模型的市场前景愈发广阔。下面,AI部落小编将探讨机器学习模型市场
    的头像 发表于 02-13 09:39 ?396次阅读

    华为云 Flexus X 实例部署安装 Jupyter Notebook,学习 AI,机器学习算法

    前言 由于本人最近在学习一些机器算法,AI 算法的知识,需要搭建一个学习环境,所以就在最近购买的华为云 Flexus X 实例上安装了
    的头像 发表于 01-02 13:43 ?583次阅读
    华为云 Flexus X 实例部署安装 Jupyter Notebook,<b class='flag-5'>学习</b> AI,<b class='flag-5'>机器</b><b class='flag-5'>学习</b><b class='flag-5'>算法</b>

    传统机器学习方法和应用指导

    在上一篇文章中,我们介绍机器学习的关键概念术语。在本文中,我们会介绍传统机器学习的基础知识和多
    的头像 发表于 12-30 09:16 ?1256次阅读
    传统<b class='flag-5'>机器</b><b class='flag-5'>学习</b>方法和应用指导

    【「具身智能机器人系统」阅读体验】1.全书概览与第一章学习

    了解具身智能机器人相关的知识,我感到十分荣幸和幸运。 全书简介 本书以循序渐进的方式展开,通过对具身智能机器人技术的全方位解析,帮助读者系统化地学习这一领域的核心知识。 首先在第一部分,介绍
    发表于 12-27 14:50

    什么是机器学习?通过机器学习方法能解决哪些问题?

    来源:Master编程树“机器学习”最初的研究动机是让计算机系统具有人的学习能力以便实现人工智能。因为没有学习能力的系统很难被认为是具有智能的。目前被广泛采用的
    的头像 发表于 11-16 01:07 ?1010次阅读
    什么是<b class='flag-5'>机器</b><b class='flag-5'>学习</b>?通过<b class='flag-5'>机器</b><b class='flag-5'>学习</b>方法能解决哪些问题?

    NPU与机器学习算法的关系

    在人工智能领域,机器学习算法是实现智能系统的核心。随着数据量的激增和算法复杂度的提升,对计算资源的需求也在不断增长。NPU作为一种专门为深度学习
    的头像 发表于 11-15 09:19 ?1331次阅读

    LSTM神经网络与其他机器学习算法的比较

    随着人工智能技术的飞速发展,机器学习算法在各个领域中扮演着越来越重要的角色。长短期记忆网络(LSTM)作为一种特殊的循环神经网络(RNN),因其在处理序列数据方面的优势而受到广泛关注。 LSTM
    的头像 发表于 11-13 10:17 ?2202次阅读

    人工智能、机器学习和深度学习存在什么区别

    人工智能指的是在某种程度上显示出类似人类智能的设备。AI有很多技术,但其中一个很大的子集是机器学习——让算法从数据中学习
    发表于 10-24 17:22 ?3048次阅读
    人工智能、<b class='flag-5'>机器</b><b class='flag-5'>学习</b>和深度<b class='flag-5'>学习</b>存在什么区别

    LIBS结合机器学习算法的江西名优春茶采收期鉴别

    以庐山云雾茶和狗牯脑茶的明前茶、雨前茶为对象,研究激光诱导击穿光谱结合机器学习的茶叶鉴别方法。将茶叶茶,水数据融合可有效鉴别春茶采收期,且数据融合后表现出更好的稳定性和鲁棒性,LIBS结合机器
    的头像 发表于 10-22 18:05 ?678次阅读
    LIBS结合<b class='flag-5'>机器</b><b class='flag-5'>学习</b><b class='flag-5'>算法</b>的江西名优春茶采收期鉴别

    【「时间序列与机器学习」阅读体验】+ 鸟瞰这本书

    清晰,从时间序列分析的基础理论出发,逐步深入到机器学习算法在时间序列预测中的应用,内容全面,循序渐进。每一章都经过精心设计,对理论知识进行了详细的阐述,对实际案例进行了生动的展示,使读者在理论与实践
    发表于 08-12 11:28

    【「时间序列与机器学习」阅读体验】全书概览与时间序列概述

    如何通过根因分析技术获得导致故障的维度和元素,包括基于时间序列异常检测算法的根因分析、基于熵的根因分析、基于树模型的根因分析、规则学习等。 ●第7章“智能运维的应用场景”:介绍智能运维领域的应用,包括
    发表于 08-07 23:03