一、机器学习概念 1、机器学习概念机器学习是让计算机从数据中自动学习并发现规律从而生成一个计算模型。并能够利用该模型对未知数据进行精准预测或分类的方法。2、机器学习分类导读假如我们将某张具有一定特征例如具有4条腿的一只动物的图片输入给计算机并且将图片打一个答案“狗”计算机就识别该图片中的动物为狗。在这个过程中这张图片是具有一定特征的训练数据我们记作特征X给图片打一个标签“狗”是我们人为告诉计算机的正确答案我们记作标签Y或者答案Y。我们按照训练数据是否有标签可以将机器学习分为有监督学习训练数据有标签无监督学习训练数据无标签半监督学习训练数据部分少量标签强化学习是通过与环境不断交互根据获得的奖励或惩罚信号来学习如何做出最优决策2.1、有监督学习定义计算机通过训练大量“既有特征X又有答案/标签Y”数据从而得出一个XY之间的映射关系并且通过该映射关系能够预测新的未知数据的答案。就像老师给你一本《例题标准答案》的练习册。你通过对照答案学会解题思路。考试时给你一道新题你要算出正确答案。举例1鸢尾花分类鸢尾花Iris数据集共150条每条都有特征该花朵共有4个尺寸和一个标签鸢尾花的3个品种我们将这个包含花特征和花品种的150条数据集输入给计算机计算机通过有监督学习学会了如何根据花的特征来判断花的品种。4个尺寸分别为[花萼长度、花萼宽度、花瓣长度、花瓣宽度]3个品种分别为山鸢尾、杂色鸢尾、维吉尼亚鸢尾举例2根据广告费用的投入预测下一个月销售额。假设我们统计了公司过去 12 个月的销售记录这就是训练集月份特征 X广告投入万元标签 Y当月销售额万元1月2.0→ 522月3.5→ 683月1.8→ 484月5.0→ 905月4.2→ 786月6.0→ 1057月3.0→ 628月7.5→ 1289月4.8→ 8510月2.5→ 5511月6.8→ 11512月5.5→ 95我们看有监督学习是如何工作的第一步假设数学模型假设广告费和销售额之间符合一条直线关系当然即使完全不投广告费用也有一个基础销售额。销售额 w × 广告费 b 相当于初中学的这个函数y kx bw权重每多投入1万元广告费能带来多少销售额增长。b偏置即使完全不投广告也有一个基础销售额。第二步训练数据寻找最佳参数w、b机器把这 12 个点画在坐标平面上然后不断尝试不同的w、b组合目标是让预测销售额和实际销售额的误差总和最小。经过多次计算机器找到了最优解比如w 12.5b 28也就是说学到的规律是销售额 ≈ 12.5 × 广告投入 28即每多投1万元广告销售额平均增长12.5万元即使不投广告基础销售额也有28万元。第三步预测下个月次年1月公司计划投入4.0 万元广告费。机器代入公式预测销售额 12.5 × 4.0 28 50 28 78万元模型预测结果下个月销售额约为78 万元。上面两个例子例子1是根据数据集的特征进行判别归类结果是离散值我们称之为分类例子2是根据数据集的特征进行有效预测结果是连续值我们称之为回归。分类Classification和回归Regression是有监督学习的两大核心任务它们同样“从带标签数据中学习规律”但输出的结果类型完全不同一个是离散值一个是连续值。下面我们对比一下二者的区别对比维度分类回归输出类型离散的类别标签有限个选项连续的数值在一定范围内任意取值核心问题“这是什么”或“属于哪一类”“是多少”或“有多大”数学本质在特征空间中寻找分界线决策边界将不同类别的点分开在特征空间中寻找一条拟合线或曲线让它尽可能穿过所有数据点评估指标准确率、精确率、召回率、F1分数、混淆矩阵均方误差、均方根误差、平均绝对误差、R²分数输出值个数有限个如 2个、3个、10个无限个连续区间内任意值经典算法支持向量机(SVM)、决策树、随机森林、K近邻(KNN)线性回归、岭回归、决策树回归、随机森林回归、XGBoost2.2、无监督学习如果说有监督学习是“拿着标准答案的例题集”来学习那无监督学习就是“给你一堆杂乱无章的数据但没有标准答案让你自己去发现其中的隐藏结构或规律”。定义无监督学习就是让计算机在没有“标准答案”的前提下自行从数据中发现隐藏的模式、结构或分布规律。举例1电商客户自动分群。某电商平台有 10 万注册用户运营团队想搞精准营销但完全不知道这群人该怎么分类也没人给用户贴过标签。无监督学习只能根据用户数据集的“月消费金额、月浏览时长、月下单次数”特征让算法把这些用户自动分成若干组簇让组内用户行为相似组间差异明显。算法自动把用户分成3个群体簇 0高消费短浏览高频下单 → 算法给这类打了标签0→运营人员打标签“土豪剁手党”。簇 1低消费超长浏览极少下单 → 算法给这类打了标签1→运营打标签“纠结观望党”。簇 2中等消费周末才浏览偶尔下单 → 算法给这类打了标签2→运营打标签“理性上班族”。算法输出的是“群组编号0/1/2”但“土豪/纠结党”这个名字是运营人员根据数据特征自己起的。对比一下“有监督学习”维度有监督学习无监督学习数据有特征X也有标签Y只有特征X完全没有标签Y类比老师给了一本《例题答案》让你背老师扔给你一堆贝壳让你自己按颜色或大小分类目标预测新数据的标签猜答案发现数据内部的潜藏规律找结构反馈有明确的对错信号损失函数无明确反馈全靠算法自己挖掘常见任务分类、回归聚类、降维、关联规则挖掘2.3、半监督学习如果说有监督学习是“照着标准答案做题”无监督学习是“自己瞎琢磨找规律”那么半监督学习就是“老师只批改了一半的作业剩下的一半你自己凭感觉先填再对照着学”。它是介于前两者之间的一种学习方法专门解决现实世界中“标注数据稀缺未标注数据泛滥”的尴尬处境。定义同时使用少量有标签数据和大量无标签数据进行训练的机器学习方法举例在现实中给数据打标签比如让专家标注CT影像极其昂贵、耗时但收集不带标签的原始数据比如随便拍几千张X光片却非常便宜、海量。既然标注数据那么贵那我就用少量的“精兵” 大量的“民兵”来打仗。应用场景应用领域具体场景为什么非它不可医疗影像诊断只有几十张由主任医师标注好的癌症CT片但有上万张普通CT片。专家标注成本极高半监督可以让AI用少量标签学到看懂片子。网络流量分类只有少数数据包被人工标记为“正常”或“攻击流量”。网络数据瞬息万变人工标记跟不上需要用半监督适应新变种。语音识别只有几百小时的语音有精准文字转写但有几十万小时的原始语音。语音转写极其耗时半监督能利用大量未标注语音提升泛化能力。网页分类/新闻分类只有少数网页标了“科技/体育/娱乐”但互联网上有亿万个网页。靠人力标记全网网页不现实半监督可以借助少量标签自动爬取归类。为了让你彻底分清我们再回场景学习方法拥有的资料类比场景难度与成本有监督学习教材全部课后习题的详细答案请了全职家教每题都手把手教你效果最好但最烧钱。标注成本极高无监督学习教材一堆没答案的空白卷子全靠自己啃自己猜出题规律省钱但容易跑偏。完全没有反馈半监督学习教材第一章有答案后面九章是空白先把第一章弄透再用规律去推测后面九章的答案对完感觉靠谱的题拿来反复刷。性价比之王。极低成本达到较高精度2.4、强化学习强化学习是通过与环境Environment不断交互根据获得的奖励或惩罚信号来学习如何做出最优决策。举例训练小狗时它做出正确动作就给零食奖励做错就不给或纠正惩罚久而久之小狗就学会了哪些行为能获得更多零食。强化学习让计算机程序像这样“试错学习”。现在我们来对比一下上述4种机器学习的方法机器学习方法数据形式学习信号目标典型任务/场景有监督学习数据带标准答案真实标签学习输入与输出的映射关系分类、回归房价预测无监督学习数据无标准答案数据内在结构发现数据结构/分布聚类、降维、生成半监督学习少量数据有答案大量无答案部分数据的真实标签利用少量标签提升泛化图像分类、文本分类强化学习环境中试错产生的数据序列奖励信号最大化长期累积奖励博弈、决策、控制