机器学习|李沐-斯坦福《实用机器学习》-01章

1.课程介绍 视频链接
首先介绍了机器学习作为技术本身,
它的大致构成以及所面临的一些挑战.
然后讲述学习机器学习,你会变成什么样的角色.
最后讲述了本课程中会涉及到哪些主题.
举例:房价预测问题
机器学习|李沐-斯坦福《实用机器学习》-01章
文章图片

工业界中应用机器学习的基本流程
机器学习的应用是一个循环过程.
他从问题表述开始到收集数据建立模型并将模型上线.
上线之后要对模型不停的监测并重复更新模型.
机器学习|李沐-斯坦福《实用机器学习》-01章
文章图片

问题—收集处理数据—训练调参—部署到线上/观测模型调整
挑战:

  1. Problem formulation
    首先是将实际问题换一种描述方式,
    表述成机器学习可以解答的数学问题. (Problem formulation)
    比如房价预测就是一个回归(regression)问题.
  2. Data
    缺少高质量的数据/侵犯隐私
  3. Train Models
    模型越来越复杂
  4. Deploy models
    模型完成之后就开始部署上线( Deploy models)
    部署成本太高,要求太高(速度)
  5. Monitor
    模型并不能一劳永逸, 你需要不停的监控 (Monitor)
    比如查看模型是否符合实际情况?
    是否需要增加数据?
    或者数据是否已经发生了重大的变化,需要调整模型?
    在监测过程中, 从收集数据开始的循环可能要重复多次
    机器学习|李沐-斯坦福《实用机器学习》-01章
    文章图片

    工业界中机器学习与人
    领域专家: 知晓产品的需求,知道模型的价值, 以及在哪用最好.
    数据科学家: 可以理解为全栈程序员, 需要负责从处理数据到模型上线的全部过程
    机器学习专家: 专注于模型的改进
    软件开发工程师(SDE): 就是码农, 他们需要在软件代码运行维护方面出力.
    机器学习|李沐-斯坦福《实用机器学习》-01章
    文章图片

    个人成长
    机器学习|李沐-斯坦福《实用机器学习》-01章
    文章图片

    领域专家或者软件开发工程师可以慢慢的发展,成为数据科学家.
    数据科学家也可以进一步提升自己的技能,变成机器学习这一领域的专家
    这门课需要的基础是一些基本的统计知识,一些基础的编程
    数据科学家把时间花在哪儿?时间的大头花在数据处理上
课程主题
机器学习|李沐-斯坦福《实用机器学习》-01章
文章图片

1.数据:需要学会如何处理实际的数据
2.训练
3.部署
4.监测
2.数据的获取 这一讲主要讲在没有现成的数据情况下,
如何去找到数据集,并对各种现有的数据集有个大致的概念
以及实在找不到数据集的时候, 该用什么方法来生成数据.
什么时候需要考虑数据的获取?
机器学习|李沐-斯坦福《实用机器学习》-01章
文章图片

常见的数据集
-维基百科中关于数据集的列表 https://en.wikipedia.org/wiki/List_of_datasets_for_machine-learning_research 其中收录了一系列的数据集
  • MNIST: 手写数字数据集 http://yann.lecun.com/exdb/mnist/
  • imageNet : 大规模图片数据集 https://www.image-net.org/
  • AudioSet: 油管的声音片段数据 https://research.google.com/audioset/
  • Kinetic : 油管人类动作视频片段 https://deepmind.com/research/open-source/kinetics
  • KITTI : 无人驾驶数据集 http://www.cvlibs.net/datasets/kitti/
  • Amazon Review: 亚马逊用户评价数据 https://s3.amazonaws.com/amazon-reviews-pds/readme.html
  • SQuAD: 维基百科问答 https://rajpurkar.github.io/SQuAD-explorer/
  • LibriSpeech : 有声书数据集 https://www.tensorflow.org/datasets/catalog/librispeech
去哪找数据集
  • Paperwithcodes 论文相关数据集 https://paperswithcode.com/
    • 提供了学术论文和相关的数据,并且给出了这个论文在数据集上面的运行表现
  • Kaggle https://www.kaggle.com/
    • 除了竞赛数据集以外,很多用户也上传数据集, 这些用户上传的数据集质量鱼龙混杂.
  • google 数据集搜索. https://datasetsearch.research.google.com/
    • 这是谷歌的一个搜索入口. 可以搜到其他各种来源的数据.
  • 开源工具自带的数据集
    • 比如tensow flow深度学习软件, 往往会自带一些数据集
  • 各种数据比赛的竞赛数据 往往质量比较高.
    • 保存在云盘上的数据集,比如说 open data on AWS
  • 公司本身的数据仓库或者数据湖(data lakes)
数据集的分类和比较
数据集和数据集是不一样的, 学术界的数据集(academic datasets)和工业界的原始数据(raw data)是两个极端
- 学术界的数据集是精心挑选且人工处理过的, 数据干净, 拿来就用,方便在上面测试算法.
是这些数据集不仅数量少, 往往和真实数据差别很大
- 比如 UCL 数据集 https://archive.ics.uci.edu/ml/datasets.php
  • 工业界的原始数据是最多样, 而且是真实的. 但往往需要消耗非常多的人力才能让这个数据变得"好用"
  • 各种数据比赛的竞赛数据介于工业界和学术界之间.
数据融合
-数据融合就是把多个表合并(join)成一个表.
  • 数据往往被存放在多个位置, 用的时候需要把他们合起来
    • 比如说很多数据, 分属于不同的部门,或者说不同数据更新的频率不同, 分开存储会灵活.
  • 为了方便数据融合, 你的数据要有一个 不重复的主键(key)
    • 主键(key)往往表现为数据表的一列,往往是某种ID
  • 在数据融合的时候,你可能会碰到重复的主键或者数据缺失, 或者不同表上记录相互冲突
生成数据
机器学习|李沐-斯坦福《实用机器学习》-01章
文章图片

找不到数据集的时候, 尝试生成数据, 就是自己制造一批数据
  • GAN 生成图像
  • 数据增强 Data augmentation
    • 比如说以一张图片为蓝本, 生成一系列相似,但又有差别的图片
    • 另一个例子, 使用翻译引擎,来回翻译一段话
小结
  • 找数据很麻烦,而且还要区分这个数据是否合用.
  • 学术界使用的数据和工业界使用的数据差异很大
  • 很多时候,多个数据表要融合成一张表
  • 所以生成数据现在越来越常见, 尤其是数据增强方法
3.网页数据的抓取 以前学过,略
4.数据的标准提升标注是这个小节的关注的重点 机器学习|李沐-斯坦福《实用机器学习》-01章
文章图片

足够的标注 —> 半监督模型
足够的预算 —> 找人给你标识
都没有? —> 弱监督学习
半监督学习
解决的问题:有一小部分数据有标注,有很多很多数据是没有标注(如何利用没有标注的数据)
对于是否有标注的数据做了以下假设:
连续性:样本之间的特征是相似的话,则这两个样本很有可能是有相同的标注的
类的聚类假设:数据是按类来分的;数据内在如有好一点的聚类的结构,一个类里面也可能有相同 的标注
流型(manifold)假设:虽然我们收集的数据维度比较高,但是数据有可能是在低维的流型上分布的(可通过降维得到干净点的数据 )
自学习
先用标注好的数据训练一个模型
用训练好的模型对未标注的数据进行预测(得到伪标注数据)
将伪标注数据与已标好数据合并
在合并的数据的基础上再训练模型
不断进行上述过程
P.S. 伪标注数据可能噪音比较大,故将模型比较确信的伪标注数据保留下来。(怎么样选择置信样本)这里的模型是用来标记数据的,不用考虑该模型的成本,这个模型不会上线
找人来标数据
众包
机器学习|李沐-斯坦福《实用机器学习》-01章
文章图片

挑战:
1.需要设计相对简单的任务,给他们清晰的指示,用起来比较简单(难度与可以做的人数呈反比)
2.成本:按小时来算,任务所花时间 * 任务数 * 标注工的时间成本 = 成本(预算够可以找专业公司)
3.质量变化可能会比较大
降低成本
主动学习:训练模型预测,将最不确信的数据进行标注/用多个模型来预测哪个样本比较难
主动学习与自学习结合
机器学习|李沐-斯坦福《实用机器学习》-01章
文章图片

确信的数据与原数据合并,不确信的发给标注工
数据的质量控制
机器学习|李沐-斯坦福《实用机器学习》-01章
文章图片

最简单的做法是,每个任务发给多个标注工,汇总之后,投票判断(贵)
可以把难确信的数据发给多个人(多做几次)
提前先出些题目,判断标注工靠不靠谱
弱监督学习
机器学习|李沐-斯坦福《实用机器学习》-01章
文章图片

半自动的生成变化:比人标注差,但也可以用来编程(对数据编程,带引导性的,写相应的规则)
【机器学习|李沐-斯坦福《实用机器学习》-01章】总结
机器学习|李沐-斯坦福《实用机器学习》-01章
文章图片

    推荐阅读