
深度学习
文章平均质量分 64
hlld26
一个深度学习与嵌入式爱好者。
展开
-
PyTorch训练模型添加L1/L2正则化的两种实现方式
L1/L2正则化的作用L1正则化作用到参数会产生更稀疏的解,既能使参数在训练过程中尽量靠近最优解的同时,一些参数为0。L1正则化的稀疏性质被广泛应用于特征选择,可从特征集合中选出具有代表的特征子集,以此简化机器学习问题。L1正则化的表达式如下:f(θ)=∣∣θ∣∣1=∑i∣θi∣f(\theta) = || \theta ||_{1} = \sum_{i} | \theta_{i} |f(θ)=∣∣θ∣∣1=i∑∣θi∣由于上述表达式存在绝对值形式,不能直接求导,但可以使用次梯度表示。L1正原创 2021-03-02 11:24:02 · 24975 阅读 · 11 评论 -
简单易懂的PyTorch版VGG19复现代码
VGG19网络结构VGG的创新点包括使用3x3小核替换传统的5x5或7x7大核卷积,其整个网络除全连接层外,均采用步长为 1 填充为 1 的 3x3 卷积 + ReLU 和步长为 2 填充为 0 的 2x2 最大池化,网络结构非常简洁。VGG网络的输入维度为 3x224x224,在全连接层之前没有使用全局平均值池化压缩特征图的空间维度,而是直接将特征图的后 3 维 Flatten 后输入到全连接层中,这样导致第一个全连接层有较多的参数,且VGG包括 3 个全连接层,在训练时需要使用Dropout等正则化方原创 2021-02-10 15:43:29 · 8055 阅读 · 2 评论 -
简单易懂的PyTorch版ResNet50复现代码
ResNet50网络架构ResNet50是卷积神经网络的代表之一,其广泛使用在包括分类、检测、分割等任务中,可以说是最为著名的深度神经网络之一。PyTorch复现代码# ResNet50.pyimport torchimport torch.nn as nnimport torch.nn.functional as Fclass Conv(nn.Module): def __init__(self, in_channels, out_channels, kernel_size=1,原创 2021-02-09 14:46:04 · 8765 阅读 · 2 评论 -
Windows环境下编译TensorFlow 2.4源码记录
目录前言安装环境依赖安装过程提示编译源码结语前言最近两天重装了PC系统,时间也比较多,正好试试在Windows系统上编译TensorFlow源码。我想尝试编译最新的TensorFlow 2.4.1,搭配CUDA 11.2和cuDNN 8.1,看看在最新的版本下编译会不会出现问题。安照官方的教程走一遍后,编译过程还是比较顺利,没有遇到什么麻烦的问题,可以说不管是在Linux还是Windows下,使用最新版本的TensorFlow、CUDA和cuDNN都能顺利通过编译。下面就简单记录下编译的过程,免得以后重原创 2021-02-05 17:40:27 · 1259 阅读 · 3 评论 -
解决TensorRT does not natively support INT64的问题记录
问题描述在对使用PyTorch导出的onnx模型进行TensorRT解析时出现:Your ONNX model has been generated with INT64 weights, while TensorRT does not natively support INT64. Attempting to cast down to INT32.的错误。解决方法在网上有找到解决方案把onnx模型转TensorRT模型的trt模型报错,但由于机器上安装的onnx版本是1.8.0,pytorch版本是原创 2021-01-19 13:39:31 · 9700 阅读 · 0 评论 -
OpenCV使用DNN模块加载SDD模型Android示例
前言前两天照着OpenCV官方的How to run deep networks on Android device教程,在自己的小米手机上进行了测试,可能是由于手机的API兼容问题,使用OpenCV封装的JavaCameraView控件不能正常打开摄像头,始终是黑屏的状态,起初我以为是SELinux在作妖,直到后面使用Camera2 API才顺利捕获到摄像头帧完成测试。此外,使用OpenCV的官方代码会始终提示要安装OpenCV Manager,即使我已经加载OpenCV的动态链接库,后来直接跳过Ope原创 2020-12-06 18:25:45 · 1198 阅读 · 2 评论 -
TensorFlow1.x/2.x配置动态显存方法
目录引言配置方法引言TensorFlow默认是占用全部的显存,不过比较BUG的是,就算模型用不了全部的显存,TensorFlow也会尽可能地多申请显存,可能是出于性能方面的考虑,并且如果满足不了它就会罢工。。比如我一块6GB显存的1660Ti或者RTX 2060,运行YOLOv4的推理程序如果不配置动态增长显存就会报错,不管是TensorFlow 1.x还是2.x的版本我都遇到了这样的问题。明明用darknet运行啥事都没有,就这货会搞事情。。下面简单记录下TensorFlow 1.x / 2.x版本的原创 2020-08-06 19:40:27 · 1587 阅读 · 0 评论 -
在Jetson TX2开发套件上使用TensorRT7.1.0加速YOLOv4
目录前言前言原创 2020-07-24 12:24:32 · 5442 阅读 · 26 评论 -
使用NVIDIA SDK Manager刷机NVIDIA Jetson TX2开发套件记录
目录前言更换清华镜像源遇到的搞笑问题准备Host OS下载NVIDIA SDK Manager前言在最近半个月才开始接触NVIDIA Jetson TX2开发板,出于任务需要,需要把自己的SSD目标检测模型通过TensorRT部署到TX2板子上运行。刚拿到TX2的时候,板子上安装的是JetPack3.3,系统是Ubuntu16.04。我测试了一下能跑,但是系统桌面有问题。一开始是不显示任务栏,也没有应用程序的边框,搞得打开一个应用就没法关闭,只能强制kill进程。。咱当时也没见过正常的TX2长什么样子啊原创 2020-07-20 15:19:12 · 8504 阅读 · 4 评论 -
Windows下编译darknet(YOLOv4作者推荐的方式)
Windows下编译darknet前言安装环境依赖YOLOv4编译YOLOv4测试结束语前言在YOLOv4官方仓库YOLOv4的说明文件中,作者Alexey提供了一种非常简洁的Windows下编译darknet的方法,不用安装Cygwin,使用Windows系统自带的PowerShell即可完成编译,且笔者实践后发现是切实可行的。这篇文章简要介绍了该编译方法,希望能对大家有所帮助。安装环境依赖依照作者的表述,在PowerShell使用CMake进行编译的这种方式需要依次安装如下环境依赖:Visu原创 2020-07-01 17:44:28 · 3773 阅读 · 3 评论 -
Ubuntu18.04安装CUDA10.0+cuDNN7.6.5+Tensorflow1.15教程
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar原创 2020-06-07 11:40:24 · 2396 阅读 · 2 评论