深度学习
文章平均质量分 63
littlehaes
这个作者很懒,什么都没留下…
展开
-
ubuntu16.04安装Nvidia显卡驱动,CUDA8.0,cuDNN6,TensorFlow-gpu
Welcome To My Blog 实验室学姐让跑一个深度学习模型的程序,需要配置环境,查阅各种资料后安装成功,记录一下安装过程,确实挺刺激,也算是开启了自己的深度学习之旅了. 安装Nvidia显卡驱动1. 下载驱动根据自己的系统和显卡型号直接在NVIDIA官网,我是64位ubuntu16.04,显卡是1070Ti,安装的驱动型号是390.672. 禁用nouveau...原创 2018-07-06 21:48:57 · 2069 阅读 · 1 评论 -
快速理解NMS在物体检测中的应用原理
在物体检测的过程中,模型会生成大量的候选框,通过NMS(Non-Maximum Suppression,非极大值抑制)可以筛选出最优的候选框,原理非常直观,简单来说就是选出所有的局部最大值.最大值容易找,主要就是如何定义局部,通过IoU就OK啦~NMS执行流程假定最终选取的候选框集合为res,开始时res是空集; 假定模型输出的大量候选框集合为A,A中的各个候选框有对应的得分首先从A中选出...原创 2018-10-30 10:33:03 · 2259 阅读 · 3 评论 -
FasterRCNN之整体框架详解
欢迎访问我的个人主页训练时迭代了50000次,pascal2007测试结果MAP=0.65,其中,chair的ap最低0.46,horse的ap最高0.81运行环境:CUDA8,cuDNN7,1070Ti,TensorFlow1.4.0,python2.7训练集:voc_2007_trainval 训练时间148分钟测试集:voc_2007_testt 测试时间10分钟(5000图)刚接...原创 2018-10-24 23:49:36 · 10783 阅读 · 3 评论 -
tf.softmax_cross_entropy_with_logits()的计算过程及代码演示
欢迎访问我的个人主页tf.softmax_cross_entropy_with_logits()的计算过程一共分为两步:1.将logits转换成概率;2.计算交叉熵损失1.将logits转换成概率比如某个logits = [2, 7, 5],使用softmax将logits转换成概率,就是按照公式:ex∑ex\frac {e^x}{\sum e^x}∑exex计算logits中每个元素的...原创 2018-10-26 15:19:11 · 10623 阅读 · 3 评论 -
softmax_cross_entropy_with_logits与sparse_softmax_cross_entropy_with_logits的区别
读源码时发现softmax交叉熵损失函数的logits是(N,2),但是labels却是(N,1)的,仔细一看原来用的是sparse_softmax_cross_entropy_with_logits,看了一下文档,补充了基础知识举例来说:某个关于图像的单类别分类任务中,类别共有5种,构造标签时往往会用[0,1,0,0,0],[0,0,0,1,0]这种one hot的形式,这种情况下使用tf...原创 2018-10-26 11:31:01 · 494 阅读 · 0 评论 -
Tenor 和numpy array 相互转换
a = np.array([1,2,3])b = tf.constant([1,2,3])numpy array 转 Tensorres = tf.convert_to_tensor(a)Tensor 转 numpy arrayres = b.eval(session=sess)二者的转换实际上就是静态图阶段的数据和运行时的数据之间的转换其实sess.run(tensor)和tens...原创 2018-10-26 11:05:51 · 1242 阅读 · 0 评论 -
3分钟理解Spatial Pyramid Pooling层 (SPP层)
欢迎光临我的个人主页直接使用SPPNet论文的原图不同size的图片经过’convolutional layers’后得到的feature map of conv5的size不同,ROI Pooling层的功能便是将不同size的feature map of conv5处理后得到相同长度的特征表示.(对应图中的大黑框部分)具体流程:假设输入ROI Pooling层的feature map...原创 2018-10-28 13:05:46 · 3235 阅读 · 6 评论 -
LSTM原理及实现
转自:https://blog.csdn.net/gzj_1101/article/details/79376798LSTM网络LSTM核心思想逐步理解LSTM遗忘门输入门输出门LSTM变体多层LSTMLSTM实现手写数字设置LSTM参数初始化权值参数训练参考资料前面我们介绍了RNN,现在我们来介绍一种特殊的RNN结构,LSTM网络。我们将逐步介绍...转载 2018-09-23 09:12:24 · 9087 阅读 · 0 评论 -
tf.multinomial()用法解释
tf.multinomial(logits, num_samples, seed=None, name=None)看一个使用LSTM的代码,使用了这个函数,故学习下。从multinomial分布中采样,样本个数是num_samples,每个样本被采样的概率由logits给出logits: 2-D Tensor with shape [batch_size, num_classes]. Eac...原创 2018-09-22 09:03:31 · 11286 阅读 · 2 评论 -
tf.nn.embedding_lookup用法解释
Welcome to my blogtf.nn.embedding_lookup( params, ids, …),主要使用params, ids两个参数,函数的功能是从params中挑出索引为ids的元素,并返回一个张量,假设params的shape是batch * hidden, ids的shape是batch * n那么函数返回张量的shape是batch *n * hiddenim...原创 2018-09-23 23:31:11 · 1488 阅读 · 3 评论 -
tensorflow获取可用运算设备(CPU,GPU)
Welcome To My Blog 正常来说,运行下面两句会打印tensorflow能用的CPU和GPUfrom tensorflow.python.client import device_libprint(device_lib.list_local_devices())结果发现只有CPU可用,查阅资料后发现可能跟tensorflow版本有关,在终端运行pip3 list查看安装的...原创 2018-09-02 17:26:28 · 8881 阅读 · 0 评论 -
tf.strided_slice()官方示例解释
Welcome To My Blog tf.strided_slice( input_, begin, end ) 提取张量的一部分 1. 一个维度一个维度地看:begin 加 stride,直到二者的和大于等于end 2. [begin,end),左闭右开 3. 清楚各个维度指的是哪部分 4. 返回的张量中,元素的个数:end与begin对应元素做差再相乘,结果取绝对值 下面以官方...原创 2018-09-04 21:05:08 · 1256 阅读 · 2 评论 -
论文学习:Learning to Generate Time-Lapse Videos Using Multi-StageDynamic Generative Adversarial Networks
今天占个坑,明天写原创 2018-08-30 22:30:05 · 678 阅读 · 0 评论 -
TensorFlow获取Tensor维度
Welcome To My Blog 获取Tensor维度比如一个Tensor为a = tf.constant([[1,2,],[3,4]],name='a'),有三种方式可以获取a的维度 1. a.shape 2. a.get_shape() 3. tf.shape(a) 前两种返回类型是TensorShape,代表静态shape,a.shape.a...原创 2018-08-08 18:43:35 · 1688 阅读 · 0 评论 -
原始GAN论文笔记及TensorFlow实现
Welcome To My Blog 引言在GAN诞生之前,比起生成模型而言,判别模型更受关注,比如Alex Net,VGG,Google Net,因为典型的生成模型往往具有原理复杂,推导复杂,实现复杂的特点对于生成模型而言,通常有两种建模方式 最常见的是对目标对象的概率分布建模,将其表达成具体的某种参数形式,再通过最大似然一类的方法训练模型,如深度玻尔兹曼机DBM,这样做的缺...原创 2018-07-28 21:52:13 · 1656 阅读 · 3 评论 -
tensorflow不同版本对应的Python 版本,cuDNN版本,CUDA版本
welcome to my blog原图地址Linux下的对应版本macOS下的对应版本原创 2019-09-06 11:12:25 · 14292 阅读 · 0 评论