- 博客(407)
- 资源 (19)
- 收藏
- 关注
原创 Gram格拉姆矩阵在风格迁移中的应用
Gram定义n维欧式空间中任意k个向量之间两两的内积所组成的矩阵,称为这k个向量的格拉姆矩阵(Gram matrix)根据定义可以看到,每个Gram矩阵背后都有一组向量,Gram矩阵就是由这一组向量两两内积得到的,先说一下向量内积是做什么的。向量的内积,也叫向量的点乘,对两个向量执行内积运算,就是对这两个向量对应位一一相乘之后求和的操作,内积的结果是一个标量。例如对于向量a和向量b:...
2018-07-27 09:13:52 11247 1
原创 keras中VGG19预训练模型的使用
keras提供了VGG19在ImageNet上的预训练权重模型文件,其他可用的模型还有VGG16、Xception、ResNet50、InceptionV3 4个。 VGG19在keras中的定义:def VGG19(include_top=True, weights='imagenet', input_tensor=None, input_shape=None,...
2018-07-24 09:42:34 30951 19
原创 Dilated Convolutions 空洞卷积
Dilated Convolutions,中文一般称为空洞卷积或者扩张卷积,是一种改进的图像卷积方法。扩张卷积工作示意图如下:图a是普通的卷积,感受野是3*3,相当于不扩充,dilation=1图b是扩张卷积,感受野是7*7,dilation=2图c是扩张卷积,感受野是15*15,dilation=4 扩张卷积中多了一个扩充率参数(dilation rate),用来控制扩张(空洞填...
2018-07-20 07:52:12 7646 3
原创 全卷积神经网络FCN
卷积神经网络CNN(YannLecun,1998年)通过构建多层的卷积层自动提取图像上的特征,一般来说,排在前边较浅的卷积层采用较小的感知域,可以学习到图像的一些局部的特征(如纹理特征),排在后边较深的卷积层采用较大的感知域,可以学习到更加抽象的特征(如物体大小,位置和方向信息等)。CNN在图像分类和图像检测领域取得了广泛应用。 CNN提取的抽象特征对图像分类、图像中包含哪些类别的物体,以及图...
2018-07-19 14:48:55 29351 2
原创 python发送HTTP POST请求
1. 127.0.0.1和0.0.0.0127.0.0.1是一个回送地址,指本地机,一般用来本机测试使用,使用127.0.0.1启的服务只能在本地机器上访问,使用0.0.0.0启的服务可以在其他机器上通过网络访问。2. 在VMware 虚拟机上的启动网络服务需要的网络设置虚拟机的网络连接默认是 NAT模式(用于共享主机的IP地址),要在虚拟机上启动网络服务,需要把网络连接设置为桥接模式(直接连接物...
2018-06-03 19:26:08 28911
原创 python base64 编解码,转换成Opencv,PIL.Image图片格式
二进制打开图片文件,base64编解码,转成Opencv格式:# coding: utf-8import base64import numpy as npimport cv2img_file = open(r'00.JPG','rb') # 二进制打开图片文件img_b64encode = base64.b64encode(img_file.read()) # base64编码...
2018-06-01 20:51:30 15263 1
原创 VMware虚拟机与主机共享文件夹
VMware也可以像docker容器那样“挂载”主机上的目录给虚拟机,在虚拟机上访问共享目录就跟访问自己的目录一样方便。1. 虚拟机(M) -> 设置(S)-> 选项-> 共享文件夹 -> 总是启用 -> 添加 :2. 在弹出的对话框中选择主机目录作为共享目录:3. 选择之后可以看到已经共享的目录路径:共享目录使用:1. 在虚拟机中进入共享文件:cd /mnt/h...
2018-05-25 19:39:57 31831 4
原创 sequence to sequence模型
sequence to sequence模型sequence to sequence模型是一类End-to-End的算法框架,也就是从序列到序列的转换模型框架,比如机器翻译,自动应答等场景。Seq2Seq一般是通过Encoder-Decoder(编码-解码)框架实现,Encoder和Decoder部分可以是任意的文字,语音,图像,视频数据,模型可以采用CNN、RNN、LSTM、GRU、BLSTM等...
2018-05-16 09:24:09 27699 1
原创 精确率、召回率、准确率与ROC曲线
精确率表示的是预测为某类样本(例如正样本)中有多少是真正的该类样本,一般用来评价分类任务模型。 比如对于一个分类模型,预测结果为A类的所有样本中包含A0个真正的A样本,和A1个不是A样本的其他类样本,那么该分类模型对于分类A的精确率就是A0/(A0+A1)。 通常来说精确率越高,分类效果越好。但是在样本分布非常不均衡的情况下, 精确率高并不一定意味着是一个好的模型。 比如对于预测长沙明天是否会下雪...
2018-05-15 09:30:44 8296
原创 Opencv-Python 图像透视变换cv2.warpPerspective
# -*- coding:utf-8 -*-import cv2import numpy as npimport sysimg = cv2.imread('test.jpg')# cv2.imshow("original", img)# 可选,扩展图像,保证内容不超出可视范围img = cv2.copyMakeBorder(img, 200, 200, 200, 200, cv2...
2018-05-10 21:18:04 24393 1
原创 神经网络损失函数中的正则化项L1和L2
神经网络中损失函数后一般会加一个额外的正则项L1或L2,也成为L1范数和L2范数。正则项可以看做是损失函数的惩罚项,用来对损失函数中的系数做一些限制。正则化描述:L1正则化是指权值向量w中各个元素的绝对值之和;L2正则化是指权值向量w中各个元素的平方和然后再求平方根;一般都会在正则化项之前添加一个系数,这个系数需要用户设定,系数越大,正则化作用越明显。正则化作用:L1正则化可以产生稀疏权值矩阵,即...
2018-05-07 21:29:27 11267
原创 CTC+pytorch编译配置warp-CTC
CTCCTC可以生成一个损失函数,用于在序列数据上进行监督式学习,不需要对齐输入数据及标签,经常连接在一个RNN网络的末端,训练端到端的语音和文本识别系统。CTC论文地址: http://www.cs.toronto.edu/%7Egraves/icml_2006.pdfCTC网络的输入CTC网络的输入是一个样本(图像)经过网络(一般是CNN+RNN)计算后生成的特征向量(特征序列)。特征序列里各...
2018-05-04 21:22:28 19933 8
原创 端到端文本识别CRNN论文解读
CRNN 论文: An End-to-End Trainable Neural Network for Image-based Sequence Recognition and Its Application to Scene Text RecognitionCRNN不定长中文识别项目下载地址: https://download.csdn.net/download/dcrmg/10248818CR...
2018-05-04 20:26:15 8509 2
原创 RCNN、SPP-net、Fast-RCNN和Faster-RCNN
RCNNRCNN (Regions with CNN features) 的核心思想是把图像划分成N(2000)个独立的区域,分别提取每个区域的CNN特征,然后把这些特征使用SVM等分类器进行结果预测,把目标检测任务转换成了分类任务。RCNN由Ross Girshick在2013年提出。RCNN算法的4个步骤:1. 候选区域选择选择候选区域就是进行区域提名(Region Proposal)操作,...
2018-05-02 22:34:17 831
原创 tensorflow模型持久化保存和加载
模型文件的保存tensorflow将模型保持到本地会生成4个文件:meta文件:保存了网络的图结构,包含变量、op、集合等信息ckpt文件: 二进制文件,保存了网络中所有权重、偏置等变量数值,分为两个文件,一个是.data-00000-of-00001 文件,一个是 .index 文件checkpoint文件:文本文件,记录了最新保持的5个模型文件列表tf中模型保存使用 tf.train.Save...
2018-04-23 19:49:26 3198
原创 tensorflow读取训练数据方法
1. 预加载数据 Preloaded data# coding: utf-8import tensorflow as tf# 设计Graphx1 = tf.constant([2, 3, 4])x2 = tf.constant([4, 0, 1])y = tf.add(x1, x2)with tf.Session() as sess: print sess.run(y) #...
2018-04-22 18:52:56 10559
原创 tensorflow中的参数初始化方法
1. 初始化为常量tf中使用tf.constant_initializer(value)类生成一个初始值为常量value的tensor对象。constant_initializer类的构造函数定义:def __init__(self, value=0, dtype=dtypes.float32, verify_shape=False): self.value = value sel...
2018-04-21 22:13:30 48786
原创 tensorflow中屏蔽输出的log信息方法
tensorflow中可以通过配置环境变量 'TF_CPP_MIN_LOG_LEVEL' 的值,控制tensorflow是否屏蔽通知信息、警告、报错等输出信息。使用方法:import osimport tensorflow as tfos.environ['TF_CPP_MIN_LOG_LEVEL'] = '3' # or any {'0', '1', '2'}TF_CPP_MIN_LOG...
2018-04-21 15:13:41 21886 8
原创 pycharm中tensorflow代码不能自动补全或import红线问题解决
正确安装并配置好pycharm+tensorflow环境之后,可能在pycharm中导入tensorflow会有以下问题:1. " import tensorflow as tf " 会有红线提示找不到tensorflow,但是运行的话可以正常运行2. tensorflow相关的代码不能自动补全, Ctrl+B(查看函数定义快捷键)也定位不到函数定义出现这样的问题可能是因为在pycharm中配置的...
2018-04-21 14:24:04 9949 6
原创 tensorflow中常用学习率更新策略
神经网络训练过程中,根据每batch训练数据前向传播的结果,计算损失函数,再由损失函数根据梯度下降法更新每一个网络参数,在参数更新过程中使用到一个学习率(learning rate),用来定义每次参数更新的幅度。过小的学习率会降低网络优化的速度,增加训练时间,过大的学习率可能导致网络参数在最终的极优值两侧来回摆动,导致网络不能收敛。实践中证明有效的方法是设置一个根据迭代次数衰减的学习率,可以兼顾训...
2018-04-20 13:09:39 22103 1
原创 交叉熵损失函数和均方误差损失函数
交叉熵 分类问题中,预测结果是(或可以转化成)输入样本属于n个不同分类的对应概率。比如对于一个4分类问题,期望输出应该为 g0=[0,1,0,0] ,实际输出为 g1=[0.2,0.4,0.4,0] ,计算g1与g0之间的差异所使用的方法,就是损失函数,分类问题中常用损失函数是交叉熵。交叉熵(cross entropy)描述的是两个概率分布之间的距离,距离越小表示这两个概率越相近,越大...
2018-04-19 20:31:18 14215 2
原创 python中几个实用的文件操作
1. 判断指定目录是否存在:os.path.exists(input_folder)2. 判断指定目录是不是文件夹os.path.isdir(input_folder)3. 判断指定目录是不是文件os.path.isfile(input_folder)4. 判断指定文件是不是图片(判断给定文件是何种图片类型)import imghdrimg_list= {'jpg','bmp','png','jp...
2018-04-17 22:03:13 688 2
原创 python 兼容中文路径 + 目标文件是否是图像格式判断
1. 中文路径兼容python程序如果路径中包含中文字符,不加处理会有类似报错:'ascii' codec can't decode byte 0xxx in position xx:ordinal not in range(128)解决方法:path = unicode(path,'utf-8')2. 文件是否是图像格式判断python中的标准库 imghdr 可以用来判断文件是否是图片, im...
2018-04-12 20:13:33 2626
原创 tensorflow中 tf.add_to_collection、 tf.get_collection 和 tf.add_n函数
tf.add_to_collection(name, value) 用来把一个value放入名称是‘name’的集合,组成一个列表;tf.get_collection(key, scope=None) 用来获取一个名称是‘key’的集合中的所有元素,返回的是一个列表,列表的顺序是按照变量放入集合中的先后; scope参数可选,表示的是名称空间(名称域),如果指定,就返回名称域中所有放入‘ke...
2018-04-12 07:42:15 3248
原创 tensorflow中summary操作
tf中 tensorboard 工具通过读取在网络训练过程中保存到本地的日志文件实现数据可视化,日志数据保存主要用到 tf.summary 中的方法。 tf.summary中summary是tf中的一个py文件,位置在 '/tensorflow/python/summary/' 文件夹下,提供了像tf.summary.scalar、tf.summary.histogram 等方法,用来把graph...
2018-04-03 22:24:46 9658 1
原创 tensorflow中 tf.reduce_mean函数
tf.reduce_mean 函数用于计算张量tensor沿着指定的数轴(tensor的某一维度)上的的平均值,主要用作降维或者计算tensor(图像)的平均值。reduce_mean(input_tensor, axis=None, keep_dims=False, na...
2018-04-03 08:44:42 270293 11
原创 tensorflow中协调器 tf.train.Coordinator 和入队线程启动器 tf.train.start_queue_runners
TensorFlow的Session对象是支持多线程的,可以在同一个会话(Session)中创建多个线程,并行执行。在Session中的所有线程都必须能被同步终止,异常必须能被正确捕获并报告,会话终止的时候, 队列必须能被正确地关闭。TensorFlow提供了两个类来实现对Session中多线程的管理:tf.Coordinator和 tf.QueueRunner,这两个类往往一起使用。Coordi...
2018-04-01 18:51:57 29746 8
原创 tensorflow中 tf.train.slice_input_producer 和 tf.train.batch 函数
tensorflow数据读取机制tensorflow中为了充分利用GPU,减少GPU等待数据的空闲时间,使用了两个线程分别执行数据读入和数据计算。具体来说就是使用一个线程源源不断的将硬盘中的图片数据读入到一个内存队列中,另一个线程负责计算任务,所需数据直接从内存队列中获取。tf在内存队列之前,还设立了一个文件名队列,文件名队列存放的是参与训练的文件名,要训练 N个epoch,则文件名队列中就含有N...
2018-04-01 12:05:13 29747 16
原创 tensorflow中tensor的静态维度和动态维度
tf中使用张量(tensor)这种数据结构来表示所有的数据,可以把张量看成是一个具有n个维度的数组或列表,张量会在各个节点之间流动,参与计算。张量具有静态维度和动态维度。在图构建过程中定义的张量拥有的维度是静态维度,这个维度可以被定义为不确定的,例如定义一个tensor的维度是[None,10],表示这个tensor的第一个维度是不确定的,可以是任意的,None 表示具体维度值要在图运行过程中确定...
2018-03-31 10:36:15 8699 2
原创 tf.device()指定tensorflow运行的GPU或CPU设备
在tensorflow中,我们可以使用 tf.device() 指定模型运行的具体设备,可以指定运行在GPU还是CUP上,以及哪块GPU上。设置使用GPU使用 tf.device('/gpu:1') 指定Session在第二块GPU上运行:import tensorflow as tfwith tf.device('/gpu:1'): v1 = tf.constant([1.0, 2....
2018-03-29 19:51:43 75353 8
原创 tf.cast()数据类型转换
tf.cast()函数的作用是执行 tensorflow 中张量数据类型转换,比如读入的图片如果是int8类型的,一般在要在训练前把图像的数据格式转换为float32。cast定义:cast(x, dtype, name=None)第一个参数 x: 待转换的数据(张量)第二个参数 dtype: 目标数据类型第三个参数 name: 可选参数,定义操作的名称int32转换为float32:impo...
2018-03-29 19:40:08 142929 9
原创 Tensorflow 模型文件结构、模型中Tensor查看
tensorflow训练后保存的模型主要包含两部分,一是网络结构的定义(网络图),二是网络结构里的参数值。1. .meta文件.meta 文件以 “protocol buffer”格式保存了整个模型的结构图,模型上定义的操作等信息。这个文件保存了网络结构的定义。例如 model.ckpt-3072.meta ,大小是 2.9 MB。2. .data-00000-of-00001 文件和 .in...
2018-03-23 21:40:23 16153 1
原创 tensorflow命令行参数:tf.app.flags.DEFINE_string、tf.app.flags.DEFINE_integer、tf.app.flags.DEFINE_boolean
tf 中定义了 tf.app.flags.FLAGS ,用于接受从终端传入的命令行参数,相当于对Python中的命令行参数模块optpars(参考: python中处理命令行参数的模块optpars )做了一层封装。optpars中的参数类型是通过参数 “type=xxx” 定义的,tf中每个合法类型都有对应的 “DEFINE_xxx”函数。常用:tf.app.flags.DEFINE_strin...
2018-03-22 22:18:32 36076 8
转载 让深度学习更高效运行的两个视角
原文链接: https://zhuanlan.zhihu.com/p/33693725作为顶尖的自动驾驶公司,Momenta一直专注于打造自动驾驶大脑,这一过程离不开深度学习的高效运行。2月1日晚,Momenta联合量子位吃瓜社栏目带来了Paper Reading第二季首期分享:让深度学习更高效运行的两个视角。本期主讲人王晋玮是特征点定位专家、深度学习模型加速专家、Momenta合伙人。他从优化计...
2018-03-22 13:36:22 2075
转载 如何开启深度学习之旅?这三大类125篇论文为你导航(附资源下载)
原文链接: https://www.jiqizhixin.com/articles/2017-03-06-2如果你现在还是个深度学习的新手,那么你问的第一个问题可能是「我应该从哪篇文章开始读呢?」在 Github 上,songrotek 准备了一套深度学习阅读清单,而且这份清单在随时更新。至于文中提到的 PDF,读者们可点击阅读原文下载机器之心打包的论文,或点开下面的项目地址下载自己喜欢的学习材料...
2018-03-22 13:26:32 745
转载 为模型减减肥:谈谈移动 / 嵌入式端的深度学习
原文链接: http://www.zhiding.cn/techwalker/documents/J9UpWRDfVYHE5ToOGy30k4fU9v9ep3gPUOb3TSAsig本文为机器之心矽说专栏系列文章之一,对模型压缩进行了深度解读。1. 为什么要为深度学习模型减肥随着深度学习的发展,神经网络模型也越来越复杂,常用的模型中 VGG 系列网络的计算量可以达到 30-40 GOP(1GOP=...
2018-03-22 13:20:28 4689
转载 Roofline Model与深度学习模型的性能分析
原文链接: https://zhuanlan.zhihu.com/p/34204282最近在不同的计算平台上验证几种经典深度学习模型的训练和预测性能时,经常遇到模型的实际测试性能表现和自己计算出的复杂度并不完全吻合的现象,令人十分困惑。机缘巧合听了Momenta的技术分享后,我意识到问题的答案其实就在于 Roof-line Model 这个理论,于是认真研究了一下相关论文。现在把自己的心得总结出来...
2018-03-22 13:17:29 16246 6
转载 卷积神经网络的复杂度分析
原文链接: https://zhuanlan.zhihu.com/p/31575074在梳理CNN经典模型的过程中,我理解到其实经典模型演进中的很多创新点都与改善模型计算复杂度紧密相关,因此今天就让我们对卷积神经网络的复杂度分析简单总结一下下。本文主要关注的是针对模型本身的复杂度分析(其实并不是很复杂啦~)。如果想要进一步评估模型在计算平台上的理论计算性能,则需要了解 Roofline Model...
2018-03-22 13:10:02 6269
转载 CNN中卷积层的计算细节
原文链接: https://zhuanlan.zhihu.com/p/29119239卷积层尺寸的计算原理输入矩阵格式:四个维度,依次为:样本数、图像高度、图像宽度、图像通道数输出矩阵格式:与输出矩阵的维度顺序和含义相同,但是后三个维度(图像高度、图像宽度、图像通道数)的尺寸发生变化。权重矩阵(卷积核)格式:同样是四个维度,但维度的含义与上面两者都不同,为:卷积核高度、卷积核宽度、输入通道数、输出...
2018-03-22 13:02:07 45543 10
转载 ImageNet 历届冠军最新评析:哪个深度学习模型最适合你?
原文链接: https://mp.weixin.qq.com/s/I5XgYrPCCGyfV2qTI0sJhQ深度神经网络自出现以来,已经成为计算机视觉领域一项举足轻重的技术。其中,ImageNet 图像分类竞赛极大地推动着这项新技术的发展。精确计算水平取得了稳步的增长,但颇具吸引力的模型应用尚未得到合理的利用。本文将综合分析实际应用中的几项重要指标:准确度、内存占用、参数、操作时间、操作次数、推...
2018-03-22 12:58:06 10092
Tensorflow-Multi-GPU-Training.rar
2020-07-28
pytorch训练图像分类模型pth转ONNX并测试
2019-10-29
基于生成对抗网络的图像去模糊
2018-08-22
SqueezeNet模型文件及使用
2018-03-15
tensorflow训练的识别验证码模型
2018-01-08
python中xlutils模块(版本2.0)
2017-10-26
jTessBoxEditorFx-2.0-Beta part2(part1&&part2;)
2017-10-14
jTessBoxEditorFx-2.0-Beta part1(part1&&part2;)
2017-10-14
Windows平台下 Java运行时环境(虚拟机)安装包javaSetup8u144.exe
2017-10-14
tesseract简体中文语言包chi_sim.traineddata
2017-10-14
Windows下Tesseract 4.0安装包
2017-10-14
张正友相机标定Opencv实现(完整程序+棋盘图)实例源码
2016-10-26
贪吃蛇小游戏实现
2016-08-01
90年代经典“手游”—拼图板小游戏Opencv实现
2016-07-29
直方图反向投影的肤色检测
2016-07-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人