基于轨迹加权的混合离线强化学习数据集

写在前面: 这篇论文阅读已经同步到我的博客网站,若需更优的阅读体验,请前往https://mainjaylai.github.io/Blog/blog/paper/trajectory-dataset进行浏览

摘要

大多数离线强化学习(RL)算法通过最大化目标策略的期望性能增益与数据集收集策略相比,并权衡由状态-动作占用率的分布外性带来的风险,从而返回一个目标策略。因此,目标策略的性能与行为策略的性能以及数据集的轨迹回报分布密切相关。我们发现,在由大部分低回报轨迹和少量高回报轨迹组成的混合数据集中,最先进的离线RL算法往往受到低回报轨迹的过度约束,无法充分利用高回报轨迹。为了解决这个问题,我们证明在具有随机初始状态的确定性马尔可夫决策过程(MDP)中,可以通过重新加权数据集的采样,来创建一个行为策略具有更高回报的人工数据集。这种重新加权的采样策略可以与任何离线RL算法结合使用。我们进一步分析表明,行为策略性能改善的机会与数据集中轨迹回报的正侧方差相关。我们实验证明,虽然CQL、IQL和TD3+BC仅实现了这一潜在策略改进的一部分,但这些算法结合我们的重新加权采样策略可以充分利用数据集。此外,我们还通过实验证明,尽管该方法在理论上有局限性,但在随机环境中仍可能高效。代码可在https://github.com/Improbable-AI/harness-offline-rl获得。

1 介绍

离线强化学习(RL)目前备受关注,因为它允许从记录的数据中优化RL策略,而无需与环境直接交互。这使得RL训练过程更加安全和经济,因为在现实世界中收集交互数据的风险高、成本昂贵且耗时(例如在机器人和医疗保健领域)。不幸的是,许多论文表明,离线RL任务的接近最优性在样本效率方面是难以实现的。

与接近最优性相反,相对于行为策略的策略改进是一个大约可以实现的目标,因为行为策略可以通过监督学习高效地克隆。因此,大多数实际的离线RL算法都包含一个组件,用于确保返回的策略在行为策略上有所改进,无论是形式上还是直观上:悲观算法确保目标策略(即通过离线RL算法学习的策略)的值的下界优于行为策略的值,保守算法通过对行为策略的正则化来搜索策略,一步算法则防止目标策略值通过引导传播。这些算法将行为策略作为跳板。因此,它们的性能保证在很大程度上取决于行为策略的性能。

由于依赖于行为策略的性能,这些离线RL算法容易受到由行为策略收集的数据集中轨迹回报分布的影响。为了说明这种依赖性,我们称这些算法是“锚定”在行为策略上的。在接近最优的数据集(即专家)中锚定有利于算法的性能,而在低性能的数据集(例如新手)中锚定可能会阻碍目标策略的性能。在现实场景中,离线RL数据集可能主要由低性能轨迹组成,只有少量高性能轨迹,这些轨迹是由多种行为策略混合收集的,因为策划高性能轨迹的成本很高。因此,避免锚定在低性能的行为策略上并利用混合数据集中的高性能策略是很有必要的。然而,我们发现最先进的离线RL算法未能充分利用高性能轨迹。我们分析表明,相对于行为策略的策略改进潜力与数据集中轨迹回报的正侧方差(PSV)相关,并进一步提出当回报PSV较高时,算法锚定可能会限制返回策略的性能。

为了提供更好的算法锚定,我们提出在不收集额外数据的情况下,改变行为策略。我们首先证明,在离线RL算法训练期间重新加权数据集等同于使用另一种行为策略进行训练。此外,在假设环境是确定性的情况下,通过给予高回报轨迹更大的权重,我们可以控制隐式行为策略以实现高性能,从而为离线RL算法提供冷启动性能提升。虽然确定性是一个强假设,我们通过一个最小失败示例证明了它的必要性,但我们表明,当初始状态是随机的,通过使用轨迹回报优势而不是轨迹回报进行重新加权,保证仍然成立: G ( τ i ) − V μ ( s i , 0 ) G(\tau_i) - V^\mu(s_{i,0}) G(τi)Vμ(si,0),其中 G ( τ i ) G(\tau_i) G(τi)是轨迹 i i i获得的回报, V μ ( s i , 0 ) V^\mu(s_{i,0}) Vμ(si,0)是从初始状态 s i , 0 s_{i,0} si,0开始遵循行为策略 μ \mu μ的期望回报。此外,我们通过实验证明,即使在随机环境中,我们的策略也能比其均匀采样对应策略获得性能提升。我们还注意到,几种最先进的离线RL算法也需要确定性。

在理论分析的指导下,我们的主要贡献是提出了两种简单的加权采样策略:回报加权 (RW)优势加权 (AW)。RW 和 AW 分别使用轨迹回报和优势的Boltzmann分布对轨迹进行重新加权。我们的加权采样策略与底层离线RL算法无关,因此可以在任何现成的离线RL算法中作为替代方案,几乎不增加额外的计算成本。我们在三种最先进的离线RL算法CQL、IQL和TD3+BC,以及行为克隆上评估了我们的采样策略,覆盖了D4RL基准测试中的62个数据集。以统计稳健的度量标准报告的实验结果表明,在具有稀疏奖励轨迹的混合数据集中,我们的两种采样策略显著提升了所有所考虑的离线RL算法的性能,并且在回报分布均匀的常规数据集上至少与它们表现持平。

2 准备工作

我们考虑马尔可夫决策过程(MDP)中的强化学习(RL)问题,由元组 ( S , A , R , P , ρ 0 ) (\mathcal{S}, \mathcal{A}, R, P, \rho_0) (S,A,R,P,ρ0) 表示,其中 S \mathcal{S} S A \mathcal{A} A 分别表示状态空间和动作空间, R : S × A → R R:\mathcal{S}\times\mathcal{A} \to \mathbb{R} R:S×AR 是奖励函数, P : S × A → Δ S P:\mathcal{S}\times\mathcal{A} \to \Delta_{\mathcal{S}} P:S×AΔS 是状态转移动态, ρ 0 : Δ S \rho_0: \Delta_{\mathcal{S}} ρ0:ΔS 是初始状态分布,这里 Δ X \Delta_{\mathcal{X}} ΔX 表示集合 X \mathcal{X} X 上的单纯形。MDP 从初始状态 s 0 ∼ ρ 0 s_0 \sim \rho_0 s0ρ0 开始。在每个时间步 t t t,代理感知状态 s t s_t st,根据策略 π ( . ∣ s t ) \pi(.|s_t) π(.∣st) 选择动作 a t ∼ π ( ⋅ ∣ s t ) a_t \sim \pi(\cdot | s_t) atπ(st),收到奖励 r t = R ( s t , a t ) r_t = R(s_t, a_t) rt=R(st,at),并根据转移动态 P ( s t + 1 ∣ s t , a t ) P(s_{t+1}|s_t, a_t) P(st+1st,at) 进行状态转移至 s t + 1 s_{t+1} st+1。策略 π \pi π 的表现由从初始状态 s 0 ∼ ρ 0 s_0 \sim \rho_0 s0ρ0 开始的预期回报 J ( π ) J(\pi) J(π) 衡量,定义如下:

​ J ( π ) = E [ ∑ t = 0 ∞ R ( s t , a t )    ∣    s 0 ∼ ρ 0 , a t ∼ π ( . ∣ s t ) , s t + 1 ∼ P ( . ∣ s t , a t ) ] . \begin{align} ​ J(\pi) = \mathbb{E}\left[\sum^{\infty}_{t=0} R(s_t, a_t) \;\bigg|\; s_0 \sim \rho_0, a_t \sim \pi(.|s_t), s_{t+1} \sim P(.|s_{t},a_t)\right]. \end{align} J(π)=E[t=0R(st,at) s0ρ0,atπ(.∣st),st+1P(.∣st,at)].

给定由行为策略 μ : S → Δ A \mu:\mathcal{S}\to \Delta_\mathcal{A} μ:SΔA 收集的数据集 D \mathcal{D} D,离线强化学习算法旨在从数据集 D \mathcal{D} D 中学习一个目标策略 π \pi π,使得 J ( π ) ≥ J ( μ ) J(\pi) \geq J(\mu) J(π)J(μ)​,数据集定义如下:

​​ D = { ( s i , 0 , a i , 0 , r i , 0 , ⋯ s i , T i )   ∣  ​ ​ s i , 0 ∼ ρ 0 , a i , t ∼ μ ( . ∣ s i , t ) , ​ r i , t = R ( s i , t , a i , t ) , s i , t + 1 ∼ P ( . ∣ s i , t , a i , t ) ​ } , \begin{align} ​ % \mathcal{D} = \{ (s_{i,0}, a_{i,0}, r_{i,0},\cdots s_{i, T_i}) | s_{i,0} \sim \rho_0, a_{i,t} \sim \mu(.|s_{i,t}), r_{i,t} = R(s_{i,t}, a_{i,t}), s_{i,t+1} \sim P(.|s_{i,t}, a_{i,t})\}, ​ \mathcal{D} = \Big\{ (s_{i,0}, a_{i,0}, r_{i,0},\cdots s_{i, T_i}) ~\Big\vert~ ​ \begin{matrix} ​ s_{i,0} \sim \rho_0,& a_{i,t} \sim \mu(.|s_{i,t}), \\ ​ r_{i,t} = R(s_{i,t}, a_{i,t}),& s_{i,t+1} \sim P(.|s_{i,t}, a_{i,t}) ​ \end{matrix}\Big\}, \end{align} ​​D={(si,0,ai,0,ri,0,si,Ti)   si,0ρ0,ri,t=R(si,t,ai,t),ai,tμ(.∣si,t),si,t+1P(.∣si,t,ai,t)},

这里, τ i = ( s i , 0 , a i , 0 , r i , 0 , ⋯ s i , T i + 1 ) \tau_i = (s_{i,0}, a_{i,0}, r_{i,0}, \cdots s_{i, T_i + 1}) τi=(si,0,ai,0,ri,0,si,Ti+1) 表示数据集 D \mathcal{D} D 中的第 i i i 条轨迹, ( i , t ) (i,t) (i,t) 表示第 i i i 个轨迹中的时间步 t t t T i T_i Ti 表示轨迹 τ i \tau_i τi 的长度。一般而言,离线强化学习算法基于演员-评论家方法学习策略 π \pi π 和 Q-值函数 Q : S × A → R Q:\mathcal{S}\times\mathcal{A}\to\mathbb{R} Q:S×AR。Q-值函数 Q ( s , a ) Q(s,a) Q(s,a) 预测在状态 s s s 下采取动作 a a a 并随后遵循策略 π \pi π 的预期回报;策略 π \pi π 最大化数据集 D \mathcal{D} D 上的期望 Q-值。训练过程交替进行策略评估(等式 3)和改进步骤(等式 4)如下:
Q ← arg ⁡ min ⁡ Q E [ ( r t + γ E a ′ ∼ π ( . ∣ s t + 1 ) [ Q ( s t + 1 , a ′ ) ] − Q ( s t , a t ) ) 2   ∣  Uni ( D ) ] π ← arg ⁡ max ⁡ π E [ Q ( s t , a )   ∣  Uni ( D ) , a ∼ π ( . ∣ s t ) ] , \begin{align} Q &\leftarrow \arg\min_{Q}\mathbb{E}\Big[\left(r_t + \gamma \mathbb{E}_{a^\prime \sim \pi(.|s_{t+1})}\left[ {Q}(s_{t+1}, a^\prime)\right] - Q(s_t, a_t)\right)^2 ~\Big|~ \textrm{Uni}(\mathcal{D})\Big] \\ \pi &\leftarrow \arg\max_{\pi}\mathbb{E}\Big[{Q}(s_t, a) ~\Big|~ \textrm{Uni}(\mathcal{D}), a \sim \pi(.|s_t)\Big], \end{align} QπargQminE[(rt+γEaπ(.∣st+1)[Q(st+1,a)]Q(st,at))2   Uni(D)]argπmaxE[Q(st,a)   Uni(D),aπ(.∣st)],

其中 E [   ⋅   ∣  Uni ( D ) ] \mathbb{E}[~\cdot ~|~\textrm{Uni}(\mathcal{D})] E[   Uni(D)] 表示对数据集 D \mathcal{D} D 中的转移进行均匀采样的期望。

3 问题表述

大多数离线强化学习(RL)算法都锚定在行为策略上。当数据集的行为策略表现良好时,这是有利的;但当行为策略表现较差时,则是不利的。我们考虑由大多数低表现轨迹和少量高表现轨迹组成的混合数据集。在这样的数据集中,可以利用那些罕见的高表现轨迹,然而锚定行为策略的做法限制了算法在混合数据集的行为策略上实现显著的策略改进。我们在第3.1节正式定义了数据集的回报正偏差方差(RPSV),并在第3.2节说明了为何离线强化学习算法在高RPSV数据集上的表现可能受到限制。

3.1 正偏差方差

具体而言,我们关注的是一个数据集 D : = { τ 0 , τ 1 , ⋯ τ N − 1 } \mathcal{D} := \{\tau_0, \tau_1, \cdots \tau_{N-1}\} D:={τ0,τ1,τN1},可能由多个行为策略 { μ 0 , μ 1 , ⋯ μ N − 1 } \{\mu_0, \mu_1,\cdots \mu_{N-1}\} {μ0,μ1,μN1} 收集而成,包含了经验回报 { G ( τ 0 ) , G ( τ 1 ) , ⋯ G ( τ N − 1 ) } \{G(\tau_0), G(\tau_1), \cdots G(\tau_{N-1}) \} {G(τ0),G(τ1),G(τN1)},其中 τ i \tau_i τi μ i \mu_i μi 生成, N N N 是轨迹数, T i T_i Ti 表示 τ i \tau_i τi 的长度, G ( τ i ) = ∑ t = 0 T i − 1 r i , t G(\tau_i) = \sum^{T_i-1}_{t=0}r_{i,t} G(τi)=t=0Ti1ri,t。为了研究回报的分布,我们引入了一个统计量:正偏差方差(PSV)的随机变量 X X X​:

定义 1(正偏差方差): 随机变量 X X X 的正偏差方差(PSV)是 X − E [ X ] X-\mathbb{E}[X] XE[X] 的正部分的二阶矩:
V + [ X ] ≐ E [ ( X − E [ X ] ) + 2 ] 其中 x + = max ⁡ { x , 0 } . \begin{align} \mathbb{V}_{+}[X] \doteq \mathbb{E}\left[\left(X-\mathbb{E}[X]\right)^2_{+}\right] \quad \text{其中} \quad x_{+}=\max\{x,0\}. \end{align} V+[X]E[(XE[X])+2]其中x+=max{x,0}.

数据集 D \mathcal{D} D 的回报正偏差方差(RPSV)旨在捕捉轨迹回报分布的正向离散度。一个有趣的问题是: 什么样的分布会导致高RPSV? \textit{什么样的分布会导致高RPSV?} 什么样的分布会导致高RPSV 我们简化了从初学者和专家采样的轨迹,将其视为从伯努利分布 B \mathcal{B} B 中采样,并假设初学者策略始终产生0回报,而专家策略始终产生1回报。图1a将伯努利分布的PSV V + [ B ( p ) ] = p ( 1 − p ) 2 \mathbb{V}_+[\mathcal{B}(p)]=p(1-p)^2 V+[B(p)]=p(1p)2 作为其参数 p p p 的函数进行了可视化,其中 p p p 是选择专家轨迹的概率。我们可以看到,最大的PSV在 p = 1 3 p=\frac{1}{3} p=31 时达到。当 p = 0 p=0 p=0(纯初学者)和 p = 1 p=1 p=1​​​(纯专家)时,PSV 为零。这一观察表明,混合数据集往往具有比单一策略收集的数据集更高的RPSV。在图1中,我们展示了不同RPSV下数据集的回报分布。低RPSV数据集的最高回报保持接近均值回报,这限制了策略改进的机会。相比之下,高RPSV数据集的回报分布向远离均值的正向端散开。

Mapple
图1: (a) \textbf{(a)} (a) 伯努利分布的正偏差方差: V + [ B ( p ) ] = p ( 1 − p ) 2 \mathbb{V}_+[\mathcal{B}(p)]=p(1-p)^2 V+[B(p)]=p(1p)2 (b-c) \textbf{(b-c)} (b-c)数据集的回报分布:(b) 低回报正偏差方差 (RPSV) 和 © 高回报正偏差方差 (RPSV)(见第3.1节),其中RPSV衡量数据集中轨迹回报方差的正向贡献, G ˉ \bar{G} Gˉ表示数据集的平均回报(虚线)。直观上,高RPSV意味着某些轨迹的回报远高于平均回报。

3.2 离线RL未能有效利用高RPSV数据

高-RPSV 数据集(图1c)包含少量高回报轨迹,但离线 RL 算法受行为策略的锚定影响,未能充分利用这些高回报数据。高-RPSV 数据集中占主导地位的低回报轨迹由于这些算法的悲观和/或保守性质,限制了离线 RL 算法学习接近 D \mathcal{D} D 中最佳轨迹的非平凡策略。高 RPSV 意味着平均每集回报与 D \mathcal{D} D 中最佳回报相距甚远(见图1c)。平均每集回报反映了收集 D \mathcal{D} D 的行为策略 μ \mu μ 的性能 J ( μ ) J(\mu) J(μ)(在第4.1节中正式证明),其中 μ \mu μ μ 0 , μ 1 , ⋯ μ N − 1 {\mu_0,\mu_1,\cdots \mu_{N-1}} μ0,μ1,μN1 的混合策略(第 3.1节)

悲观算法致力于保证算法返回一个 π \pi π,使得 J ( π ) ≥ J ( μ ) J(\pi) \geq J(\mu) J(π)J(μ),但是当 J ( μ ) J(\mu) J(μ) 较低时,这种保证并不强。保守算法限制 π \pi π 的行为与 μ \mu μ 接近,以防止在演员-评论家更新中对 分布外 \textit{分布外} 分布外 状态-动作对(即方程3 中的 ( s t + 1 , a ′ ) ∉ D (s_{t+1},a^\prime) \notin \mathcal{D} (st+1,a)/D)的 Q 值进行不良估计,从而限制 J ( π ) J(\pi) J(π) 不能偏离 J ( μ ) J(\mu) J(μ) 太多。同样,单步算法仅执行一次策略改进,并返回一个受约束的目标策略,强制 π \pi π 接近 μ \mu μ。因此,离线 RL 算法受 J ( μ ) J(\mu) J(μ) 限制,在高-RPSV 数据集中无法利用远离 J ( μ ) J(\mu) J(μ) 的高回报数据。

相反,在低RPSV数据集(图1b)中,悲观、保守和单步算法不存在这种严重的利用不足问题,因为回报分布集中在或低于平均每回合回报周围,几乎没有更好的轨迹可供利用。我们将在第5.2节中展示,在极低RPSV数据集中,任何采样策略都无法使离线RL算法表现更好,而在高RPSV数据集中,我们的方法(第4.2和第4.3节)显著优于典型的均匀采样。

4 方法

第3节解释了行为策略的锚定为何会阻止离线RL算法充分利用高RPSV数据集。为了解决这个问题,需要回答的问题是: 在不收集额外数据的情况下,我们能否提高行为策略的性能? \textit{在不收集额外数据的情况下,我们能否提高行为策略的性能?} 在不收集额外数据的情况下,我们能否提高行为策略的性能?为此,我们提出通过重新加权数据集中的转换来隐式地改变行为策略。实际上,我们展示了加权采样可以模拟使用不同行为策略进行的转换采样。我们在第4.1节分析了加权采样与隐式行为策略性能之间的联系,然后在第4.2和4.3节中提出了两种加权采样策略。

4.1 分析

我们首先展示如何通过重新加权数据集中的转换来模拟由不同于收集数据集的隐式混合行为策略生成的转换样本。这是因为策略是由数据集中的转换权重定义的。正如之前的讨论,从在第3节中定义的数据集 D \mathcal{D} D中采样转换等价于从加权联合状态-动作占用 d W ( s , a ) = ∑ i = 0 N − 1 w i d μ i ( s ) μ i ( a ∣ s ) d_{\mathcal{W}}(s, a) = \sum^{N-1}_{i=0} w_i d_{\mu_i}(s) \mu_i(a|s) dW(s,a)=i=0N1widμi(s)μi(as)中采样状态-动作对,其中 w i w_i wi是轨迹 i i i的权重(每个 τ i \tau_i τi μ i \mu_i μi收集), W ≐ w 0 , ⋯ w N − 1 \mathcal{W} \doteq {w_0, \cdots w_{N-1}} Ww0,wN1,而 d μ i ( s ) d_{\mu_i}(s) dμi(s)表示 μ i \mu_i μi的未归一化状态占用度。调整权重 W \mathcal{W} W有效地改变了 d W d_{\mathcal{W}} dW,从而在采样过程中改变了转换分布。正如前述,权重 W \mathcal{W} W也导致了加权行为策略: μ W ( a ∣ s ) = d W ( s , a ) ∑ i = 0 N − 1 w i d μ i ( s ) \mu_{\mathcal{W}}(a|s) = \frac{d_{\mathcal{W}}(s, a)}{\sum^{N-1}_{i=0} w_i d_{\mu_i}(s)} μW(as)=i=0N1widμi(s)dW(s,a)。均匀采样 w i = 1 N ,   ∀ w i ∈ W w_i = \frac{1}{N},~\forall w_i \in \mathcal{W} wi=N1, wiW等同于从收集 D \mathcal{D} D的原始混合行为策略 μ \mu μ的联合状态-动作占用中采样。为了获得转换样本的良定义采样分布,我们需要将这些轨迹权重 w i w_i wi转换为转换样本权重 w i , t , ∀ t ∈ [ 0 , T i − 1 ] w_{i,t}, \forall t\in \left[ 0,T_i-1 \right] wi,t,t[0,Ti1]
w i , t ≐ w i ∑ i = 0 N − 1 T i w i , ∑ i = 0 N − 1 ∑ t = 0 T i − 1 w i , t = ∑ i = 0 N − 1 T i w i ∑ i = 0 N − 1 T i w i = 1. \begin{align} w_{i,t} \doteq \frac{w_i}{\sum_{i=0}^{N-1} T_i w_i},\qquad\qquad \sum_{i=0}^{N-1}\sum_{t=0}^{T_i-1}w_{i,t} = \sum_{i=0}^{N-1} T_i \frac{ w_i}{\sum_{i=0}^{N-1} T_i w_i} = 1. \end{align} wi,ti=0N1Tiwiwi,i=0N1t=0Ti1wi,t=i=0N1Tii=0N1Tiwiwi=1.
因此,我们的目标是找到一个权重集合 W ≐ { w i } i ∈ [ 0 , N − 1 ] ∈ Δ N \mathcal{W} \doteq \{w_i\}_{i\in \left[0,N-1 \right] }\in\Delta_N W{wi}i[0,N1]ΔN,使得 J ( μ W ) ≥ J ( μ ) J(\mu_{\mathcal{W}}) \geq J(\mu) J(μW)J(μ),其中 Δ N \Delta_N ΔN表示大小为 N N N的单纯形。显然,我们可以写成 J ( μ W ) = ∑ i = 0 N − 1 w i J ( μ i ) J(\mu_{\mathcal{W}}) = \sum^{N-1}_{i=0} w_i J(\mu_i) J(μW)=i=0N1wiJ(μi)。那么剩下的问题就是如何估计 J ( μ i ) J(\mu_i) J(μi)。轨迹的期望回报 G ( τ i ) G(\tau_i) G(τi)可以被视为 J ( μ i ) J(\mu_i) J(μi)的样本。因此,我们可以通过Hoeffding不等式的直接应用将 J ( μ W ) J(\mu_{\mathcal{W}}) J(μW)集中在回报的加权和附近:

P [ ∣ J ( μ W ) − ∑ i = 0 N − 1 w i G ( τ i ) ∣ > ϵ ] ≤ 2 exp ⁡ ( 2 ϵ 2 G T 2 ∑ i = 0 N − 1 w i 2 ) , \begin{align} \mathbb{P}\left[\left|J(\mu_{\mathcal{W}})-\textstyle\sum^{N-1}_{i=0} w_i G(\tau_i)\right| > \epsilon\right]\leq 2\exp\left(\frac{2\epsilon^2}{G^2_T\sum^{N-1}_{i=0} w_i^2}\right), \end{align} P[ J(μW)i=0N1wiG(τi) >ϵ]2exp(GT2i=0N1wi22ϵ2),
其中 G T ≐ G M A X − G M I N G_T \doteq G_{MAX} - G_{MIN} GTGMAXGMIN是回报间隔的幅度(参见Hoeffding不等式)。为了完整起见,该方法在任何策略和带有折现因子小于 1 1 1的MDP中的可靠性已经在附录A.1中证明。公式7告诉我们,只要没有将太多的质量分配给少数几条轨迹,我们就有一个一致的 J ( μ W ) J(\mu_{\mathcal{W}}) J(μW)​估计器。

由于我们的目标是获得性能更高的行为策略,因此我们希望给性能较高的 μ i \mu_i μi 分配较高的权重 w i w_i wi。然而,需要注意的是,将 w i w_i wi 设置为 G i G_i Gi 的函数可能会由于轨迹生成中的随机性(源于 ρ 0 \rho_0 ρ0 P P P 和/或 μ i \mu_i μi)导致 J ( μ W ) J(\mu_W) J(μW) 估计器中引入偏差。在这种情况下,公式7的集中界限将不再有效。为了证明和说明这种偏差,我们在附录A.3中提供了一个反例。接下来的部分通过假设环境的确定性,并应用一个技巧来消除行为策略 μ i \mu_i μi 中的随机性来解决这个问题。第4.3节则通过使用回报优势而不是绝对回报来放宽对 ρ 0 \rho_0 ρ0 为确定性的要求。

4.2 回报加权

在本节中,我们强假设MDP是确定性的(即转移动态 P P P和初始状态分布 ρ 0 \rho_0 ρ0是狄拉克δ分布)。这个假设使我们能够得到 G ( τ i ) = J ( μ i ) G(\tau_i)=J(\mu_i) G(τi)=J(μi),其中 μ i \mu_i μi是采取轨迹 τ i \tau_i τi中的行动的确定性策略1,由于目标策略的性能依赖于行为策略的性能,我们找到一个加权分布 W \mathcal{W} W来最大化 J ( μ W ) J(\mu_\mathcal{W}) J(μW)

max ⁡ W ∈ Δ N ∑ i = 0 N − 1 w i G ( τ i ) , \begin{align} \max_{\mathcal{W}\in\Delta_N} & \sum_{i=0}^{N-1} w_i G(\tau_i), \end{align} WΔNmaxi=0N1wiG(τi),

其中, w i w_i wi对应于分配给第 i i i个回合中每个转移的未归一化权重。然而,结果解将所有权重分配给具有最大回报的回合 τ i \tau_i τi​中的转移。这种在我们考虑的确定性设置中确实最优,但在其他情况下会失效。为了防止这种情况的发生,我们通常会结合熵正则化,将公式8转换为:

max ⁡ W ∈ Δ N ∑ i = 0 N − 1 w i G ( τ i ) − α ∑ i = 0 N − 1 w i log ⁡ w i , \begin{align} \max_{\mathcal{W}\in\Delta_N} & \sum_{i=0}^{N-1} w_i G(\tau_i) - \alpha \sum_{i=0}^{N-1} w_i \log w_i, \end{align} WΔNmaxi=0N1wiG(τi)αi=0N1wilogwi,

其中, α ∈ R + \alpha \in \mathbb{R}^+ αR+是控制正则化强度的温度参数。 α \alpha α在δ分布( α → 0 \alpha \to 0 α0)和均匀分布( α → ∞ \alpha \to \infty α)之间插值。由于公式9的最优解是 G ( τ i ) G(\tau_i) G(τi)的Boltzmann分布,得到的加权分布 W \mathcal{W} W为:
w i = exp ⁡ G ( τ i ) / α ∑ τ i ∈ D exp ⁡ G ( τ i ) / α . \begin{align} w_{i} = \dfrac{\exp G(\tau_i) / \alpha}{\sum_{\tau_i \in \mathcal{D}} \exp G(\tau_i) / \alpha }. \end{align} wi=τiDexpG(τi)/αexpG(τi)/α.
温度参数 α \alpha α(公式10和11)是一个固定的超参数。由于 α \alpha α的选择依赖于回合回报的尺度,而回报尺度在不同环境中有所不同,我们对 G ( τ i ) G(\tau_i) G(τi)进行了最大-最小归一化: G ( τ i ) ← G ( τ i ) − min ⁡ j G ( τ j ) max ⁡ j G ( τ j ) − min ⁡ j G ( τ j ) G(\tau_i) \leftarrow \frac{G(\tau_i) - \min_j G(\tau_j)}{\max_j G(\tau_j) - \min_j G(\tau_j)} G(τi)maxjG(τj)minjG(τj)G(τi)minjG(τj)

4.3 优势加权

在这一部分中,我们允许初始状态分布 ρ 0 \rho_0 ρ0具有随机性。第4.2节中的回报加权策略可能会偏向于那些从“ 幸运 \textit{幸运} 幸运“初始状态开始的轨迹,这些初始状态比其他初始状态产生更高的回报。因此,我们将第9式的目标修改为最大化加权的周期性优势 ∑ w i ∈ W w i A ( τ i ) \sum_{w_i \in \mathcal{W}}w_iA(\tau_i) wiWwiA(τi),并进行熵正则化。 τ i \tau_i τi的周期性优势 A ( τ i ) A(\tau_i) A(τi)定义为 A ( τ i ) = G ( τ i ) − V ^ μ ( s i , 0 ) A(\tau_i) = G(\tau_i) - \hat{V}^\mu(s_{i,0}) A(τi)=G(τi)V^μ(si,0),其中 V ^ μ ( s i , 0 ) \hat{V}^\mu(s_{i,0}) V^μ(si,0)是从 s i , 0 s_{i,0} si,0开始遵循 μ \mu μ的估计预期回报,使用回归方法进行估计: V ^ μ ← arg ⁡ min ⁡ V E [ ( G ( τ i ) − V ( s i , 0 ) ) 2   ∣  Uni ( D ) ] \hat{V}^\mu \leftarrow \arg\min_V \mathbb{E}\big[(G(\tau_i) - V(s_{i,0}))^2 ~|~ \textrm{Uni}(\mathcal{D})\big] V^μargminVE[(G(τi)V(si,0))2  Uni(D)]。将第9式中的 G ( τ i ) G(\tau_i) G(τi)替换为 A ( τ i ) A(\tau_i) A(τi)并求解 W \mathcal{W} W,我们得到以下加权分布:

w i = exp ⁡ A ( τ i ) / α ∑ τ i ∈ D exp ⁡ A ( τ i ) / α ,    A ( τ i ) = G ( τ i ) − V ^ μ ( s i , 0 ) . \begin{align} w_{i} = \dfrac{\exp A(\tau_i) / \alpha}{\sum_{\tau_i \in \mathcal{D}} \exp A(\tau_i) / \alpha }, ~~A(\tau_i) = G(\tau_i) - \hat{V}^\mu(s_{i,0}). \end{align} wi=τiDexpA(τi)/αexpA(τi)/α,  A(τi)=G(τi)V^μ(si,0).

5. 实验

我们的实验回答了以下主要问题:
(i) 我们的方法是否能够使离线强化学习算法在具有稀疏高回报轨迹的数据集中取得更好的性能?
(ii) 我们的方法是否受益于高RPSV?
(iii) 我们的方法在常规数据集中是否也能表现良好?
(iv) 我们的方法在具有随机性的MDP中是否具有鲁棒性?

5.1 实验搭建

实验细节: 我们在以下离线强化学习算法中实现了我们的加权采样策略和基线:隐式Q学习(IQL)、保守Q学习(CQL)、TD3+BC 和行为克隆(BC)。选择IQL、CQL和TD3+BC是为了涵盖离线RL的各种方法,包括一步法、悲观法和保守算法。需要注意的是,尽管BC是一种模仿学习算法,我们仍然将其包括在内,因为BC克隆了行为策略,这是我们直接修改的对象,并且BC也是离线RL研究中的常用基线。

基准: 我们将加权采样与均匀采样(记为 Uniform \textit{Uniform} Uniform)、百分比过滤(记为 Top-x% \textit{Top-x\%} Top-x%)和半采样(记为 Half \textit{Half} Half)进行比较。百分比过滤仅使用具有前 x x x%回报的轨迹进行训练。我们将百分比过滤视为基线,因为它通过丢弃部分数据来增加行为策略的期望回报。在以下内容中,我们将我们的方法与 Top-10% \textit{Top-10\%} Top-10%进行比较,因为在超参数搜索中发现 10 % 10\% 10%是最佳配置(见附录A.11)。半采样分别从高回报和低回报轨迹中采样一半的转换。 Half \textit{Half} Half是一种简单的方法,避免在仅包含稀疏高回报轨迹的数据集中过度采样低回报数据。需要注意的是, Half \textit{Half} Half需要将数据集分为高回报和低回报部分的额外假设,而我们的方法不需要这种假设。我们的回报加权和优势加权策略分别记为 RW \textit{RW} RW AW \textit{AW} AW,并且在所有环境中使用相同的超参数 α \alpha α​(见附录A.7)。

数据集和环境: 我们在MuJoCo运动学环境和随机经典控制基准测试中评估每种算法+采样器变体的性能(即离线RL算法和采样策略的组合)。每个环境被视为一个马尔可夫决策过程(MDP),并且可以在基准套件中具有多个数据集。数据集的选择在实验结果的相应部分中描述。我们在随机经典控制中评估我们的方法,以研究随机动力学是否会破坏我们的加权采样策略。随机动力学的实现详见附录A.6。

评估指标: 对于每个数据集和环境,每种算法+采样器变体训练了一百万批次的更新,并在五个随机种子上进行评估。算法的性能通过在环境中运行训练策略进行的 20 20 20 个回合的平均标准化的周期性回报来衡量。如Fu所建议,我们使用 ( X − X R a n d o m ) / ( X E x p e r t − X R a n d o m ) (X - X_{Random}) / (X_{Expert} - X_{Random}) (XXRandom)/(XExpertXRandom) 进行性能标准化,其中 X X X X R a n d o m X_{Random} XRandom X E x p e r t X_{Expert} XExpert 分别表示算法-采样器变体的性能、随机策略和专家策略的性能。

5.2 稀疏高回报数据集中的离线强化学习改进

为了回答我们的加权采样方法是否能提升在稀疏高回报轨迹数据集中的均匀采样表现,我们创建了包含不同高回报数据比例的混合数据集。我们在四个MuJoCo运动环境和八个混合数据集,以及每个环境的一个非混合数据集中测试每种算法+采样器变体。混合数据集通过将 σ % \sigma\% σ% expert \texttt{expert} expert medium \texttt{medium} medium数据集(高回报)与 ( 1 − σ % ) (1 - \sigma\%) (1σ%) random \texttt{random} random数据集(低回报)混合而成,其中 σ ∈ { 1 , 5 , 10 , 50 } \sigma \in \{1, 5, 10, 50\} σ{1,5,10,50}有四个不同的比例。其中, expert \texttt{expert} expert medium \texttt{medium} medium random \texttt{random} random数据集分别由专家策略、性能为专家策略的1/3的策略和随机策略生成。我们在这32个混合数据集和一个 random \texttt{random} random数据集上测试所有变体。

图2显示了每个算法+采样器(颜色)变体在不同 σ \sigma σ 值下(x轴)的平均归一化性能(y轴)。 每个算法+采样器变体的性能通过平均回报的四分位均值(IQM)(也称为 25 % 25\% 25%截尾均值)来衡量(见第5.1节),因为IQM对异常值的表现较不敏感,如Agarwal所建议的那样。评估协议的详细信息请参见附录A.8。

可以看出,在图2中,我们的 RW \textit{RW} RW AW \textit{AW} AW 策略显著优于基线方法 Uniform \textit{Uniform} Uniform Top-10% \textit{Top-10\%} Top-10%、和 Half \textit{Half} Half 在所有算法和所有专家/中等数据比例 σ % \sigma\% σ% 下的表现。值得注意的是,我们的方法甚至超越或匹配了使用全专家数据集和统一采样训练的每个算法的性能(虚线)。这表明我们的方法使离线强化学习算法能够通过 5% 到 10% 的中等或专家轨迹实现专家级别的性能。 Uniform \textit{Uniform} Uniform 在高性能轨迹稀少时(即低 σ \sigma σ)无法充分利用数据集。$\textit{Top-10%} 稍微提高了性能,但在低比例( 稍微提高了性能,但在低比例( 稍微提高了性能,但在低比例(\sigma% = 1%$)下表现不如 Uniform \textit{Uniform} Uniform,这表明最佳过滤百分比可能取决于数据集。 Half \textit{Half} Half在所有比例下都略微改善了 Uniform \textit{Uniform} Uniform,但性能提升远低于我们的方法。总体而言,这些结果表明,在高回报数据比例较低的数据集中提高高回报轨迹的权重有利于性能,而像 Top-10% \textit{Top-10\%} Top-10% 那样简单地过滤掉低回报集并不能始终提高性能。此外, AW \textit{AW} AW RW \textit{RW} RW​ 没有表现出明显的差异,这可能是因为 MuJoCo 运动环境中的初始状态分布较窄。我们还在附录A.13中包括了每个环境和数据集的平均回报。除了平均回报之外,我们还根据Agarwal的建议评估了我们的方法在概率上的改进,并在附录A.10中显示了统计上显著的改进。

图 2: 我们的 RW \textit{RW} RW AW \textit{AW} AW采样策略在所有算法CQL、IQL、BC和TD3+BC中,对于所有具有不同高回报数据比率 σ % \sigma\% σ%(x轴)的数据集,平均表现(y轴)均高于所有基线(颜色)。显著的是,在四种算法中,我们的表现超过或与使用均匀采样在完整专家数据集上训练的这些算法的平均回报(虚线)相匹配。在低比率( 1 % ≤ σ % ≤ 10 % 1\% \leq \sigma\% \leq 10\% 1%σ%10%)下,与 Uniform \textit{Uniform} Uniform相比,我们方法在稀疏高回报轨迹的数据集中展示出明显的性能优势。

5.3 混合数据集中的性能提升分析

我们假设,我们的方法在数据集中相较于均匀采样的性能提升是由于增加了RPSV。设计一个能够准确预测采样策略性能提升的指标并不容易,因为离线RL的性能受多个因素影响,包括环境和所配对的离线RL算法。我们关注两个容易从数据集中估算的统计因素:(i) 数据集的平均回报和(ii) RPSV。尽管这两个因素相互依赖,但在我们的实验中,它们具有良好的可变性,因为增加专家/中等数据的比例不仅会增加RPSV,还会增加数据集的平均回报。

我们展示了在均匀采样上的性能提升(通过下图中的点的颜色表示)、数据集的平均回报(x轴)和RPSV(y轴,log尺度)之间的关系,如图3所示。每个点表示在某个环境、数据集和 σ \sigma σ组合中的平均性能提升。可以看出,在相似的平均回报(x轴)下,当RPSV增加(y轴)时,我们方法的性能提升显著(颜色变得更接近红色)。这一观察结果表明,在图2中低 σ \sigma σ(专家/中等数据比例)时的性能提升可以与高RPSV下的性能提升相关联,因为在我们的实验中,大多数平均回报低的数据集具有高RPSV。我们还注意到,高数据集平均回报可能会限制我们的优势。原因是,在 σ \sigma σ处于高范围(如 50 % 50\% 50%​​)时,均匀采样的离线RL已经非常高效,因此在此基础上进一步改进的空间有限。

图3: 每个图的左端(平均回报在0到0.1之间)显示,对于所有离线RL算法(CQL、IQL和TD3+BC)和BC,当RPSV增加时,我们的AW和RW采样方法的性能提升也随之增长。颜色表示在5.2节中的混合数据集和环境中相较于均匀采样基准的性能(平均回报)提升;x轴和y轴分别表示数据集的平均回报和数据集的RPSV。

5.4 高回报轨迹更多的常规数据集结果

在第5.2节中展示的数据集用于极端稀疏高回报轨迹的对抗测试。然而,我们在图5中展示了这种具有挑战性的回报分布在 D4RL 基准的常规数据集中并不常见。因此,对于均匀采样基线,常规数据集比高回报轨迹稀疏的混合数据集更容易。为了证明我们的方法在常规数据集中高回报轨迹更多的情况下不会丧失性能,我们还在 D4RL 基准的 30 个常规数据集中使用与第5.1节相同的评估指标对我们的方法进行了评估,并在图4a中展示了结果。可以看到,我们的方法在常规数据集中的表现与基线相当,确认了我们的方法不会丧失性能。需要注意的是,我们没有与 Half \textit{Half} Half进行比较,因为由多个策略收集的常规数据集无法分成两个缓冲区。值得注意的是,我们发现使用 RW \textit{RW} RW AW \textit{AW} AW的 BC 达到了与其他离线 RL 算法(即 CQL、IQL 和 TD3+BC)相当的性能。BC 相对于均匀采样的显著改进与我们的分析(第4.1节)一致,因为 BC 的性能完全取决于行为策略的性能,因此取决于采样轨迹的平均回报。然而,配合 RW \textit{RW} RW AW \textit{AW} AW​ 使用时,离线 RL 算法(即 CQL、IQL 和 TD3+BC)仍然优于 BC。这表明我们的加权采样策略并不会掩盖离线 RL 相对于 BC 的优势。完整的性能表格可以在附录A.13中找到。我们还评估了我们方法相对于均匀采样的改进概率,结果表明我们的方法在附录A.8.1中并不逊色于基线。

图 4: (a) \textbf{(a)} (a) 我们的方法与 Uniform \textit{Uniform} Uniform的回报(y 轴)相匹配。这表明在包含足够高回报轨迹的数据集中,我们的方法不会丧失性能。这些数据集是 D4RL 中的常规数据集,并未如第5.2节中那样对抗性地混入低回报轨迹。 (b) \textbf{(b)} (b)​ 在具有随机动态的经典控制任务中的表现。我们的方法优于基线,表明随机性不会破坏我们的方法。

5.5 随机 MDP 中的结果

由于我们的加权采样策略在理论上需要确定性的 MDP,我们通过在随机控制环境中评估来研究随机动态(即随机状态转移)是否会破坏我们的方法。它们的具体实现细节见附录4.6。我们使用第5.1节中描述的评估指标,并在图4b中展示结果。我们的两种方法在随机动态中仍然优于均匀采样,这表明随机性不会破坏它们。请注意,我们只报告了 CQL 的结果,因为 IQL 和 TD3+BC 与随机经典控制中使用的离散动作空间不兼容。

6 相关工作

我们的加权采样策略和非均匀经验重放在在线强化学习中旨在改善均匀样本选择。先前的研究重视不确定数据,近乎政策样本或通过拓扑顺序选择样本。然而,这些方法并未考虑采样引入的隐式行为策略的性能,因此不太可能解决混合离线强化学习数据集中的问题。

离线模仿学习(IL)考虑从包含少量专家数据和大量随机数据的数据集中训练专家策略。它们训练一个模型来区分转换是否来自专家,并从鉴别器的预测中学习接近专家的策略。概念上,我们的方法和离线 IL 都旨在利用有利数据(即稀疏的高回报/专家数据),尽管问题设置不同。离线 IL 需要将专家和随机数据分别放入两个缓冲区,但不需要奖励标签。相比之下,我们不需要可分离的数据集,但需要奖励标签来找到有利的数据。

7 讨论

重要性学习稀疏高回报轨迹: 尽管主流离线强化学习基准数据集(如D4RL)中的大多数常规数据集比我们在第5.2节研究的混合数据集具有更多的高回报轨迹,但需要注意的是,在现实领域(例如医疗保健)收集这些高回报数据是繁琐且可能昂贵的。因此,使离线强化学习能够从具有有限数量高回报轨迹的数据集中学习对于将离线强化学习应用于更现实的任务中至关重要。我们的工作的重要性在于提供了一种简单的技术,使离线强化学习能够从少数高回报轨迹中学习。

局限性: 我们的方法需要使用轨迹回报来计算样本权重,因此数据集不能是部分碎片化的轨迹,每个轨迹都需要从初始状态分布开始;否则,无法估计轨迹的回报。解决这一限制的一种可能方法是使用学习的值函数来估计样本权重,这样可以估计一个状态的预期回报,而无需完整的轨迹。

总结和经验

1. 研究背景

  • 背景和动机: 在离线强化学习(Offline RL)中,如何高效利用有限的数据资源是一大挑战。传统的均匀采样策略在高回报轨迹稀少的情况下表现较差。
  • 目标: 提出并验证基于权重的采样策略,以提高在稀疏高回报轨迹数据集上的离线强化学习算法的性能。

2. 方法和策略

  • 加权采样策略: 提出了两种加权采样策略,分别是 RW \textit{RW} RW(返回加权)和 AW \textit{AW} AW(优势加权),旨在提高高回报轨迹的权重,以提升整体性能。
  • 数据集构建: 构建了不同比例的混合数据集,通过将少量高回报数据(专家或中等性能)与大量低回报数据(随机)混合,模拟实际应用中的数据分布。

3. 实验设计

  • 评估指标: 使用归一化的平均回报和四分位均值(IQM)来衡量不同算法+采样器变体的性能,避免异常值的影响。
  • 实验环境: 在四个MuJoCo运动环境和多个混合数据集上测试每种算法+采样器变体。
  • 数据比例: 测试了 σ % \sigma\% σ%(专家或中等数据比例)分别为1%、5%、10%、50%的情况,分析不同比例下加权采样策略的效果。

4. 实验结果

  • 性能提升 RW \textit{RW} RW AW \textit{AW} AW策略在所有算法和数据比例下均显著优于基线方法 Uniform \textit{Uniform} Uniform Top-10% \textit{Top-10\%} Top-10% Half \textit{Half} Half。尤其在高回报轨迹稀少的情况下,性能提升更加显著。
  • 专家数据集对比: 在全专家数据集上训练的算法性能与使用加权采样策略在5%到10%专家数据上的性能相当,表明加权采样策略能在少量高回报轨迹下实现专家级别的性能。
  • 稳定性: 在具有随机动态的经典控制任务中,加权采样策略仍能保持较好的性能,表明随机性不会破坏这些方法。

5. 分析和讨论

  • 性能增益来源: 假设加权采样策略的性能提升源于数据集中的RPSV(相对回报标准差)的增加。实验结果显示,在相同的平均回报下,RPSV增加时,性能提升更为显著。
  • 方法局限: 加权采样策略需要完整的轨迹数据以计算轨迹回报,因此不能处理部分碎片化的轨迹数据。未来可能通过学习的值函数来估计样本权重,从而解决这一问题。

6. 相关工作

  • 在线强化学习中的非均匀经验重放: 许多研究关注优先选择不确定性高的数据或几乎在策略上的样本,但这些方法未考虑采样策略隐含的行为策略的性能。
  • 离线模仿学习: 离线模仿学习的目标是从少量专家数据和大量随机数据中训练出专家级别的策略。与之相比,本研究的方法不需要分离的数据集,但需要回报标签来找到有利的数据。

7. 实践意义

  • 现实应用中的重要性: 在实际领域(如医疗)中,高回报数据的收集可能既繁琐又昂贵。因此,能够从有限的高回报数据集中学习对于离线强化学习在现实任务中的部署至关重要。
  • 简单有效的技术: 本研究提出了一种简单的方法,使离线强化学习能够从少量高回报轨迹中学习,具有重要的实践意义。

8. 经验总结

  • 数据集构建: 通过构建不同比例的混合数据集,可以更全面地测试采样策略在不同数据分布下的表现,从而得出更具普适性的结论。
  • 评估指标选择: 使用IQM来衡量性能,避免了异常值的干扰,使得结果更具可靠性。
  • 算法兼容性: 在实验中注意到并报告了不同算法在特定环境下的兼容性问题(如IQL和TD3+BC在离散动作空间下的不兼容性),为后续研究提供了参考。
  • 方法扩展: 探讨了未来可能的扩展方向,如通过学习的值函数来估计样本权重,展示了研究的前瞻性。

  1. 正式的 μ i \mu_i μi定义见附录A.1。 ↩︎

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/742556.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

证件照制作工具有哪些?分享当下热门的证件照制作工具

无论是考证、出国旅游还是应聘,一张符合标准的证件照成了必备之物。 如果手头的证件照尺寸不符合要求,不必惊慌,现在有多种证件照制作软件可以帮助你迅速解决问题。 今天,本文就为大家分享几个证件照制作教程,让你的…

深度解析SD-WAN在企业组网中的应用场景

在现代企业快速发展的网络环境中,SD-WAN技术不仅是实现企业各站点间高效连接的关键,也是满足不同站点对互联网、SaaS云应用和公有云等多种业务需求的理想选择。本文将从企业的WAN业务需求出发,对SD-WAN的组网场景进行全面解析,涵盖…

SC200x系列再添新成员!移远通信智能模组SC200V / SC200U系列正式发布

6月24日,全球领先的物联网整体解决方案供应商移远通信宣布,正式推出其两款4G智能模组产品——SC200V系列和SC200U系列。 作为移远SC200x系列的新成员,这两款模组在系统性能、多媒体功能、网络连接、终端开发等方面有着优异的表现,…

Pyecharts入门

数据可视化 Pyecharts简介 Apache ECharts 是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。而 Python 是一门富有表达力的语言,很适合用于数据处理。当数据分析遇上数据可视化时&#…

QT拖放事件之五:自定义拖放操作-拖动中的修饰符操作

1、效果 2、代码 #include "SelfButton.h" #include <QApplication>SelfButton::SelfButton(QString str ,QWidget* parent):Q

Python为JSON解析和生成功能库之rapidjson使用详解

概要 在现代应用程序开发中,JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式,被广泛应用于Web开发、数据传输和配置文件等场景。Python自带的json模块已经非常强大,但在处理大规模数据时,其性能可能无法满足需求。为了提高JSON处理效率,Python的rapidjs…

精通pip:Python开发者的必备技能

目录 1. 安装 pip 2. 使用 pip 安装包 3. 卸载包 4. 更新包 5. 列出已安装的包 6. 搜索包 7. 使用 requirements.txt 文件安装多个包 8. 升级 pip 自身 9. 虚拟环境 10. 冻结依赖 11. 使用国内镜像源 12. 安装特定版本的包 13. 批量安装包 14. 显示帮助信息 15.…

【研究】AI大模型需要什么样的硬件?

关注AI大模型 x 硬件的两条思路 从22年11月OpenAI推出ChatGPT至今&#xff0c;我们看到Chatbot应用的能力不断增强&#xff0c;从最初的文字问答&#xff0c;迅速向具有自主记忆、推理、规划和执行的全自动能力的AI Agent发展。我们认为端侧智能是大模型发展的重要分支。建议投…

中达新材业绩增长遭问询:资产负债率远高同行,曾被执行1.1亿

《港湾商业观察》廖紫雯 近日&#xff0c;浙江中达新材料股份有限公司&#xff08;以下简称&#xff1a;中达新材&#xff09;完成北交所二轮问询&#xff0c;对北交所提出的业绩增长真实性核查、募集资金投资项目必要性等问题做出回复。 本次中达新材拟募集资金5.58亿投入年…

docker容器相关命令

☆ 问题描述 docker容器相关命令 ★ 解决方案 1. 拉取镜像 docker pull ubuntu2.查看镜像是否拉取成功 docker images3. 运行容器 docker run -itd --name <容器名称> -p <主机端口>:<容器端口> --cpus30 ubuntu # -p设置端口 --cpus/-c 设置核心 …

从删库到还原

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 &#x1f38f;&#xff1a;你只管努力&#xff0c;剩下的交给时间 &#x1f3e0; &#xff1a;小破站 从删库到还原 魔法一魔法二魔法三魔法四查看是否开启binlog&#xff0c;且format为row执行以下命…

公交行业系统特点及面临的挑战

在当前城市发展中&#xff0c;公交行业作为公共交通的重要组成部分&#xff0c;承担着重要的社会责任。随着科技的进步和城市化进程的加快&#xff0c;公交行业系统也在不断地发展和完善。然而&#xff0c;从目前的发展情况来看&#xff0c;公交行业系统也呈现出一些显著的特点…

pandas将dataframe展开/拉伸成一个series

pandas提供了一个函数实现这个操作&#xff1a; dataframe.stack()示例程序&#xff1a; import pandas as pd import numpy as npdf pd.DataFrame(np.random.randint(0, 10, size(2, 4)), columns[col_1, "col_2", "col_3", "col_4"]) # 展…

【全资料】软件建设过程全资料整理(原件打包)

获取方式&#xff1a;本文末个人名片获取。 工作安排任务书&#xff0c;可行性分析报告&#xff0c;立项申请审批表&#xff0c;产品需求规格说明书&#xff0c;需求调研计划&#xff0c;用户需求调查单&#xff0c;用户需求说明书&#xff0c;概要设计说明书&#xff0c; 技术…

职业技能大赛引领下大数据专业实训教学的改革研究

随着信息化时代的加速发展&#xff0c;大数据专业作为新兴的热门领域&#xff0c;正日益成为高等职业教育体系中不可或缺的一部分&#xff0c;其承担着为社会培养大批具有高素质应用技能的大数据技术人才的重任。职业技能大赛作为检验和提升学生技能水平的有效平台&#xff0c;…

别再盲目生产了!精益KPI管理让你事半功倍!

在竞争日益激烈的制造业领域&#xff0c;如何提升生产效率、降低成本、确保产品质量&#xff0c;是每个企业都需要面对的重要课题。而研华科技作为工业自动化领域的领军企业&#xff0c;凭借其独特的精益生产KPI分析与管理平台&#xff0c;为企业提供了一套行之有效的解决方案。…

高考志愿填报:选择好专业还是好学校?

人不走空 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌赋&#xff1a;斯是陋室&#xff0c;惟吾德馨 高考志愿填报&#xff1a;选择好专业还是好学校&#xff1f; 每年高考结束后&#xff0c;考生和家长面临的一个…

网络设备框架

文章目录 前言一、主要流程二、Linux网络设备驱动架构1.概述2.读入数据 总结 前言 Linux中的Ethernet驱动框架涉及到网络设备驱动程序的多个方面&#xff0c;包括初始化、注册、数据传输以及与物理层&#xff08;PHY&#xff09;的交互。以下是网络设备驱动架构的概述&#xf…

Spring Boot配置Springdoc

刚刚开通了一个公众号&#xff0c;会分享一些技术博客和自己觉得比较好的项目&#xff0c;同时会更新一些自己使用的工具和图书资料&#xff0c;后面会整理一些面试资料进行分享&#xff0c;觉得有兴趣的可以关注一下。 问题描述 之前文章有提到Spring Boot切换到Springdoc&a…

LeetCode刷题之HOT100之乘积最大子数组

2024/6/25 六月也来到了末尾&#xff0c;刷题也刷了一个半月左右。收获还是有的&#xff0c;最起码打字快了哈哈&#xff0c;做题啦&#xff01; 1、题目描述 2、逻辑分析 一眼动态规划。 解题思路 遍历数组时计算当前最大值&#xff0c;不断更新令nowMax 为当前最大值&…