[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-zhmiao--OpenLongTailRecognition-OLTR":3,"tool-zhmiao--OpenLongTailRecognition-OLTR":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":77,"owner_email":78,"owner_twitter":75,"owner_website":75,"owner_url":79,"languages":80,"stars":85,"forks":86,"last_commit_at":87,"license":88,"difficulty_score":89,"env_os":90,"env_gpu":91,"env_ram":90,"env_deps":92,"category_tags":97,"github_topics":98,"view_count":32,"oss_zip_url":75,"oss_zip_packed_at":75,"status":17,"created_at":107,"updated_at":108,"faqs":109,"releases":140},5328,"zhmiao\u002FOpenLongTailRecognition-OLTR","OpenLongTailRecognition-OLTR","Pytorch implementation for \"Large-Scale Long-Tailed Recognition in an Open World\" (CVPR 2019 ORAL)","OpenLongTailRecognition-OLTR 是一个基于 PyTorch 开发的开源项目，旨在复现 CVPR 2019 口头报告论文《开放世界中的大规模长尾识别》的核心算法。它主要解决计算机视觉领域中常见的“长尾分布”难题：在现实数据集中，少数类别拥有海量样本，而绝大多数类别样本稀缺，导致传统模型对稀有类别的识别效果极差。此外，OLTR 还引入了“开放世界”设定，使模型不仅能分类已知类别，还能有效检测并拒绝未知的陌生样本，提升了系统在复杂环境下的鲁棒性。\n\n该工具特别适合从事计算机视觉算法研究的研究人员、需要处理不平衡数据集的开发者，以及希望探索前沿识别技术的工程师使用。其核心技术亮点在于创新地结合了记忆增强机制与动态注意力模块（Modulated Attention），通过两阶段训练策略，显著平衡了头部丰富类别与尾部稀缺类别的学习效果，同时保持了对未知类别的敏感度。项目提供了完整的训练配置、预训练权重及针对 ImageNet-LT 和 Places-LT 数据集的详细复现指南，帮助用户快速上手并验证学术成果，是深入理解长尾识别与开放集检测的重要参考实现。","# Large-Scale Long-Tailed Recognition in an Open World\n\n[[Project]](https:\u002F\u002Fliuziwei7.github.io\u002Fprojects\u002FLongTail.html) [[Paper]](https:\u002F\u002Farxiv.org\u002Fabs\u002F1904.05160) [[Blog]](https:\u002F\u002Fbair.berkeley.edu\u002Fblog\u002F2019\u002F05\u002F13\u002Foltr\u002F)\n\n## Overview\n`Open Long-Tailed Recognition (OLTR)` is the author's re-implementation of the long-tail recognizer described in:  \n\"[Large-Scale Long-Tailed Recognition in an Open World](https:\u002F\u002Farxiv.org\u002Fabs\u002F1904.05160)\"   \n[Ziwei Liu](https:\u002F\u002Fliuziwei7.github.io\u002F)\u003Csup>\\*\u003C\u002Fsup>,&nbsp; [Zhongqi Miao](https:\u002F\u002Fgithub.com\u002Fzhmiao)\u003Csup>\\*\u003C\u002Fsup>,&nbsp; [Xiaohang Zhan](https:\u002F\u002Fxiaohangzhan.github.io\u002F),&nbsp; [Jiayun Wang](http:\u002F\u002Fpwang.pw\u002F),&nbsp; [Boqing Gong](http:\u002F\u002Fboqinggong.info\u002F),&nbsp; [Stella X. Yu](https:\u002F\u002Fwww1.icsi.berkeley.edu\u002F~stellayu\u002F)&nbsp; (CUHK & UC Berkeley \u002F ICSI)&nbsp; \nin IEEE Conference on Computer Vision and Pattern Recognition (CVPR) 2019, **Oral Presentation**\n\n\u003Cimg src='https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fzhmiao_OpenLongTailRecognition-OLTR_readme_2ba455013d73.png' width=800>\n\nFurther information please contact [Zhongqi Miao](mailto:zhongqi.miao@berkeley.edu) and [Ziwei Liu](https:\u002F\u002Fliuziwei7.github.io\u002F).\n\n## Update notifications\n* __03\u002F04\u002F2020:__ We changed all valirables named `selfatt` to `modulatedatt` so that the attention module can be properly trained in the second stage for Places-LT. ImageNet-LT does not have this problem since the weights are not freezed. We have updated new results using fixed code, which is still better than reported. The weights are also updated. Thanks!\n* __02\u002F11\u002F2020:__ We updated configuration files for `Places_LT` dataset. The current results are a little bit higher than reported, even with updated F-measure calculation. One important thing to be considered is that we have unfrozon the model weights for the first stage training of `Places-LT`, which means it is not suitable for single-GPU training in most cases (we used 4 1080ti in our implementation). However, for the second stage, since the memory and center loss do not support multi-GPUs currently, please switch back to single-GPU training. Thank you very much!\n* __01\u002F29\u002F2020:__ We updated the `False Positive` calculation in `util.py` so that the numbers are normal again. The reported F-measure numbers in the paper might be a little bit higher than actual numbers for all baselines. We will update it as soon as possible. We have updated the new F-measure number in the following table. Thanks.\n* __12\u002F19\u002F2019:__ Updated modules with 'clone()' methods and set `use_fc` in ImageNet-LT stage-1 config to `False`. Currently, the results for ImageNet-LT is comparable to reported numbers in the paper (a little bit better), and the reproduced results are updated below. We also found the bug in Places-LT. We will update the code and reproduced results as soon as possible. \n* __08\u002F05\u002F2019:__ Fixed a bug in `utils.py`. Update re-implemented ImageNet-LT weights at the end of this page.\n* __05\u002F02\u002F2019:__ Fixed a bug in `run_network.py` so the models train properly. Update configuration file for Imagenet-LT stage 1 training so that the results from the paper can be reproduced.  \n\n## Requirements\n* [PyTorch](https:\u002F\u002Fpytorch.org\u002F) (version >= 0.4.1)\n* [scikit-learn](https:\u002F\u002Fscikit-learn.org\u002Fstable\u002F)\n\n## Data Preparation\n\n\u003Cimg src='https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fzhmiao_OpenLongTailRecognition-OLTR_readme_0a47d4caed86.png' width=800>\n\nNOTE: Places-LT dataset have been updated since the first version. Please download again if you have the first version. \n\n- First, please download the [ImageNet_2014](http:\u002F\u002Fimage-net.org\u002Findex) and [Places_365](http:\u002F\u002Fplaces2.csail.mit.edu\u002Fdownload.html) (256x256 version).\nPlease also change the `data_root` in `main.py` accordingly.\n\n- Next, please download ImageNet-LT and Places-LT from [here](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Fu\u002F1\u002Ffolders\u002F1j7Nkfe6ZhzKFXePHdsseeeGI877Xu1yf). Please put the downloaded files into the `data` directory like this:\n```\ndata\n  |--ImageNet_LT\n    |--ImageNet_LT_open\n    |--ImageNet_LT_train.txt\n    |--ImageNet_LT_test.txt\n    |--ImageNet_LT_val.txt\n    |--ImageNet_LT_open.txt\n  |--Places_LT\n    |--Places_LT_open\n    |--Places_LT_train.txt\n    |--Places_LT_test.txt\n    |--Places_LT_val.txt\n    |--Places_LT_open.txt\n```\n\n## Download Caffe Pre-trained Models for Places_LT Stage_1 Training\n* Caffe pretrained ResNet152 weights can be downloaded from [here](https:\u002F\u002Fdrive.google.com\u002Fuc?export=download&id=0B7fNdx_jAqhtckNGQ2FLd25fa3c), and save the file to `.\u002Flogs\u002Fcaffe_resnet152.pth`\n\n## Getting Started (Training & Testing)\n\n\u003Cimg src='https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fzhmiao_OpenLongTailRecognition-OLTR_readme_1a8abb6e758b.png' width=800>\n\n### ImageNet-LT\n- Stage 1 training:\n```\npython main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_1.py\n```\n- Stage 2 training:\n```\npython main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_2_meta_embedding.py\n```\n- Close-set testing:\n```\npython main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_2_meta_embedding.py --test\n```\n- Open-set testing (thresholding)\n```\npython main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_2_meta_embedding.py --test_open\n```\n- Test on stage 1 model\n```\npython main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_1.py --test\n```\n\n### Places-LT\n- Stage 1 training (At this stage, multi-GPU might be necessary since we are finetuning a ResNet-152.):\n```\npython main.py --config .\u002Fconfig\u002FPlaces_LT\u002Fstage_1.py\n```\n- Stage 2 training (At this stage, only single-GPU is supported, please switch back to single-GPU training.):\n```\npython main.py --config .\u002Fconfig\u002FPlaces_LT\u002Fstage_2_meta_embedding.py\n```\n- Close-set testing:\n```\npython main.py --config .\u002Fconfig\u002FPlaces_LT\u002Fstage_2_meta_embedding.py --test\n```\n- Open-set testing (thresholding)\n```\npython main.py --config .\u002Fconfig\u002FPlaces_LT\u002Fstage_2_meta_embedding.py --test_open\n```\n\n## Reproduced Benchmarks and Model Zoo (Updated on 03\u002F05\u002F2020)\n\n### ImageNet-LT Open-Set Setting\n\n|   Backbone  |    Many-Shot   |  Medium-Shot  |   Few-Shot  |  F-Measure  |      Download      |\n| :---------: | :------------: | :-----------: | :---------: | :---------: | :----------------: |\n|  ResNet-10  |      44.2      |      35.2     |    17.5     |     44.6    |     [model](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1CKcZuTQJkRvA3pUK_AL_H2wsvt5gY5of)      |\n\n### Places-LT Open-Set Setting\n\n|   Backbone  |    Many-Shot   |  Medium-Shot  |   Few-Shot  |  F-Measure  |      Download      |\n| :---------: | :------------: | :-----------: | :---------: | :---------: | :----------------: |\n| ResNet-152  |      43.7      |      40.2     |    28.0     |     50.0    |     [model](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1ZkYzg74O8hKlsq8LcLlECsi2QVeG5mr0)      |\n\n## CAUTION\nThe current code was prepared using single GPU. The use of multi-GPU can cause problems except for the first stage of `Places-LT`. \n\n## License and Citation\nThe use of this software is released under [BSD-3](https:\u002F\u002Fgithub.com\u002Fzhmiao\u002FOpenLongTailRecognition-OLTR\u002Fblob\u002Fmaster\u002FLICENSE).\n```\n@inproceedings{openlongtailrecognition,\n  title={Large-Scale Long-Tailed Recognition in an Open World},\n  author={Liu, Ziwei and Miao, Zhongqi and Zhan, Xiaohang and Wang, Jiayun and Gong, Boqing and Yu, Stella X.},\n  booktitle={IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},\n  year={2019}\n}\n```\n","# 开放世界中的大规模长尾识别\n\n[[项目]](https:\u002F\u002Fliuziwei7.github.io\u002Fprojects\u002FLongTail.html) [[论文]](https:\u002F\u002Farxiv.org\u002Fabs\u002F1904.05160) [[博客]](https:\u002F\u002Fbair.berkeley.edu\u002Fblog\u002F2019\u002F05\u002F13\u002Foltr\u002F)\n\n## 概述\n`开放世界长尾识别 (OLTR)` 是作者对以下文献中描述的长尾识别器的重新实现：  \n“开放世界中的大规模长尾识别”   \n[Ziwei Liu](https:\u002F\u002Fliuziwei7.github.io\u002F)\u003Csup>\\*\u003C\u002Fsup>,&nbsp; [Zhongqi Miao](https:\u002F\u002Fgithub.com\u002Fzhmiao)\u003Csup>\\*\u003C\u002Fsup>,&nbsp; [Xiaohang Zhan](https:\u002F\u002Fxiaohangzhan.github.io\u002F),&nbsp; [Jiayun Wang](http:\u002F\u002Fpwang.pw\u002F),&nbsp; [Boqing Gong](http:\u002F\u002Fboqinggong.info\u002F),&nbsp; [Stella X. Yu](https:\u002F\u002Fwww1.icsi.berkeley.edu\u002F~stellayu\u002F)&nbsp; (香港中文大学 & 加州大学伯克利分校 \u002F ICSI)&nbsp; \n于 IEEE 计算机视觉与模式识别会议 (CVPR) 2019，**口头报告**\n\n\u003Cimg src='https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fzhmiao_OpenLongTailRecognition-OLTR_readme_2ba455013d73.png' width=800>\n\n更多信息请联系 [Zhongqi Miao](mailto:zhongqi.miao@berkeley.edu) 和 [Ziwei Liu](https:\u002F\u002Fliuziwei7.github.io\u002F)。\n\n## 更新通知\n* __2020年3月4日：__ 我们将所有名为 `selfatt` 的变量改为 `modulatedatt`，以便注意力模块能够在 Places-LT 数据集的第二阶段得到正确训练。ImageNet-LT 数据集不存在此问题，因为其权重并未冻结。我们已使用修复后的代码更新了结果，这些结果仍然优于论文中报告的结果。权重文件也已更新。感谢！\n* __2020年2月11日：__ 我们更新了 `Places_LT` 数据集的配置文件。当前结果略高于论文中报告的结果，即使在更新了 F-measure 计算方式之后也是如此。需要注意的是，在 `Places-LT` 的第一阶段训练中，我们解冻了模型权重，这意味着在大多数情况下不适合使用单 GPU 进行训练（我们在实现中使用了 4 张 1080ti 显卡）。然而，在第二阶段，由于目前内存和中心损失不支持多 GPU，因此请切换回单 GPU 训练。非常感谢！\n* __2020年1月29日：__ 我们更新了 `util.py` 中的 `False Positive` 计算方法，使数值恢复正常。论文中报告的 F-measure 数值可能略高于所有基线的实际数值。我们将尽快进行更新。下表中已更新为新的 F-measure 数值。谢谢。\n* __2019年12月19日：__ 更新了包含 'clone()' 方法的模块，并将 ImageNet-LT 第一阶段配置中的 `use_fc` 设置为 `False`。目前，ImageNet-LT 的结果与论文中报告的数值相当（略好一些），复现结果已在下方更新。我们还发现了 Places-LT 中的 bug。我们将尽快更新代码和复现结果。\n* __2019年8月5日：__ 修复了 `utils.py` 中的一个 bug。本页末尾更新了重新实现的 ImageNet-LT 权重。\n* __2019年5月2日：__ 修复了 `run_network.py` 中的一个 bug，使模型能够正常训练。更新了 Imagenet-LT 第一阶段训练的配置文件，以便能够复现论文中的结果。\n\n## 需求\n* [PyTorch](https:\u002F\u002Fpytorch.org\u002F)（版本 >= 0.4.1）\n* [scikit-learn](https:\u002F\u002Fscikit-learn.org\u002Fstable\u002F)\n\n## 数据准备\n\n\u003Cimg src='https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fzhmiao_OpenLongTailRecognition-OLTR_readme_0a47d4caed86.png' width=800>\n\n注意：Places-LT 数据集自首次发布以来已更新。如果您拥有旧版本，请重新下载。\n\n- 首先，请下载 [ImageNet_2014](http:\u002F\u002Fimage-net.org\u002Findex) 和 [Places_365](http:\u002F\u002Fplaces2.csail.mit.edu\u002Fdownload.html)（256x256 版本）。\n同时，请相应地修改 `main.py` 中的 `data_root` 路径。\n\n- 接下来，请从 [这里](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Fu\u002F1\u002Ffolders\u002F1j7Nkfe6ZhzKFXePHdsseeeGI877Xu1yf) 下载 ImageNet-LT 和 Places-LT。请将下载的文件放入 `data` 目录中，结构如下：\n```\ndata\n  |--ImageNet_LT\n    |--ImageNet_LT_open\n    |--ImageNet_LT_train.txt\n    |--ImageNet_LT_test.txt\n    |--ImageNet_LT_val.txt\n    |--ImageNet_LT_open.txt\n  |--Places_LT\n    |--Places_LT_open\n    |--Places_LT_train.txt\n    |--Places_LT_test.txt\n    |--Places_LT_val.txt\n    |--Places_LT_open.txt\n```\n\n## 下载用于 Places_LT 第一阶段训练的 Caffe 预训练模型\n* 可以从 [这里](https:\u002F\u002Fdrive.google.com\u002Fuc?export=download&id=0B7fNdx_jAqhtckNGQ2FLd25fa3c) 下载 Caffe 预训练的 ResNet152 权重，并将其保存到 `.\u002Flogs\u002Fcaffe_resnet152.pth`。\n\n## 快速入门（训练与测试）\n\n\u003Cimg src='https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fzhmiao_OpenLongTailRecognition-OLTR_readme_1a8abb6e758b.png' width=800>\n\n### ImageNet-LT\n- 第一阶段训练：\n```\npython main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_1.py\n```\n- 第二阶段训练：\n```\npython main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_2_meta_embedding.py\n```\n- 封闭集测试：\n```\npython main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_2_meta_embedding.py --test\n```\n- 开放集测试（阈值法）：\n```\npython main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_2_meta_embedding.py --test_open\n```\n- 在第一阶段模型上进行测试：\n```\npython main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_1.py --test\n```\n\n### Places-LT\n- 第一阶段训练（在此阶段，可能需要使用多 GPU，因为我们正在微调 ResNet-152）：\n```\npython main.py --config .\u002Fconfig\u002FPlaces_LT\u002Fstage_1.py\n```\n- 第二阶段训练（在此阶段，仅支持单 GPU，请切换回单 GPU 训练）：\n```\npython main.py --config .\u002Fconfig\u002FPlaces_LT\u002Fstage_2_meta_embedding.py\n```\n- 封闭集测试：\n```\npython main.py --config .\u002Fconfig\u002FPlaces_LT\u002Fstage_2_meta_embedding.py --test\n```\n- 开放集测试（阈值法）：\n```\npython main.py --config .\u002Fconfig\u002FPlaces_LT\u002Fstage_2_meta_embedding.py --test_open\n```\n\n## 复现的基准与模型库（2020年3月5日更新）\n\n### ImageNet-LT 开放集设置\n\n|   主干网络  |    多样本   |  中等样本  |   少样本  |  F-Measure  |      下载      |\n| :---------: | :------------: | :-----------: | :---------: | :---------: | :----------------: |\n|  ResNet-10  |      44.2      |      35.2     |    17.5     |     44.6    |     [模型](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1CKcZuTQJkRvA3pUK_AL_H2wsvt5gY5of)      |\n\n### Places-LT 开放集设置\n\n|   主干网络  |    多样本   |  中等样本  |   少样本  |  F-Measure  |      下载      |\n| :---------: | :------------: | :-----------: | :---------: | :---------: | :----------------: |\n| ResNet-152  |      43.7      |      40.2     |    28.0     |     50.0    |     [模型](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1ZkYzg74O8hKlsq8LcLlECsi2QVeG5mr0)      |\n\n## 注意事项\n当前代码是在单 GPU 环境下编写的。除 `Places-LT` 的第一阶段外，使用多 GPU 可能会导致问题。\n\n## 许可证与引用\n本软件的使用遵循 [BSD-3](https:\u002F\u002Fgithub.com\u002Fzhmiao\u002FOpenLongTailRecognition-OLTR\u002Fblob\u002Fmaster\u002FLICENSE) 许可协议。\n```\n@inproceedings{openlongtailrecognition,\n  title={大规模开放世界下的长尾识别},\n  author={刘子威、苗中奇、詹晓航、王嘉云、龚博清、Yu, Stella X.},\n  booktitle={IEEE 计算机视觉与模式识别会议 (CVPR)},\n  year={2019}\n}\n```","# OpenLongTailRecognition (OLTR) 快速上手指南\n\n本指南旨在帮助开发者快速部署并运行 **OpenLongTailRecognition (OLTR)** 项目，该项目用于解决开放世界中的大规模长尾识别问题（CVPR 2019 Oral）。\n\n## 环境准备\n\n在开始之前，请确保您的系统满足以下要求：\n\n*   **操作系统**: Linux (推荐 Ubuntu)\n*   **Python**: 兼容 PyTorch 的版本\n*   **核心依赖**:\n    *   [PyTorch](https:\u002F\u002Fpytorch.org\u002F) (版本 >= 0.4.1)\n    *   [scikit-learn](https:\u002F\u002Fscikit-learn.org\u002Fstable\u002F)\n*   **硬件建议**:\n    *   **ImageNet-LT**: 单卡或多卡均可（第一阶段训练）。\n    *   **Places-LT**: \n        *   第一阶段（微调 ResNet-152）：建议使用多 GPU（原作者使用 4 张 1080ti）。\n        *   第二阶段：由于内存和中心损失模块限制，**必须切换回单 GPU** 训练。\n\n> **国内加速提示**：安装 PyTorch 时，推荐使用清华或中科大镜像源以加快下载速度。\n> 例如 (CUDA 11.3): `pip install torch torchvision torchaudio --index-url https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple`\n\n## 安装步骤\n\n1.  **克隆仓库**\n    ```bash\n    git clone https:\u002F\u002Fgithub.com\u002Fzhmiao\u002FOpenLongTailRecognition-OLTR.git\n    cd OpenLongTailRecognition-OLTR\n    ```\n\n2.  **安装 Python 依赖**\n    ```bash\n    pip install -r requirements.txt\n    # 如果项目中没有 requirements.txt，请手动安装：\n    pip install scikit-learn\n    ```\n\n3.  **数据准备**\n    \n    *   下载基础数据集：[ImageNet_2014](http:\u002F\u002Fimage-net.org\u002Findex) 和 [Places_365](http:\u002F\u002Fplaces2.csail.mit.edu\u002Fdownload.html) (256x256 版本)。\n    *   下载长尾划分文件：从 [Google Drive](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Fu\u002F1\u002Ffolders\u002F1j7Nkfe6ZhzKFXePHdsseeeGI877Xu1yf) 下载 ImageNet-LT 和 Places-LT 的相关 txt 及开放集文件。\n    *   目录结构应如下所示：\n        ```text\n        data\n          |--ImageNet_LT\n            |--ImageNet_LT_open\n            |--ImageNet_LT_train.txt\n            |--ImageNet_LT_test.txt\n            |--ImageNet_LT_val.txt\n            |--ImageNet_LT_open.txt\n          |--Places_LT\n            |--Places_LT_open\n            |--Places_LT_train.txt\n            |--Places_LT_test.txt\n            |--Places_LT_val.txt\n            |--Places_LT_open.txt\n        ```\n    *   **重要**：修改 `main.py` 中的 `data_root` 变量，指向你的实际数据路径。\n\n4.  **预训练模型下载 (仅针对 Places-LT 第一阶段)**\n    \n    如果使用 Places-LT 数据集，需下载 Caffe 预训练的 ResNet152 权重并转换\u002F保存：\n    *   下载地址：[ResNet152 Caffe Weights](https:\u002F\u002Fdrive.google.com\u002Fuc?export=download&id=0B7fNdx_jAqhtckNGQ2FLd25fa3c)\n    *   保存路径：`.\u002Flogs\u002Fcaffe_resnet152.pth`\n\n## 基本使用\n\n本项目训练分为两个阶段。以下以 **ImageNet-LT** 为例展示最简流程（Places-LT 命令类似，只需替换 config 路径）。\n\n### 1. 第一阶段训练 (Stage 1)\n训练基础特征提取器。\n```bash\npython main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_1.py\n```\n\n### 2. 第二阶段训练 (Stage 2)\n基于第一阶段模型进行元嵌入（Meta Embedding）训练。\n*注意：若运行 Places-LT 的第二阶段，请确保只使用单张 GPU。*\n```bash\npython main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_2_meta_embedding.py\n```\n\n### 3. 测试与评估\n\n*   **闭集测试 (Close-set testing)**:\n    ```bash\n    python main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_2_meta_embedding.py --test\n    ```\n\n*   **开集测试 (Open-set testing)**:\n    ```bash\n    python main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_2_meta_embedding.py --test_open\n    ```\n\n*   **直接测试第一阶段模型**:\n    ```bash\n    python main.py --config .\u002Fconfig\u002FImageNet_LT\u002Fstage_1.py --test\n    ```\n\n> **提示**：如需复现论文结果或直接使用预训练模型，请参考 README 中的 \"Model Zoo\" 部分下载对应权重文件放入 logs 目录。","某电商平台的视觉算法团队正在构建一个能识别海量长尾商品（如特定型号配件、小众品牌服饰）的图像分类系统，以应对开放世界中不断涌现的新类别。\n\n### 没有 OpenLongTailRecognition-OLTR 时\n- **长尾类别识别率极低**：传统模型过度拟合头部热门商品，导致样本稀少的冷门商品识别准确率几乎为零，严重影响用户体验。\n- **未知类别处理失效**：面对训练集中未出现的“开放世界”新商品，模型往往强行将其错误归类为已知类别，无法输出“未知”判断。\n- **特征表示能力不足**：缺乏针对长尾分布设计的记忆模块和动态注意力机制，模型难以提取小众商品的关键判别性特征。\n- **复现顶尖论文成本高**：团队需耗费数周时间从头复现 CVPR Oral 论文《Large-Scale Long-Tailed Recognition in an Open World》，且极易因细节缺失导致效果不达标。\n\n### 使用 OpenLongTailRecognition-OLTR 后\n- **显著提升长尾精度**：利用其内置的两阶段训练策略和调制注意力机制，冷门商品的识别准确率大幅提升，平衡了头部与尾部类别的性能。\n- **具备开放世界感知力**：通过集成的原型记忆库和阈值判定逻辑，模型能准确拒绝未见过的新类别商品，避免误判，支持系统安全扩容。\n- **特征学习更鲁棒**：直接调用经过验证的记忆增强模块，模型能有效捕捉少量样本中的关键特征，解决了小样本下的过拟合难题。\n- **快速落地前沿成果**：基于成熟的 PyTorch 实现和预训练权重，团队在几天内即可复现并部署业界领先的长尾识别方案，大幅缩短研发周期。\n\nOpenLongTailRecognition-OLTR 将复杂的学术理论转化为可落地的工程利器，让模型在数据极度不平衡的开放环境中依然保持敏锐的识别与判断能力。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fzhmiao_OpenLongTailRecognition-OLTR_0a47d4ca.png","zhmiao","Zhongqi Miao","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fzhmiao_73dddb7f.png",null,"Microsoft","Seattle, WA","zhongqimiao@microsoft.com","https:\u002F\u002Fgithub.com\u002Fzhmiao",[81],{"name":82,"color":83,"percentage":84},"Python","#3572A5",100,871,130,"2026-04-01T03:48:30","BSD-3-Clause",4,"未说明","需要 NVIDIA GPU。Places-LT 第一阶段训练建议使用多 GPU（作者使用 4 张 GTX 1080 Ti）；第二阶段及 ImageNet-LT 训练仅支持单 GPU（因内存和中心损失模块不支持多 GPU）。显存需求取决于模型大小（ResNet-152 需较大显存），具体 CUDA 版本未说明。",{"notes":93,"python":90,"dependencies":94},"1. 数据准备：需自行下载 ImageNet_2014 和 Places_365 (256x256) 数据集，并配置 data_root。2. 预训练模型：Places-LT 第一阶段训练需要下载 Caffe 预训练的 ResNet152 权重并转换为 .pth 格式。3. 训练策略：Places-LT 第一阶段建议多 GPU 微调，但第二阶段必须切换回单 GPU 模式；ImageNet-LT 全程单 GPU。4. 代码更新：注意 README 中提到的关于变量名变更（selfatt 到 modulatedatt）和冻结权重的修复，以确保复现结果准确。",[95,96],"PyTorch>=0.4.1","scikit-learn",[14,15],[99,100,101,102,103,104,105,106],"open-long-tail-recognition","pytorch-implementation","computer-vision","long-tail","open-set","oltr","cvpr2019","deep-learning","2026-03-27T02:49:30.150509","2026-04-08T10:11:24.389056",[110,115,120,125,130,135],{"id":111,"question_zh":112,"answer_zh":113,"source_url":114},24144,"为什么我无法复现论文中报告的模型结果（准确率偏低）？","维护者已确认代码中存在几个导致结果偏低的问题并已修复：\n1. 在某些模块中使用了 clone() 方法以修正梯度计算。\n2. 将第一阶段（Stage 1）的 use_fc 参数设置为 False。\n3. 修正了评估函数 shot_acc() 中的位运算错误（将 >> 和 \u003C\u003C 替换为 >>+ 和 \u003C\u003C=）。\n4. 对于 Places-LT 数据集，第一阶段实际上不应冻结权重（只有第二阶段才冻结），之前的配置文件有误。\n请拉取最新代码并检查更新的配置文件，复现结果现在应等于或略高于论文报告值。","https:\u002F\u002Fgithub.com\u002Fzhmiao\u002FOpenLongTailRecognition-OLTR\u002Fissues\u002F17",{"id":116,"question_zh":117,"answer_zh":118,"source_url":119},24145,"运行 Stage 2 Meta Embedding 时出现张量尺寸不匹配错误（RuntimeError: size mismatch），如何解决？","该错误通常是由于使用了旧的配置文件或代码版本导致的，特别是与类别数量（如 365 vs 122）不匹配有关。维护者指出这与复现结果偏低的问题是同一根源。解决方案是更新到最新的代码库和配置文件（config），因为维护者已经修复了导致推理结果偏低和维度错误的底层模块问题。","https:\u002F\u002Fgithub.com\u002Fzhmiao\u002FOpenLongTailRecognition-OLTR\u002Fissues\u002F7",{"id":121,"question_zh":122,"answer_zh":123,"source_url":124},24146,"Open-set（开放集）测试中的 F-measure 计算是否正确？","是的，维护者确认之前的 F-measure 计算存在错误，主要是假阳性（false positive）的定义问题。已修正的计算逻辑移除了对预测标签是否为 -1 的判断。正确的假阳性计算应为：`false_pos += 1 if preds[i] != labels[i] and labels[i] != -1 else 0`。根据引用的论文定义，“假阳性是验证集上的错误分类”，因此只要真实标签不是未知类（-1）且预测错误，即计为假阳性。请使用更新后的 utils.py 代码。","https:\u002F\u002Fgithub.com\u002Fzhmiao\u002FOpenLongTailRecognition-OLTR\u002Fissues\u002F52",{"id":126,"question_zh":127,"answer_zh":128,"source_url":129},24147,"在 Places-LT 数据集上使用 ResNet152 时，第一阶段的卷积层是否被冻结了？这样训练有意义吗？","这是预期的行为。根据论文设定，在 Places-LT 实验中使用了冻结的 ResNet152 作为特征提取器。原因有二：\n1. 微调 ResNet152 需要大量的 GPU 资源。\n2. 自注意力模块（self attention module）和元嵌入模块（meta embedding module）需要特定的初始化。由于特征提取器已经是 ImageNet 预训练的，冻结它不会对自注意力模块产生太大负面影响，同时能保证其他模块的正常训练。","https:\u002F\u002Fgithub.com\u002Fzhmiao\u002FOpenLongTailRecognition-OLTR\u002Fissues\u002F25",{"id":131,"question_zh":132,"answer_zh":133,"source_url":134},24148,"论文公式 (7) 和 (9) 中关于 v_meta 和质心（centroid）的计算是否有误？","公式是正确的。质心（centroids）仅在使用 v_direct 进行初始化时使用 v_direct，在此之后，质心是使用 v_meta 计算更新的。因此，公式 (9) 中计算 v_meta 与质心之间的距离是合理的，这确保了概念选择器（concept selector）和幻觉器（Hallucinator）网络能够正常训练。","https:\u002F\u002Fgithub.com\u002Fzhmiao\u002FOpenLongTailRecognition-OLTR\u002Fissues\u002F19",{"id":136,"question_zh":137,"answer_zh":138,"source_url":139},24149,"如何复现 ImageNet-LT 上 Plain Model Baseline 的准确率？","如果运行标准的 stage_1.py 配置得到的结果远低于论文（例如 0.119 vs 0.209），这是因为早期发布的代码存在 Bug。维护者已更新了 ImageNet 和 Places 的配置文件。请确保使用最新版本的代码库，其中修复了模块克隆（clone）问题和第一阶段的全连接层设置（use_fc=False）。更新后，复现的结果应该会接近或略高于论文报告的值。","https:\u002F\u002Fgithub.com\u002Fzhmiao\u002FOpenLongTailRecognition-OLTR\u002Fissues\u002F2",[]]