- 博客(63)
- 收藏
- 关注
原创 virtualenv的使用
安装pip install virtualenv使用1、创建一个文件夹,用来存放环境,之后pip install 之类的东西都在里面2、在该文件夹中建立该环境virtualenv -p /usr/bin/python2.7 venv注意2.7表示Python版本,你可以改成3.5之类的,后面venv是建立的文件夹路径...
2020-01-30 16:24:13
386
原创 Ubuntu 登录界面,字体变大,输入密码出现循环登录问题
出现这个问题,很大可能就是显卡驱动掉了,只需重新安装就好参考:https://blog.youkuaiyun.com/qq_36427732/article/details/80914653一、下载显卡驱动用一台电脑下载该显卡驱动,并放入u盘中二、将u盘的驱动拷贝到Ubuntu机器上1、登录控制台首先在登陆界面按ctrl+alt+F1进入控制台模式,tty1在login:后面输入你的用户名,回车...
2019-11-22 09:51:59
1188
原创 pytorch搭建网络结构
记录pytorch怎么搭建网络,看起来更舒服首先定义一个blockclass myBlock(nn.module): def __init__(self,in_channel,out_channel,····): super(myBlock,self).__init__() ······· def forward(self,x): ·······然后直接定义网络class...
2019-03-31 01:18:09
1488
原创 pytorch的inference
这里inference两个程序的连接,如目标检测,可以利用一个程序提取候选框,然后把候选框输入到分类cnn网络中。这里常需要进行一定的连接。#加载训练好的分类CNN网络model=torch.load('model.pkl')#假设proposal_img是我们提取的候选框,是需要输入到CNN网络的数据#先定义transforms对输入cnn的网络数据进行处理,常包括resize、to...
2019-02-20 23:58:16
5329
原创 一些奇怪的BUG
1.pytorch中的ResNets模型,之前在pytorch==0.3的版本中,输入是resize成227x227。后来升级到0.4版本,resize成227x227会出现size mismatch的错误,这是将resize改成224x224就能运行...
2019-02-20 18:16:13
321
原创 机器学习中数据不均衡问题(分类类别数据不均匀)
在机器学习中,我们经常会遇到类别数据分布不均衡问题,即某类中含有很多数据,而其他类别中的数据量很少。在这种情况下, 使用传统机器学习算法开发的预测模型可能存在偏差和不准确,造成上述的原因是,传统算法模型通过减少loss来提高准确性,他们并没有考虑到类别的分类不均问题。因此机器学习算法在面对不平衡的数据集时, 往往会产生不理想的分类器。标准分类器算法 (如决策树和逻辑回归) 倾向于只预测多数类数...
2019-02-19 01:38:39
11745
5
转载 OCR技术(CTPN,SegLink,EAST文本检测)
文字识别分为两个具体步骤:文字的检测和文字的识别,两者缺一不可,尤其是文字检测,是识别的前提条件,若文字都找不到,那何谈文字识别。今天我们首先来谈一下当今流行的文字检测技术有哪些。文本检测不是一件简单的任务,尤其是复杂场景下的文本检测,非常具有挑战性。自然场景下的文本检测有如下几个难点:文本存在多种分布,文本排布形式多样;文本存在多个方向;多种语言混合。我们先从直观上理解文本检测任务。...
2019-02-15 13:46:50
5900
1
转载 OCR技术(大批量生成文字训练集)
如果是想训练一个手写体识别的模型,用一些前人收集好的手写文字集就好了,比如中科院的这些数据集。但是如果我们只是想要训练一个专门用于识别印刷汉字的模型,那么我们就需要各种印刷字体的训练集,那怎么获取呢?借助强大的图像库,自己生成就行了!先捋一捋思路,生成文字集需要什么步骤:确定你要生成多少字体,生成一个记录着汉字与label的对应表。确定和收集需要用到的字体文件。生成字体图像,存储在规定的...
2019-02-07 22:06:07
6049
2
转载 OCR技术(文字定位与切割)
要做文字识别,第一步要考虑的就是怎么将每一个字符从图片中切割下来,然后才可以送入我们设计好的模型进行字符识别。现在就以下面这张图片为例,说一说最一般的字符切割的步骤是哪些。当然,我们实际上要识别的图片很可能没上面那张图片如此整洁,很可能是倾斜的,或者是带噪声的,又或者这张图片是用手机拍下来下来的,变得歪歪扭扭,所以需要进行图片预处理,把文本位置矫正,把噪声去除,然后才可以进行进一步的字符分割和文...
2019-02-07 01:50:55
5947
1
转载 OCR技术(一)
什么是OCR?OCR英文全称是Optical Character Recognition,中文叫做光学字符识别。它是利用光学技术和计算机技术把印在或写在纸上的文字读取出来,并转换成一种计算机能够接受、人又可以理解的格式。现在这技术已经比较成熟。实际应用:比如一个手机APP就能帮忙扫描名片、身份证,并识别出里面的信息;汽车进入停车场、收费站都不需要人工登记了,都是用车牌识别技术;我们看书时看到不懂...
2019-02-07 00:40:00
27579
1
原创 An End-to-End Trainable Neural Network for Image-based Sequence Recognition
Abstract基于图像的序列识别一直是计算机视觉中长期存在的研究课题。在本文中,我们研究了场景文本识别的问题,这是基于图像的序列识别中最重要和最具挑战性的任务之一。我们一种新颖的神经网络架构,集成了特征提取,序列建模和转换的统一框架。与以前的场景文本识别系统相比,所提出的架构具有四个独特的属性:(1)它是端到端可训练的,与大多数现有算法相反,其中的组件是单独训练和调整的。(2)它自然地处理任意...
2019-02-03 16:45:40
6350
原创 EAST: An Efficient and Accurate Scene Text Detector翻译
Abstract用于场景文本检测的先前方法已经在各种基准测试中获得了良好的性能。然而,在处理具有挑战性的场景时,即使配备了深度神经网络模型,它们通常也会达不到很好性能,因为整体性能取决于管道中多个阶段和组件的相互作用。在这项工作中,我们提出了一个简单而强大的管道,可以在自然场景中产生快速准确的文本检测。算法流程直接预测完整图像中任意方向和四边形形状的单词或文本行,消除了使用单个神经网络的不必要的...
2019-01-31 17:38:08
3952
3
原创 EAST: An Efficient and Accurate Scene Text Detector
这篇论文发表于2017年的CVPR,文章提出了一个高效精确的场景文字检测器。可以快速精确的产生文字追踪。该方法使用单个神经网络直接从整幅图片中预测任意方向的四边形文本行,消去了不必要的中间步骤(候选区域聚合和单词的分割)。该方法注重设计损失函数和神经网络体系结构。实验在包括ICDAR2015,COCO-Text和MSRA-TD500等经典数据集上,验证了提出的算法不管是在精度还是效率上都有着特别好...
2019-01-27 22:07:26
440
转载 Detecting Text in Natural Image with Connectionist Text Proposal Network(CTPN)
文本检测其中一个难点在于文本行的长度变化是非常剧烈的。因此如果是采用基于faster rcnn等通用物体检测框架的算法都会面临怎么生成好的text proposal的问题。论文Detecting Text in Natural Image with Connectionist Text Proposal Network提供了另外一个思路,检测一个一个小的,固定宽度的文本段,然后在后处理部分再将这些...
2019-01-26 22:34:38
1088
原创 kaggle:Titanic Data Science Solutions
一般Solution的七个阶段问题或问题定义获取训练和测试数据整理、准备、清理数据分析、识别模式并探索数据建模,预测并解决问题可视化、报告和呈现问题解决步骤和最终解决方案提供或提交结果数据科学解决方案解决的七个主要目标分类 ,我们可能想对样品进行分类。我们还可能希望了解不同类与解决方案目标之间的含义或相关性。关联,可以根据训练数据集中的可用特性来处理问题。数据集中的哪些功能...
2019-01-21 15:45:52
586
转载 Kaggle-人类蛋白质图谱图像分类(Human Protein Atlas)
转载于Gary https://zhuanlan.zhihu.com/p/54743461比赛介绍任务介绍本次比赛的问题是场景识别 定位的是蛋白质所处位置的识别,例如在细胞液,细胞核里之类的 依输出分所属多标签分类(Multi-lable Classification)难点及数据介绍首先一张示例图如下:...
2019-01-19 00:46:14
10202
1
原创 机器学习与深度学习一些基础知识点
1、dropout的原理:可以把dropout看成是 一种ensemble(集成)方法,每次做完dropout相当于从原网络中找到一个更瘦的网络,具体的,它是通过一定概率对神经元连接进行舍弃,这样减弱了神经元节点间的联合适应性,增强泛化能力,同时使用dropout得到更多的局部簇,同等数据下,簇变多了,因而区分性变大,稀疏性也更大。要注意的是,在网络的测试阶段drop out对数据的处理比较特...
2019-01-17 22:34:25
1665
原创 反向传播过程推导例子
假如我们有个这样的网络:第一层是输入层,包含两个神经元i1,i2,和截距项b1;第二层是隐含层,包含两个神经元h1,h2和截距项b2,第三层是输出o1,o2,每条线上标的wi是层与层之间连接的权重,激活函数我们默认为sigmoid函数。...
2019-01-11 14:50:10
667
原创 MTCNN论文阅读笔记
论文:Joint Face Detection and Alignment Using MultitaskCascaded Convolutional Networks简称MTCNN,是一个用于人脸检测与对齐的三级联CNN网络。论文主要提出一个从粗到细的级联多任务框架用于人脸的检测与对其,并提出online hard sample mining strategy,该策略可以提升性能。on...
2019-01-07 17:44:38
864
原创 ubunt16.04+cuda9.0+cudnn+opencv3.4.0+caffe环境搭建
一、cuda安装要注意:禁用nouveau驱动,然后到官网下载显卡驱动,安装好,再安装cuda,建议run安装,cuda安装时不用再装显卡驱动二、cudnn下载Linux文件,解压,复制到特定文件夹,进行软连接,主要下载的版本文件名三、opencv安装opencv3.4.0,其他较低版本可能不支持cuda9.0解压文件,进入文件目录mkdir build # 创建编译的文件目录c...
2019-01-06 17:53:17
415
1
转载 Haar-like特征提取原理
转至:https://blog.youkuaiyun.com/chaipp0607/article/details/79943932Haar-like是一种非常经典的特征提取算法,尤其是它与AdaBoost组合使用时对人脸检测有着不错的效果,虽然只是在当时而言。OpenCV也对AdaBoost与Haar-like组成的级联人脸检测做了封装,所以一般提及Haar-like的时候,一般都会和AdaBoost,级...
2019-01-04 15:59:36
2897
原创 复现实验难以达到论文中精度的方法
复现论文实验一直是一大难题,或者说复现实验达到论文中精度是一大难题。绝大部分时候我们很难复现到媲美原文的精度,这很大原因是神经网络的参数众多,优化技巧众多,参数初始化等一些列问题,一般论文中对不会对小细节的处理进行描述或者他们有着一些不为人知的“trick”,所以我们很多时候我们达不到他们的实验效果。之前我曾尝试复现几篇论文的实验,花了很大力气总算搞出来的,但是结果实验结果与原文中精度总有2-3...
2019-01-03 16:33:45
15153
2
原创 十分钟了解什么是脉冲神经网络
深层神经网络,如卷积网络和深度置信网络,代表了许多机器学习和计算机视觉分类问题的最新进展。为了克服深层网络计算量大的问题,鉴于目前可用于脉冲的专用硬件,最近已经提出了脉冲网络神经网络(SNN)。...
2018-11-28 16:43:53
19819
3
原创 Faster RCNN
一、背景Faster R-CNN是受Fast R-CNN的启发,而Fast R-CNN是受R-CNN启发。R-CNN是采用 Selective Search 算法来提取(propose)可能的 RoIs(regions of interest) 区域,然后对每个提取区域采用标准 CNN 进行分类。Fast R-CNN 是 R-CNN 的改进,其采用兴趣区域池化(Region of Inter...
2018-11-25 01:09:13
490
转载 Fast RCNN算法详解
本文转自:AI之路这篇博文来介绍Fast RCNN,是RCNN算法的升级版。RCNN系列算法看完后才写的这篇博客,相信初学者会比较容易这篇算法。解决的问题:之所以提出Fast R-CNN,主要是因为R-CNN存在以下几个问题:1、训练分多步。通过上一篇博文我们知道R-CNN的训练先要fine tuning一个预训练的网络,然后针对每个类别都训练一个SVM分类器,最后还要用regressors...
2018-11-19 23:36:37
4122
1
转载 R-CNN算法详解
转载于:AI之路这是一篇比较早的Object Detection算法,发表在2014年的CVPR,也是R-CNN系列算法的开山之作。论文:Rich feature hierarchies for accurate object detection and semantic segmentation一、解决的问题本文主要讲R-CNN(Regions with CNN features)这个算...
2018-11-17 21:00:15
1435
1
原创 残差结构详解
背景知识:为什么要构建深层网络?答:认为神经网络的每一层分别对应于提取不同层次的特征信息,有低层,中层和高层,而网络越深的时候,提取到的不同层次的信息会越多,而不同层次间的层次信息的组合也会越多。ResNets为什么能构建如此深的网络?答:深度学习对于网络深度遇到的主要问题是梯度消失和梯度爆炸,传统对应的解决方案则是数据的初始化(normlized initializatiton)和(b...
2018-11-11 23:40:21
56013
8
原创 决策树之ID3
在机器学习中经常使用决策树,决策树的一个重要任务时理解数据中所蕴含的知识信息,因此决策树可以使用不熟悉的数据集合,并从中提取出一系列的规则,这些机器根据数据集创建规则的过程,就是机器学习的过程。决策树的特点:优点:计算复杂度不高,输出结果易于理解,对中间值的缺失不敏感,可以处理不相关特征数据(有特征筛选功能)缺点:可能会产生过度匹配的问题。可以通过剪枝的方式解决这个问题。适用数据类型:数...
2018-11-02 17:19:31
308
转载 Quo Vadis, Action Recognition? A New Model and the Kinetics Dataset
本文是deepmind出品,目的,就一个,放出个关于视频方面的训练集kinetics,一个四百个类,每个类有至少四百个clips,每个clips十秒钟,属于从youtube上剪切的视频,然后对比了几种现在存在的用于行为识别的几种框架,具体如下图:其中,a,b,c,d是现有的做法,作者提出了e,唉,这种框架 ,感觉有点和前面没啥区别。然后,神奇的事情出现了:这个数据集上训练的模型,通过迁移学习到...
2018-11-01 13:58:21
514
转载 Hessian矩阵
转:黑塞矩阵(Hessian Matrix)黑塞矩阵(Hessian Matrix),是一个多元函数的二阶偏导数构成的方阵,描述了函数的局部曲率。黑塞矩阵常用于牛顿法解决优化问题,利用黑塞矩阵可判定多元函数的极值问题。在工程实际问题的优化设计中,所列的目标函数往往很复杂,为了使问题简化,常常将目标函数在某点邻域展开成泰勒多项式来逼近原函数,此时函数在某点泰勒展开式的矩阵形式中会涉及到黑塞矩阵。...
2018-10-31 19:20:26
78875
2
原创 神经网络的损失函数
1、L1loss这个就是我们常说的L1范数,简单说就是计算输出值与真实值之间误差的绝对值大小。loss=∣xi−yi∣loss=|x_{i}-y_{i}|loss=∣xi−yi∣由于L1 loss在零点不平滑,所以用的比较少。2、SmoothL1LossL1loss的平滑版。如果绝对元素误差低于1则使用平方项的标准,否则L1项。 它对异常值的敏感度低于MSELoss,并且在某些情况下可以...
2018-10-22 23:21:03
25369
原创 K-L散度(相对熵)的理解
信息量III消息中有意义的内容成为信息。信息量函数:I=−lnpiI=-lnp_iI=−lnpi其中,pip_ipi是事件xix_ixi的发生概率。信息熵HHH它是用来对信息度量,描述信息的多于少的问题。公式为H=−∑i=1Np(xi)⋅log p(xi)H=-\sum_{i=1}^{N}p(x_i)\cdot log\ p(x_i)H=−i=1∑Np(xi)⋅log&n...
2018-10-19 00:35:23
3921
原创 L1和L2正则化直观理解
正则化是用于解决模型过拟合的问题。它可以看做是损失函数的惩罚项,即是对模型的参数进行一定的限制。应用背景:当模型过于复杂,样本数不够多时,模型会对训练集造成过拟合,模型的泛化能力很差,在测试集上的精度远低于训练集。这时常用正则化来解决过拟合的问题,常用的正则化有L1正则化和L2正则化。L1正则化的直观理解L1正则化(数学符号表示为∣∣w∣∣1||w||_1∣∣w∣∣1)的公式:在原有的...
2018-10-17 12:22:25
1134
转载 二值网络
本文转载于二值神经网络(Binary Neural Network,BNN)BNN算法要想使整个神经网络二值化,那么最需要解决的问题就是反向传播时的求导。下面会通过一系列手段使的这个操作可行。二值化手段直觉上看,二值化的手段非常简单啊,整数是1,负数是-1就可以了。但实际上,这只是其中一种,即决定式的二值化。还有一种是随机式的二值化这个样的公式让我想起跟一个大神聊天时谈到的问题,...
2018-10-16 20:21:13
3205
原创 SVM的简单理解
1、基本知识决策边界,或称为决策面,其目的是将两种类别的进行分开。决策边界如何定义?训练集上的正负样本到决策边界的距离保持最大。支撑向量是什么?可以理解为当前样本下,支撑当前决策边界的样本,如何支撑向量不变,继续增加训练样本,决策边界不会发生变化。松弛因子ei,对约束进行放松,允许噪声点的存在,这个很重要,因为大部分情况下样本都是近似可分(即使在使用核函数的情况下),松弛因子的存在使寻找的...
2018-10-11 20:18:03
684
原创 机器学习泛化问题之偏差和方差
当一个模型确定时,我们需要对其进行诊断,判断这个模型是否存在过拟合或者欠拟合。通过偏差与方差我们可以很快捷的评价当前的模型。偏差与方差的直观理解偏差:就是偏离的意思,与“标准”之间的差距。方差:是离散程度,波动程度的意识。图1,2的偏差都比较小(都能在靶心的范围内),但是图1的方差更小(数据集中),而图2则方差更大(数据发散)。图3,4的偏差都比较大(已经脱离了靶心位置)从机器学...
2018-10-06 19:30:49
908
1
原创 im2col的理解
im2col是用来优化卷积运算的,它的核心是将卷积核感受野部分转化成一行(列)来存储,优化运算速度,减少内存访问时间。这其实主要取决于我们使用的框架访存的方式。计算机一次性读取相近的内存是最快的,尤其是当需要把数据送到GPU去计算的时候,这样可以节省访存的时间,以达到加速的目的。不同框架的访存机制不一样,所以会有行列相反这样的区别...
2018-10-06 01:47:57
5195
1
原创 最大似然估计
给定一个概率分布DDD,已知其概率密度函数(连续分布)或概率质量函数(离散分布)为fDf_DfD,以及一个分布参数θ\thetaθ,我们可以从这个分布中进行nnn次采样:P(x1,x2,⋅⋅⋅,xn)=fD(x1,⋅⋅⋅,xn∣θ)P(x_1,x_2,···,x_n)=f_D(x_1,···,x_n|\theta)P(x1,x2,⋅⋅⋅,xn)=fD(x1,⋅⋅⋅,xn∣θ)但是...
2018-09-29 01:18:05
263
原创 空洞卷积与反卷积
空洞卷积(dilated conv),也称扩张卷积。空洞卷积可以在kernel有效增大感受野的同时不增加模型参数或者计算量。在图像需要全局信息或者语音文本需要较长的sequence信息依赖的问题中,都能较好的应用空洞卷积。在图像分割,语音合成WaveNet,机器翻译ByteNet中都有空洞卷积的身影。一般情况下,图片输入到网络中,网络将会对图像做卷积再池化(pooling)的操作,pooling...
2018-09-23 12:09:09
8566
原创 似然函数
似然函数:似然函数是一种关于统计模型中的参数的函数,表示模型参数中的似然性。当给定输出x时,关于参数θ的似然函数L(θ|x)(在数值上)等于给定参数θ后变量X的概率:L(θ∣x)=P(X=x∣θ)L(\theta|x)=P(X=x|\theta)L(θ∣x)=P(X=x∣θ)在推断统计学中,“似然性”与“或然性”或“概率”意思相近,都是指某种事件发生的可能性,但是在统计学中,“似然性”和“或然性...
2018-09-18 22:04:59
3511
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人