参考课程
【清华NLP】刘知远团队大模型公开课全网首发|带你从入门到实战-知乎
一、自然语言处理基础
1.1 自然语言处理的基本任务
让计算机理解人所说的文本 语音
- 词性标注:区分每个词名词、动词、形容词等词性
- 命名实体的识别:名词的具体指代是哪一类事物
- 共指消解:代词指代的是前面哪一个实体
- 句法关系:主谓宾这种
- 中文的自动分词:标注词和词间的空格
1.2 词表示
- 独热编码 One-Hot
- 上下文 Co-Occurrence Counts
- 词向量 Word Embedding——Word2Vec
将词汇投射到低维向量空间
1.3 语言模型
- 传统语言模型 计算概率分布
基本假设:一个未来的词,只会受到前面的词的影响
根据前面出现N - 1个词,计算第N个词的概率是多少 - 神经网络模型 词向量处理
循环神经网络RNN、 门控循环单元GRU、长短期神经网络LTSM、双向RNN、卷积神经网络CNN
Transformer: Attention注意力机制、 Encoder-Decoder结构、更优秀的长文本处理能力 - 大模型(预训练语言模型PLM)
BERT、GPT、T5
1.4 NLP的应用
搜索引擎、知识图谱、机器阅读、人类助手、机器翻译、情感分类和意见挖掘、计算社会科学
二、大模型相关知识
大模型范式 = 预训练(无标注、自监督) + 微调
2.1 预训练大模型
-
Encoder-Only BERT派
分析故事的专家
两大基本任务:- 完形填空(maskerd language modeling)
- 句子关系预测(sentence relationship prediction)
-
Decoder-Only GPT派
讲故事的专家
自回归训练、搜索空间小
发展:GPT2->Gopher/Chinchilla->LLaMA- Gopher:验证扩大模型规模处理复杂任务
- Chinchilla:增加数据比增加模型参数更有效
- LLaMA:更小参数量实现GPT级性能
-
Encoder-Decoder T5派
2.1.1 常见大模型的参数大小
OpenAI GPT2 12B参数
OpenAI GPT3 175B参数
ChatGLM-6B 62B参数 130G模型大小
Chinese-Llama-2-7b-ggml-q4 3.8G模型大小
2.1.2 Huggingface-Transformers 库
环境配置
pip3 install torch torchvision torchaudio
pip3 install transformers
本地实践参考链接
本地使用huggingface transformers的预训练大模型-知乎
ChatGLM-6B模型加载-知乎
构建能够使用 CPU 运行的 MetaAI LLaMA2 中文大模型-知乎
2.2 微调
2.2.1 Prompt Engineering 提示词工程
- 明确、具体是关键
- 思维链技术:Chain-of-Thought
- 自一致性技术:Self-Consistency
- 从易至难技术:Least-to-Most
2.2.2 Delta Tuning 参数高效微调
- 增量式 重新增加一组参数
- 指定式 指定微调哪一部分参数
- 重参数化 指定对哪一部分的参数进行重新设计
2.3 大模型高效计算OpenBMB
2.3.1 训练
数据并行、模型并行、流水线并行、混合精度训练等
2.3.2 推理、压缩
知识蒸馏、模型剪支、模型量化
2.4 大模型应用
信息检索、机器问答、文本生成
生物医学、法律、脑科学