当前位置: 首页 > wzjs >正文

建筑设计案例网站电子商务网站建设与管理

建筑设计案例网站,电子商务网站建设与管理,承接网站建设 优帮云,泊头做网站模型量化 什么是量化权重量化激活量化 量化的影响RKNN中的量化策略后训练量化(PTQ)转换成rknn 量化感知训练(QAT) 降低量化影响的措施混合精度量化 校准数据集校准数据集的作用校准的过程:校准数据集的特点&#xff1a…

模型量化

  • 什么是量化
    • 权重量化
    • 激活量化
  • 量化的影响
  • RKNN中的量化策略
    • 后训练量化(PTQ)
      • 转换成rknn
    • 量化感知训练(QAT)
  • 降低量化影响的措施
    • 混合精度量化
  • 校准数据集
    • 校准数据集的作用
    • 校准的过程:
    • 校准数据集的特点:
  • 余弦相似度评估

什么是量化

在深度学习中,量化是将模型中的浮点数(通常是32位或16位浮点数)转换为低精度的证书(如8位整数),以减少模型的存储大小和计算复杂度。量化通常分为两种各类型:

权重量化

将模型的权重从浮点数表示为低精度整数

激活量化

将推理过程中输入和中间结果从浮点数表示为低精度整数

量化的好处是可以显著提高推理速度,降低存储和功耗,特别是在资源有限的嵌入式设备上。

量化的影响

在pytorch中训练的模型通常是在浮点数的精度下进行训练的,将模型转换为适合瑞芯微(NPU,支持INT8/INT4量化)的硬件运行时,需要量化。虽然量化可以带来性能和资源利用率的提升,但它可能会影响模型的精度。这是因为低精度整数的表示范围和表示精度比浮点数小得多,尤其对于某些敏感的模型或任务来说,这种精度丢失可能会导致推理效果下降。

RKNN中的量化策略

瑞芯微的RKNN工具链中支持多种量化策略,通常包括后训练量化(Post-Training Quantization,PTQ)和量化感知训练(Quantization-Aware Training,QAT)。不同的量化策略对模型性能的影响不同:

后训练量化(PTQ)

这种方式是在模型训练完成后进行的量化,直接将浮点模型转换为低精度整数模型。虽然简单快速,但精度损失相对较大,尤其在量化后的推理阶段,性能下降更为明显。

转换成rknn

如果想用瑞芯微官方提供的推理、后处理代码,关键点输出通道是不能被量化的,因此选择自动量化后,所有通道均被量化,与代码不再适配,导致关键点坐标输出错误,因此方便起见,采用手动设置custom_hybrid参数方法。

量化感知训练(QAT)

这种方法是在训练阶段模拟量化行为,通过让模型在训练时感知量化的影响,从而使模型能够在量化后保留更多的精度。QAT的效果通常比PTQ好,特别是对精度要求较高的任务。

降低量化影响的措施

混合精度量化

即对不同的层使用不同的量化精度。

校准数据集

校准数据集的作用

在深度学习模型量化过程中,模型的权重和激活值通常从高精度的浮点数(FP32或FP6)转换位低精度的整数(INT8)。这个转换的核心问题是:如何将浮点数精确地映射到整数范围?由于整数能表示的范围和精度有限,直接量化可能会导致溢出或精度下降。
校准数据集的作用就是帮助模型确定在量化过程中每一层的权重和激活值应该被映射到整数的哪一个范围内,以便保留尽可能多的信息,减少量化误差。

校准的过程:

1、选择校准数据集:
它可以是原始训练数据的一个小样本集(不打标签)。这些数据应当能够较好地代表模型在推理时遇到的真实数据分布。
2、前向推理:
将校准数据集通过模型的前向传播过程,记录每一层的激活值和权重的分布范围。这些范围用于后续的量化操作。
3、确定量化范围:
通过分析校准数据集在前向推理过程中每一层的激活值和权重的最大值和最小值,计算出每一层适合的量化范围。

校准数据集的特点:

1、小样本集
2、无标签需求
3、覆盖性:
校准数据集应尽量涵盖模型在推理时可能遇到的不同输入类型。例如,如果模型用于图片分类,校准数据集应该包含不同类别的图片样本。

余弦相似度评估

余弦相似度是用来衡量两个向量之间夹角的余弦值,从而判断它们相似程度的一个指标。
在这里插入图片描述贴上两个RKNN模型输出的余弦相似度对比代码:

import numpy as np
import cv2
from rknn.api import RKNN
from scipy.spatial.distance import cosinedef preprocess(image_path):img = cv2.imread(image_path)if img is None:raise FileNotFoundError(f"Image not found: {image_path}")img = cv2.resize(img, (640, 640))img = img[:, :, ::-1]  # BGR -> RGBimg = np.expand_dims(img, axis=0)  # NHWCreturn img.astype(np.uint8)def get_model_output(model_path, input_data):rknn = RKNN()print(f'--> Loading RKNN model: {model_path}')ret = rknn.load_rknn(model_path)if ret != 0:print('Load RKNN model failed!')exit(ret)print('--> Init runtime')if rknn.init_runtime(target='rk3588') != 0:print('Init runtime failed!')rknn.release()exit(1)print('--> Running inference')outputs = rknn.inference(inputs=[input_data])rknn.release()return outputs[0]  # 根据模型结构可能是 list,可打印 outputs 看结构def compute_cosine_similarity(output1, output2):output1 = np.array(output1).flatten()output2 = np.array(output2).flatten()return 1 - cosine(output1, output2)if __name__ == '__main__':image_path = '/home/pi/Desktop/reenrr/YOLOv8_RK3588_object_pose-main/222.png'model1 = '/home/pi/Desktop/reenrr/YOLOv8_RK3588_object_pose-main/model/paper_pose-yolov11.rknn'model2 = '/home/pi/Desktop/reenrr/YOLOv8_RK3588_object_pose-main/model/yolov8-pose-best.rknn'input_data = preprocess(image_path)output1 = get_model_output(model1, input_data)output2 = get_model_output(model2, input_data)print("output1:",output1)print("output2:",output2)sim = compute_cosine_similarity(output1, output2)print(f'\n✅ Cosine similarity between outputs: {sim:.6f}')

使用时,需要修改image_path、model1、model2的路径。

http://www.dtcms.com/wzjs/460753.html

相关文章:

  • 网站建设推广岗位谷歌搜索引擎免费入口
  • 怎样查看网站是用什么cms 做的a站
  • android移动网站开发详解光盘下载一手app推广接单平台
  • 建网站免费吗山东建站
  • 深圳龙岗区住房和建设局网站优化网站排名公司
  • 网站手机端页面怎么做网站建设方案书模板
  • 订餐网站怎么做网络推广和网站推广
  • 南京 做网站seo网络优化日常工作内容
  • 精品课程网站建设 碧辉腾乐怎样制作网站教程
  • 异度空间主题 wordpress站长seo工具
  • 做游戏网站用什么系统做网站自动推广软件免费
  • 网站做等保三级建设我要推广
  • 门户网站建站目标seo网站关键词优化报价
  • 什么网站上做推广效果比较好网络营销成功的案例
  • 武汉企业建站哈尔滨网站制作软件
  • 娱乐网站开发如何搜索网页关键词
  • 有哪些设计网站精准营销平台
  • 北京门户网站开发电商网站制作
  • 做平面设计的网站有哪些免费自助建站平台
  • 怎样拿电脑做网站网络媒体发稿
  • 专业建设外贸网站职业培训机构哪家最好
  • 手机百度收录网站吗乐天seo培训
  • 网站价格天津百度优化
  • 福州网站优化公司长尾词优化外包
  • 做网站都有跳转链接百度股市行情上证指数
  • wordpress仿站抓取软件淘宝运营培训课程
  • 网站关键词怎么快速上排名如何看待百度竞价排名
  • 网站开发需要会什么软件seo整站优化报价
  • 高端网站建设 上海长春网站建设 4435
  • 自己做的网站可以上架烟吗营销方案ppt