PyTorch
夏日清风有你
研究深度学习,类脑计算、大模型、高性能计算、云计算和边缘计算领域。
展开
-
model.named_children() 使用
【代码】model.named_children() 使用。原创 2023-03-22 11:26:04 · 587 阅读 · 0 评论 -
Image.open()和cv2.imread()
Image.open()和cv2.imread()转载 2023-02-21 14:52:35 · 2174 阅读 · 0 评论 -
语义分割标签处理RBG 到gray再转回RGB(通用)
语义分割标签处理RBG 到gray再转回RGB原创 2023-02-20 16:04:53 · 391 阅读 · 0 评论 -
Pytorch实现卷积结构的类型及各自适用场景
Pytorch实现卷积结构的类型及各自适用场景原创 2023-02-18 20:06:04 · 165 阅读 · 0 评论 -
Crossentropyloss与 BCELoss差异
Crossentropyloss与 BCELoss差异转载 2023-02-14 17:17:49 · 324 阅读 · 0 评论 -
Pytorch详解NLLLoss和CrossEntropyLoss 交叉熵损失函数详情
交叉损失函数转载 2023-01-30 17:51:29 · 431 阅读 · 0 评论 -
BindsNET 安装过程
最近在看《Unsupervised Learning of Digit Recognition Using Spike-Timing-Dependent Plasticity 》这篇论文,想自己跑一下,加深理解。看了作者GitHub上面的代码,基于Brian写的,没捋顺代码,然后发现有基于pytorch写的,emm,代码量少很多。先装个环境,然后在抢救一下代码。下面记录了一下BindsNET安装过程。1. 使用conda,新建python3.6环境# 新建环境conda create -n BindN转载 2020-06-03 17:05:59 · 1633 阅读 · 0 评论 -
F.normalize学习计算
F.normalize学习计算转载 2022-11-07 21:18:43 · 2762 阅读 · 0 评论 -
numpy 与 torch中压缩、扩展维度的方法
numpy 与 torch中压缩、扩展维度的方法转载 2022-10-20 21:45:05 · 1228 阅读 · 0 评论 -
python 语义分割标签从灰度gray转RGB转处理方式
python 语义分割标签从灰度gray转RGB转处理方式原创 2022-10-07 17:06:12 · 844 阅读 · 2 评论 -
语义分割标签从RGB转到灰度gray处理方式
语义分割标签从RGB转到灰度处理方式原创 2022-10-07 15:38:10 · 1308 阅读 · 2 评论 -
pytorch 实现在预训练模型的扩展通道
pytorch 实现在预训练模型的扩展通道转载 2022-07-04 21:46:01 · 461 阅读 · 0 评论 -
Pytorch特征图heat map热力图可视化
网络热力图转载 2022-06-25 20:48:44 · 6136 阅读 · 0 评论 -
语义分割自定义数据集的读取
语义分割自定义数据集的读取转载 2022-06-25 14:51:05 · 306 阅读 · 0 评论 -
数据增强旋转
数据增强原创 2022-06-09 21:41:06 · 402 阅读 · 0 评论 -
pytorch 查看网络模型字典Key
模型字典查看原创 2022-06-07 20:16:38 · 1029 阅读 · 0 评论 -
解决pytorch多GPU训练的模型加载问题
由于多GPU训练使用了 nn.DataParallel(net, device_ids=gpu_ids) 对网络进行封装,因此在原始网络结构中添加了一层module。网络结构如下:而不使用多GPU训练的网络结构如下:重点多GPU训练好的模型,单GPU 如何正确加载方法一:(训练的时候必须写好的不同保存模式)或者写入字典方法二:无论有几个GPU 都按并行的方式加载即可,一个也可以,不影响或者字典中的加载参考链接:[1]https://blog.csdn.net/anshiquanshu/a原创 2022-06-07 20:14:06 · 1155 阅读 · 0 评论 -
解决错误TypeError: float() argument must be a string or a number, not ‘_NoValueType‘_
pytorch 中常见的numpy版本问题报错,本人深受困扰以下三个问题都是numpy 包版本的问题(本人遇到:2,3):1:UserWarning: Failed to initialize NumPy: No module named ‘numpy.core._multiarray_umath‘2: RuntimeError: implement_array_function method already has a docstring3:TypeError: float() argument原创 2022-04-23 22:26:05 · 9376 阅读 · 0 评论 -
python实现去除图片纯色边框和给图片补边
# encoding: utf-8# author: qbit# date: 2020-06-15# summary: 去除图片纯色边框import shutilfrom PIL import Image, ImageChopsImage.MAX_IMAGE_PIXELS = 10000000000import numpy as npdef TrimImgEdge(inImgPath, outImgPath): r""" 去除图片边框 inImgPath: 输入图片路原创 2022-04-18 20:04:49 · 3571 阅读 · 0 评论 -
linux单机多卡报错 CUDA device 1 but torch.cuda.device_count() is 1
安装了多个conda 环境,env1,env2, env3,env4cuda 0, 1,2, 3尝试使用同一个conda 环境跑2个测试用例,失败了,报错CUDA 不可用尝试2个环境,跑副本程序(copy一份)是可以的**注意:conda env list ( 查看环境)进入conda 的环境再运行,即是使用了当前环境...原创 2022-04-13 21:16:06 · 1727 阅读 · 0 评论 -
网络模型的参数化标准使用
import argparse # python的命令行解析的模块,内置于python,不需要安装def parse_args(): # 解析命令行参数 '''PARAMETERS''' # 建立参数解析对象 parser = argparse.ArgumentParser('PointNet') # 添加属性:给xx实例增加一个aa属性,如 xx.add_argument("aa") parser.add_argument('--batch_size', t原创 2022-04-04 11:34:06 · 630 阅读 · 0 评论 -
ResNet网络实现pytorch
"""resnet18的pytorch实现"""import torchimport torch.nn as nnimport torch.nn.functional as Fclass basic_block(nn.Module): """基本残差块,由两层卷积构成""" def __init__(self,in_planes,planes,kernel_size=3,stride=1): """ :param in_planes: 输入通道原创 2022-01-23 17:39:01 · 840 阅读 · 0 评论 -
用了这么就pycharm,才找到控制台可以同时运行多个程序,不会被覆盖掉。
控制台的2个程序可以同时运行原创 2022-01-09 10:27:59 · 2169 阅读 · 2 评论 -
plt 的显示问题
使用matplotlib.pyplot.imshow() 显示图像时出现“TypeError: Invalid dimensions for image data”的问题解决方法: https://blog.csdn.net/qq_17478877/article/details/88977295# 方法2:plt.imshow(ndarray) img = image[0] # plt.imshow()只能接受3-D Tensor,所以也要用image[0]消去batch那一维 img = img原创 2021-12-26 18:11:31 · 1683 阅读 · 0 评论 -
pytorch 实现神经网络学习率调整的方法
参考链接:https://blog.csdn.net/qyhaill/article/details/103043637转载 2021-12-24 15:40:18 · 199 阅读 · 0 评论 -
语义分割单通道和多通道输出交叉熵损失函数的计算问题
语义分割单通道和多通道输出交叉熵损失函数的计算问题作者讲的特别清晰。链接:https://www.cnblogs.com/gshang/p/13887133.html转载 2021-12-22 20:19:18 · 728 阅读 · 0 评论 -
pytorch语义分割二分类问题的两种做法
形式1:输出为单通道即网络的输出 output 为 [batch_size, 1, height, width] 形状。其中 batch_szie 为批量大小,1 表示输出一个通道,height 和 width 与输入图像的高和宽保持一致。在训练时,输出通道数是 1,网络得到的 output 包含的数值是任意的数。给定的 target ,是一个单通道标签图,数值只有 0 和 1 这两种。为了让网络输出 output 不断逼近这个标签,首先会让 output 经过一个sigmoid 函数,使其数值归一化到转载 2021-12-21 15:46:39 · 1553 阅读 · 1 评论 -
pytorch 计算flops和params
pytorch 计算 paramsfrom thop import profileimport torchfrom resnet_18 import Resnet_18, resnet18model = Resnet_18()input = torch.randn(1, 3, 256, 256)flops, params = profile(model, inputs = (input))print(flops)print(params)**FPS 计算过程 **res = []转载 2021-12-17 21:51:38 · 2626 阅读 · 0 评论 -
plt.savefig()的用法以及保存路径
if epoch % 10== 0: plt.title('ber:{:.3f},a: {:.3f},b:{:.3f},snr: {:.3f}'.format( error_rate, a, b,M )) plt.plot(r3) # 绘制波形 # save_image(r3, './img/fake_images-{}.png'.format(epoch + 1)...转载 2021-12-12 22:37:40 · 15459 阅读 · 4 评论 -
Linux 系统存储查询,系统占用、剩余查询命令
Linux服务器出现:No space left on device的解决方法1:查看命令df -h查看磁盘使用情况df -i 查看inode使用情况 2:Linux查看文件大小的简单指令# 查看虚拟机内存状态df -hl# 查看Linux目录大小du -sh /*# 查看当前目录下的总大小du -sh# 查看当前目录下的文件大小du -sh /home/*3 : 查看隐藏文件# 查看隐藏文件ls -al # 当前目录下的文件按照大小(k/M/G)降序排序(对文件夹排序原创 2021-11-22 15:27:52 · 4071 阅读 · 0 评论 -
np.vstack 函数实现多个数组的叠加(垂直、水平)
简介:np.vstack((a, b))垂直堆叠,要求两个数组矩阵具有相同的列数(以二维数组为例)np.hstack((a, b)) *注意是双扩后*水平堆叠,要求两个数组矩阵具有相同的行数(以二维数组为例)方法一:import numpy as npx = np.zeros((1,2,2))y = np.ones((1,2,2))z = np.ones((1,2,2))temp = np.vstack((x,y,z))方法二:# 写入listlist =[]原创 2021-11-14 11:22:21 · 4479 阅读 · 0 评论 -
pytorch修改resnet18 输入通道
方法一:扩张1通道为3通道,利用torch.expand()方法 model = resnet18(pretrained=False) # 主干提取网络 model.load_state_dict(torch.load('./resnet18-5c106cde.pth'), strict=False) print(model) par = summary(model, (3, 224, 224), device='cpu') print(par) net =原创 2021-11-07 18:23:59 · 3333 阅读 · 0 评论 -
TypeError: ‘numpy.float64‘ object cannot be interpreted as an integer
TypeError: ‘numpy.float64’ object cannot be interpreted as an integer解决办法:将numpy降级为1.17.5版本可解决原创 2021-10-24 11:31:14 · 4318 阅读 · 0 评论 -
tensorboard 图片保存于数据存储
1: 数据存储为CSV格式,如右边有matlab 或者python 画图即可参考链接:https://blog.oliverxu.cn/2021/01/09/Tensorboard%E4%B8%AD%E7%9A%84%E5%9B%BE%E6%94%BE%E5%88%B0%E8%AE%BA%E6%96%87%E4%B8%AD/2: 直接存储为SVG格式原创 2021-10-21 17:26:28 · 1892 阅读 · 0 评论 -
详解PyTorch项目使用TensorboardX进行训练可视化案例与图片保存
code1:from tensorboardX import SummaryWriter# from torch.utils.tensorboard import SummaryWriter # pytorch1.8 以上import torchwriter = SummaryWriter('lily3/logs')for n_iter in range(100): dummy_s1 = torch.rand(1) dummy_s2 = torch.rand(1) # da原创 2021-10-21 16:27:12 · 1175 阅读 · 0 评论 -
显示Dataloader读取的图像
该方法针对显示Dataloader读取的图像。PIL 与plt中对应操作不同,但原理是一样的,我试过用下方代码Image的方法 # 方法1:Image.show() # transforms.ToPILImage()中有一句 # npimg = np.transpose(pic.numpy(), (1, 2, 0)) # 因此pic只能是3-D Tensor,所以要用image[0]消去batch那一维 # 原作者的我运行失败,改成下面这样 img = transforms.ToPILImag转载 2021-10-21 11:11:57 · 2017 阅读 · 0 评论 -
深度学习之语义分割中的度量标准(准确度)(PA、MPA、IOU、FWIOU)
pixel accuracy,mean accuracy,mean IU,frequency weighted IU详解转自:https://blog.csdn.net/u014593748/article/details/71698246代码测试import numpy as np# https://blog.csdn.net/qq_21466543/article/details/82936246class Evaluator(object): def __init__(self原创 2021-10-19 22:56:25 · 2405 阅读 · 0 评论 -
Siamese网络
Siamese网络 就是两个共享参数的CNN。每次的输入是一对图像+1个label,共3个值。注意label=0或1(又称正负样本),表示输入的两张图片match(匹配、同一个人)或no-match(不匹配、非同一人)数据采用的是AT&T人脸数据。共40个人,每个人有10张脸。数据下载:AT&Timport osroot = '/datasets/att_faces/'txt_root = './datasets/train.txt'train_batch_size = 32原创 2021-09-27 23:10:12 · 147 阅读 · 0 评论 -
pytorch 实现 VGG16 的几种方法
# 自己搭建网络import torchimport torch.nn as nn######################################### 第一种列表加入 ##############################################class myVgg(nn.Module): def __init__(self,num): super(myVgg,self).__init__() self.num = nu.原创 2021-09-26 19:49:26 · 1208 阅读 · 0 评论 -
pytorch 中resnet如何快速加载官方提供的预训练模型(推荐)
在做神经网络的搭建过程,经常使用pytorch中的resnet作为backbone,特别是resnet50,比如下面的这个网络设定 import torchimport torch.nn as nnfrom torchvision import datasets, transformsfrom torchvision import modelsclass base_resnet(nn.Module): de...转载 2021-07-23 15:39:49 · 4856 阅读 · 0 评论