最近遇到很多使用NVIDIAGPU产品和SDK学习DeepLearning的同学,经常看到这几个词,很容易混淆。今天我们要舔一下。在讲这些概念之前,我们先来回顾一下什么叫做深度学习(DeepLearning)。DL-DeepLearning深度学习是机器学习的一个分支,其特点是使用了几个,有时是数百个功能层。深度学习已经从能够进行线性分类的感知器发展到添加层来逼近更复杂的函数。加入卷积层,提高了小图的处理性能,可以识别一些手写数字。现在,随着大型图像数据集的可用性和高性能并行计算卷积网络正在应用于大规模图像,使以前无法实现的广泛应用成为可能。在这里,我们看到了深度学习的一些实际应用是如何被使用的。深度学习擅长的一个领域是图像分类和目标检测,可用于机器人和自动驾驶汽车等应用。对于机器人来说,物体检测很重要,因为它使机器人能够智能地使用视??觉信息与环境进行交互。深度学习还用于人脸识别,可以通过视觉验证个人的身份信息,常见于智能手机。但深度学习不仅仅是图像处理,它还可以用于自然语言处理,比如智能音箱和语音辅助搜索。其他应用包括医学图像、地震图像的解释和内容推荐系统。许多应用程序可以利用云的强大性能,但有些应用程序不能。例如,某些应用程序需要低延迟,例如机器人或自动驾驶汽车,其中响应时间和可靠性至关重要。还有一些需要高带宽的应用程序,例如视频分析,在这些应用程序中,我们不断地将数据从多个摄像头传输到远程服务器是不切实际的。其他应用程序(例如医学成像)涉及患者数据的隐私。此外,对于无人驾驶飞机,无法使用云端。对于这些应用,我们需要在传感器本身上或附近进行处理,这就是为什么NVIDIAJetson平台是一个很好的边缘计算平台。Jetson平台的典型工作流程是在GPU服务器或工作站上进行训练,然后在Jetson上对训练好的数据模型进行边缘推理。Nvidia通过为所有主要的深度学习软件框架集成CUDA加速,使训练模型变得简单。这些软件框架简化了开发和部署深度学习应用程序的过程。这些框架中的大多数都有细微的差别,但每个框架通常都提供构建神经网络的方法和训练神经网络的算法。尽管有许多不同的框架,但每个框架都有自己的优点。TF-TensorFlowTensorflow是深度学习框架之一。TensorFlow是一种流行的深度学习框架,由Google开源。在TensorFlow中,神经网络被定义为由一系列相关操作组成的图。这些操作可能是卷积、矩阵乘法或任何其他转换每一层元素的操作。虽然网络层中的参数在训练过程中会发生变化,但网络结构不会。在典型的工作流程中,开发人员通过在Python中调用TensorFlowAPI来定义计算图。Python调用创建了一个完全定义神经网络的图形数据结构。然后,开发人员可以使用定义良好的图结构来对训练或推理过程进行编程。TLT-TransferLearningToolkit除了定义新的神经网络外,还可以很容易地重用已经由其他开发人员或研究人员定义和训练的现有网络,这些所谓的预训练网络可以按原样使用并重用于新的任务,称为迁移学习。在迁移学习的情况下,开发人员将从保存的文件中加载预先训练的参数,然后使用新数据集运行训练过程,这种技术通常会产生更高的准确性,因为训练样本比从头开始训练少网络。NVIDIA推出的NVIDIATransferLearningToolkit(TLT)专注于“为智能视频分析和计算机视觉创建准确高效的AI模型,而无需AI框架方面的专业知识。像零编码专业人士一样进行开发。”迁移学习工具包(TLT)是一个基于Python的AI工具包,用于采用专门构建的预训练AI模型并使用您自己的数据对其进行自定义。迁移学习将学习到的特征从现有的神经网络提取到新的神经网络。当创建大型训练数据集不可行时,通常会使用迁移学习。开发智能视觉AI应用程序和服务的开发人员、研究人员和软件合作伙伴可以使用自己的数据来微调预训练模型,而无需从头开始训练。针对特定用例(如建筑物占用分析、交通监控、停车管理、车牌识别、异常检测等),NVIDIA为您准备了预训练模型,避免了从创建和优化模型的耗时过程从头开始,从而使您可以将工程工作时间从80周减少到大约8周,从而在更短的时间内实现更高的吞吐量和准确性。通过使用DeepStream部署视觉AI应用程序,您可以解锁更高的流密度并进行大规模部署。预训练模型可加快AI训练过程,并降低与大规模数据收集、标记和从头开始训练模型相关的成本。NVIDIA专门构建的预训练模型具有高生产质量,可用于各种用例,例如人数统计、车辆检测、交通优化、停车管理、仓库运营等。TRT-TensorRT网络完成后,可以直接部署模型。但是,如果使用tensorRT优化模型,通常会有显着的性能优势。由英伟达提供,TensorRT是一个优化神经网络推理的加速器。切记:与tensorflow等框架不同,tensorRT不是用来训练深度学习模型的,而是在训练完成后,使用tensorRT优化模型进行部署。转换过程重建模型以利用高度优化的GPU操作,从而减少延迟并提高吞吐量。您可以使用此视频了解如何使用TensorRT部署模型DS-Deepstream。深度学习是全球视频分析应用增长的驱动力。越来越多的开发人员在基于计算机视觉的应用程序中使用深度学习。到2020年,全球将激活10亿个摄像头,这是数量惊人的原始传感器数据。有了这些数据,人们、社会团体和公司正在构建强大的应用程序,这些应用程序使用摄像头和流分析来做一些事情,例如机场的出入境管理、制造中心和工厂的生产线管理、停车场管理和客流分析应用程序,这些对建设智慧城市非常重要。零售分析是另一个非常重要的使用场景。对于店铺来说,可以帮助他们了解顾客想买什么……还有其他的行业应用,需要用视频分析来给人更全面的洞察。NVIDIADeepstreamSDK是一个通用的Steaming分析框架,允许您从各种传感器构建自己的应用程序。它实际上是一个构建在GStreamer之上的SDK,GStreamer是一个开源多媒体分析框架。NVIDIA将Deepstream作为SDK提供,旨在加速流式视频分析所需的完整堆栈。它是一个模块化的SDK,允许开发人员为智能视频分析(IVA)构建高效的管道。您在这里看到的是一个典型的IVA管道,使用Deepstream插件构建,它支持插件使用的底层硬件、管道的每个功能,并利用硬件架构在没有任何内存副本的情况下移动数据。当我们开发人工智能应用程序时,上述概念可以相互结合。例如:TensorFlow开发的深度神经网络可以部署在NVIDIA的边缘设备上,使用TensorRT可以提高推理速度,降低延迟。边缘计算笔记(三):从Tensorflow生成TensorRTEngine的方法(完)结合NVIDIATransferLearningToolkit(TLT)使用生产级AI模型,再使用DeepStreamSDK轻松部署生成的TLT优化模型进行开发a与视频处理相关的智能应用程序。NVIDIADeepstream4.0手记(四):工业检测场景应用希望本文能对您有所启发。
