笔记:线性回归,模型轻量化,LORA

11 篇文章 0 订阅

1.正确理解线性回归

将回归系数解释为比较,这个提示改变了我看待回归系数的方式。

以此线性回归方程为例
salary = -20 + 0.6 * height + 10.6 * male + error
其中工资以每 1000 美元计算,身高以英寸计算
在这种情况下,高度的估计影响为 0.6 或 600 美元似乎是很自然的。

然而,将其视为“效果”并不恰当,因为这意味着如果我们将某人的身高增加一英寸,他们的收入将增加约 600 美元。

我们的模型实际上告诉我们的是,样本中身高较高的人平均收入较高。

正确的解释是——“在拟合模型下,两个同性别但身高相差一英寸的人的平均收入差异为 600 美元。 ”

仅从数据来看,回归分析只能告诉我们个体之间的比较,而不能告诉我们个体内部的变化

将回归视为比较的好处:

1)始终可以进行对比解释
比较可以说是模型的描述,不需要任何因果假设。

2)复杂回归=由简单模型构建
我们可以将更复杂的回归视为由更简单的模型构建而成,从简单的比较开始并添加调整。

3)比较在因果推理的特殊情况下也有效
比较解释也适用于因果推理的特殊情况,我们可以考虑同一个人接受两种不同水平的治疗之间的比较。

2.模型轻量化

模型轻量化的一些常用方法,其中参数剪枝是一种非常实用的模型轻量化技术,分为加载模型、选择剪枝策略、定义剪枝标准、实施剪枝、微调训练、评估模型几个步骤。

此外我们还可以将模型量化或者进行知识蒸馏.

量化是把模型中的浮点类型的权重转换为低精度(如 INT8 或 INT16)的过程,不仅可以减少模型的存储空间需求,还能在某些硬件上加速模型的推理速度。这就好比我们开发语言里的精度转换,比如 double/long 类型转 int 类型,一般会损失精度,至于影响大不大取决于这个变量本身存储的数值。模型量化也是一样,前面我们讲过模型默认以 FP32 的精度存储数据,也就是一个参数需要 32 位 4 个字节存储,量化成 int8,那么只需要 8 位 1 个字节来存储。存储量直接减少 75%。

量化一般有三种情况:静态量化、动态量化、感知训练量化.

静态量化是在模型的推理阶段将权重和激活数据从浮点数转换为低精度整数的过程。和动态量化不同,静态量化会在推理前对模型的权重和激活数据进行量化,通常需要一个校准步骤,通过这一步可以决定最佳的量化参数。

动态量化主要针对模型的权重进行量化,每次输入时都会重新计算量化参数。这种方法通常用于模型的线性层(全连接层)和循环层(如 LSTM)。动态量化可以在不需要重新训练模型的情况下实现,适合那些对推理速度有较高要求的应用场景.

感知训练量化是指在训练过程中应用量化效果,使模型适应量化带来的精度损失。这种方法通常能保持或仅轻微影响模型的精度。

知识蒸馏是一种训练技术,其中一个小的模型,被叫做学生模型,学习模仿一个大的已经训练好的模型,这个模型通常叫做教师模型。

详细内容 参见链接

3.Lora微调 提示

  • 增加微调数据集的大小
  • 训练更多步骤(epoch)
  • 设置更高的 LoRA 等级
  • 修改超参数值,例如learning_rate和weight_decay。
  • 尝试使用较大规格的版本。
  • 增加sequence_length。
  • 尝试先进的提示工程技术。 实施增强以增加样本数量。
  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值