
transformers
文章平均质量分 82
Psycho_MrZhang
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
BERT模型详解
BERT(Bidirectional Encoder Representations from Transformers)是由Google在2018年提出的一种基于Transformer架构的预训练模型。原创 2025-05-06 13:54:15 · 1140 阅读 · 0 评论 -
Transformer(Trainer)和参数调优实践
Trainer是 HuggingFace Transformers 库提供的高级训练接口,主要功能是简化训练流程自动化训练循环(前向传播、反向传播、优化器步进)分布式训练(多GPU/TPU支持)混合精度训练(FP16/FP32混合加速)日志记录、评估、检查点保存自定义回调(如早停、超参数搜索)适用于微调预训练模型(如BERT、ViT等),无需手动编写训练循环。核心原则数据驱动:根据数据规模、分布选择增强和采样策略。模型适配:预训练模型的特性决定学习率和冻结策略。动态监控。原创 2025-04-25 14:08:30 · 1343 阅读 · 0 评论 -
Transformer 整体代码结构分析
Transformer 成功的原因:解决了传统模型的效率低下和长距离依赖问题,通过自注意力机制实现了全局视野和高效计算。核心优势:并行化处理和全局视野,让模型能够快速、全面地理解序列数据。多头注意力机制:从宏观上看,它帮助模型理解全局信息;从微观上看,它通过多个“视角”捕捉不同特征。前馈连接的作用:作为注意力机制的补充,进一步加工和整合信息,提升模型的表现。原创 2025-04-22 17:28:45 · 926 阅读 · 0 评论 -
transformer 模型构建和测试
实现了编码器和解码器结构的类 EncoderDecoder类的初始化函数传入五个参数, 编码器对象, 解码器对象, 源数据嵌入函数, 目标数据嵌入函数, 输出部分类别生成器类中共有三个函数, forward, encode, decodeforward是要要逻辑函数, source代表源数据, target代表目标数据, source_mask和target_mask代表对应掩码张量encode是编码函数, source 和 source_mask 为参数。原创 2025-04-22 17:02:59 · 282 阅读 · 0 评论 -
transformer 编码器层
作为编码器的组成单元, 每个编码器完成一次对输入特征提取的过程, 即编码过程。编码器用于对输入进行指定的特征提取过程, 也称为编码, 由N个编码器堆叠而成。原创 2025-04-22 17:01:16 · 257 阅读 · 0 评论 -
transformer 子层连接结构
输入到每个子层以及规范化层的过程中, 使用了残差连接(跳跃连接, 从Add&Norm -> Add&Norm), 因此我们把这一部分结构整体叫做子层连接(代表子层及其链接结构), 在每个编码器中, 都有两个子层, 这两个子层加上周围的链接结构就形成了两个子层连接结构。原创 2025-04-22 17:00:43 · 159 阅读 · 0 评论 -
transformer 注意力机制
Query(Q):你的需求,比如“我想找什么”。Key(K):信息的标签,用来判断是否符合你的需求。Value(V):信息的实际内容,最终你要获取的东西。过程用 Query 和 Key 计算匹配度。缩放匹配度,避免数值过大。用 Softmax 把匹配度变成关注度(权重)。根据权重提取 Value,得到最终结果。什么是多头注意力机制。原创 2025-04-14 09:51:21 · 641 阅读 · 0 评论 -
transformer 规范化层
函数/方法作用常用场景关键参数定义可训练参数自定义模型层无计算均值损失函数、数据归一化dimkeepdim计算标准差BatchNorm、数据标准化dimunbiased。原创 2025-04-12 15:44:22 · 772 阅读 · 0 评论 -
transformer 前馈全连接层
是 PyTorch 中实现ReLU(Rectified Linear Unit)激活函数的核心函数。下面从输入输出类型基本作用底层原理和代码示例四个方面详细说明:输入输出类型输入:任意维度的张量(Tensor),通常为神经网络的隐藏层输出。输出:与输入张量形状相同的张量,所有负值被置为 0,正值保持不变。数据类型:支持float32float64等浮点类型。基本作用ReLUxmax0xReLUxmax0x功能:对输入张量逐元素应用 ReLU 函数,实现非线性变换。用途。原创 2025-04-12 15:15:08 · 969 阅读 · 0 评论 -
transformer 中编码器原理和部分实现
掩代表着烟, 码就是我们张量中的数值, 他的尺寸不定, 里面一半只有1和0个元素, 代表位置被遮掩或者不被遮掩, 至于是0位置被遮掩还是1位置被遮掩可以自定义因此它的主要作用就是让另一个张量中的一些数值被遮掩, 也可以说是被替换, 它的表现形式是一个张量。原创 2025-04-09 17:56:36 · 358 阅读 · 0 评论 -
transformer 架构和输入部分实现
文本嵌入层作用无论是源文本还是目标文本的嵌入, 都是为了将文本中词汇的数字表示转为向量表示, 希望这样在高纬空间捕捉词汇之间的关系在输入之前已经(中文/英文)单词已经转化为张量张量中每一个词都是一个列表, 比如一句话有 10个词, 应当为 10 * 4 的矩阵学习实现文本嵌入层 Embedding初始化d_model, 词嵌入维度, 和vocab, 词汇总数为参数, 内部使用了进行词嵌入在forward。原创 2025-04-08 16:18:50 · 634 阅读 · 0 评论 -
模型剪枝和量化
定义与作用量化是将模型权重和激活值从高精度(如float32)转换为低精度(如int8降低存储需求:模型体积缩小 4 倍(32位→8位)。加速推理:低精度计算通常更快,尤其适配硬件加速(如 GPU 的 TensorCore)。量化方法方法原理适用场景动态量化在推理时动态量化权重和激活值,无需校准数据。输入动态范围较大的任务(如文本生成)。静态量化通过校准数据确定激活值的量化范围,生成固定量化参数。部署到资源受限设备(如移动端)。量化感知训练(QAT)在训练中模拟量化误差,使模型适应低精度计算。原创 2025-04-08 13:23:04 · 1059 阅读 · 0 评论 -
LLM 核心技术说明(PROMPT/RAG/FineTuning)
预训练通过自监督学习(如掩码语言建模、下一句预测)在大规模无标注数据上训练模型,构建通用语言理解能力。RAG 通过外部知识库动态检索相关信息,将其作为上下文输入生成模型,解决 LLM 的静态知识局限。微调通过在领域数据上继续训练预训练模型,使其适应特定任务(如医疗诊断、法律咨询)。原创 2025-04-08 13:20:14 · 939 阅读 · 0 评论 -
模型量化和剪枝
定义与作用量化是将模型权重和激活值从高精度(如float32)转换为低精度(如int8降低存储需求:模型体积缩小 4 倍(32位→8位)。加速推理:低精度计算通常更快,尤其适配硬件加速(如 GPU 的 TensorCore)。量化方法方法原理适用场景动态量化在推理时动态量化权重和激活值,无需校准数据。输入动态范围较大的任务(如文本生成)。静态量化通过校准数据确定激活值的量化范围,生成固定量化参数。部署到资源受限设备(如移动端)。量化感知训练(QAT)在训练中模拟量化误差,使模型适应低精度计算。原创 2025-04-08 11:41:56 · 1269 阅读 · 0 评论 -
huggingface 模型微调选型
为了帮助选择合适的模型,可以设计以下量化指标和评分体系:假设我们有以下三个模型选项:根据评分结果, 是最优选择。原创 2025-04-08 11:40:21 · 672 阅读 · 0 评论 -
huggingface 使用和模型微调
1. 核心组件构成Transformers库:提供统一API支持30+架构的预训练模型加载,核心抽象类包括AutoModelPipeline。Hub平台:包含250k+模型、数据集及演示应用,采用Git LFS管理大文件版本。:基于Kubernetes的动态扩缩容服务,支持零代码模型部署,提供REST/gRPC接口。2. 模型仓库元数据结构"model_card": { # Markdown文档,含训练数据/偏差声明/使用限制},"metrics": { # 模型评估结果"f1": 0.88。原创 2025-04-08 11:01:10 · 2190 阅读 · 0 评论 -
langchain embedding 自定义模型(bge)实现
该实现方案在保持 LangChain 兼容性的同时,提供了灵活的自定义能力,可以方便地替换不同的 Transformer 模型,适应各种业务场景需求。原创 2025-04-02 13:54:10 · 1109 阅读 · 0 评论