
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
文字 --tokenizer--> token id 列表 --embedding--> (B, T, 768) 向量[6821, 1726, ...] 每个 token 一个 768 维向量B:batch,一次喂几条样本。T:seq_len,一条样本里多少个 token。形状就是"整个模型世界的主语"——几乎所有操作都在这个形状上进进出出。
深度学习定义:基于多层人工神经网络的机器学习分支,通过数据自动学习特征和规律,无需人工手动设计特征核心工具:PyTorch(工业界主流,动态图)、TensorFlow(静态图,适合部署)应用领域:计算机视觉(CV)、自然语言处理(NLP)、语音识别、推荐系统、自动驾驶开发者:原 Meta AI 团队,现隶属于 Linux 基金会核心优势动态计算图:边运行边构建,调试方便Python 原生语法:学习
逗号 = 切维度冒号 = 取范围负数 = 倒数start:end → 左闭右开start🔚step → 隔 step 取一个。
大白话解释神经网络就像一个刚生下来的婴儿,什么都不会。我们给它看很多很多手写数字的图片,告诉它 “这个是 0,那个是 1”,它慢慢就学会了自己识别数字。这个 “学习” 的过程,就叫训练。核心逻辑(必须记下来)神经网络一开始的参数(权重和偏置)都是随机的,所以它的预测结果全是错的我们用损失函数来衡量 “它错得有多离谱”用梯度下降法告诉它 “往哪个方向改参数能少犯错误”用反向传播算法快速计算出每个参数
训练过程= 学生上课学习课本知识训练集= 课本上的例题测试集= 考试卷子上的新题过拟合= 学生把课本上的例题背得滚瓜烂熟,但考试遇到新题就完全不会欠拟合= 学生连课本例题都没学会,考试自然考不好好的模型= 学生学会了解题方法,不管遇到什么新题都能做对。
加了惯性的 SGD,走得更稳更快。大步子赶路,小步子找家。结合了动量法(惯性)和RMSProp自动给每个参数调整合适的学习率收敛速度快,震荡小几乎不用调参,默认参数效果就很好小白闭着眼睛用 Adam 就对了。用 ReLU 就用 He 初始化,用 Tanh 就用 Xavier 初始化。每个线性层 / 卷积层后面都加 BN,效果立竿见影。忘记梯度清零,否则梯度会累加,训练完全错误忘记切换模型模式:训练
训练开始前给神经网络所有 “可调节旋钮” 找一个。起点错了,再努力训练也没用;起点对了,训练又快又好,还能避免梯度消失 / 爆炸。
卷积层和池化层负责提取特征,全连接层负责把这些特征组合起来,做最终的分类。在进入全连接层之前,我们需要把多维的特征图展平成一维向量比如经过卷积和池化后,我们得到了 6 个 5×5 的特征图展平后就是:6×5×5 = 150 个特征然后把这 150 个特征输入到全连接层,最后输出 10 个类别的概率(对应 0-9 十个数字)模型年份核心特点历史地位AlexNet2012用了 ReLU 激活、Drop
自定义模型必须继承nn.Modulesuper().__init__() # 必须调用父类初始化方法# 定义网络层self.linear1 = nn.Linear(3, 4) # 输入层→第1隐藏层self.linear2 = nn.Linear(4, 4) # 第1隐藏层→第2隐藏层self.out = nn.Linear(4, 2) # 第2隐藏层→输出层# 必须实现forward方法,定义前
如果你需要访问所有中间层的输出,output满足不了这个需求。分类任务只需最后一层最后一个时间步序列标注需用最后一层所有时间步如果需要中间层输出做特征融合,需自行改写模块。







