影视聚合站 科技 文章内容

不可思议!英伟达新技术训练NeRF模型最快只需5秒,单张RTX 3090实时渲染,已开源

发布时间:2022-01-16 14:36:33来源:机器之心

机器之心报道

编辑:杜伟、陈萍

英伟达将训练NeRF模型从5小时缩至5秒。

你曾想过在5秒内训练完成狐狸的NeRF模型吗?现在英伟达做到了!

令人不可思议的是,就如谷歌科学家JonBarron在推特上表示的:18个月前,训练NeRF还需要5小时;2个月前,训练NeRF最快也需要5分钟;就在近日,英伟达的最新技术——基于多分辨率哈希编码的即时神经图形基元,将这一过程缩减到只有5秒!!??

NeRF是在2020年由来自加州大学伯克利分校、谷歌、加州大学圣地亚哥分校的研究者提出,其能够将2D图像转3D模型,可以利用少数几张静态图像生成多视角的逼真3D图像。之后又出现了改进版模型NeRF-W(NeRFintheWild),可以适应充满光线变化以及遮挡的户外环境。

然而,NeRF的效果是非常消耗算力的:例如每帧图要渲染30秒,模型用单个GPU要训练一天。因此,后续的研究都在算力成本方面进行了改进,尤其是渲染方面。

现在,英伟达训练NeRF,最快只需5秒(例如训练狐狸的NeRF模型)!实现的关键在于一种多分辨率哈希编码技术,英伟达在论文《InstantNeuralGraphicsPrimitiveswithaMultiresolutionHashEncoding》进行了详细解读。

论文地址:https://nvlabs.github.io/instant-ngp/assets/mueller2022instant.pdf

项目地址:https://github.com/NVlabs/instant-ngp

项目主页:https://nvlabs.github.io/instant-ngp/

英伟达在4个代表性任务中对多分辨率哈希编码技术进行验证,它们分别是神经辐射场(NeRF)、十亿(Gigapixel)像素图像近似、神经符号距离函数(SDF)和神经辐射缓存(NRC)。每个场景都使用了tiny-cuda-nn框架训练和渲染具有多分辨率哈希输入编码的MLP。

首先是NeRF场景。大型的、自然的360度场景(左)以及具有许多遮蔽和镜面反射表面的复杂场景(右)都得到了很好的支持。实时渲染这两种场景模型,并在5分钟内通过随意捕获的数据进行训练:左边的一个来自iPhone视频,右边的一个来自34张照片。

接着是十亿(Gigapixel)像素图像近似。结果显示,多分辨率哈希编码实现了几个数量级的综合加速,能够在几秒钟内训练高质量的神经图形基元,并在数十毫秒内以1920x1080的分辨率进行渲染:如果你眨眼可能会错过它!

然后是神经符号距离函数(SDF)。如下动图展示了各种SDF数据集的实时训练进度,训练数据是使用NVIDIAOptiX光线追踪框架从真值网格动态生成的。

最后是神经辐射缓存(NRC)的直接可视化,其中网络预测每个像素路径的首个非镜面反射顶点的出射辐射,并根据实时路径跟踪器生成的光线进行在线训练。图左为使用Müller等人在2021论文《Real-timeNeuralRadianceCachingforPathTracing》中的三角波编码的效果,图右为本文多分辨率哈希编码技术的效果,允许网络学习更清晰细节,如阴影区域。

‍效果如此惊艳,特斯拉AI高级总监AndrejKarpathy也对这项研究感叹道:「令人印象深刻的架构组合和手工制作的元执行。我仍然不相信这项研究进展的这么好、这么快。」

更多的网友认为不可思议,可以预见下一步是在设备上运行,然后在设备上训练!

从5小时缩至5秒,英伟达在技术上做了哪些突破?

计算机图形基元基本上是由数学函数表征的,这些数学函数对外观(appearance)进行参数化处理。数学表征的质量和性能特征对视觉保真度至关重要,因此英伟达希望在捕获高频、局部细节的同时保持快速紧凑的表征。多层感知机(MLP)表征的函数可以用作神经图形基元,并已经被证明可以满足需求,比如形状表征和辐射场。

上述方法的一个重要共性是将神经网络输入映射到更高维空间的编码过程,这是从紧凑模型中提取高近似精度的关键。在这些编码中,最成功的是那些可训练、特定于任务的数据结构,它们承担了很大一部分学习任务。有了这些数据结构,便可以使用更小、更高效的多层感知机。但是,这类数据结构依赖于启发式和结构改变(如剪枝、分割或合并),从而导致训练过程复杂化、方法局限于特定任务、甚至限制GPU性能。

针对这些问题,英伟达提出一种多分辨率哈希编码(multiresolutionhashencoding),这是一种自适应、高效且独立于任务的技术。该技术仅包含两个值,分别是参数量T和预期最佳分辨率N_max。

英伟达的神经网络不仅有可训练的权重参数Φ,还有可训练的编码参数θ。这些被排列成L个级别(level),每个级别包含多达T个F维的特征向量。这些超参数的典型值如下表1所示:

多分辨率哈希编码的显著特征在于独立于任务的自适应性和高效性。

首先来看自适应性。英伟达将一串网格映射到相应的固定大小的特征向量阵列。低分辨率下,网格点与阵列条目呈现1:1映射;高分辨率下,阵列被当作哈希表,并使用空间哈希函数进行索引,其中多个网格点为每个阵列条目提供别名。这类哈希碰撞导致碰撞训练梯度平均化,意味着与损失函数最相关的最大梯度将占据支配地位。因此,哈希表自动地优先考虑那些具有最重要精细尺度细节的稀疏区域。与以往工作不同的是,训练过程中数据结构在任何点都不需要结构更新。

然后是高效性。英伟达的哈希表查找是,不需要控制流。这可以很好地映射到现代GPU上,避免了执行分歧和树遍历中固有的指针雕镂(pointer-chasing)。所有分辨率下的哈希表都可以并行地查询。

下图3展示了多分辨率哈希编码中的执行步骤:

2D多分辨率哈希编码示意图。

如上图所示,每个级别(其中两个分别显示为红色和蓝色)都是独立的,并在概念上将特征向量存储在网格顶点处,其中最低和最高分辨率之间的几何级数[N_min,N_max]表示为:

实验效果

英伟达在下面4个代表性任务中验证了多分辨率哈希编码:

十亿(Gigapixel)像素图像:MLP学习从2D坐标到高分辨率图像的RGB颜色的映射;

神经符号距离函数(Neuralsigneddistancefunction,SDF):MLP学习从3D坐标到表面距离的映射;

神经辐射缓存(Neuralradiancecaching,NRC):MLP从MonteCarlo路径跟踪器中学习给定场景的5D光场;

神经辐射场(NeRF):MLP从图像观察和相应的透视变换中学习给定场景的3D密度和5D光场。

结果表明,在经过几秒钟的训练后,英伟达的多分辨率哈希编码在各类任务实现了SOTA效果,如下图1所示:

下图6中,英伟达使用多分辨率哈希编码近似一张分辨率为20,000×23,466(469MRGB像素)的RGB图像。

下图7展示了四个场景中,神经符号距离函数(SDF)训练11000步后的效果:

图8展示了神经辐射缓存(Neuralradiancecaching,NRC)应用的流程:

下图12为模块化合成器和大型自然360度场景的NeRF渲染效果。图左在使用一张RTX3090的情况下,仅需5秒即累积了128个1080p分辨率的样本;图右使用同一张GPU,以每秒10帧的速度运行交互式进程(动效图见文章开头)。

使用Python快速构建基于NVIDIARIVA的智能问答机器人

NVIDIARiva是一个使用GPU加速,能用于快速部署高性能会话式AI服务的SDK,可用于快速开发语音AI的应用程序。Riva的设计旨在轻松、快速地访问会话AI功能,开箱即用,通过一些简单的命令和API操作就可以快速构建高级别的对话式AI服务。

2022年1月26日19:30-21:00,最新一期线上分享主要介绍:

对话式AI与NVIDIARiva简介

利用NVIDIARiva构建语音识别模块

利用NVIDIARiva构建智能问答模块

利用NVIDIARiva构建语音合成模块

点击阅读原文,报名直播吧。

©THEEND

转载请联系本公众号获得授权

投稿或寻求报道:content@jiqizhixin.com

© 2016-2022 ysjhz.com Inc.

站点统计| 举报| Archiver| 手机版| 小黑屋| 影视聚合站 ( 皖ICP备16004362号-1 )