RAD-NeRF数字人模型训练详解
内容提要
本文详细介绍了RAD-NeRF模型的训练过程,包括系统环境介绍、练习环境建立和完整练习流程。练习需求CUDA和至少24G的GPU显存。
延伸解读
硬件门槛与显存占用
训练RAD-NeRF需要CUDA环境,GPU显存至少24G,实际训练中峰值显存占用超过22G。这意味着消费级显卡如RTX 3090(24G)可以满足,但更低显存的显卡可能无法运行。文章还提到在Docker容器中测试确认可运行,为环境隔离提供了参考。
环境配置的注意事项
推荐使用Anaconda创建干净的Python 3.10环境,以避免模块版本冲突。系统需安装build-essential和portaudio19-dev等工具,国内用户可替换为阿里云镜像加速。此外,需修改data_utils/process.py第50行以适应第三方模块字段变化,并编译四个扩展模块:freqencoder、gridencoder、shencoder和raymarching。
训练数据与ASR模型准备
训练视频要求fps 25、分辨率512*512、时长3~5分钟,但实测分辨率要求不严格,720*720也可成功。ASR模型使用wav2vec,代码默认从Hugging Face加载,若网络受限可下载到本地并修改nerf/asr.py第92~93行,或设置HF_ENDPOINT环境变量使用镜像站。
三阶段训练流程与文件管理
训练分为三步:先训练头部(200000迭代),再微调嘴唇(250000迭代,需保持与第一步相同的workspace路径),最后训练躯干(需指定新的workspace并传入第二步的头部检查点)。推理阶段需要data/transforms_train.json、data/bc.jpg以及躯干训练生成的ngp_epxxxx.pth文件,需按推理要求放置。
Q&A
RAD-NeRF模型的训练需要哪些系统环境?
RAD-NeRF模型的训练需要Ubuntu 22.04、Python 3.10、Pytorch 2.0.1和CUDA 11.7的系统环境。
训练RAD-NeRF模型需要多少GPU显存?
训练RAD-NeRF模型至少需要24G的GPU显存,峰值超过22G。
如何创建干净的Python环境以避免模块版本问题?
推荐使用Anaconda创建干净的Python环境,执行命令:conda create -n python310 python=3.10,然后激活环境。
训练RAD-NeRF模型的步骤有哪些?
训练分为三个步骤:训练头部、微调嘴唇和训练躯干,需保持路径一致。
训练所需的视频资料有什么要求?
训练资料要求为fps 25,分辨率512*512的视频,时长3~5分钟。
如何安装RAD-NeRF模型所需的扩展模块?
需要安装四个扩展模块:freqencoder、gridencoder、shencoder和raymarching,具体安装可通过pip命令完成。