- 博客(140)
- 问答 (1)
- 收藏
- 关注

原创 Windows下pytorch的安装与入门
上班前的最后一个寒假,接触了pytorch框架。由于家里只有windows笔记本,因此在windows环境下安装。安装方法见https://zhuanlan.zhihu.com/p/26871672。我安装后碰到了如下问题,记录下来以便查阅:conda install -c peterjc123 pytorch cuda80报错:UnsatisfiableError: The following ...
2018-03-05 21:08:44
8963
3

原创 基于FPGA的卷积网络加速设计
答辩完了,放上来毕设的最后一部分内容,CNN的硬件加速。大多数论文采用的FPGA加速大多基于HLS或是OpenCL,用高级语言编写的。我没有接触过,不知道转化为底层HDL效率如何。本科学了verilog,因此还是用的verilog HDL硬件语言设计的。 传送门如下:https://github.com/hunterlew/convolution_network_on_F...
2018-01-19 11:05:34
5901
4
原创 caffe在win10下的配置
由于某些原因,需要在windows下配置caffe,基本上是按照caffe的windows分支的readme上写的安装的。大致说一下流程:https://github.com/BVLC/caffe/tree/windows1、 安装准备VS2015,python3.5,matlab2017a,cuda8和cudnn。注意python版本不能是3.6,目前仅支持到3.5。我在安装的时候是
2017-11-09 08:36:48
3298
转载 CART之回归树构建
原文链接:https://cethik.vip/2016/09/21/machineCAST/一、概念CART全称叫Classification and Regression Tree。首先要强调的是CART假设决策树是二叉树,内部结点特征的取值只有“是”和“否”,左分支是取值为“是”的分支,有分支则相反。这样的决策树等价于递归地二分每个特征。
2017-08-19 21:39:23
3675
原创 Caffe SSD 配置与安装
为了跟进目标检测框架的最新进展,于是配置了SSD框架并成功运行demo,其中遇到不少坑记录下来。1、假设CUDA、CuDNN、OpenBLAS、OpenCV等都已经安装完毕。我的版本是Ubuntu16.04+CUDA8.0+CuDNN5.0+OpenCV3.0。之前已成功配置过caffe-master。2、下载caffe-ssdgit clone gitclonehttps
2017-06-23 14:18:06
10879
2
原创 caffe实战之classify.py解析
本文将对caffe/python下的classify.py代码以及相关的classifier.py和io.py进行解析。一、classify.py由最后的if __name__ == '__main__': main(sys.argv)代表该文件在命令行下运行,则运行main函数,参数存放在sys.argv中。在main函数定义中,分别判断并存入各类参数,分别如下:input_file
2017-05-31 11:12:32
6574
原创 caffe实战之训练并测试自己的数据
训练之前,确认caffe已经编译成功。本文以mstar数据库为例,介绍如何在caffe平台上训练卷及神经网络模型并进行测试。一、准备数据这个步骤是最繁琐,也最容易出错的一步,任何差池都会导致最终训练效果不如人意,建议多花时间检查这部分,确保数据集的质量。1、在data文件夹下新建文件夹mstar,并进入该目录,分别简历train和val文件夹。2、在train和val文件夹下分
2017-05-23 22:39:51
3505
原创 ubuntu+cuda8.0+opencv3 Caffe GPU环境配置
最近临近中期答辩,在总结一些以前碰到过的坑,以便后人乘凉。回顾了一下去年配置caffe的完整流程,去年双11买的神舟z7m电脑,性价比很高,显卡是GTX965m的,查了计算能力达5.2,刚买回来后就开始捣腾caffe环境下的配置。当时配置过程一波三折,主要卡在显卡驱动这一环节,因为Ubuntu对Nvidia显卡驱动的支持似乎不是很好。下面给出完整的配置流程。 一、 安装Ubuntu系统
2017-05-22 16:46:48
2781
1
原创 Faster-RCNN算法精读
读论文:《Faster R-CNN: Towards Real-Time ObjectDetection with Region Proposal Networks》摘要:算法主要解决两个问题:1、提出区域建议网络RPN,快速生成候选区域;2、通过交替训练,使RPN和Fast-RCNN网络共享参数。一、 RPN网络结构RPN网络的作用是输入一张图像,输出一批矩形候选区域
2017-05-01 22:39:52
119953
20
原创 C++ 输入方法
一、字符串输入:1、面向单词的输入:cin>>使用空白(空格、制表符和换行符)确定字符串的结束位置。如果一次输入两个单词,中间隔着空格,则只读取第一个单词,并自动在结尾处添加空字符。而另一个单词会留在缓冲中,有可能被后面的输入读到。2、面向行的输入:1)getline,通过回车键输入的换行符来确定结尾,然后丢弃换行符,并用空字符取代之。调用:cin.getline()。有两个参
2017-02-04 10:23:45
3010
原创 深度学习之路—写在开题前
明天即将研究生开题答辩,旁边机器还在跑着程序验证最新的网络结构,在笔记本上敲打心情日记。接到深度学习目标识别的题目真是阴差阳错,今年4月份alphago获胜的时候,王老师表示很关心这个方向,希望我们也做一个“狗”出来。我们都把它当玩笑了,事后,我尝试接触神经网络的知识,就想轻碰这个坑,拿它预测个波形就行了,也没想到日后会成为研究方向。 正直同学们都很关注机器学习,无意间女票跟我提了
2016-10-15 20:58:11
7311
1
转载 Batch Normalization 学习
原文地址:http://blog.youkuaiyun.com/hjimce/article/details/50866313作者:hjimce一、背景意义本篇博文主要讲解2015年深度学习领域,非常值得学习的一篇文献:《Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covar
2016-08-21 14:13:18
2775
原创 深度学习UFLDL教程翻译之自我学习
一、概述 假设我们有足够强大的学习算法,得到较好结果的其中一种最靠谱的方法是给算法提供更多的数据。这验证了在机器学习的那句格言:“有时候获胜的不是谁有最好的算法,而是谁有最多的数据。” 也许有人总能得到有标记的数据,但这么做成本很高。特别地,研究人员已经采用极致的工具例如AMT(亚马逊土耳其机器人)来得到大量训练集。尽管拥有大量的人们人工标记的数据相比拥有大量的研究
2016-08-18 22:31:17
3458
原创 深度学习UFLDL教程翻译之PCA白化
一、引入 主成分分析(PCA)是一种降维算法,能大大加速你的无监督特征学习算法。更重要的是,理解PCA能让我们后面实现白化,这是一个对所有算法适用的重要的预处理步骤。 假设你在图像上训练你的算法。不过输入稍微有点冗余,因为图像中相邻的像素值是高度相关的。具体来说,假设我们在16*16的灰度图像块上训练。那么x∈R256是256维的向量,一个特征xj对应着图像中每个像
2016-08-13 22:46:01
4479
原创 深度学习UFLDL教程翻译之自动编码器
一、自动编码器目前为止,我们介绍了神经网络在有标签的训练样本的有监督学习中的应用.现在假设我们只有一个未标记的训练集{x(1),x(2),x(3),…},其中x是n维的.自动编码器神经网络是一种采用反向传播的无监督学习算法,让目标值和输入相等,即让y(i)=x(i).这是一个自动编码器: 自动编码器试图学习函数hW,b(x)≈x.换句话说,它试图学习恒等函数的逼
2016-08-10 21:51:16
8252
原创 深度学习UFLDL教程翻译之卷积神经网络(二)
一、概述一个卷积神经网络(CNN)是由一个或多个卷积层(通常伴随着降采样一步)构成,并加上一个或多个和在标准的多层神经网络一样的全连接层。CNN的结构是设计用于利用输入图像的2D结构(或其他2D输入例如语音信号)。这是由局部连接、权值共享以及一些引起平移不变特征的池化操作来实现的。CNN的另一个优点在于它们更容易训练而且比拥有相同数目的隐藏单元的全连接网络而言,参数更少。在这篇文章中,我们会讨
2016-08-09 21:53:46
3764
原创 深度学习UFLDL教程翻译之卷积神经网络(一)
A、使用卷积进行特征提取一、概述在前面的练习中,你解决了像素相对较低的图像的相关问题,例如小的图片块和手写数字的小图像。在这个节,我们将研究能让我们将这些方法拓展到拥有较大图像的更加实际的数据集的方法。二、全连接网络 在稀疏自编码器中,我们所做的设计选择是将所有隐藏层单元与输入单元全部连接。在我们处理的相对小的图像中(例如在稀疏自编码器作业中的8×8小块,MNIST数据
2016-08-07 20:54:35
3662
1
原创 深度学习UFLDL教程翻译之优化:随机梯度下降
一、概述批量方法,例如有约束方法BFGS,它在每次迭代中使用全部训练集来计算参数的下一次更新,这类方法很好地收敛于局部最优解。它们在框架实现下(例如minFunc)也能直接得到好的结果,因为它们几乎不用调整多少超参数。然而,在全部训练集上计算代价和导数在实践中经常运行很慢,而且有时候数据集太大,内存不足变得很难处理。批量优化方法的另一个问题是它在“在线”模式下难以加入新的数据。随机梯度下降(S
2016-08-06 23:03:31
3067
原创 深度学习UFLDL教程翻译之BP算法
假设我们有一个固定由m个训练实例组成的训练集{(x(1),y(1)),…,(x(m),y(m))}.我们可以用批量梯度下降方法来训练我们的神经网络.细节上,对于一个训练实例(x,y),我们定义关于该实例的代价函数: 这是平方误差(的一半)代价函数。给定m个实例的训练集,我们定义全局代价函数: 第一项J(W,b)是平方误差和的平均项。第二项是正
2016-08-01 14:29:01
2005
原创 基于Ubuntu的无GPU的Caffe配置
假期较早回校,有点时间折腾搞一下caffe,据说是CNN应用一个很好的库。之前看过类似的配置教程,感觉特费劲。偶然,昨晚稍微维护了一下实验室服务器,顺便给自己腾了4核、8G内存的虚拟机玩玩,参考配置教程走了一遍,结果一天就搞定了,比我想象中快呀。下面就把我碰到的过程记录下来,有些错误可能没碰到。 由于大多数教程都是Ubuntu14.04的,我的虚拟机也安装了这个版本,可能碰到的问题
2016-07-29 22:27:43
2730
1
原创 深度学习UFLDL教程翻译之Softmax回归
Softmax 回归一、引入Softmax回归(或称为多项逻辑斯特回归)是逻辑斯特回归的推广,用于处理多类问题的时候。在逻辑斯特回归中我们假设标签是二元的,y(i)∈{0,1}。我们使用这样的分类器将两种手写数字区分。Softmax回归能让我们处理y(i)∈{1,…,K}的情况,K是类别数。回忆一下在逻辑斯特回归中,我们有m个标记的训练样本{(x(1),y(1)),…,(x(m),y(
2016-07-24 08:39:40
2226
1
原创 吴恩达机器学习笔记_第五周
神经网络——模型学习 Cost Function:从逻辑回归推广过来计算最小值,无论用什么方法,都需要计算代价和偏导。 网络结构的前向传播和可向量化的特点: BP算法: 总结:计算代价函数及偏导 进一步理解FPBP: 梯度检验:避免BP发生的小错误确保自己的确在计算代价函数的偏导数,对于向量形式,可以这么检验
2016-05-15 11:43:00
4977
原创 吴恩达机器学习笔记_第四周
神经网络——模型表示:为什么需要非线性分类器(非线性假设):维数大的时候(例如图片),特征元素个数将大的不能接受. 历史:80年代和90年代早期广泛应用,但90年代后期开始衰落.最近又东山再起,原因在于计算速度的加快使得可以完成大规模的神经网络计算. 单个神经元模型——类似逻辑回归模型,有个sigmoid函数(如果没有,那就只能是线性运算):网络模型:如果网络
2016-04-18 20:37:39
3515
原创 吴恩达机器学习笔记_第三周
Logistic Regression逻辑回归(分类):0:Negative Class1:Positive Class二元分类问题讲起,虽然有回归二字,其实为分类算法,处理离散y值。 输出以以条件概率表示,若P(y=1|x;theta)= 0.7,表示有70%的概率y=1.那么有30%的概率y=0 决策边界(DecisionBoundary):当z=0,即thet
2016-04-11 21:45:01
7480
原创 吴恩达机器学习笔记_第二周
多元线性回归的情况:符号表示方法,上标表示第几个样本,下标表示第几个特征。 多元线性回归的梯度下降:当代价函数有多个参数时(即多个特征时): 使用梯度下降实用技巧:FeatureScaling特征缩放Make sure features are on a similar scale收敛的快(代价函数图像很扁,收敛路径长)缩放到-1~1范围,x0为1,
2016-04-11 21:31:43
5443
1
原创 吴恩达机器学习笔记_第一周
毕业论文方向可能和神经网络挂钩,神经网络也是机器学习的一部分。从这周开始决定跟着Andrew Ng公开课系统地学习机器学习,4/4日开课,第一周为试听,今天先看了。以后每周更新一下。的确感觉讲的不错,形式平易近人。//分割线----------------------------------------------------------------------------------
2016-04-02 16:51:08
12247
1
原创 Java学习笔记之多线程
一、线程和进程的概念和区别当程序进入内存运行时,即变成一个进程,它是系统进行资源分配和调度的一个独立单位。大部分操作系统都支持多进程并发运行。实际上对一个CPU而言,某个时间点只能执行一个程序,由于轮转时间太快,用户感觉好像是同时进行。操作系统支持多进程并发,有共用式(主动放弃)和目前常见的抢占式(被动被剥夺)。抢占式即现行进程在运行过程中,如果有重要或紧迫的进程到达(其状态必须为就绪),
2016-03-27 10:25:57
616
原创 Java学习笔记之输入输出
java.io包下主要包括输入/输出两种IO流,每种输入/输出流又可分为字节流和字符流两大类。字节流以字节为单位处理,字符流以字符来处理。File类,操作文件和目录,能新建/删除/重命名等操作,但是不能访问文件内容本身。访问文件本身需要IO流。Java的输入流都以InputStream和Reader为基类,输出流主要由OutputStream和Writer为基类。他们都是抽象基类,无法直接
2016-03-26 01:58:26
547
原创 Java学习笔记之JDBC
JDBC的一般流程:1、加载数据库驱动类:Class.forName(driverclass),其中driverclass为驱动类,如"com.mysql.jdbc.Driver"。2、通过DriverManager获取数据库连接:Collection conn = DriverManager.getConnection(String url,String user,String pa
2016-03-23 23:14:42
527
原创 Java学习笔记之包装类
八个基本数据类型对应八种包装类:byte->Byteshort->Shortint->Integerlong->Longchar->Characterfloat->Floatdouble->Doubleboolean->BooleanJDK1.5后提供了自动装箱和自动拆箱。可以把一个基本类型直接赋给对应包装类变量,交自动装箱。反之成为自动拆箱。但要注意前提是类型
2016-03-22 00:20:45
480
原创 Java学习笔记之多态
Java使用引用变量才会有多态。引用变量有两种类型,一个是编译时类型,一个是运行时类型。编译时类型由声明决定(看左边),运行时类型由实际赋给变量的对象决定(看右边new)。当编译时类型和运行时类型不一致时,可能出现多态现象。第一种:子类赋给父类。这种情况无需任何类型转换,直接new并赋值,子类自动向上转型。此时要注意,在编译阶段,系统试图调用编译时类型所定义的变量和方法,因此假如父类不存在
2016-03-21 02:02:53
572
原创 Java学习笔记之引用类型
像数组、类都属于引用类型,其变量只是一个引用,变量和具体元素或成员在内存里是分开存放的。引用变量存放在栈内存中,而其元素或成员存放在堆内存。而引用变量却是范围堆内存数据的根本方式——引用(或者理解为地址指向)。其出发点是,对象的创建成本比较高,所以把数据放在堆内存中以便反复利用。堆内存中的数据不会随着方法的结束而销毁,还可能被其他一个引用变量引用。当且仅当一个对象没有任何引用变量引用它时,会被
2016-03-21 01:39:23
397
原创 Java学习笔记之垃圾回收机制
Java不需要程序员直接控制回收内存(不同于C和C++),其内存分配和回收都是由JRE在后台自动进行的。JRE提供一个后台线程进行检测和控制,一般在CPU空闲或内存不足时自动进行垃圾回收,自动释放不再被程序引用的对象,按照特定的垃圾回收算法。但程序员无法精确控制垃圾回收的时间和顺序等。优点:提高编程效率;保护程序完整性。缺点:开销影响性能。虚拟机必须跟踪程序中有用的对象,才能确定哪些是无用
2016-03-21 01:17:01
597
原创 实现Linux命令行上传和下载百度云盘
RT,需求是,经常需要拷贝东西或安装包到服务器,如果每次都跑到机房去,管理起来太费劲了,于是寻找能够支持linux命令行的云盘。恰巧找到了用python写的,能支持命令行访问百度云盘:git@github.com:hunterlew/bypy.git在linux下直接用git命令下下来,后面还涉及到python等安装,我参考了这个教程:https://blog.phpgao.com/b
2016-03-20 14:18:59
17886
原创 基于PHP框架的开源博客空间系统
在学习了PHP CI框架后,我动手搭了一个博客系统,算是练习吧,分享给大家,欢迎下载,提出修改意见:git@github.com:hunterlew/CI-OpenSpace.git
2016-03-19 13:14:21
889
原创 Chipscope使用简介
Chipscope初体验: 最近想把之前做的fir滤波器模块连上AD和DA,为了测试AD和DA可用,不需要以前的亮灯来测试了,直接用chipscope实时采集。工程检查完语法错误后,添加cdc文件,双击打开,一直next到ILA核配置界面:Trigger什么的都选1,接下来captureparameter:Data Same As Trigger勾取消。
2016-03-05 11:02:43
6021
原创 CodeIgnitier常用方法总结
入门了ci框架,阅读学院的网站可以大致明白其中结构,现记录。1、 首先根目录下就有htaccess文件,开启重定向,在url中可以去掉index.php。2、 MVC架构明确,定义了5~6个控制器,基本对应于网站的内容分类。3、 对应定义了模型,模型重点是news模型,毕竟网站以文章为重点,并以查询为主要内容,定义了一些方法,查询网站各类文章。这对于一个以文章为重点呈现的网站是正
2016-03-05 10:58:25
613
原创 CodeIgniter浓缩版笔记
1、 安装:提到application/config/config.php 文件设置你网站的根 URL;application/config/database.php 文件设置数据库参数。如果你想通过隐藏 CodeIgniter 的文件位置来增加安全性,你可以将 system 和 application 目录修改为其他的名字,然后打开主目录下的 index.php 文件将 $syste
2016-03-05 10:56:38
604
原创 如何设置端口对外网开放
部署完网站之后,发现只能在localhost访问而外网访问不了,说明服务器端口没有对外开放,防火墙的原因。当然如果是80端口,他是默认开放的所以无需设置。如果是另外的比如8080端口,就必须进行防火墙设置。windows下只需要在防火墙那添加入站规则,指明端口和说明就行。如果在linux下,需要修改配置文件:vi etc/sysconfig/iptables,在适当的地方添加:-A R
2016-03-03 10:12:07
10663
空空如也
怎么检测到客户端关闭浏览器页面并销毁session?
2016-03-11
TA创建的收藏夹 TA关注的收藏夹
TA关注的人