机器学习(05)——主要概念理解

举报
AllEmpty 发表于 2020/01/08 19:43:00 2020/01/08
【摘要】 机器学习的专业术语非常多,不需要一开始理解所有的专业术语,这些术语会随着对机器学习的深入,会慢慢理解,水到渠成。不过在学习的过程中,有一些概念必须要了解,有助于后续的学习与理解,需要了解的核心概念有:监督学习、无监督学习、模型、策略、算法等。监督学习监督学习,指的是学习的数据与后续测试的数据,都有答案(标签)。比如说,我们自己的相片集,里面每个人我们都知道是谁并可以标识出来,给机器学习时,我...

机器学习的专业术语非常多,不需要一开始理解所有的专业术语,这些术语会随着对机器学习的深入,会慢慢理解,水到渠成。

不过在学习的过程中,有一些概念必须要了解,有助于后续的学习与理解,需要了解的核心概念有:监督学习、无监督学习、模型、策略、算法等。

监督学习

监督学习,指的是学习的数据与后续测试的数据,都有答案(标签)。

比如说,我们自己的相片集,里面每个人我们都知道是谁并可以标识出来,给机器学习时,我们将每个单人照和对应的名字提交给机器学习模型,机器学习模型完成学习以后,我们继续提交新的相片(单人或多人的),模型直接输出照片中每个人的名字。而对这类有标准答案的数据集的学习,就是有监督学习。

监督学习主要用来处理分类与回归两类问题。

  • 分类:比如前面对相片的学习,输出的是相片中人物对应的名字标签,这个名字标签可以理解为分类的类别名称。百香果的酸与甜、人的性别男与女等这些离散的类别,都是机器学习中分类算法处理的目标。

  • 回归:回归类算法主要是用来预测连续值的变化。比如预测一个人工作年限与收入的变化;网站每日访问量(PV值)变化;广告投放与新增用户、消费(充值)的关系变化等等,这类数据类型的增减变化,就是回归算法预测的目标。

监督学习常用算法包括:K最近邻算法、朴素贝叶斯算法、线性回归算法、逻辑回归算法、决策树算法、神经网络算法、支持向量机算法、因子分解机算法等

无监督学习

无监督学习,指的是通过对数据的统计、分析、分类等方法处理后,从中发现数据本身的自有规律,从而提取出对应的类别、知识或模型的学习方法。可以简单理解为,数据没有标准答案,甚至我们都不知道里面的答案,只知道有一堆数据,需要运行算法自动对这些数据进行各种分类处理,帮助我们找出规律(分类类别)的过程。

无监督学习主要概念:

  • 聚类:在无监督学习中,将数据集分成由类似的对象组成多个类的过程称为聚类。

比如DNA,每个个体都有相似与独特的地方,想要了解DNA中每个基因的作用,就可以使用无监督学习进行学习与分析,将具有不同类型或特特征的人聚集到一块,然后根据通过对这些人的共同点进行分析,从而得出特定基因的作用。同样,无监督学习可以应用到广告系统、推荐系统、新闻分类等各类系统中,面对海量的数据,从中找出不同的类型特征,帮助我们更快速的找到数据的特征与共性,从而让数据发挥更多更重要的作用。

无监督学习常用算法包括:K均值算法、最大期望算法、感知机算法、主成分分析算法、奇异值分解算法等。

半监督学习

半监督学习是监督学习与监督学习结合的一种方法,指的是将有标签数据和无标签数据一起提供模型学习的方法。

我们都知道人力成本是最贵的,如果需要对数据都打上标签,所花费的人工成本与时间成本是很可观的,况且有些数据我们也不清楚它们的规律无法添加标签。而半监督学习,可以将已知的有价值的数据先打上标签,跟无标签数据一起给机器进行学习,机器训练并输出结果,我们可对结果打上新的签标后继续提供给机器训练,从而提升预测结果,当然,如果标签标记不准确,也可能会误导训练模型,得出错误的结论。

无监督学习常用算法包括:协同训练算法(Co-Training)和转导支持向量机算法。

机器学习的三要素:模型、策略和算法

机器学习由模型、策略和算法组成。模型用于作出决策,策略用于评价决策,算法用于修正模型。

模型

简单的理解,指的是模子。

百度百科有两个解释我觉得很贴切:

  • 人们依据研究的特定目的,在一定的假设条件下,再现原型(antetype)客体的结构、功能、属性、关系、过程等本质特征的物质形式或思维形式。

  • 对研究的实体进行必要的简化,并用适当的变现形式或规则把它的主要特征描述出来。所得到的系统模仿品称之为模型。

机器学习中的模型,就是为了预测和分析指定的目标,运行已知的策略和算法,所构建的学习统计模型,通过对数据的学习(统计分析和找出其概率分布规律),最终能对目标进行准确预测。

策略

在百度百科中解释为:

策略,指计策;谋略。一般是指可以实现目标的方案集合;根据形势发展而制定的行动方针和斗争方法.

在机器学习中的策略,指的是实现模型方案集合的最优解。要实现同一个目标(模型),有无数种解决方案,而不同的解决方案各有优劣,在监督学习中引入了损失函数,来找出最优化的模型。

算法

在百度百科中解释为:

算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。

算法简单理解,就是计算方法。在机器学习中,用什么样的计算方法,来帮助机器学习模型和策略,快速、高效、准确的计算出结果。在海量的数据与几何级复杂度的数据中,找出数据分布规律和概率,也是相当困难的,而机器学习算法模型中,提供了梯度下降、降维等算法,来求解出最优解,减少过拟合等各种问题。

算法项目的两个脉络


 1578483814639881.png

(图片来自:https://www.imooc.com/read/50/article/974

问题线:业务问题 -> 机制问题 -> 模型问题

评估线:长期跟踪 <- AB实验 <- 模型评估

算法工程师对模型直接负责,对整个项目要有大局观

 


项目 -> 解决业务问题

例如:业务运营部门希望提升业务收入

业务问题 -> 分析拆解,找出关键指标 -> 得到解决方案(公式)-> 确定可控与不可控因素

指标1:提升新增用户量 = 渠道数 * 广告曝光量 * 用户转化比率 = 加大渠道投入    可控因素:渠道数量与广告曝光量(广告费)    不可控因素:用户转化比率    待分析问题:各渠道用户转化率差别?渠道推广投入的产出比盈亏状况?广告投放精准度与效果如何确认?相同渠道不同时间段投放广告,用户转化率变化?不同渠道同一时间段投放广告用户转化率有什么不同?视频广告与图文广告对用户转化率的影响?不同版本以及这些版本异常报告数量对用户转化率的影响?不同品牌用户转化率?不同机型用户转化率?是否存在刷量问题(新增用户的IP、机型、活跃变化、留存变化、在线时长、用户行为漏斗分析、充值转化比率……等问题的监控)?……指标2:提升用户留存
指标3:提升用户充值比例
……

不可控因素 -> 如何变为可控?-> 建立机器学习预测分析模型 -> 什么算法模型适合当前问题?怎么设计和得出算法公式?为什么这个模型能对数据进行预测?

 

建立机器学习模型 -> 模型预测准确性?-> 算法层是否正确,对模型进行综合评估,确定预测模型正确率指标 -> 开展AB实验进行验证 -> 通过同比、环比等多项指标,评估推荐结果正确性 -> 全量推广,长期跟踪效果


 

参考资料

https://github.com/apachecn/AiLearning/blob/master/docs/ml/1.机器学习基础.md

http://ai-start.com/ml2014/html/week1.html

https://feisky.xyz/machine-learning/basic.html

https://github.com/apachecn/scipycon-2018-sklearn-tut-zh/blob/master/1.md

https://github.com/apachecn/ml-for-humans-zh/blob/master/3.md

https://www.imooc.com/read/50/article/974


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。