Yowey
Yowey
@powerws 欢饮转载,遵守即可。这也都是平时的一些记录,我暂时也没工夫进一步整理。觉得有用可以转载哦。
FCN中deconv是初始化与前面的conv不同么? ```python for m in self.modules(): if isinstance(m, nn.Conv2d) or isinstance(m, nn.Linear): m.weight.data.normal_(0.0, 0.01) m.bias.data.fill_(0) if isinstance(m, nn.ConvTranspose2d): assert m.kernel_size[0] == m.kernel_size[1] initial_weight = get_upsampling_weight( m.in_channels, m.out_channels, m.kernel_size[0]) m.weight.data.copy_(initial_weight) ```...
从某种意义上,伴随因子f的上采样是对步长为1/f的分数式输入的卷积操作。只要f是整数,一种自然的方法进行上采样就是向后卷积(有时称为去卷积)伴随输出步长为f。这样的操作实现是不重要的,因为它只是简单的调换了卷积的顺推法和逆推法。所以上采样在网内通过计算像素级别的损失的反向传播用于端到端的学习。 需要注意的是去卷积滤波在这种层面上不需要被固定不变(比如双线性上采样)但是可以被学习。一堆反褶积层和激励函数甚至能学习一种非线性上采样。在我们的实验中,我们发现在网内的上采样对于学习dense prediction是快速且有效的
类似的pytorch实现: ```python # init 部分 self.denseops = nn.ModuleList() for i in range(self.pre_block_num): self.denseops.append(DenseOps[i]) # 前向部分 for ops in self.denseops: # 对于卷积而言, 输入的就是卷叠加后的输出 inter_out = ops(inputs) # 对于叠加而言, 就是卷积后的输出和快速通道的拼接 inputs =...
## 补充资料 * 移动平均:你知道的与你不知道的 - 石川的文章 - 知乎 https://zhuanlan.zhihu.com/p/38276041 * EMA 指数滑动平均原理和实现 (PyTorch) - 简枫的文章 - 知乎 https://zhuanlan.zhihu.com/p/51672655
## 关于深度学习分割算法的一种想法 是否可以分为两个阶段, 一个阶段先尽可能提升召回率, 一个阶段在其基础上尽可能提升准确率? 前者可以保证真实显著的区域被尽可能多的包含在预测的显著性区域里, 而后者可以保证, 预测出来的显著性区域里, 尽可能多的为真实的显著区域. 前者拿真实前景约束预测前景, 后者拿预测前景反过来约束真实前景
## Shuffle Channels 主要用在了shufflenet中,是一种修改通道顺序的操作,从各组中抽取特定通道进行组合。 ```python def shuffle_channels(x, groups): '''Channel shuffle: [N,C,H,W] -> [N,g,C/g,H,W] -> [N,C/g,g,H,W] -> [N,C,H,W]''' '''一共C个channel要分成g组混合的channel,先把C reshape成(g, C/g)的形状,然后转置成(C/g, g)最后平坦成C组channel''' N, C, H, W = x.size() return x.view(N, groups,...
## Subpixel Conv的像素处理操作 https://github.com/pytorch/examples/blob/1de2ff9338bacaaffa123d03ce53d7522d5dcc2e/super_resolution/model.py#L15 ```python nn.PixelShuffle(upscale_factor) ``` 该操作实现了下图的操作,只是重排了特征,没有其他操作:  --- 具体公式:https://blog.csdn.net/oLingFengYu/article/details/87728077
## python的模块路径问题 * pycharm:在pycharm中运行的时候,pycharm会**自动将项目所在目录添加到sys.path中**,所以从项目根目录查找是可以找到项目中的模块的。https://www.cnblogs.com/feiyafei/p/10155616.html * 终端:终端运行的时候,需要手动添加,更推荐:`export PYTHONPATH=$PYTHONPATH:$HOME/proj_path`。https://blog.csdn.net/jojoy_tester/article/details/54575264
## MDRNN(Multi-Dimensional Recurrent Nerual Networks)     ## 总结 * 将RNN/LSTM改造, 适用于n维的数据, 也就是可以用于图像了. * 同时也可以使用多个方向的集成, 来实现更多广泛的上下文信息的流通. ## 相关文章 * https://www.yuque.com/lart/papers/mdrnn * Mulit-Dimensional Recurrent Neural Networks