- 博客(649)
- 资源 (13)
- 收藏
- 关注
转载 PyTorch Cookbook(常用代码段整理合集)
本文代码基于PyTorch 1.0版本,需要用到以下包import collectionsimport osimport shutilimport tqdmimport numpy as npimport PIL.Imageimport torchimport torchvision1 基础配置1-1 检查PyTorch版本torch.__version__ ...
2019-04-27 15:58:29 2803 4
原创 Linux常见命令汇总(累积中。。。)
Linux下统计当前文件夹下的文件个数、目录个数统计当前文件夹下文件的个数,包括子文件夹里的ls -lR|grep "^-"|wc -l统计文件夹下目录的个数,包括子文件夹里的ls -lR|grep "^d"|wc -l统计当前文件夹下文件的个数ls -l |grep "^-&quot
2018-12-06 11:08:08 1553 11
原创 本博客目录及版权申明
【C++ Primer 学习笔记】系列:第一部分 基本语言第二部分 容器和算法 【C++ Primer 学习笔记】: 容器和算法之【顺序容器】 【C++ Primer 学习笔记】: 容器和算法之【关联容器】 【C++ Primer 学习笔记】: 容器和算法之【泛型算法】第三部分 类和数据抽象第四部分 面向对象编程与泛型算法第五部分 高级主题【Java: 23种设计模式】系列 Java: 23
2015-11-25 17:37:30 1430 1
原创 深度学习论文: YOLC: You Only Look Clusters for Tiny Object Detection in Aerial Images及其PyTorch实现
为了应对大规模图像和物体分布不均带来的挑战,提出的YOLC框架,建立在Anchor-Free点目标检测器CenterNet的基础之上。在YOLC中,局部尺度模块(LSM)发挥了关键作用,它能够自适应地搜索并放大聚类区域,从而显著提升检测精度。此外,还引入了高斯Wasserstein距离(GWD)来优化回归损失,确保生成的边界框质量更高。在检测Head部分,YOLC巧妙地结合了可变形卷积与细化方法,进一步增强了小物体的检测能力。这些创新举措共同使得YOLC在航拍图像的目标检测任务中表现出色。
2024-04-24 16:41:43 586
原创 深度学习论文: MobileNetV4 - Universal Models for the Mobile Ecosystem及其PyTorch实现
专为移动设备设计的高效架构MobileNetV4(MNv4)核心在于引入了通用倒置瓶颈(UIB)搜索块和Mobile MQA注意力块,前者融合了多种技术,后者针对移动加速器优化,可大幅提升速度。同时采用了优化的神经架构搜索(NAS)方案。这一系列创新使得MNv4模型在多种设备上实现帕累托最优。此外,还引入了一种新的知识蒸馏技术,提高了模型的准确性。最终,MNv4-Hybrid-Large模型在ImageNet-1K上达到87%的准确率,同时在Pixel 8 EdgeTPU上的运行时间极短。
2024-04-24 11:13:57 771
原创 深度学习论文: GhostNetV3:Exploring the TrainingStrategies for Compact Models及其PyTorch实现
本文深入研究了多种训练策略,旨在提升现有紧凑型模型的性能。这些技术涵盖了重新参数化、知识蒸馏、数据增强以及学习计划调整等方面,而无需在推断阶段对模型架构进行任何修改。值得一提的是,本文训练的GhostNetV3模型在CPU和手机平台上均经过验证,成功实现了准确性与推断成本之间的最佳平衡。
2024-04-23 11:41:14 742
原创 Parameter-Efficient Fine-Tuning for Large Models: A Comprehensive Survey
大型模型在多个领域取得了显著进展,但它们的大规模参数带来了高昂的计算成本。这些模型需要大量资源来执行,尤其是在针对特定任务进行定制时。参数有效微调(PEFT)提供了一种解决方案,它通过调整预训练模型的参数来适应特定任务,同时尽量减少额外的参数和计算资源消耗。本文对PEFT算法进行了全面研究,评估了它们的性能和计算成本,并探讨了使用这些算法的应用程序。同时,本文也讨论了降低PEFT成本的常用技术,并研究了不同系统设计中的实施成本。
2024-04-11 11:10:31 1006
原创 linux环境下安装 OpenDevin 遇到的问题以及解决方法
OpenDevin,一个引人注目的开源项目,旨在重现并超越Devin的卓越能力。Devin,作为一位拥有卓越技术实力的自主AI软件工程师,不仅能够执行高度复杂的工程任务,更擅长与用户密切合作,共同推进软件开发项目的进展。
2024-04-10 14:22:40 427
原创 MOMENT: A Family of Open Time-series Foundation Models
MOMENT是一个用于通用时间序列分析的开源基础模型系列。由于缺少大型公共时间序列存储库、时间序列特征多样以及缺乏实验基准等挑战,预训练这些模型变得困难。因此,科研人员创建了庞大的公共时间序列集合,并解决了特定挑战以实现大规模多数据集预训练。他们还设计了一个基准来评估这些模型在有限监督设置下的性能。实验表明,预训练模型在少量数据和特定任务微调下表现有效。
2024-04-10 10:29:45 1027
原创 FP8 浮点数表示法
INT8的数值空间是均匀分布的,而FP8则拥有更宽的动态范围,更能精准地捕获LLM中参数的数值分布,从而在保证计算效率的同时,也确保了模型的精度和性能。数据表示位数的降低,不仅极大地提升了吞吐量和计算性能,虽然在某种程度上牺牲了部分精度,但在通过巧妙运用技术和工程手段,FP8能够展现出与更高精度数据类型相匹敌的结果,同时带来了显著的性能提升和能效改善。在模型优化方面,FP8的采用促使模型在训练和推理过程中进行量化,这不仅有助于模型的优化和压缩,进一步降低了部署成本,同时也提升了模型的泛化能力和鲁棒性。
2024-04-01 08:45:40 302
原创 CUDA从入门到放弃(十一):延迟加载 Lazy Loading
延迟加载是一种技术,它将CUDA模块和内核的加载从程序初始化阶段推迟到实际内核执行之前。在程序运行过程中,如果并非所有包含的内核都被使用,那么一些内核就会被避免不必要的加载,这在包含多个库时尤为常见。大多数情况下,程序仅会使用库中的少数几个内核。通过延迟加载,程序可以仅加载实际需要的内核,从而节省初始化时间,并减少GPU和主机内存的开销。要启用延迟加载,可以将CUDA_MODULE_LOADING环境变量设置为LAZY。
2024-03-29 08:32:20 962
原创 CUDA从入门到放弃(十四):CUDA Thrust库
CUDA从入门到放弃(十四):CUDA Thrust库Thrust 是一个基于标准模板库(STL)的 C++ 模板库,专为 CUDA 设计,旨在简化高性能并行应用的开发。它提供了一系列数据并行原语,如扫描、排序和归约,可组合实现复杂算法。通过高级抽象描述计算,Thrust 能自动选择最优实现,适用于 CUDA 应用的快速原型设计和生产环境,提高程序员生产率和性能。
2024-03-29 08:30:48 1186
原创 CUDA从入门到放弃(十三):C++语言扩展 C++ Language Extensions
CUDA从入门到放弃(十三):C++语言扩展 C++ Language Extensions。
2024-03-28 08:35:16 1091
原创 深度学习论文: Attention is All You Need及其PyTorch实现
深度学习论文: Attention is All You Need及其PyTorch实现PyTorch:大多数先进的神经序列转换模型采用编码器-解码器结构,其中编码器将输入符号序列转换为连续表示,解码器则基于这些表示逐个生成输出符号序列。在每个步骤中,模型采用自回归方式,将先前生成的符号作为额外输入来生成下一个符号。
2024-03-28 08:33:40 1717 1
原创 CUDA从入门到放弃(八):事件( Events)
CUDA从入门到放弃(八):事件( Events)CUDA 提供了强大的功能,不仅可以监控设备的进度,还能实现精确的计时。这些功能是通过异步记录程序中的事件并查询其完成状态来实现的。每个事件都严格遵循完成机制,确保在所有前置任务或特定流中的命令全部执行完毕后,才被视为已完成。而在流 0 中的事件,更是需要等待所有流中的任务都圆满完成后,才会标记为完成。
2024-03-27 08:49:53 150
原创 CUDA从入门到放弃(七):流( Streams)
CUDA从入门到放弃(七):流( Streams)应用程序通过流来管理并发操作,流是一系列按顺序执行的命令。不同的流可能无序或并发地执行命令,但此行为并不保证。流上的命令在依赖关系满足时执行,这些依赖可能来自同一流或其他流。同步调用(synchronize call)可以确保所有启动的命令已完成。任何 CUDA 操作都存在于某个 CUDA 流中,要么是默认流(default stream),也称为空流(null stream),要么是明确指定的非空流。
2024-03-27 08:49:18 1224
原创 CUDA从入门到放弃(四):CUDA 编程模式 CUDA Programming Model
CUDA从入门到放弃(四):CUDA 编程模式 CUDA Programming Model。
2024-03-26 09:02:39 869
原创 CUDA从入门到放弃(六):CUDA内存结构(Memory Hierarchy)
CUDA从入门到放弃(六):CUDA内存结构(Memory Hierarchy)CUDA线程在执行过程中可以从多个内存空间访问数据。每个线程都有私有的局部内存。每个线程块具有共享内存,该内存对所有线程块内的线程可见,并且与线程块具有相同的生命周期。线程块集群中的线程块可以相互执行对共享内存的读取、写入和原子操作。所有线程都可以访问相同的全局内存。此外,还有两个所有线程都可以访问的只读内存空间:常量内存空间和纹理内存空间。对于同一应用程序来说,全局内存、常量内存和纹理内存空间在内核启动之间是持久的。
2024-03-26 09:01:50 992
原创 CUDA从入门到放弃(九):CUDA错误处理(Error Handling)
在编写CUDA程序时,错误处理是确保程序正确性和稳定性的关键。CUDA错误主要分为编译阶段和运行阶段两类。编译阶段错误通过编译器检查,而运行阶段错误更为复杂,涉及运行时条件、内存访问和设备资源等。对于运行阶段错误,特别要关注带返回码和不带返回码的函数。带返回码的函数,如CUDA API,应即时检查其返回的错误码。而不带返回码的函数则需要关注其他错误指示方式,如全局状态或日志信息。
2024-03-25 11:59:14 1010
原创 CUDA从入门到放弃(五):CUDA线程模型 CUDA Thread Hierarchy
CUDA线程模型精心构建了三个层次:线程(Thread)、线程块(Block)和线程网格(Grid),它们协同工作,共同实现高效的并行计算。
2024-03-25 11:18:14 415
原创 CUDA从入门到放弃(十):统一寻址编程 Unified Memory Programming
Unified Memory Programming 统一内存编程。
2024-03-22 16:16:43 989
原创 CUDA从入门到放弃(十二):CUDA环境变量 CUDA Environment Variables
CUDA Environment Variables CUDA环境变量。
2024-03-22 16:13:26 418
原创 Mora: Enabling Generalist Video Generation via A Multi-Agent Framework
为弥补Sora不开源的缺陷,本文提出多代理框架Mora,整合先进视觉AI代理,复制Sora的全能视频生成能力。Mora能利用多视觉代理,成功模仿Sora在各种任务中的视频生成能力。
2024-03-22 16:03:16 1130
原创 SAM-Lightening: Lightweight Segment Anything Model with Dilated Flash Attention
通过将自注意力操作符蒸馏成具有动态层次蒸馏的Dilated Flash Attention,SAM-Lightening在图像上完成推理平均每张仅需7ms,实现了比SAM-ViT-H快30.1倍的速度提升。
2024-03-18 11:41:56 927
原创 Sora: A Review on Background, Technology, Limitations, and Opportunities of Large Vision Models
Sora 是一项重大突破,类似于 ChatGPT 在 NLP 领域的影响。Sora 是第一个能够根据人类指令生成长达一分钟视频的模型,同时保持较高的视觉质量和引人注目的视觉连贯性,从第一帧到最后一帧都具有渐进感和视觉连贯性。
2024-03-14 14:08:37 752
原创 opencv编解码base64字符串
下载仓库,并将base64.h,Base64.cpp 加入代码中,将Mat对象编码为base64字符串。将base64解码为Mat对象。
2024-03-14 10:04:11 314
原创 EdgeSAM: Prompt-In-the-Loop Distillation for On-Device Deployment of SAM
作者在对各种蒸馏策略进行深入剖析后,证实了task-agnostic的编码器蒸馏难以完全吸收SAM所掌握的全部知识。鉴于此,EdgeSAM巧妙地循环运用bbox与point提示词,并同步对提示词编码器和Mak解码器进行蒸馏,以确保蒸馏模型能够精准地掌握提示词与Mask之间错综复杂的关联。EdgeSAM是首个能在iPhone 14上以超过30 FPS运行的SAM变体。在2080Ti上,相比原生SAM,EdgeSAM推理速度快40倍;
2024-03-13 16:25:16 572
原创 RepViT-SAM: Towards Real-Time Segmenting Anything
RepViT-SAM延续了MobileSAM的处理方式,引入RepViT-M2.3作为图像编码器提取图像特征,以及选用了SAM-ViT-H作为老师模型进行蒸馏。
2024-03-13 16:23:43 355
原创 EfficientSAM: Leveraged Masked Image Pretraining for Efficient Segment Anything(EfficientSAM)
SAM 是一款具备显著实质意义的 Transformer 模型,它在庞大的 SA-1B 数据集上接受了深度训练,因此在零样本迁移与多功能性方面展现出了卓越的性能。尽管如此,由于其高昂的计算需求,SAM 的应用范围受到了一定的限制。SAMI 创新地采纳了 SAM 编码器 ViT-H 来生成特征嵌入,并通过训练轻量级编码器构建掩码图像模型。这一策略巧妙地绕过了传统的从图像补丁中重建特征的路径,转而直接从 SAM 的强大 ViT-H 中汲取特征。
2024-03-05 17:08:17 677
原创 c#向c++传输图像(数组,字节流,base64编码字节流)以及返回中文字符串
【代码】c#向c++传输图像(数组,字节流,base64编码字节流)以及返回中文字符串。
2024-03-05 15:21:14 91
原创 深度学习论文: YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information及其PyTorch实现
首先,YOLOv9引入了革命性的可编程梯度信息(Programmable Gradient Information, PGI)技术,这一创新理念致力于解决深层神经网络中信息丢失的难题。传统的目标检测网络在传递深层信息时,经常丢失对最终预测至关重要的细节。然而,YOLOv9借助PGI技术,确保了网络在学习过程中能够维持完整的输入信息,从而获取更加可靠和精确的梯度信息,极大地提升了权重更新的准确性。这一独特的设计显著提高了目标检测的准确率,为实现实时、高精度的目标检测提供了强有力的支持。
2024-03-01 17:25:35 719
原创 ncnn之三(补充):window环境下vs2022安装ncnn+protobuf
启动VS2022 下面的 x64 Native Tools Command Prompt for VS2022。
2024-02-20 14:00:10 614
原创 std::vector<cv::Mat>和unsigned char** in_pixels 互相转换
转换为unsigned char** in_pixels,将std::vector。
2024-02-07 16:02:12 381
原创 PaddleOCR将自己训练的模型转换为openvino格式模型
inference 模型(paddle.jit.save保存的模型) 一般是模型训练,把模型结构和模型参数保存在文件中的固化模型,多用于预测部署场景。训练过程中保存的模型是checkpoints模型,保存的只有模型的参数,多用于恢复训练等。与checkpoints模型相比,inference 模型会额外保存模型的结构信息,在预测部署、加速推理上性能优越,灵活方便,适合于实际系统集成。模型,inference模型保存在。onnx转为ov模型。
2024-01-26 15:22:44 344
原创 Lama Cleaner安装以及使用
Lama Cleaner是一款完全免费开源,而且没有分辨率限制的图片去水印、修复工具。Lama Cleaner,内置了多种AI 模型构建,功能相当的齐全。可用于快速去除图像中各种水印、物品、人物、字体、等对象,并支持老照片修复、文本替换图像内容等。项目地址:https://github.com/Sanster/lama-cleaner。
2024-01-25 13:44:53 712
原创 在C#中调用C++函数并返回const char*类型的值
在C#中,使用DllImport特性将C++函数声明为外部函数。在Main方法中,调用generateProjectCode函数并将返回的指针转换为const char*类型的字符串。在C#中调用C++函数并返回const char*类型的值,可以使用Interop服务来实现。C++代码需要编译为动态链接库(DLL)。
2024-01-22 10:52:33 517
CUDA C编程权威指南
2019-05-02
CUDA并行程序设计 GPU编程指南
2019-05-02
linux下安装Anaconda3+pytorch+tensorboardX依赖包
2019-03-23
Quartz 示例代码
2017-05-02
Java反射机制代码
2017-05-01
java反射示例代码
2017-05-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人