![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
深度学习
文章平均质量分 70
a little cabbage
这个作者很懒,什么都没留下…
展开
-
打包PaddleOCR出现:OSError: could not get source code
打包PaddleOCR出现:OSError: could not get source code原创 2023-02-17 11:14:56 · 474 阅读 · 1 评论 -
Hough Transform 霍夫变换原理
Hough Transform 霍夫变换原创 2022-07-01 09:57:35 · 208 阅读 · 0 评论 -
常见激活函数持续更新)sigmoid Tanh Relu Leaky-ReLU RReLU
激活函数是来向神经网络中引入非线性因素的,通过激活函数,神经网络就可以拟合各种曲线。sigmoid公式:函数图像: Sigmoid函数也叫 Logistic 函数,用于隐层神经元输出,取值范围为(0,1)。它可以将一个实数映射到(0,1)的区间,可以用来做二分类。在特征相差比较复杂或是相差不是特别大时效果比较好。存在的问题: 1)sigmoid函数饱和使梯度消失(Sigmoidsaturate and kill gradients)。我们从导函数图像中可以看出sigmoid的导数都是小于原创 2022-04-25 15:00:05 · 2838 阅读 · 0 评论 -
2021李宏毅机器学习之Adaptive Learning Rate
即使没有临界点(critical ppoint),训练也会很困难 critical point其实不一定是,你在训练一个Network的时候,会遇到的最大的障碍,今天要告诉大家的是一个叫做Adaptive Learning Rate的技术,我们要给每一个参数不同的learning rate 如果今天critical point不是问题的话,為什麼我们的training会卡住呢,我这边举一个非常简单的例子,我这边有一个,非常简单的error surface 我们只有两个参数,这两个参数值不一样的时候,原创 2022-04-21 16:20:24 · 2238 阅读 · 0 评论 -
计算神经网络推理时间的正确方法
前言 在网络部署这一块中,计算网络的推理时间是至关重要的一方面,但是,正确而有意义地测量神经网络的推理时间或延迟的任务,需要深刻的理解。即使是有经验的程序员也经常会犯一些常见的错误,这些错误会导致不准确的延迟度量。 在这篇文章中,我们回顾了一些应该解决的主要问题,以便正确地测量延迟时间。我们回顾了使GPU执行独特的主要过程,包括异步执行和GPU预热。然后我们共享代码样本,以便在GPU上正确地测量时间。最后,我们回顾了在gpu上量化推理时间时人们常犯的一些错误。异步执行 我们从讨论GPU的执行机制开始原创 2022-04-20 17:43:05 · 6434 阅读 · 2 评论 -
2021李宏毅机器学习之Regression
Piecewise Linear Curves Linear 的 Model,也许太过简单了,我们可以想像说 x1 跟 y,也许它中间有比较复杂的关係,对 Linear 的 Model 来说,x1 跟 y 的关係就是一条直线,随著 x1 越来越高,y 就应该越来越大,你可以设定不同的 w,改变这条线的斜率,你可以设定不同的 b,改变这一条蓝色的直线,跟 y 轴的交叉点,但是无论你怎麼改 w 跟 b,它永远都是一条直线,永远都是 x1 越大,y 就越大,前一天观看的人数越多,隔天的观看人数就越多. 但也原创 2022-03-22 17:01:12 · 1293 阅读 · 1 评论 -
2021李宏毅机器学习之Self-attention进阶版本multi-head Self-attention
Multi-head Self-attention Self-attention 有一个进阶的版本,叫做 Multi-head Self-attention, Multi-head Self-attention,其实今天的使用是非常地广泛的。在作业 4 裡面,助教原来的 code 4 有,Multi-head Self-attention,它的 head 的数目是设成 2,那刚才助教有给你提示说,把 head 的数目改少一点 改成 1,其实就可以过medium baseline。 但并不代表所有的任务,原创 2022-03-22 14:56:29 · 2144 阅读 · 0 评论 -
windows10 编译onnxruntime
前言windows10下编译onnxruntime在网上的教程可谓是风毛菱角,经过本人几天的努力钻研,花了九牛二虎之力,终于是完成了这个操作。环境cuda版本:11.4cudnn版本: 8.2.2.26onnxruntime:1.10.0Visual Studio 2019cuda、cudnn和onnxruntime对应的版本可以参考官网:https://onnxruntime.ai/docs/execution-providers/CUDA-ExecutionProvider.html*原创 2022-03-01 17:41:04 · 2581 阅读 · 0 评论 -
solov2训练报错:RuntimeError: nvrtc: error: failed to open libnvrtc-builtins.so.11.1.
前言错误的提示信息是这样的RuntimeError: nvrtc: error: failed to open libnvrtc-builtins.so.11.1. Make sure that libnvrtc-builtins.so.11.1 is installed correctly.大概意思就是少了这一个库:libnvrtc-builtins.so.11.1我的环境是:pytorch版本:1.8.2CUDA版本:11.2在网上寻找一很多解决的办法,无外乎就是说pytorch版原创 2022-02-20 16:46:54 · 5888 阅读 · 3 评论 -
交叉熵损失原理
前言 在深度学习的分类任务中使用最多的事交叉熵损失函数,在B站刷完视频后赶紧记录一下。正文 在多分类任务通常使用softmax将logits(即score)转换为概率的形式。在计算损失的时候就是讲logits(即score)转换为概率的值与真实值比较,来衡量两者之间的差距,即使用交叉熵损失函数来衡量。 这个交叉熵损失函数一般是接在softmax后面的,所以多分类的交叉熵损失也叫做softmax损失,它的计算方法是(如下图所示): 其中,y是样本x属于某一个类别的真是概率,而f(x)是样本属于某一原创 2022-02-15 17:23:25 · 2219 阅读 · 0 评论 -
ResNet+ FPN网络结构
1.ResNet论文地址:ResNet ResNet在PyTorch的官方代码中共有5种不同深度的结构分别为18、34、50、101、152,和论文的完全一致。如下图所示,下图是论文的截图。 根据Block类型,可以将这五种ResNet分为两类:一种是基于BasicBlock;另一种基于Bottleneck。1.1 Block前面的层 如下图所示, 上图红色框的层的具体结构如下图所示,这里只包含卷积层和pooling层,而BN层和ReLU层等均未画出。 输入输出用椭圆形表示,中间是输入输出原创 2022-01-14 14:11:04 · 8530 阅读 · 0 评论 -
2021李宏毅机器学习之Self-attention(矩阵角度)
从矩阵的角度讲解Self-Attention的过程下来我们从矩阵乘法的角度,再重新讲一次我们刚才讲的,Self-attention 是怎麼运作的。我们现在已经知道每一个 a 都产生 q k v。如果要用矩阵运算表示这个操作的话,是什么样子呢我们每一个 a,都乘上一个矩阵,我们这边用 Wq 来表示它,得到 qi,每一个 a 都要乘上 Wq,得到qi,这些不同的 a 你可以把它合起来,当作一个矩阵来看待 一样a2a3a4也都乘上Wq得到q2q3跟q4 ,那你可以把 a1 到 a4 拼起来,看作是一个矩阵原创 2022-01-13 10:43:56 · 709 阅读 · 0 评论 -
2021李宏毅机器学习之Self-attention
Self-AttentionSeq2Seq简言 我们不知道应该输出多少个Label,机器要自己决定,应该要输出多少个Label,可能你输入是N个向量,输出可能是N’个Label,为什么是N’,机器自己决定。这种任务又叫做sequence to sequence的任务。 例如:翻译就是sequence to sequence的任务,因为输入输出是不同的语言,它们的词汇的数目本来就不会一样多;或者是语音识别也是,真正的语音识别也是一个sequence to sequence的任务,输入一句话,然后输出一原创 2022-01-13 10:40:56 · 214 阅读 · 0 评论 -
什么是RoIPooling和ROIAlign
RoIPoolingFaster-RCNN简述 讲到ROIPooling就想提到Faster-RCNN,就简单讲述Faster-RCNN。Faster RCNN可以分为4个主要内容:Conv layers:作为一种CNN网络提取图像特征方法,Faster RCNN首先使用一组基础的conv+relu+pooling层提取image的feature maps。该feature maps被共享用于后续RPN层和全连接层。Region Proposal Networks(RPN):RPN网络用于生成r原创 2021-12-29 14:24:51 · 1437 阅读 · 0 评论 -
边框回归Bounding-Box regression
边框回归是什么?如下图: 对于边框,一般使用向量(x,y,w,h) 来表示, 分别表示窗口的中心点坐标和宽高。红色的框 P 代表原始的Proposal。绿色的框 G 代表目标的 Ground Truth; 我们的目标是寻找一种关系,使得原始输入框P(红色的框)经过映射得到一个 Ground Truth(绿色框)更接近的回归看框G^\widehat{G}G(蓝色框)。所以,边框回归的目的即是:给定(Px,Py,Pw,Ph)寻找一种映射f, 使得:f(Px,Py,Pw,Ph) = (Gx^\wideha原创 2021-12-29 10:11:39 · 373 阅读 · 0 评论 -
two stage(两阶段实例分割)自上而下(Top-Down)和自下而上(Bottom-Up)
自上而下(Top-Down) 自上而下的实例分割方法的思路是:首先通过目标检测的方法找出实例所在的区域(bounding box),再在检测框内进行语义分割,每个分割结果都作为一个不同的实例输出。 这类方法的代表作就是大名鼎鼎的Mask R-CNN了,如下图,总体结构就是Faster R-CNN的两阶段目标检测,box head用来做检测,增加了mask head用来做分割,模型大家都很熟,细节就不再赘述自下而上(Bottom-Up) 自下而上的实例分割方法的思路是:首先进行像素级别的语义分割,再原创 2021-12-24 11:50:07 · 5395 阅读 · 1 评论 -
Poly-YOLO及YOLOv3的不足:标签重写、无效的anchor分配
前言在学习PolyYolo开源!Yolo也能做实例分割,检测mAP提升40%!,记录一下之前所学忘记的内容。YOLOv3存在的问题标签重写 YOLO系列都是基于图像的cell作为单元进行检测,即把一张图片分成mn个网格,就如上图的左图,黄色的点是四辆车的中心点,分别落在不同的格子,每个格子就负责预测这个物体。 以416416输入图像为例,图像的大小随着一系列的卷积下降到1313的feature map(YOLO从输入到输出的时候是经过32倍的下采样)。此时特征图的一个像素点的感受野是3232大小原创 2021-12-22 19:14:01 · 3309 阅读 · 0 评论 -
Ubuntu18.04禁止conda自动激活base环境
前言以前为了方便管理Python的环境安装了anaconda3,但是每次打开Ubuntu的终端,前面都有base的环境,比较烦人。所以想要禁止自动激活base环境禁用 conda 自动激活 base 环境:conda config --set auto_activate_base false参数说明:auto_activate_base 是用来控制是否要在 shell 启动时自动激活 base 环境的配置项;设置为 false 表示 不自动激活 base 环境的配置项;设置为 true 表示原创 2021-12-15 14:46:15 · 3008 阅读 · 0 评论 -
Ubuntu18.04输入密码正确,进不去图形界面
问题描述:公司申请配一张显卡,做深度学习方面的研究,显卡一到手就迫不及待拆开主机装上了(还研究了好半天)。终于可以开机了,马上安装N卡的驱动,记得安装的驱动版本是460的。装完之后重启,到登录页面输入密码,黑屏一下,又返回登录页面要输入密码。密码肯定正确。于是百度了很久。解决办法1、重启或者强制重启电脑2、进入Ubuntu的高级系统进入Ubuntu高级系统后,我这边是有两个带有recovery的选项,选择版本低的一个,就是最后一个,按回车进入。之后选着第一个resume resume normal原创 2021-12-13 15:02:52 · 4716 阅读 · 0 评论 -
ubuntu安装opencv
文章目录前言一、官网下载二、安装前言Ubuntu18.04 环境下安装OpenCV。一、官网下载Opencv官网在导航栏Library中选中Releases然后点击Sources,自动下载到本地。二、安装安装命令unzip OpenCV-3.4.5.zipcd opencvmkdir build cd buildcmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..make -j${p原创 2021-12-09 09:38:05 · 2693 阅读 · 0 评论 -
yolov5训练好模型torch.load报错:No module named ‘xxxx‘
项目场景:yolov5训练好模型之后,下载训练好的模型,运行推理脚本是报错问题描述: yolov5训练好模型之后,下载训练好的模型,运行推理脚本是报错如下:(xxxx是训练脚本的目录)Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/dlsvr/.local/lib/python3.6/site-packages/torch/serialization原创 2021-12-07 18:46:56 · 2773 阅读 · 0 评论 -
目标检测标签转换txt2json、xml2txt
目标检测标签转换txt2json、xml2txt原创 2021-12-07 11:26:25 · 530 阅读 · 0 评论