机器学习的专业术语非常多, 不需要一开始理解所有的专业术语, 这些术语会随着对机器学习的深入, 会慢慢理解, 水到渠成.
不过在学习的过程中, 有一些概念必须要了解, 有助于后续的学习与理解, 需要了解的核心概念有: 监督学习, 无监督学习, 模型, 策略, 算法等.
监督学习
监督学习, 指的是学习的数据与后续测试的数据, 都有答案(标签).
比如说, 我们自己的相片集, 里面每个人我们都知道是谁并可以标识出来, 给机器学习时, 我们将每个单人照和对应的名字提交给机器学习模型, 机器学习模型完成学习以后, 我们继续提交新的相片(单人或多人的), 模型直接输出照片中每个人的名字. 而对这类有标准答案的数据集的学习, 就是有监督学习.
监督学习主要用来处理分类与回归两类问题.
分类: 比如前面对相片的学习, 输出的是相片中人物对应的名字标签, 这个名字标签可以理解为分类的类别名称. 百香果的酸与甜, 人的性别男与女等这些离散的类别, 都是机器学习中分类算法处理的目标.
回归: 回归类算法主要是用来预测连续值的变化. 比如预测一个人工作年限与收入的变化; 网站每日访问量 (PV 值) 变化; 广告投放与新增用户, 消费 (充值) 的关系变化等等, 这类数据类型的增减变化, 就是回归算法预测的目标.
监督学习常用算法包括: K 最近邻算法, 朴素贝叶斯算法, 线性回归算法, 逻辑回归算法, 决策树算法, 神经网络算法, 支持向量机算法, 因子分解机算法等
无监督学习
无监督学习, 指的是通过对数据的统计, 分析, 分类等方法处理后, 从中发现数据本身的自有规律, 从而提取出对应的类别, 知识或模型的学习方法. 可以简单理解为, 数据没有标准答案, 甚至我们都不知道里面的答案, 只知道有一堆数据, 需要运行算法自动对这些数据进行各种分类处理, 帮助我们找出规律 (分类类别) 的过程.
无监督学习主要概念:
聚类: 在无监督学习中, 将数据集分成由类似的对象组成多个类的过程称为聚类.
比如 DNA, 每个个体都有相似与独特的地方, 想要了解 DNA 中每个基因的作用, 就可以使用无监督学习进行学习与分析, 将具有不同类型或特特征的人聚集到一块, 然后根据通过对这些人的共同点进行分析, 从而得出特定基因的作用. 同样, 无监督学习可以应用到广告系统, 推荐系统, 新闻分类等各类系统中, 面对海量的数据, 从中找出不同的类型特征, 帮助我们更快速的找到数据的特征与共性, 从而让数据发挥更多更重要的作用.
无监督学习常用算法包括: K 均值算法, 最大期望算法, 感知机算法, 主成分分析算法, 奇异值分解算法等.
半监督学习
半监督学习是监督学习与监督学习结合的一种方法, 指的是将有标签数据和无标签数据一起提供模型学习的方法.
我们都知道人力成本是最贵的, 如果需要对数据都打上标签, 所花费的人工成本与时间成本是很可观的, 况且有些数据我们也不清楚它们的规律无法添加标签. 而半监督学习, 可以将已知的有价值的数据先打上标签, 跟无标签数据一起给机器进行学习, 机器训练并输出结果, 我们可对结果打上新的签标后继续提供给机器训练, 从而提升预测结果, 当然, 如果标签标记不准确, 也可能会误导训练模型, 得出错误的结论.
无监督学习常用算法包括: 协同训练算法 (Co-Training) 和转导支持向量机算法.
机器学习的三要素: 模型, 策略和算法
机器学习由模型, 策略和算法组成. 模型用于作出决策, 策略用于评价决策, 算法用于修正模型.
模型
简单的理解, 指的是模子.
百度百科有两个解释我觉得很贴切:
人们依据研究的特定目的, 在一定的假设条件下, 再现原型 (antetype) 客体的结构, 功能, 属性, 关系, 过程等本质特征的物质形式或思维形式.
对研究的实体进行必要的简化, 并用适当的变现形式或规则把它的主要特征描述出来. 所得到的系统模仿品称之为模型.
机器学习中的模型, 就是为了预测和分析指定的目标, 运行已知的策略和算法, 所构建的学习统计模型, 通过对数据的学习(统计分析和找出其概率分布规律), 最终能对目标进行准确预测.
策略
在百度百科中解释为:
策略, 指计策; 谋略. 一般是指可以实现目标的方案集合; 根据形势发展而制定的行动方针和斗争方法.
在机器学习中的策略, 指的是实现模型方案集合的最优解. 要实现同一个目标(模型), 有无数种解决方案, 而不同的解决方案各有优劣, 在监督学习中引入了损失函数, 来找出最优化的模型.
算法
在百度百科中解释为:
算法 (Algorithm) 是指解题方案的准确而完整的描述, 是一系列解决问题的清晰指令, 算法代表着用系统的方法描述解决问题的策略机制.
算法简单理解, 就是计算方法. 在机器学习中, 用什么样的计算方法, 来帮助机器学习模型和策略, 快速, 高效, 准确的计算出结果. 在海量的数据与几何级复杂度的数据中, 找出数据分布规律和概率, 也是相当困难的, 而机器学习算法模型中, 提供了梯度下降, 降维等算法, 来求解出最优解, 减少过拟合等各种问题.
算法项目的两个脉络
(图片来自: 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
来源: https://www.cnblogs.com/EmptyFS/p/12168425.html