第一章 绪论

1.1引入机器学习

引用周老师西瓜书对机器学习的解释:

若计算机科学是研究关于算法的学问,则机器学习可以说是关于学习算法的学问。

1.2.基本术语

机器学习是一门专业性很强的技术,它大量地应用了数学、统计学上的知识。周老师用挑选西瓜的例子,说明了机器学习中的数据集、样本、属性/特征、预测、泛化等基本术语。

数据集:数据集可划分为“训练集”和“测试集”,它表示一个承载数据的集合。

数据集的构成是“一行一样本,一列一特征”。

学习/训练:从数据中学得模型的过程。

分类:对离散值进行预测的学习任务

回归:对连续值进行预测的学习任务

测试学得模型对其进行预测的过程。

聚类:将训练集中的样本分成若干组

泛化能力:学得模型适用于新样本的能力

1.3假设空间

归纳和演绎是科学推理的两大基本手段。从样本中学习是一个归纳的过程,引出归纳学习。

概念学习属于狭义的归纳学习,了解它有助于了解机器学习的一些基础思想。

此处根蒂*3:需考虑无论取什么值都合适的情况,用通配符(*)表示,根蒂有“蜷缩”、“硬挺”2种取值,同理再加通配符(*)表示,根蒂属性共3种取值

还有一种假设组成——可能"好瓜”这个概念就不成立,我们用∅表示这种假设,所以最后加1

现实中假设空间大但是学习过程样本训练集有限,会有多种假设与训练集一致,即存在假设集合,称为版本空间。

1.4归纳偏好

机器学习在学习过程中对某种类型的假设偏好

A泛化能力更强

B与训练集外的样本更一致,泛化能力更强。

但是,学习算法聪明与否,期望值是相同的。引出NFL定理。

NFL定理:前提是所有问题出现的机会相同或者是所有问题同等重要。但是现实中不能脱离具体问题去谈学习算法优劣问题。归纳偏好要与问题相匹配。

南瓜书的第1章,在本章中作者给出了NFL定理推导的更详细的步骤和说明。

1.5机器学习发展历程和应用现状

20世纪50年代到70年代的推理期和知识期,20世纪80年代的符号主义学习,20世纪90年代中期之前的基于神经网络的连接主义学习,20世纪90年代中期的统计学习,21世纪初连接主义学习的重新崛起,这个发展过程是科学家们对人工智能实现的不断探索和尝试。21世纪以来,深度学习浪潮来袭,显著降低机器学习的门槛。

目前在计算机视觉、自然语言处理和搜索等计算机应用技术领域已成为技术进步的重要源泉。

第二章 模型评估与选择

2.1 经验误差与过拟合

错误率:分类错误的样本数找样本总数的比例。

训练/经验误差:学习器在训练集上的误差。

泛化误差:学习器在新样本上的误差。

欠拟合:对训练样本的一般性质尚未学习好,容易克服,如在决策树学习中扩展分支,在神经网络学习中增加训练轮数等。

过拟合:学习器将训练样本自身的一些特点当作了所有潜在样本都会具有的一般性质,这样导致了泛化性能下降。

2.2 评估方法

将数据集划分为训练集和测试集的方法

2.2.1 留出法

直接将数据集D划分为两个互斥的集合,其中一个集合作为训练集S,另一个作为测试集T

注意事项:

1.划分尽可能保持数据分布的一致性,在分类任务重至少保持样本的类别比例相似。

2.单次使用留出法得到的估计结果往往不够稳定可靠,一般要采用若干次随机划分、重复进行实验评估后取平均值作为留出法的评估结果。

3.常见做法是将大约2/3~4/5的样本用于训练,剩余样本用于测试。

2.2.2 交叉验证法

依据分层采样的方法先将数据集划分为k个大小相似的互斥子集,每个子集尽可能保持数据分布的一致性,然后每次用(k-1)个子集的并集作为训练集,余下的那个子集作为测试机,这样就可以获得k组训练/测试集,从而可进行k次训练和测试,最终返回的是k个测试结果的平均值,k常取10,也称10折交叉验证。

注意事项::该方法也要进行若干次随机划分。若进行10级划分,进行10折交叉验证,则会进行10*10次训练,k一般取10,也有5,20。

留一法:每个子集中仅含一个样本,这使得评估结果比较精确,而当数据集比较大时,其计算开销《难以忍受》。

2.2.3 自助法

若给定包含m个样本的数据集D,我们对它进行采样产生数据集D':每次随机从D中挑选一个样本,将其拷贝放入D',然后再将该样本放回初始数据集D中,使得该样本在下次采样时仍有可能被采到;这个过程重复执行m次后,我们就可以得到包含M个样本的数据集D',做一个估计。样本在m次采样中始终不被采到的概率是(1−1m)m(1−1m)m,取极限得到:

limm→+∞(1−1m)m=1e≈0.368limm→+∞(1−1m)m=1e≈0.368

即通过自主采样,初始数据集D中约有36.8%的样本未出现在采样数据集D'中于是我们可将D'用作训练集,D\D'用作测试集;这样,实际评估的模型与期望评估的模型都使用m个训练样本,而我们仍有约1313的、没在训练集中出现的样本用于测试,这样的测试结果,亦称“包外估计”。

注意事项:自助法在数据集较小,难以划分有限训练/测试集时很有用,但自助法产生的数据改变了初始数据集的分布,会引入估计偏差。初始数据量充足会倾向于前两种。

2.2.4 调参与最终模型

调参好坏对最终模型性能有关键性影响。

2.3 性能度量

2.3.1 错误率与精度

2.3.2 查准率、查全率与F1

查重率与查全率也在一定程度上遵循测不准原理

P-R曲线中的内容:覆盖更大范围的学习器的性能更优

学习器A优于C,曲线C被A完全包住,AB发生交叉难以判断优劣,因此为了更好的明确两者的优劣,设计了类似平衡点(BEP)这样的的综合考察准确率查全率性能度量。

BEP:查重率=查全率时的取值,值大者性能更优;如图可知C的BEP是0.64,基于比较A优于B。

Task01:概览西瓜书+南瓜书第1、2章(2天)相关推荐

  1. 机器学习-吃瓜教程(西瓜书+南瓜书)-神经网络

    datawhale-吃瓜教程-神经网络 Task01:概览西瓜书+南瓜书第1.2章 Task02:详读西瓜书+南瓜书第3章 Task03:详读西瓜书+南瓜书第4章 Task04:详读西瓜书+南瓜书第5 ...

  2. datawhale-吃瓜教程(西瓜书+南瓜书)-支持向量机

    datawhale-吃瓜教程-支持向量机 Task01:概览西瓜书+南瓜书第1.2章 Task02:详读西瓜书+南瓜书线性模型 Task03:详读西瓜书+南瓜书决策树 Task04:详读西瓜书+南瓜书 ...

  3. 【组队学习】【35期】吃瓜教程——西瓜书+南瓜书

    吃瓜教程--西瓜书+南瓜书 航路开辟者:谢文睿.秦州 领航员:凌亮 航海士:谢文睿.秦州 基本信息 开源内容:https://github.com/datawhalechina/pumpkin-boo ...

  4. 【组队学习】【33期】吃瓜教程——西瓜书+南瓜书

    吃瓜教程--西瓜书+南瓜书 航路开辟者:谢文睿.秦州 领航员:潘磊 航海士:谢文睿.秦州 基本信息 开源内容:https://github.com/datawhalechina/pumpkin-boo ...

  5. 【组队学习】【32期】吃瓜教程——西瓜书+南瓜书

    吃瓜教程--西瓜书+南瓜书 航路开辟者:谢文睿.秦州 领航员:陈伟峰 航海士:谢文睿.秦州 基本信息 开源内容:https://github.com/datawhalechina/pumpkin-bo ...

  6. 秦州:西瓜书 + 南瓜书 吃瓜系列 14. 降维与度量学习(下)

    吃瓜教程--西瓜书+南瓜书 Datawhale南瓜书是经典机器学习教材<机器学习>(西瓜书)的公式推导解析指南,旨在让在学习西瓜书的过程中,再也没有难推的公式,学好机器学习. 内容属性:机 ...

  7. 秦州:西瓜书 + 南瓜书 吃瓜系列 13. 降维与度量学习(上)

    吃瓜教程--西瓜书+南瓜书 Datawhale南瓜书是经典机器学习教材<机器学习>(西瓜书)的公式推导解析指南,旨在让在学习西瓜书的过程中,再也没有难推的公式,学好机器学习. 内容属性:机 ...

  8. 【组队学习】【31期】 吃瓜教程——西瓜书+南瓜书

    吃瓜教程--西瓜书+南瓜书 航路开辟者:谢文睿.秦州 领航员:张海腾 航海士:谢文睿.秦州 基本信息 开源内容:https://github.com/datawhalechina/pumpkin-bo ...

  9. 谢文睿:西瓜书 + 南瓜书 吃瓜系列 11. 贝叶斯分类器

    吃瓜教程--西瓜书+南瓜书 Datawhale南瓜书是经典机器学习教材<机器学习>(西瓜书)的公式推导解析指南,旨在让在学习西瓜书的过程中,再也没有难推的公式,学好机器学习. 内容属性:机 ...

  10. 【组队学习】【30期】吃瓜教程——西瓜书+南瓜书

    吃瓜教程--西瓜书+南瓜书 航路开辟者:谢文睿.秦州 领航员:邱振波 航海士:谢文睿.秦州 基本信息 开源内容:https://github.com/datawhalechina/pumpkin-bo ...

最新文章

  1. java I/O思维导图
  2. k8s 多租户_k8s使用rbac实现多租户
  3. spyder matlab,将pycharm配置为matlab或者spyder的用法说明
  4. 5.Redis 发布订阅
  5. 时区日期处理及定时 (NSDate,NSCalendar,NSTimer,NSTimeZone)
  6. C++并发编程 (1) 基本知识
  7. Go实战--二维码生成server
  8. 《移动网页设计与开发 HTML5+CSS3+JavaScript》—— 1.4  真正的HTML5
  9. 编写一个函数itob(),将整数n转换为以b进制的数,保存到s中
  10. linux下修改mysql数据存储_Linux下修改MySQL数据存放目录方法及可能遇到的问题--转...
  11. get请求500_050 Servlet的请求req与响应resp
  12. tcs标准编写软件_tcs2010(中国标准编写模板)免费版
  13. 中值滤波器处理椒盐噪声
  14. 手机屏幕按键测试软件,涨见识了——手机居然能作为维修检测工具来用!
  15. win10扬声器红叉_刚装了win10 小扬声器红叉没声音
  16. 如何关闭coreldraw x4检测弹出非法软件您的产品已被禁用怎么办?
  17. Flash的破解与加密
  18. 甲壳虫乐队最新纪录片:《甲壳虫乐队:回归》
  19. linux查询电源信息,Linux查看电源状态指令
  20. FLET简介:用Python构建Flutter应用

热门文章

  1. 飞机大战课程设计报告
  2. 05【Verilog实战】AMBA 3 APB接口设计(附源码RTL/TB)
  3. react+umi 使用本地图片做菜单icon
  4. 蓝桥杯 调手表【BFS】
  5. Android 阿拉伯语适配
  6. [附源码]Python计算机毕业设计SSM基于JAVA语言的国货美妆店管理系统(程序+LW)
  7. 根据周次获取周次的日期范围
  8. 老实人小吃网_3款经典的电脑游戏又回来了(加上小吃!)
  9. javweb音乐网站_jsp在线音乐试听网站html5
  10. HTML5定稿一周年,谈谈我与HTML5