端侧训练和推理

背景

深度学习已经在生活的方方面面被应用和重视。目前如何将神经网络部署到端侧,一般的模式是“云侧训练,端侧推理”。也就是说,把用户的数据传到云侧上面,云侧基于获得的多数据进行训练模型,训练好的模型直接下放到端侧,然后端侧利用训练好的模型直接进行推理。由于云端数据中心有更高的处理能力和更宽松的能耗限制,所以这种做法是更容易实践的。但这样的做法存在一个比较重要的问题:隐私问题。端设备收集的使用数据常常带有用户隐私:例如邮件App 得到的用户回复文本都可能含有用户私人信息。近几年的一系列事件唤起了用户对隐私的慎重态度:欧盟发布了GDPR 法案,限制科技公司从用户收集数据;

边缘训练

边缘训练,就是端设备上部署训练。这样做由以下几个好处。首先,它有利于保护隐私。训练过程中数据从未离开端设备,用户的接受度更高。其次,开发者可以在根据用户变化的实际数据,不断微调自己的模型,实时让模型自适应用户。除此之外,因为端设备不再需要上传数据、等待云端调度任务训练模型、下载更新后的结果这个延迟。一些数据传送的带宽限制也可以被消除。

主流深度学习框架

要说部署神经网络的训练和推理,就得依赖深度学习框架。目前已有的通用深度学习框架已不下于数十种。其中比较有影响力的如TensorFlow, PyTorch, MXNet等。此外,还有针对特定使用环境所开发出的特殊的深度学习框架,如Nvidia针对Nvidia图形处理器上执行推理任务所开发的TensorRT,谷歌针对TensorFlow模型在移动端上部署开发的推理框架TensorFlow Lite,小米和阿里巴巴分别针对移动端推理开发的MACE和MNN。分类可以根据以下几种情况来分类。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据提供的引用内容,yolov8并不是一个常见的模型,可能是一个自定义的模型。因此,以下是YOLOv3的训练推理的介绍和演示: YOLOv3是一种基于深度学习的目标检测算法,可以同时实现高精度和实时性。下面是YOLOv3的训练推理的介绍和演示: 1.训练YOLOv3模型 首先,需要准备好训练数据集和标注文件。然后,可以使用提供的引用中的代码进行训练。具体步骤如下: - 下载YOLOv3代码库:https://github.com/ultralytics/yolov3 - 准备训练数据集和标注文件,并将它们放在指定的目录下。 - 修改yolov3.cfg文件中的参数,例如batch size、学习率等。 - 运行以下命令开始训练模型: ```shell python train.py --data coco.yaml --cfg yolov3.cfg --weights '' --batch-size 16 ``` 其中,--data参数指定数据集的配置文件,--cfg参数指定模型的配置文件,--weights参数指定预训练模型的权重文件,--batch-size参数指定批量大小。 2.使用YOLOv3模型进行推理 使用训练好的YOLOv3模型进行推理也很简单。具体步骤如下: - 下载YOLOv3代码库:https://github.com/ultralytics/yolov3 - 下载预训练权重文件yolov3.pt,并将其放在指定的目录下。 - 运行以下命令开始推理: ```shell python detect.py --source 0 --weights yolov3.pt --conf 0.25 ``` 其中,--source参数指定输入源,可以是摄像头、视频文件或图像文件,0表示使用默认摄像头;--weights参数指定模型的权重文件;--conf参数指定置信度阈值。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值