自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

卜居

卜知未来,居安思危

  • 博客(77)
  • 资源 (25)
  • 收藏
  • 关注

原创 【经典回顾】Nvidia GPU 上的 CNN 计算速度变迁

笔者从 2012 年初开始接触 GPU 编程,2014 年上半年开始接触 Caffe,可以毫不谦虚地说是“一天天看着 Nvidia GPU 和 Caffe 长大的”。Nvidia GPU 架构经历了 Fermi、Kepler、Maxwell、Pascal(都是著名物理学家:特斯拉、费米、开普勒、麦克斯韦、帕斯卡、还未发布的 Volta 伏打……),硬件版本号从 1.x 到现在的 6.x,CUDA ...

2017-03-11 23:16:17 10338 3

原创 Nvidia Pascal GPU 架构详解

本文作于 2016/12/25,作者卜居。写在前面:本文假定读者有一定 CUDA 基础。如果你对 GPU, sm_60/sm_61,CUDA 这些名词感到陌生,可以看我之前写的博客《CUDA 从入门到精通》。 1. 前言Nvidia 在今年的 GTC( GPU Technology Conference ) 上高调宣布了 Pascal 架构——专门针对每瓦性能优化的新架构,采用 16n...

2016-12-25 17:44:49 40593 7

原创 《深度学习:21 天实战 Caffe》资源已上传至码云、github

百度网盘已弃用。随书资源已经放在码云和 github,方便国内外朋友下载。码云:https://gitee.com/yongkezhao/PracticeCaffeIn21Daysgithub:https://github.com/zhaoyongke/Caffe21Days...

2018-04-19 06:58:05 5983 16

原创 用 Keynote 绘制 CNN 模型示意图

在论文中经常看到一些 CNN 模型示意图,例如下面这个经典的 LeNet-5 :很多写论文的同学会问,该怎么画这些图?常用的绘图工具例如 Visio 肯定是可以的,用熟了几乎可以绘制任何需要的图。可惜我用的 Mac,自带的 Office 巨难用而且充满 bug,常常莫名其妙地关闭导致一些工作前功尽弃。还好发现了 Keynote ,除了做 PPT 之外发现绘图也是相当炫酷。以上面的图为例,徒手画了几

2016-12-22 10:39:44 11212 2

原创 【深度学习:21 天实战 Caffe】Docker 镜像更新

百度网盘已弃用。随书资源已经放在码云和 github,方便国内外朋友下载。码云:https://gitee.com/yongkezhao/PracticeCaffeIn21Daysgithub:https://github.com/zhaoyongke/Caffe21Days----------------------------------------------------------不少读者...

2016-11-15 20:30:17 8132 12

原创 【深度学习:21 天实战 Caffe】课后习题参考答案

百度网盘已弃用。随书资源已经放在码云和 github,方便国内外朋友下载。码云:https://gitee.com/yongkezhao/PracticeCaffeIn21Daysgithub:https://github.com/zhaoyongke/Caffe21Days-------------------------------------------------------自出版以来收到...

2016-10-16 21:31:27 11758 13

原创 【深夜福利】Caffe 增加自定义 Layer 及其 ProtoBuffer 参数

在飞驰的列车上,无法入眠。外面阴雨绵绵,思绪被拉扯到天边。翻看之前聊天,想起还欠一个读者一篇博客。于是花了点时间整理一下之前学习 Caffe 时增加自定义 Layer 及自定义 ProtoBuffer 参数的简单例程,希望对初学者有借鉴意义。博客内容基于新书《深度学习:21 天实战 Caffe》,书中课后习题答案欢迎读者留言讨论。以下进入正文。在使用 Caffe 过程中经常会有这样的需求:已有 L

2016-10-02 03:17:06 18488 34

原创 我的 UNIX/Linux 学习笔记

收拾屋子时翻到一个皱皱的笔记本,封面是这样的:嗯,高数,是大一时的笔记本。咦,操作系统,难道?翻开,从前向后看,稚气未脱的笔迹映入眼帘。居然是2008年的笔记。隐约记得那个火热的夏天,我在自习室复习高数备考,楼道里传来一声吼:放假啦~高数不考啦~ 跟导员沟通后了解是奥运会的缘故,学校提前放假,所有考试延期到开学后。如果这篇博客只是让大家回顾下高数,那估计很多朋友立刻失去兴趣了。其实不然,那个假期,...

2016-09-13 16:37:04 4621 3

原创 【深度学习:21天实战 Caffe】云盘资源更新

百度网盘已弃用。随书资源已经放在码云和 github,方便国内外朋友下载。

2016-08-14 16:09:41 45690 76

原创 2016,感动,前行

【关于 2016】不论是否愿意接受,2016 已经过去一半。对我而言,2016 上半年,改变了很多习惯,收获了很多感动。感谢读者的支持,感谢朋友的帮助和理解,感谢昨天努力的自己。前行的道路一定会更加坎坷。心怀感动,无惧艰辛。【关于新书】以目前已经大量用于线上系统的深度学习框架Caffe为例,由浅入深,从 Caffe 的配置、部署、使用开始学习,通过阅读 Caffe 源码理解其精髓,加强对深度学习理...

2016-07-12 13:35:36 8215 37

原创 TensorFlow 从入门到精通(八):TensorFlow tf.nn.conv2d 一路追查

读者可能还记得本系列博客(二)和(六)中 tf.nn 模块,其中最关心的是 conv2d 这个函数。首先将博客(二) MNIST 例程中 convolutional.py 关键源码列出: def model(data, train=False): """The Model definition.""" # 2D convolution, with 'SAME' p

2016-06-08 13:13:55 37360 14

原创 TensorFlow 从入门到精通(七):TensorFlow 运行原理

通过几个例程,我们逐渐对 TensorFlow 建立了感性认识。本文将进一步从内在原理进行深入理解,进而为阅读源码打好基础。1. 编程模型TensorFlow 计算被抽象为包括若干节点的有向图。如下图所示例子:对应的 TensorFlow Python 代码如下:import tensorflow as tfb = tf.Variable(tf.zeros([100]

2016-06-08 12:47:39 23338 2

原创 TensorFlow 从入门到精通(六):tensorflow.nn 详解

看过前面的例子,会发现实现深度神经网络需要使用 tensorflow.nn 这个核心模块。我们通过源码来一探究竟。# Copyright 2015 Google Inc. All Rights Reserved.## Licensed under the Apache License, Version 2.0 (the "License");# you may not use this fil

2016-05-23 14:30:06 71948 12

原创 TensorFlow 从入门到精通(五):使用 TensorFlow 实现 RNN

# Copyright 2015 Google Inc. All Rights Reserved.## Licensed under the Apache License, Version 2.0 (the "License");# you may not use this file except in compliance with the License.# You may obtai

2016-05-22 23:24:43 34870 6

原创 TensorFlow 从入门到精通(四):CIFAR10 多 GPU 版本例程源码分析

# Copyright 2015 Google Inc. All Rights Reserved.## Licensed under the Apache License, Version 2.0 (the "License");# you may not use this file except in compliance with the License.# You may obtai

2016-05-22 23:18:13 17236

原创 TensorFlow 从入门到精通(三):ImageNet 例程源码分析

# Copyright 2015 Google Inc. All Rights Reserved.## Licensed under the Apache License, Version 2.0 (the "License");# you may not use this file except in compliance with the License.# You may obtai

2016-05-22 23:17:04 23510 3

原创 TensorFlow 从入门到精通(二):MNIST 例程源码分析

MNIST 例程源码分析

2016-05-22 22:32:48 39044 12

原创 TensorFlow 从入门到精通(一):安装和使用

安装过程PIP 安装安装 PIP安装 TensorFlowPIP 安装的优缺点源码编译安装下载源码安装 Bazel配置编译源码安装的优缺点Docker 镜像安装官方镜像创建 Docker 用户组启动 Docker 容器Docker 镜像安装的优缺点使用过程K40 上运行输出M40 上运行输出GTX1080 上运行输出P40 上输出注意事项安装过程目前较为稳定

2016-05-22 22:18:44 91877 11

原创 Caffe + CUDNN V5

在今年 GTC 上,NVIDIA 推出的 NVIDIA Deep Learning SDK 中,cuDNN 赫然在列。与之比肩的还有 DIGITS, cuBLAS, cuSPARSE, NCCL 等。从 2014 年推出 第一个版本,到如今 cuDNN 已经连续发布 5 个版本。目前 cuDNN v5 的最新特性有:(1) 支持递归神经网络( LSTM / GRU / RNN );(2) cudn...

2016-04-15 18:05:57 17576 14

原创 【方法论】从入门到精通是怎样一种体验

伟大的教育家孔子先生说过,学习是件快乐的事情。怹(tan1)老人家把学习分成了两个过程“学”和“习”,先学后习。笔者不才,从入门到精通这个词怕也是被玩坏了,忝列其中的有两三个系列文章。其实写了的内容不一定真的精通,精通的地方不一定写得出来。宗旨是把门外的围观群众带进坑。收。我们知道,现实世界的知识点是分型网状结构。一个细分领域内部知识点呈网状向外展开,与其他

2016-04-12 20:20:45 4676 4

原创 Mac下安装Caffe

2016-11-14 更新:一些读者反映了新版 Caffe 在 Mac 下编译时找不到 cblas.h 这个问题,始吾弗信,今亲测也发现了这个问题,特别记录下解决方法。罪魁祸首就是 Makefile Line 361~399:# BLAS configuration (default = ATLAS)BLAS ?= atlasifeq ($(BLAS), mkl) # MKL LIBRAR...

2015-11-26 13:49:31 3941 5

原创 在MATLAB下调试Caffe

Caffe本身是C++、CUDA语言编写的。在调试模型、参数时,根据运行log、snapshot很难实时反馈当前训练的权值情况,也难以捕捉算法存在的bug。MATLAB则是非常适合算法设计、快速迭代的利器,只需要做少量工作就能编写出复杂的算法,调试非常方便,位于workspace中的变量随时都能打印,无论是一维、二维还是三维数据,都能直观显示,从而有利于定位算法设计问题,减少调试时间。Caffe中...

2015-10-28 22:32:18 12754 15

翻译 优化基于FPGA的深度卷积神经网络的加速器设计

英文论文链接:http://cadlab.cs.ucla.edu/~cong/slides/fpga2015_chen.pdf翻译:卜居转载请注明出处:http://blog.csdn.net/kkk584520/article/details/47450159【0. 摘要】CNN已经广泛用于图像识别,因为它能模仿生物视觉神经的行为获得很高识别准确率。最近,基于深度学习算法的现代应用高速增长进一步...

2015-08-27 08:16:24 33693 23

翻译 使用专用硬件加速深度卷积神经网络

英文论文链接:http://research.microsoft.com/apps/pubs/default.aspx?id=240715翻译:卜居转载请注明出处:http://blog.csdn.net/kkk584520/article/details/47711755【摘要】最近在多层卷积神经网络的突破导致了识别任务(如大量图片分类和自动语音识别)准确率的大幅提升【1】。这些多层神经网络很大...

2015-08-26 07:11:30 11357 3

翻译 加速器一致性接口

Zynq PS上的加速器一致性接口(Accelerator Coherency Port, ACP)是一个兼容AXI3的64位从机接口,连接到SCU(Snoop Control Unit),为PL提供异步缓存一致性直接访问PS的入口。处理器可以标记ACP上的传输为一致性或非一致性。PL端的AXI主机通过ARUSERS[1:0]指示是否为一致性读传输,通过AWUSERS[1:0]指示写传

2015-08-08 16:37:54 9905 1

原创 SDSoC使用体验

Xilinx 7月20号发布了SDSoC 2015.2软件,这是具有里程碑意义的FPGA(或者更准确说是ARM + FPGA SoC系统)集成开发工具,加快了应用发布的速度。直接通过网页从官网下载速度超慢而且容易中断,尝试了几次不成功,于是改用阿里云主机下载,这个速度超快(有时能达到1MB/s),然后从云主机通过OSS方式下载到本地,解压安装(系统为Windows8 64bit),安装

2015-08-03 01:12:54 20377 11

原创 Altera OpenCL SDK与Xilinx SDAccel的使用对比

出于工作需求,申请了这两家的高级语言综合工具,对典型算法进行了实现和评估。简要谈谈使用体验。1. Altera OpenCL SDK首先需要安装Quartus(13.1版本以上)和配套的SoC EDS,分别申请两个license,一个用于OpenCL SDK,一个用于SoCEDS,缺一不可。然后需要有实现平台,我用的是DE1-SoC开发板。该平台提供了Ope

2015-04-16 15:35:05 12324 26

原创 cuda-convnet2与caffe对比

出于对性能和多GPU训练CNN的考虑,这段时间一直在研究cuda-convnet2。搜了下,网上居然一篇像样的研究cuda-convnet2 代码的文章都找不到,看来假期有的忙了。Caffe作者贾扬清也在一些场合表达了对Convnet2作者Alex的仰慕之情,可见两个CNN实现的差距。Caffe比较符合大众的口味,而convnet2符合GPU发烧友的追求。convnet2代码风格不如Caffe那样...

2015-02-11 11:50:31 7346 8

原创 Caffe源码导读(7):LRN层的实现

LRN全称为Local Response Normalization,即局部响应归一化层,具体实现在CAFFE_ROOT/src/caffe/layers/lrn_layer.cpp和同一目录下lrn_layer.cu中。该层需要参数有:norm_region: 选择对相邻通道间归一化还是通道内空间区域归一化,默认为ACROSS_CHANNELS,即通道间归一化;local_size:两种表示(1...

2014-12-19 22:47:06 26986 14

翻译 NESASM教程——第十三天——背景

【简介】你应该知道什么是背景,它就是静态图片,主角在其间穿梭。背景不难做,但缺少用于NES的背景制作工具确实是个头疼的问题。【制作背景】在Tile Layer Pro中打开你的"our.bkg",绘制一些瓷砖,然后在纸上绘制一个用瓷砖编号排列的地图。注意瓷砖编号从0开始。假设你的Tile Layer Pro每行有16个瓷砖,那么它们的编号排列如下: $0 $1 $2 $3

2014-12-06 15:27:21 1961 6

翻译 NESASM教程——第十二天——VBlank和中断

【VBlank?】如果你不知道什么是VBlank, 那么假装我给了你一条鳟鱼;如果你知道什么是VBlank,那么假装我给了你一条鳟鱼;如果你不确定一条鳟鱼和NES有什么关系,那么假装我给了你一条鳟鱼;既然我们房间里有一股想象中的鱼臭味,那么让我们学习更好的方式来与VBlank同步。【我们怎么用它?】首先我们有个标签,比如VBlank_Routine,无哦一我们把它放在段1的

2014-12-06 14:51:15 2385 1

翻译 NESASM教程——第十一天——JSR指令

【JSR?】JSR代表Jump to SubRoutine,跳转到子程序,作用就是,嗯,跳转到子程序。JSR代表Jump to SubRoutine,跳转到子程序,作用就是,嗯,跳转到子程序。【我们怎么用它?】我们用它时只需要给出我们想跳转到的标签即可。例如:我们用它时只需要给出我们想跳转到的标签即可。例如: jsr OurSub ; 主程序OurSub: ; 子程序 ;

2014-12-06 14:35:25 5114

翻译 NESASM教程——第十天——主角DMA

这是整个系列的第十篇,用非常简洁的语言描述了怎样实现DMA传输,释放CPU的指令时间来做更多的事情。程序优化是每个程序猿都应具备的素质。

2014-12-06 14:15:14 2012

原创 Caffe代码导读(5):对数据集进行Testing

上一篇介绍了如何准备数据集,做好准备之后我们先看怎样对训练好的模型进行Testing。先用手写体识别例子,MNIST是数据集(包括训练数据和测试数据),深度学习模型采用LeNet(具体介绍见http://yann.lecun.com/exdb/lenet/),由Yann LeCun教授提出。如果你编译好了Caffe,那么在CAFFE_ROOT下运行如下命令:$ ./build/tools/caff...

2014-12-03 12:21:58 20698 23

原创 Caffe代码导读(0):路线图

【Caffe是什么?】Caffe是一个深度学习框架,以代码整洁、可读性强、运行速度快著称。代码地址为:https://github.com/BVLC/caffe【博客目的】从接触Caffe、编译运行、阅读代码、修改代码一路走来,学习到不少内容,包括深度学习理论,卷积神经网络算法实现,数学库MKL,计算机视觉库OpenCV,C++模板类使用,CUDA程序编写……本博客目的是为初学者清除代码阅读中的障...

2014-12-02 17:38:07 16845 13

原创 Caffe代码导读(4):数据集准备

Caffe上面有两个比较简单的例子:MNIST和CIFAR-10,前者是用于手写数字识别的,后者用于小图片分类。这两个数据集可以在Caffe源码框架中用脚本(CAFFE_ROOT/data/mnist/get_mnist.sh和CAFFE_ROOT/data/cifar10/get_cifar10.sh)下载,如下图所示:$ ./get_cifar10.shDownloading...--20...

2014-12-01 17:57:17 7799

翻译 NESASM教程——第九天——运动的主角

【啥?】今天不是教程。

2014-11-16 23:04:59 1836

翻译 NESASM教程——第八天——比较

【什么意思?】实话实说,我忘了在第6天包含比较指令

2014-11-16 22:48:23 1483

翻译 NESASM教程——第七天——使用内存

【哪里?】我们做任何其他事情

2014-11-16 22:40:46 1673 1

翻译 NESASM教程——第五天——主角出场

【主角】主角和配角,你肯定觉得

2014-11-16 22:19:15 2317 2

caffe源码(2015年8月15日)

git clone https://github.com/bvlc/caffe.git 如果无法访问github,可以从这里下载。

2015-08-22

SDSoC第一个工程

利用Xilinx SDSoC创建的第一个测试工程,在ZED Board上运行矩阵乘法。编译后会生成SD卡镜像,直接拷贝到SD卡,插入ZED Board,上电,经过boot可以启动Linux。详见我的博客(http://blog.csdn.net/kkk584520/article/details/47220575)

2015-08-08

ZED Board实现AXI-ACP通信例子

用Vivado IPI搭建的Zynq-7000 PS到PL通信过程,使用了AXI-ACP接口,利用AXI-DMA IP实现直接读写DDR的过程,软件可以配置传输尺寸,与AXI-HP不同的是,这个工程由硬件(PS的SCU单元)实现Cache一致性协议,因此软件方面得以简化。

2015-08-08

ZED Board AXI-HP通信例子

用Vivado IPI搭建的Zynq-7000 PS到PL通信过程,使用了AXI-HP接口,利用AXI-DMA IP实现直接读写DDR的过程,软件可以配置传输尺寸,并实现Cache一致性协议。

2015-08-08

cuda-convnet2源码(截止2015-2-12)

https://code.google.com/p/cuda-convnet2/source/checkout

2015-02-12

Eclipse CUDA样例工程

在Fedora系统中运行CUDA样例可以采用命令行方式,但Eclipse提供了更人性化的操作界面,从而不需要记忆大量编译指令

2014-12-30

ZED Board上编译好的OpenCV依赖库

ZedBoard 上运行OpenCV可以实现图像、视频处理。交叉编译时可能会遇到各种问题,这时不妨先用已经编译好的版本进行试验,熟悉了以后可以自己编译。具体使用方法见博客。

2014-12-04

Caffe MNIST训练好的lenet模型

Caffe MNIST例子中训练好的LeNet模型,手写体数字识别准确率99%。

2014-12-03

Caffe数据集:MNIST

Caffe运行手写体数字识别例程前需要下载的数据集,共4个文件。

2014-12-01

Caffe数据集:CIFAR10之三

Caffe运行例程前需要下载的数据集,共6个文件,总大小180MB,分三次上传,这是第2个。

2014-12-01

Caffe数据集:CIFAR10之二

Caffe运行例程前需要下载的数据集,共6个文件,总大小180MB,分三次上传,这是第2个。

2014-12-01

Caffe数据集:CIFAR10之一

Caffe运行例程前需要下载的数据集,共6个文件,总大小180MB,分三次上传,这是第一个。

2014-12-01

ZED Board从入门到精通系列(八) Vivado HLS实现矩阵相乘工程文件

ZED Board从入门到精通系列(八) Vivado HLS实现矩阵相乘的工程代码

2014-01-29

ZED-Board从入门到精通系列(六)——Vivado+OpenRISC建立工程时修改过的源码

ZED-Board从入门到精通系列(六)——Vivado+OpenRISC建立工程时修改过的源码

2014-01-26

ZED-Board从入门到精通系列(六)——Vivado+OpenRISC工程源码

Zynq从入门到精通系列教程所需工程文件,可以作为模板进行二次开发

2014-01-26

OpenRISC源码

未做修改的OpenRISC源码,可以用于学习CPU架构和指令集系统

2014-01-26

实验例程:ZED-Board从入门到精通(三):从传统ARM开发到PS开发的转变

PS利用EMIO控制板上LD0~LD7实现流水灯,具体实验步骤请看http://blog.csdn.net/kkk584520/article/details/9993281

2013-08-16

资源:ZED-Board从入门到精通(一):ZYNQ结构简介

博客文章http://blog.csdn.net/kkk584520/article/details/9870681 相应参考资料,包括ZYNQ-7000 Overview,ZYNQ PCB设计指南,ZED-Board使用说明、原理图、PCB

2013-08-10

毕业设计:代码

这个是历经2个月,两次大规模改动,数十次小规模升级,最终成功运行的程序。 硬件平台就是TMS320VC5509 没有操作系统 除SD卡部分调用TI的CSL,所有代码均为独立开发 如果用于商业用途,请与作者联系,否则造成一切事故概不负责

2011-10-13

毕业设计TMS320VC5509板子原理图

搞硬件的,都应该知道Altium Designer 这个是AD9生成的pdf 你懂得 有了这个才能看代码 代码请另外下载 绝对超值 谢谢合作

2011-10-13

正式发布:TMS320VC5509A上的无需CSL库的USB底层程序!

先声明:本底层程序为原创,谢绝转载!如需使用请与作者说明!翻版必究! 其次说一声,咱学DSP要发扬艰苦奋斗精神,要自己试着从头开始。不要仅仅停留在使用官方的库,而要深挖下去,挖到水为止。 再次说明:经过对比,使用官方库编译完后代码利用率很低,占用空间极大!我的一个小小系统编译完占32KB!!!!无法忍受,于是脱离CSL芯片支持库,坚持自己手动配置register,编译完后,代码缩减近一半,仅占16K多。 作者:kkk 日期:2011-5-12 欢迎访问我发的首帖http://bbs.dspoz.com/viewthread.php?tid=1326

2011-05-13

数字通信原理仿真——2PSK调制仿真

本人电子信息工程专业,课程设计为数字通信原理仿真,用MFC实现2PSK调制。图片可以见我的博客http://hi.csdn.net/space-154399-do-album-id-50238.html

2010-07-16

PCB设计终极目标---封装,布局,走线,覆铜

正确设计PCB是硬件设计的基础,如何完成PCB设计,其终极目标是什么,将在这里得以解释。 在此展示一个PCB的最终产品的光绘图,相信电子工程师都会从中得到启示。

2010-05-19

ARM内核介绍(强烈推荐!!!!!!!)

详细讲述了ARM内核,从ARM7到ARM11都有

2010-03-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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