- 博客(31)
- 收藏
- 关注
原创 template模板偏特化
模板重载首先要定义模板,然后才能重载,重在的意思就是对于特殊的类型,所产生的类应当行为与原模板产生的类不一致。最后的输出结果可以看到,两种模板类的行为不一样。
2022-11-30 21:23:40
258
原创 python函数的参数调用前后id的分析
由于python函数调用前后的id不发生变化,所以如果调用完的参数id发生变化,在函数结束之后被调用的参数这里给出更加详细的解释链接
2022-03-11 16:03:00
1445
转载 ./configure、make、make install的作用
./configure、make、make install的作用1. 配置configure 脚本负责在你使用的系统上准备好软件的构建环境。确保接下来的构建和安装过程所需要的依赖准备好,并且搞清楚使用这些依赖需要的东西。Unix 程序一般是用 C 语言写的,所以我们通常需要一个 C 编译器去构建它们。在这个例子中 configure 要做的就是确保系统中有 C 编译器,并确定它的名字和路径。2. 构建当 configure 配置完毕后,可以使用 make 命令执行构建。这个过程会执行在 Makef
2022-03-08 14:55:32
380
原创 linux下time -v 给出-v : command not found
linux下time -v 给出-v : command not found(base) skt1faker@SKT1Faker:~/my_procedure/homework/Parallel/finish$ time -v mpirun -np 2 ./eightt.exe-v: command not foundreal 0m0.407suser 0m0.078ssys 0m0.034s这里显示出现了问题,将-v是为了指令,解决方法就是使用下面的命令(base) skt1faker@
2022-02-24 11:08:25
942
原创 使用lambda生成list
使用lambda生成list方法一 list(map(lambda, list))Python 3.8.8 (default, Apr 13 2021, 19:58:26) [GCC 7.3.0] :: Anaconda, Inc. on linuxType "help", "copyright", "credits" or "license" for more information.>>> a = [1,2,3,4,5]>>> map(lambda x:x
2022-01-12 10:04:17
1704
原创 bash脚本怎么读取其他文件中的内容
bash脚本怎么读取其他文件中的内容我们直接使用命令替换就可以,即使用命令`cat filepath`或 $(cat filepath),例如:(base) skt1faker@SKT1Faker:~/my_procedure/linux/bash_study$ cat input 1 2 3 4359820 2 esdjfklsgj dsmkl sldk gjskgsjkjg skl "jsdi jsdjkg skjgsk jgklsj lsk "345(base) skt1faker
2022-01-11 13:12:21
947
原创 python包和模块的学习
以下为我自己做的实验和对书籍的摘抄注意上述的第三段给出的解释可能有些迷惑,简单的说.__doc__只能输出第一个字符串(后面说的“首行… 第二行是空行…”指的是一个多行字符串,多行字符串使用三个引号包裹),这个字符串可以是多行字符串, 逻辑行大概意思就是代码开始的第一行(空白行不算行,剩余的行就是第一行)下面给出实验!(base) skt1faker@SKT1Faker:~/my_procedure/python/package_study$ cat mm.py import package
2022-01-10 21:32:04
282
原创 source test.sh、sh test.sh、./test.sh有什么区别
source test.sh 、. test.sh、sh test.sh、./test.sh有什么区别假设当前目录下面有一个可执行文件test.sh(就是chmod +x test.sh之后的文件)使用三种执行方法有什么问题呢?下面给出结论./test.sh 和sh test.sh两个写法表示的是同一个意思, ./test.sh前面的.是因为当前目录没有在环境变量PATH中,这两个方法都是重新建立一个子shell,然后在子shell中运行脚本test.sh,由于重新创建了子shell,在test.s
2022-01-08 16:52:17
2181
原创 如何通过键盘中断启动pdb调试
这里提供简单的思路,通过try expect接受异常KeyboardInterrupt,也即键盘产生的中断^Cimport pdbdef train(ans): for i in range(100000): for j in range(i): ans.append(j)ans = []try : train(ans)except KeyboardInterrupt: pdb.set_trace()...
2022-01-04 10:49:05
308
原创 fig = plt.figure(),plt.subplots()的作用
参考多个知乎回答matplotlib刨根问底系列之二:再谈Figure和Axes的区别 - 有风吹过山峰的文章 - 知乎python matplotlib中axes与axis的区别是什么? - 禹洋搬运工的回答 - 知乎使用matplotlib批量绘图并保存的正确做法? - 知乎matplotlib.pyplot的使用总结大全(入门加进阶) - 刘毛毛的文章 - 知乎 前端 plt.figure()函数绘图使用方法 简单介绍以下fig = plt.figure()作用就是生成一个图框,但
2022-01-03 17:36:29
16859
原创 model.train()和model.eval()反向传播依旧可以进行,只是BatchNormalization 和 Dropout的运行上有区别
aa = A() aa.eval()print(aa.a.requires_grad)aa.train()print(aa.a.requires_grad)import torchimport torch.nn as nnfrom torch.nn import Parameterclass A(nn.Module): def __init__(self): nn.Module.__init__(self) self.a = Parameter(t.
2022-01-01 18:14:23
1526
原创 gdb、pdb命令总结(非初级),持续更新
gdb、pdb命令总结(非初级),持续更新其中linenum:行号,condition条件,breaknum断点号gdb命令解释b linenum if condition设置条件断点,set var = num设置变量var为num值,num值的是一个数,不是一个变量r<input开始运行后,程序的输入为input文件call “c++语句”执行一个c++语句,这个语句可以是程序中定义的函数bt == where查看栈帧pdb
2022-01-01 11:18:39
940
原创 git 命令总结,持续更新
git个人常用命令commitid表示代码提交到仓库之后命令作用git reset commitid --hard回退到commitid对应的版本,同时HEAD也会指向此版本,同时在使用git log命令时会发现commitid的之后的提交日志也会消失,但是这并不代表以前的版本也会消失,可以使用git reflog查询提交日志,回滚到以前的版本git commit -a提交被追踪的文件修改修改后的内容,新建的文件newfile不能被追踪,只有在git add newfile
2021-12-30 15:46:07
185
原创 torch.autograd在写求导代码时,参与计算的非torch.Tensor类型的数值返回梯度只能为None,不可训练参数梯度可以不是None
torch.autograd在写求导代码时,参与计算的非torch.Tensor类型的数值返回梯度只能为None,并且不可训练参数的梯度可以不为None,但是反向传播后查询其梯度时只有None与之对应,也就是说网络中的一些参数原先可训练但是后来令其不训练之后,可以不改变自己定义的求导函数(backward)中不可训练的参数返回值为None下面给出例子,其中x为不可求导参数,a为非torch.Tensor的参数其中:x可以返回梯度,但是在i.backward()之后,x的梯度查询为None,a对.
2021-12-29 10:13:22
1628
原创 pytorch中模型参数个数不定时如何加载模型
pytorch模型保存的两种方法假设实例化的模型为model,类为Model,Path表示模型的路径如果模型中的参数随着程序的运行而变化可使用 # 保存 torch.save(model ,Path) # 加载 # 这里model不用初始化为model = Model(),但是一定要首先引入Model类 import Model # 如果没有这个类的化,下面的语句会报错! model = torch.load(Path)如果模型中的参数数量随着程序运行不发生变化,则可使用:
2021-12-28 19:36:30
600
原创 无法给torch.tensor赋予浮点型数据,如何将tensor的数据类型进行转换
今天在调网络的时候发现了这样的bug,下面简化一下该情况In [2]: import torchIn [3]: a = torch.tensor([1,1,1,1,1])In [4]: aOut[4]: tensor([1, 1, 1, 1, 1])In [5]: a[1] = 20.567In [6]: aOut[6]: tensor([ 1, 20, 1, 1, 1])In [8]: a = torch.cat((a,torch.tensor([1.])),0)In
2021-12-17 10:46:14
2905
原创 友元函数访问多个类的方法
只需要在两个类中声明友元函数即可,注意由于fri1定义在fri2之前,所以在fri1内使用fri2时要注意先在fri1之前声明fir2存在!#include<iostream>using namespace std;class fri2;class fri1{ private: char f1[20]; public: friend void print(int a, fri1 f1,fri2 f2); fri1():f1("f1"){}};class fri2.
2021-12-10 09:40:14
1149
原创 poj2976(0-1 分数规划)
poj2976(0-1 分数规划)题意给定n个二元组(ai,bi)(a_{i},b_{i})(ai,bi)除去n个,剩下的n-k组成集合S作∑i∈Sai∑i∈Sbi\frac{\sum_{i\in S}a_{i}}{\sum_{i\in S}b_{i}}∑i∈Sbi∑i∈Sai使其达到最大,原题还让将其取到最近整数!0-1分数规划这道题是一道很典型的0-1分数规划,网上的资源看了许多,但是好像没有人介绍在求解答案的时候二分的依据在这里,我将给出解释首先还是对整个算法大概做个描述,具体
2021-01-03 10:02:22
269
原创 2020-08-23
最优屏障–牛客原题题目内容来源:牛客网题目描述 M国的地势高低不平,现给出一个数组代表此国家某纬度上均匀分布的N座山的海拔高度H[i](任意两座山高度不同),已知每座山的山顶上都有一座哨塔,若两个哨兵分别位于第i、j(i<j)座山上,当且仅当两人所在的山比两人之间所有的山都高时,这两个哨兵可以相互监视,M国的防守能力大小为相互监视的哨兵对数。H国早已对M国虎视眈眈,H国的皇帝希望黑魔法师们可以在M国的某两座山之间放置一块巨大的屏障,M国的哨兵不可通过该屏障互相监视。皇帝想让你告诉他最
2020-08-23 06:19:08
235
原创 证明:任意两个循环矩阵的矩阵乘法结果仍是循环矩阵
循环矩阵这篇好像解释的挺全循环矩阵是什么,看下面举的例子就行了,我只介绍他们的乘法a1a2..anana1a2...ana1a2...ana1a2a2..ana1\begin{matrix}a_{1}&a_{2}&.&.&a_{n}\\a_{n}&a_{1}&a_{2}&.&.\\.&a_{n}&a_{1}&am...
2020-02-19 13:17:55
1576
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人