# LLM(入门)
# 生成式人工智能(Generative AI)
机器产生复杂有结构的物件。
- 复杂:无法穷举。
机器需要能够产生在训练时从来没有看过的东西
- 需要拥有创造力
# ChatGPT
真正做的事情 —— 文字接龙。
G:Generative 生成
P:Pre-trained 预训练。
T:Trasnformer
Token:「文字接龙」的最小组成单位。特性:Token 必须可穷举
接龙用的是掷骰子而不是取概率最大的词。
掷骰子不确定性更大,有更多可能,回答的结果也会更加自然。
另一方面由于掷骰子的不确定性,答案往往并不准确,存在瞎编的情况。
# 预训练 / 自督导式学习(Pre-Train)
人工智能通过利用各项数据自学来完善模型的过程。
# 督导式学习(Instruction Fine-tuning)
人工的方式告知机器期望的答案 —— 指令微调 (Instruction Fine-tuning)。
# 最佳化
通过一阶段的训练得到一组相对比较好的参数。
在此基础上,让人类老师来手动标注结果,得到一个更好的参数结果。
# Adapter
如果担心人类老师的标注会影响辛辛苦苦训练得到的参数。可以利用 adapter。
- 固定这部分参数的基础上,新增额外参数,人类老师的训练只会影响额外参数。
# 增强式学习(Reinforcement Learning from Human Feedback [RLHF])
人工的方式对机器给出的答案进行评分。
依赖于模型以及能够处理问题,且处理的结果中,偶尔会有比较好的情况。
督导部分也可以用模型代替。
# 回馈模型(Reward Model)RLHF--->RLAIF
# 增强式学习的难题
- 好没有定义,不同人看法不一样,无法量化。
# 强化语言模型输出结果
拆分提问内容,分步骤让人工智能回答。
让模型自省。
部分数学推论,可多次提问取众数,减少随机带来的影响。
提问时告知人工智能使用工具(如搜索引擎)。
让人工智能手写程序实现问题求解。
让不同的人工智能互相讨论最终得到结果(不需要一定统一对方的意见,让人工智能能够产生有效讨论)。
让语言模型多次自省。
# Transformer
文字转 Token:Token List【提前定义好】。
理解 Token:
Token 语义:Token 转向量(Embedding),Token Embedding Map【通过训练获取的参数】
Token 位置:Pos Embedding Map
Transform Block(Layer)会有多次这样的操作。
理解上下文(Attention)
计算相关性:读取句子中任意两个 Token,得到两两之间的相关性评分(Attention weight)
n 个 Token 可以计算出 n x n 数量的 Attention weight——AttentionMatrix
$Embedding_a} = Embedding_{a} + \sum_{i = 1,j = a}Embedding_{i} \times AttentionMatrix_{ij} $
- 最终结果如果加上自身,那么这种模式被称为 residual
Tips:实际运算时,只会考虑上文 Token(Causal Attention)
整合、思考
- Multi-head Attention:一种 Attention 评估 weight 显然不够全面,因此要用多个。
- Feed Forward 要做的是把多个 Attention 得到的多个 Embedding 整合成一个最终的 Embedding。
Output Layer(Linear Transform + Softmax)得到下一个 Token 的接龙概率分布