摘 要 卷积神经网络在诸多领域已经取得超出人类的成绩.但是,随着模型存储开销和计算复杂性的不断增加,限制处理单元和内存单元之间数据交换的“内存墙”问题阻碍了其在诸如边缘计算和物联网等资源受限环境中的部署.基于阻变存储的硬件加速器由于具有高集成度和低功耗等优势,被广泛应用于加速矩阵-向量乘运算,但是其不适合进行32 b浮点数计算,因此需要量化来降低数据精度.手工为每一层确定量化位宽非常耗时,近期的研究针对现场可编程门阵列(field programmable gate array, FPGA)平台使用基于深度确定性策略梯度(deep deterministic policy gradient, DDPG)的强化学习来进行自动量化,但需要将连续动作转换为离散动作,并通过逐层递减量化位宽来满足资源约束条件.基于此,提出基于近端策略优化(proximal policy optimization, PPO)算法的阻变存储硬件加速器自动量化,使用离散动作空间来避免动作空间转换步骤,设计新的奖励函数使PPO自动学习满足资源约束的最优量化策略,并给出软硬件设计改动以支持混合精度计算.实验结果表明:与粗粒度的量化相比,提出的方法可以减少20%~30%的硬件开销,而不引起模型准确度的过多损失.与其他自动量化相比,提出的方法搜索时间短,并且在相同的资源约束条件下可以进一步减少约4.2%的硬件开销.这为量化算法和硬件加速器的协同设计提供了参考.

关键词 

基于近端策略优化的阻变存储硬件加速器自动量化相关推荐

  1. 基于近端策略优化算法的车载边缘计算网络频谱资源分配

    摘要 [目的]在车载网络边缘计算中,合理地分配频谱资源对改善车辆通讯质量具有重要意义.频谱资源稀缺是影响车辆通讯质量的重要原因之一,车辆的高移动性以及在基站处准确收集信道状态信息的困难给频谱资源分配带 ...

  2. 强化学习经典算法笔记(十二):近端策略优化算法(PPO)实现,基于A2C(下)

    强化学习经典算法笔记(十二):近端策略优化算法(PPO)实现,基于A2C 本篇实现一个基于A2C框架的PPO算法,应用于连续动作空间任务. import torch import torch.nn a ...

  3. 强化学习笔记:PPO 【近端策略优化(Proximal Policy Optimization)】

    1 前言 我们回顾一下policy network: 强化学习笔记:Policy-based Approach_UQI-LIUWJ的博客-CSDN博客 它先去跟环境互动,搜集很多的 路径τ.根据它搜集 ...

  4. 【详解+推导!!】PPO 近端策略优化

    近端策略优化(PPO, Proximal Policy Optimization)是强化学习中十分重要的一种算法,被 OpenAI 作为默认强化学习算法,在多种强化学习应用中表现十分优异. 文章目录 ...

  5. 近端策略优化算法(PPO)

    策略梯度算法(PG) 策略梯度迭代,通过计算策略梯度的估计,并利用随机梯度上升算法进行迭代.其常用的梯度估计形式为: E^t[∇θlogπθ(at∣st)A^t]\hat{\mathbb{E}}_t[ ...

  6. PPO近端策略优化算法概述

    Policy Gradient算法存在两个问题,一是蒙特卡罗只能回合更新,二是on-policy采集的数据只能使用一次. 对于第一个更新慢的问题,改用时序差分方法,引入critic网络估计V值,就能实 ...

  7. 近端策略优化深度强化学习算法

    PPO:Proximal Policy Optimization Algorithms,其优化的核心目标是: ppo paper 策略梯度 以下是马尔可夫决策过程MDP的相关基础以及强化学习的优化目标 ...

  8. 伯克利、OpenAI等提出基于模型的元策略优化强化学习

    基于模型的强化学习方法数据效率高,前景可观.本文提出了一种基于模型的元策略强化学习方法,实践证明,该方法比以前基于模型的方法更能够应对模型缺陷,还能取得与无模型方法相近的性能. 引言 强化学习领域近期 ...

  9. 【Project Report】基于 QP 的优化选股策略

    一.概述 基于AI的量化投资领域特别是针对A股市场的AI技术已经成为了当下的热点话题,本文将基于big quant平台,了解并掌握量化投资的一些基本操作方法,并通过一些QP优化策略实现选股. 二.基于 ...

最新文章

  1. 2017程序员该为自己制定的12个小目标
  2. SpringBoot之使用Scheduled做定时任务
  3. C# 实现ADSL自动断网和拨号(适用于拨号用户)
  4. info.plist文件里面添加描述 - 配置定位,相册等
  5. 工作225:当前导致name报错
  6. 第二十一期:拜托!面试不要再问我Spring Cloud底层原理
  7. python获取文件读写权限_Python 查看文件的读写权限方法
  8. mysql常规使用(建立,增删改查,视图索引)
  9. MovieClip实现拖拽等移动位置的功能
  10. 数据结构实验之图论九:最小生成树
  11. 面试一线互联网大厂?那这道题目你必须得会!
  12. RocketMQ原理解析-producer 2.如何发送消息
  13. Apache配置虚拟主机
  14. 密码编码学与网络安全——原理与实践(第八版)------第4章 学习笔记
  15. mysql 身份证号码判断
  16. 自然数学-自然常数e
  17. Unity导入模型和材质丢失问题处理(大批量操作)
  18. 使用chat-gpt 最新最快方法
  19. 请让我像亲人一样爱你
  20. QT中的模态和非模态对话框

热门文章

  1. RV1126 Linux AP6256调试、WIFI热点扫描
  2. OPTEE学习笔记 - AArch64 RPC(二)
  3. 【Unity 3D】使用EasyAR实现单图识别的AR增强现实功能(附实现步骤)
  4. ArcGIS使用笔记(2)——邻近搜索
  5. (转载)Nim游戏博弈(收集完全版)
  6. Qorvo 扩展 750V SiC FET 范围
  7. 利用eclips进行java开发
  8. 微信消息推送 有新发现 进来看
  9. Refusing to delete
  10. python UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbd in position 0: invalid start byte