自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(173)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 Optimizer神经网络中各种优化器介绍

每次随机取一个样本。BGD每次迭代都会朝着最优解逼近,而SGD由于噪音比BGD多,多以SGD并不是每次迭代都朝着最优解逼近,但大体方向是朝着最优解,SGD大约要遍历1-10次数据次来获取最优解。Adagrad会累加之前所有的梯度平方,而Adadelta只累加固定大小的项(Adagrad需要存储),并且也不直接存储这些项,仅仅是近似计算对应的平均值。每次更新使用全部的样本,注意会对所有的样本取均值,这样每次更新的速度慢。与momentum不同的是,NAG是先往前走一步,谈谈路,用超前的梯度来进行修正。

2024-03-31 06:52:24 1233

原创 往adobe illustrator中添加latex字体

然后copy相应的字体文件。

2023-12-12 05:51:59 766

原创 逆波兰表达式求解计算器

从左到右读取,分以下几种情况。

2023-12-09 05:16:44 443

原创 解决wandb错误wandb-servicef 0.006 MB uploaded (0.000 MB deduped)

结束wandb时有时会一直输出。

2023-11-14 19:16:45 1288 1

原创 解决pytorch DDP 报错This error indicates that your module has parameters that were not used

这时未使用的参数就会未参与梯度的计算,因此可以获取未使用参数,并注释掉消除错误。使用pytorch DDP训练的时候,有的时候会报错。现在单GPU下做一个iteration,并在。

2023-11-11 20:21:09 182

原创 pytorch多GPU训练卡住

【代码】pytorch多GPU训练卡住。

2023-11-10 11:16:59 664

原创 pip安装nvidia-apex报错apex error: class “at::Tensor“ has no member “mutable_data_ptr“

【代码】pip安装nvidia-apex报错apex error: class “at::Tensor“ has no member “mutable_data_ptr“

2023-11-01 05:53:18 1019 3

原创 将conda虚拟环境打包并集成到singularity镜像中

【代码】将conda虚拟环境打包并集成到singularity镜像中。

2023-10-08 02:20:29 1845

原创 python生成requirements.txt文件

【代码】python生成requirements.txt文件。

2023-09-05 18:29:54 59

原创 github常见命令

然后在项目目录,执行git pull命令,会提示输入账号密码。这次输入账号密码之后,就会记住账号密码,并且会在当前用户根目录下生成一个。因为github远程代码库链接较长,因此需要创建别名。将文件夹变成git库,并让git获取当前目录管理权限。代码冲突时,需要手动合并。合并完成后,添加到暂存区。在开发时,要保持与远程库一致,否则推送时会报错。本地上显示的总是master中的版本。文件,下一次就不用再输入账号密码了。然后可以在当前分支上修改,并通过。然后修改本地文件,并推送到远程库。设置存储格式,明文存储。

2023-06-26 21:30:25 1132

原创 安装nvidia-apex出现AttributeError: module ‘torch.distributed‘ has no attribute ‘_all_gather_base‘

【代码】安装nvidia-apex出现AttributeError: module ‘torch.distributed‘ has no attribute ‘_all_gather_base‘

2023-06-05 16:31:14 356

原创 Segment Anything文章要点

在这个阶段,我们的目标是增加mask的多样性,以提高我们的模型分割任何东西的能力。在我们的工作中,一个重要的区别是,为prompt segmentation训练的模型通过作为一个更大的系统组件可以在推理时执行一个新的、不同的任务,例如,为了执行实例分割,prompt segmentation模型与现有的object detector相结合。我们从交互式分割中采用了这种方法,尽管与交互式分割的目标是在足够的用户输入后最终预测有效的掩码不同,我们的目标是始终预测任何提示的有效掩码,即使提示是模糊的。

2023-04-09 07:36:16 1163 1

原创 python查看某个module的path

【代码】python查看某个module的path。

2023-04-03 09:06:18 212

原创 解决pycharm cannot find declaration to go to

使用remote interpreter时,经常出现有些库文件无法点开,也没有代码自动补全。

2023-04-02 02:57:55 445

原创 python将log写入文件和控制台

【代码】python将log写入文件和控制台。

2023-03-25 04:43:56 257

原创 计算模型的params, FLOPs和FPS

计算模型的params和FLOPs

2023-03-19 06:37:15 620

原创 计算imbalanced dataset的class weight

计算imbalanced dataset的class weight

2023-03-19 04:10:53 327 1

原创 计算数据集的mean和std

计算数据集的mean和std

2023-03-19 03:05:12 694

原创 matplotlib在图像上画虚线框

matplotlib在图像上画虚线框

2023-03-02 11:31:29 513

原创 pytorch使用时的注意事项

pytorch注意事项

2023-02-14 15:31:49 62

原创 Persistent Homology相关

Persistent Homology

2022-12-09 07:02:12 373

原创 conda与python虚拟环境

conda与python虚拟环境

2022-11-25 12:51:18 979

原创 cpp转matlab程序,并在python中调用

python调用matlab

2022-09-16 13:59:24 309

原创 shell编程初级

shell编程初级

2022-08-29 20:59:57 329

原创 安装medpy with graphcut support

medpy with graphcut support

2022-08-16 11:07:10 544

原创 安装gcc, cmake和itk

在官网gcc网站上下载然后解压。接下来执行如下命令tar xzf gcc-4.6.2.tar.gzcd gcc-4.6.2./contrib/download_prerequisitescd ..mkdir objdircd objdir$PWD/../gcc-4.6.2/configure --prefix=$HOME/GCC-4.6.2 --enable-languages=c,c++,fortran,gomakemake install然后设置环境变量export LD_LI

2022-05-09 14:17:32 804 2

原创 python中调用C和C++

1. 生成dll文件在visual studio中, project->properties->configuration properties->general->Configuration Type中选择dll.然后build改项目生成dll文件。注意,如果文件后缀名称是.c,则使用如下格式:#include<stdio.h>#include<malloc.h>//无参数,无返回类型__declspec(dllexport) void __

2022-05-09 04:30:27 226

原创 计算parameters和FLOPs

1. 安装 ptflopspip install ptflops2. 计算params和FLOPsfrom ptflops import get_model_complexity_infodef print_time_paramter_complexity(net, input_size): macs, params = get_model_complexity_info(net, input_size, as_strings=True, print_per_layer_stat=Tru

2022-03-26 11:35:41 1089

原创 tensorboard重定向

tensorboard重定向到本地:ssh -NfL 6006:localhost:6006 username@host

2022-03-10 16:59:35 257

原创 Mask RCNN pytorch官方代码解读

1. 数据预处理1.1 transform将图片进行缩放。对应的box和mask也进行缩放。box缩放时直接将坐标乘以相应的倍数。图像缩放采用bilinear方式,而mask缩放时采用nearest方式。同时可能需要将image使用padding方式扩大,即:new_img = np.zeros((3, new_x, new_y))new_img[:, :x_max, :y_max] = old_img对应GenerilizedRCNN.py中的images, targets = self.t

2022-02-10 16:06:00 5037 1

原创 brew和curl相关命令

1. brew更新命令brew upgrade curl2. brew安装指定版本brew install pkg@version

2022-02-09 02:44:55 737

原创 源码安装python和tkinter(python出现no module named _tkinter)

此时需要重新安装python。1. 从官网上下载tk和tcl下载tcl-tk2. 安装# install tclwget -c https://prdownloads.sourceforge.net/tcl/tcl8.6.9-src.tar.gztar -xvzf tcl8.6.9-src.tar.gzcd tcl8.6.9/unixmkdir buildcd build../configure --prefix=/home/xxx/local/tcl-tk/makemake ins

2022-02-07 02:20:49 1237

原创 einops使用方法

einops(爱因斯坦标记法)用法操作tensor。支持numpypytorchtensorflowjaxcupychainergluontf.kerasmxnet (experimental)官方文档: einops1. 操作符einops让代码可读性更强,例如:传统代码:y = x.transpose(0, 2, 3, 1)einops代码:y = rearrange(x, 'b c h w -> b h w c')相关代码:import numpyf

2021-11-23 02:30:41 2325

原创 解决pycharm远程解释器updating index和auto completion

更新远程解释器后, pycharm会出现不停updating index,且占用大量内存。此时选择:file->invalidate caches如果出现Cannot find declaration to go to,并且没有代码提示。此时配置好远程解释器并等待一段时间以后会出现如下几个外部库:将远程服务器上安装的包(位于site-packages下)下载到Remote Libraries以即可。...

2021-11-22 23:34:13 1563

原创 vmware装Mac

使用unlock破解。

2021-10-16 06:29:59 70

原创 image中的transformer操作

首先可以通过很多个conv,将imag弄成feature map:(N, C, H, W),然后reshape + transpose弄成(N, H*W, C)。此后需要构建Q, K, V矩阵,其实就是nn.Linear层:nn.Linear(C, C)通过全连接层之后实现channel之间的信息传递,得到三个矩阵:q(x):(N,H∗W,C),k(x):(N,H∗W,C),v(x):(N,H∗W,C)。q(x): (N, H*W, C), k(x): (N, H*W, C), v(x): (N,

2021-10-11 04:46:31 627

原创 AttentionUNet

论文: Attention U-Net: Learning Where to Look for the Pancreas其中的attention部分简化后如下:class _GridAttentionBlockND(nn.Module): def __init__(self, in_channels, gating_channels, inter_channels=None, dimension=3, mode='concatenation', sub_samp

2021-10-11 04:03:14 463 1

原创 onnx中的常见操作

1. shape取一个tensor的shapetorch.tensor([[2, 3, 4], [3,4,5]])# shape操作输出 (2, 3)2. gather一般用来取shape的某一个维度,例如torch.tensor([2, 256, 768]).gather(index=0)# 输出2torch.tensor([2, 256, 768]).gather(index=1)# 输出2563. Unsqueeze扩充维度4. concat将list of tens

2021-10-10 23:26:33 3541

原创 pytorch中的gather函数

pytorch中的gather函数比较难以理解,下面用2D的例子解释如下:import torchinput = torch.arange(16).view(4, 4)"""[[0, 1, 2, 3],[4, 5, 6, 7],[8, 9, 10, 11],[12, 13, 14, 15]]"""首先要指出的是input和index必须有相同的维度,但是各个维度的大小(shape)可以不一样。比如input是一个三维矩阵,则tensor也必须是一个三位矩阵。对于d != dim的维度

2021-10-10 22:10:41 2936

原创 命令行下出现No module named

pycharm下能正常运行,命令行下No module named。此时需要将根目录加入到pythonpath中,两种方法:1. 环境变量中加入编辑.bashrc文件export PYTHONPATH=/home/to/path:$PYTHONPATH2. 代码中加入import syssys.path.append(/home/to/path)...

2021-10-08 22:32:36 780

1~N的n个数按大小顺序的全排列的c程序

代码非常简洁,只有不到40行,是一个大牛写的,我也没有看懂。保证可用,大家可以下载下来一起学习一下。

2015-03-18

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

TA关注的人

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