GPU上的图形渲染与神经网络训练
计算机图形学渲染过程的数学本质是大量矩阵的运算,深度学习是高维张量,也属于矩阵运算,所以深度学习与计算机图形学渲染过程,在最基本运算单元在数学形式上是等价的。(当然神经网络的核心还有其神经元连接架构,优化器,loss等)。
另外渲染做了一件什么事呢?
对3D空间坐标投影到2D屏幕,在人类视觉和物理原理的指导下,对人类关键的细节,进行抛弃,可以理解为一种隐性的loss,这个loss就是渲染的约束。
神经网络学习过程就是对信息的压缩,这个压缩的loss是我们训练模型时写好的,这个loss约束了我们的学习方向。
渲染即就是带视觉感知原理的压缩,神经网络学习也是带人为设计loss的压缩。
近几年,我们看见神经渲染兴起,神经渲染是一项融合了深度学习与传统计算机图形学的技术,它旨在使用神经网络来生成或增强图像与视频,从而创造出极其逼真且可控的视觉内容。它的核心目标是学习一个能够理解并模拟真实世界视觉规律的“渲染函数”。神经渲染的本质,可以理解为一种从数据中学习并“压缩”3D世界视觉规律的过程。
虽然GPU已经做了很多正向渲染,但是在具体业务中,后优化阶段,我们也有逆渲染的操作,逆渲染也是矩阵操作,基本操作部分是可以并行化,但是优化部分通常无法并行化,每个点并不是独立的。
人类感知这个世界,在视觉上最基本的输入,其实是2D,惊人的是,通过我们自己也不知道的内在先验模型处理,实际是可以正确地行动在这个3D世界。我们有时说人眼感知世界是双目视觉,用左右视觉差构建3D世界,但是我们闭一个眼,我们依然可以正确在3D世界行动。所以人感知3D世界并没有那么简单。
这个内在先验或许就是一个逆渲染模型,这个逆渲染模型在工作时,进行了一次2D点关联,并不是独立点逆渲染映射。大脑感知3D世界,所做的应该是隐式重建,是关于真实世界的结构化信念,基于像素推断可能的世界,大脑更可能是一个属于生成模型的预测-矫正器。