[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-qubvel--efficientnet":3,"tool-qubvel--efficientnet":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},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,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},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 真正成长为懂上",144730,2,"2026-04-07T23:26:32",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},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 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107888,"2026-04-06T11:32:50",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":10,"last_commit_at":59,"category_tags":60,"status":17},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[35,15,13,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":76,"owner_location":75,"owner_email":75,"owner_twitter":77,"owner_website":75,"owner_url":78,"languages":79,"stars":92,"forks":93,"last_commit_at":94,"license":95,"difficulty_score":96,"env_os":97,"env_gpu":98,"env_ram":99,"env_deps":100,"category_tags":106,"github_topics":107,"view_count":32,"oss_zip_url":75,"oss_zip_packed_at":75,"status":17,"created_at":116,"updated_at":117,"faqs":118,"releases":151},5363,"qubvel\u002Fefficientnet","efficientnet","Implementation of EfficientNet model. Keras and TensorFlow Keras.","EfficientNet 是一个基于 Keras 和 TensorFlow Keras 框架实现的轻量级卷积神经网络架构。它旨在解决传统深度学习模型在追求高精度时往往伴随参数量巨大、计算资源消耗过高的问题。通过引入自动机器学习（AutoML）和复合缩放方法，EfficientNet 能够在大幅减少参数数量和浮点运算量（FLOPS）的同时，在 ImageNet 等多个数据集上达到业界领先的准确率。例如，其 B7 版本在精度超越前代领先模型的同时，体积更小且推理速度更快；而 B4 版本则在同等计算约束下，显著提升了识别准确率。\n\n这款工具特别适合人工智能开发者、算法研究人员以及需要在移动端或资源受限环境中部署视觉应用的技术团队。无论是进行图像分类、迁移学习研究，还是开发实时识别应用，EfficientNet 都能提供高效的解决方案。其核心亮点在于独特的“复合缩放”策略，能够统一调整网络的深度、宽度和分辨率，从而实现性能与效率的最佳平衡。代码库提供了从 B0 到 B7 多种预训练模型，支持一键加载 ImageNet 等权重，方便用户快速上手并进行推理或微调，是构建高效视觉系统的理想选择。","# EfficientNet Keras (and TensorFlow Keras)\n\n[![PyPI version](https:\u002F\u002Fbadge.fury.io\u002Fpy\u002Fefficientnet.svg)](https:\u002F\u002Fbadge.fury.io\u002Fpy\u002Fefficientnet) [![Downloads](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fqubvel_efficientnet_readme_8dec59ef369c.png)](https:\u002F\u002Fpepy.tech\u002Fproject\u002Fefficientnet\u002Fmonth)\n\nThis repository contains a Keras (and TensorFlow Keras) reimplementation of **EfficientNet**, a lightweight convolutional neural network architecture achieving the [state-of-the-art accuracy with an order of magnitude fewer parameters and FLOPS](https:\u002F\u002Farxiv.org\u002Fabs\u002F1905.11946), on both ImageNet and\nfive other commonly used transfer learning datasets.\n\nThe codebase is heavily inspired by the [TensorFlow implementation](https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Ftpu\u002Ftree\u002Fmaster\u002Fmodels\u002Fofficial\u002Fefficientnet).\n\n## Important!\nThere was a huge library update on **24th of July 2019**. Now efficientnet works with both frameworks: `keras` and `tensorflow.keras`.\nIf you have models trained before that date, please use efficientnet of version 0.0.4 to load them. You can roll back using `pip install -U efficientnet==0.0.4` or `pip install -U git+https:\u002F\u002Fgithub.com\u002Fqubvel\u002Fefficientnet\u002Ftree\u002Fv0.0.4`.\n\n## Table of Contents\n\n 1. [About EfficientNet Models](#about-efficientnet-models)\n 2. [Examples](#examples)\n 3. [Models](#models)\n 4. [Installation](#installation)\n 5. [Frequently Asked Questions](#frequently-asked-questions)\n 6. [Acknowledgements](#acknowledgements)\n\n## About EfficientNet Models\n\nEfficientNets rely on AutoML and compound scaling to achieve superior performance without compromising resource efficiency. The [AutoML Mobile framework](https:\u002F\u002Fai.googleblog.com\u002F2018\u002F08\u002Fmnasnet-towards-automating-design-of.html) has helped develop a mobile-size baseline network, **EfficientNet-B0**, which is then improved by the compound scaling method  to obtain EfficientNet-B1 to B7.\n\n\u003Ctable border=\"0\">\n\u003Ctr>\n    \u003Ctd>\n    \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fqubvel_efficientnet_readme_8e6e4c13294e.png\" width=\"100%\" \u002F>\n    \u003C\u002Ftd>\n    \u003Ctd>\n    \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fqubvel_efficientnet_readme_7f3fa002f263.png\", width=\"90%\" \u002F>\n    \u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftable>\n\nEfficientNets achieve state-of-the-art accuracy on ImageNet with an order of magnitude better efficiency:\n\n* In high-accuracy regime, EfficientNet-B7 achieves the state-of-the-art 84.4% top-1 \u002F 97.1% top-5 accuracy on ImageNet with 66M parameters and 37B FLOPS. At the same time, the model is 8.4x smaller and 6.1x faster on CPU inference than the former leader, [Gpipe](https:\u002F\u002Farxiv.org\u002Fabs\u002F1811.06965).\n\n* In middle-accuracy regime, EfficientNet-B1 is 7.6x smaller and 5.7x faster on CPU inference than [ResNet-152](https:\u002F\u002Farxiv.org\u002Fabs\u002F1512.03385), with similar ImageNet accuracy.\n\n* Compared to the widely used [ResNet-50](https:\u002F\u002Farxiv.org\u002Fabs\u002F1512.03385), EfficientNet-B4 improves the top-1 accuracy from 76.3% of ResNet-50 to 82.6% (+6.3%), under similar FLOPS constraints.\n\n## Examples\n\n* *Initializing the model*:\n\n```python\n# models can be build with Keras or Tensorflow frameworks\n# use keras and tfkeras modules respectively\n# efficientnet.keras \u002F efficientnet.tfkeras\nimport efficientnet.keras as efn \n\nmodel = efn.EfficientNetB0(weights='imagenet')  # or weights='noisy-student'\n\n```\n\n* *Loading the pre-trained weights*:\n\n```python\n# model use some custom objects, so before loading saved model\n# import module your network was build with\n# e.g. import efficientnet.keras \u002F import efficientnet.tfkeras\nimport efficientnet.tfkeras\nfrom tensorflow.keras.models import load_model\n\nmodel = load_model('path\u002Fto\u002Fmodel.h5')\n```\n\nSee the complete example of loading the model and making an inference in the Jupyter notebook [here](https:\u002F\u002Fgithub.com\u002Fqubvel\u002Fefficientnet\u002Fblob\u002Fmaster\u002Fexamples\u002Finference_example.ipynb).\n\n## Models\n\nThe performance of each model variant using the pre-trained weights converted from checkpoints provided by the authors is as follows:\n\n| Architecture   | @top1* Imagenet| @top1* Noisy-Student| \n| -------------- | :----: |:---:|\n| EfficientNetB0 | 0.772  |0.788|\n| EfficientNetB1 | 0.791  |0.815|\n| EfficientNetB2 | 0.802  |0.824|\n| EfficientNetB3 | 0.816  |0.841|\n| EfficientNetB4 | 0.830  |0.853|\n| EfficientNetB5 | 0.837  |0.861|\n| EfficientNetB6 | 0.841  |0.864|\n| EfficientNetB7 | 0.844  |0.869|\n\n**\\*** - topK accuracy score for converted models (imagenet `val` set)\n\n## Installation\n\n### Requirements\n\n* `Keras >= 2.2.0` \u002F `TensorFlow >= 1.12.0`\n* `keras_applications >= 1.0.7`\n* `scikit-image`\n\n### Installing from the source\n\n```bash\n$ pip install -U git+https:\u002F\u002Fgithub.com\u002Fqubvel\u002Fefficientnet\n```\n\n### Installing from PyPI\n\nPyPI stable release\n\n```bash\n$ pip install -U efficientnet\n```\n\nPyPI latest release (with keras and tf.keras support)\n\n```bash\n$ pip install -U --pre efficientnet\n```\n\n## Frequently Asked Questions\n\n* **How can I convert the original TensorFlow checkpoints to Keras HDF5?**\n\nPick the target directory (like `dist`) and run the [converter script](.\u002Fscripts) from the repo directory as follows:\n\n```bash\n$ .\u002Fscripts\u002Fconvert_efficientnet.sh --target_dir dist\n```\n\nYou can also optionally create the virtual environment with all the dependencies installed by adding `--make_venv=true` and operate in a self-destructing temporary location instead of the target directory by setting `--tmp_working_dir=true`.\n\n## Acknowledgements\nI would like to thanks community members who actively contribute to this repository:\n\n1) Sasha Illarionov ([@sdll](https:\u002F\u002Fgithub.com\u002Fsdll)) for preparing automated script for weights conversion\n2) Björn Barz ([@Callidior](https:\u002F\u002Fgithub.com\u002FCallidior)) for model code adaptation for keras and tensorflow.keras frameworks \n","# EfficientNet Keras（以及 TensorFlow Keras）\n\n[![PyPI version](https:\u002F\u002Fbadge.fury.io\u002Fpy\u002Fefficientnet.svg)](https:\u002F\u002Fbadge.fury.io\u002Fpy\u002Fefficientnet) [![Downloads](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fqubvel_efficientnet_readme_8dec59ef369c.png)](https:\u002F\u002Fpepy.tech\u002Fproject\u002Fefficientnet\u002Fmonth)\n\n本仓库包含 **EfficientNet** 的 Keras（及 TensorFlow Keras）重新实现版本。EfficientNet 是一种轻量级卷积神经网络架构，在 ImageNet 以及其他五个常用的迁移学习数据集上，均以少一个数量级的参数和 FLOPS 实现了 [最先进的准确率](https:\u002F\u002Farxiv.org\u002Fabs\u002F1905.11946)。\n\n该代码库深受 [TensorFlow 实现](https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Ftpu\u002Ftree\u002Fmaster\u002Fmodels\u002Fofficial\u002Fefficientnet) 的启发。\n\n## 重要提示！\n**2019年7月24日** 进行了一次重大库更新。现在 efficientnet 同时支持 `keras` 和 `tensorflow.keras` 两个框架。如果您在该日期之前训练过模型，请使用 efficientnet 0.0.4 版本来加载它们。您可以通过运行 `pip install -U efficientnet==0.0.4` 或 `pip install -U git+https:\u002F\u002Fgithub.com\u002Fqubvel\u002Fefficientnet\u002Ftree\u002Fv0.0.4` 来回退到旧版本。\n\n## 目录\n\n1. 关于 EfficientNet 模型\n2. 示例\n3. 模型\n4. 安装\n5. 常见问题解答\n6. 致谢\n\n## 关于 EfficientNet 模型\n\nEfficientNets 借助 AutoML 和复合缩放技术，在不牺牲资源效率的前提下实现了卓越性能。借助 [AutoML Mobile 框架](https:\u002F\u002Fai.googleblog.com\u002F2018\u002F08\u002Fmnasnet-towards-automating-design-of.html)，开发出了一种移动端大小的基础网络 **EfficientNet-B0**，随后通过复合缩放方法进一步优化，得到了 EfficientNet-B1 到 B7。\n\n\u003Ctable border=\"0\">\n\u003Ctr>\n    \u003Ctd>\n    \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fqubvel_efficientnet_readme_8e6e4c13294e.png\" width=\"100%\" \u002F>\n    \u003C\u002Ftd>\n    \u003Ctd>\n    \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fqubvel_efficientnet_readme_7f3fa002f263.png\", width=\"90%\" \u002F>\n    \u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftable>\n\nEfficientNets 在 ImageNet 上以高一个数量级的效率实现了最先进的准确率：\n\n* 在高准确率区间，EfficientNet-B7 在 ImageNet 上达到了 84.4% top-1 \u002F 97.1% top-5 的最先进准确率，仅需 66M 参数和 37B FLOPS。与此同时，该模型在 CPU 推理速度上比之前的领先者 [Gpipe](https:\u002F\u002Farxiv.org\u002Fabs\u002F1811.06965) 快 6.1 倍，且体积小 8.4 倍。\n\n* 在中等准确率区间，EfficientNet-B1 在 CPU 推理速度上比 [ResNet-152](https:\u002F\u002Farxiv.org\u002Fabs\u002F1512.03385) 快 5.7 倍，体积小 7.6 倍，同时保持相似的 ImageNet 准确率。\n\n* 与广泛使用的 [ResNet-50](https:\u002F\u002Farxiv.org\u002Fabs\u002F1512.03385) 相比，EfficientNet-B4 在相近的 FLOPS 约束下，将 top-1 准确率从 ResNet-50 的 76.3% 提升至 82.6%（提升 6.3%）。\n\n## 示例\n\n* *初始化模型*：\n\n```python\n# 模型可以使用 Keras 或 TensorFlow 框架构建\n# 分别使用 keras 和 tfkeras 模块\n# efficientnet.keras \u002F efficientnet.tfkeras\nimport efficientnet.keras as efn \n\nmodel = efn.EfficientNetB0(weights='imagenet')  # 或 weights='noisy-student'\n\n```\n\n* *加载预训练权重*：\n\n```python\n# 模型使用了一些自定义对象，因此在加载保存的模型之前\n# 需要导入构建网络时所用的模块\n# 例如 import efficientnet.keras \u002F import efficientnet.tfkeras\nimport efficientnet.tfkeras\nfrom tensorflow.keras.models import load_model\n\nmodel = load_model('path\u002Fto\u002Fmodel.h5')\n```\n\n完整的模型加载与推理示例可在 Jupyter 笔记本 [这里](https:\u002F\u002Fgithub.com\u002Fqubvel\u002Fefficientnet\u002Fblob\u002Fmaster\u002Fexamples\u002Finference_example.ipynb) 查看。\n\n## 模型\n\n各模型变体使用作者提供的检查点转换而来的预训练权重时的表现如下：\n\n| 架构       | @top1* Imagenet| @top1* Noisy-Student| \n| -------------- | :----: |:---:|\n| EfficientNetB0 | 0.772  |0.788|\n| EfficientNetB1 | 0.791  |0.815|\n| EfficientNetB2 | 0.802  |0.824|\n| EfficientNetB3 | 0.816  |0.841|\n| EfficientNetB4 | 0.830  |0.853|\n| EfficientNetB5 | 0.837  |0.861|\n| EfficientNetB6 | 0.841  |0.864|\n| EfficientNetB7 | 0.844  |0.869|\n\n**\\*** - 转换后模型的 topK 准确率分数（imagenet `val` 集合）\n\n## 安装\n\n### 要求\n\n* `Keras >= 2.2.0` \u002F `TensorFlow >= 1.12.0`\n* `keras_applications >= 1.0.7`\n* `scikit-image`\n\n### 从源码安装\n\n```bash\n$ pip install -U git+https:\u002F\u002Fgithub.com\u002Fqubvel\u002Fefficientnet\n```\n\n### 从 PyPI 安装\n\nPyPI 稳定版\n\n```bash\n$ pip install -U efficientnet\n```\n\nPyPI 最新版（支持 keras 和 tf.keras）\n\n```bash\n$ pip install -U --pre efficientnet\n```\n\n## 常见问题解答\n\n* **如何将原始 TensorFlow 检查点转换为 Keras HDF5 格式？**\n\n选择目标目录（如 `dist`），然后从仓库目录运行 [转换脚本](.\u002Fscripts) 如下：\n\n```bash\n$ .\u002Fscripts\u002Fconvert_efficientnet.sh --target_dir dist\n```\n\n您还可以选择创建一个已安装所有依赖项的虚拟环境，只需添加 `--make_venv=true`；或者通过设置 `--tmp_working_dir=true`，在临时目录而非目标目录中进行操作。\n\n## 致谢\n我要感谢积极为本仓库做出贡献的社区成员：\n\n1) Sasha Illarionov ([@sdll](https:\u002F\u002Fgithub.com\u002Fsdll)) 为权重转换准备了自动化脚本。\n2) Björn Barz ([@Callidior](https:\u002F\u002Fgithub.com\u002FCallidior)) 对模型代码进行了适配，使其兼容 keras 和 tensorflow.keras 框架。","# EfficientNet 快速上手指南\n\nEfficientNet 是一系列轻量级卷积神经网络架构，通过复合缩放方法在大幅减少参数量和计算量（FLOPS）的同时，实现了 ImageNet 等数据集上的最先进精度。本库提供了基于 Keras 和 TensorFlow Keras 的实现。\n\n## 环境准备\n\n在开始之前，请确保您的开发环境满足以下要求：\n\n*   **Python 版本**：建议 Python 3.6+\n*   **核心框架**：\n    *   `Keras >= 2.2.0` 或 `TensorFlow >= 1.12.0` (支持 `tf.keras`)\n*   **依赖库**：\n    *   `keras_applications >= 1.0.7`\n    *   `scikit-image`\n\n> **注意**：该库同时支持原生 `keras` 和 `tensorflow.keras`。自 2019 年 7 月 24 日更新后，两者均可使用。若您需加载此日期前训练的旧模型，请使用版本 `0.0.4`。\n\n## 安装步骤\n\n您可以选择通过 PyPI 直接安装，或从源码安装。国内用户建议使用清华或阿里镜像源以加速下载。\n\n### 方式一：通过 PyPI 安装（推荐）\n\n安装稳定版：\n```bash\npip install -U efficientnet -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n安装包含最新特性（支持 keras 和 tf.keras）的预发布版：\n```bash\npip install -U --pre efficientnet -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n### 方式二：从源码安装\n\n如果您需要最新的代码提交：\n```bash\npip install -U git+https:\u002F\u002Fgithub.com\u002Fqubvel\u002Fefficientnet -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n## 基本使用\n\n以下是加载预训练模型并进行推理的最简示例。\n\n### 1. 初始化模型\n\n您可以根据需求导入 `efficientnet.keras` 或 `efficientnet.tfkeras`。以下示例展示如何加载带有 ImageNet 预训练权重的 EfficientNet-B0 模型：\n\n```python\n# 根据您使用的框架选择导入模块\n# 如果使用原生 keras: import efficientnet.keras as efn\n# 如果使用 tensorflow.keras: import efficientnet.tfkeras as efn\nimport efficientnet.keras as efn \n\n# 创建模型，weights 可选 'imagenet' 或 'noisy-student'\nmodel = efn.EfficientNetB0(weights='imagenet')\n```\n\n### 2. 加载已保存的模型\n\n如果您需要加载之前保存的 `.h5` 模型文件，请务必先导入构建该模型时所使用的相同模块，以确保自定义对象被正确注册：\n\n```python\n# 假设模型是使用 tfkeras 构建并保存的\nimport efficientnet.tfkeras\nfrom tensorflow.keras.models import load_model\n\n# 加载模型\nmodel = load_model('path\u002Fto\u002Fmodel.h5')\n```\n\n加载完成后，即可使用标准的 Keras\u002FTensorFlow 流程进行预测（`model.predict`）或微调训练。","某初创医疗科技公司正在开发一款部署在便携式超声设备上的肺结节辅助筛查系统，需要在有限的嵌入式算力下实现高精度的图像分类。\n\n### 没有 efficientnet 时\n- **模型体积过大**：采用传统的 ResNet-50 架构导致模型参数量高达数千万，无法装入设备仅有的 256MB 内存中，频繁出现溢出崩溃。\n- **推理延迟过高**：在设备的 ARM CPU 上运行复杂网络时，单张图像分析耗时超过 800 毫秒，医生操作时感到明显的卡顿，影响诊疗流畅度。\n- **精度与效率难兼得**：为了强行压缩模型以适应硬件，团队不得不大幅削减网络层数，导致结节识别准确率从 76% 骤降至 65%，漏诊风险激增。\n- **能耗发热严重**：高浮点运算量（FLOPS）使设备电池在半小时内耗尽，且芯片持续高温触发降频保护，进一步拖慢处理速度。\n\n### 使用 efficientnet 后\n- **极致轻量化**：切换至 EfficientNet-B0 后，参数量减少了 8.4 倍，模型轻松载入内存，运行稳定不再崩溃。\n- **实时响应流畅**：得益于复合缩放机制，CPU 推理速度提升了 5.7 倍，单张图像分析仅需 140 毫秒，实现了真正的实时反馈。\n- **精度显著跃升**：在同等计算约束下，top-1 准确率反而提升了 6.3%，达到 82.6%，有效降低了漏诊率，满足了临床辅助标准。\n- **低功耗长续航**：大幅降低的 FLOPS 让设备单次充电可连续工作 4 小时以上，且机身保持温凉，确保了野外巡诊的可靠性。\n\nefficientnet 通过 AutoML 驱动的复合缩放技术，完美解决了边缘设备在资源受限场景下“既要高精度又要低延迟”的核心矛盾。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fqubvel_efficientnet_8e6e4c13.png","qubvel","Pavel Iakubovskii","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fqubvel_5c987df0.png",null,"AI Engineer @ Praktika.ai | ex HuggingFace 🤗","qubvelx","https:\u002F\u002Fgithub.com\u002Fqubvel",[80,84,88],{"name":81,"color":82,"percentage":83},"Python","#3572A5",75.8,{"name":85,"color":86,"percentage":87},"Shell","#89e051",24,{"name":89,"color":90,"percentage":91},"Dockerfile","#384d54",0.3,2100,463,"2026-04-01T01:04:51","Apache-2.0",1,"","未说明（支持 CPU 推理，文中提及比 Gpipe 在 CPU 上快 6.1 倍）","未说明",{"notes":101,"python":99,"dependencies":102},"该库同时支持原生 Keras 和 TensorFlow Keras (tf.keras)。2019 年 7 月 24 日之后的版本架构发生重大更新，若需加载此前训练的模型，需回退至 0.0.4 版本。提供 EfficientNet-B0 到 B7 多种预训练权重（ImageNet 及 Noisy-Student）。可通过脚本将原始 TensorFlow checkpoints 转换为 Keras HDF5 格式。",[103,104,105],"Keras>=2.2.0 或 TensorFlow>=1.12.0","keras_applications>=1.0.7","scikit-image",[14,15],[108,109,64,110,111,112,113,114,115],"classification","imagenet","pretrained-models","image-classification","efficient","nasnetmobile","mobilenet","deep-learning","2026-03-27T02:49:30.150509","2026-04-08T12:59:52.880483",[119,124,129,134,138,143,147],{"id":120,"question_zh":121,"answer_zh":122,"source_url":123},24328,"该模型支持训练吗？还是仅支持推理？","该模型既支持推理也支持训练。\n\n注意事项：\n1. 确保库是最新版本：pip install -U efficientnet\n2. 关于 'drop_connect_rate'：如果在保存训练好的模型时遇到相关错误，可以尝试在不使用 drop connect 的情况下训练。原始实现中对于训练时是否使用了 drop connect 尚不明确，因此禁用它通常不会影响最终效果。","https:\u002F\u002Fgithub.com\u002Fqubvel\u002Fefficientnet\u002Fissues\u002F1",{"id":125,"question_zh":126,"answer_zh":127,"source_url":128},24324,"加载模型时遇到 'ValueError: Unknown activation function: swish' 错误怎么办？","这是因为加载模型时未注册 'swish' 激活函数。解决方法是在加载模型前导入 efficientnet 库，或者手动定义 custom_objects。\n\n方法一（推荐）：\n在加载模型前简单导入即可：\nimport efficientnet.keras\nmodel = load_model('your_model.h5')\n\n方法二（手动定义）：\n如果不安装 efficientnet，可以使用以下代码手动注册：\nfrom tensorflow.keras.models import load_model\nfrom tensorflow import nn\n\nclass FixedDropout(Dropout):\n    def _get_noise_shape(self, inputs):\n        if self.noise_shape is None:\n            return self.noise_shape\n        return tuple([shape(inputs)[i] if sh is None else sh for i, sh in enumerate(self.noise_shape)])\n\ncustomObjects = {\n    'swish': nn.swish,\n    'FixedDropout': FixedDropout\n}\nmodel = load_model('model.h5', custom_objects=customObjects)","https:\u002F\u002Fgithub.com\u002Fqubvel\u002Fefficientnet\u002Fissues\u002F62",{"id":130,"question_zh":131,"answer_zh":132,"source_url":133},24325,"加载保存的模型时遇到 'ValueError: Unknown layer: FixedDropout' 错误如何解决？","该错误是因为模型中包含自定义的 'FixedDropout' 层，加载时需要将其传入 custom_objects 参数。\n\n解决方案：\n1. 确保已导入 efficientnet.tfkeras 或 efficientnet.keras，这通常会自动注册该层。\n2. 如果仍然报错，需手动定义 FixedDropout 类并传入 load_model：\n\nfrom tensorflow.keras.layers import Dropout\nfrom tensorflow.keras.backend import shape\n\nclass FixedDropout(Dropout):\n    def _get_noise_shape(self, inputs):\n        if self.noise_shape is None:\n            return self.noise_shape\n        return tuple([shape(inputs)[i] if sh is None else sh for i, sh in enumerate(self.noise_shape)])\n\nmodel = load_model('path\u002Fto\u002Fmodel.h5', custom_objects={'FixedDropout': FixedDropout})","https:\u002F\u002Fgithub.com\u002Fqubvel\u002Fefficientnet\u002Fissues\u002F77",{"id":135,"question_zh":136,"answer_zh":137,"source_url":133},24326,"如何将 EfficientNet 模型转换为 TFLite 格式？","转换失败通常是因为模型中包含不支持的层（如 FixedDropout）或激活函数（swish）。\n\n维护者建议的变通方案：\n1. Fork 仓库代码。\n2. 移除模型中的 Dropout 层（因为推理阶段不使用 Dropout，且该层无权重，移除不影响结果）。\n3. 从训练好的模型中加载权重到新模型。\n4. 验证新旧模型输出一致后，再尝试转换。\n\n注意：如果模型能正确反序列化（加载），但转换失败，则是转换器（converter）的问题，需确保 custom_objects 中包含了 'swish' 和 'FixedDropout'。",{"id":139,"question_zh":140,"answer_zh":141,"source_url":142},24327,"如何在 tf.keras 中使用 EfficientNet？遇到 'No module named efficientnet.tfkeras' 怎么办？","确保使用正确的安装命令和 Python 版本。\n\n1. 安装命令：\npip install -U git+https:\u002F\u002Fgithub.com\u002Fqubvel\u002Fefficientnet\n\n2. 环境要求：\n必须使用 Python 3.0 及以上版本（Python 2.7 已不再支持）。\n\n3. 使用方法：\n导入时使用：\nimport efficientnet.tfkeras\nmodel = efficientnet.tfkeras.EfficientNetB0()\n\n如果在 Colab 或其他环境中仍报错，请检查是否安装了旧版本，建议卸载后重新通过 git 源安装最新版。","https:\u002F\u002Fgithub.com\u002Fqubvel\u002Fefficientnet\u002Fissues\u002F48",{"id":144,"question_zh":145,"answer_zh":146,"source_url":142},24329,"Keras 版本和 tf.keras 版本的模型权重是否兼容？","是的，权重是兼容的。\n\n虽然 Keras 和 tf.keras 在实现细节上可能有所不同（例如自定义 Dropout 层的处理），但在推理阶段它们产生的结果是相同的。你可以将在一种框架下训练的权重加载到另一种框架的模型结构中用于推理。",{"id":148,"question_zh":149,"answer_zh":150,"source_url":133},24330,"加载模型时出现优化器状态加载错误（WARNING: Error in loading the saved optimizer state）怎么办？","这是一个已知现象，通常不影响模型推理。\n\n警告信息表明保存的优化器状态无法加载，模型将使用新鲜初始化的优化器启动。如果你只需要进行推理（inference），可以忽略此警告。如果需要继续训练，可能需要重新编译模型并设置新的优化器。确保在加载模型前已正确导入 efficientnet 模块以识别自定义层。",[152,157,162,167,172,177,182,187],{"id":153,"version":154,"summary_zh":155,"released_at":156},153843,"v1.1.1","# 修复\r\n - 修复 `get_custom_objects()` (#128)","2020-09-15T16:22:45",{"id":158,"version":159,"summary_zh":160,"released_at":161},153844,"v1.1.0","## 更新\n - 为 b0 至 b7 模型添加 Noisy Student 权重（`weights=\"noisy-student\"`)","2020-02-28T13:16:59",{"id":163,"version":164,"summary_zh":165,"released_at":166},153845,"v1.0.0","EfficientNet 稳定版发布\n- 支持 Keras 和 tf.keras\n- 提供 b0-b7 模型的 ImageNet 预训练权重","2019-10-04T10:08:33",{"id":168,"version":169,"summary_zh":170,"released_at":171},153846,"v1.0.0b3","1) 添加了 B5 和 B6 的权重（感谢 @Callidior）  \n2) 权重已更新为更优的版本，并使用 AutoAugment 进行了训练（再次感谢 @Callidior）","2019-08-08T15:36:33",{"id":173,"version":174,"summary_zh":175,"released_at":176},153847,"v1.0.0b2","修复 `swish` 自定义对象反序列化","2019-08-05T08:40:12",{"id":178,"version":179,"summary_zh":180,"released_at":181},153848,"v1.0.0b1","### 改进：\n\n1) 支持 `keras` 和 `tf.keras` 框架\n2) 引入 `keras_applications` 中的预处理功能\n3) 减少自定义对象的数量\n4) 增加测试\n\n### 变更\n1) API 变更（模型导入现位于框架模块下）\n\n### 注意事项\n1) 之前训练好的模型与当前版本不兼容，请使用 `model.load_weights` 函数，或回退到先前版本 v0.0.4。","2019-08-02T11:42:36",{"id":183,"version":184,"summary_zh":185,"released_at":186},153849,"v0.0.4","添加了 B4、B5 模型的 `input_tensor` 参数和权重。","2019-07-16T13:55:04",{"id":188,"version":189,"summary_zh":190,"released_at":191},153850,"v0.0.1","\r\n","2019-05-31T08:40:45"]