You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

复现RGBD人脸防欺骗CMFL论文时DataFolder类无法加载训练样本

问题成因
  • 核心根本原因是数据集加载阶段,标注文件对应的所有样本路径均无法找到对应文件,DataFolder类默认会过滤路径无效的样本,最终训练集样本总数为0,触发PyTorch DataLoader的num_samples正整数校验规则,抛出对应报错。
  • 具体可细分为三类常见原因:
    1. 预处理数据集路径配置错误:PROTOCOL-grand_test-curated.csv中记录的样本路径前缀为/home/Dataset/FaceAntiSpoofing/HQ-WMCA/MC-PixBiS-224/preprocessed/,但你实际存放mc-pixbis-224预处理数据的目录和该路径不匹配,导致程序无法定位文件。
    2. 预处理数据集本身不完整:你下载或自行生成的MC-PixBiS-224预处理数据存在缺失,未包含协议文件标注的全部.hdf5样本文件。
    3. 协议与数据集版本不匹配:你使用的PROTOCOL-grand_test-curated.csv版本和预处理数据集的版本不对应,文件名、路径拼接规则存在差异,导致路径匹配失败。
解决方法
  • 第一步:校验路径配置正确性
    执行命令ls /home/Dataset/FaceAntiSpoofing/HQ-WMCA/MC-PixBiS-224/preprocessed/face-station/,如果提示路径不存在,说明预处理数据存放路径和配置路径不一致,修改数据集配置文件中的预处理根目录为你实际存放MC-PixBiS-224数据的路径即可。
  • 第二步:校验预处理数据集完整性
    如果路径存在,随机选取缺失提示中的一个文件路径校验,比如执行ls /home/Dataset/FaceAntiSpoofing/HQ-WMCA/MC-PixBiS-224/preprocessed/face-station/02.04.19/1_03_0064_0000_06_01_013-e3a1456b.hdf5,如果确实不存在说明预处理数据不全:
    • 若预处理数据为自行生成,重新运行预处理流程,检查预处理过程是否有报错、是否提前中断。
    • 若预处理数据为下载的公开包,重新校验文件哈希值和官方提供的校验值是否一致,确认下载完整后重新解压。
  • 第三步:校验协议与数据集匹配性
    打开PROTOCOL-grand_test-curated.csv,随机选取一条记录的文件名,和本地预处理目录下的实际文件名做对比,查看文件名规则(比如命名分段、后缀、哈希段规则)是否一致,如果不一致,更换和预处理数据集版本匹配的协议文件,或者修改数据加载类的路径拼接逻辑,使其能正确匹配本地文件名。
  • 临时验证方案:可在DataFolder类的过滤逻辑中新增统计输出,打印总标注数、缺失文件过滤数,确认是否所有样本都因路径问题被过滤后,再针对性排查。

内容的提问来源于stack exchange,提问作者Speedarion

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 01:36:04