Dive2DL-深度学习系列笔记ver1

167 阅读4分钟

Dive2DL

0、前言

第一本使用集成工作流程出版的书

  1. 公式、定理和引用最好用LaTeX来管理和布局
  2. 代码最好用Python描述
  3. 网页原生是HTML和JavaScript
  4. GitHub来共享源代码并允许编辑
  5. Jupyter记事本来混合代码、公式和文本
  6. Sphinx作为渲染引擎来生成多个输出

​ 一些前置封装好的调用库d2l,我目前觉得碰到之后再去使用会比直接安装或者配置来得更好。 ⭕

1、引言

1、机器学习是一种强大的可以从经验中学习的技术。

​ 普通的程序猿处理业务时利用到的“业务逻辑”是基本固定且难以持续动态更新的,反观ML则能够把握观测数据或与环境交互来积累更多的经验。

image-20230404231013495.png ⏏上述过程中从语音样本采集,到各个声波振幅测量值的数据样本,转化成关键词语,进一步判断Y/N,是相当的复杂和无头绪的。

2、参数的概念:可调节程序的行为

​ 通过操作参数而生成的所有不同程序的集合称作**“模型族”**

​ 使用数据集来选择参数的元程序被称为学习算法

3、基本训练过程

image-20230404232809441.png

4、机器学习的核心组件
  • 用来学习的数据
  • 如何转换数据的模型
  • 目标函数来量化模型的有效性
  • 调整参数以优化目标函数的算法

​ 🚩 数据

​ 大多数时候,样本是遵循独立同分布的。每个样本由一组特征属性来组成。

​ 有时候,我会考虑到如果公测用户大量“喂”给chatGPT错误的数据是否会被Administrator接受❓如果接受那必然会有污染经验数据库的一个risk,相反如果不接受那么是不是意味着那些“公正的数据”或者所谓的“正确的经验”会掌握在Administrator手中❓

​ (猜测是,OpenAI应该不会允许“Garbage in, garbage out”情况崩掉)

在一些敏感应用中,如预测性监管、简历筛选和用于贷款的风险模型,我们必须特别警惕垃圾数据带来的后果。 一种常见的问题来自不均衡的数据集,比如在一个有关医疗的训练数据集中,某些人群没有样本表示。 想象一下,假设我们想要训练一个皮肤癌识别模型,但它(在训练数据集中)从未“见过”黑色皮肤的人群,这个模型就会顿时束手无策。

再比如,如果用“过去的招聘决策数据”来训练一个筛选简历的模型,那么机器学习模型可能会无意中捕捉到历史残留的不公正,并将其自动化。 然而,这一切都可能在不知情的情况下发生。 因此,当数据不具有充分代表性,甚至包含了一些社会偏见时,模型就很有可能有偏见。

——摘自D2DL

​ 🚩 使得损失函数变小的算法

​ 大多流行的是梯度下降,通俗来讲就是尽可能往减少损失方向上优化参数

5、监督学习

image-20230405124053020.png

​ 1️⃣回归(regression)

​ 2️⃣分类(classfication)

​ 分类模型给每个可能的类分配一个概率

​ 与回归问题不同之处在于,分类问题的常见损失函数被称为 交叉熵 (cross-entropy)

​ 3️⃣标记

​ 4️⃣搜索

​ 5️⃣序列学习

6、无监督学习

​ 1️⃣聚类问题(clustering)

​ 2️⃣主成分分析问题

​ 3️⃣因果关系和概率图问题

​ 4️⃣生成对抗性网络

为我们提供一种合成数据的方法,甚至像图像和音频这样复杂的非结构化数据。潜在的统计机制是检查真实和虚假数据是否相同的测试,它是无监督学习的另一个重要而令人兴奋的领域。

——D2DL

7、强化学习

image-20230405125254001.png

小结
  1. 比如一下拟合优化的问题代码可以采用“学习“的方式来自动寻找最优的参数设置确定函数
  2. 在数学建模比赛中很多具体样本,恰好是机器学习的对象。
  3. 数据是算法的动力,我觉得还是挺类似于煤和蒸汽机的关系的。
  4. 端对端的训练方法实际上是专业交叉的一种体现,医学上的微型技术或者机器人的控制设计方面或许会用到