g
gyccc/LangGPT-facial_emotions_detection-NPU
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

LangGPT/facial_emotions_detection 在昇腾 NPU 上的部署

1. 简介

本项目将 LangGPT/facial_emotions_detection 模型适配到昇腾 NPU (Ascend910B) 上运行。

  • 模型架构:ViTForImageClassification
  • 基模型:google/vit-large-patch16-224
  • 任务类型:多分类图像分类(面部表情识别)
  • 类别数:7
  • 类别:sad, disgust, angry, neutral, fear, surprise, happy
  • 输入尺寸:224 x 224 RGB
  • 框架:PyTorch + Transformers
  • 权重来源:ModelScope snapshot_download 本地加载

2. 验证环境

项目版本/信息
NPU 驱动npu-smi 25.5.2
NPU 设备Ascend910_9362
Python3.11.14
PyTorch(环境自带)
torch_npu(环境自带)
transformers4.50.0

NPU 健康状态:OK

3. 推理运行

pip install -r requirements.txt
python inference.py

推理结果 (NPU Top-5):

  • Top-1: neutral (0.184739)
  • Top-2: sad (0.169405)
  • Top-3: happy (0.152713)
  • Top-4: disgust (0.147103)
  • Top-5: fear (0.130241)

完整推理日志 (logs/inference.log):

=== LangGPT/facial_emotions_detection NPU Inference ===
Model: LangGPT/facial_emotions_detection
Loader type: transformers
Input shape: torch.Size([1, 3, 224, 224])
Output shape: torch.Size([1, 7])
Num classes: 7

NPU Top-5 Predictions:
  Top-1: neutral (0.184739)
  Top-2: sad (0.169405)
  Top-3: happy (0.152713)
  Top-4: disgust (0.147103)
  Top-5: fear (0.130241)

All class probabilities:
  sad: 0.169405
  disgust: 0.147103
  angry: 0.126599
  neutral: 0.184739
  fear: 0.130241
  surprise: 0.089200
  happy: 0.152713

4. 精度验证

对单张测试图片进行 CPU 与 NPU 一致性验证:

指标数值
max_abs_error0.000305
mean_abs_error0.000171
relative_error0.1234%
cosine_similarity0.999985
threshold1.0%
结果PASS
  • CPU Top-1: neutral
  • NPU Top-1: neutral
  • Top-1 match: True

5. 性能参考

指标数值
avg latency6.1507 ms
min latency6.1041 ms
max latency6.2148 ms
p50 latency6.1746 ms
p90 latency6.2148 ms
p95 latency6.2148 ms
images/sec162.58

测试配置: warmup 2 次 + 正式 10 次,单卡 NPU。

6. 精度评测说明

本项目包含单图 smoke consistency 验证,非官方完整验证集评测。详细指标见第 4 节。

7. 自验证截图

见 screenshots/self_verification.png。

8. 日志文件

日志说明
logs/inference.logNPU 推理输出
logs/accuracy.logCPU-NPU 精度一致性
logs/benchmark.logNPU 性能基准测试

9. 注意事项

  1. 权重通过 ModelScope snapshot_download 下载,不提交到仓库。
  2. 推理时使用 local_files_only=True 避免 HuggingFace 自动下载。
  3. 测试图片为随机网络图片,实际性能可能因输入不同而略有差异。

10. 标签

#NPU #Ascend #Ascend910 #ViT #ImageClassification #FacialEmotion