Skip to content

Commit 7ae04e4

Browse files
committed
深度学习: update李宏毅
1 parent 79f8fc3 commit 7ae04e4

File tree

4 files changed

+102
-2
lines changed

4 files changed

+102
-2
lines changed

docs/深度学习/李宏毅/2023年&2024年/2.生成式AI.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
# 生成式AI
22

33

4-
机器学习= 机器自动找一个函数
4+
机器学习= 机器自动从资料中找一个函数
5+
6+
1. 深度学习是一种机器学习技术
7+
2. 类神经网络就是一个有大量参数的函数
8+
3. `Transformer` 是类神经网络的一种
59

610
## 根据函数输出来分类
711

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# 不训练模型的情况下强化语言模型的方法
2+
3+
1. 问题的前提描述清楚
4+
2. 提供一系列的数据资料
5+
3. 提供一系列的范例(In-context learning大模型学习范式之语境学习)
6+
4. 将复杂的任务拆解为多个简单的任务
7+
5. 让模型自己检查自己刚刚输出的答案
8+
6. 使用工具(如搜索引擎得到新的数据资料 + 输入内容 => 得到正确的输出,也就是`RAG`技术;如使用python去计算一些复杂的算式;如使用文字生图的AI的API)
9+
7. 模型合作(不同模型做各自适合的工作/让模型进行讨论输出是否可以改进/
10+
11+
-------
12+
13+
> 为什么叫模型思考一下再回答能够提高准确率?
14+
15+
本质就是`将复杂的任务拆解为多个简单的任务`
16+
17+
当叫模型思考一下时,一个步骤会分解为两个步骤:
18+
1. 模型先列举出来大概的思路
19+
2. 模型根据`输入的内容`+`思路`作为新的输入去给出新的输出
20+
<img width="1313" alt="Image" src="https://github.com/user-attachments/assets/cf683756-bc02-4927-8a72-e0cc575a4e32" />
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
# 训练模型=>强化模型
2+
3+
## 找参数的挑战
4+
5+
### 训练失败
6+
7+
使用`一组超参数` + `训练资料` 去训练一个 `函数`,然后通过 `函数` 去验证测试数据是否符合预期来判断这个`函数`是否正确
8+
9+
并不是每次训练都能得到正确的 `函数`,因此需要算力!不断进行训练
10+
11+
> 所谓的调参数,其实就是调 `超参数`,因为最终得到的 `函数` 的参数太多了,根本不知道哪里有问题,因此每次都是换一组`超参数` 去训练
12+
13+
![Image](https://github.com/user-attachments/assets/c2e73344-149a-4874-b76b-62d2e402f3d9)
14+
15+
### 训练成果,但是测试失败(代入新的数据失败)
16+
17+
可能训练出来的 `函数`(模型)只是根据颜色去区分动物...因此这个 `函数` 还是失败的
18+
19+
![Image](https://github.com/user-attachments/assets/0341e57b-6dbe-45df-aff1-f9df167435a3)
20+
21+
### 优化训练结果的方法
22+
23+
- 增加训练资料的多样性
24+
- 调整超参数
25+
- 设置正确的初始参数(本质随机设置)
26+
27+
> 那如何才能获取比较合适的初始参数呢?请看下面的分析
28+
29+
## 训练的主要步骤
30+
31+
1. 阶段1:【自督导式学习】不需要太多人工介入获取训练资料的方式,从网络上获取大量资料进行自我训练
32+
2. 阶段2:【督导式学习】耗费大量人力=>资料标注,使用阶段1得到的参数作为 `原始参数
33+
> 为了避免阶段2得到的参数跟阶段1参数过于不同,可以使用一些小技巧`Adapter`在阶段1参数的基础上增加一些少量参数,使得两个阶段得到的参数相差不大!
34+
35+
![Image](https://github.com/user-attachments/assets/84f8f622-f813-4136-a3c9-3f6bceb7adc1)
36+
37+
> 在阶段2分为两条路线:打造一堆专才(使用特定领域的人工资料训练出解决特定领域的问题,比如翻译)+ 通才(使用多种多样的标注资料,涵盖多种领域)
38+
39+
40+
-------
41+
目前新的大模型的产生方式:
42+
1. 利用开源的力量,拿到阶段1的参数作为阶段2的初始参数,直接省略预训练过程
43+
2. 使用其它大模型(比如ChatGPT得到一些类似人工标注的资料:有输入和输出)的数据进行微调
44+
45+
![Image](https://github.com/user-attachments/assets/46dec504-38c8-461d-b9c2-ed5b13b874ff)
46+
47+
48+
------
49+
50+
3. 阶段3:【增强式学习】通过收集人类的反馈,进行参数的调整(提高正确答案的概率,降低错误答案的概率)
51+
52+
![Image](https://github.com/user-attachments/assets/9b6c8102-c563-4811-a86f-615526eee034)
53+
54+
> 但是人工是非常贵的,专门给你反馈的数量还是很少的,有没有什么方法模仿人工反馈呢?
55+
56+
大模型直接向 `回馈模型` 进行学习(先要训练一个`回馈模型`
57+
58+
> 过度向 `虚拟人类` 学习会导致准确率降低,因此目前在开发新的模式改进 `回馈模型` 进行学习的模式,但是还不成熟,比如用其它模型来评价你的模型产出,或者用同一个模型来评价你的模型产出
59+
60+
![Image](https://github.com/user-attachments/assets/e499fb34-ab04-4c23-a250-f41e208e34ee)
61+
62+
----------
63+
64+
【增强式学习】的难题:可以解决问题但是会伤害其他人的反馈 / 人类都无法判断对错的反馈 => 会导致整个模型走向极端
65+
66+
----------
67+
68+
69+
注:`BERT` 模型预训练后,学习一种语言,可以同时举一反三,学会其它语言

docs/深度学习/李宏毅/READMD.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
# 李宏毅
2+
- 机器学习(2021年&2022年)
3+
- 生成式人工智能导论(2023年&2024年)
4+
5+
6+
17
## 参考资料
28

3-
1. https://www.datawhale.cn/activity/16/14/42?rankingPage=1
9+
1. https://www.datawhale.cn/activity/16/14/42?rankingPage=1
10+
2. https://www.bilibili.com/video/BV1BJ4m1e7g8?spm_id_from=333.788.videopod.episodes&vd_source=f7867e3cfbc337b3261145a984b3a707&p=2

0 commit comments

Comments
 (0)