- 博客(74)
- 收藏
- 关注
原创 算法工程师 | 如何快速 了解,掌握一个算法!脚踏实地,迎着星辰,向前出发 ~
本文是一些碎碎念, 希望对正在迈向 算法工程师道路的你, 有所裨益
2024-06-16 18:39:05 531
原创 LPRNet: 端到端的车牌识别
LPRNet是2018.06 27 被上传到arxiv上的LPRNet 是第一个实时车牌检测算法中不需要RNN的算法。LPRNet 是一个端到端的,不需要提前进行char分割的车牌识别算法。LPRNet 因为网络结构很小,所以速度很快,在英伟达1080上面 3ms/车牌。在Intel i7-6700K CPU 上1.3ms。LPRNet 前向计算量 0.34 GFLops。
2024-09-02 15:35:49 721
原创 异常检测 | Anomaly Detection via Reverse Distillation from One-Class Embedding |很不错的方法,可以用来找出特例!!!
本文提出了一种新的异常检测方法,名为“反向蒸馏”。该方法利用预训练的教师模型提取图像特征,并将其蒸馏到学生解码器中。学生解码器的目标是重建教师模型的多尺度特征,但由于学生模型只学习正常模式,因此无法重建异常特征,从而实现异常检测。主要贡献反向蒸馏框架: 教师模型为编码器,学生模型为解码器,打破传统蒸馏模型的结构限制,提高模型对异常的区分能力。一类别瓶颈嵌入模块: 将教师模型的高维特征压缩到低维空间,有效抑制异常特征的传播,增强异常检测效果。实验结果。
2024-06-15 21:36:33 1179
原创 WiSE-FT | zero-shot模型的微调 | 同时保持原始模型的鲁棒性
WiSE-FT 是一种简单有效的微调方法,可以显著提高零样本模型对分布偏移的鲁棒性,同时保持或提高目标分布上的准确性。
2024-06-12 11:38:54 874
原创 数字图像处理系列 | 线性滤波(高斯滤波)(3)
平移不变性指我们在图像的每个位置都执行相同的操作。线性指这个操作是线性的,也就是我们用每个像素的邻域的线性组合来代替这个像素。你想要得到所有的g[i,j], 你就重复上述动作,1. 旋转你的卷积核,2. slide over entire image。然后,把卷积核放在你想得到的坐标那里,这里是**(i, j)的位置**,得到右侧的橙色,这就是。
2024-05-29 19:06:34 804
原创 端到端目标检测 | 从DETR 到 GroundingDINO | 干货中的战斗机
多模态目标检测模型是如何训练的,深入浅出,从DETR 讲起 到GroundingDINO。
2024-05-29 19:01:35 1457
原创 数字图像处理系列 | 非线性滤波 (4)
排列k2k^2k2所有的值把k2k^2k2中,中间大小的那个值赋给当前的像素你看效果,很好的吧噪声去掉了吧,但你仔细看还是可以从背景看到噪声kkk越大的时候,除掉的噪声越多,但硬币也越模糊了。
2024-05-27 14:16:04 603
原创 生成模型 | 从 VAE 到 Diffusion Model (下)
主要介绍了Diffusion Model的发展历程和文生图模型的基本架构,从开山鼻祖DDPM开始应用扩散模型做图片生成,到现在图像可以根据语言来做相应的生成,修改。。总之,一文让你了解diifusion model,和他的一些经典模型应用。
2024-05-27 14:11:34 1830
原创 生成模型 | 从 VAE 到 Diffusion Model (上)
本文深入探讨了图像生成模型的发展,从VAE到最新的扩散模型。详细介绍了各种模型的框架。请参考文章中的脑图,让您一目了然地了解AIGC的发展历程。
2024-05-24 10:05:41 1125
原创 数字图像处理系列 | 线性平移不变性系统就是卷积运算 (2)
两个特点:1. 线性的 2. 具有平移不变性同时满足线性和平移不变性的系统,就是线性平移不变性系统这个方程是线性的,平移不变的。
2024-05-16 20:10:54 662
原创 数字图像处理系列 | 像素处理 (1)
数字图像处理系列,由浅入深,领略图像背后的数学原理及其应用。只有了解了数学原理,才可能更好的应用传统视觉算法
2024-04-11 15:45:00 310
原创 yolov7示例 | 如何写一个剪枝代码?
剪枝有哪些方法首先, 选择剪枝的颗粒度:规律 or 不规则然后, 选择在哪里剪枝:权重 or 结构其次,选择剪枝程度:计算量减少5倍?yolov7代码中的train.pytest.py要了解因为我们剪枝进行finetune的时候需要train()这个函数,prune的时候需要test()这个函数。
2024-04-03 14:52:09 1316 3
原创 yolov7代码 | model.named_models
了解model.named_models,为剪枝做准备。剪枝有一些层如果你不想剪掉,那就用需要你会用 model.named_models功能。先放一段控制剪枝的代码,感受一下ignored_layers = [] # 这些层不剪枝。
2024-04-02 20:05:03 330
原创 export CUDA_HOME=/usr/local/cuda-11.8
【代码】export CUDA_HOME=/usr/local/cuda-11.8。
2024-01-17 15:06:21 1209 1
原创 多模态大模型 | CLIP论文总结 | 2021.02.26 OpenAI | 打通 图像-文本
即使你学习到了很好的特征,当你运用到下游任务的时候,你还是需要有标签的数据去做微调。把对比学习中的temperature这个超参数,设计为可学习的标量了,直接在模型训练过程中就被优化了,不需要当成一个超参数去调参。之前的自监督或者无监督的方法,主要研究的是特征学习的能力,他们的目标是学习一个泛化比较好的特征。现在的监督信号是一个文本,而不是n选1的这种标签了,所以模型的输入输出啊,自由度就大很多。训练出来的模型又大又好,而且又简单,泛化性又好,为多模态的训练铺平了道路。
2024-01-09 16:34:27 1140
原创 深度学习基础知识干货 | Softmax中温度(temperature)参数
在Softmax中,温度(temperature)的作用是调整模型的输出分布的“平热程度”或“软硬程度”。因此,通过调整温度参数,可以在Softmax中平衡模型的“软硬”输出,从而影响模型的鲁棒性和泛化能力。
2024-01-09 14:53:42 2121
原创 EVA:Exploring the Limits of Masked Visual Representation Learning at Scale
EVA是一个基础的Transformer视觉模型预训练任务:训练的图片是masked掉的50%的patches, 模型的任务是预测被遮挡的图像特征。模型经过预训练,学会了通过图像和文本的对齐关系来重构被遮挡的部分,使其能够理解图像和文本之间的关联。通过这个预训练任务,我们能够高效地将EVA扩展到十亿个参数。这样就可以得到很大的模型,在下游任务上会有很好的表现通过MIM 预训练,使得基于CLIP的预训练模型变大,得到1B param的EVA,这个EVA模型迁移在下游任务中表现非常好。
2024-01-08 17:24:18 676
原创 深度学习基础知识干货 | Gradient checkpointing
在深度学习中,反向传播(Backpropagation)是训练神经网络的关键步骤,其中需要保留前向传播时的中间结果以计算梯度。Gradient checkpointing通过在前向传播过程中将某些中间结果临时存储在内存中,而不是一直保留,从而显著减少了内存需求。具体而言,它通过在前向传播期间记录计算图的某些部分,然后在反向传播时重新计算这些部分,从而避免了在反向传播过程中保留所有中间结果。这种技术的主要优势是能够在有限的内存条件下训练更大的模型或处理更长的序列,从而提高了模型的训练效率。
2024-01-08 16:36:02 623
原创 多模态大模型 | EVA-CLIP 蒸馏版的CLIP,效果非常好哦
EVA-CLIP: 一系列显著的提升CLIP训练时的效率和有效性。用最新的表征学习, 优化策略,增强使得EVA-CLIP在同样数量的参数下比之前的CLIP模型要好,且花费更小的训练资源。pre-trained EVA 来初始化CLIP的训练在ImageNet-1k val的成绩。
2024-01-08 13:55:19 1401 2
原创 大模型概述
420B token的数据集让模型可以通过上下文学习来理解并执行下游任务,并且统一了图片/视频、有监督/无监督、合成/真实、2D/3D/4D等几乎所有的数据形式。:模型结构大, 参数量大,训练数据量大。
2023-12-15 14:29:55 452
原创 天气大模型
然而,ERA5 包括降水,而 HRES 不包括。我们标记为“ERA5”的模型将降水量作为输入,并期望 ERA5 数据作为输入,而标记为“ERA5-HRES”的模型不将降水量作为输入,并经过专门训练以将 HRES-fc0 作为输入。这是因为均方误差对差异的平方进行了求和和平均,提供了一个单一的度量,用于表示模型的预测性能。这个均方误差是在垂直层级上加权平均的,说明在考虑不同层级的情况下,对误差的处理更加细致。通过调整 𝑁 的值,可以评估模型在不同时间范围内的预测性能,因为 𝑁 控制了自回归模型的步长。
2023-11-22 14:49:55 1625
原创 深度学习基础知识干货 | Group Convolution / Depthwise Convolution 轻量模型的必杀卷积
轻量化模型 装备 的卷积
2023-11-02 14:42:16 127 1
原创 TensorRT加速的原因:量化+网络结构优化
TensorRT可以帮助你把训练好的AI模型,部署到边端Nvidia的设备,并实现对模型的量化与加速。TensorRT基于CUDA和cudnnCUDA看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。cuDNN是基于CUDA的深度学习GPU加速库,它就是个锤子。CUDA这个工作台买来的时候,并没有送锤子。想要在CUDA上运行深度神经网络,就要安装cuDNN,这样才能使GPU进行深度神经网络的工作,工作速度相较CPU快很多。
2023-11-02 11:18:52 304
原创 深度学习基础知识干货 | Videos 动作分类
文章目录Video ClassificationEarly Fusion, Late Fusion, 3D CNN,Recognizing Actions from Motion 从动作中识别行为接下来介绍新技术回顾一下:非常多的video工作Video ClassificationEarly Fusion, Late Fusion, 3D CNN,Recognizing Actions from Motion 从动作中识别行为Measuring Motion: Optical FlowSe
2023-11-01 17:21:17 431
原创 深度学习基础知识干货 | 目标检测(Object Detection): 你需要知道的一些概念
目标检测(Object Detection): 你需要知道的一些概念,mAP, NMS, FPN, 一阶段检测器
2023-11-01 16:20:30 137
原创 深度学习基础知识干货 | 卷积模型的Memory, Params, Flop是如何计算的?
(乘法 + 加法)= 每一层输出的元素个数 * 每一个元素的运算量 = (c_out * H * W) * (c_in * K * K) = (64 * 56 * 56) * (3 * 11 * 11) = 72855552。权重的形状 = c_out * (c_in * k * k) = 64 * 3 * 11 * 11。= C * H * W = 64 * 56 * 56 = 200704 个元素。KB = 输出元素的个数 * 每个元素的大小 / 1024。偏差 = c_out = 64。
2023-10-31 09:51:14 213
原创 深度学习基础知识干货 | Batch Normalization 批量归一化
把数据拉回标准正态分布,因为神经网络的Block大部分都是矩阵运算,一个向量经过矩阵运算后值会越来越大,为了网络的稳定性,我们需要及时把值拉回正态分布。当testing的时候batchnorm就变成了一个线性运算(linear operator),可以跟前一层的全连接层或者卷积层融合起来计算。具体来说,当一个层的输入分布发生变化时,该层需要不断地适应新的输入分布,这会使得网络的训练过程变得不稳定,同时也会影响收敛速度和性能。我们的均值和方差是在Minibatch的基础上做的。
2023-10-30 18:32:58 133
原创 剪枝 Pruning | 剪枝系统性的介绍(持续更新)
基于缩放的剪枝通常与剪枝阈值结合使用,权重的缩放因子与阈值比较,如果权重的缩放因子低于阈值,则相应的权重将被剪枝。“Second-Order-based Pruning”(基于二阶导数的剪枝)是一种神经网络剪枝技术,它利用神经网络中参数的二阶导数信息来确定哪些参数应该被剪枝。“Magnitude-based pruning”(基于权重大小的剪枝)是一种常见的神经网络剪枝技术,它基于神经网络中的参数(通常是权重)的大小来确定哪些参数应该被剪枝,以减小模型的大小和复杂性。通常,参数的零值比例与阈值进行比较。
2023-10-26 18:13:35 1255
原创 AI算法sdk
为模型的输出开辟了内存空间之后,我们就可以开始对tensorRT序列化的引擎进行反序列化得到图片的输出了。本文介绍了SDK的流程,和主要的类。
2023-10-19 21:12:31 164
原创 list(zip(*out))
# 声明一个列表nums = [['a1', 'a2', 'a3'], ['b1', 'b2', 'b3']]# 参数为list数组时,是压缩数据,相当于zip()函数iters = zip(*nums) # 输出zip(*zipped)函数返回对象的类型# print("type of iters is %s" % type(iters))# 因为zip(*zipped)函数返回一个zip类型对象,所以我们需要对其进行转换# 在这里,我们将其转换为列表print(list(ite..
2021-12-26 14:51:56 628
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人