[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-tensorflow--model-optimization":3,"tool-tensorflow--model-optimization":64},[4,17,27,35,43,56],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":16},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,3,"2026-04-05T11:01:52",[13,14,15],"开发框架","图像","Agent","ready",{"id":18,"name":19,"github_repo":20,"description_zh":21,"stars":22,"difficulty_score":23,"last_commit_at":24,"category_tags":25,"status":16},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",138956,2,"2026-04-05T11:33:21",[13,15,26],"语言模型",{"id":28,"name":29,"github_repo":30,"description_zh":31,"stars":32,"difficulty_score":23,"last_commit_at":33,"category_tags":34,"status":16},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107662,"2026-04-03T11:11:01",[13,14,15],{"id":36,"name":37,"github_repo":38,"description_zh":39,"stars":40,"difficulty_score":23,"last_commit_at":41,"category_tags":42,"status":16},3704,"NextChat","ChatGPTNextWeb\u002FNextChat","NextChat 是一款轻量且极速的 AI 助手，旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性，以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发，NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。\n\n这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言，它也提供了便捷的自托管方案，支持一键部署到 Vercel 或 Zeabur 等平台。\n\nNextChat 的核心亮点在于其广泛的模型兼容性，原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型，让用户在一个界面即可自由切换不同 AI 能力。此外，它还率先支持 MCP（Model Context Protocol）协议，增强了上下文处理能力。针对企业用户，NextChat 提供专业版解决方案，具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能，满足公司对数据隐私和个性化管理的高标准要求。",87618,"2026-04-05T07:20:52",[13,26],{"id":44,"name":45,"github_repo":46,"description_zh":47,"stars":48,"difficulty_score":23,"last_commit_at":49,"category_tags":50,"status":16},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",84991,"2026-04-05T10:45:23",[14,51,52,53,15,54,26,13,55],"数据工具","视频","插件","其他","音频",{"id":57,"name":58,"github_repo":59,"description_zh":60,"stars":61,"difficulty_score":10,"last_commit_at":62,"category_tags":63,"status":16},3128,"ragflow","infiniflow\u002Fragflow","RAGFlow 是一款领先的开源检索增强生成（RAG）引擎，旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体（Agent）能力相结合，不仅支持从各类文档中高效提取知识，还能让模型基于这些知识进行逻辑推理和任务执行。\n\n在大模型应用中，幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构（如表格、图表及混合排版），显著提升了信息检索的准确度，从而有效减少模型“胡编乱造”的现象，确保回答既有据可依又具备时效性。其内置的智能体机制更进一步，使系统不仅能回答问题，还能自主规划步骤解决复杂问题。\n\n这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统，还是致力于探索大模型在垂直领域落地的创新者，都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口，既降低了非算法背景用户的上手门槛，也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目，它正成为连接通用大模型与行业专有知识之间的重要桥梁。",77062,"2026-04-04T04:44:48",[15,14,13,26,54],{"id":65,"github_repo":66,"name":67,"description_en":68,"description_zh":69,"ai_summary_zh":69,"readme_en":70,"readme_zh":71,"quickstart_zh":72,"use_case_zh":73,"hero_image_url":74,"owner_login":75,"owner_name":75,"owner_avatar_url":76,"owner_bio":77,"owner_company":78,"owner_location":78,"owner_email":79,"owner_twitter":78,"owner_website":80,"owner_url":81,"languages":82,"stars":103,"forks":104,"last_commit_at":105,"license":106,"difficulty_score":107,"env_os":77,"env_gpu":77,"env_ram":77,"env_deps":108,"category_tags":113,"github_topics":114,"view_count":23,"oss_zip_url":78,"oss_zip_packed_at":78,"status":16,"created_at":128,"updated_at":129,"faqs":130,"releases":159},3437,"tensorflow\u002Fmodel-optimization","model-optimization","A toolkit to optimize ML models for deployment for Keras and TensorFlow, including quantization and pruning.","TensorFlow Model Optimization Toolkit 是一套专为 Keras 和 TensorFlow 设计的模型优化工具包，旨在帮助开发者将机器学习模型高效地部署到各类设备上。在人工智能应用中，大型模型往往占用大量存储空间且推理速度较慢，难以在手机、嵌入式设备等资源受限的环境中运行。这套工具包通过量化（Quantization）和剪枝（Pruning）等核心技术，有效压缩模型体积并提升推理速度，同时尽可能保持模型的预测精度。\n\n该工具包特别适合从事移动端开发、边缘计算以及需要优化模型性能的机器学习工程师和研究人员使用。无论是刚入门的新手还是资深专家，都能利用其提供的稳定 Python API 轻松上手。其独特亮点在于针对 Keras 构建了专门的接口，使得优化流程能够无缝集成到现有的训练管道中；同时支持稀疏权重处理，进一步挖掘模型的压缩潜力。作为 TensorFlow 生态的重要组成部分，TensorFlow Model Optimization Toolkit 不仅提供了详尽的教程和文档，还拥有活跃的社区支持，帮助用户顺利完成从模型训练到实际落地的最后一公里。","# TensorFlow Model Optimization Toolkit\n\nThe **TensorFlow Model Optimization Toolkit** is a suite of tools that users,\nboth novice and advanced, can use to optimize machine learning models for\ndeployment and execution.\n\nSupported techniques include quantization and pruning for sparse weights.\nThere are APIs built specifically for Keras.\n\nFor an overview of this project and individual tools, the optimization gains,\nand our roadmap refer to\n[tensorflow.org\u002Fmodel_optimization](https:\u002F\u002Fwww.tensorflow.org\u002Fmodel_optimization).\nThe website also provides various tutorials and API docs.\n\nThe toolkit provides stable Python APIs.\n\n## Installation\nFor installation instructions, see\n[tensorflow.org\u002Fmodel_optimization\u002Fguide\u002Finstall](https:\u002F\u002Fwww.tensorflow.org\u002Fmodel_optimization\u002Fguide\u002Finstall).\n\n## Contribution guidelines\n\n**If you want to contribute to TensorFlow Model Optimization, be sure to review\nthe [contribution guidelines](CONTRIBUTING.md). This project adheres to\nTensorFlow's\n[code of conduct](https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Ftensorflow\u002Fblob\u002Fmaster\u002FCODE_OF_CONDUCT.md).\nBy participating, you are expected to uphold this code.**\n\n**We use\n[GitHub issues](https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Fmodel-optimization\u002Fissues) for\ntracking requests and bugs.**\n\n## Maintainers\n\n\u003Ctable>\n  \u003Ctr>\n    \u003Cth>Subpackage\u003C\u002Fth>\n    \u003Cth>Maintainers\u003C\u002Fth>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>tfmot.clustering\u003C\u002Ftd>\n    \u003Ctd>Arm ML Tooling\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>tfmot.quantization\u003C\u002Ftd>\n    \u003Ctd>TensorFlow Model Optimization\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>tfmot.sparsity\u003C\u002Ftd>\n    \u003Ctd>TensorFlow Model Optimization\u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n## Community\n\nAs part of TensorFlow, we're committed to fostering an open and welcoming\nenvironment.\n\n*   [TensorFlow Blog](https:\u002F\u002Fblog.tensorflow.org): Stay up to date on content\n    from the TensorFlow team and best articles from the community.\n","# TensorFlow 模型优化工具包\n\n**TensorFlow 模型优化工具包**是一套工具，无论初学者还是高级用户都可以使用它来优化机器学习模型，以便部署和执行。\n\n支持的技术包括量化和稀疏权重剪枝。此外，还为 Keras 提供了专门的 API。\n\n有关该项目及其各个工具的概述、优化收益以及我们的路线图，请参阅\n[tensorflow.org\u002Fmodel_optimization](https:\u002F\u002Fwww.tensorflow.org\u002Fmodel_optimization)。\n该网站还提供了各种教程和 API 文档。\n\n该工具包提供稳定的 Python API。\n\n## 安装\n有关安装说明，请参阅\n[tensorflow.org\u002Fmodel_optimization\u002Fguide\u002Finstall](https:\u002F\u002Fwww.tensorflow.org\u002Fmodel_optimization\u002Fguide\u002Finstall)。\n\n## 贡献指南\n\n**如果您希望为 TensorFlow 模型优化项目做出贡献，请务必阅读\n[贡献指南](CONTRIBUTING.md)。本项目遵守 TensorFlow 的\n[行为准则](https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Ftensorflow\u002Fblob\u002Fmaster\u002FCODE_OF_CONDUCT.md)。\n参与时，您应遵守该准则。**\n\n**我们使用\n[GitHub 问题](https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Fmodel-optimization\u002Fissues) 来跟踪请求和错误。**\n\n## 维护者\n\n\u003Ctable>\n  \u003Ctr>\n    \u003Cth>子包\u003C\u002Fth>\n    \u003Cth>维护者\u003C\u002Fth>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>tfmot.clustering\u003C\u002Ftd>\n    \u003Ctd>Arm ML 工具链团队\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>tfmot.quantization\u003C\u002Ftd>\n    \u003Ctd>TensorFlow 模型优化团队\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>tfmot.sparsity\u003C\u002Ftd>\n    \u003Ctd>TensorFlow 模型优化团队\u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n## 社区\n\n作为 TensorFlow 的一部分，我们致力于营造开放且友好的环境。\n\n*   [TensorFlow 博客](https:\u002F\u002Fblog.tensorflow.org)：及时了解 TensorFlow 团队的最新内容以及社区精选文章。","# TensorFlow Model Optimization Toolkit 快速上手指南\n\nTensorFlow Model Optimization Toolkit 是一套用于优化机器学习模型以便部署和执行的工具套件，支持量化（Quantization）和剪枝（Pruning）等技术，并提供专为 Keras 设计的 API。\n\n## 环境准备\n\n*   **操作系统**：Linux, macOS, Windows\n*   **Python 版本**：3.7 - 3.10\n*   **前置依赖**：\n    *   TensorFlow 2.x (推荐最新稳定版)\n    *   NumPy\n*   **网络建议**：国内开发者建议使用清华或阿里镜像源加速安装。\n\n## 安装步骤\n\n### 方法一：使用 pip 安装（推荐）\n\n**使用国内镜像源加速安装：**\n\n```bash\npip install tensorflow-model-optimization -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n**或使用官方源：**\n\n```bash\npip install tensorflow-model-optimization\n```\n\n### 方法二：从源码安装（可选）\n\n如需使用最新开发版功能：\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Fmodel-optimization.git\ncd model-optimization\npip install .\n```\n\n## 基本使用\n\n以下示例展示如何使用该工具包对 Keras 模型进行**后训练量化（Post-training Quantization）**，这是最基础且常用的优化场景。\n\n### 1. 导入依赖并加载模型\n\n```python\nimport tensorflow as tf\nimport tensorflow_model_optimization as tfmot\n\n# 加载预训练的 Keras 模型\nmodel = tf.keras.applications.MobileNetV2(weights='imagenet')\n```\n\n### 2. 定义量化配置并应用\n\n```python\n# 创建默认的量化工具配置\nquantize_config = tfmot.quantization.keras.QuantizeConfig()\n\n# 将量化包装器应用到模型\nquantized_model = tfmot.quantization.keras.quantize_model(model)\n```\n\n### 3. 编译与训练（微调）\n\n量化后的模型需要重新编译。通常需要进行少量的微调以恢复精度。\n\n```python\nquantized_model.compile(\n    optimizer='adam',\n    loss='categorical_crossentropy',\n    metrics=['accuracy']\n)\n\n# 执行微调训练 (示例数据需替换为实际数据集)\n# quantized_model.fit(x_train, y_train, epochs=5)\n```\n\n### 4. 导出模型\n\n训练完成后，移除量化包装器并保存最终的 TFLite 或 SavedModel 格式。\n\n```python\n# 移除量化包装器，获取最终模型\nfinal_model = tfmot.quantization.keras.strip_quantize(quantized_model)\n\n# 转换为 TFLite 格式以获得最佳移动端性能\nconverter = tf.lite.TFLiteConverter.from_keras_model(final_model)\ntflite_model = converter.convert()\n\nwith open('model_quantized.tflite', 'wb') as f:\n    f.write(tflite_model)\n```\n\n> **提示**：除了量化，该工具包还支持 `tfmot.sparsity` 进行模型剪枝，以及 `tfmot.clustering` 进行权重聚类，具体用法可参考官方文档。","某初创团队正在开发一款基于 TensorFlow 的实时垃圾分类手机 App，需要将训练好的图像识别模型部署到算力有限的安卓设备上。\n\n### 没有 model-optimization 时\n- 模型文件体积高达 85MB，导致用户下载意愿低，且占用大量手机存储空间。\n- 在低端机型上推理延迟超过 400 毫秒，摄像头画面卡顿严重，无法实现流畅的实时检测体验。\n- 高浮点精度运算导致 CPU 持续高负载，手机迅速发热并消耗大量电量，用户反馈电池续航骤降。\n- 为了强行压缩模型，开发人员手动裁剪网络层，导致识别准确率从 92% 暴跌至 75%，无法满足业务需求。\n\n### 使用 model-optimization 后\n- 通过量化技术将模型权重从 32 位浮点数转换为 8 位整数，模型体积缩小 4 倍至 21MB，显著降低下载门槛。\n- 利用剪枝（Pruning）移除冗余连接，配合量化加速，在同等设备上的推理速度提升至 60 毫秒以内，实现丝滑的实时预览。\n- 低功耗运行模式大幅减少计算资源消耗，设备温升明显降低，单次充电可支持的扫描次数增加 3 倍。\n- 在保持模型结构完整的前提下进行优化，经过微调后准确率仍稳定在 91.5%，完美平衡了性能与精度。\n\nmodel-optimization 成功帮助团队在不牺牲精度的情况下，将沉重的云端模型转化为轻量级端侧应用，彻底解决了移动端部署的性能瓶颈。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Ftensorflow_model-optimization_a2caa1da.png","tensorflow","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Ftensorflow_07ed5093.png","",null,"github-admin@tensorflow.org","http:\u002F\u002Fwww.tensorflow.org","https:\u002F\u002Fgithub.com\u002Ftensorflow",[83,87,91,95,99],{"name":84,"color":85,"percentage":86},"Python","#3572A5",81.7,{"name":88,"color":89,"percentage":90},"Jupyter Notebook","#DA5B0B",13.4,{"name":92,"color":93,"percentage":94},"Starlark","#76d275",4.4,{"name":96,"color":97,"percentage":98},"Shell","#89e051",0.4,{"name":100,"color":101,"percentage":102},"Dockerfile","#384d54",0.1,1566,346,"2026-04-02T08:37:56","Apache-2.0",1,{"notes":109,"python":77,"dependencies":110},"README 中未明确列出具体的操作系统、GPU、内存及 Python 版本要求，仅指出该工具包提供稳定的 Python API，并专门构建了针对 Keras 的接口。详细的安装说明需参考官方文档链接。主要依赖为 TensorFlow 生态系统。",[111,112],"TensorFlow","Keras",[13],[75,115,116,117,118,119,120,121,122,123,124,125,126,127],"machine-learning","deep-learning","optimization","quantized-neural-networks","quantized-networks","quantized-training","keras","model-compression","compression","ml","pruning","sparsity","quantization","2026-03-27T02:49:30.150509","2026-04-06T05:19:24.070073",[131,136,141,146,151,155],{"id":132,"question_zh":133,"answer_zh":134,"source_url":135},15781,"如何对不支持的层（如 UpSampling2D）进行量化感知训练（QAT）？","虽然 `UpSampling2D` 等层尚未内置支持，但它们通常不需要特殊的量化处理。您可以尝试向该层传递一个 `NoOpQuantizeConfig` 实例作为 `QuantizeConfig`。具体做法是在使用 `quantize_annotate_layer` API 时，为该层指定配置：`tfmot.quantization.keras.QuantizeConfig` (即 `NoOpQuantizeConfig`)。这样训练通常可以正常进行。如果转换出现问题，请进一步反馈。","https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Fmodel-optimization\u002Fissues\u002F372",{"id":137,"question_zh":138,"answer_zh":139,"source_url":140},15782,"将 QAT 模型转换为 TFLite 后，为什么会出现多余的 Dequantize\u002FCast\u002FQuantize 操作序列？","这个问题通常可以通过以下两种方式解决：1. 升级 TensorFlow 版本至 2.4 或更高，该问题在后续版本中已修复；2. 在转换前静态设置输入形状为具体数值，例如 `(1, width, height, channels)`，而不是使用动态维度。这能避免生成中间多余的操作序列，确保模型与 Edge TPU 编译器兼容。","https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Fmodel-optimization\u002Fissues\u002F431",{"id":142,"question_zh":143,"answer_zh":144,"source_url":145},15783,"MobileNet 模型经过量化感知训练（QAT）后，转换为 TFLite 模型时准确率大幅下降怎么办？","这是一个已知问题，特别是在使用 MobileNetV2\u002FV3 等预训练模型时。解决方法包括：1. 确保使用的是较新版本的 `tensorflow-model-optimization` (如 0.8.0+) 和 TensorFlow；2. 对于 MobileNetV3，可能需要手动调整模型结构以使其对 QAT 友好，例如对 Multiply 层使用 `OnlyOutputQuantizeConfig`，或将 Hard Sigmoid 中的 Add 操作替换为 Rescaling 操作；3. 检查是否严格遵循了官方关于图像分类的 QAT 教程步骤。如果问题依旧，建议报告具体的复现代码以便维护者排查。","https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Fmodel-optimization\u002Fissues\u002F368",{"id":147,"question_zh":148,"answer_zh":149,"source_url":150},15784,"运行官方 mnist_cnn.py 量化示例脚本报错怎么办？","此类错误通常由 TensorFlow 或 TF Model Optimization 的版本不匹配引起。请确保您安装的是与教程对应的稳定版本，而不是 nightly 版本（除非教程明确要求）。建议尝试以下组合：TensorFlow 2.2+ 和 tensorflow-model-optimization 0.3.0+。如果使用 nightly 版本，请确保两者都是同一时间段的 nightly 构建。此外，检查代码中 `tf.lite.TFLiteConverter.from_keras_model` 的调用方式是否符合当前版本文档要求。","https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Fmodel-optimization\u002Fissues\u002F300",{"id":152,"question_zh":153,"answer_zh":154,"source_url":135},15785,"Conv2DTranspose 层目前支持量化感知训练吗？","截至相关讨论时，`Conv2DTranspose` 层尚未添加原生支持。维护者表示会根据用户反馈优先添加该功能。目前的临时解决方案类似于 `UpSampling2D`，可以尝试为其配置 `NoOpQuantizeConfig` 来跳过量化处理，但这取决于具体模型结构是否允许。建议关注官方更新或提交新的 Issue 以推动该功能的支持。",{"id":156,"question_zh":157,"answer_zh":158,"source_url":145},15786,"如何在自定义模型中正确应用量化感知训练以避免精度损失？","在自定义模型中应用 QAT 时，需注意以下几点：1. 仅对适合量化的层（如 Conv2D, Dense）应用量化注解，对不支持的层使用 `NoOpQuantizeConfig`；2. 确保在编译模型后、训练前调用 `tfmot.quantization.keras.quantize_model`；3. 训练完成后，务必使用 `tf.lite.TFLiteConverter` 并启用 `converter.optimizations = [tf.lite.Optimize.DEFAULT]` 进行转换；4. 对于复杂模型（如包含特殊激活函数或操作），可能需要手动调整某些层的量化配置（如使用 `OnlyOutputQuantizeConfig`）以保持精度。",[160,165,170,175,180,185,190,195,200,205,210,215,220,225,230,235,240,245,250,255],{"id":161,"version":162,"summary_zh":163,"released_at":164},90483,"v0.8.0","TFMOT 0.8.0 强制用户使用 Keras 2 版本。\n* 修复结构化剪枝稀疏性笔记本\n* 移除私有 Keras 导入\n* 重定向 TensorFlow 引用\n* 修复损坏的测试\n* 已在 TensorFlow 2.14.1 以及 Python 3 的 nightly 版本上进行测试。","2024-02-08T02:06:46",{"id":166,"version":167,"summary_zh":168,"released_at":169},90484,"v0.7.5","TFMOT 0.7.5 修复了与新版 Keras 的兼容性问题。\n* 修复了函数式模型的序列化代码路径不当的问题。\n* 创建了 keras.utils.generic_utils.to_snake_case 的本地副本。\n* 处理了因 Keras 更新而引发的错误类型。\n* 修复了 TF\u002FKeras 2.13 的兼容性问题。","2023-05-26T02:36:01",{"id":171,"version":172,"summary_zh":173,"released_at":174},90485,"v0.7.4","TFMOT 0.7.4 为 QuantizeConfig 类添加了 from_config 方法，因为新的 Keras 序列化机制强制要求这样做。","2023-04-03T01:49:37",{"id":176,"version":177,"summary_zh":178,"released_at":179},90486,"v0.7.3","TFMOT 0.7.3 新增 remove_input_range 方法，用于在应用量化后移除输入范围。","2022-07-20T20:42:08",{"id":181,"version":182,"summary_zh":183,"released_at":184},90487,"v0.7.2","TFMOT 0.7.2 移除了对 PeepholeLSTMCell 层的支持，该层已在 Keras 中被移除。","2022-03-18T17:04:59",{"id":186,"version":187,"summary_zh":188,"released_at":189},90488,"v0.7.1","TFMOT 0.7.1 修复了 9e4c106267a4a7f61e0d90b0848db15fd063b80e 提交中 tensor_encoding 模块的一个 bug。","2022-02-09T08:07:26",{"id":191,"version":192,"summary_zh":193,"released_at":194},90489,"v0.7.0","TFMOT 0.7.0 新增了量化感知训练（QAT）和剪枝 API 的更新，并新增对结构化（M×N）剪枝的支持。  \nQAT 现在也支持使用 Swish 激活函数的层，并且可以在默认的 8 位量化方案中禁用按轴量化。此外，还新增了将剪枝、QAT 和权重聚类相结合的支持。\n\nKeras 量化 API：\n已在 TensorFlow 2.6.0、2.5.1 以及 nightly 版本上使用 Python 3 进行了测试。\n* 新增 QuantizeWrapperV2 类，默认情况下在 quantize_apply 中会保留权重的顺序。\n* 添加了一个标志，用于在 default8_bit 方案中禁用按轴量化器。\n* 将 Swish 增加为受支持的激活函数。\n\nKeras 剪枝 API：\n已在 TensorFlow 2.6.0、2.5.1 以及 nightly 版本上使用 Python 3 进行了测试。\n* 新增了具有 M×N 稀疏度的结构化剪枝功能。\n\nKeras 聚类 API：\n* 新增对 RNNSimple、LSTM、GRU、StackedRNNCells、PeepholeLSTMCell 和 Bidirectional 层的支持。\n* 更新并修复了保持稀疏性的聚类功能。\n* 针对协同模型优化，新增了量化感知训练的实验性量化方案：\n    - 剪枝-聚类-保持的 QAT：经过剪枝和聚类后的模型可以进行 QAT 训练，同时保持稀疏性和聚类数量不变。\n* 更新了聚类初始化的默认设置，改为 KMEANS_PLUS_PLUS。","2021-09-30T10:12:08",{"id":196,"version":197,"summary_zh":198,"released_at":199},90490,"v0.6.0","发布实际提交：d6556c2a591c928fc8b9b723b4909639193ecf14\n\nTFMOT 0.6.0 为量化感知训练新增了一些功能：\n- 增加了覆盖和继承默认量化方案的支持。\n- 为未标注输入层的已标注量化层添加了输入量化器。\n- 为不同硬件支持的剪枝注册表增加了剪枝策略。\n- 新增了 Conv2DTranspose 支持和 tanh 激活函数。\n\nKeras 量化 API：\n已在 TensorFlow 2.4.2、2.5.0 及 nightly 版本上，使用 Python 3 进行了测试。\n\nKeras 剪枝 API：\n已在 TensorFlow 2.4.2、2.5.0 及 nightly 版本上，使用 Python 3 进行了测试。\n\nKeras 聚类 API：\n- 添加了 *ClusteringSummaries*，用于为 TensorBoard 创建聚类进度的额外输出。\n- 添加了 ClusterableLayer API，以支持对 Keras 自定义层进行聚类。此外，现在还可以对层的偏置进行聚类。\n- 针对协作式模型优化，引入了两种新的量化感知训练实验性量化方案：\n  - Prune Preserve QAT：可对剪枝后的模型进行 QAT 训练，同时保持稀疏性；\n  - Cluster Preserve QAT：可对聚类后的模型进行 QAT 训练，同时保持聚类结构。\n- 在聚类中新增了一项功能：平均梯度聚合，这可以提升部分模型的性能。\n- 更新了文档中的聚类结果说明。\n- 已在 TensorFlow 1.14.0、2.0.0 及 nightly 版本上，并使用 Python 3 进行了测试。","2021-06-18T06:40:44",{"id":201,"version":202,"summary_zh":203,"released_at":204},90491,"v0.5.0","用于发布的实际提交：https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Fmodel-optimization\u002Fcommit\u002F525accb4d3ed3bc6d345143fb0fa1d8faa0ce23d。\n\nTFMOT 0.5.0 为量化感知训练新增了一些功能。QAT 现在支持 Keras 层 `SeparableConv2D` 和 `SeparableConv1D`。此外，还提供了一种新的量化器 `AllValuesQuantizer`，可在范围选择方面提供更大的灵活性。\n\nKeras 聚类 API：\n已在 TensorFlow 1.14.0 和 2.3.0 上使用 Python 3 进行了测试。\n\nKeras 量化 API：\n已在 TensorFlow 2.3.0 上使用 Python 3 进行了测试。\n\nKeras 剪枝 API：\n已在 TensorFlow 1.14.0 和 2.3.0 上使用 Python 3 进行了测试。","2020-09-14T04:46:03",{"id":206,"version":207,"summary_zh":208,"released_at":209},90492,"v0.4.1","TFMOT 0.4.1 修复了一个 bug，该 bug 导致 0.4.0 版本的量化代码自 2020 年 7 月 31 日起在 `tf-nightly` 上运行时会失败。现在，该代码能够在 TensorFlow 的不同版本上正常工作，并且不会因 TensorFlow 核心库中 `smart_cond` 的变更而中断。\n\nKeras 聚类 API：\n\n* 已在 TensorFlow 1.14.0、2.0.0 及 nightly 版本，以及 Python 3 环境下进行了测试。\n\nKeras 量化 API：\n\n* 已在 TensorFlow nightly 版本，以及 Python 3 环境下进行了测试。\n\nKeras 剪枝 API：\n\n* 已在 TensorFlow 1.14.0、2.0.0 及 nightly 版本，以及 Python 3 环境下进行了测试。","2020-08-05T23:38:06",{"id":211,"version":212,"summary_zh":213,"released_at":214},90493,"v0.4.0","TFMOT 0.4.0 is the last release to support Python 2. Python 2 support [officially ended on January 1, 2020](https:\u002F\u002Fwww.python.org\u002Fdev\u002Fpeps\u002Fpep-0373\u002F#update) and [TF 2.1.0](https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Ftensorflow\u002Freleases\u002Ftag\u002Fv2.1.0) was the last release to support Python 2.\r\n\r\nKeras clustering API:\r\n\r\n* New API for weight clustering\r\n* Major Features\r\n  * Support for clustering convolutional (except DepthwiseConv), Dense and other commonly used standard Keras layers\r\n  * Support for different initialization methods for the cluster centroids: density-based, linear, random\r\n  * Fine-tuning of cluster centroids during training\r\n* Tested against TensorFlow 1.14.0, 2.0.0, and nightly, and Python 3.\r\n\r\nKeras quantization API:\r\n\r\n * Bug Fixes and Other Changes\r\n   * Fixed Sequential model support for BatchNorm layers that follow Conv\u002FDepthwiseConv ([issue](https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Fmodel-optimization\u002Fissues\u002F378)).\r\n   * Improved error message for not using `quantize_scope` with custom Keras layers and objects.\r\n * Tested against TensorFlow nightly, and Python 2\u002F3.\r\n\r\nKeras pruning API:\r\n\r\n * Tested against TensorFlow 1.14.0, 2.0.0, and nightly, and Python2\u002F3.","2020-07-28T17:55:10",{"id":216,"version":217,"summary_zh":218,"released_at":219},90494,"v0.3.0","This is the final release of TensorFlow Model Optimization 0.3.0.\r\n\r\nKeras quantization API:\r\n- This includes the initial release of the Keras quantization API. \r\n- Tested against TensorFlow nightly\r\n\r\nKeras pruning API:\r\n- Features:\r\n  - Added support for TensorFlowOpLayer\r\n- Bugs Fixes:\r\n   - Fixed edge case of propagating training=True to BatchNormalization layer when the arg is passed to call\r\n   function instead of relying on tf.keras.backend.learning_phase().\r\n   - Removed usage of _log_metrics API, which is no longer available in TF 2.2.0+.\r\n- Tested against TensorFlow nightly, 1.14.0 and 2.0.0.\r\n\r\n\r\n","2020-04-07T20:30:52",{"id":221,"version":222,"summary_zh":223,"released_at":224},90495,"v0.2.1","This is the final release of TensorFlow Model Optimization 0.2.1.\r\n\r\nThis includes a bug fix with pruning summaries when using TF 1.X.\r\n\r\nIt is tested against TensorFlow 1.14.0 and 2.0.0.","2019-12-18T23:37:57",{"id":226,"version":227,"summary_zh":228,"released_at":229},90496,"v0.2.0","This is the final release of TensorFlow Model Optimization 0.2.0.\r\n\r\nThis includes:\r\n- Pruning TF 2.X support (https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Fmodel-optimization\u002Fissues\u002F172)\r\n- Usability improvements in code and documentation\r\n\r\nIt is tested against TensorFlow 1.14.0 and 2.0.0. ","2019-12-18T01:49:23",{"id":231,"version":232,"summary_zh":233,"released_at":234},90497,"v0.1.3","This is the final release of TensorFlow Model Optimization 0.1.3.\r\n\r\nThis includes the necessary changes for the package to run fine against tf-nightly, after it switches to 2.XX by default. \r\n\r\nIt is tested against TensorFlow 1.14.0, tf-nightly, and tf-nightly-2.0-preview (using tf.compat.v1). ","2019-08-23T22:12:08",{"id":236,"version":237,"summary_zh":238,"released_at":239},90498,"v0.1.2","This is the final release of TensorFlow Model Optimization 0.1.2.\r\n\r\nThis includes the necessary changes for TensorFlow Federated to start depending on TensorFlow Model Optimization.\r\n\r\nIt is tested against TensorFlow 1.14.0.","2019-07-12T20:52:22",{"id":241,"version":242,"summary_zh":243,"released_at":244},90499,"v0.1.1","This is the final release of TensorFlow Model Optimization 0.1.1.\r\n\r\nThis includes a fix for Python 3 compatibility.\r\n\r\nIt is tested against TensorFlow nightly.","2019-05-13T20:59:45",{"id":246,"version":247,"summary_zh":248,"released_at":249},90500,"v0.1.1-rc0","This is the RC0 release candidate of TensorFlow Model Optimization 0.1.1.\r\n\r\nIt is tested against TensorFlow nightly.","2019-05-13T17:15:24",{"id":251,"version":252,"summary_zh":253,"released_at":254},90501,"v0.1.0","This is the final release of TensorFlow Model Optimization 0.1.0.\r\n\r\nThis includes the first release of the model pruning library.\r\n\r\nIt is tested against TensorFlow nightly.","2019-05-09T18:53:07",{"id":256,"version":257,"summary_zh":258,"released_at":259},90502,"v0.1.0-rc1","This is the RC1 release candidate of TensorFlow Model Optimization 0.1.0\r\n\r\nIt is tested against TensorFlow nightly.","2019-05-06T16:25:20"]