deep learning
ForABiggerWorld
这个作者很懒,什么都没留下…
展开
-
Pytorch中的VGG怎么修改最后一层FC
https://discuss.pytorch.org/t/how-to-modify-the-final-fc-layer-based-on-the-torch-model/766/12 That’s because vgg19 doesn’t have a fc member variable. Instead, it has a (classifier): Sequentia...原创 2018-11-04 09:24:25 · 7752 阅读 · 0 评论 -
tf怎么使用if
tf中用if是不行的,用==也是不行的因为是先建图,建图的时候也只是用tensor来进行判断You're correct that the if statement doesn't work here, because the condition is evaluated at graph construction time, whereas presumably you want the con...原创 2018-04-16 13:56:07 · 1280 阅读 · 0 评论 -
tensorflow name scope怎么让tensorboard显示更加clean
没有加下面这条语句的效果tf.name_scope('relu')手动整理一下tensorboard的输出import tensorflow as tfdef relu(X): with tf.name_scope('relu'): w_shape = (int(X.get_shape()[1]), 1) w = tf.Variable(tf.random_normal(w_shap...原创 2018-02-26 19:50:21 · 425 阅读 · 0 评论 -
tensorlfow操作gradient
tensorflow中操作gradient-clip在训练深度神经网络的时候,我们经常会碰到梯度消失和梯度爆炸问题,scientists提出了很多方法来解决这些问题,本篇就介绍一下如何在tensorflow中使用clip来address这些问题train_op = tf.train.GradientDescentOptimizer(learning_rate=0.1).minimize(loss)...转载 2018-02-14 21:29:45 · 401 阅读 · 0 评论 -
Tensorflow的Batch Normalization
https://www.jianshu.com/p/0312e04e4e83tensorflow中关于BN(Batch Normalization)的函数主要有两个,分别是:tf.nn.momentstf.nn.batch_normalization关于这两个函数,官方API中有详细的说明,具体的细节可以点链接查看,关于BN的介绍可以参考这篇论文,我来说说自己的理解。不得不吐槽一下,tensorf...转载 2018-02-14 21:26:49 · 264 阅读 · 0 评论 -
tf.shape()与tensor.get_shape()区别
两种方法都可以获得变量的shapetf.shape(x)其中x可以是tensor,也可不是tensor,返回是一个tensor.shape=tf.placeholder(tf.float32, shape=[None, 227,227,3] )1我们经常会这样来feed数据,如果在运行的时候想知道None到底是多少,这时候,只能通过tf.shape(x)[0]这种方式来获得.tensor.get_...原创 2018-02-14 21:14:24 · 634 阅读 · 0 评论 -
sparse_softmax_cross_entropy_with_logits 与 softmax_cross_entropy_with_logits 的区别
The difference is simple:For sparse_softmax_cross_entropy_with_logits, labels must have the shape [batch_size] and the dtype int32 or int64. Each label is an int in range [0, num_classes-1].For softma...原创 2018-02-14 21:04:39 · 274 阅读 · 0 评论 -
TensoFlow slim fine tune "BatchNorm/gamma/RMSProp_1 not found in checkpoint"
在用slim的model zoo fine tune的时候,经常想先tune fc layer,在tune conv layer,但是如果调完fc直接free 所有conv layer的时候,会出现"BatchNorm/gamma/RMSProp_1 not found in checkpoint",意思就是优化器RMSprop的参数没有找到,一个解决办法是吧优化器换成没有额外参数的SGD,但原创 2018-02-07 09:54:43 · 2091 阅读 · 1 评论 -
TensorFlow调试
1. GAN cifar10(调试0.5天):我先把cifar10转成图片,然后用slim的方式生成tfrecord,但是死活train不起来,输出了几步就不运行了,查看GPU也没在用;换成官方的mnist程序是OK的,后来发现是use_sync_replicas这个参数设置为TRUE的原因,估计是设置成了同步,然后一直阻塞在其中某步了吧!原创 2018-01-29 20:31:06 · 302 阅读 · 0 评论 -
TensorFlow 重新单独安装slim模块
TF升级到1.5了,但是需要cudnn9.0,为了使用最新版本的slim模块,又不想重新安装TF一个临时性的做法是单独安装slim模块因为slim单独安装时通过setup.py来安装的,setup又没有uninstall选项,Stack Overflow大多是说重装一遍,然后删掉,我试过发现并没什么用我先找到老版本的slim安装源码时所在的位置(我这里也是slim模块指向的位置),吧这原创 2018-01-29 17:51:02 · 3233 阅读 · 1 评论 -
tensorflow 中的卷积
【Tensorflow】tf.nn.separable_conv2d如何实现深度可分卷积?【Tensorflow】tf.nn.depthwise_conv2d如何实现深度卷积?【Tensorflow】tf.nn.atrous_conv2d如何实现空洞卷积?https://www.tensorflow.org/api_docs/python/tf/nn/separable_conv2d可视化:htt...原创 2018-01-19 16:14:41 · 283 阅读 · 0 评论 -
tf.nn tf.layers difference
For convolution, they are the same. More precisely, tf.layers.conv2d (actually _Conv) uses tf.nn.convolution as the backendthey use the same implementation. There is a slight difference in t原创 2017-12-28 12:16:32 · 420 阅读 · 0 评论 -
CS 20SI note
1. Need to tell optimizer to increment global stepself.global_step = tf.Variable(0, dtype=tf.int32, trainable=False, name='global_step')self.optimizer = tf.train.GradientDescentOptimizer(self.lr).原创 2017-12-23 14:22:48 · 338 阅读 · 0 评论 -
tensorflow name_scope && variable_scope
TensorFlow里创建变量的两种方式有 tf.get_variable() 和 tf.Variable() 在 tf.name_scope下时,tf.get_variable()创建的变量名不受 name_scope 的影响,而且在未指定共享变量时,如果重名会报错,tf.Variable()会自动检测有没有变量重名,如果有则会自行处理。import tensorflow as原创 2017-12-23 11:31:52 · 207 阅读 · 0 评论 -
tensorflow & keras fine tune
首先要说明一下:keras是tf高层次的封装,所以能在tf上用的,就可以在keras中用1. keras上fine tune:在官网上有例子:https://keras.io/applicationsfrom keras.applications.inception_v3 import InceptionV3from keras.preprocessing import im原创 2017-10-06 12:12:29 · 3309 阅读 · 0 评论 -
keras: Why is the training loss much higher than the testing loss?
Why is the training loss much higher than the testing loss?A Keras model has two modes: training and testing. Regularization mechanisms, such as Dropout and L1/L2 weight regularization, are turned原创 2017-10-04 11:52:22 · 515 阅读 · 0 评论 -
tf.nn.conv2d_transpose是怎样实现反卷积的?
http://blog.csdn.net/mao_xiao_feng/article/details/71713358通过设置padding为SAME,stride为1,改变kernel可以实现width,height的成倍增加今天来介绍一下Tensorflow里面的反卷积操作,网上反卷积的用法的介绍比较少,希望这篇教程可以帮助到各位反卷积出自这篇论文:Deco转载 2018-01-30 14:59:24 · 1004 阅读 · 0 评论 -
关于系统的GPU编号与Pytorch框架下的GPU编号
os.environ["CUDA_VISIBLE_DEVICES"] 决定了Pytorch能看到的GPU device然后Pytorch会对这些GPU重新编号 比如:os.environ["CUDA_VISIBLE_DEVICES"]="3,5"则重新编号后GPU3位device:0,GPU5位device:1 所以如果没有在os.environ指定device,只在 to...原创 2018-10-10 21:08:01 · 2752 阅读 · 0 评论 -
ubuntu训练log保存到文件
To write the output of a command to a file, there are basically 10 commonly used ways.Overview:Please note that the n.e. in the syntax column means "not existing".There is a way, but it's too co...转载 2018-10-08 21:07:58 · 502 阅读 · 0 评论 -
tensorflow中的group conv?
https://github.com/tensorflow/tensorflow/issues/3332caffe和pytorch都有对应的native API,但是TF貌似并没有,只有depth wise conv所以现在用TF都是tf.split 和tf.concat https://github.com/tensorflow/tensorflow/issues/3332#issuec...原创 2018-09-02 15:20:21 · 6216 阅读 · 0 评论 -
torch7安装出现no module named apt_pkg
默认python版本的原因,切换回python2或者python3.4就可以原创 2018-07-07 16:26:03 · 267 阅读 · 0 评论 -
利用多线程读取数据加快网络训练
http://manutdzou.github.io/2017/11/27/multiprocee-data-generator.html利用多线程生成数据当CPU读取数据跟不上GPU处理数据速度时候可以考虑这种方式,这种方法的好处是数据接口简单而且可以大幅加快网络训练时间。特别是针对服务器端超多核CPU配置。实验证实,该方法可以大大提升GPU的利用率。定义一个队列的类"""this file ...转载 2018-06-15 16:12:30 · 4327 阅读 · 3 评论 -
TensorFlow 多GPU范例
# Calculate the gradients for each model tower.tower_grads = []with tf.variable_scope(tf.get_variable_scope()): for i in xrange(FLAGS.num_gpus): with tf.device('/gpu:%d' % i): ...原创 2018-05-29 20:37:22 · 571 阅读 · 0 评论 -
关于TF object_detection demo出现版本不兼容问题
可以重新导出model.ckpt文件为pb文件原创 2018-05-22 15:01:02 · 387 阅读 · 0 评论 -
Keras Input Layer
指定shape说明Input layer,X = Input(shape=(Tx, n_values)),此时X的shape已经是(None,Tx, n_values)而且后面build up model的过程中所有tensor的第一维都是None原创 2018-02-04 17:30:52 · 6111 阅读 · 0 评论 -
查看 CUDA cudnn 版本
cuda 版本 cat /usr/local/cuda/version.txtcudnn 版本 cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2原创 2018-04-22 11:51:27 · 317 阅读 · 0 评论 -
TF load part of param
定义Saver的时候指定var_list,进到source code里面看就好了原创 2018-03-24 15:33:23 · 241 阅读 · 0 评论 -
关于梯度消失,梯度爆炸的问题
https://blog.csdn.net/qq_29133371/article/details/51867856随着神经网络层数的增加,会出现梯度消失或者梯度爆炸的问题,下面细说下问什么会出现: 起初的学习率固定。 下面来看几组通过增加隐藏层层数后的学习率变化图: ...转载 2018-03-23 09:12:45 · 240 阅读 · 1 评论 -
详解 ROI Align 的基本原理和实现细节
http://blog.leanote.com/post/afanti.deng@gmail.com/b5f4f526490bhttps://www.bilibili.com/video/av21410129?from=search&seid=5175685824130718132ROI Align 是在Mask-RCNN这篇论文里提出的一种区域特征聚集方式, 很好地解决了ROI Pool...转载 2018-02-14 14:48:46 · 8463 阅读 · 0 评论 -
GAN
WGAN: https://zhuanlan.zhihu.com/p/25071913转载 2018-02-14 13:33:43 · 225 阅读 · 0 评论 -
name&variable scope
Variables created using get_variable()are always named usingthe name of their variable_scopeas a prefix (e.g., "relu/threshold"), but for all other nodes (including variables created withtf.Variabl...转载 2018-02-26 19:14:31 · 172 阅读 · 0 评论 -
GPU利用率低的原因
1. CPU数据读取更不上:读到内存+多线程+二进制文件(比如tf record)2. GPU温度过高,使用功率太大:每次少用几个GPU,降低功耗(但是多卡的作用何在?)...原创 2018-10-10 21:13:41 · 33143 阅读 · 3 评论 -
anaconda 无法安装Python库的解决办法
今天遇到anaconda 无法安装Python库1. activate某个环境,用pip安装不了,即使更新到最新版本(发现是Ubuntu改了静态IP连不上网的缘故,目前还没有解决)2. 用pip安装下载好的whl倒是可以,但是有些包只有源码,没有whl,用pip install ./downloads/SomeProject-1.0.4.tar.gz直接安装有时候也会报错3....原创 2018-11-02 20:07:50 · 5583 阅读 · 0 评论 -
CNN 理解
http://cs231n.github.io/convolutional-networks/#converthttp://cs.stanford.edu/people/karpathy/convnetjs/demo/cifar10.html原创 2017-09-08 11:56:57 · 315 阅读 · 0 评论 -
Pycharm无法import tensorflow,找不到相关的库
LD_LIBRARY_PATH/usr/local/cuda/lib64原创 2019-03-27 11:00:24 · 635 阅读 · 0 评论 -
Pytorch 中的 tensor index
遇到了用tensor来index另外一个tensor的操作,在Pytorch中右2个比较相似的操作torch.index_select 和torch.gathertorch.index_select(input,dim,index,out=None)→ TensorReturns a new tensor which indexes theinputtensor a...原创 2019-03-25 21:19:27 · 3411 阅读 · 0 评论 -
caffe中的deconvolution
deconvolution可以初始化为bilinear filter,如果改层的lr设为0,就是起到bilinear resize的作用;如果有lr,改成可以学习,就可以看成是转置卷积ConvTransposeref:https://www.zhihu.com/question/63890195https://zhuanlan.zhihu.com/p/22882367...原创 2019-03-15 10:13:08 · 1022 阅读 · 0 评论 -
CRF
先记录一些比较有用的资料吧inference的Python实现http://ling0322.info/2014/01/08/pycrf.htmlhttps://github.com/ling0322/pycrfCRF怎么与FCN结合https://zhuanlan.zhihu.com/p/22308032(CRF只是用作后处理)https://zhuanla...原创 2019-03-06 10:58:42 · 85 阅读 · 0 评论 -
关于用另外一种框架重写模型
之前有几次尝试过用另外一种框架重写模型,包括caffe->tf,pytorch<-->tf如果作者有release code和pretrained model weight,那其实很简单,就是用新框架重写一下模型结构,然后转化一下权重,重新load就完事了,需要注意几点:1. 不同框架可能同一种op的实现方式略有差异,但是基本上不会影响最后的整体结果(细微的差异肯定是有的...原创 2019-02-20 12:08:21 · 146 阅读 · 0 评论 -
关于ensemble的一些想法
1.ensemble一定要有1,2个表现比较好的model,然后剩下的model越diverse越好(即使效果不好,ensemble也许仍然可以提升效果)(ELO)2.ensemble自后结果会变得稳定很多(HWI)...原创 2019-02-28 16:32:18 · 249 阅读 · 0 评论