自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(80)
  • 收藏
  • 关注

原创 模型部署 - onnx 的导出和分析 - PyTorch 导出 ONNX - 学习记录

上面是 onnx 可以直接被导出的情况,是因为对应的 pytorch 和 onnx 版本都有相应支持的算子在里面。与上面例子不同的是,这个注册方式跟底层文件的写法是一样的(文件在虚拟环境中的 torch/onnx/symbolic_opset*.py )比如下面的这个报错,提示当前 onnx 的 opset 版本不支持这个算子,那我们可以去官方手册搜索一下是否在高的版本支持了这个算子。有些算子在 onnx 中是有的,但是在 pytorch 中没被登记,则需要。(实际上就是一个矩阵乘法)

2024-03-03 01:02:38 5134

原创 CUDA编程 - 用向量化访存优化 elementwise 核函数 - 学习记录

Element-wise操作是最基础,最简单的一种核函数的类型,它的计算特点很符合GPU的工作方式:对于每个元素单独做一个算术操作,然后直接输出。虽然简单,但深度学习领域,有很多算子都是这个类型。常见的有Add,Mul,Concat,各种激活Sigmoid,Relu及它们的变体,归一化里的BatchNorm都属于这个类型。

2024-02-26 23:20:05 2203

原创 CUDA编程 - 用向量化访存优化 - Cuda elementwise - Add(逐点相加)- 学习记录

Element-wise 操作是最基础,最简单的一种核函数的类型,它的计算特点很符合GPU的工作方式:对于每个元素单独做一个算术操作,然后直接输出。Add 函数 :逐点相加传入 数组 a,b,c传入 数据数量 N传出结果 数组c。

2024-02-26 17:03:47 3027

原创 vscode 离线安装--扩展包

在很多情况下,我们不能联网下载 vscode 的扩展包,下面记录一下怎么离线安装和下载。

2024-02-26 10:57:19 938

原创 CUDA编程 - Nsight system & Nsight compute 的安装和使用 - 学习记录

在 cuda 编程中,经常会用到 Nsight system 和 Nsight compute 进行性能分析等,下面做个学习总结。本篇包括安装和常用分析思路总结,具体实践操作总结会放在下一篇博客。

2024-02-23 15:53:42 16967 2

原创 工程师每日刷题 -5

智能指针是一个RAII类模型,用于动态分配内存,其设计思想是将基本类型指针封装为(模板)类对象指针,并在离开作用域时调用析构函数,使用delete删除指针所指向的内存空间。智能指针的作用是,能够处理内存泄漏问题和空悬指针问题。分为auto_ptr、unique_ptr、shared_ptr和weak_ptr四种,各自的特点:对于auto_ptr,实现独占式拥有的概念,同一时间只能有一个智能指针可以指向该对象;

2024-02-14 01:26:44 1194

原创 CUDA编程 - 共享内存 - shared memory - 学习记录

1、共享内存是可受用户控制的一级缓存。2、共享内存是基于存储体切换的架构。所以我们必须要解决存储体冲突的问题数据重复利用全局内存合并线程之间有共享数据4、线程访问共享内存的时候需要排队等候5、以行的方式访问全局内存的时候,性能最好6、在GPU上线程块的大小或者线程束的大小可以理想地映射为数据集的大小。对于一个长为N的数据,我们可以最多用N/2个线程来进行。7、共享内存的主要作用是减少对全局内存的访问,或者改善对全局内存的访问模式。

2024-02-14 01:09:01 2250

原创 三维点云常用数据增强 - python【代码记录】

这里做个代码记录,方便以后调用。

2024-02-06 12:42:40 797

原创 wsl + vscode 离线配置 ERROR: Faild to download https://update.code.visualstudio.com

很多情况下是没有现成的VS Code Server程序的,需要手动下载。记住上面的Commit ID,可以通过下面的链接下载 vscode-server-linux-x64.tar.gz。然后将vscode-server-linux-x64.tar.gz上传在服务器上的$HOME/.vscode-server/bin文件夹中,解压。在wsl中下载不了 vscode 的核心。运行下面两行命令,建立空的$HOME/.vscode-server/bin文件夹。重新运行 wsl与vs的链接即可。

2024-02-02 16:15:44 3421 2

原创 CUDA编程- - GPU线程的理解 thread,block,grid - 学习记录

3、同一个线程束中的线程存储访问合并在一起了,长方形布局只需要一次访问操作就可以获得连续的内存数据 // 正方形要两次访问。在 blockIdx.x = 1 中, blockDim.x 表示所要求每个线程块启动的线程数量,在这 = 128。3、在核函数中编写单个线程的使用代码,再调用核函数,便可简单的达到 cpu 中 openmp 的多线程方式。在 cpu 中,用 openmp 并行计算,有限的线程数对 128 进行分组运算。2、线程数量的多少是由线程块,线程,线程网格等决定的,

2024-01-27 18:02:18 3110 2

原创 ubuntu 编译使用 liblas 读取点云

在ubuntu上使用las读取点云。

2024-01-23 17:55:46 953 1

原创 工程师每日刷题 -4

CNN 本质上是一个多层感知机 (MLP),其成功的原因关键在于它所采用的【稀疏连接】(局部感受)和【权值共享】的方式,一方面减少了的权值的数量使得网络易于优化,另一方面降低了过拟合的风险。,即内联函数是在编译期间直接展开,可以减少函数调用的花销,即是编译阶段就确定调用哪个函数了。多态是依托于类的,多态的使用必须是在类创建以后,而构造函数是用来创建构造函数的,所以不行。与虚函数的作用不是一路的。C++不支持友元函数的继承,不能继承的函数指定不是虚函数。多态是依托于类的,要声明的多态的函数前提必须是虚函数。

2023-11-30 10:48:46 509

原创 工程师每日刷题 -3

对激活函数进行求导,如果此部分大于1,那么层数增多的时候,最终的求出的梯度更新将以指数形式增加,即发生梯度爆炸,如果此部分小于1,那么随着层数增多,求出的梯度更新信息将会以指数形式衰减,即发生了梯度消失。weak_ptr 相对于 shared_ptr 来说,避免了两个对象相互使用一个 shared_ptr成员变量指向对方,造成循环引用,使引用计数失效,从而导致内存泄漏。1.weak_ptr 通常情况下需要跟 shared_ptr 一起使用。问题:深度学习梯度消失与梯度爆炸现象,如何处理?

2023-11-29 14:29:52 482

原创 工程师每日刷题 -2

关键:当元素 Ai,j 逆时针旋转后就有了 Ai,j = Aj,(n-i) 的关系。给出一个 n*n 矩阵,将其逆时针旋转 90 °,但是不能开辟新的内存空间。情况一:数据集大,提升模型大小泛化性没有提升。模型泛化性差,如何解决?

2023-11-28 11:03:58 479

原创 工程师每日刷题 -1

自注意力机制的缺陷就是:模型在对当前位置的信息进行编码时,会过度的将注意力集中于自身的位置, 因此作者提出了通过多头注意力机制来解决这一问题。多头注意力融合了来自于相同的注意力池化产生的不同的知识,这些知识的不同来源于相同的查询、键和值的不同的子空间表示。基于适当的张量操作,可以实现多头注意力的并行计算。

2023-11-27 16:16:20 526

原创 pytorch导出onnx不成功的时候如何解决? - 学习记录

可以看到,其实已经支持了,但还是导不出。所以这里要先注册一下这个算子。python1导不出onnx,可以去。• 使用onnx-surgeon。• 一般是用在加速某些算子上使用。查看一下,是否支持了这个算子。主要是这个函数,用来注册算子。

2023-10-28 00:41:32 1626

原创 用PyTorch导出ONNX,以及onnxsimplify的使用 - 学习记录

学习记录

2023-10-22 01:15:37 1185

原创 CUDA编程 - 使用cuda进行矩阵乘法的加速方法 - 学习记录

🐖:CUDA有规定,一个block中可以分配的 thread 的数量最大是 1024 个线程。如果大于 1024 会显示配置错误。假设是 A(4x8) * B(8x4) = C(4x4)

2023-10-16 01:17:02 724

原创 CUDA编程 - cpp文件 和 cu 文件的相互引用 -学习记录

这里记录了在同一个项目中,如何在cpp文件中引用 .cu 文件。

2023-10-15 23:57:27 1134 1

原创 常用 ubuntu环境配置

经常要配置环境,做个ubuntu20.04 安装显卡驱动,cuda,cudnn,tensorrt的记录。

2023-10-11 16:02:15 255

原创 Cuda与TensorRT 实践记录 - 专栏索引

Cuda与TensorRT 实践记录 - 专栏索引自己学习和实践的笔记,在这里做个记录,方便自己学习和检索。

2023-10-10 01:17:48 213

原创 面试问题记录

面试问题记录 1手撕NMS代码有用CUDA编程过么?如何减少模型的推理时间介绍卷积的底层实现方法语义分割有哪些损失函数?Anchor-free标签匹配方式U-Net为什么在扩散模型中有效?Transformer在图像中是怎么训练的?Transformer的计算复杂度,并如何降低?如果要在上万的图片中去搜索,怎么比较高效手撕NMS代码import numpy as npdef nms(dets,score): x1 = dets[:,0] y1 = dets[:,1] x2 =

2023-08-27 11:25:43 1656

原创 自动驾驶中的slam笔记 --惯性导航与组合导航

角速度加速度。

2023-08-27 11:10:44 970 1

原创 自动驾驶中的slam笔记 -- 数学基础总结

自动驾驶中的slam笔记 -- 数学基础总结

2023-08-15 15:03:41 593

原创 使用 Open3d-ML训练 Randlanet pytorch Semantic3d

在 git 上找了好多版 randlanet 的 torch 训练 semantic3d,发现训练的效果并不好,而且有些甚至连网络结构都不一样,最后终于找到一个训练效果不错 ,loss可以收敛的代码了,这里记录一下 使用训练 Randlanet 的 pytorch 版本 Semantic3d 的过程因为是 TF 用户,所以 顺便 学一下 torch 的代码。

2023-05-08 11:13:15 1302 5

原创 PointNet++ pytorch 代码论文阅读整理

set abstraction 由 sampling,grouping,pointnet 三个模块构成。

2023-05-04 18:17:59 284 1

原创 PointNet pytorch 代码论文阅读整理

对 PointNet 做个整理笔记。

2023-04-27 17:27:49 205 1

原创 PointNet 和 PointNet++ pytorch版本 复现 modelnet40

pointnet pytorch复现

2023-04-26 23:09:47 1940

原创 Randlanet 代码阅读 TF2 【网络结构】

主要看 inference()定义 feature dimension。

2023-04-24 18:46:27 502

原创 Randlanet 训练自己的数据集

Randlanet 训练自己的数据集

2023-04-22 18:12:32 2512 31

原创 Windows环境 Tensorflow-2.6.0 编译 C++ GPU Lib DLL (bazel)(后面会提供编译好的库)

Windows环境 Tensorflow-2.6.0 编译 C++ GPU Lib DLL (bazel)(后面会提供编译好的库)

2023-02-27 17:07:52 1608 2

原创 RandlaNet 从环境配置到C++推理部署

Randlanet 环境配置到 c++ 推理部署

2023-02-27 13:59:37 1232

原创 Randlanet ubuntu+30显卡 + TF2环境 训练Semantic3D

Randlanet 30显卡 ubuntu 训练 semantic3D

2023-02-27 13:57:28 2076 40

原创 GPU&CUDA 向量相加

cuda向量相加 & vs 实践

2023-02-22 22:31:31 144

原创 GPU编程与CUDA

一些gpu基础

2022-11-21 20:06:20 423

原创 CPU与GPU的基本知识

cpu与gpu的基本知识

2022-11-19 00:08:49 813

原创 【学习记录】python自适应线性神经元Adaline

自适应线性神经元一些记录

2022-11-11 00:17:51 481

原创 【学习记录】python感知机实现鸢尾花分类

python感知机实现尾花分类

2022-11-09 00:15:14 1264

原创 【学习记录】python感知机

用python实现感知机

2022-11-08 22:52:17 564

原创 Ubuntu20.04.3&& PCL1.12+VTK7.1.1&&多版本PCL安装

ubuntu20.04&pcl1.12-vtk7.1.1&多版本pcl安装

2022-08-11 12:38:38 3040 5

sample-cbr.onnx

是博客的参考模型,博客地址:https://blog.csdn.net/weixin_40653140/article/details/136420062?spm=1001.2014.3001.5502

2024-03-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除