xiangyong58
海外Top高校博士,主要研究高效轻量化Deep-Neural-Network模型设计、压缩和可解释性,应用领域为计算机视觉、普适计算。研究项目经历:基于特定Chip的高性能DNN模型开发【AI Chip】、障碍物规避【自动驾驶应用场景】、时空大数据可视化分析【智慧交通】、数据挖掘【智慧城市领域】。
博客内容主要为“科研&学习笔记”。
展开
-
卷积报错:AttributeError: ‘Conv2d‘ object has no attribute ‘total_ops‘ (已解)
卷积报错:AttributeError: 'Conv2d' object has no attribute 'total_ops', Only Tensors created explicitly by the user (graph leaves) support the deepcopy protocol at the moment原创 2024-05-21 14:42:40 · 616 阅读 · 0 评论 -
CUDA error: the provided PTX was compiled with an unsupported toolchain.(已解决:多机多卡并行训练配置问题)
CUDA error: the provided PTX was compiled with an unsupported toolchain. 可行解决原创 2024-05-14 14:56:10 · 505 阅读 · 1 评论 -
mmcv安装及问题汇总解答(可行实践)
mmcv-full安装及问题解答 (成功运行)原创 2024-02-24 23:22:51 · 332 阅读 · 0 评论 -
pytorch底层矩阵运算:How to check if PyTorch or Numpy is using OpenBLAS or MKL? &线性代数库BLAS(cblas_gemm示例)
检测pytorch使用哪种线性代数运算库(矩阵或矢量间线性代数); BLAS, MKL, OpenBLAS及cblas_gemm矩阵运算代码.原创 2023-08-14 21:50:25 · 429 阅读 · 0 评论 -
分布式训练Warning: Grad strides do not match bucket view strides. This may indicate grad was not
由而导致的Grad strides不匹配问题。原创 2023-08-08 01:46:20 · 2188 阅读 · 0 评论 -
pytorch报错 ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 1) local_rank:....
pytorch报错 ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 1) local_rank:....原创 2023-06-26 14:08:28 · 10797 阅读 · 0 评论 -
多GPU训练报错:at least two devices cuda:1 and cuda:0;Caught ValueError in replica 0 on device 0
DataParallel和DistributedDataParallel多GPU训练时报错,RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cuda:1 and cuda:0!原创 2023-04-26 13:06:39 · 1148 阅读 · 1 评论 -
分布式训练模型保存torch.save()、加载model.load_state_dict问题解析:Missing key(s) in state_dict,Unexpected key()
分布式训练模型保存torch.save()、加载model.load_state_dict常见问题:Missing key(s) in state_dict,Unexpected key()原创 2022-11-18 15:06:12 · 1014 阅读 · 0 评论 -
FLOPS(每秒浮点运算次数), TFLOP,Statistical vs. Computational Efficiency
FLOPS全称是floating-point operation per second,每秒浮点运算次数,用于衡量计算机的算力和执行效能。The difference between pure computational efficiency and statistical efficiency.原创 2022-10-20 03:37:32 · 5267 阅读 · 0 评论 -
报Warning: variables__flops__or_params__ are already defined for the---ptflops can affect your code!
Warning: variables__flops__or_params__ are already defined for the---ptflops can affect your code!原创 2022-10-12 23:22:38 · 544 阅读 · 0 评论 -
.sh脚本调用服务器上conda虚拟环境 & CUDA版本与服务器GPU driver不匹配(ubuntu系统、pytorch)
无法调用服务器上的虚拟环境pytorch, CUDA initialization: The NVIDIA driver on your system is too old (found version 10010)原创 2022-10-04 00:27:27 · 729 阅读 · 0 评论 -
卷积复杂度计算、im2col算法、Normalization【实现方法解析】
计算复杂度分析,卷积官方代码分析,Batch Norm, Layer Norm, Group Norm 理解原创 2022-09-15 16:46:27 · 979 阅读 · 0 评论 -
pytorch报错:RuntimeError: CUDA error: CUBLAS_STATUS_ALLOC_FAILED when calling `cublasCreate(handle)`
多GPU分布式运行pytorch程序报错:RuntimeError: CUDA error: CUBLAS_STATUS_ALLOC_FAILED when calling ‘cublasCreate(handle)`原创 2022-07-13 16:22:27 · 6179 阅读 · 1 评论 -
PyTorch 分布式训练 (DP/DDP/torchrun/多机多卡) <笔记总结>
PyTorch 分布式训练问题总结: (DP/DDP/torchrun/多机多卡)原创 2022-06-29 21:21:55 · 3329 阅读 · 0 评论 -
Pytorch小知识汇总三:两个或多个tensor逐元素求和sum
两个或多个tensor逐元素求和sum原创 2022-06-19 13:20:47 · 6610 阅读 · 0 评论 -
Python代码 时间消耗latency和空间(memory)消耗(详细剖析、求解)
Python代码 时间消耗和空间(内存)消耗(详细剖析、求解)Memit lineprofiler原创 2022-05-18 10:19:48 · 310 阅读 · 1 评论 -
pytorch C++ 扩展:torch.utils.cpp_extension
torch.utils.cpp_extension-PyTorch 1.0 中文文档 & 教程原创 2021-12-24 14:39:46 · 637 阅读 · 0 评论 -
基于python numpy 手写实现 Batch Normalization
二 、基于python numpy,下面我们自己实现批量归一化层。import timeimport torchfrom torch import nn, optimimport torch.nn.functional as Fimport syssys.path.append("..") import d2lzh_pytorch as d2ldevice = torch.device('cuda' if torch.cuda.is_available() else ...原创 2021-10-04 20:29:27 · 1066 阅读 · 0 评论 -
transformer和functional.py错:Argument interpolation should be of type InterpolationMode instead of int
transformer和functional.py报错:Argument interpolation should be of type InterpolationMode instead of int原创 2021-09-24 23:50:19 · 5739 阅读 · 3 评论 -
Pytorch分布式报错1.non-zero exit status,2.cuDNN error:CUDNN_STATUS_INTERNAL_,3.CUDA error:illegal memory
1.returned non-zero exit status 1.One epoch之后报错,信息如下:RuntimeError: Expected to have finished reduction in the prior iteration before starting a new one. This error indicates that your module has parameters that were not used in producing loss. You..原创 2021-07-26 15:53:54 · 2658 阅读 · 0 评论 -
Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspectivewith Transformers
重新思考语义分割范式——SETR转载from:https://zhuanlan.zhihu.com/p/348418189 请多支持原创一、论文信息标题:《Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspectivewith Transformers》作者:Sixiao Zheng et al.(复旦大学 & 牛津大学 & 萨里大学 & 腾讯优图 & 脸书)文章:h...转载 2021-07-04 10:50:45 · 1249 阅读 · 0 评论 -
特征挖掘(四)--特征融合
基本概念在很多工作中,融合不同尺度的特征是提高分割性能的一个重要手段。低层特征分辨率更高,包含更多位置、细节信息,但是由于经过的卷积更少,其语义性更低,噪声更多。高层特征具有更强的语义信息,但是分辨率很低,对细节的感知能力较差。如何将两者高效融合,取其长处,弃之糟泊,是改善分割模型的关键。按照融合与预测的先后顺序,分类为早融合(Early fusion)和晚融合(Late fusion)。早融合(Early fusion): 先融合多层的特征,然后在融合后的特征上训练预测器(只在完全融合之后,才统原创 2021-05-07 14:48:48 · 1076 阅读 · 0 评论 -
特征挖掘三:主成分分析和奇异值分解
主成分分析(Principal components analysis)和奇异值分解(Singular value decomposition)在探索性数据分析和建模阶段都是非常重要的方法。当一组数据有很多变量(高维度数据),而且变量直接不独立的时候,处理数据时会非常麻烦,常需要对原始数据进行降噪和降维处理。・主成分分析常用于解决用一个精简的变量集尽可能多地展示数据集的变异性这一统计问题。・奇异值分解常用于解决用一个低秩矩阵很好地表示原始数据这一数据压缩问题。...原创 2021-04-21 15:40:31 · 354 阅读 · 0 评论 -
特征挖掘(一):问题与方法总结
(一)维数灾难(Curse of dimensionality) 维数灾难就是说当样本的维数增加时,若要保持与低维情形下相同的样本密度,所需要的样本数指数型增长。从下面的图可以直观体会一下。当维度很大样本数量少时,无法通过它们学习到有价值的知识;所以需要降维,一方面在损失的信息量可以接受的情况下获得数据的低维表示,增加样本的密度;另一方面也可以达到去噪的目的。有两种办法试图克服这个问题:首先是特征提取(Feature extraction),通过组合现有特征来达到降维的目的;然后是特征...原创 2021-04-15 16:11:34 · 1821 阅读 · 0 评论 -
特征挖掘(二):连续特征离散化方法
1定义:首先from wiki给出一个标准的连续特征离散化的定义:在统计和机器学习中,离散化是指将连续属性,特征或变量转换或划分为离散或标称属性/特征/变量/间隔的过程。这在创建概率质量函数时非常有用 - 正式地,在密度估计中。它是一种离散化的形式,也可以是分组,如制作直方图。每当连续数据离散化时,总会存在一定程度的离散化误差。目标是将数量减少到手头的建模目的可忽略不计的水平。2.当前状态current status早期,诸如等宽(equal-width),等频(equal-frequen原创 2021-04-12 14:26:24 · 1364 阅读 · 0 评论 -
数据处理之 — 归一化,标准化,正则化, 不同数据区间的映射
归一化 (Normalization):属性缩放到一个指定的最大和最小值(通常是1-0)之间,这可以通过preprocessing.MinMaxScaler类实现。常用的最小最大规范化方法(x-min(x))/(max(x)-min(x))除了上述介绍的方法之外,另一种常用的方法是将属性缩放到一个指定的最大和最小值(通常是1-0)之间,这可以通过preprocessing.MinMaxScaler类实现。使用这种方法的目的包括:1、对于方差非常小的属性可以增强其稳定性。2、维持原创 2020-09-10 15:54:15 · 1675 阅读 · 0 评论 -
ImageNet ILSVRC2012数据集(分类部分)简要介绍和初步处理
ILSVRC2012数据集(分类部分)简要介绍和初步处理简介即大名鼎鼎ImageNet2012竞赛的数据集,在图像分类数据集中属于最常用的跑分数据集和预训练数据集。主要内容可以参考ILSVRC2012_devkit_t12.gz的readme.txt和中文翻译版内容详解下载的文件主要包括以下几个文件:ILSVRC2012_img_train.tarILSVRC2012_img_val.tarILSVRC2012_img_test.tarILSVRC2012_devkit原创 2020-08-24 10:36:10 · 11084 阅读 · 3 评论 -
pytorch network知识点四: 模型参数Parameter和浮点数FLOPs计算方法统计, GFLOPs =? GMacs
模型的参数量和浮点计算量方法统计, ptflops, torchinfo, and thop;ptflops和 torchinfo 方法不同之处,FLOPs原创 2020-08-04 09:50:37 · 3709 阅读 · 2 评论 -
SLAM或视觉里程计_语义SLAM和语义分割_Computer Vision 数据集
SLAM或视觉里程计1. TUM RGB-D数据集自带Ground-truth轨迹与测量误差的脚本(python写的,还有一些有用的函数)。网址:点击打开链接2. KITTI数据集地址:点击打开链接著名的室外数据集,包括单目视觉 ,双目视觉, velodyne, POS 轨迹。3. Oxford数据集含有一些Fabmap相关的数据集,用来验证闭环检测的算法。室外场景。网址:点击打开链接4. ICL-NUIM数据集RGB-D数据集,室内向。提供ground-truth和o原创 2020-07-01 15:09:32 · 554 阅读 · 0 评论 -
Pytorch 小知识点汇总三--numpy数组 求均值,方差,标准差
一、numpy数组 求均值,方差,标准差import numpy as np arr = [1,2,3,4,5,6]#求均值arr_mean = np.mean(arr)#求方差arr_var = np.var(arr)#求标准差arr_std = np.std(arr,ddof=1)print("平均值为:%f" % arr_mean)print("方差为:%f" % arr_var)print("标准差为:%f" % arr_std)...原创 2020-06-27 14:51:33 · 10381 阅读 · 2 评论 -
图像分析——伪彩色图像、heatmap图像, Matplotlib默认颜色图区间
一、Opencv 伪彩色图像最重要的是cv2.applyColorMap(heatmap, cv2.COLORMAP_JET),将np.unit8格式的矩阵转化为colormap,第二个参数有很多种配色方案,上面这个是最常用的蓝红配色,值越小越接近蓝色,越大越接近红色。伪彩色图像原理分析:同灰度图像一样,也是单波段的图像,但是这个单波段图像是有颜色的,不再是灰度图那样的,而是它的每一个灰度值都对应颜色空间中的某一种颜色。它可以是彩色的图像,但是需要时刻谨记的是该图像只是单通道的。个人理解伪彩原创 2020-06-22 12:45:35 · 3893 阅读 · 0 评论 -
神经网络感受野(receptive field)推到分析与计算(总结)
经典目标检测和最新目标跟踪都用到了RPN(region proposal network),锚框(anchor)是RPN的基础,感受野(receptive field, RF)是anchor的基础。在卷积神经网络中,感受野的定义是 卷积神经网络每一层输出的特征图(feature map)上的像素点在原始图像上映射的区域大小。例如1:原始图像为 5 x 5 ,卷积核(Kernel Size)为 3 x 3 ,padding 为 1 ,stride为 2 ,依照此卷积规则,连续做两次卷积。熟悉卷积过程的原创 2020-06-15 12:40:59 · 1487 阅读 · 0 评论 -
实例分割instance segmentation_综述
实例分割instance segmentation_综述一简介:从编程实现角度学习Faster R-CNN基本概念:目标、anchor、rois(region of interests) 、NN框架流程;参考:Faster R-CNN https://zhuanlan.zhihu.com/p/32404424针对ICCV2019 paper: YOLACT: Real-time Instance Segmentation,具体分析: ...原创 2020-06-03 15:49:46 · 1669 阅读 · 0 评论 -
ubuntu 18.04 python 3.7安装opencv4.2.0_libgtk2.0-dev 报错_ cv2.imshow显示错误The function is not implemented
sudoapt-get install libgtk2.0-dev报错如下:The following packages have unmet dependencies:libgtk2.0-dev : Depends: libpango1.0-dev (>= 1.20) but it is not going to be installed ...原创 2020-03-24 13:49:46 · 2448 阅读 · 2 评论 -
知识图谱进阶学习(一)
介绍:AI训练的模型,更像是一个具有统计知识的机器,从关联和概率的角度出发,试图在描述世界背后的 “真理”。然而,我们更希望的是,像人一样,具有分析和推理能力的机器智能。如果你问我,哪一种形式最接近我心中的 “人工智能”,我会说:知识图谱。知识图谱,本质上,是一种揭示实体之间关系的语义网络。演化进程:...原创 2020-03-20 21:32:58 · 335 阅读 · 0 评论 -
Pytorch 小知识点汇总二 -- 1)python索引目录append/insert法 (subprocess、 distutils),2)tensor类型的构建与相互转换,3)NumPy数据类型
一: 添加索引目录append/insert方法方法一:sys.path.append()python程序中使用 import XXX 时,python解析器会在当前目录、已安装和第三方模块中搜索 xxx,如果都搜索不到就会报错。使用sys.path.append()方法可以临时添加搜索路径,方便更简洁的import其他包和模块。这种方法导入的路径会在python程序退出后失效。1. ...原创 2020-03-12 18:51:41 · 3556 阅读 · 0 评论 -
Pytorch 小知识点汇总一 -- save_image, Image对象size, dataloader之getitem返回值, VScode 报错’already started‘
一、torchvision.utils.save_image报错TypeError: Cannot handle this data type1.img如果是uint16的矩阵而不转为uint8,Image.fromarray这句会报错。所以加上np.uint8(img)很有必要rgb_image = rgb_image.astype(np.uint8)2.在pytorch中t...原创 2020-02-18 17:52:12 · 5322 阅读 · 1 评论 -
Depth Estimation Summary 深度估计
求取场景所对应的深度值比较常用的方法是从kinect的红外传感器中得到深度(NYU Depth V2)或者借助于激光雷达(KITTI),kinect虽然比较廉价,但是所采集到的深度范围(超过4m kinect估计的深度的精度就会下降)和精度都有限。而激光雷达的成本就比较高了。双摄像头可以测距和建立立体环境首先三维和二维的区别,这个大家都容易理解,二维只有x、y两个轴,比如一张素描画,我...原创 2020-01-31 10:49:37 · 1167 阅读 · 0 评论 -
Pytorch 神经网络( out of memory )
一、从头开始训练的时候正常,大概占了4/5的显存容量,然后中断了, 再resume 就会出现out of memory ?因为你 load checkpoint 的时候把参数加载到 显存 里面了;而且大概率你的code是这么写的然后报的错:model = Network().cuda()# 这里如果你存下来的权重device在cuda上,那么将自动载入GPU; 此时 model在GPU...原创 2020-01-13 22:18:24 · 2022 阅读 · 0 评论 -
深度学习的可解释性—知识汇总
一、网络可解释性相关论文汇总对于模型的可解释性而言,很难做到像解数学题一样,每一步都能给出有效的解释。筛选出了161篇相关的论文,按照时间顺序和不同的出版物进行排序,结果进行了整理。参考网址:1.https://github.com/oneTaken/awesome_deep_learning_interpretability2.https://github.com/hando...原创 2020-01-08 16:36:03 · 1495 阅读 · 0 评论