12 2021 档案

摘要:之前的一篇博文详细讲解了什么函数装饰器(Python迭代器、生成器、装饰器的使用)。在类的定义中,我们也常常见到装饰器的使用,并且最常用的就是@classmethod,@staticmethod来装饰我们自定义类的函数(方法),这两个内置的装饰器是什么作用呢? 在讲解这两种方法前我们需要只要,一般我 阅读全文
posted @ 2021-12-30 17:42 Circle_Wang 阅读(560) 评论(0) 推荐(0) 编辑
摘要:在学习装饰器的时候,装饰函数(比如写一个计算函数运行时间的装饰函数)我们常常是不知道被装饰函数会传入多少参数的,因此在装饰函数中,常常会使用(*args, **kargs)的方式来定义内部函数。因此我们需要了解一下*args和**kargs在函数定义和函数使用方面的不同,他们两者被称为可变参数传入。 阅读全文
posted @ 2021-12-29 18:38 Circle_Wang 阅读(1332) 评论(0) 推荐(0) 编辑
摘要:本文介绍python中常常会用到的迭代器,生成器和装饰器的使用与解读。 1、迭代器 首先先要知道什么是可迭代对象(Iterable),在python中常见的可迭代对象是字典,字符串,数组,元组等,这些都是可以迭代的对象。如何创建自己的可以迭代对象呢?只要在你定义的类中包含 __iter__ 方法,那 阅读全文
posted @ 2021-12-28 19:07 Circle_Wang 阅读(275) 评论(0) 推荐(0) 编辑
摘要:本文主要是记录下,使用PytorchLightning这个如何进行深度学习的训练,记录一下本人平常使用这个框架所需要注意的地方,由于框架的理解深入本文会时不时进行更新(第三部分的常见问题会是不是的更新走的),本文深度参考以下两个网站pytorch_lightning 全程笔记 、Pytorch Li 阅读全文
posted @ 2021-12-26 16:04 Circle_Wang 阅读(3874) 评论(0) 推荐(0) 编辑
摘要:这是在阅读nn.DataParallel源码的时候看到的一个模块,可以复制你所传入的列表,或者字典,或者元组,代码逻辑涉及到递归和zip的使用,我着实没看懂,但是很是优雅,记录一下。 def copy_obj(input,number): targets_list = range(number) d 阅读全文
posted @ 2021-12-25 20:05 Circle_Wang 阅读(175) 评论(0) 推荐(0) 编辑
摘要:本文将记录如何使用单机多卡GPU的方式进行训练,主要是采用DP模式(DDP模式一般用于多机多卡训练)。 1、DP模式基本原理 DP模型进行单机多卡训练基本步骤如下: (1)将模型复制到各个GPU中,并将一个batch的数据划分成mini_batch并分发给给个GPU (2)各个GPU独自完成mini 阅读全文
posted @ 2021-12-25 17:56 Circle_Wang 阅读(2729) 评论(2) 推荐(1) 编辑
摘要:本文将介绍使用multiprocessing进行多线程和多进程操作。 多线程 如果我需要对一个列表的每一个元素都要执行一个函数操作,并且每个元素执行的操作互不影响,那我们可以让列表里的所有元素在同时进行执行,而不是使用for循环让其一个一个执行,这种操作常常在独写文件中处理,比如我们要下载一系列的图 阅读全文
posted @ 2021-12-18 17:01 Circle_Wang 阅读(8001) 评论(0) 推荐(0) 编辑
摘要:这篇文章主要探讨一下,Dataset类以及DataLoader类的使用以及注意事项。Dataset类主要是用于原始数据的读取或者基本的数据处理(比如在NLP任务中常常需要把文字转化为对应字典ids,这个步骤就可以放在Dataset中执行)。DataLoader,是进一步对Dataset的处理,Dat 阅读全文
posted @ 2021-12-10 22:21 Circle_Wang 阅读(3199) 评论(0) 推荐(3) 编辑
摘要:本文主要介绍Pytorch中Tensor的储存机制,在搞懂了Tensor在计算机中是如何存储之后我们会进一步来探究tensor.view()、tensor.reshape()、tensor.reszie_(),她们都是改变了一个tensor的“形状”,但是他们之间又有着些许的不同,这些不同常常会导致 阅读全文
posted @ 2021-12-08 21:11 Circle_Wang 阅读(5534) 评论(0) 推荐(2) 编辑
摘要:介绍一下自定义类的时候__str__方法的作用。这个类方法(__str__())主要的作用是在print(实例)的时候返回你指定的字符串,一般来说在定义类的时候不用重写这个方法的,但是在一些注重交互的模块类的编写上,可能会重写这个类。下面直接进入例子。 我定义一个Car的类,具体代码如下: clas 阅读全文
posted @ 2021-12-07 20:42 Circle_Wang 阅读(1412) 评论(0) 推荐(0) 编辑
摘要:本博文持续收集下在日常工作中常用的Linux命令,以供平时查看。 1、watch -n 10 nvidia-smi 查看显卡使用情况,每10秒刷新一次 2、ll -h 查看当前目录下文件情况,读写权限,文件大小(注意这里是文件大小,不是文件夹大小。如果是一个文件夹是不会显示文件夹内部文件总共所占硬盘 阅读全文
posted @ 2021-12-02 18:44 Circle_Wang 阅读(73) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示