机器学习
文章平均质量分 77
qq_29750461
这个作者很懒,什么都没留下…
展开
-
OWOD环境配置和训练细节
本代码基于Detectron2,可参看我之前的博文配置 Detectron2Centos7之Detectron2的环境配置_centos7.6如何编译detectron2-CSDN博客Detectron2训练自己的数据集(较详细)_detrectron2训练自己的数据集-CSDN博客不过这里由于我的CUDA版本升级到了 12.2,所以我的CUDA的相关配置可参看。原创 2024-08-31 18:39:59 · 817 阅读 · 0 评论 -
【OWOD论文】开放世界中OD代码_3_评价指标
OWOD论文中的评价过程,影响实验结果的处理,这里主要记录源代码中提供的评价内容。熟悉下OWOD的评价过程。原创 2024-08-31 17:57:46 · 447 阅读 · 0 评论 -
【OWOD论文】开放世界中OD代码_2_模型部分
本文记录OWOD代码中的模型代码部分。数据部分可看我上一个博客【【OWOD论文】开放世界中OD代码_1_数据部分-CSDN博客。原创 2024-08-30 18:08:00 · 961 阅读 · 0 评论 -
【OWOD论文】开放世界中OD代码_1_数据部分
这里记录下开放世界目标检测论文 【Towards Open World Object Detection】的实验和代码细节。原创 2024-08-27 15:02:28 · 663 阅读 · 0 评论 -
【记录】快速下载VOC数据集脚本
最近实验需要用到VOC数据集,搜了下网上的VOC下载教程,貌似不太行,这里记录一下一个下载VOC2007的脚本,Linux下的 sh 文件。具体命令如下代码所示。原创 2024-08-26 10:28:05 · 158 阅读 · 0 评论 -
【解决】The detected CUDA version(12.2) mismatches version that was used to compile PyTorch(11.3)
最近集群系统升级了,CUDA的版本变为了12.2,而安装的Torch版本为11.3,明显出现了版本冲突。但是问题在于,Torch官网支持CUDA12以上的版本似乎都是Torch2.0及以上版本了。好在Torch2.x 完全兼容Torch1.x,所以安装Torch2.x也能适用于实验的相关配置。原创 2024-08-24 21:49:31 · 525 阅读 · 0 评论 -
【解决】RuntimeError: CUDA driver initialization failed, you might not have a CUDA gpu.
【解决】RuntimeError: CUDA driver initialization failed, you might not have a CUDA gpu原创 2024-04-29 16:18:10 · 2139 阅读 · 0 评论 -
【冷知识】torchvision.datasets.ImageFolder加载类标不正确
【冷知识】torchvision.datasets.ImageFolder加载类标不正确原创 2023-05-29 11:18:33 · 316 阅读 · 0 评论 -
【农业害虫识别论文二】Agricultural Pest Super-Resolution and Identification with Attention Enhanced Residual an
【农业害虫识别论文二】Agricultural Pest Super-Resolution and Identification with Attention Enhanced Residual an原创 2022-12-29 12:05:30 · 167 阅读 · 0 评论 -
【农业害虫识别论文一】Crop pest classification based on deep convolutional neural network and transfer learning
【农业害虫识别论文一】Crop pest classification based on deep convolutional neural network and transfer learning原创 2022-12-27 12:00:28 · 510 阅读 · 0 评论 -
【记录】Ubuntu20.04安装和配置Anaconda
【记录】Ubuntu20.04安装和配置Anaconda原创 2022-12-17 13:21:42 · 840 阅读 · 0 评论 -
【SwinTransformer源码阅读二】Window Attention和Shifted Window Attention部分
swintransformer源码阅读原创 2022-07-20 18:00:34 · 4448 阅读 · 0 评论 -
【SwinTransformer源码阅读一】build_loader部分代码
记录下SwinTranformer的阅读原创 2022-07-15 22:43:57 · 953 阅读 · 0 评论 -
CenterNet网络模型代码_3-pose_dla_dcn.py
这里主要针对在CenterNet中表现还可以的改进过的 dla 网络进行分析,主要还是结合代码进行说明。下面就是代码:# BN 动量参数BN_MOMENTUM = 0.1# 获取打印日志对象logger = logging.getLogger(__name__)# 获取预训练网络def get_model_url(data='imagenet', name='dla34', hash='ba72cf86'): return join('http://dl.yf.io/dla/models原创 2020-11-24 11:47:44 · 1676 阅读 · 2 评论 -
CenterNet网络模型代码_2-resnet_dcn.py
本文件其实和msra_resnet.py类似,进入博文,这里只把两者的不同说下,不同的部分有以下几处,总体感觉作者在这里添加DCN模块很牵强(仅个人吐槽),可能对反卷积有帮助吧:# 反卷积操作的通道不同# used for deconv layers self.deconv_layers = self._make_deconv_layer( 3, [256, 128, 64], [4, 4, 4],原创 2020-11-22 10:30:40 · 1708 阅读 · 2 评论 -
CenterNet网络模型代码_1-msra_resnet.py
这里开始进行阅读CenterNet源码模型中的models\networks的部分的网络代码,从简单的 Resnet 模型开始,这里先给出卷积的输入输出的计算公式,以及反卷积的输入输出计算公式:1 2维卷积操作(Conv2d):nn.Conv2d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True))参数解析:in_channel: 输入数据的通道数,例RGB图片原创 2020-11-21 12:23:29 · 1135 阅读 · 0 评论 -
BatchNorm的原理和计算实例
关于这个问题,其实很多同学都会有疑问,因为在论文中是一系列的公式展开,其实并不是很好理解。关于BN其实BN操作的目地是使一批feature map 进行归一化,避免数据过大而导致网络性能的不稳定。我记得网有一篇博文中对BN有较详细的介绍,大概意思就是,输入数据经过若干层的网络输出其实会让数据特征分布和初始分布不一致,降低模型的泛化性能,引入BN机制后,先将特征变为标准正态分布,然后再通过γ和β两个参数将标准正态分布适当拉回归一化前的分布,相当于在原分布和标准正态分布进行折中,以此增强模型的泛化性。原创 2020-11-20 21:11:53 · 4905 阅读 · 4 评论 -
目标检测中Anchor如何映射到原图
Anchor在目标检测中是比较常见的,引入Anchor主要是为了让检测更精准,当然现在有很多Anchor Free的方法也达到了较好的结果,但是最近项目中用的是基于Anchor的方法,但是置于Anchor怎么映射到原图其实网上很多内容比较混乱,我这里把自己的理解记录下来,附加上一些代码用来解释说明。什么是Anchor?Anchor中文是锚框的意思...原创 2020-09-10 15:09:30 · 4240 阅读 · 3 评论 -
【深度学习】标签平滑
标签平滑采用如下思路解决这个问题:在训练时即假设标签可能存在错误,避免“过分”相信训练样本的标签,也就避免了过拟合。具体实例如下:1 假设某个三分类问题,最终的预测输出为(1.,5.4.),经过Softmax函数之后,就可以得到:2 假设该样本的初始label为(0,1,0),则对应的损失函数,使用交叉熵计算为:3 可以发现,其实模型的学习目标是 让 0.721 无限接近类标 1,但是其实一般情况下,预测的分类准确率没必要非要是1,可以是 0.99等,那么我们就考虑从初始的label入手,进行.原创 2020-07-10 09:03:08 · 536 阅读 · 0 评论 -
Pytorch常用代码段集锦
本实验内容基于Pytorch 1.51 导入包和版本查询# -*- coding:utf-8 -*-import torchimport torch.nn as nnimport torchvisionif __name__=="__main__": print(torch.__version__) # torch 版本号 print(torch.version.cuda)# torch cuda 版本号 print(torch.backends.cudnn.version())# cud原创 2020-07-09 19:16:41 · 327 阅读 · 0 评论 -
【原理】CAM(类激活映射)模型可视化
前言深度学习如火如荼,神经网络的可解释性一直是讨论的热点,其实可解释性常和模型的可视化联系在一起,模型可视化或者模型可解释说到是对某一类别具有可解释性,直接画出来特征图并不能说明模型学到了某种特征。这里主要讲一下基于类激活映射(Class Activation Mapping)的可视化。这个技术其实提出时间比较早,但是效果较好,如果希望做模型可视化,推荐大家研究一下,近期我也是用到了这个模型可视化,所以这里主要先针对原理进行简要的阐述,希望可以加深自己的认识。可视化方法其实可视化有很多方法:1原创 2020-06-29 19:19:02 · 8285 阅读 · 6 评论 -
Shell脚本一次执行多条命令
Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。简要来讲,shell脚本就是 .sh 结尾的文件,在Linux系统中经常被用到。问题 如何使用 Shell 脚本执行多条命令呢?我们需要遵从以下三个原则:1.每个命令之间用 ; 隔开说明:各命令的执行给果,不会影响其它命令的执行。换句话说,各个命令都会执行,但不保证每.原创 2020-06-28 09:31:06 · 13796 阅读 · 0 评论 -
【解决】MMDetection环境配置问题
MMDetection 环境配置点击这个开源库更新很快,我使用的是目前最新的一版,但是我没有用最新的 torch 1.5 去跑这个开源库,原因我之前博客里说过,torch1.5 跑这个库还有些 bug其实官方文档给的很详细了,一步步i操作即可,但是作为用户,我们在配置数据的时候,总是会有异常出现,所以这里要总结一下。Windows 系统需要注意,在代码运行时候可能出现临时文件不可读的异常,我正是因为这个bug 才直接改为 Centos7系统的。我的实验环境 显卡 RTX 2070S Centos7原创 2020-05-18 15:35:56 · 696 阅读 · 0 评论 -
Centos7 安装Anaconda3
平时在安装Anaconda3时,如果直接在Anaconda官网下载,会发现很慢,所以我们一般采用国内镜像下载点击安装前,先安装 bzip2yum -y install bzip2不然会有异常Centos7 64位系统下,选择黑色标记那个root权限下的命令为:wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.1-Linux-x86_64.sh会发现下载的很快,然后运行命令:[root@原创 2020-05-16 18:04:48 · 5565 阅读 · 0 评论 -
【全面】Centos7安装CUDA和cuDNN
本文讲解如何在centos7系统下下载安装CUDA和cuDNN,以下命令均在root权限下使用1 确认电脑上已安装了GPU和显卡驱动.检查GPU是否安装及型号lspci | grep nvidia检查Nvidia驱动版本nvidia-smi1 准备环境,一般来讲安装都需要GCC环境输入 gcc -v 查看是否已经安装过 gcc,或者使用命令 rpm -qa | grep “gcc*” 来检查,如果安装过,此命令一般是空的,不会报异常信息一般来讲Centos7,默认 gcc是 4.8.5原创 2020-05-15 16:47:29 · 2077 阅读 · 0 评论 -
【全面亲测】Centos7安装Nvidia驱动
本文是来介绍Centos7下如何进行Nvidia驱动的安装的。以下所有的操作在root权限下操作。先介绍下自己的环境:Nvidia显卡为RTX 2070S,系统信息为:cat /etc/centos-release #输出Centos 7 系统版本信息CentOS Linux release 7.8.2003 (Core)uname -r #输出系统内核信息3.10.0-1127.el7.x86_64一些准备工作1 引入 ELRepo 源,官网,这个是Linux系统一个著名的源,所谓原创 2020-05-14 22:58:57 · 1296 阅读 · 0 评论 -
Windows10安装COCOAPI
之前写过一篇在Windows10下安装COCOAPI,点击进入,但是那个方式一比较麻烦,也没有介绍清楚,其实在编译过程中是需要安装VC++2015的,这里提供一个VC++2015的安装包,下载后,点击默认安装即可。地址:https://pan.baidu.com/s/1_Vg0O3vQFbhslu8gIuhu2w提取码:zn65方式二那个只有python36版本的,对其它版本不太友好所以这里想再写一遍本文还需要git,如果没有安装的话,参考我的博文点击查看在以上准备工作结束后,直接在命令行.原创 2020-05-09 18:35:15 · 1620 阅读 · 0 评论 -
Windows10安装CUDA和cuDNN
前言我们都知道,CUDA和cuDNN是用来加速深度学习计算的,那么怎么在Windows上面安装CUDA以及cuDNN呢?准备阶段1 自己电脑上应该有Nvidia显卡,显存最好8G或者8G以上,当然4G或者6G也行,只不过就是Batch size 设置小一点2 查看Nvidia显卡版本,一般Windows上有显卡的话,显卡驱动都是自动安装的,所以我们可以通过命令行,然后输入Nvidia-smi来查看自己电脑上的驱动版本:这里我的显卡驱动版本是432.0 ,CUDA版本为10.1,这里 需要注原创 2020-05-09 15:49:13 · 2121 阅读 · 0 评论 -
【目标跟踪】pysot调试运行记录 [Windows系统]
这里主要是针对Windows 10 系统进行配置说明,需要注意使用这个程序,电脑上必须要有GPU,只有CPU是不可行的,因为目标跟踪计算量比较大,所以需要GPU进行并行的运算。那么怎么开始呢?首先明确一点,其实Windows和Linuxs就是两种操作系统,国内可能使用Windows较多,但是Github的代码的配置一般是在Linux环境下,主要是因为深度学习的代码需要大规模的计算设备,这些设备...原创 2020-04-18 10:20:21 · 2092 阅读 · 4 评论 -
【解决】 CUDA driver version is insufficient for CUDA runtime version
异常信息:CUDA driver version is insufficient for CUDA runtime version这个异常可能会出现在任何深度学习框架中,当遇到这个问题时,根据字面意思,我们可以推敲出来是 CUDA的驱动版本和CUDA的运行版本不一致造成的。那么关于CUDA 驱动版本和运行版本的区别,您可以借鉴这篇博文很详细点击即可我出现这个异常是在 Pytorch 框架下...原创 2019-12-09 22:55:11 · 3225 阅读 · 0 评论 -
【解决】cannot connect to X server
该问题常出现在Linux跑程序时,含图像处理的程序中。这个原因是:X server是Linux系统上提供图形用户界面的服务程序。当客户端主机Client访问服务器Server上的图形程序时,需要Server对该Client赋能访问图形程序的权限所以解决方法是对opencv 或者 matplotlib等库进行图象显示的时候,把显示部分的代码注释掉,就可以成功解决。比如:cv2.ims...原创 2019-12-09 22:05:47 · 26174 阅读 · 9 评论 -
Centos系统中Pytorch的安装
一些深度学习框架的安装一般需要适配CUDA版本,【这里需要说明GPU下有了CUDA这个粗GPU加速框架,可以不用cuDNN】。之前我因为没有掌握手边设备的root权限,所以我想试,也没办法安装,今早突然茅塞顿开,恍然悟出了该怎么在Centos西当然如果你想在已有的CUDA下安装cuDNN对应的版本,可以到Nvidia1...原创 2019-12-08 14:50:03 · 4326 阅读 · 1 评论 -
Python Sklearn库中的随机森林分类 RandomForestClassifier
随机森林分类器。 scikit-learn v0.19.1随机森林是一个元估计器,它适合数据集的各个子样本上的多个决策树分类器,并使用平均值来提高预测精度和控制过度拟合。 子样本大小始终与原始输入样本大小相同,但如果bootstrap = True(默认值),则会使用替换来绘制样本。先看这个类的参数: class sklearn.ensemble.RandomForestClas...翻译 2018-08-08 21:38:51 · 52316 阅读 · 2 评论 -
Pandas DataFrame常用操作
DataFrame.median() 取中位数 DataFrame.loc[行标签,列标签] 选取数据,第一个值为行标签,第二值为列标签 DataFrame.iloc[行位置,列位置] pandas.read_csv() DataFrame.to_csv() DataFrame.head() DataFrame.tail() DataFrame.info() DataFrame.d...转载 2018-08-22 11:31:17 · 4955 阅读 · 0 评论 -
bootstrap,bagging,boosting三个概念的理解
1 booststraping:意思是依靠你自己的资源,称为自助法,它是一种有放回的抽样方法,它是非参数统计中一种重要的估计统计量方差进而进行区间估计的统计方法。其核心思想和基本步骤如下:(1)采用重抽样技术从原始样本中抽取一定数量(自己给定)的样本,此过程允许重复抽样。(2)根据抽出的样本计算统计量T。(3)重复上述N次(一般大于1000),得到统计量T。(4)计算上述N个统...转载 2018-08-21 09:46:38 · 848 阅读 · 0 评论 -
XGBoost参数
XGBoost参数在运行XGboost之前,必须设置三种类型成熟:general parameters,booster parameters和task parameters:General parameters:参数控制在提升(boosting)过程中使用哪种booster,常用的booster有树模型(tree)和线性模型(linear model)。 Booster paramete...转载 2018-08-21 11:50:58 · 207 阅读 · 0 评论 -
TypeError: only integer scalar arrays can be converted to a scalar index(MNIST数据集加载问题)
使用TensorFlow 入门(链接地址)在进行 MNIST 数据集的测试时,使用例子中的 Input_data.py 源码进行操作加载数据的时候,在进行 extract_images() 函数操作的时候,出现了 TypeError: only integer scalar arrays can be converted to a scalar index 这个错误,原因在于, _read32...原创 2018-09-17 09:39:25 · 4989 阅读 · 0 评论 -
协方差矩阵和矩阵相关系数的理解
在做机器学习的过程中经常会有矩阵的相关运算,这里就比较典型的协方差和矩阵的相关系数做个自我的理解记录。1.协方差如果两个变量的变化趋势一致,也就是说如果其中一个大于自身的期望值时另外一个也大于自身的期望值,那么两个变量之间的协方差就是正值;如果两个变量的变化趋势相反,即其中一个变量大于自身的期望值时另外一个却小于自身的期望值,那么两个变量之间的协方差就是负值。可以通俗的理解为:两个变量...原创 2018-08-13 10:39:20 · 57735 阅读 · 4 评论 -
Sklearn 中一些线性回归算法总结
scikit-learn对于线性回归提供了比较多的类库,这些类库都可以用来做线性回归分析,本文就对这些类库的使用做一个总结,重点讲述这些线性回归算法库的不同和各自的使用场景。 线性回归的目的是要得到输出向量Y和输入特征X之间的线性关系,求出线性回归系数θθ,也就是 Y=Xθ。其中Y的维度为m*1,X的维度为m*n,而θ的维度为n*1。m代表样本个数,n代表样本特征的维度。 ...转载 2018-08-13 08:55:04 · 11218 阅读 · 1 评论 -
基于Python3 使用ARIMA进行时间序列预测
引言: 在本文章中,我们将提供可靠的时间序列预测。我们将首先介绍和讨论自相关,平稳性和季节性的概念,并继续应用最常用的时间序列预测方法之一,称为ARIMA。简介: 时间序列提供了预测未来价值的机会。 基于以前的价值观,可以使用时间序列来预测经济,天气和能力规划的趋势,其中仅举几例。 时间序列数据的具体属性意味着通常需要专门的统计方法。在本教程中,我们将针对时间序列产生可靠...原创 2018-08-15 14:40:10 · 34649 阅读 · 8 评论