自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xx_xjm的博客

主要记录一些自己的学习笔记,方便二次阅读

  • 博客(89)
  • 问答 (3)
  • 收藏
  • 关注

原创 __init__中的__getattr__方法

在文件中定义的方法,如果存在的话,通常用于处理包级别的属性访问。在包级别,方法在导入模块时被调用,而不是在实例化包时。当你尝试访问包中不存在的属性时,方法会被调用,给你一个机会来处理这个属性访问。

2024-01-10 17:04:25 1224 1

原创 python协程asyncio的应用,async,await,loop

1:async用于定义协程函数2:协程函数初始化得到的是协程对象,协程对象不能直接执行;3:协程对象的执行方式,要么用await执行,但是await只能出现在协程函数里面,所以它不能作为协程的启动方式,要么把协程转化为Task运行,因为Task里面含有send(类似于生成器的next,这里用next其实也行,兼容),同理,await为什么能运行协程也是因为它含有send,因为await就是yield from的平替;

2024-01-07 11:55:52 1083

原创 可迭代对象,迭代器,生成器,协程

a: 含有__iter__和__next__内置函数的类;迭代器必须同时实现这两个方法,这称之为迭代器协议;那根据这个协议,我们可以知道,迭代器一定是可迭代对象;b: __iter__内置函数要返回自身self;c: __next__方法返回下一个数据,如果没有数据了,则需要抛出一个stopIteration的异常补充:迭代器的意义:15分钟彻底搞懂迭代器、可迭代对象、生成器【python迭代器】_哔哩哔哩_bilibili。

2023-09-30 21:42:57 454

原创 C++中的导入include,头文件,extern,main函数入口及相关编译流程

1:#include就是复制粘贴2:C++编译的时候,在链接之前,各个文件之间实际上没有联系,只有到了链接的阶段,系统才会到各个cpp文件中去找需要的文件;就是复制张贴,所以,一定不能直接include源文件,也就是cpp文件,因为cpp文件中是函数的定义,一旦include了cpp文件,相当于在当前cpp文件又定义了一个相同名字的cpp文件,所以回报错,展示如下:首先,项目的结构如下:这里,我们用不到src和include,以下均以main.cpp和main2.cpp来作为讲解;其中main2.cpp内容

2023-09-16 22:44:37 4228

原创 模型训练加速,model.eval,torch.no_grad,以及torch.cuda.empty_cache

test过程中,必须设置model.eval(),其他两个可选。

2023-07-16 22:41:14 521

原创 实测:python字典迭代比列表迭代快

有一点外在因素似乎这里面字典和列表的长度不一致。再补充一点,字典的键可以直接迭代,但是value不行。可以发现,长度不一确实有影响,但是字典仍然比列表快。此时红色框部分似乎dict,速度很快;

2023-07-09 19:29:31 514

原创 字典dict的get和setdefault,以及collections的defaultdict

get:在字典的键中查找key,如果找到,则返回该key键对应的值(该值是字典中已经存在的值);setdefault: 在字典的键中查找key,如果找到,则返回该key键对应的值(该值是字典中已经存在的值);会给字典添加一个key健,并将新添加的key键的对应的默认值设为default(是键对应的值,不是键本身)。a[10]返回0,因为10不存在于a的键中,而int类型默认值是0,list默认值为:[],str默认值是:'',set默认值是:set()值,当查找的key键在字典中存在时,两者作用相同。

2023-07-09 17:37:13 533

原创 Segmentaion标签的三种表示:poly、mask、rle

参考:(1条消息) Segmentaion标签的三种表示:poly、mask、rle_Adenialzz的博客-优快云博客

2023-06-29 14:07:16 309

原创 python多进程

参考:待补充。

2023-06-19 16:31:56 102

原创 python -m

2:sys.path添加不同,python -m xxx是把当前执行命令的路径添加到sys.path,而python xxx.py是把xxx.py的父目录添加到sys.path。python -m xxx 和 python xxx.py都相当于直接运行xxx.py文件,其__name__ == "__main__"python -m是启动python文件的一种方式,那么和直接python xxx.py有什么区别呢?.py的文件夹),则 python -m xxx等同于python -m xxx.

2023-06-19 16:19:10 3613

原创 python文件首行

bin/sh,则指示程序加载器运行程序/bin/sh,传递path/to/script作为第一个参数。在计算中,shebang是由脚本开头的字符数字符号和感叹号( #!它也被称为sha-bang , [1] [2] hashbang , [3] [4] pound-bang , [5] [6]或hash-pling。在Shebang之后,可以有一个或数个空白字符,后接解释器的绝对路径,用于指明执行这个脚本文件的解释器,如上述/usr/bin/python和/usr/bin/env python。

2023-06-19 12:36:57 1803 1

原创 张量的is_leaf参数和required_grad参数

而输入张量,比如输入的图片等等,往往is_leaf = True, 而 required_grad = False,也就是说输入张量是叶子节点,但是不对其求导,因为总部需要更新输入吧.....2:is_leaf = True表示这个张量是叶子节点,此时,对其求导,他的导数会被保留,而对于is_leaf =False的张量,就算其required_grad = True,对齐求导了,但是其导数不会被保留,也就不会用于参数更新。4:张量的.grad_fn:记录求导函数,比如乘法等等。

2023-06-14 15:54:30 314

原创 DDP分布式训练中遇到的一些问题

2:类似于layer_norm这样的操作是无需进行分布式通信的,也无法进行分布式通信,所以在DDP的时候必须把find_unused_parameters设置为True。这个时候可以在命令行前面加上TORCH_DISTRIBUTED_DEBUG=DETAIL, 这样,将找出具体时哪些参数没有接收到梯度,以此更好的调整代码。4:关于0号卡的显存为什么远高于其他卡,暂时不清楚,网上的说法,这种情况时DP才会有的,DDP应该不会出现,希望有知道的大佬能指点一下....遇到在补充..........

2023-06-11 16:27:37 1677

原创 简单记录下pylighting

3:关于train_step, val_step这些,上面实现的dataset,返回的batch,会给到这两个函数,test情况下就是返回到test_step,之后就可以实现训练了。其实之前有看到过这玩意儿,但一直做项目之类的都没用到,就没关注,今天看到篇很有意思的论文想复现一下,结果又是这玩意儿,所以简单了解了一下,说个大概吧,以后真用到了再深入研究。1:trainer有两个方式,一个是trainer.fit(), 一个是trainer.test;4:关于优化器这块没看,之后补充吧。

2023-05-17 17:23:53 218

原创 argparse和sys.argv详解

最后parser可以用parser.print_help()来查看以上信息,也可以利用python xxx.py -h来查看参数信息。就是说usage后面跟的是所有参数,这些参数是可以分成不同组的,在这个例子里面,我们只分了一个组。首先是usage:会先打印出对应的文件名(默认的,参考上面博客)后面这些参数是所有的参数;而下面的plt.trainer实际上是对参数的分组,怎么理解呢?从命令行输入的参数会被保存到sys.argv。

2023-05-17 14:48:17 405

原创 毕设word的使用

1:关于参考文献,推荐使用endnote,直接将参考文献按照endnote格式下载,然后导入到简历的文件库里面;关于endnote的安装和使用这里不加赘述;解决的方法,样式可以通过导入的方式来获取,页眉页距要单独设置,另外自定义样式需要加入样式库才能导入导出;2:word里面复制粘贴是没办法复制样式和页眉页距的,即使是按照源格式复制粘贴,也可能兆成字体,间距的不同。未完,待续~~~~~~遇到问题再来补充。

2023-05-07 20:24:21 115

原创 pytorch的c++/cuda扩展,CUDA编程

我们知道C++,C这类的编程语言是为了让计算机执行我们的指令,确切一点是让计算机的cpu执行我们的执行,现在cuda编程则是要让显卡中的计算核心执行我们的指令;所以,cuda编程其实就是编写显卡中计算核心执行指令。为了区别于.cpp,.c这样的文件,我们取.cu后缀来指明当前的代码文件是给显卡用的;我们上面说了,.cu本质上还是写给CPU的,所以核函数其实也是C++函数的一种,只不过有一个特殊的限定词"__global__",用以指明“这个C++函数,是用来调用显卡的!

2023-04-25 18:48:40 2883

原创 python通过setuptools打包与分发

重要的参数:其中scripts指各种可执行脚本(比如.sh文件等,可以直接命令行xxx.sh文件执行),它所指定的文件会被直接复制到python可执行目录(好像是/usr/bin,这不重要,感兴趣可以自查)下;

2023-04-23 18:16:07 1569

原创 data.IterableDataset数据集格式

还涉及到迭代器,生成器yield等知识,待完善......

2023-04-09 23:08:18 182

原创 pickle

字节流是由字节组成的,流是一个很形象的概念,当程序需要读取数据的时候,就会开启一个通向数据源的流,这个数据源可以使文件,内存,或是网络连接。类似的,当程序需要写入数据的时候,就会开启一个通向目的地的流。这时候你就可以想象数据好像在这其中“流”动一样。祝学习愉快!流(Stream),是一个抽象的概念,是指一连串的数据(字符或字节),是以先进先出的方式发送信息的通道。当程序需要读取数据的时候,就会开启一个通向数据源的流,这个数据源可以是文件,内存,或是网络连接。

2023-04-09 22:46:04 318

原创 Docker容器理解

文件系统是一种数据结构,用于管理计算机中的文件和目录。在计算机中,文件系统通常是操作系统的一部分,它负责解释和执行文件系统中的文件和目录,并提供对文件和目录的访问。文件系统也可以是一个独立的软件模块,它运行在操作系统之上,提供对文件和目录的访问和管理。常见的文件系统类型包括 FAT、FAT32、NTFS、ext2、ext3、ext4 等。

2023-04-08 23:12:10 694

原创 绘图matplotlib包的使用

Figure相当于一张白纸——可称做画布,Axes则是画布中的一块区域。一个Figure对象中可以包含一个或多个Axes对象,一个Axes对象中包含2个或3个Axis对象。每个Axes对象包含:一个title、一个x_label, 一个y_label对象。一个"Figure"意味着用户交互的整个窗口。两者都不需要事先创建figure,因为会默认建立自己的figure;plt.gcf则是用来获得当前活跃的figure;我们首先来说plt.plot的绘图规则,它是。生成一个figure, 严格的讲,是生成。

2023-04-04 15:46:33 353

原创 Git仓库---分布式版本控制系统

最典型的例子就是,github上我们自建了一个空仓库,并建立了一个readme文件,此时github上这个仓库默认的分支是main分支,此时,如果我们想把本地的一个仓库推到github上这个建立的仓库,往往会产生一个新的分支master,所以我们github上就出现了两个分支,一个main,一个master,此时,这两个分支是无法合并的。而当两个完全无关的支路进行合并时,两个支路实际上是没有互相的信息的,也就是说其实是不存在主次关系的,那么git把这两个分支认为是完全无关的分支,所以不让合并。

2023-04-04 14:45:23 1007

原创 id函数 / 可变类型变量 / 不可变类型变量 / +=操作

2023-03-05 00:50:21 750

原创 引用是否有地址的讨论

2023-03-04 22:04:46 975

原创 pytorch自定义forward和backward函数

2023-02-05 23:20:24 3624 4

原创 爱因斯坦求和约定:torch/np.enisum

2023-01-30 11:19:28 732

原创 setuptools的使用----setup函数参数设置

2023-01-25 20:13:17 835

原创 torch.gather函数的使用

dsa

2022-11-27 14:30:11 434

原创 BPTT算法 / LSTM的细胞状态和隐藏状态 / GRU

2022-11-04 10:34:48 2302

原创 手动下载github包到虚拟环境

2022-10-27 16:15:53 1008

原创 C++中static和inline作用下,其变量都会变为内部链接

2022-10-18 21:43:54 664

原创 nn.Batchnorm2d

学习

2022-09-29 16:35:31 486

原创 F.grid_sample采样

学习

2022-09-24 10:51:25 1757

原创 制作表格坐标python

学习

2022-09-23 15:29:25 486

原创 torchvison.transforms.functional.affine()/resized_crop()

基础

2022-09-01 15:22:46 770

原创 Coco数据集中的rle格式处理

基础

2022-08-30 17:13:02 6887 3

原创 nn.unfold和nn.fold与张量.unfold,还有F.unfold是不一样的操作

笔记

2022-08-02 14:12:42 1177

原创 非局部均值滤波(NON-LOCAL-mean)/注意力机制

非局部均值滤波

2022-07-21 10:42:04 1535

原创 各种数据文件的读取(持续更新)

笔记

2022-07-08 15:44:08 276

空空如也

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

TA关注的人

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