笔记
小Aer
站在巨人的肩膀上仰望星空
展开
-
cpu核心数和线程数的关系是什么?
1、线程数可以模拟出不同的CPU核心数。CPU的核心数指的是硬件上存在着几个核心,而线程数可以模拟出多个核心数的功能。线程数越多,越有利于同时运行多个程序,因为线程数等同于在某个瞬间CPU能同时并行处理的任务数。2、对于一个CPU,线程数总是大于或等于核心数的。一个核心最少对应一个线程,但通过超线程技术,一个核心可以对应两个线程,也就是说它可以同时运行两个线程。...转载 2022-08-03 10:28:20 · 20428 阅读 · 0 评论 -
git创建与合并分支
创建+切换分支gitcheckout-b或者gitswitch-c。切换分支gitcheckout或者gitswitch。合并某分支到当前分支gitmerge。删除分支gitbranch-d。创建分支gitbranch。查看分支gitbranch。原创 2022-07-28 17:29:40 · 158 阅读 · 0 评论 -
linux卸载软件
linux卸载软件原创 2022-06-07 10:05:33 · 541 阅读 · 0 评论 -
Python列表排序并得到原来对应的下标
例如a = [5,6,3,8]排序结果应为[3,5,6,8],对应下标为[2,0,1,3]思想:建立和下表对应的元祖,排序时按对应值排序即可方法一、a = [5,6,3,8]b = zip(a, range(a))b.sort(key = lambda x : x[0]) # x[0]是因为在元组中,按a排序,a在第0位c = [x[1] for x in b] # x[1]是因为在元组中,下标在第1位方法二、(写着简单点)a = [5,6,3,8]b = sorted(enume原创 2022-04-18 10:09:57 · 7030 阅读 · 2 评论 -
python打印,冰淇淋替代print
文章目录0️⃣冰淇淋1️⃣安装2️⃣导入库3️⃣使用🚌访问函数🚌访问字典🚌访问对象🚌精准定位🚌自定义输出前缀🚌自定义输出时间0️⃣冰淇淋冰淇淋的作用其实更方便的是为了调试,那么接下来我就好好讲一讲1️⃣安装pip install icecream2️⃣导入库from icecream import ic 3️⃣使用🚌访问函数from icecream import icdef add(a, b): return a + bic(add(8, 8))'''ic| a原创 2022-04-12 15:56:29 · 357 阅读 · 0 评论 -
pytorch中squeeze()和unsqueeze()函数介绍
一、unsqueeze()函数1.首先初始化一个a可以看出a的维度为(2,3)2.在第二维增加一个维度,使其维度变为(2,1,3)可以看出a的维度已经变为(2,1,3)了,同样如果需要在倒数第二个维度上增加一个维度,那么使用b.unsqueeze(-2)二、squeeze()函数介绍1.首先得到一个维度为(1,2,3)的tensor(张量)由图中可以看出c的维度为(1,2,3)2.下面使用squeeze()函数将第一维去掉可见,维度已经变为(2,3)3.另外可以看出维度并没有转载 2022-03-02 09:35:46 · 275 阅读 · 0 评论 -
多标签分类中的损失函数与评估指标
文章目录1 引言2 方法一2.1 numpy实现2.2 TensorFlow实现2.3 Pytorch实现3 方法二3.1 numpy实现3.2TensorFlow实现3.3 Pytorch实现4 评估指标4.1 不考虑部分正确的评估方法4.2 考虑部分正确的评估方法5 总结引用1 引言各位朋友大家好,欢迎来到月来客栈。在前面的一篇文章[1]中笔者介绍了在单标签分类问题中模型损失的度量方法,即交叉熵损失函数。同时也介绍了多分类任务中常见的评价指标及其实现方法[2]。在接下来的这篇文章中,笔者将会详细介绍转载 2022-01-21 20:38:43 · 7190 阅读 · 4 评论 -
python 读写csv文件(创建,追加,覆盖)
1.创建:创建的形式打开其实就是覆盖了import csvdef create_csv(): path = "ecg.csv" with open(path,'w') as f: csv_write = csv.writer(f) csv_head = ["id","label"] csv_write.writerow(csv_head)2.追加:def write_csv(): path = "ecg.csv"原创 2022-01-21 18:53:18 · 2043 阅读 · 0 评论 -
Pytorch如何保存训练好的模型
0.为什么要保存和加载模型用数据对模型进行训练后得到了比较理想的模型,但在实际应用的时候不可能每次都先进行训练然后再使用,所以就得先将之前训练好的模型保存下来,然后在需要用到的时候加载一下直接使用。模型的本质是一堆用某种结构存储起来的参数,所以在保存的时候有两种方式,一种方式是直接将整个模型保存下来,之后直接加载整个模型,但这样会比较耗内存;另一种是只保存模型的参数,之后用到的时候再创建一个同样结构的新模型,然后把所保存的参数导入新模型。1.两种情况的实现方法(1)只保存模型参数字典(推荐)#保存转载 2022-01-21 18:49:48 · 2965 阅读 · 0 评论 -
Pytorch中如何理解RNN LSTM的input(重点理解seq_len/time_steps)
在建立时序模型时,若使用keras,我们在Input的时候就会在shape内设置好sequence_length(后面均用seq_len表示),接着便可以在自定义的data_generator内进行个性化的使用。这个值同时也就是time_steps,它代表了RNN内部的cell的数量,有点懵的朋友可以再去看看RNN的相关内容:https://blog.csdn.net/yyhhlancelot/article/details/102502355所以设定好这个值是很重要的事情,它和batch_size,f转载 2022-01-21 18:39:34 · 2652 阅读 · 10 评论 -
Pytorch 替换tensor中大于某个值的所有元素
这是在自己做多标签分类任务时用到的,最后把结果sigmoid处理,值位于【0, 1】之间,大于阈值的取1,小于阈值的取0两种方法:a = torch.rand((1, 3))# 保证和a相同的维度大小zero = torch.zeros_like(a)one = torch.ones_like(a)# a中大于0.5的用one(1)替换,否则a替换,即不变a = torch.where(a > 0.5, zero, a) # a中小于0.5的用zero(0)替换,否则a替换原创 2022-01-21 18:35:01 · 6247 阅读 · 0 评论 -
python 将list转成字符串,中间用符号分隔
一句代码的事:data = [1, 2, 3, 4]print(",".join(str(i) for i in data))>>>"1,2,3,4"原创 2022-01-21 18:29:02 · 1918 阅读 · 0 评论 -
DataLoader加载数据batch_size导致batch数据量不均等报错
DataLoader函数定义如下:DataLoader(dataset, batch_size=1, shuffle=False, sampler=None, num_workers=0, collate_fn=default_collate, pin_memory=False, drop_last=False)可以将drop_last改为True,drop_last为True会将多出来不足一个batch的数据丢弃。所以就在代码里加上了这个参数为True,继续训练就不再报错了。...原创 2022-01-21 18:27:12 · 2642 阅读 · 0 评论 -
Max的参数还可以是函数
def mod_5(x): return x % 5print( max(100, 51, 14), max(100, 51, 14, key=mod_5), sep='\n',)输出,可以看到这里调用了mod_5函数10014原创 2021-12-29 16:13:43 · 168 阅读 · 9 评论 -
pip安装报错[Errno 28] No space left on device
$ mkdir -p $HOME/tmp $ echo "export TMPDIR=$HOME/tmp" >> ~/.bashrc$ source ~/.bashrc上述的$HOME/tmp可以自己指定原创 2021-10-25 17:00:47 · 1308 阅读 · 0 评论 -
docker镜像笔记
一、Ubuntu Docker安装使用官方安装脚本自动安装安装命令如下:curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun也可以使用国内 daocloud 一键安装命令:curl -sSL https://get.daocloud.io/docker | sh手动安装link我当时使用的是自动安装,可以尝试用其他方法二、docker常用命令释放docker空间docker system p原创 2021-09-23 14:58:51 · 139 阅读 · 0 评论 -
python 求阶乘
python 求阶乘原创 2021-08-10 10:04:44 · 100 阅读 · 0 评论 -
python中deque模块详解
python中deque模块详解转载 2021-08-06 09:44:56 · 1992 阅读 · 3 评论 -
python字典按照值的大小进行排序
python字典按照值的大小进行排序转载 2021-08-01 09:49:01 · 12099 阅读 · 2 评论 -
python-----删除列表中某个元素的3种方法
python-----删除列表中某个元素的3种方法转载 2021-07-30 13:49:39 · 2153 阅读 · 0 评论 -
python方法实现字符串反转
python方法实现字符串反转转载 2021-07-27 15:44:49 · 18279 阅读 · 0 评论 -
python3 替换字符串中指定位置字符
python3 替换字符串中指定位置字符原创 2021-07-24 10:34:48 · 9591 阅读 · 0 评论 -
torch- torchvision- python版本对应关系
torch- torchvision- python版本对应关系转载 2021-07-21 19:42:26 · 20053 阅读 · 9 评论 -
Map函数-将list中的string转换为int
Map函数-将list中的string转换为int原创 2021-07-21 16:26:52 · 682 阅读 · 0 评论 -
python按字符串长度进行排序
python按字符串长度进行排序原创 2021-07-15 14:53:36 · 5905 阅读 · 0 评论 -
python之sys模块
python之sys模块转载 2021-07-13 20:19:07 · 5622 阅读 · 2 评论 -
Python getattr() 函数
Python getattr() 函数转载 2021-07-13 20:14:40 · 212 阅读 · 0 评论 -
python中函数后有两个括号(双括号)
python中函数后有两个括号(双括号)转载 2021-07-13 20:12:20 · 2904 阅读 · 0 评论 -
Python __import__() 函数
Python __import__() 函数转载 2021-07-13 20:07:48 · 1422 阅读 · 0 评论 -
Python callable() 函数
Python callable() 函数转载 2021-07-13 20:05:21 · 179 阅读 · 0 评论 -
Python函数中参数前带*和**是什么意思?
Python函数中参数前带*和**是什么意思?转载 2021-07-13 20:02:57 · 600 阅读 · 0 评论 -
python中内建函数isinstance的用法
python中内建函数isinstance的用法转载 2021-07-13 19:59:11 · 153 阅读 · 0 评论 -
python排序模块:bisect
python排序模块:bisect原创 2021-07-10 11:17:53 · 365 阅读 · 0 评论 -
给虚拟环境指定cuda
给虚拟环境指定cuda原创 2021-07-04 20:57:37 · 4775 阅读 · 10 评论 -
CNN中卷积核数和输出通道数的关系
CNN中卷积核数和输出通道数的关系转载 2021-07-04 20:40:33 · 9141 阅读 · 3 评论 -
计算机视觉batch_size
计算机视觉batch_size转载 2021-07-02 14:24:37 · 1906 阅读 · 1 评论 -
ST-GCN/AS-GCN报错cannot import name “import_class“
ST-GCN/AS-GCN报错cannot import name "import_class"原创 2021-06-30 20:10:10 · 4692 阅读 · 20 评论 -
python两行代码实现转换视频格式,以flv转换mp4为例
两行代码转换视频格式,以flv转换mp4为例原创 2021-06-28 14:28:14 · 7533 阅读 · 6 评论 -
解决“RuntimeError: CUDA out of memory.”
解决“RuntimeError: CUDA out of memory.”原创 2021-06-24 21:36:27 · 989 阅读 · 0 评论 -
SVM核函数的简单理解
SVM核函数的简单理解转载 2021-06-22 21:20:31 · 1042 阅读 · 0 评论