
deeplearning
remanented
勤思考,哈工大在读硕士。
展开
-
keras多模型加载
最近在作两个网络的整合工作,想着能不能用keras中的load_weights()函数来实现两次加载不同的预训练好的网络权重,最终发现是能够实现这样的操作的,只要保证你需要整合的最终网络中各层的名字与两个网络种的各层名字是保持一致的,则可以通过两次的load_weights(model_weights_path, by_name = True)调用,从而加载好了预训练好的两个模型...原创 2018-03-22 13:53:22 · 3858 阅读 · 0 评论 -
Linux服务器下用docker进行深度学习环境的配置以及简单使用
一直都听说docker是一个很不错的工具,不需要复杂的环境配置,以及移植性很强。这次在给服务器配置完了深度学习环境后,也尝试了一下使用docker,因为之前没接触过docker,就稍微借鉴了几篇博客来梳理一下安装和使用的流程。1.docker的安装docker的安装主要是参考了博客教你如何用Docker快速搭建深度学习环境,直接参考这个博客来安装,基本上不会有什么错误发生,需...原创 2019-06-15 22:31:55 · 6766 阅读 · 3 评论 -
Linux服务器深度学习环境的配置
一、驱动的安装服务器中搭载的GPU为4块Tesla V100,想来用来跑深度学习程序,所以需要按驱动等。1.寻找对应的驱动去NVIDIA的驱动下载官网:https://www.nvidia.cn/Download/index.aspx?lang=cn,下载自己GPU对应的驱动。 下载完了之后...原创 2019-06-14 23:31:39 · 10605 阅读 · 2 评论 -
pytorch 下自定义激活函数与多GPU训练
一、在解决一些实际问题时,pytorch中自带的激活函数可能不能满足需求,就需要自定义一些激活函数,比如我需要一个使得输出值在0到140之间的激活层,pytorch中不含有,所以自定义:#define a self activation functionclass Act_fun(nn.Module): def __init__(self): super(Act_...原创 2019-04-08 10:29:17 · 2478 阅读 · 0 评论 -
Batch Normalization 和 Group Normalization
Batch Normalization Batch Normalization 在深度学习上算是不可或缺的一部分,基本上所有的框架中都会用到它,我记得比较清楚的是,在YOLOV2中作者采用了Batch Normalization 从而提高了4个百分点的Map吧。为何要提出Batch Normalization? 本人偏向于computer vision 这一块,在每次给...原创 2018-04-17 22:41:08 · 6521 阅读 · 3 评论 -
Pascal Voc2012数据集中segmention数据转化为pkl文件
Pascal Voc2012数据集在object detection 和 instance segmention都具有较大的作用,并且相比于COCO来说,它比较小,更加适合像我这种穷学生操作。COCO实在是太大了,在本地还是在服务器上操作都太难受了,之前在服务器上下载COCO都花了几天的时间,在本地使用的linux和window双系统,给linux就分配了200G,这要是下载一个数据集就把...原创 2018-04-17 16:16:50 · 1403 阅读 · 0 评论 -
tensorflow 函数使用杂记
1. tf.tileimport tensorflow as tftemp = tf.tile([[1,2,3],[1,2,3]],[1,1])temp2 = tf.tile([[1,2,3],[1,2,3]],[2,1])temp3 = tf.tile([[1,2,3],[1,2,3]],[2,2])with tf.Session() as sess: print(sess.ru...原创 2018-04-04 13:44:12 · 330 阅读 · 0 评论 -
SSD算法详解 及其 keras实现 (下)
在上一篇的博客讲述了SSD的原理,这一篇主要是讲解keras的实现。keras代码的github地址为:点击打开链接 model 的框架实现(ssd.py): 先给出了改变后的VGG16的实现:def SSD300(input_shape, num_classes=21):#Input_shape 为输入的形状(300,300,3)#num_class 为需要检测的种类。...原创 2018-04-16 12:18:11 · 16722 阅读 · 41 评论 -
SSD 算法详解 及其 keras 实现(上)
看了几天的SSD的论文和keras实现的代码,对SSD也有了一定的理解,把这几天的学习成果记录下来。可能是因为之前学习了Mask R-CNN 和 YOLOV1、V2,所以SSD一路看下来还是蛮顺利的。SSD:Single Shot Multibox Detector 算法原理介绍:算法摘要: 目前基于深度学习的object detection 算法主要分为了one-stage和two-s...原创 2018-04-15 12:00:38 · 15615 阅读 · 11 评论 -
Ubuntu16.04、GTX850M、cuda9.0、tensorflow1.5、cuddn7.0.5环境配置
自我教训:去年帮自己的笔记本配置这些环境的时候没有把这些步骤记录下来,搞得又花了一天的时间来配置环境。奇怪的是不知道为什么突然我的GTX850M在原来的配置下不工作了(总显示显存溢出,可用的显存就30多M),把网上所有关于解决这问题的方法都试过了一遍,但没有解决问题,只有把cuda8.0升级为9.0,Tensorflow升级为1.5了,最后能够正常的工作。nvidia驱动的安装:因为之前配置过一次...原创 2018-04-16 12:11:49 · 1087 阅读 · 0 评论 -
三十分钟理解:线性插值,双线性插值Bilinear Interpolation算法
本文出自Bin的专栏:http://blog.youkuaiyun.com/xbinworld http://blog.youkuaiyun.com/xbinworld/article/details/65660665线性插值先讲一下线性插值:已知数据 (x0, y0) 与 (x1, y1),要计算 [x0, x1] 区间内某一位置 x 在直线上的y值(反过来也是一样,略):y−y0x−x0...转载 2018-03-21 10:09:07 · 1253 阅读 · 0 评论 -
卷积压缩算法--ShuffleNetwork
ShuffleNetwork ShuffleNetwork:An Extremely Efficient Convolutional Neural Network for Mobile Devices论文地址:ShuffleNetwork摘要 介绍了一个名字为ShuffleNet计算效率极快的CNN框架,该框架设计用于计算能力有限的移动设备。主要是使用了两种操作:一个是point...原创 2018-03-20 22:23:06 · 3346 阅读 · 0 评论 -
numpy杂记
1. np.insert(arr, obj, values, axis=None):axis指定轴下顺序为obj行或列中插入values。 a = np.array([[1, 1], [2, 2], [3, 3]])>>> aarray([[1, 1], [2, 2], [3, 3]])>>> np.insert(...原创 2018-03-20 15:33:32 · 339 阅读 · 0 评论 -
经典网络综述
本文出自Bin的专栏blog.youkuaiyun.com/xbinworld。 技术交流QQ群:433250724,欢迎对算法、技术感兴趣的同学加入。关于卷积神经网络CNN,网络和文献中有非常多的资料,我在工作/研究中也用了好一段时间各种常见的model了,就想着简单整理一下,以备查阅之需。如果读者是初接触CNN,建议可以先看一看“Deep Learning(深度学习)学习笔记整理系列”中关于CNN的介绍[...转载 2018-03-19 22:07:57 · 243 阅读 · 0 评论 -
pycharm中连接服务器远程调试代码
首先需要安装和破解一个profession的pycharm,我是按照博客pycharm安装及其破解教程来安装的2017版,亲测有效。接下来就是进行pycharm的服务器连接了:1. 先找到tool里面的configuration 在connection底下需要填写SFTP host,...原创 2019-06-16 21:38:10 · 1109 阅读 · 2 评论