深度学习
文章平均质量分 86
普通网友
这个作者很懒,什么都没留下…
展开
-
短视频技术与市场动态
短视频技术与市场动态原创 2022-05-09 05:39:28 · 862 阅读 · 0 评论 -
Transformer模型技术长文
Transformer模型技术长文可高效处理长文本的模型Longformer、和堪称“升级版”Transformer的BigBird模型,到底有什么区别?Transformer的其他各种变体(X-former)到底都长什么样、又有哪些新应用?由于Transformer模型的发展速度日新月异,一天一个样,哪怕是隔段时间回来研究,模型可能也已经多了不少。Transformer模型,是谷歌在2017年推出的NLP经典模型(Bert就是用的Transformer)。本文参考链接https://mp.w原创 2022-04-21 06:21:25 · 1914 阅读 · 0 评论 -
智能驾驶技术方向
智能驾驶技术方向自2013年,中科创达基于积累多年的操作系统优化技术、优秀的3D引擎、机器视觉、以及语音和音频技术,为汽车提供从操作系统开发、核心技术授权到应用定制的包括汽车娱乐系统、智能仪表盘、集成驾驶舱、ADAS和音频产品在内的整体智能驾驶舱软件解决方案和服务,为驾乘者提供丰富、先进的智能驾驶体验。目前全球采用中科创达智能驾驶舱产品和解决方案的公司超过100家。中科创达与全球领先的汽车电子上游供应商紧密合作,如Qualcomm、瑞萨、德州仪器、恩智浦、ST、QNX、Intel、百度、索尼等,为汽车厂原创 2021-09-07 06:08:32 · 545 阅读 · 0 评论 -
MaskRCNN网络结构
MaskRCNN网络结构MaskRCNN作为FasterRCNN的扩展,产生RoI的RPN网络和FasterRCNN网络。结构:ResNet101+FPN代码:TensorFlow+ Keras(Python)代码中将Resnet101网络,分成5个stage,记为[C1,C2,C3,C4,C5];这里的5个阶段分别对应着5中不同尺度的feature map输出,用来建立FPN网络的特征金字塔(feature pyramid).先通过两张MaskRCNN整体网络结构图,再附带一张绘制了stage1原创 2021-08-25 06:16:20 · 2123 阅读 · 0 评论 -
Yolov3网络架构分析
Yolov3网络架构分析上图三个蓝色方框内表示Yolov3的三个基本组件: CBL:Yolov3网络结构中的最小组件,由Conv+Bn+Leaky_relu激活函数三者组成。 Res unit:借鉴Resnet网络中的残差结构,让网络可以构建的更深。 ResX:由一个CBL和X个残差组件构成,是Yolov3中的大组件。每个Res模块前面的CBL都起到下采样的作用,因此经过5次Res模块后,得到的特征图是608->304->152->76->38->19大小。其原创 2021-08-04 12:17:21 · 2478 阅读 · 1 评论 -
稀疏矩阵理论与实践
稀疏矩阵理论与实践1.稀疏矩阵的优化 多线程。使用openmp或者mpi numanode awareness 特性。把稀疏矩阵的存储均匀地分配到两颗处理器各自的本地内存中,最大程度的利用内存带宽 利用硬件cache特性,对矩阵进行分块或矩阵的循环进行限制 利用pipeline,多流水线并行处理 自适应分块存储结构。由于稀疏矩阵的非零元分布不一定均匀,有的分块会非常稀疏,有的则会相对稠密。对于极稀疏的分块(非零元数量远小于行数),如果用和CSR相似的压缩行存储策略,则会浪费空间,所以用原创 2021-07-24 06:52:06 · 376 阅读 · 0 评论 -
3D卷积,代码实现
3D卷积,代码实现三维卷积:理解+用例-发现在图像卷积神经网络内核中,包含3D卷积及其在3D MNIST数据集上的实现。什么是卷积?从数学上讲,卷积是一种积分函数,表示一个函数g在另一个函数f上移动时的重叠量。直觉地说,卷积就像一个混合器,将一个函数与另一个函数混合在一起,在保留信息的同时,减少数据空间。在神经网络和深度学习方面:卷积是具有可训练参数的滤波器(矩阵/向量),用于从输入数据中提取低维特征。具有保留输入数据点之间的空间或位置关系的特性。卷积神经网络增强相邻层神经元之间的局部连接原创 2021-07-14 06:13:28 · 1960 阅读 · 0 评论 -
TVM如何训练TinyML
TVM如何训练TinyML机器学习研究人员和从业人员对“裸机”(低功耗,通常没有操作系统)设备产生了广泛的兴趣。尽管专家已经有可能在某些裸机设备上运行某些模型,但是为各种设备优化模型的挑战非常艰巨,通常需要手动优化设备特定的库。对于那些没有Linux支持的平台,不存在用于部署模型的可扩展解决方案。因此,为了定位新设备,开发人员必须实现一次性的定制软件堆栈,以管理系统资源和调度模型执行。机器学习软件的手动优化不是裸机设备领域独有的。实际上,对于使用其它硬件后端(例如GPU和FPGA)的开发人员来说,这已成原创 2021-05-24 06:19:14 · 497 阅读 · 0 评论 -
TVM代码生成codegen
TVM代码生成codegen硬件后端提供程序(例如Intel,NVIDIA,ARM等),提供诸如cuBLAS或cuDNN之类的内核库以及许多常用的深度学习内核,或者提供框架例,如带有图形引擎的DNNL或TensorRT,使用户以某种方式描述模型,实现高性能。此外,新兴的深度学习加速器还具有自己的编译器,内核库或runtime框架。当用户尝试在新的内核库或设备上工作时,必须学习新的编程接口。对统一编程接口的需求变得越来越重要,使所有用户和硬件后端提供程序都在同一页面上。为了与广泛使用的深度学习框架共享编原创 2021-05-24 05:50:25 · 633 阅读 · 0 评论 -
TVM量化小结手册
TVM量化小结手册文章目录• Offical Referenceso TVM quantization roadmap INT8 quantization proposal Quantization Story - 2019-09 Quantization Developmento Quantization Framework supported by TVM TF Quantization Related Pytorch Quantization Related MXNet原创 2021-05-23 20:10:58 · 417 阅读 · 0 评论 -
TVM图优化与算子融合
TVM图优化与算子融合计算图的定义Computational graphs: a common way to represent programs in deep learning frameworks对于图优化来说,有很多种图优化手段:Operator FusionConstant Parameter Path Pre-ComputationStatic Memory Reuse AnalysisData Layout TransformationAlterOpLayoutSimplif原创 2021-05-23 15:08:53 · 991 阅读 · 0 评论 -
桥接PyTorch和TVM
桥接PyTorch和TVM人工智能最引人入胜的一些应用是自然语言处理。像BERT或GPT-2之类的模型及其变体,可以获住足够多的文本信息。这些模型属于称为Transformers的神经网络类体系结构。 HuggingFace transformers library是实现最受欢迎的库之一。与已经高度优化的实现的卷积模型或LSTM相比,对于Transformers而言,情况并非如此。本文探索TVM如何填补空白。分两个步骤进行操作:• 首先,在TVM上,使用BERT inference推理和调优。•原创 2021-05-23 09:49:00 · 842 阅读 · 1 评论 -
cmodel模拟器开发
cmodel模拟器开发对于一个公司来说,产品的设计周期就是生命线,一般来说都会在设计功能级仿真的c-model后直接转向RTL设计。在目前的技术下,做cycle-by-cycle的设计和直接RTL设计的时间,感觉是差不太多的。nVidia同时维护functional and timing 的simulators。第一个model是否能跑流行的game也是一个问题。需要快速的开发,debug,不然就又到下一代产品了。维护一个好的team,做算法,做架构的,做电路的,做实现的,互相讨论,互相了解彼此的原创 2021-05-22 06:17:54 · 1611 阅读 · 1 评论 -
MXNet 图优化与算子融合
MXNet 图优化与算子融合Graph Optimization and Quantization based on subgraph and MKL-DNNPurposeMKL-DNN引入了两个高级特性:融合计算和降精度核。这些特性可以显著地提高各种深度学习拓扑在CPU上的推理性能。然而,MXNet由于图表示的局限性和以往缺乏图的优化,仍然不能从中受益。幸运的是,MXNet的新子图特性使这些改进现在成为可能。本文说明基于子图的解决方案,以利用MKL-DNN在MXNet中的功能。一般来说,解决方案将原创 2021-05-21 06:34:23 · 607 阅读 · 0 评论 -
台积电5nm光刻技术
台积电5nm光刻技术在IEEE IEDM会议上,台积电发表了一篇论文,概述了其5nm工艺的初步成果。对于目前使用N7或N7P工艺的客户来说,下一步将会采用此工艺,因为这两种工艺共享了一些设计规则。新的5nm制程使用了台积电的第五代FinFET技术,在7纳米基础上提供一个完整的工艺节点,并使用EUV极紫外光刻技术扩展到10多个光刻层,与7纳米相比减少了生产总步骤。关键数字如果只是来了解关键数字的,那答案就在这里。台积电表示,5nm EUV工艺使得晶体管密度增加到大致1.84倍,能效提升15%,功耗减少原创 2021-03-17 06:02:00 · 1276 阅读 · 0 评论 -
Halide应用开发
Halide应用开发基本原理1.1、介绍随着人工智能的普及,深度学习网络的不断涌现,为了让各硬件(CPU, GPU, NPU,…)能够支持深度学习应用,各硬件芯片需要软件库去支持高性能的深度学习张量运算。目前,这些高性能计算库主要由资深HPC工程师(高性能计算优化工程师)进行开发,为了加快开发进程,缩短深度学习应用落地周期,自动化算子优化是一个趋势。AutoKernel是由OPEN AI LAB提出的高性能算子自动优化工具,可以自动优化调度策略、生成底层优化代码,大幅减少各硬件芯片算子开发成本原创 2021-03-16 06:11:56 · 375 阅读 · 0 评论 -
Octave Convolution卷积
Octave Convolution卷积MXNet implementation 实现for:Drop an Octave: Reducing Spatial Redundancy in Convolutional Neural Networks with Octave ConvolutionImageNetAblation• Loss: Softmax• Learning rate: Cosine (warm-up: 5 epochs, lr: 0.4)• MXNet API: Symbol原创 2021-03-15 06:08:42 · 396 阅读 · 0 评论 -
Deformable 可变形的DETR
Deformable 可变形的DETRThis repository is an official implementation of the paper Deformable DETR: Deformable Transformers for End-to-End Object Detection.该存储库是论文《可变形DETR:用于端到端对象检测的可变形变压器》的正式实现。https://github.com/fundamentalvision/deformable-detrIntroducti原创 2021-03-15 05:56:29 · 1775 阅读 · 0 评论 -
使用TensorRT集成推理inference
使用TensorRT集成推理inference使用TensorRT集成进行推理测试。使用ResNet50模型对每个GPU进行推理,并对其它模型进行性能比较,最后与其它服务器进行比较测试。ResNet-50 Inferenceperformance: Throughput vs Batch size在每个GPU上使用不同的批处理大小(从1到32)运行带有预训练的ResNet50模型的吞吐量测试。图1显示了吞吐量(帧/秒)的结果。结果在gpu和潜伏期(在右纵轴上表示)上是一致的。Figu原创 2020-11-28 09:46:01 · 611 阅读 · 0 评论 -
cuDNN 功能模块解析
cuDNN 功能模块解析Abstract本cuDNN 8.0.4开发人员指南概述了cuDNN功能,如可自定义的数据布局、支持灵活的dimension ordering,striding,4D张量的子区域,这些张量用作其所有例程的输入和输出。这种灵活性可简单集成到任何神经网络实现中。要访问cuDNN API参考,请参阅cuDNNAPI参考指南。https://docs.nvidia.com/deeplearning/cudnn/api/index.html有关先前发布的cuDNN开发人员文档,请参原创 2020-11-28 08:58:14 · 1028 阅读 · 0 评论 -
TVM源码框架安装方法
TVM源码框架安装方法本文提供如何在各种系统上从零构建和安装TVM包的说明。它包括两个步骤: 首先从C++代码中构建共享库(linux的libtvm.so,macOS的libtvm.dylib和windows的libtvm.dll)。编程语言包的设置(例如Python包)。实现,请从下载页面下载tvm源代码。https://tvm.apache.org/downloadDevelopers: Get Source fromGithub还可以选择从github 上clo原创 2020-11-28 07:11:44 · 669 阅读 · 0 评论 -
在OpenShift平台上验证NVIDIA DGX系统的分布式多节点自动驾驶AI训练
在OpenShift平台上验证NVIDIADGX系统的分布式多节点自动驾驶AI训练自动驾驶汽车的深度神经网络(DNN)开发是一项艰巨的工作。本文验证了DGX多节点,多GPU,分布式训练在DXC机器人驱动环境中运行。还使用了一个机器人学习平台来驱动深度学习(11.3)的工作负载。目前,OpenShift 3.11已部署在许多大型GPU加速的自动驾驶(AD)开发和测试环境中。这里显示的方法同样适用于新的OpenShift版本,并且可以转移到其他基于OpenShift的集群中。DXC Robotic Dr原创 2020-11-23 09:04:51 · 437 阅读 · 0 评论 -
NVIDIA DRIVE AGX开发工具包
NVIDIA DRIVE AGX开发工具包英伟达自动驾驶™ AGX开发工具包提供了开发生产级自主车辆(AV)所需的硬件、软件和示例应用程序。NVIDIA DRIVE AGX系统建立在汽车产品级芯片上,具有开放的软件框架,并拥有大量汽车合作伙伴(包括产品级传感器供应商、汽车1级供应商)可供选择。DetailsDRIVE AGX Hardware OptionsDRIVE AGX Xavier™ Developer Kit (SKU 2000):Includes two Xavier Systems-原创 2020-11-23 08:14:57 · 1312 阅读 · 0 评论 -
大数据目标检测推理管道部署
大数据目标检测推理管道部署本文提供了一个用于对象检测的深度学习推理的概述。自主车辆软件开发需要大规模的数据、计算和算法创新,这些都是gpu实现的。一组神经网络构成了感知和决策系统的基础。神经网络的性能与数据量成比例地增加,并且需要基础设施来支持大规模的训练和推理。为了使自动驾驶汽车(AV)达到可接受的安全水平,他们必须接受大量真实驾驶数据的训练,这些数据包括汽车每天可能遇到的各种情况。这些训练场景由安装有多个传感器的车队收集,每天行驶小时,产生数PB的数据。这些数据必须加以标注和处理,以便进行全面的A原创 2020-11-23 07:49:41 · 287 阅读 · 1 评论 -
使用NVIDIA GRID vPC支持视频会议和算力工具
使用NVIDIA GRID vPC支持视频会议和算力工具随着2020年的发展,远程工作解决方案已成为许多人的新常态。企业正在寻找行之有效的解决方案,如虚拟桌面基础设施(VDI),以使他们的团队能够在任何地方安全地工作。然而,最新的算力和视频会议应用程序需要更强大的台式机来确保良好的用户体验。借助NVIDIA GRID vPC,它可以经济高效地将虚拟化扩展到每个员工,其性能可与物理PC相媲美。基于NVIDIA vGPU技术的GRID vPC能够跨多个虚拟机(VM)共享同一个GPU,为知识型员工提供本机PC原创 2020-11-21 12:04:51 · 525 阅读 · 0 评论 -
使用NVIDIA A100 TF32获得即时加速
使用NVIDIA A100 TF32获得即时加速NVIDIA A100带来了我们公司历史上最大的单代性能增长。这是一个新的结构创新,这是一个多功能的支持,这是一个多功能的结构支持。TF32是用于深度学习训练的绝佳精度,因为它结合了FP32的范围和FP16的精度,与上一代的FP32精度相比,可提供高达5倍的加速。在这篇文章中,将简要介绍TF32的内部工作原理,并讨论显示其在一系列使用和网络中的影响的性能数据。TF32 at a glance浮点数据表示十进制数,如硬件中使用符号位(正数或负数)、指数(小原创 2020-11-21 11:25:34 · 1360 阅读 · 0 评论 -
使用PCAST检测散度以比较GPU和CPU结果
使用PCAST检测散度以比较GPU和CPU结果并行编译器辅助软件测试(PCAST)是英伟达HPC FORTRAN、C++和C编译器中的一个特性。PCAST有两个用例。一个新的处理器或新的编译程序的部分或新的时间标志首先被编译。您可能需要测试新库是否会产生相同的结果,或者测试添加OpenMP并行、启用自动矢量化(-Mvect=simd)或从X86系统移植到OpenPOWER或Arm的安全性。这个用例的工作原理是在需要比较中间结果的地方向应用程序添加pcast_compare调用或compare指令。在初始运原创 2020-11-21 10:54:25 · 289 阅读 · 0 评论 -
用NVIDIA NsightcComputeRoofline分析加速高性能HPC的应用
用NVIDIA NsightcComputeRoofline分析加速高性能HPC的应用编写高性能的软件不是一件简单的任务。当有了可以编译和运行的代码之后,当您尝试并理解它在可用硬件上的执行情况时,将引入一个新的挑战。不同的平台,无论是cpu、gpu还是其他平台,都会有不同的硬件限制,比如可用内存带宽和理论计算限制。Roofline性能模型帮助您了解应用程序使用可用硬件资源的情况,以及哪些资源可能会限制应用程序的性能。在劳伦斯伯克利国家实验室,国家能源研究科学计算中心(NERSC)和计算研究部(CRD)一直原创 2020-11-21 09:11:57 · 805 阅读 · 0 评论 -
NSight Compute 用户手册(中)
NSight Compute 用户手册(中)NVIDIA Nsight Compute支持密码和私钥身份验证方法。在此对话框中,选择身份验证方法并输入以下信息:密码IP/主机名:目标设备的IP地址或主机名。用户名:用于SSH连接的用户名。Password:用于SSH连接的用户密码。端口:用于SSH连接的端口。(默认值为22。)部署目录:目标设备上用于部署支持文件的目录。指定的用户必须对此位置具有写入权限。私钥IP/主机名:目标设备的IP地址或主机名。用户名:用于SSH连接的用户名。S原创 2020-11-08 17:18:15 · 1441 阅读 · 0 评论 -
NSight Compute 用户手册(上)
NSight Compute 用户手册(上)非交互式配置文件活动从NVIDIA Nsight Compute启动目标应用程序启动NVIDIA Nsight Compute时,将出现欢迎页面。单击快速启动打开连接对话框。如果未显示“连接”对话框,则可以使用主工具栏上的“连接”按钮打开它,只要当前未连接。从Connection下拉列表中选择左侧的目标平台和本地主机。然后,填写launch details并选择launch。在“活动”面板中,选择“概要文件”活动以启动预配置概要文件会话的会话,并启动命令行探原创 2020-11-08 16:55:52 · 1568 阅读 · 0 评论 -
NVIDIA Nsight Systems CUDA 跟踪
NVIDIA Nsight Systems CUDA 跟踪CUDA跟踪NVIDIA Nsight Systems能够捕获有关在概要过程中执行CUDA的信息。可以在报告的时间轴上收集和呈现以下信息:CUDAAPI跟踪-跟踪应用程序进行的CUDA运行时和CUDA驱动程序调用。CUDA运行时调用通常以CUDA前缀开始(例如,cudaLaunch)。CUDA驱动程序调用通常以cu前缀开始(例如,cuDeviceGetCount)。跟踪主机上发生的操作(例如,对内存的跟踪)和对内存执行的拷贝。在使用CU原创 2020-11-08 09:32:26 · 1837 阅读 · 0 评论 -
用TensorRT针对AArch64用户的交叉编译示例
用TensorRT针对AArch64用户的交叉编译示例以下介绍如何在x86_64linux下为AArch64 QNX和Linux平台交叉编译TensorRT示例。2.1. Prerequisites本节提供分步说明,以确保满足交叉编译的最低要求。Procedure为对应的目标安装CUDA跨平台工具包,并设置环境变量CUDA_INSTALL_DIR。$ export CUDA_INSTALL_DIR=“your cuda install dir”Where CUDA_INSTALL_DIR原创 2020-11-04 08:19:25 · 1699 阅读 · 0 评论 -
Recommenders with TensorRT
Recommenders with TensorRT推荐系统用于向社交网络、媒体内容消费和电子商务平台的用户提供产品或媒体推荐。基于MLP的神经协作滤波器(NCF)推荐器使用一组完全连接或矩阵乘法层来生成推荐。 TensorRT推荐人示例的一些示例包括:Movie Recommendation Using Neural Collaborative Filter (NCF)Movie Recommendation Using MPS (Multi-Process Service原创 2020-11-04 08:01:09 · 254 阅读 · 0 评论 -
Technology Document Guide of TensorRT
Technology Document Guide of TensorRTAbstract本示例支持指南概述了GitHub和产品包中包含的所有受支持的TensorRT 7.2.1示例。TensorRT示例在推荐程序、机器翻译、字符识别、图像分类和对象检测等领域有特殊帮助。 有关TensorRT开发文档,请参阅TensorRT归档文件。Introduction下面的示例展示了如何在许多用例中使用TensorRT,同时突出显示接口的不同功能。1.1. Getti原创 2020-11-04 06:50:48 · 234 阅读 · 0 评论 -
Python API vs C++ API of TensorRT
Python API vs C++ API of TensorRT本质上,C++ API和PythonAPI应该在支持您的需求方面接近相同。pythonapi的主要优点是数据预处理和后处理都很容易使用,因为您可以使用各种库,如NumPy和SciPy。在安全性很重要的情况下,例如,在汽车中,C++ API应该被使用。有关C++ API的更多信息,请参见使用C++ API。有关如何使用Python优化性能的更多信息,请参阅how Do I optimize My Python performance?来原创 2020-11-03 16:10:33 · 925 阅读 · 1 评论 -
TensorRT PoolingLayer
TensorRT PoolingLayerIPoolingLayer在通道中实现池。支持的池类型有maximum、average和maximum average混合。Layer Description: 2D pooling层描述:二维池用2D滤波器计算a维张量a上的池,生成B维的张量B。B的维数取决于a的维数、窗口大小r、对称填充p和步长s,因此:PoolingType::kMAXMaximum over elements in window.PoolingType::kAVERAGEAv原创 2020-11-03 13:53:04 · 351 阅读 · 0 评论 -
TensorRT IRNNv2Layer
TensorRT IRNNv2LayerIRNNv2Layer层实现递归层,如递归神经网络(RNN)、门控递归单元(GRU)和长短期记忆(LSTM)。支持的类型有RNN、GRU和LSTM。它执行一个递归操作,其中操作由几个著名的递归神经网络(RNN)“单元”之一定义。图层说明该层接受输入序列X,初始隐藏状态H0,如果该单元是长短期存储器(LSTM)单元,则为初始单元状态C0,并产生一个输出Y,该输出Y表示跨T个时间步计算的最终RNN“子层”的输出(见下文)。可选地,该层还可以产生表示最终隐藏状态的输出原创 2020-11-03 13:34:00 · 434 阅读 · 0 评论 -
NVIDIA® TensorRT™ supports different data formats
NVIDIA® TensorRT™ supports different data formatsNVIDIA®TensorRT公司™ 支持不同的数据格式。需要考虑两个方面:数据类型和布局。 数据类型格式数据类型是每个单独值的表示。它的大小决定了值的范围和表示的精度;它们是FP32(32位浮点或单精度)、FP16(16位浮点或半精度)、INT32(32位整数表示)和INT8(8位表示)。布局格式布局格式决定了存储值的顺序。通常,批处理维度是最左边的维度,其他维度是指图像中每原创 2020-11-03 12:59:35 · 155 阅读 · 0 评论 -
TensorRT 7.2.1 开发概要(下)
TensorRT 7.2.1 开发概要(下)1.2. Where Does TensorRT Fit?一般来说,开发和部署深度学习模型的工作流要经过三个阶段。Phase 1 is trainingPhase 2 is developing a deployment solution, andPhase 3 is the deployment of that solutionPhase 1: Training在训练阶段,数据科学家和开发人员将首先陈述他们想要解决的问题,然后决定他们将使用的精确输原创 2020-11-03 11:47:11 · 416 阅读 · 1 评论 -
TensorRT 7.2.1 开发概要(上)
TensorRT 7.2.1 开发概要(上)Abstract这个TysRR7.2.1开发者指南演示了如何使用C++和Python API来实现最常用的深层学习层。它展示了如何使用深度学习框架构建现有模型,并使用该模型使用提供的解析器构建一个TensorRT引擎。开发指南还提供了常见用户任务的分步指令,例如创建TensorRT网络定义、调用TensorRT builder、序列化和反序列化,以及如何用数据给引擎提供数据并执行推理;同时使用C++或Python API。有关先前发布的TensorRT开发人原创 2020-11-03 11:06:28 · 386 阅读 · 0 评论