
FPGA实现深度学习系列
文章平均质量分 61
my_share
之前一直都是FPGA工程师,深度学习也还不错。目前在深圳,如果有兴趣认识我的朋友可以联系我,一起学习一起进步,微信:15889765314
展开
-
mindspore ubuntu18.04详细安装教程,从头开始配置4(成功)
实在对不起,又要从头开始。这一次,我先安装的nvidia驱动。sudo apt-get install ubuntu-drivers-commonubuntu-drivers devicessudo apt-get install -y nvidia-driver-450安装后,需要设置密码。然后就设置了一下。xxxxxxx。重新启动后,会出现。 perform mok management然后 打开终端。lsmod | grep nouv...原创 2021-10-29 23:02:53 · 698 阅读 · 0 评论 -
FPGA实现深度学习系列之软件细节篇程序
前言: 前篇涉及到软件程序需要的内容大致说了一遍。这里把主要的程序贴出来。这里只涉及主干程序。细节部分,根据调试过程在进行在做修改。程序:# coding: utf-8import tensorflow as tfimport input_dataimport oslogs_train_dir = 'E:/python_program_ing/python_mnist/log' # 记录训练过程与保存模型def weight_variable(shape): ...原创 2021-05-09 19:57:34 · 711 阅读 · 0 评论 -
FPGA实现深度学习系列之软件细节篇理论
前言:训练程序。只是负责验证只有3层的情况下卷积神经网络算法效果如何。想要了解计算过程的细节,还需要增加很多的程序进行调试和分析。权重参数处理:1,模型的参数需要保存下来。添加save。2,需要把参数打印并保存下来。方便串口发送。3,软件对参数的处理。置换和量化。调试添加:1,控制输入图片。2,显示计算过程和过程中的结果。备注:调试过程是帮助了解卷积,全连接等每个层的计算过程。可能有必要的话,还需要对conv2d等函数进行细节...原创 2021-04-29 23:37:24 · 456 阅读 · 0 评论 -
FPGA实现深度学习系列之FPGA程序计算单元细节规划
前言:FPGA最核心的部分就是计算单元,卷积神经网络算法就是在这个模块里面完成的。其他模块无难度。虽然说是测试卷积神经网络算法的可行性和量化后的精度2大内容。但是结构上还是要有通用性和可移植性。重点:FPGA程序上优化算法结构,提高FPGA计算效率,这里不考虑。为了提高效率,数据调度难度会非常大,所以,测试的话这一块先放一下。算法分析:1,卷积神经网络分了3层。 卷积层+卷积层+全连接层。那么整个流程可以分为3个大流程。2,卷积层里面分为卷积,系数。激活函数,最大池化。又分4个流程。原创 2021-04-21 00:09:57 · 1028 阅读 · 0 评论 -
FPGA实现深度学习系列之FPGA程序整体规划
前言:按照常规系统来说: 首先是摄像头输入处理,存储到ddr, 在由算法模块计算结果,输出给IO。 flash里面存放程序和权重文件。整个完整的系统是这样的。目前只是验证算法的执行情况。所以,整个系统进行了删减。但是算法要按照标准来完成。目前考虑临时搭建测试系统。结构图:系统模块原理图:系统流程图备注:整体流程大概就是这样安排的。如果为了方便或者行不同的地方修改,也不另行更改。应该是没有的。有兴趣相关技术的人可以看个人介绍和我毛华望联系。...原创 2021-04-15 07:15:56 · 689 阅读 · 0 评论 -
FPGA实现深度学习系列之mnist手写数字训练程序
程序采用的是《21个项目玩转深度学习》 网址:https://github.com/ewenwan/deep-learning-21-examples第一章就是我们需要的mnist 机器学习入门。# coding: utf-8import tensorflow as tfimport input_datadef weight_variable(shape): initial = tf.truncated_normal(shape, stddev=0.1) return t原创 2021-04-07 20:16:14 · 1910 阅读 · 1 评论 -
FPGA实现深度学习系列之整体情况考虑
前言:熟悉了深度学习卷积神经网络后,发现FPGA完成卷积神经网络是有可能的。现在我们就要整体开始设计如何一步一步实现卷积神经网络。并且方便做到通用性,也要控制成本。不能为了实现卷积神经网络而实现。要贴近我们降低成本和提高算力的目的。考虑:1,图像来源和权重参数的来源。实际使用中,输入图像可能有2种,1,摄像头的图像直接输入 也就是HDMI等。 2,USB, 网口等视频流接口。 权重参数的发送也可能是2种。1,用通用接口,比如说:串口,网口。 2,如果参数由ARM发出,可能是自定义接口。为原创 2021-04-06 08:06:05 · 1874 阅读 · 0 评论 -
FPGA实现深度学习系列之卷积神经网络算法描述
这里全部内容都是由这个网址转载过来的。https://tech.youmi.net/2016/07/163347168.html解说:关于算法的完成。需要看很多的文章和视频才能有更好的理解和领悟。这里就随便点一下。1,FPGA作为部署终端,只执行前向传导任务。并不执行反向传导。2,前向传导,只有乘法和加法。z(2)=w(2)a(1)+b(2)z(2)=w(2)a(1)+b(2) 。3,最常用的层有卷积层,全连接层,激活函数,正则化等。 目前来说卷积层和全连接层问题不大。主要是激活函数原创 2021-04-01 07:01:21 · 2715 阅读 · 0 评论 -
FPGA实现深度学习系列之FPGA的优势和劣势
网络上已经有很多的文章来描述,FPGA在实现深度学习的优势和劣势。当然描述有对有错。如果你说是完全的劣势。那么旷视,商汤等公司还在使用FPGA完成深度学习,而没有转向GPU呢?我在这里就简明扼要的去描述FPGA在深度学习上的优势和劣势。优势:(终端部署)1,FPGA和CPU没有啥好比较的,在深度学习终端部署,CPU完全不能考虑,tensorflow lite 虽然能压缩模型到一个很小的范围。但是依旧是实时性不够好。FPGA相对于GPU来说,相同算力情况下,有成本优势。在很多的网络上标示FPGA的原创 2021-03-31 19:53:07 · 8159 阅读 · 1 评论