简单聊聊3D高斯与传统深度学习在使用CUDA时的不同

本文参考链接:

https://www.youtube.com/watch?v=1buFrKUaqwM

最近在看3D高斯的源代码,发现其中submodules文件夹下有许多的.cu文件。进一步的,发现其中的代码是使用C++实现的,且涉及对CUDA核心的直接使用。代码用CUDA直接实现了3D高斯实验中的一些计算问题。如计算3D高斯在二维屏幕上的投影、将投影转化成近似圆、计算tile等操作...

令我疑惑的是3DGS的源代码明明使用了Pytorch,这些涉及算法核心原理的步骤为什么不直接使用pytorch实现,为什么会多出这些.cu源码?

原来,Pytorch之所以称为"深度学习框架",是因为pytorch是一种更高层的封装,pytorch集成了许多在深度学习中使用的算子,如卷积、池化、激活函数等。这些算子显然在一般的深度学习任务中能够非常方便的使用,提高工作效率。

3DGS与此的不同之处在于,3DGS是一门渲染技术,本质上并不涉及这些常规的深度学习算子 操作。3DGS为了能够使用GPU进行并行运算,其源码部分进行了自定义的算子,这些算子能够实现3DGS所需要的光栅化操作。

而在整个代码的外层,仍是由pytorch进行对接,而核心的计算部分,是自定义的算子。而非pytorch本身集成的算子。

所以本质上,3DGS只是与一般的神经网络思路相同,包含前向传播和反向传播两个过程。并没有卷积等提取图像特征的工作,取而代之的是图像的光栅化技术。

相关推荐
测试工程师成长之路几秒前
2026版AI辅助开发工具链:从辅助到协同的范式跃迁
人工智能
yugi9878386 分钟前
PNCC(Power-Normalized Cepstral Coefficients)— MATLAB 实现
开发语言·人工智能·matlab
AI棒棒牛7 分钟前
第 03 讲《监督学习:数据、标签、Loss与训练循环》
人工智能·学习·yolo·目标检测·yolo26
甲维斯8 分钟前
GLM5.2超过Opus4.8Think,全球第二了!
前端·人工智能·ai编程
宝贝儿好13 分钟前
【LLM】第二章:HuggingFace入门学习
人工智能·深度学习·神经网络·学习·算法·自然语言处理
早点睡啊13 分钟前
详解Loop Engineering,AI 编程从提示词走向循环系统
人工智能
我是小bā吖14 分钟前
Claude Code 模型接入阿里云 AI 网关并统计不同使用者的模型用量
网络·人工智能·阿里云
天风之翼15 分钟前
AI 全栈开发实战(9):用户设置与 API Key 管理——账号安全与用量统计
人工智能
小撒的私房菜20 分钟前
Multi-Agent 里谁来指挥?我用一个调度员,让多个 Agent 开始协作
人工智能·后端·agent
不喝水就会渴23 分钟前
【共创季稿事节】HarmonyOS 7.0 时代的新基建 :DevEco CLI + Claude Code,鸿蒙 AI 开发的黄金搭档
人工智能·华为·harmonyos