自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Einstellung的博客

即使一小步,也愿与你分享

原创 常用数据集整理

图片数据 分类 微笑检测数据集 数据集里面有9475个笑脸样本,和3690个非笑脸样本。图片是灰度图片,大小为64*64像素 牛津花卉数据集 17flowers是牛津大学Visual Geometry Group选取的在英国比较常见的17种花。其中每种花有80张图片,整个数据及有1360...

2019-05-13 16:24:52 425 0

原创 吴教主深度学习和神经网络课程总纲

第一部分:神经网络和深度学习第一周:深度学习概论第二周:神经网络基础1.2.1 Logistic回归和梯度下降简介1.2.2 Logistic回归和梯度下降计算的数学流程练习:numpy basic1.2.3 使用向量化进行加速计算1.2.4 在Python中使用向量化的技巧和注意事项练习:Log...

2018-02-28 21:08:37 2037 0

原创 信号与系统学习笔记(大纲)

第一章 信号与系统基本概念1.1 信号表征1.1.2信号分类1.1.3典型信号1.1.4信号运算1.1.5信号的分解1.2.1系统建模1.2.2系统分类(一)1.2.2系统分类(二)1.2.3 LTI系统研究方法与本章小结第一章作业第二章 时域系统分析2.1 微分方程、差分方程求解(概述)2.1 ...

2017-08-11 19:25:14 11193 1

原创 Java线程通俗讲解
原力计划

Java线程介绍 通常情况下,在一个服务器上面运行的程序是很多的,可能同一时间会有多个客户 端的程序访问服务器,服务器都要对这些客户端做出响应。如果我们处理器有限, 只有一个处理器的时候,如何能够让这些任务看起来是并行的同时执行呢?这里就需要用到线程的知识。 当有超过一个以上执行空间时,看起来会像...

2020-07-02 11:26:45 34 0

原创 Java使用内部类的意义

Java中的内部类感觉很奇怪,一个类中还要再嵌套一个类。为什么要这样做呢? 内部类提供了一个类中实现同一接口的多次机会。 一般情况下,在一个普通类中,是没有办法将一个方法写两遍,还能表达不同意思的,而内部类可以很好地实现这一点。 提供一个实现多重继承的思路 Java一个子类只能继承单一父类...

2020-06-10 20:24:12 36 0

原创 Java接口存在的意义以及如何解决菱形继承问题

可以说接口存在的目的就是为了解决菱形继承问题。我们用例子来去讲解这个问题。 最好的办法就是使用多重继承 新建一个宠物类,让猫和狗都去继承宠物类的属性和方法。但是这样就会导致一个问题。即菱形继承问题。 如果宠物类和动物类都有eat方法,作为一个猫类要想继承两个父类的话,到底是继承哪一种eat方...

2020-06-09 22:25:35 67 0

原创 Pytorch转ONNX采坑记:Converting a tensor to a Python boolean might cause the trace to be incorrect. We...

如果你用Pytorch定义的网络结构太过于灵活,那么转成ONNX的时候很有可能出错。这个报错通常情况下是你的网络结构中出现if else 语句。比如 if cfg.CUDA: eps = torch.cuda.FloatTensor(std.size())....

2020-05-02 09:49:29 648 0

原创 如何将Pytorch生成的模型进行CPU部署

我们使用Pytorch深度学习框架训练好模型通常保存为.pth文件,但这种网络文件结构通常只在实验验证或者网络学习时使用。如果你做好了一个网络,想要将其部署在终端,或者想要加速其推理速度,可能需要其他专门的框架来帮助其部署。 本文介绍英特尔公司开发的OpenVINO工具箱,用其来进行Pytorch...

2020-04-14 11:36:42 458 0

原创 OpenVINO 2020版没有cpu_extension.dll问题解决

解决办法 在OpenVINO的2019版本中,一般在使用OpenVINO进行推理的时候,如果你使用的是CPU来运行神经网络的话,需要使用cpu_extension.dll,而这个dll不是安装OpenVINO之后就可以直接获得的。需要经过编译等操作。 具体来说,对于Windows系统而言,比如20...

2020-04-13 18:17:29 529 1

原创 使用OpenVINO遇到No name 'IENetwork' in module 'openvino.inference_engine'解决
原力计划

我们使用OpenVINO进行模型部署的时候,可以使用c++,也可以使用Python。当你安装好Python,运行OpenVINO的sample demo时候,可能会发现,代码中这行语句报错: from openvino.inference_engine import IENetwork, IECo...

2020-03-25 22:46:14 449 2

原创 Visdom数据可视化工具绘制Loss曲线

总览欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图...

2020-02-15 11:56:45 151 0

原创 猫狗图像识别

这里,我们介绍的是一个猫狗图像识别的一个任务。数据可以从kaggle网站上下载。其中包含了25000张毛和狗的图像(每个类别各12500张)。 在小样本中进行尝试 我们下面先尝试在一个小数据上进行训练,首先创建三个子集:每个类别各1000个样本的训练集、每个类别各500个样本的验证集和每个类别...

2020-01-16 15:58:05 4641 4

原创 如何制作人脸微笑检测程序

这里介绍一个深度学习的简单应用,制作一个微笑检测程序。用深度学习技术做分类,然后再用OpenCV的级联分类器做人脸识别,基本可以做到实时检测。下面展示一个效果图(示意): 下面介绍微笑脸分类模型的构建: 数据介绍 数据地址:https://github.com/hromi/SMILEsm...

2020-01-16 15:57:14 4869 6

原创 yolov3参考链接

[1] YOLOv3 深入理解

2020-01-13 20:28:05 60 0

原创 PyTorch实现深度可分离卷积(以MobileNet为例)

介绍深度可分离卷积之前首先要先介绍一下分组卷积。 分组卷积 参考链接[1]已经将分组卷积介绍的比较详细了,这里就不再赘述。原理可以参考一下参考链接。但是这篇文章对于分组卷积的具体代码讲解,感觉不太好。这里对于分组卷积着重介绍一下代码讲解。 直接调用torch.nn.Conv2d()就可以实现分组卷...

2019-12-17 21:48:18 2313 0

原创 vscode pylint报错的问题

网上查了很多资料,解决vscode中 pylint报错都没能很好的解决,直到看到这个链接。如果你也有类似的问题,可以参考这个解决办法: https://www.jianshu.com/p/5184ae0b0fc6 ...

2019-12-13 21:32:50 217 0

原创 目标检测参考

参考 [1]锚框:Anchor box综述

2019-12-09 16:15:25 54 0

原创 Faster RCNN网络简介

介绍 Faster RCNN网络是目标检测领域里程碑式的一个网络。这个网络的提出,真正将深度学习方法端到端的应用到目标检测领域。大幅提升了目标检测的检测速度和检测准确程度。论文的RPN、Anchor等思想对后续的论文和研究工作也有不小的影响。下面,我们一起来看一下Faster RCNN到底是如何具...

2019-12-05 12:08:33 262 0

原创 如何利用CycleGAN实现男女性别转换

介绍 CycleGAN网络具有很强大的风格迁移功能。能够实现非常深层次的风格转换。比如男性图片女性化或者女性图片男性化。 先上效果图: 下面简单谈一谈实现原理。 网络结构 网络结构如图所示,通过两个循环使用的生成器来进行风格迁移。由此实现了非常神奇的效果。 此外,我还做了一个exe交互程序。可...

2019-11-26 22:17:29 515 0

原创 如何在Ubuntu18.04下安装CUDA10.1和cudnn

CUDA10.1的版本比较新了,网上的一些教程不再适用。还有网上的部分介绍过于复杂,这里结合自己实际安装经验。介绍一个我的实现思路。 额外说一句gcc的事情,现在的版本gcc到了7.4,安装CUDA10.1的时候,不再需要把gcc版本降低了。 安装显卡驱动 Ubuntu系统安装好之后,原先自带的...

2019-11-26 16:12:51 662 0

原创 如何将PDF无损转成图片形式

我曾一直困扰于如何将PDF图片高品质转换为图片格式。百度搜的很多方法都很坑。转换效果非常不理想。后来我看到这个方法,刚好我有PS软件,转换一下,效果超级棒。这里记录一下。如果有谁也遇到这样的问题,也可以试试这个方法。先把PDF文件导入到PS中,然后再从PS中导出为图像格式文件。 ...

2019-11-17 21:28:17 1214 1

原创 讲解泊松融合文章推荐

最近业余在折腾一个东西,偶然间看到了泊松融合。这正是我需要的。其中有两篇文章讲的很好。这里记录一下,推荐需要用到泊松融合技术的也去看看这两篇文章。 [1]从泊松方程的解法,聊到泊松图像融合 [2]图像处理(十二)图像融合(1)Seamless cloning泊松克隆-Siggraph 2004 ...

2019-11-05 21:22:47 189 0

原创 Python跨平台文件夹分割方法os.sep

我们在寻找路径或者进行一些什么操作的时候,可能经常要对文件夹进行分割操作。但是在在Windows上,文件的路径分隔符是’’,在Linux上是’/’,这会对我们的跨平台Python程序带来很多困扰。不过Python中的os.sep就很好的解决了这个问题。os.sep可以理解为分隔符,不同的操作系统,...

2019-10-23 21:21:08 210 0

原创 Pytorch中的optimizer.zero_grad和loss和net.backward和optimizer.step的理解

引言 一般训练神经网络,总是逃不开optimizer.zero_grad之后是loss(后面有的时候还会写forward,看你网络怎么写了)之后是是net.backward之后是optimizer.step的这个过程。 real_a, real_b = batch[0].to(device), b...

2019-10-19 15:44:55 606 1

原创 如何利用Pix2Pix将黑白图片自动变成彩色图片

引言 pix2pix算是cGAN的一种,但是和cGAN又略有不同,而且,在pix2pix这篇论文中,首次提出了PatchGAN的概念,初次接触到的人可能会略有疑惑。这篇文章,我们就一起来探讨一下,pix2pix中的判别器是如何设计的。 cGAN 提到pix2pix就一定要提一下,他的思想源泉...

2019-10-18 20:27:41 590 0

原创 在Pytorch上使用summary

我们知道,Keras有一个非常有好的功能是summary,可以打印显示网络结构和参数,一目了然。但是,Pytorch本身好像不支持这一点。不过,幸好有一个工具叫torchsummary,可以实现和Keras几乎一样的效果。 pip install torchsummary 然后我们定义好网络结构...

2019-10-14 12:13:01 5033 2

原创 训练生成对抗网络的过程中,训练gan的地方为什么这里没有detach,怎么保证训练生成器的时候不会改变判别器

detach的作用是冻结梯度下降,无论是对于判别网络还是生成网络而言,我们更新的都是关于logD(G(z)),对于判别网络而言,冻结G并不影响整体的梯度更新(就是内层函数看成是一个常数,不影响外层函数求梯度),但是反过来,如果冻结D,就没有办法完成梯度更新了。所以,我们在训练生成器的时候没用冻结D...

2019-10-11 09:21:09 575 0

原创 如何对batch的数据求Gram矩阵

Gram矩阵概念和理解 在风格迁移中,我们要比较生成图片和风格图片的相似性,评判标准就是通过计算Gram矩阵得到的。关于Gram矩阵的定义,可以参考[1]。 由这个矩阵的样子,很容易就想到协方差矩阵。如果协方差矩阵是什么忘了的化可以参考[2],可以看到Gram矩阵是没有减去均值的协方差矩阵。协方差...

2019-09-24 11:00:55 240 0

原创 Pytorch学习参考链接

Reference [1]彻底明白Python partial [2]Pytorch的BatchNorm层使用中容易出现的问题

2019-09-19 11:27:19 78 0

原创 抽象基类和纯虚函数

纯虚函数:虚函数只有声明,函数体=0,就是一个纯虚函数,纯虚函数没有函数体,不需要实现。在子类里实现纯虚函数的具体功能。 抽象基类:拥有纯虚函数的类叫做抽象类,抽象类只能作为基类,不能构建对象。因为抽象内的纯虚函数没有函数体。 抽象类提供了不同种的子类对象的一个通用接口。 子类必须实现抽象基类中所...

2019-09-17 21:10:13 154 0

原创 LeetCode215:数组中第K个最大元素

在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 示例:输入: [3,2,1,5,6,4] 和 k = 2 输出: 5 这个问题就是一个排序问题,下面尝试使用不同的排序方法来实现。 快速排序 class So...

2019-08-27 12:01:06 79 0

原创 如何生成HDF5文件

在使用深度学习学习图像文件的时候,如果图片文件很多,比如大几千张,或者几万张。如果将一个图片再接一个图片导入到内存中,会极大地拖慢深度学习算法运行速度。我们都有过这样的经验,如果将一个文件夹里面有几万个文件的文件夹进行复制,其速度要比将文件夹打包之后复制速度要慢很多。 为了不让IO运算(将硬件中的...

2019-08-25 11:48:45 1349 0

原创 生成随机图片验证码

这里新介绍一个python模块:captcha 不知道python界的大佬们都写过多少稀奇古怪的东西! 不说了,上代码: # -*- coding: UTF-8 -*- from captcha.image import ImageCaptcha image = ImageCaptcha(wi...

2019-08-24 15:19:37 305 0

原创 Python剑指offer:和为s的连续整数序列

''' 输入一个正数s,打印出所有和为s的连续正数序列(至少含有两个数)。 例如,输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以打印三个连续 序列,1-5,4-6,7-8 ''' class Solution: ...

2019-08-23 20:55:35 78 0

原创 Python剑指offer:数组中数值和下标相等的元素

''' 假设一个单调递增的数组里的每个元素都是整数并且是唯一的。 请编程实现一个函数找出数组中任意一个数值等于其下标的元素。 例如,在数组{-3, -1, 1, 3, 5}中,数字3和它的下标相等。 ''' class Solutio...

2019-08-21 20:17:16 278 0

原创 介绍一种导入文件夹中图片数据集的方法

如果你有一个文件夹,里面有很多图片数据,而label就是图片的名称,图片排列杂乱无章,这时候导入数据可能显得略微棘手,可以用下面方法尝试试试看。 这里要使用imutils包,如果没有的话,可以通过pip来安装一下。然后我使用的是Keras的img_to_array来导入数据 假设我们想要到导入...

2019-08-12 22:11:57 1592 0

原创 Python剑指offer:分行从上到下打印二叉树

从上到下按层打印二叉树,同一层的节点按照从左到右 的顺序打印,每一层打印到第一行,例如本题中上一个问题的二叉树 输出形式会是: 8 6 10 5 7 9 11 这道题和前面一道题十分类似,也可以用一个队列来保存要打印的节点。 为了把二叉树的每一行单独打印到一行里,我们需要两个变量: 一个变量表示当...

2019-07-21 17:22:19 346 0

原创 sklearn中的fit_transform和transform以及什么时候使用

在使用sklearn对数据进行预处理的时候很有可能会遇到fit_transform和transform,网上不少资料写的模棱两可,在这里我回答几个核心问题,也许看完我写的这篇文章,一些疑惑就会豁然开朗。 为什么在训练集进行fit而不在测试集fit 机器学习假设,训练集和测试集的每个样本都是从同一分...

2019-06-29 10:51:36 1023 0

原创 如何正确使用迁移学习

在使用迁移学习之前,有两点需要特别注意的地方: 你的数据的尺寸大小 你的数据和预训练好网络结构数据(典型的比如说是ImageNet)的相似程度 (未完待续) ...

2019-06-26 11:42:18 740 0

原创 训练最优神经网络

谨防训练数据和实际问题不匹配 在谈论改善模型之前,首先一点是要考虑数据问题。 在深度学习过程中,很容易出现的一点是,我们训练的数据和实际问题并不匹配。这很糟糕,会导致训练模型效果很好,但实际应用很糟糕的现象。比如说对于下图而言,我们想要识别视频中的具体车辆是什么型号的车辆。右侧是训练数据。训练数据...

2019-06-26 11:19:53 137 0

提示
确定要删除当前文章?
取消 删除