GPT的实现细节

关于GPT的代码细节,这里梳理了一下:

数据集构造

原始数据集schema:

text 复制代码
input=who is your favorite basketball player?
output=Of course Kobe Bryant!

那么在构造训练集时,根据chunk size构造多个输入:

text 复制代码
input_1=who is your favorite basketball player? Of
input_2=who is your favorite basketball player? Of course
......
input_n-1=who is your favorite basketball player? Of course Kobe Bryant!
input_n=who is your favorite basketball player? Of course Kobe Bryant! <EOS>

由于训练任务是下一个单词预测,所以 x = i n p u t [ : − 1 ] , y = i n p u t [ 1 : ] x=input[:-1], y=input[1:] x=input[:−1],y=input[1:]

loss

x x x是模型可见已知的,需要mask掉不算入loss

python 复制代码
y[:-1] = -1
loss = F.cross_entropy(logits.view(-1, logits.size(-1)), targets.view(-1), ignore_index=-1)

生成

karpathy/minGPT项目中,是直接粗暴地生成固定长度的文本。这样做的问题就是生成的文本无法判断何处阶段。

在构造模型输入的时候,我们就加入了 <EOS> token,来标记文本的结束。那么在推理阶段,如果碰到该token,则结束生成

python 复制代码
if token == "<EOS>":
    break

参考

相关推荐
川川菜鸟20 小时前
用一句完整提示词,直接做出一个“球球大作战”级小游戏
gpt·gemini
Pocker_Spades_A1 天前
AiOnly平台大模型API实战:一键调用GPT-5搭建个人专属文本摘要工具
gpt
Sherlock Ma2 天前
OpenAI新论文!GPT-5-Thinking新训练方法
人工智能·gpt·深度学习·语言模型·自然语言处理·chatgpt·openai
热爱生活的五柒2 天前
gpt上面的内容复制到word后格式会乱怎么办?
gpt
qq19226382 天前
分布式光伏发电系统并网运行的Matlab仿真研究
gpt
Niuguangshuo2 天前
从 One-Hot 到 GPT:语言模型的演进之路
人工智能·gpt·语言模型
询问QQ:180809513 天前
复现ICRA 2022自动驾驶实时轨迹规划:速度路径解耦方法研究,基于Linux系统ROS的场...
gpt
桂花饼3 天前
GPT-5.1-Codex-Max 架构深度解析:原生“压缩”机制如何重塑智能体编程?
gpt·aigc·ai编程·大模型实战·gemini 3 pro·claude opus 4.5·gpt-5.1max
桂花饼4 天前
GPT-5.1-Codex-Max:原生“记忆压缩”重塑编程范式,让 AI 连续写代码 24 小时不再是梦
人工智能·gpt·ai绘图·nano banana 2·图像生成api·openai兼容接口·gpt-5.1-codex
陈 洪 伟5 天前
Transformer彻底剖析(1):GPT中的Transformer架构
gpt·深度学习·transformer