自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 分布式深度学习中的数据并行和模型并行

对于深度学习模型的预训练阶段,海量的训练数据、超大规模的模型给深度学习带来了日益严峻的挑战,因此,经常需要使用多加速卡和多节点来并行化训练深度神经网络。目前,数据并行和模型并行作为两种在深度神经网络中常用的并行方式,分别针对不同的适用场景,有时也可将两种并行混合使用。本文对数据并行和模型并行两种在深度神经网络中常用的并行方式原理及其通信容量的计算方法进行介绍。

2024-01-23 09:23:35 5608 28

原创 扩散模型微调方法/文献综述

近年来,扩散模型近年来取得了迅速的发展。扩散模型被广泛应用于文本到图像生成、文本到视频生成、点云完成和生成等各种生成式任务上。然而,从头训练一个扩散模型往往涉及巨大的计算成本和时间投入,限制了其在实际应用中的广泛使用。为了克服这一挑战,研究者们开始关注如何在现有的通用扩散模型基础上,通过微调的方式,将模型专门适应特定的下游任务。微调的思想源于对预训练模型知识的有效重用,通过在具体任务上进行有针对性的调整,以适应不同的应用场景。

2024-01-15 10:15:17 3033 52

原创 分布式训练通信NCCL之Ring-Allreduce详解

随着Chat GPT、文生图、多模态等模型的发展,海量的训练数据、超大规模的模型给深度学习带来了日益严峻的挑战,因此,经常需要使用多加速卡和多节点来并行化训练深度神经网络。目前,数据并行和模型并行作为两种在深度神经网络中常用的并行方式,分别针对不同的适用场景,有时也可将两种并行混合使用。数据并行是在不同设备上放置完整的模型,然后将数据划分在每个设备并行计算。

2023-12-26 10:25:38 8400 3

原创 Vision Transformer模型架构详解

2019年开始,自然语言处理(NLP)领域抛弃了循环神经网络(RNN)序列依赖的问题,开始采用Attention is All you need的Transformer结构[1],其中的Attention是一种可以让模型专注于重要的信息并能够充分学习和吸收的技术。在NLP领域中,伴随着各种语言Transformer模型的提出使得多项语言处理任务的精度和模型深度开始飞速提升。由于基于Transformer的预训练语言模型非常成功,研究者开始探索其在视觉领域的应用。

2023-12-12 16:25:07 8600 1

原创 神经网络常用归一化和正则化方法解析(一)

神经网络中的归一化和正则化是为了提高训练稳定性、加速收敛、减少过拟合等目的而采取的一系列技术手段,本文对常见的归一化方法如,批归一化BN、层归一化LN、实例归一化IN、组归一化GN进行介绍。

2023-12-05 09:59:31 5170 2

原创 卷积算子参数量和计算量分析(普通卷积、深度可分离卷积、分组卷积)

在用于计算机视觉任务的深度神经网络模型中,卷积算子作为一种重要的特征提取方式被广泛应用,本文针对常见的卷积算子参数量和计算量的计算方法进行分析,主要包括普通卷积、深度可分离卷积、分组卷积。

2023-11-13 11:19:33 8216 3

原创 硬件加速器及其深度神经网络模型的性能指标理解

现如今,深度神经网络模型和硬件加速器,如GPU、TPU等的关系可谓是“不分彼此”,随着模型参数的增加,硬件加速器成为了训练、推理深度神经网络不可或缺的一个工具,而近年来硬件加速器的发展也得益于加速人工智能模型的训练和推理。作为在人工智能领域最重要的两个基件,即模型(算法)和硬件(算力)(人工智能三个核心要素:算法、算力、数据),我们有必要去理解每种基件的评价指标以及指标的意义,才能在应用的过程中去选择适合的模型和硬件,而不是去挨个尝试!

2023-11-02 09:19:09 8684 6

原创 基于CUDA的Transformer Encoder并行化

本次实验为基于CUDA的并行化推理设计,本文首先根据其结构对其进行划分,将大问题转化为小问题,然后逐次编写CUDA C代码进行解决,具体的,本文首先将分为Layer NormMLP Block和残差结构四个部分,接着又对MLP Block进行了细分,对于的并行化,将其分成了六个部分,分别为liner_1(计算,得到的b1B×197×2304)为结果)、Permute_1(将b1B×197×2304)划分得到qkv3×B×8×。

2023-10-25 09:20:29 10687 3

原创 英特尔oneAPI——统一编程模型和跨架构编程语言DPC++详细介绍与模板匹配算法实例

本文对oneAPI进行了详细的介绍,包括其出现的背景、模型架构(开发式规范、SYCL、DPC++、oneAPI工具包)。然后对基于跨架构的DPC++编程语言进行详细介绍,包括其四大编程模型、编程流程、简单的矩阵乘法示例。最后,本文介绍了模板匹配算法的基本原理,并基于oneAPI进行了编程实现。

2022-03-06 15:31:35 17474 18

原创 目标检测常用评价指标详解

目标检测是计算机视觉领域中的一项重要任务,旨在从图像或视频中检测并定位图像中存在的目标物体,并识别它们属于哪个类别。而目标检测任务中的评价指标对于评估算法性能、比较不同方法以及指导模型优化具有重要性,因此本文对目标检测任务中的相关评价指标进行介绍。

2024-05-07 08:43:01 3435 1

原创 基于K-means和FCM算法的合成纹理图像及SAR图像的分割

合成纹理图像和SAR(Synthetic Aperture Radar,合成孔径雷达)图像的分割任务在遥感图像处理和计算机视觉领域中具有重要的应用价值。例如对于环境监测、资源管理、灾害应对、国防安全等方面。本文主要介绍基于K均值和模糊C均值算法的合成纹理图像及SAR图像的分割小实例。

2024-04-23 09:58:39 1876 1

原创 基于SLIC超像素和BDSCAN算法的合成纹理图像及SAR图像的分割

合成纹理图像和SAR(Synthetic Aperture Radar,合成孔径雷达)图像的分割任务在遥感图像处理和计算机视觉领域中具有重要的应用价值。例如对于环境监测、资源管理、灾害应对、国防安全等方面。本文主要介绍基于SLIC超像素和BDSCAN算法的合成纹理图像及SAR图像的分割小实例。

2024-04-17 10:59:28 1320

原创 数据挖掘及其近年来研究热点介绍

数据挖掘技术通过从数据中提取有价值的信息和知识,帮助人们更好地理解和利用数据,例如发现隐藏在数据背后的模式和规律、提供决策支持和预测能力、优化业务流程和资源利用、改进产品和服务质量以及识别欺诈和风险等,推动了现代社会的发展和进步,对于企业、政府、科研机构等各个领域都具有重要的意义。本文对数据挖掘技术的应用和挑战以及近年来研究热点进行简单介绍。数据挖掘是通过分析每个数据,从大量数据中寻找其规律的技术,主要有数据准备、规律寻找和规律表示三个步骤。

2024-04-08 13:09:54 2451 1

原创 基于SVM的PLOSAR图像分类

支持向量机(SVM)是一种强大的监督学习算法,常用于分类和回归分析。在POLSAR图像分类中,SVM可以被有效地应用。支持向量机具有对高维数据的处理能力、对于非线性分类问题的适应性、泛化能力强等优点,本文为基于SVM实现PLOSAR图像分类的一个小实例。

2024-03-29 09:01:57 1873 26

原创 基于K-近邻的PLOSAR图像分类

K-近邻(KNN)是一种简单但有效的机器学习算法,可用于图像分类。POLSAR(极化合成孔径雷达)是一种雷达成像技术,提供了极化信息,适用于地物分类和识别。将KNN应用于POLSAR图像分类具有简单易实现、多类别适用、无需假设数据分布、基于邻近性进行分类、对噪声鲁棒以及可用于增量学习等优点,本文为基于K-近邻实现PLOSAR图像分类的一个小实例。

2024-03-25 12:12:36 1119

原创 Visual grounding-视觉定位任务介绍

为了解决多模态人工智能系统中语言理解与视觉感知之间的交互与融合问题,以实现更智能、更灵活的多模态数据处理和理解能力。视觉定位通过将自然语言描述与图像内容相匹配,实现了对图像中对象、场景和行为的准确理解,为图像标注、视觉问答等任务提供了基础。本文对视觉定位的常用方法进行简单介绍。

2024-03-12 10:14:02 4509 3

原创 神经网络推理优化方法总结

随着人工智能的快速发展,神经网络模型的规模和复杂度不断增长。这些巨大的模型参数量给模型的部署带来了巨大的挑战。传统的神经网络模型往往需要大量的计算资源和时间来完成推理任务,这在实时性要求较高的场景下显得尤为不利。针对这一挑战,本文将介绍一系列常用的推理优化方法,旨在实现神经网络模型的高效、实时、准确部署。这些优化方法涵盖了模型压缩、模型剪枝、量化、硬件加速等多个方面。通过这些方法,可以在不损失模型性能的前提下,显著减少模型的参数量和计算复杂度,从而提高模型的部署效率和性能。

2024-03-05 14:26:46 1717 2

原创 详解顺序结构滑动窗口处理算法

在数据结构和算法方面的面试中,数组和字符串的相关问题往往是一个重要的考察点。面试官通常会测试面试者在处理这些基础数据结构时的熟练程度,因为这直接关系到解决实际问题的能力。在数组和字符串的考察中,双指针和滑动窗口以及排序算法、字符串的处理API成为关键技巧,本文主要对滑动窗口进行简单介绍。

2024-02-27 08:44:03 1984 5

原创 基于Transformer结构的扩散模型综述

近年来,计算机科学领域的生成式扩散模型迅猛发展,成为人工智能领域的热门研究方向。这一类模型,如GPT系列,以其强大的语言理解和生成能力,成功地应用于自然语言处理、文本生成、机器翻译等多个领域。扩散模型通常使用一个基于卷积的U-Net网络用于学习噪声并对噪声进行预测,近一年来,越来愈多的研究开始探索基于Transformer的噪声预测网络,本文主要介绍了近年来的一些经典工作。

2024-02-02 11:26:52 2500 5

原创 详解顺序结构双指针处理算法

在数据结构和算法方面的面试中,数组和字符串的相关问题往往是一个重要的考察点。面试官通常会测试面试者在处理这些基础数据结构时的熟练程度,因为这直接关系到解决实际问题的能力。在数组和字符串的考察中,双指针和滑动窗口以及排序算法、字符串的处理API成为关键技巧,本文主要对双指针进行简单介绍。

2024-01-28 15:23:46 1343

原创 轻量化/高效扩散模型文献综述

近年来,计算机科学领域的生成式扩散模型迅猛发展,成为人工智能领域的热门研究方向。这一类模型,如GPT系列,以其强大的语言理解和生成能力,成功地应用于自然语言处理、文本生成、机器翻译等多个领域。然而,随着模型规模的不断扩大和任务复杂性的提高,扩散模型在实时推理上面临着巨大的计算量挑战。本文主要介绍了应对这一挑战近年来的一些经典工作。

2024-01-19 10:16:05 2614 7

原创 神经网络常用归一化和正则化方法解析(二)

神经网络中的归一化和正则化是为了提高训练稳定性、加速收敛、减少过拟合等目的而采取的一系列技术手段,本文对常见的正则化方法L1正则化、L2正则化、dropout 和 Early Stopping进行介绍。

2023-12-08 10:06:43 5762 4

原创 图像分类神经网络综述

长期以来,计算机视觉一直是人工智能研究的关键领域之一。早期的图像处理方法通常基于手工设计的特征提取器,这在处理复杂任务时面临一些限制,随着深度学习的崛起,特别是深度神经网络的发展,计算机视觉领域发生了革命性的变化。深度学习的优势在于其能够学习从原始数据中提取有用特征的能力,而无需手动设计特征提取器,本文主要介绍在深度学习发展史中用于图像分类任务的经典神经网络。

2023-11-28 09:16:23 17541 3

原创 神经网络常用激活函数详解

神经网络的激活函数是在每个神经元的输出上应用的非线性函数。激活函数的引入是为了给神经网络引入非线性特性,从而增强网络的表达能力,使其能够学习和表示更为复杂的关系。这篇文章主要介绍一些常见的神经网络激活函数,包括sigmoid、tanh、ReLU、Leoky ReLU、ReLU6和Softmax。

2023-11-22 14:01:10 7598 4

原创 全连接层及其注意力attention的参数量和计算量分析

本篇文章对liner和Multi-Head Attention以及其他常见结构的参数量和计算量进行分析,以及对自动计算模型参数量和计算量的工具库ptflops进行简单介绍。

2023-11-20 10:02:41 8569 5

原创 AMD HIP并行编程语言及其矢量相加实例——一文带你快速入门

AMD 的 GPU 早期主要使用OpenCL来开发,后来为了提高开发效率,借鉴了很多 CUDA 的设计理念,推出了支持和 OpenCL 编程的ROCm 框架。ROCm在设计风格上类似于CUDA,提供了非常丰富的开发工具,包括 HCC编译器,性能分析工具rocProf,数学库如rocBLAS、rocFFT、rocSOLVER、rocSPARSE、rocRand、深度学习库MIopen等。

2023-10-30 16:09:55 8271 4

原创 CUDA、HIP、OpenCL和oneAPI编程模型总结及比较

本文对近年来多核处理器、众核处理器以及并行编程模型的发展历程、研究现状和发展趋势进行概述。对比了各个编程模型的特点。硬件处理器从最初的单核到多核、众核再到现在为了满足不同应用和研究的异构体系CPU+GPU或CPU+AI加速卡等,处理器体系结构不断的发生着变化,同时从近年来不断出现的并行编程工具、人工智能专用优化技术来说,处理器走向专用化、简单化。功耗问题。

2023-10-22 13:42:00 7138 3

原创 OpenCL矩阵乘法

OpenCL (Open Computing Language) 是由Khronos Group制定的开放式并行计算标准。它允许开发者利用异构计算平台上的多核CPU和GPU等处理器进行并行计算。OpenCL可以用于各种应用领域,包括科学计算、图形处理、机器学习等。

2023-10-19 09:11:08 3948 6

原创 CUDA矩阵乘法

从CUDA的实验结果可以看到,并行CUDA程序实现的矩阵乘法相比于串行的串行有了很大的速度提升,而且我们观察到,对于不同阶数的矩阵计算来说,较小的矩阵加速比往往比较大矩阵的加速比要低,这可能是因为计算任务小,GPU资源利用率不高,相较于计算来说,可能内核启动、分配内存所占时间的比重更大。t=N7T8。

2023-10-16 09:24:18 2486 3

原创 OpenCL并行编程语言及其矢量相加实例——一文带你快速入门

该模型定义了执行核对象所用的存储结构,是独立于设备平台实际硬件架构的一种抽象模型。在异构平台上的存储对象主要分为两类,包括主机上的内存模型和设备上的存储模型,而。程序实现过程中,用户只需考虑抽象的存储模型,而无需考虑具体硬件上的映射关系。仅仅只支持自家的加速卡,对其他显卡不支持,为了应对在不同硬件平台上使用一种并行编程标准,来映射与此节点相对应的数据元素,所有数据元素执行相同的操作指令,包括。,两者的网格划分形式基本一致,只是在名称上有所区别,在学习。,该空间内的每个处理单元并行执行核程序的一个实例,在。

2023-10-11 20:03:24 6079 1

原创 NVIDIA CUDA并行编程语言及其矢量相加实例——一文带你快速入门

CUDA的软件堆栈由以下三层构成:如图1所示,CUDA的核心是CUDA C语言,它包含对C语言的最小扩展集和一个运行时库,使用这些扩展和运行时库的源文件必须通过nvcc编译器进行编译。图1 CUDA软件栈示意图CUDA C语言编译得到的只是GPU端代码,而要管理分配GPU资源,在GPU上分配显存并启动内核函数,就必须借助CUDA运行时的API或者CUDA驱动APIDriver API)来实现。在一个程序中只能使用CUDA运行时API与。

2023-10-10 19:36:56 5337 1

原创 基于OpenMP和PThread的多线程矩阵乘法及分析

本文主要记录了基于OpenMP和PThread实现不同线程、不同矩阵大小的矩阵乘法实例及其分析,代码注释比较详细,以供参考。

2023-10-05 21:19:28 2682

EDA与嵌入式课程设计(自动报警装置 )

包含说明书一份

2023-11-17

C程序设计课程设计任务书-学生宿舍管理系统(说明书+源代码)

设计“学生宿舍管理系统”,使之能提供以下功能: (1) 系统以菜单方式工作; (2) 入住学生信息录入功能; (3) 宿舍当前信息查询; (4) 查询、排序功能:按空余床位信息实现查询; (5) 入住信息的删除。

2023-11-17

2023年全国大学生数学建模高教杯C题国二论文和代码(原创首发)

2023年高教杯C题word、pdf和支撑材料,原创论文首发(国二),题目为基于BP神经网络及非线性规划的商超补货和定价决策,有问题欢迎私聊和指正。

2023-11-16

2023年深圳杯数学建模论文A题原创首发

2023年深圳杯数学建模论文,影响城市居民身体健康的因素分析,包括word版论文和代码附录

2023-11-02

免费 2023年“华数杯”全国大学生数学建模竞赛一等奖论文

2023年“华数杯”全国大学生数学建模竞赛一等奖论文

2023-11-02

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除