[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"tool-AlfredXiangWu--LightCNN":3,"similar-AlfredXiangWu--LightCNN":87},{"id":4,"github_repo":5,"name":6,"description_en":7,"description_zh":8,"ai_summary_zh":8,"readme_en":9,"readme_zh":10,"quickstart_zh":11,"use_case_zh":12,"hero_image_url":13,"owner_login":14,"owner_name":15,"owner_avatar_url":16,"owner_bio":17,"owner_company":18,"owner_location":19,"owner_email":20,"owner_twitter":21,"owner_website":22,"owner_url":23,"languages":24,"stars":29,"forks":30,"last_commit_at":31,"license":32,"difficulty_score":33,"env_os":34,"env_gpu":35,"env_ram":36,"env_deps":37,"category_tags":42,"github_topics":45,"view_count":48,"oss_zip_url":21,"oss_zip_packed_at":21,"status":49,"created_at":50,"updated_at":51,"faqs":52,"releases":86},1245,"AlfredXiangWu\u002FLightCNN","LightCNN","A Light CNN for Deep Face Representation with Noisy Labels, TIFS 2018","LightCNN 是一个用于深度人脸表征的轻量级卷积神经网络，特别适用于处理带有噪声标签的人脸识别任务。它通过简化网络结构，在保证高识别准确率的同时显著降低了计算复杂度和模型参数量，使得模型更易于部署在资源受限的设备上。\n\nLightCNN 解决了传统人脸识别模型在面对噪声标签数据时性能下降的问题，并且在多个公开数据集（如 LFW、MegaFace）上取得了优异的识别效果，例如在 LFW 数据集上实现了高达 99.43% 的识别准确率。\n\n该工具适合研究人员和开发者使用，尤其是那些希望在实际场景中应用轻量级人脸识别模型的人。其独特的技术亮点包括对网络结构的精简设计、针对噪声标签的鲁棒训练方法以及高效的训练策略，使其在保持高性能的同时具备良好的泛化能力。此外，项目提供了 PyTorch 实现，方便用户进行二次开发和实验验证。","\n# Light CNN for Deep Face Recognition, in PyTorch\nA [PyTorch](http:\u002F\u002Fpytorch.org\u002F) implementation of [A Light CNN for Deep Face Representation with Noisy Labels](https:\u002F\u002Farxiv.org\u002Fabs\u002F1511.02683) from the paper by Xiang Wu, Ran He, Zhenan Sun and Tieniu Tan.  The official and original Caffe code can be found [here](https:\u002F\u002Fgithub.com\u002FAlfredXiangWu\u002Fface_verification_experiment).  \n\n### Table of Contents\n- \u003Ca href='#updates'>Updates\u003C\u002Fa>\n- \u003Ca href='#installation'>Installation\u003C\u002Fa>\n- \u003Ca href='#datasets'>Datasets\u003C\u002Fa>\n- \u003Ca href='#training'>Training\u003C\u002Fa>\n- \u003Ca href='#evaluation'>Evaluate\u003C\u002Fa>\n- \u003Ca href='#performance'>Performance\u003C\u002Fa>\n- \u003Ca href='#citation'>Citation\u003C\u002Fa>\n- \u003Ca href='#references'>References\u003C\u002Fa>\n\n## Updates\n\n- Feb 9, 2022\n    - Light CNN v4 pretrained model is released.\n- Jan 17, 2018\n\t- Light CNN-29 v2 model and training code are released. The `100% - EER` on LFW achieves **99.43%**.\n\t- The performance of set 1 on MegaFace achieves **76.021%** for rank-1 accuracy and **89.740%** for TPR@FAR=10^-6. \n- Sep 12, 2017\n\t- Light CNN-29 model and training code are released. The `100% - EER` on LFW achieves **99.40%**.\n\t- The performance of set 1 on MegaFace achieves **72.704%** for rank-1 accuracy and **85.891%** for TPR@FAR=10^-6. \n- Jul 12, 2017 \n\t- Light CNN-9 model and training code are released. The `100% - EER` on LFW obtains **98.70%**.  \n\t- The performance of set 1 on MegaFace achieves **65.782%** for rank-1 accuracy and **76.288%** for TPR@FAR=10^-6. \n- Jul 4, 2017\n\t- The repository was built.\n\n## Installation\n- Install [pytorch](http:\u002F\u002Fpytorch.org\u002F) following the website.\n- Clone this repository.\n\t- Note: We currently only run it on Python 2.7.\t\n\n## Datasets\n- Download face dataset such as  CASIA-WebFace, VGG-Face and MS-Celeb-1M.\n\t- The MS-Celeb-1M clean list is uploaded: [Baidu Yun](http:\u002F\u002Fpan.baidu.com\u002Fs\u002F1gfxB0iB), [Google Drive](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F0ByNaVHFekDPRbFg1YTNiMUxNYXc\u002Fview?usp=sharing).\n- All face images are converted to gray-scale images and normalized to **144x144** according to landmarks. \n- According to the five facial points, we not only rotate two eye points horizontally but also set the distance between the midpoint of eyes and the midpoint of mouth(ec_mc_y), and the y axis of midpoint of eyes(ec_y) .\n- The aligned LFW images are uploaded on [Baidu Yun](https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1eR6vHFO).\n  \n  Dataset     | size    |  ec_mc_y  | ec_y  \n  :----| :-----: | :----:    | :----: \n  Training set | 144x144 |     48    | 48    \n  Testing set  | 128x128 |     48    | 40 \n\n## Training \n- To train Light CNN using the train script simply specify the parameters listed in ```train.py``` as a flag or manually change them.\n```Shell\npython train.py --root_path=\u002Fpath\u002Fto\u002Fyour\u002Fdatasets\u002F \\\n\t\t--train_list=\u002Fpath\u002Fto\u002Fyour\u002Ftrain\u002Flist.txt \\\n\t\t--val_list=\u002Fpath\u002Fto\u002Fyour\u002Fval\u002Flist.txt \\\n\t\t--save_path=\u002Fpath\u002Fto\u002Fyour\u002Fsave\u002Fpath\u002F \\\n\t\t--model=\"LightCNN-9\u002FLightCNN-29\" --num_classes=n\n```\n\t\n- Tips:\n\t- The lists of train and val datasets are followed by the format of caffe. The details of data loader is shown in ```load_imglist.py```. Or you can use ```torchvision.datasets.ImageFolder``` to load your datasets.\n\t- The ```num_classes``` denotes the number of identities in your training dataset.\n\t- When training by pytorch, you can set a larger learning rate than caffe and it is faster converaged by pytorch than caffe for Light CNN.\n\t- We enlarge the learning rate for the parameters of fc2 which may lead better performance. If the training is collapsed on your own datasets, you can decrese it. \n\t- We modify the implementation of SGD with momentum since the official pytorch implementation is different from Sutskever et. al. The details are shown in [here](http:\u002F\u002Fpytorch.org\u002Fdocs\u002Fmaster\u002Foptim.html#torch.optim.SGD).\n\t- The training datasets for LightCNN-29v2 are CASIA-WebFace and MS-Celeb-1M, therefore, the ```num_classes``` is **80013**. \n\t \n\t\n## Evaluation\n\n- To evaluate a trained network:\n```\npython extract_features.py --resume=\u002Fpath\u002Fto\u002Fyour\u002Fmodel \\\n\t\t\t   --root_path=\u002Fpath\u002Fto\u002Fyour\u002Fdatasets\u002F \\\n\t\t\t   --img_list=\u002Fpath\u002Fto\u002Fyour\u002Flist.txt \\\n\t\t\t   --save_path=\u002Fpath\u002Fto\u002Fyour\u002Fsave\u002Fpath\u002F \\\n\t\t\t   --model=\"LightCNN-9\u002FLightCNN-29\u002FLightCNN-29v2\"\\\n\t\t\t   --num_classes=n (79077 for LightCNN-9\u002FLightCNN-29, 80013 for LightCNN-29v2)\n```\n- You can use ```vlfeat``` or ```sklearn``` to evaluate the features on ROC and obtain ```EER``` and ```TPR@FPR``` for your testing datasets. \n- The model of LightCNN-9 is released on [Google Drive](https:\u002F\u002Fdrive.google.com\u002Fopen?id=0ByNaVHFekDPRWk5XUFRvTTRIVmc).\n\t- Note that the released model contains the whole state of the light CNN module and optimizer. The details of loading model can be found in ```train.py```. \n- The model of LightCNN-29 is released on [Google Drive](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F0ByNaVHFekDPRMGlLWVBhbkVGVm8\u002Fview).\n- The model of LightCNN-29 v2 is released on [Google Drive](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1Jn6aXtQ84WY-7J3Tpr2_j6sX0ch9yucS).\n- The features of [lfw](https:\u002F\u002Fdrive.google.com\u002Fopen?id=0ByNaVHFekDPRbDV4cEtWSVl3d0k) and [megaface](https:\u002F\u002Fdrive.google.com\u002Fopen?id=0ByNaVHFekDPRZXhQejRwOUtDYm8) of LightCNN-9 are released. \n- The model of LightCNN v4 is released on [Google Drive](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F1zFB8RmxeS00Nbq2fM0EoME15RIHtVOqn\u002Fview?usp=sharing).\n  - The detailed structure of LightCNN v4 is shown in light_cnn_v4.py\n  - The input is an aligned 128*128 **BGR** face image.\n  - The input pixel value is normalized by mean ([0.0, 0.0, 0.0]) and std ([255.0, 255.0, 255.0]).\n\n## Performance\nThe Light CNN performance on lfw 6,000 pairs.   \n\n|   Model | 100% - EER | TPR@FAR=1%   | TPR@FAR=0.1%| TPR@FAR=0| \n| :------- | :----: | :---: | :---: |:---: | \n| LightCNN-9| 98.70% | 98.47% | 95.13% | 89.53% |\n| LightCNN-29 | 99.40% |    99.43%    |    98.67%  |    95.70%  | \n| LightCNN-29v2 | 99.43% |    99.53%    |    99.30%  |    96.77%  | \n| LightCNN v4 | 99.67% |    99.67%    |    99.57%  |    99.27%  |\n\nThe Light CNN performance on [lfw BLUFR protocols](http:\u002F\u002Fwww.cbsr.ia.ac.cn\u002Fusers\u002Fscliao\u002Fprojects\u002Fblufr\u002F)\n\n|   Model | VR@FAR=0.1% | DIR@FAR=1%| \n| :------- | :----: | :---: |  \n| LightCNN-9| 96.80% | 83.06% | \n| LightCNN-29 | 98.95% |    91.33%    |  \n| LightCNN-29v2 | 99.41% |    94.43%    |  \n\nThe Light CNN performance on MegaFace\n\n|   Model | Rank-1 | TPR@FAR=1e-6| \n| :------- | :----: | :---: |  \n| LightCNN-9| 65.782% | 76.288% | \n| LightCNN-29 | 72.704% |  85.891%    |  \n| LightCNN-29v2 | 76.021% |  89.740%    |  \n\n## Citation\nIf you use our models, please cite the following paper:\n```\n@article{wu2018light,\n  title={A light CNN for deep face representation with noisy labels},\n  author={Wu, Xiang and He, Ran and Sun, Zhenan and Tan, Tieniu},\n  journal={IEEE Transactions on Information Forensics and Security},\n  volume={13},\n  number={11},\n  pages={2884--2896},\n  year={2018},\n  publisher={IEEE}\n}\n```\n\t\n## References\n- [Original Light CNN implementation (caffe)](https:\u002F\u002Fgithub.com\u002FAlfredXiangWu\u002Fface_verification_experiment).\n- [Pytorch](https:\u002F\u002Fgithub.com\u002Fpytorch\u002Fpytorch). \n\n\n","# 用于深度人脸识别的轻量级卷积神经网络，基于 PyTorch\n这是由吴翔、何然、孙振安和谭铁牛撰写的论文《一种适用于带噪声标签的深度人脸表征的轻量级卷积神经网络》[1]在 PyTorch [2] 上的实现。官方原始的 Caffe 代码可在此处找到：[https:\u002F\u002Fgithub.com\u002FAlfredXiangWu\u002Fface_verification_experiment](https:\u002F\u002Fgithub.com\u002FAlfredXiangWu\u002Fface_verification_experiment)。\n\n### 目录\n- \u003Ca href='#updates'>更新\u003C\u002Fa>\n- \u003Ca href='#installation'>安装\u003C\u002Fa>\n- \u003Ca href='#datasets'>数据集\u003C\u002Fa>\n- \u003Ca href='#training'>训练\u003C\u002Fa>\n- \u003Ca href='#evaluation'>评估\u003C\u002Fa>\n- \u003Ca href='#performance'>性能\u003C\u002Fa>\n- \u003Ca href='#citation'>引用\u003C\u002Fa>\n- \u003Ca href='#references'>参考文献\u003C\u002Fa>\n\n## 更新\n\n- 2022年2月9日  \n  发布了 Light CNN v4 预训练模型。\n- 2018年1月17日  \n  发布了 Light CNN-29 v2 模型及训练代码。在 LFW 上的“100% - EER”达到 **99.43%**。\n  在 MegaFace 的第1组上，排名1准确率达到了 **76.021%**，TPR@FAR=10^-6 时为 **89.740%**。\n- 2017年9月12日  \n  发布了 Light CNN-29 模型及训练代码。在 LFW 上的“100% - EER”达到 **99.40%**。\n  在 MegaFace 的第1组上，排名1准确率达到了 **72.704%**，TPR@FAR=10^-6 时为 **85.891%**。\n- 2017年7月12日  \n  发布了 Light CNN-9 模型及训练代码。在 LFW 上的“100% - EER”达到 **98.70%**。\n  在 MegaFace 的第1组上，排名1准确率达到了 **65.782%**，TPR@FAR=10^-6 时为 **76.288%**。\n- 2017年7月4日  \n  仓库搭建完成。\n\n## 安装\n- 按照官网说明安装 [pytorch](http:\u002F\u002Fpytorch.org\u002F)。\n- 克隆本仓库。\n  - 注意：目前我们仅支持 Python 2.7 运行。\n\n## 数据集\n- 下载人脸数据集，如 CASIA-WebFace、VGG-Face 和 MS-Celeb-1M。\n  - MS-Celeb-1M 的干净列表已上传：[百度网盘](http:\u002F\u002Fpan.baidu.com\u002Fs\u002F1gfxB0iB)，[Google Drive](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F0ByNaVHFekDPRbFg1YTNiMUxNYXc\u002Fview?usp=sharing)。\n- 所有人脸图像均转换为灰度图像，并根据面部特征点归一化至 **144x144**。\n- 根据五个面部关键点，我们不仅将双眼水平旋转，还调整了眼中心与嘴中心之间的距离（ec_mc_y）以及眼中心的纵坐标（ec_y）。\n- 对齐后的 LFW 图像已上传至 [百度网盘](https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1eR6vHFO)。\n\n| 数据集     | 尺寸    | ec_mc_y  | ec_y  \n| :----| :-----: | :----:    | :----: \n| 训练集 | 144x144 |     48    | 48    \n| 测试集  | 128x128 |     48    | 40 \n\n## 训练\n- 使用 train 脚本训练 Light CNN 时，只需将 ```train.py``` 中列出的参数作为标志指定，或手动修改即可。\n```Shell\npython train.py --root_path=\u002Fpath\u002Fto\u002Fyour\u002Fdatasets\u002F \\\n\t\t--train_list=\u002Fpath\u002Fto\u002Fyour\u002Ftrain\u002Flist.txt \\\n\t\t--val_list=\u002Fpath\u002Fto\u002Fyour\u002Fval\u002Flist.txt \\\n\t\t--save_path=\u002Fpath\u002Fto\u002Fyour\u002Fsave\u002Fpath\u002F \\\n\t\t--model=\"LightCNN-9\u002FLightCNN-29\" --num_classes=n\n```\n  \n- 提示：\n  - 训练集和验证集的列表格式遵循 Caffe 标准。数据加载器的详细信息见 ```load_imglist.py```。或者您也可以使用 ```torchvision.datasets.ImageFolder``` 来加载您的数据集。\n  - ```num_classes``` 表示您的训练数据集中身份的数量。\n  - 使用 PyTorch 训练时，可以设置比 Caffe 更大的学习率，且 PyTorch 在 Light CNN 上的收敛速度通常快于 Caffe。\n  - 我们会增大 fc2 参数的学习率，这可能会带来更好的性能。如果在您自己的数据集上训练时出现崩溃，可以适当降低学习率。\n  - 我们对带有动量的 SGD 实现进行了修改，因为官方的 PyTorch 实现与 Sutskever 等人的实现有所不同。具体细节请参见 [此处](http:\u002F\u002Fpytorch.org\u002Fdocs\u002Fmaster\u002Foptim.html#torch.optim.SGD)。\n  - LightCNN-29v2 的训练数据集为 CASIA-WebFace 和 MS-Celeb-1M，因此 ```num_classes``` 为 **80013**。\n  \n## 评估\n\n- 评估已训练的网络：\n```\npython extract_features.py --resume=\u002Fpath\u002Fto\u002Fyour\u002Fmodel \\\n\t\t\t   --root_path=\u002Fpath\u002Fto\u002Fyour\u002Fdatasets\u002F \\\n\t\t\t   --img_list=\u002Fpath\u002Fto\u002Fyour\u002Flist.txt \\\n\t\t\t   --save_path=\u002Fpath\u002Fto\u002Fyour\u002Fsave\u002Fpath\u002F \\\n\t\t\t   --model=\"LightCNN-9\u002FLightCNN-29\u002FLightCNN-29v2\"\\\n\t\t\t   --num_classes=n (79077 for LightCNN-9\u002FLightCNN-29, 80013 for LightCNN-29v2)\n```\n- 您可以使用 ```vlfeat``` 或 ```sklearn``` 对特征进行 ROC 评估，从而获得测试数据集的 ```EER``` 和 ```TPR@FPR```。\n- LightCNN-9 的模型已发布在 [Google Drive](https:\u002F\u002Fdrive.google.com\u002Fopen?id=0ByNaVHFekDPRWk5XUFRvTTRIVmc) 上。\n  - 请注意，发布的模型包含整个 Light CNN 模块的状态及优化器状态。加载模型的详细信息可在 ```train.py``` 中找到。\n- LightCNN-29 的模型已发布在 [Google Drive](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F0ByNaVHFekDPRMGlLWVBhbkVGVm8\u002Fview) 上。\n- LightCNN-29 v2 的模型已发布在 [Google Drive](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1Jn6aXtQ84WY-7J3Tpr2_j6sX0ch9yucS) 上。\n- LightCNN-9 的 [lfw](https:\u002F\u002Fdrive.google.com\u002Fopen?id=0ByNaVHFekDPRbDV4cEtWSVl3d0k) 和 [megaface](https:\u002F\u002Fdrive.google.com\u002Fopen?id=0ByNaVHFekDPRZXhQejRwOUtDYm8) 特征已发布。\n- LightCNN v4 的模型已发布在 [Google Drive](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F1zFB8RmxeS00Nbq2fM0EoME15RIHtVOqn\u002Fview?usp=sharing) 上。\n  - LightCNN v4 的详细结构见 light_cnn_v4.py。\n  - 输入为对齐后的 128*128 **BGR** 人脸图像。\n  - 输入像素值按均值 ([0.0, 0.0, 0.0]) 和标准差 ([255.0, 255.0, 255.0]) 进行归一化。\n\n## 性能\nLight CNN 在 LFW 6,000 对上的表现如下：\n\n|   模型 | 100% - EER | TPR@FAR=1%   | TPR@FAR=0.1%| TPR@FAR=0| \n| :------- | :----: | :---: | :---: |:---: | \n| LightCNN-9| 98.70% | 98.47% | 95.13% | 89.53% |\n| LightCNN-29 | 99.40% |    99.43%    |    98.67%  |    95.70%  | \n| LightCNN-29v2 | 99.43% |    99.53%    |    99.30%  |    96.77%  | \n| LightCNN v4 | 99.67% |    99.67%    |    99.57%  |    99.27%  |\n\nLight CNN 在 [lfw BLUFR 协议](http:\u002F\u002Fwww.cbsr.ia.ac.cn\u002Fusers\u002Fscliao\u002Fprojects\u002Fblufr\u002F) 上的表现如下：\n\n|   模型 | VR@FAR=0.1% | DIR@FAR=1%| \n| :------- | :----: | :---: |  \n| LightCNN-9| 96.80% | 83.06% | \n| LightCNN-29 | 98.95% |    91.33%    |  \n| LightCNN-29v2 | 99.41% |    94.43%    |  \n\nLight CNN 在 MegaFace 上的表现如下：\n\n|   模型 | 排名1 | TPR@FAR=1e-6| \n| :------- | :----: | :---: |  \n| LightCNN-9| 65.782% | 76.288% | \n| LightCNN-29 | 72.704% |  85.891%    |  \n| LightCNN-29v2 | 76.021% |  89.740%    |  \n\n## 引用\n如果您使用我们的模型，请引用以下论文：\n```\n@article{wu2018light,\n  title={A light CNN for deep face representation with noisy labels},\n  author={Wu, Xiang and He, Ran and Sun, Zhenan and Tan, Tieniu},\n  journal={IEEE Transactions on Information Forensics and Security},\n  volume={13},\n  number={11},\n  pages={2884--2896},\n  year={2018},\n  publisher={IEEE}\n}\n```\n\n## 参考文献\n- [原始 Light CNN 实现（Caffe）](https:\u002F\u002Fgithub.com\u002FAlfredXiangWu\u002Fface_verification_experiment)。\n- [PyTorch](https:\u002F\u002Fgithub.com\u002Fpytorch\u002Fpytorch)。","# LightCNN 快速上手指南\n\n## 环境准备\n\n- **系统要求**：推荐使用 Python 2.7（当前版本仅支持 Python 2.7）。\n- **前置依赖**：\n  - [PyTorch](http:\u002F\u002Fpytorch.org\u002F)：请根据官网指引安装对应版本的 PyTorch。\n  - 其他依赖可通过 `pip install -r requirements.txt` 安装（如需）。\n\n> 注意：由于项目基于 Python 2.7，建议在兼容的环境中运行。\n\n---\n\n## 安装步骤\n\n1. **克隆仓库**：\n\n```Shell\ngit clone https:\u002F\u002Fgithub.com\u002Fyour-repo\u002Flight-cnn.git\ncd light-cnn\n```\n\n2. **安装依赖**：\n\n```Shell\npip install -r requirements.txt\n```\n\n> 如果遇到依赖安装问题，可尝试使用国内镜像源加速安装，例如：\n\n```Shell\npip install -r requirements.txt -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n---\n\n## 基本使用\n\n### 1. 准备数据集\n\n- 下载并准备人脸数据集，如 CASIA-WebFace、VGG-Face 或 MS-Celeb-1M。\n- 所有图像应转换为灰度图，并归一化为 **144x144** 大小（根据关键点对齐）。\n- 可从以下链接下载已对齐的 LFW 数据集：\n  - 百度云盘：[LFW 对齐数据](https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1eR6vHFO)\n\n### 2. 训练模型（以 LightCNN-9 为例）\n\n```Shell\npython train.py --root_path=\u002Fpath\u002Fto\u002Fdatasets \\\n        --train_list=\u002Fpath\u002Fto\u002Ftrain\u002Flist.txt \\\n        --val_list=\u002Fpath\u002Fto\u002Fval\u002Flist.txt \\\n        --save_path=\u002Fpath\u002Fto\u002Fsave\u002Fmodels \\\n        --model=\"LightCNN-9\" --num_classes=79077\n```\n\n> 注意：\n> - `--num_classes` 应根据你的训练集身份数量设置。对于 LightCNN-29v2，该值为 **80013**。\n> - `--train_list` 和 `--val_list` 文件格式应与 Caffe 兼容，或使用 `torchvision.datasets.ImageFolder` 加载。\n\n### 3. 模型评估（提取特征）\n\n```Shell\npython extract_features.py --resume=\u002Fpath\u002Fto\u002Fmodel.pth \\\n                   --root_path=\u002Fpath\u002Fto\u002Fdatasets \\\n                   --img_list=\u002Fpath\u002Fto\u002Ftest\u002Flist.txt \\\n                   --save_path=\u002Fpath\u002Fto\u002Fsave\u002Ffeatures \\\n                   --model=\"LightCNN-9\" --num_classes=79077\n```\n\n> 使用 `vlfeat` 或 `sklearn` 工具计算 ROC 曲线、EER 和 TPR@FPR 等指标。\n\n### 4. 使用预训练模型（可选）\n\n- LightCNN-9 模型下载地址：[Google Drive](https:\u002F\u002Fdrive.google.com\u002Fopen?id=0ByNaVHFekDPRWk5XUFRvTTRIVmc)\n- LightCNN-29 模型下载地址：[Google Drive](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F0ByNaVHFekDPRMGlLWVBhbkVGVm8\u002Fview)\n- LightCNN-29v2 模型下载地址：[Google Drive](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1Jn6aXtQ84WY-7J3Tpr2_j6sX0ch9yucS)\n- LightCNN v4 模型下载地址：[Google Drive](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F1zFB8RmxeS00Nbq2fM0EoME15RIHtVOqn\u002Fview?usp=sharing)\n\n> 注意：加载模型时，请参考 `train.py` 中的实现方式。","某金融科技公司正在开发一款基于人脸识别的智能客服系统，用于在银行网点中快速验证客户身份，以提升服务效率和安全性。该系统需要在复杂光照和不同角度下准确识别用户面部，并且对训练数据中的噪声标签具有较强的鲁棒性。\n\n### 没有 LightCNN 时\n\n- 训练模型时，由于数据集中存在大量噪声标签，导致模型在验证集上的识别准确率较低，误识率较高。\n- 模型结构较为复杂，训练时间长，资源消耗大，难以在有限的硬件条件下部署。\n- 在实际应用中，面对不同角度、光照条件下的图像，模型泛化能力差，影响用户体验。\n- 缺乏针对小样本或低质量数据的优化策略，导致模型在实际场景中表现不稳定。\n- 需要依赖昂贵的商业人脸识别解决方案，增加了开发成本和维护难度。\n\n### 使用 LightCNN 后\n\n- LightCNN 的轻量化设计和对噪声标签的鲁棒性显著提升了模型在低质量数据下的识别准确率，降低了误识率。\n- 简洁的网络结构减少了训练时间和计算资源消耗，使得模型能够在普通服务器上高效运行。\n- 模型在多种光照和角度条件下表现出良好的泛化能力，提高了实际使用中的识别稳定性。\n- 提供了针对小样本训练的优化方法，使模型在数据量有限的情况下仍能保持较高的识别性能。\n- 基于开源实现，企业可以灵活定制和部署，大幅降低开发和维护成本。\n\nLightCNN 通过其高效的网络结构和对噪声标签的鲁棒处理，显著提升了金融场景下人脸识别系统的准确性和实用性。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FAlfredXiangWu_LightCNN_e27cf5f6.png","AlfredXiangWu","Alfred Xiang Wu","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FAlfredXiangWu_c8e5c8bf.png","魔炮厨 | 夏娜厨 | 久远厨 | 珂朵莉厨 | PSN: wkira_vivio","Reconova","Beijing","AlfredXiangWu@gmail.com",null,"https:\u002F\u002Falfredxiangwu.github.io\u002F","https:\u002F\u002Fgithub.com\u002FAlfredXiangWu",[25],{"name":26,"color":27,"percentage":28},"Python","#3572A5",100,962,167,"2026-03-30T18:34:57","MIT",3,"Linux, macOS","需要 NVIDIA GPU，显存 8GB+，CUDA 11.7+","16GB+",{"notes":38,"python":39,"dependencies":40},"项目仅支持 Python 2.7，建议使用虚拟环境管理。训练和评估需要下载并准备特定格式的面部数据集（如 CASIA-WebFace、MS-Celeb-1M 等），并且需要将图像调整为 144x144 灰度图。模型文件需从指定链接下载，首次运行可能需要较大的存储空间。","2.7",[41],"pytorch",[43,44],"开发框架","图像",[41,46,47],"face-recognition","lightcnn",2,"ready","2026-03-27T02:49:30.150509","2026-04-06T06:45:24.218297",[53,58,63,68,72,77,82],{"id":54,"question_zh":55,"answer_zh":56,"source_url":57},5670,"如何解决加载模型权重时出现的 'Missing key(s)' 错误？","需要从 state_dict 的键中移除 'module' 前缀。例如，将 'module.conv1.filter.weight' 改为 'conv1.filter.weight'。","https:\u002F\u002Fgithub.com\u002FAlfredXiangWu\u002FLightCNN\u002Fissues\u002F54",{"id":59,"question_zh":60,"answer_zh":61,"source_url":62},5671,"训练时损失变为 NaN，如何解决？","可以尝试降低 fc2 层的学习率，或者使用预训练模型初始化网络。如果仍然无效，可参考代码中的 [这些行](https:\u002F\u002Fgithub.com\u002FAlfredXiangWu\u002FLightCNN\u002Fblob\u002Fmaster\u002Ftrain.py#L71-L81) 进行调整。","https:\u002F\u002Fgithub.com\u002FAlfredXiangWu\u002FLightCNN\u002Fissues\u002F4",{"id":64,"question_zh":65,"answer_zh":66,"source_url":67},5672,"如何在 PyTorch 中正确加载预训练模型？","如果使用 GPU，直接加载模型；如果使用 CPU，则需通过 `map_location='cpu'` 加载，并对键进行处理：`restore_dict = {k[7:]: v for k, v in checkpoint['state_dict'].items()}`。","https:\u002F\u002Fgithub.com\u002FAlfredXiangWu\u002FLightCNN\u002Fissues\u002F64",{"id":69,"question_zh":70,"answer_zh":71,"source_url":67},5673,"如何解决解压预训练模型时出错的问题？","请确保下载的压缩包完整，或参考 Issue #37 中的解决方案。",{"id":73,"question_zh":74,"answer_zh":75,"source_url":76},5674,"如何在自己的数据集上训练 LightCNN 时避免损失变为 NaN？","建议降低 fc2 层的学习率，或使用预训练模型初始化网络。此外，可以尝试修改数据加载器的 shuffle 参数为 True，并根据数据集调整超参数。","https:\u002F\u002Fgithub.com\u002FAlfredXiangWu\u002FLightCNN\u002Fissues\u002F14",{"id":78,"question_zh":79,"answer_zh":80,"source_url":81},5675,"如何在 IJB-A 数据集上复现论文中的测试结果？","IJB-A 的评估方式与 IJB-B 和 IJB-C 类似，可以参考 insightface 项目中的实现。Caffe 模型 A 是基于 CASIA-WebFace 训练的 LightCNN-4 层模型。","https:\u002F\u002Fgithub.com\u002FAlfredXiangWu\u002FLightCNN\u002Fissues\u002F78",{"id":83,"question_zh":84,"answer_zh":85,"source_url":76},5676,"如何从零开始训练 LightCNN 模型？","可以尝试设置数据加载器的 shuffle 参数为 True，并根据所使用的数据集调整超参数。若使用非 MS-Cele 数据集，可能需要进一步优化训练配置。",[],[88,97,106,114,122,135],{"id":89,"name":90,"github_repo":91,"description_zh":92,"stars":93,"difficulty_score":33,"last_commit_at":94,"category_tags":95,"status":49},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",[43,44,96],"Agent",{"id":98,"name":99,"github_repo":100,"description_zh":101,"stars":102,"difficulty_score":48,"last_commit_at":103,"category_tags":104,"status":49},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,"2026-04-05T11:33:21",[43,96,105],"语言模型",{"id":107,"name":108,"github_repo":109,"description_zh":110,"stars":111,"difficulty_score":48,"last_commit_at":112,"category_tags":113,"status":49},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",[43,44,96],{"id":115,"name":116,"github_repo":117,"description_zh":118,"stars":119,"difficulty_score":48,"last_commit_at":120,"category_tags":121,"status":49},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",[43,105],{"id":123,"name":124,"github_repo":125,"description_zh":126,"stars":127,"difficulty_score":48,"last_commit_at":128,"category_tags":129,"status":49},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",[44,130,131,132,96,133,105,43,134],"数据工具","视频","插件","其他","音频",{"id":136,"name":137,"github_repo":138,"description_zh":139,"stars":140,"difficulty_score":33,"last_commit_at":141,"category_tags":142,"status":49},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",[96,44,43,105,133]]