用GPT来面试深度学习八股文题目
有时候我们需要从已经标记好的数据集中提取某些类进行训练,以常见的COCO数据集和VOC数据集格式的标注为例,本文提供了两种数据集格式的特定类提取方法,网上也有很多类似的内容,权当总结记录,以后用到时方便找出。
序言这篇文章总结了训练好的pytorch模型转成tensorrt模型部署的几种方式,转换原理流程大致如下:导出网络定义以及相
序言用于记录好的TensorRT文章链接,以防下次再想看的时候找不到。TensorRT使用教程(Python版
序言使用Augly库写了一个易用的图像增强函数,用来扩充图像样本,增加样本的多样性,使用起来非常简单,需要预先安装Augly库,在终端中运行:pip install augly全部代码分享如下(代码还有优化空间,根据自己需要进行优化):
序言前两天nanodet-plus隆重发布,又赚了一波热度,趁着年底有空,避免被卷死,赶紧学习一波;因为之前有过nanodet的训练实践经历,但是有好长一段时间没用了
相信大家在看一些目标检测论文中经常会看到作者将自己的模型和其他的模型做了mAP比较,mAP作为目标检测中一个非常重要的评估指标,是对模型好坏的评价标准,当时在看YOLOv3、SSD、Faster R-CNN等这些论文的时候,对mAP还不是很熟悉,看了很多的博文,写得都很零碎,很难理解,虽然大概能明白其原理,但是可能对于很多刚进入这个领域的同学来说,难度还是很大的,刚好这几天被困在家没事做,在复习之...
一、预备知识点参数数量和理论计算量1. 参数数量(params):关系到模型大小,单位通常是M,通常参数用float32表示,所以模型大小是参数数量的4倍计算公式:Kh × Kw × Cin × Cout (Conv卷积网络)Cin × Cout (FC全连接网络)2. 理论计算量(FLOPs):是 floating point operations 的缩写(注意 s 小写,区...
序言距离YOLOv3的发布已经快两年了,虽然在这两年里面虽然涌现了很多优秀的框架,但是毫无疑问的是,在工业界目标检测中,YOLOv3仍然很受CV爱好者们的喜爱,尽管新框架检测精度和速度不断提高,但是多数情况下是为了刷榜,并没有像YOLOv3一样普遍受众,这也是为什么距离发布已经快过去两年了,YOLOv3还是这么受爱好者们青睐的原因,不过近日作者在推特上宣布不再从事深度学习视觉领域的研究,这也意味...
序言本文只涉及代码的编写,不会对YOLOv3原理做太多讲解,如果对YOLOv3原理还不够了解的,请移步YOLOv3原理详解,因为之前官方给的代码比较复杂,所以自己重新整理了一下,在本文中,对YOLOv3的网络和侦测部分的代码重新书写,代码变得更为整洁,并加载官方给的权重文件。环境介绍Windows10Pytorch 1.1.0cuda10Pycharm一、根据cfg文件搭建网络模...
目标检测目前主要存在的主要问题,也是目标检测未来的发展方向:小目标物体检测;遮挡面积较大的目标检测;区分图像中与目标物体外形相似的非目标物体;实时性检测;小数据量迁移训练效果的提升;目标检测范围应用越来越广,缺乏各种各样的训练样本数据。...
序言本文整理于作者知乎原文:研习UNet,UNet++的作者在知乎讲的非常仔细,感兴趣的可以直接去围观,这里只是为了方便记忆做个总结。正文一、图像分割背景在计算机视觉领域,全卷积网络(FCN)是比较有名的图像分割网络,医学图像处理方向,U-Net可以说是一个更加炙手可热的网络,基本上所有的分割问题,我们都会拿U-Net先看一下基本的结果,然后进行“魔改”。UNet和FCN对比:两者...
序言本文根据知乎原文内容进行整理:深度学习中的batch的大小对学习效果有何影响?正文Batch_size的作用:决定了下降的方向。在合理范围内,增大Batch_size的好处:提高了内存利用率以及大矩阵乘法的并行化效率;跑完一次epoch(全数据集)所需要的迭代次数减少,对相同的数据量,处理的速度比小的Batch_size要更快;在一定范围内,一般来说 Batch_Size 越大...
前言因为目前业务方向逐渐偏向硬件嵌入部署,所以最近搞了一个jetson nano和rk3399的板子来上手,之前没搞过硬件开发板,刚开始配置的时候遇到了很多坑,写篇博客记录一下过程。Jetson Nano 是一款小型,功能强大的单板计算机,配备了1.4 GHz四核ARM A57 CPU,128核Nvidia Maxwell GPU和4 GB RAM。它具有四个USB A型端口,包括一个USB 3.0端口,用于视频输出的HDMI和DisplayPort端口以及一个千兆位以太网连接器。板载CSI摄像头插槽,
序言最近在摸索pytorch转tensorRT部署,看了很多示例代码,把步骤总结了一下。各种模型转换都大同小异,有所收获,记录一下。一、转换流程pytorch转tensorRT步骤:使用pytorch训练得到pt文件;将pt文件转换为onnx中间件;使用onnxsim.simplify对转换后的onnx进行简化;解析onnx文件构建trt推理引擎;加载引擎执行推理,为引擎输入、输出、模型分配空间;将待推理的数据(预处理后的img数据)赋值给inputs(引擎输入);执行推理,拿到out
序言有些时候需要用到coco格式的数据训练,但是labelimg标注的是VOC格式的文件,需要转换一些,原始文件目录格式为:转换方式一直接将单个文件夹的xml转换为json:import xml.etree.ElementTree as ETimport osimport jsoncoco = dict()coco['images'] = []coco['type'] = 'instances'coco['annotations'] = []coco['categories']
序言最近在刷公众号的时候,突然刷到一篇新出的YolactEdge文章:边缘设备上的实时实例分割(Xaviver:30FPS,RTX2080Ti:170FPS),瞬间被标题吸引了:挖草,这么强?要知道原版的yolact也只是勉强达到实时而已,这个速度这么变态的嘛!赶紧打开官方github star一波,粗略看了一下代码结构,发现和yolact的差不多,配置起来应该不难,趁现在有时间,赶紧train看看。在train之前先看下这篇论文的结果:训练配置pytorch 1.6.0ubuntu 18.0
序言v5出来这么久,一直搜不到网上对Focus的理解,还想着白嫖一下结论,但是发现搜出来的都是一知半解,讲的全都是Focus做了什么,愣是没说为什么要这么做。没办法只好自己花点时间深入学习一下,本人也记录一下本人对Focus模块的一些理解,如果有理解错误的地方,还请评论区告知。一、Focus模块的原理Focus模块在v5中是图片进入backbone前,对图片进行切片操作,具体操作是在一张图片中每隔一个像素拿到一个值,类似于邻近下采样,这样就拿到了四张图片,四张图片互补,长的差不多,但是没有信息丢失,这
序言最近好多项目都用到了yolov5,为了适配项目需求,有时候会对v5的代码部分做一些改动,写这篇文章的目的是为了记录自己改动的部分(本人很健忘),以便下次用的时候翻来看看。一、数据增强部分增加了垂直旋转的增强v5里面提供了很多数据增强方式,针对大众的数据集效果还是很适用的,如果觉得增强效果不理想,也可以自己在代码中增加,我这里就增加了一个垂直的旋转90°的,为了让数据集中包含了垂直的目标数据,比如之前做的卡片四个角检测,如果目标全是水平的卡片,那么检测时卡片位置变为垂直的时候,效果可能就会有折扣,但
序言网上教程明明很多,为什么还要写这篇文章?网上的文章抄来抄去的,很多都是误导人的安装,而且有些环境不一样还会出现各种各样不同的问题,这篇主要是记录自己本机的安装过程和遇到的问题,方面以后需要的时候翻出来,印象更深刻一些,适合自己的才是最好的。一、系统环境ubuntu 18.04.5cuda 11.1rtx 3070cudnn 8.1python 3.7以上环境默认已经配好。二、开始安装2.1 安装opencv去opencv官网opencv下载对应的发布包,我这里下载的是下载后
序言因为在项目中要用到yuv格式的视频图像进行模型推理,但是我们模型通常都是只接收RGB格式的图片,所以在推理前就要先把YUV格式转换为RGB格式,网上搜了看到很多实现,搜来搜去你会发现还是那几个源码,copy下来运行要么报错,要么转出来的色彩不对,全都是没经过实践的,抄袭得特别严重,一份代码写了十几篇文章,关键是还不一定能用,来回调试严重浪费我们宝贵的时间,再次对这种行为表示愤慨。如果你一开始就搜到了我这篇文章,那么恭喜你,不用再去踩我曾经踩过的坑。一、什么是YUV在代码实现之前,需要去了解什么是
问题描述将pytorch模型转tensorrt后运行推理结果正常,但是使用flask部署调用时出现如下报错,推理输出全部为0:[TensorRT] ERROR: ../rtSafe/cuda/caskConvolutionRunner.cpp (408) - Cask Error in checkCaskExecError<false>: 11 (Cask Convolution execution)[TensorRT] ERROR: FAILED_EXECUTION: std::exce
序言最近在ubuntu服务器上部署了一套ocr服务,每次服务器启动的时候需要手动运行脚本未免太麻烦了,所以考虑加入开机自启。网上搜了一下,答案基本上大同小异,几乎都是使用rc.local文件,但是ubuntu18 貌似是已经不支持rc.local 这个开机自动启动的脚本了,所以为了能继续用这个脚本,需要去编写一个ubuntu18 下的启动脚本,通过这个脚本来启动我的rc.local脚本,本文记录一下使用过程。1. 创建一个re-local.service文件sudo vi /etc/systemd/
序言前段时间给我们运维同事的服务器上部署了一个ocr服务接口,模型使用的是nvidia 1650ti的显卡推理,速度非常可观,毫秒级别响应。但是最近运维又找到我,说服务器的显卡好像出了问题,我检查一看:好家伙,显卡居然烧了。这张显卡为公司服务了好几年,毕竟“陈年老卡”,上一任同事传下来的,不知道传了几代,如今也算圆寂了。好了,不瞎扯,说会正题,没了显卡,我这模型可咋整?现阶段只能用cpu推理了,但是模型的速度可咋优化?这可难不倒我,检查了一下这台服务器上的cpu,发现了Intel的,这就好办了 , 果断使
偶尔看到一篇写的不错的文章,学习完后就忘记出处了,本文保存一下链接,供以后复习查看
学习的东西,很难用一句话概括出来,但是我们可以总结其中的重点,再通过思维的延申到实现细节上,是不错的学习方式。废话说得太多了
序言整理了一篇来自公众号AI公园的文章,原文链接:常见的12个深度学习面试问题,通过对文章知识点整理来巩固所学的知识,也为了以后更好的复习。正文1. 介绍Batch Normalization的意义Batch Normalization 是训练神经网络模型的一种有效方法。该方法的目标是将特征(每层激活后的输出)归一化为均值为 0,标准差为 1。它可以将数据标准化到一个合理的范围,这样做带来...
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号