BitLens
开源神经网络量化分析工具,通过单次校准完成逐层量化敏感度分析,利用SQNR、Omega离群比和超额峰度识别脆弱层,并提供内存规划与混合精度求解器,支持导出主流框架量化配置。
时间轴 (近 90 天)
BitLens 是一个开源项目,通过一次校准完成逐层量化敏感度分析,并导出主流框架的量化配置。
BitLens 通过钩子包裹 PyTorch 的 nn.Module 或 ONNX 计算图,为权重(对称逐通道)和激活(非对称逐张量)各采集 128-bin 直方图。
ViT-Tiny 的 blocks.11.attn.qkv 层 INT8 SQNR 仅 18.8 dB,INT4 仅 7.4 dB。
BitLens 使用离群比 Omega(Ω=absmax/p99.9)与超额峰度作为关键指标来识别量化脆弱层。
BitLens 的拓扑峰值 SRAM 规划器沿残差分支计算张量活跃期,找出峰值激活内存水位,并叠加静态 Flash 权重占用。
BitLens 的贪心 Pareto 自动拟合求解器根据目标硬件预算(如 STM32H7、ESP32-S3、Cortex-M55、Raspberry Pi Zero 2W)逐层将精度从 FP32 降到 FP16、INT8、INT4,每次选择“每节省一字节所损失 SQNR 最小”的降级方案,并允许用户锁定特定层。
BitLens 支持为 PyTorch torchao 生成独立量化脚本(Int8DynamicActivationInt4WeightConfig、Int8WeightOnlyConfig)。
BitLens 支持为 ONNX Runtime 生成 quantize_static 并附带 nodes_to_exclude。
BitLens 支持为 TFLite Micro 生成配套的 C arena 头文件。
用户可以直接在浏览器 Studio 中测试预置的 MobileNetV3-Small、ResNet-18、ViT-Tiny 配置,无需安装;也可在本地用 Python CLI 处理自己的 .pt 或 .onnx 检查点,再把生成的 .bitlens.json 拖回 Studio 可视化。
还有 1 条时间轴事件
全部知识事实 (11)
BitLens 是一个开源项目,通过一次校准完成逐层量化敏感度分析,并导出主流框架的量化配置。
50%待验证BitLens 通过钩子包裹 PyTorch 的 nn.Module 或 ONNX 计算图,为权重(对称逐通道)和激活(非对称逐张量)各采集 128-bin 直方图。
50%待验证ViT-Tiny 的 blocks.11.attn.qkv 层 INT8 SQNR 仅 18.8 dB,INT4 仅 7.4 dB。
50%待验证BitLens 使用离群比 Omega(Ω=absmax/p99.9)与超额峰度作为关键指标来识别量化脆弱层。
50%待验证BitLens 的拓扑峰值 SRAM 规划器沿残差分支计算张量活跃期,找出峰值激活内存水位,并叠加静态 Flash 权重占用。
50%待验证BitLens 的贪心 Pareto 自动拟合求解器根据目标硬件预算(如 STM32H7、ESP32-S3、Cortex-M55、Raspberry Pi Zero 2W)逐层将精度从 FP32 降到 FP16、INT8、INT4,每次选择“每节省一字节所损失 SQNR 最小”的降级方案,并允许用户锁定特定层。
50%待验证BitLens 支持为 PyTorch torchao 生成独立量化脚本(Int8DynamicActivationInt4WeightConfig、Int8WeightOnlyConfig)。
50%待验证BitLens 支持为 ONNX Runtime 生成 quantize_static 并附带 nodes_to_exclude。
50%待验证BitLens 支持为 TFLite Micro 生成配套的 C arena 头文件。
50%待验证用户可以直接在浏览器 Studio 中测试预置的 MobileNetV3-Small、ResNet-18、ViT-Tiny 配置,无需安装;也可在本地用 Python CLI 处理自己的 .pt 或 .onnx 检查点,再把生成的 .bitlens.json 拖回 Studio 可视化。
50%待验证BitLens 目前聚焦 PTQ 场景,依赖校准数据的代表性;Omega 与峰度指标能高效标出脆弱层,但不能替代端到端精度验证。
50%