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

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

3天内不再提示

如何用数学函数去理解机器学习的过程

倩倩 来源:人人都是产品经理 2020-04-15 15:39 次阅读

近期也是在做项目的过程中发现,其实AI产品经理不需要深入研究每一种算法,能了解机器学习的过程,这其中用到哪些常用算法,分别使用与解决哪些问题和应用场景,并基于了解的知识,去更好的建立AI产品落地流程、把控项目进度、风险评估,这个才是最关键的地方,算法研究交给专业的算法工程师,各司其职,相互配合。

基于最近看的一些文章和书籍,本文将重点分享,如何用数学函数去理解机器学习的过程,以及用数学原理指导产品工作的一些思考。

一、机器学习的本质

机器学习,即学习人类的分析、判断、解决问题的能力。人的能力如何得来?通过长期的信息输入,再经过大脑思考,最后输出对事物的判断。

那么机器如何学习?通过大量的训练数据,学习找规律,找到问题的理想最优解。所以,机器学习的本质其实是函数预测,即f:x-》y。

图片来源:网络

中学时期,我们常解的数据问题之一便是:求解方程。已知坐标(x1,y1),(x2,y2)…(xn,yn)求解n元n次方程,再将新的x带入方程对应的y。机器学习的过程可以类比方程求解过程:

样本数据:已知的坐标集D:(x1,y1),(x2,y2)…(xn,yn);

算法:即求解函数的方法;

模型训练:最后求解的方程或函数;

评估方法:将新的x带入方程验证函数“预测”是否正确。

与普通的函数不同的是,机器学习往往很难求解出完整的方程,通过各种手段求最接近理想情况下的未知项取值。以人脸识别为例,预测函数为:f:X(图片脸部特征)—》Y(身份),其中f则是通过机器学习后,具有人脸识别能力的模型。使用不同的机器学习方法训练的模型不同,即对应的函数形式也不同。

机器学习解决的常见四类问题:分类、聚类、排序和推荐

(1)分类问题:一般包括二分类和多分类的问题,二分类即非黑即白,比如垃圾邮件过滤;多分类问题,即有多种类别的输出结果,比如图像识别。

(2)聚类问题:在一个集合中,将相似度高的对象组成多个类的过程叫聚类。比如一些新闻类的应用,将未标注的数据通过聚类算法来构建主题。

(3)排序问题:根据相关度、重要度、匹配度等,让用户在海量的信息中找到想要的信息,常见的应用场景,如搜索引擎。

(4)推荐问题:典型的应用场景,电商行业的千人千面,根据用户的购买、收藏等行为,分析用户的喜好,实现精准营销。

在理解了机器学习的本质以及常见的问题类型后,下面将介绍机器学习的过程。

二、机器学习的过程

机器学习的过程主要分为三个步骤:样本准备、算法选取、模型评估。

1. 样本准备

机器学习,需要先学习才能预测判断,样本则是机器学习的信息输入,样本的质量很大程度上决定了机器学习的效果。以人脸识别为例,其样本是大量的人脸图片。那么,大量的样本如何获取?按数据来源分类,可分为内部样本和外部样本。

(1)内部样本

内部样本数据,一般可基于内部已积累的样本数据,或通过对产品进行数据标注或者埋点,来收集更多维度的样本数据。

(2)外部样本

若数据的量级或丰富度不够,则可能需要获取一些外部样本。比如通过搜索典型的大型公开数据集,或者数据爬取等方式,来获取一些指定场景的新样本。

2. 算法选取

在机器学习的过程中,找到接近理想模型(函数)的方法即算法。机器学习的常用算法很多,不同的算法,解决的问题不同,适用的场景也不同。

如下图,比如解决聚类问题,一般使用无监督学习算法,分类问题,一般使用有监督学习算法:支持向量机SVM、神经网络等,目前神经网络依然是研究热点之一。

(1)神经网络原理

神经网络是一种模仿人类思考方式的模型,就像飞机模仿鸟的形态一样,神经网络也借鉴了生物学的神经元结构。神经元细胞主要由树突、轴突和细胞体构成,树突用于接收信号并传递给细胞体,细胞体处理信号,轴突输出信号。神经网络结构与此类似,一个典型的单隐含层神经网络架构如下图:

图片来源:网络

输入层:接收输入数据,如图片、语音特征等;

隐藏层:承载数据特征运算;

输出层:输出计算的结果;

其本质是,通过调整内部大量处理单元的连接关系、激励函数和权重值,实现对理想函数的逼近。

(2)深度学习

深度学习是神经网络的一种算法,目前在计算机视觉等领域应用十分广泛,相比单隐藏层神经网络结构,深度学习神经网络是一种多隐藏层、多层感知器的学习结构。如下图所示,增加更多的隐藏层后,网络能更深入得表示特征,以及具有更强的函数模拟能力,能获得更好的分类能力。

图片来源:网络

深度学习三类经典的神经网络分别是:深度神经网络DNN、卷积神经网络CNN、和循环神经网络RNN。其中DNN、CNN一般解决计算机视觉、图像识别等分类问题,RNN适用于自然语言处理等问题。

基于大量的样本、选取合适的算法进行模型训练后,下一步则是对模型的预测效果进行评估。

3. 模型评估

模型评估一般可分为两个阶段:实验阶段和上线阶段,在实验阶段能达到一定的使用标准指标,才能进入实际上线使用阶段。

(1)实验阶段

为了评估模型的可用性,需要对模型的预测能力进行评价,其中很重要的一个评价指标就是准确率,即模型预测和标签一致的样本占所有样本的比例。即选择不同于训练数据的,有标签数据的测试集,输入模型进行运算,计算预测的准确率,评估模型对于测试集的预测效果是否能模型可用指标。

(2)上线阶段

在模型投入使用后,基于上线后的真实数据反馈,评估模型的能力,并基于新的反馈数据,持续迭代优化模型,提高或保持模型的泛化能力。

三、总结与思考

作为产品赋能的一个“工具”,产品化的整个流程可总结为:业务需求-》转化为业务函数》样本数据获取-》选择合适的算法-》模型训练-》内部评估-》上线验证迭代。

其实这个过程,最底层的逻辑还是基于数学建模原理的思路来解决问题,也可用来指导一些日常产品工作中的问题。比如,《增长黑客》中的增长杠杆、北极星指标等方法,其本质也是数据建模的原理。定义业务函数、确定影响因素、权重成本分析、判断最优解决方案,评估上线反馈形成闭环。

所有,很多问题表面看起来各式各样、各不相同,但抽象出来可能就是一些学科问题,比如数学、物理、经济学等,联想到我前段时间分享的一篇文章《透过《奇葩说》论点,看背后的多元思维模型》中提到的多元思维模型核心观点——越往深层次思考,越能挖掘事物本质,越接近学科原理。

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

    关注

    23

    文章

    4459

    浏览量

    90768
  • 机器学习
    +关注

    关注

    66

    文章

    8136

    浏览量

    130586
  • 数据集
    +关注

    关注

    4

    文章

    1179

    浏览量

    24364
收藏 人收藏

    评论

    相关推荐

    深入探讨机器学习的可视化技术

    机器学习可视化(简称ML可视化)一般是指通过图形或交互方式表示机器学习模型、数据及其关系的过程。目标是使
    发表于 04-25 11:17 58次阅读
    深入探讨<b class='flag-5'>机器</b><b class='flag-5'>学习</b>的可视化技术

    何用Rust过程宏魔法简化SQL函数呢?

    这是 RisingWave 中一个 SQL 函数的实现。只需短短几行代码,通过在 Rust 函数上加一行过程宏,我们就把它包装成了一个 SQL 函数
    的头像 发表于 01-23 09:43 313次阅读
    如<b class='flag-5'>何用</b>Rust<b class='flag-5'>过程</b>宏魔法简化SQL<b class='flag-5'>函数</b>呢?

    python调用math函数的方法

    中。本文将详细介绍math模块中的各种数学函数的调用方法,包括函数的功能、参数的使用和返回值的含义等方面,以帮助读者更好地理解和应用这些函数
    的头像 发表于 11-22 11:01 1279次阅读

    机器学习模型评估指标

    机器学习模型指标在机器学习建模过程中,针对不同的问题,需采用不同的模型评估指标。
    发表于 09-06 12:51 454次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>模型评估指标

    计算数学中的函数迭代介绍

    函数迭代是数学中一个非常重要和有趣的主题,它在不同的领域有着不同的应用和着眼点。在动力系统中,函数迭代可以揭示复杂系统的演化规律和混沌现象;
    的头像 发表于 08-30 10:11 755次阅读
    计算<b class='flag-5'>数学</b>中的<b class='flag-5'>函数</b>迭代介绍

    如何全面理解机器学习

    人工智能是从一开始就伴随着电子计算机的发明而兴起的。但是直到2012年,深度学习在图像识别上引发突破,机器学习的应用才变得如此普遍。
    发表于 08-21 12:28 395次阅读
    如何全面<b class='flag-5'>理解</b><b class='flag-5'>机器</b><b class='flag-5'>学习</b>

    卷积神经网络通俗理解

    。本文将从通俗易懂的角度介绍卷积神经网络,让大家更好地理解这个重要的算法。 卷积神经网络的概念 在介绍卷积神经网络之前,先来看看卷积操作,因为卷积神经网络就是以卷积操作为基础的。 卷积操作是一种数学上的操作,它可以将两个函数f和
    的头像 发表于 08-17 16:30 2308次阅读

    机器学习有哪些算法?机器学习分类算法有哪些?机器学习预判有哪些算法?

    机器学习有哪些算法?机器学习分类算法有哪些?机器学习预判有哪些算法?
    的头像 发表于 08-17 16:30 1412次阅读

    机器学习是什么意思?机器学习属于什么分支?机器学习有什么用处?

    机器学习是什么意思?机器学习属于什么分支?机器学习是什么有什么用处?
    的头像 发表于 08-17 16:30 1282次阅读

    如何使用Arm CMSIS-DSP实现经典机器学习

    通常,当开发人员谈论机器学习(ML)时,他们指的是神经网络(nn)。 神经网络的巨大优势在于,你不需要成为一个领域专家,而且可以迅速找到一个可行的解决方案。神经网络的缺点是它们通常需要无数的记忆
    发表于 08-02 07:12

    典型的机器学习过程#机器学习

    机器学习
    未来加油dz
    发布于 :2023年07月14日 16:09:16

    傅里叶变换如何用于深度学习领域

    机器学习和深度学习中的模型都是遵循数学函数的方式创建的。从数据分析到预测建模,一般情况下都会有数学
    的头像 发表于 06-14 10:01 793次阅读
    傅里叶变换如<b class='flag-5'>何用</b>于深度<b class='flag-5'>学习</b>领域

    机器学习理论:k近邻算法

    KNN(k-Nearest Neighbors)思想简单,应用的数学知识几乎为0,所以作为机器学习的入门非常实用、可以解释机器学习算法使用
    的头像 发表于 06-06 11:15 435次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>理论:k近邻算法

    高效理解机器学习

    来源:DeepNoMind对于初学者来说,机器学习相当复杂,可能很容易迷失在细节的海洋里。本文通过将机器学习算法分为三个类别,梳理出一条相对清晰的路线,帮助初学者
    的头像 发表于 05-08 10:24 360次阅读
    高效<b class='flag-5'>理解</b><b class='flag-5'>机器</b><b class='flag-5'>学习</b>

    高效理解机器学习

    为了更好地理解各种技术,根据其目标和复杂度级别进行分类是有帮助的。通过将这些算法组织成不同类别和复杂度,可以简化概念,使其更容易理解。这种方法可以极大增强人们对机器学习
    的头像 发表于 05-06 11:02 500次阅读
    高效<b class='flag-5'>理解</b><b class='flag-5'>机器</b><b class='flag-5'>学习</b>