1.大语言模型如何从专才(机器翻译)走向通才2.GPT4的核心是可以写并执行代码,还可以接受文件读取并应用于代码中(比如中文字资料包),完全是个工程师了
总纲:大语言模型就是做文字接龙游戏!
大模型为了得到更好结果的两个方向:prompt(改变自己) 和 finetune(改变模型)
prompt engineer:
1.神奇咒语可能有用,提高数学问题正确率:lets think step by step
2.提供教科书作为输入文件,让它直接现在“学习”(in-context learning,不是真的learning)似乎就是把prompt和教科书读完之后继续文字接龙...
3.回答后叫模型反思一下对不对
4.语言模型只是在做预测下一个token的游戏,1.自然做不了数学。。。
2.也不适合做搜索引擎,因为训练资料里没有最新新闻(搜索引擎功能是大模型外集成进去的,kimi自动决定用不用联网搜索)。但是我们可以为大语言模型配备工具!如搜索引擎,计算器
比如gpt4会自己写程序并执行,上面的算数例子无法通过文字接龙给出答案,但是可以调用程序运行得到正确结果,所以大语言模型可以经常写程序,保证输出的正确性
语言模型是如何使用工具的呢?模型自己决定什么时候call工具,将工具结果复制进来继续文字接龙
RAG:
模型合作?小镇村民?
LLM的训练启示我们初始化参数极其重要!
LLM training:第一阶段就相当于是init_weight初始化model参数,让模型有一组好的权重,而不是随机权重(self-supervised learning),这个时候的模型并不受控,给他输入一些文字,他就不受控的一直输出下去了,因为网上的文字资料也没有教他如何“回答”问题
(以上为内力阶段,model并没有回答问题的概念,只是个无情的文字接龙机器,各种评价效果都比较垃圾)
第二阶段fine-tune:人类老师教导,supervised learning(资料较少,因为人力标注很贵)
chatgpt界面的prompt没有USER AI是因为省略了,model看到的是带有说话者的输入文字
第一阶段训练了好的参数作为基石,碰巧源于人类的梯度下降法会在附近找参数
此时训练会使用adapter技术(lora):固定pretrain model的大量参数,加入少量新参数,对新加入的参数进行训练。(全部参数训练会非常耗时间)
BERT,CHATGPT,LLAMA这些名字本身都是pretrain model
BERT通过fine-tune打造一堆专才
fine-tune就是用一堆有标签的task去全方位训练pretrain model(依我看,专才通才没区别,无非是通才训练的更多罢了)
第三阶段:是强化学习....chatgpt生成两句话人类判断哪个更好,反馈微调参数调整两句话的出现概率(向人类喜好RL学习也至关重要,小参数经过三个阶段后可以打爆大参数模型只pretrain+instruct finetune),启示:RL是机器学习的基础方法,必须学习