首页
关于
Search
1
微服务
34 阅读
2
同步本地Markdown至Typecho站点
29 阅读
3
JavaWeb——后端
18 阅读
4
苍穹外卖
14 阅读
5
智能协同云图库
13 阅读
后端学习
项目
杂项
科研
论文
默认分类
登录
找到
10
篇与
论文
相关的结果
2025-06-17
强化学习
强化学习 Q-learning 核心更新公式 $$ \boxed{Q(s,a) \gets Q(s,a) + \alpha\left[r + \gamma\,\max_{a'}Q(s',a') - Q(s,a)\right]} $$ - $s$:当前状态 - $a$:当前动作 - $r$:执行 $a$ 后获得的即时奖励 - $s'$:执行后到达的新状态 - $\alpha\in(0,1]$:学习率,决定“这次新信息”对旧值的影响力度 - $\gamma\in[0,1)$:折扣因子,衡量对“后续奖励”的重视程度 - $\max_{a'}Q(s',a')$:新状态下可选动作的最大估值,表示“后续能拿到的最大预期回报” 一般示例 环境设定 状态集合:${S_1, S_2}$ 动作集合:${a_1, a_2}$ 转移与奖励: 在 $S_1$ 选 $a_1$ → 获得 $r=5$,转到 $S_2$ 在 $S_1$ 选 $a_2$ → 获得 $r=0$,转到 $S_2$ 在 $S_2$ 选 $a_1$ → 获得 $r=0$,转到 $S_1$ 在 $S_2$ 选 $a_2$ → 获得 $r=1$,转到 $S_1$ 超参数:$\alpha=0.5$,$\gamma=0.9$ 初始化:所有 $Q(s,a)=0$ 在 Q-Learning 里,智能体并不是“纯随机”地走,也不是“一开始就全凭 Q 表拿最高值”——而是常用一种叫 $\epsilon$-greedy 的策略来平衡: 探索(Exploration):以概率 $\epsilon$(比如 10%)随机选一个动作,帮助智能体发现还没试过、可能更优的路径; 利用(Exploitation):以概率 $1-\epsilon$(比如 90%)选当前状态下 Q 值最高的动作,利用已有经验最大化回报。 下面按序进行 3 步“试—错”更新,并在表格中展示每一步后的 $Q$ 值。 步骤 状态 $s$ 动作 $a$ 奖励 $r$ 到达 $s'$ $\max_{a'}Q(s',a')$ 更新后 $Q(s,a)$ 当前 Q 表 初始 — — — — — — $Q(S_1,a_1)=0,;Q(S_1,a_2)=0$ $Q(S_2,a_1)=0,;Q(S_2,a_2)=0$ 1 $S_1$ $a_1$ 5 $S_2$ 0 $0+0.5,(5+0-0)=2.5$ $Q(S_1,a_1)=2.5,;Q(S_1,a_2)=0$ $Q(S_2,a_1)=0,;Q(S_2,a_2)=0$ 2 $S_2$ $a_2$ 1 $S_1$ $到达S_1状态后选择最优动作:$$\max{2.5,0}=2.5$ $0+0.5,(1+0.9\cdot2.5-0)=1.625$ $Q(S_1,a_1)=2.5,;Q(S_1,a_2)=0$ $Q(S_2,a_1)=0,;Q(S_2,a_2)=1.625$ 3 $S_1$ $a_1$ 5 $S_2$ $\max{0,1.625}=1.625$ $2.5+0.5,(5+0.9\cdot1.625-2.5)\approx4.481$ $Q(S_1,a_1)\approx4.481,;Q(S_1,a_2)=0$ $Q(S_2,a_1)=0,;Q(S_2,a_2)=1.625$ 第1步:从 $S_1$ 选 $a_1$,立即回报5,更新后 $Q(S_1,a_1)=2.5$。 第2步:从 $S_2$ 选 $a_2$,回报1,加上对 $S_1$ 后续最优值的 $0.9$ 折扣,得到 $1+0.9\times2.5=3.25$,更新后 $Q(S_2,a_2)=1.625$。 第3步:再一次在 $S_1$ 选 $a_1$,这次考虑了 $S_2$ 的最新估值,最终把 $Q(S_1,a_1)$ 提升到约 4.481。 通过这样一步步的“试—错 + 贝尔曼更新”,Q-Learning 能不断逼近最优 $Q^*(s,a)$,从而让智能体在每个状态都学会选出长期回报最高的动作。 训练结束后,表里每个状态 $s$ 下各动作的 Q 值都相对准确了,我们就可以直接读表来决策: $$ \pi(s) = \arg\max_a Q(s,a) $$ 即“在状态 $s$ 时,选 Q 值最高的动作”。 状态 \ 动作 $a_1$ $a_2$ $S_1$ 4.481 0 $S_2$ 0 1.625 DQN 核心思想:用深度神经网络近似 Q 函数来取代表格,在高维输入上直接做 Q-learning,并通过 经验回放(写进缓冲区 + 随机抽样训练”) + 目标网络(Target Network) 两个稳定化技巧,使 时序差分(TD )学习在非线性函数逼近下仍能收敛。 TD 学习 = 用“即时奖励 + 折扣后的未来估值”作为目标,通过 TD 误差持续修正当前估计。 训练过程 1. 初始化 主网络(Online Network) 定义一个 Q 网络 $Q(s,a;\theta)$,随机初始化参数 $\theta$。 目标网络(Target Network) 复制主网络参数,令 $\theta^- \leftarrow \theta$。 目标网络用于计算贝尔曼目标值,短期内保持不变。 经验回放缓冲区(Replay Buffer) 创建一个固定容量的队列 $\mathcal{D}$,用于存储交互样本 $(s,a,r,s')$。 超参数设置 学习率 $\eta$ 折扣因子 $\gamma$ ε-greedy 探索率 $\epsilon$(初始值) 最小训练样本数阈值 $N_{\min}$ 每次训练的小批量大小 $B$ 目标网络同步频率 $C$(梯度更新次数间隔) 2. 与环境交互并存储经验 在每个时间步 $t$: 动作选择 $$ a_t = \begin{cases} \text{随机动作} & \text{以概率 }\epsilon,\ \arg\max_a Q(s_t,a;\theta) & \text{以概率 }1-\epsilon. \end{cases} $$ 环境反馈 执行动作 $a_t$,得到奖励 $r_t$ 和下一个状态 $s_{t+1}$。 (需预先定义奖励函数) 存入缓冲区 将元组 $(s_t, a_t, r_t, s_{t+1})$ 存入 Replay Buffer $\mathcal{D}$。 如果 $\mathcal{D}$ 已满,则丢弃最早的样本。 3. 批量随机采样并训练 当缓冲区样本数 $\ge N_{\min}$ 时,每隔一次或多次环境交互,就进行一次训练更新: 随机抽取小批量 从 $\mathcal{D}$ 中随机采样 $B$ 条过往经验: $$ {(s_i, a_i, r_i, s'i)}{i=1}^B $$ 计算贝尔曼目标 对每条样本,用目标网络 $\theta^-$ 计算: $$ y_i = r_i + \gamma \max_{a'}Q(s'_i, a'; \theta^-) $$ 算的是:当前获得的即时奖励 $r_i$,加上“到了下一个状态后,做最优动作所能拿到的最大预期回报” 预测当前 Q 值 将当前状态-动作对丢给主网络 $\theta$,得到预测值: $$ \hat Q_i = Q(s_i, a_i;\theta) $$ 算的是:在当前状态 $s_i$、选了样本里那个动作 $a_i$ 时,网络现在估计的价值 构造损失函数 均方误差(MSE)损失: $$ L(\theta) = \frac{1}{B}\sum_{i=1}^B\bigl(y_i - \hat Q_i\bigr)^2 $$ 梯度下降更新主网络 $$ \theta \gets \theta - \eta \nabla_\theta L(\theta) $$ 4. 同步/软更新目标网络 硬同步(Fixed Target): 每做 $C$ 次梯度更新,就执行 $$ \theta^- \gets \theta $$ (可选)软更新: 用小步长 $\tau\ll1$ 平滑跟踪: $$ \theta^- \gets \tau \theta + (1-\tau) \theta^-. $$ 5. 重复训练直至收敛 重复步骤 2-4 直至满足终止条件(如最大回合数或性能指标)。 训练过程中可逐步衰减 $\epsilon$(ε-greedy),从更多探索过渡到更多利用。 示例 假设设定 动作空间:两个动作 ${a_1,a_2}$。 状态向量维度:2 维,记作 $s=(s_1,s_2)$。 目标网络结构(极简线性网络): $$ Q(s;\theta^-) = W^-s + b^-, $$ $W^-$ 是 $2\times2$ 的权重矩阵 (行数为动作数,列数为状态向量维数) $b^-$ 是长度 2 的偏置向量 网络参数(假定已初始化并被冻结): $$ W^- = \begin{pmatrix} 0.5 & -0.2\ 0.1 & ;0.3 \end{pmatrix},\quad b^- = \begin{pmatrix}0.1\-0.1\end{pmatrix}. $$ 折扣因子 $\gamma=0.9$。 样本数据 假设我们抽到的一条经验是 $$ (s_i,a_i,r_i,s'_i) = \bigl((0.0,\;1.0),\;a_1,\;2,\;(1.5,\,-0.5)\bigr). $$ 当前状态 $s_i=(0.0,1.0)$,当时选了动作 $a_1$ 并得到奖励 $r_i=2$。 到达新状态 $s'_i=(1.5,-0.5)$。 计算过程 前向计算目标网络输出 $$ Q(s'_i;\theta^-) = W^-,s'_i + b^- \begin{pmatrix} 0.5 & -0.2\ 0.1 & ;0.3 \end{pmatrix} \begin{pmatrix}1.5\-0.5\end{pmatrix} + \begin{pmatrix}0.1\-0.1\end{pmatrix} \begin{pmatrix} 0.5\cdot1.5 + (-0.2)\cdot(-0.5) + 0.1 \[4pt] 0.1\cdot1.5 + ;0.3\cdot(-0.5) - 0.1 \end{pmatrix} \begin{pmatrix} 0.75 + 0.10 + 0.1 \[3pt] 0.15 - 0.15 - 0.1 \end{pmatrix} \begin{pmatrix} 0.95 \[3pt] -0.10 \end{pmatrix}. $$ 因此, $$ Q(s'_i,a_1;\theta^-)=0.95,\quad Q(s'_i,a_2;\theta^-)= -0.10. $$ 取最大值 $$ \max_{a'}Q(s'_i,a';\theta^-) = \max{0.95,,-0.10} = 0.95. $$ 计算目标 $y_i$ $$ y_i = r_i + \gamma \times 0.95 = 2 + 0.9 \times 0.95 = 2 + 0.855 = 2.855. $$ 这样,我们就得到了 DQN 中训练主网络时的"伪标签" $y_i=2.855$,后续会用它与主网络预测值 $Q(s_i,a_i;\theta)$ 计算均方误差,进而更新 $\theta$。 改进DQN: 一、构造 n-step Transition 维护一个长度为 n 的滑动队列 每步交互(状态 → 动作 → 奖励 → 新状态)后,都向队列里添加这条"单步经验"。 当队列中积累到 n 条经验时,就可以合并成一条"n-step transition"了。 合并过程(一步一步累加) 起始状态:取队列里第 1 条记录中的状态 $s_t$ 起始动作:取第 1 条记录中的动作 $a_t$ 累积奖励:把队列中前 n 条经验的即时奖励按折扣因子 $\gamma$ 一步步加权累加: $$ G_t^{(n)} = r_t + \gamma,r_{t+1} + \gamma^2,r_{t+2} + \cdots + \gamma^{n-1}r_{t+n-1} $$ 形成一条新样本 最终你得到一条合并后的样本: $$ \bigl(s_t,;a_t,;G_t^{(n)},;s_{t+n},;\text{done}_{t+n}\bigr) $$ 然后把它存入主 Replay Buffer。 接着,把滑动队列的最早一条经验丢掉,让它向前滑一格,继续接收下一步新经验。 二、批量随机采样与训练 随机抽取 n-step 样本 训练时,不管它是来自哪一段轨迹,都从 Replay Buffer 里随机挑出一批已经合好的 n-step transition。 每条样本就封装了"从 $s_t$ 出发,执行 $a_t$,经历 n 步后所累积的奖励加 bootstrap"以及到达的末状态。 计算训练目标 对于每条抽出的 n-step 样本 $(s_t,a_t,G_t^{(n)},s_{t+n},\text{done}_{t+n})$, 如果 $\text{done}{t+n}=\text{False}$,则 $$ y = G_t^{(n)} + \gamma^n,\max{a'}Q(s_{t+n},a';\theta^-); $$ 如果 $\text{done}_{t+n}=\text{True}$,则 $$ y = G_t^{(n)}. $$ 主网络给出预测 把样本中的起始状态-动作对 $(s_t,a_t)$ 丢给在线的 Q 网络,得到当前估计的 $\hat{Q}(s_t,a_t)$。 更新网络 用"目标值 $y$"和"预测值 $\hat{Q}$"之间的平方差,构造损失函数。 对损失做梯度下降,调整在线网络参数,使得它的预测越来越贴近那条合并后的真实回报。 VDN 核心思路:将团队 Q 函数写成各智能体局部 Q 的线性和 $Q_{tot}=\sum_{i=1}^{N}\tilde{Q}_i$,在训练时用全局奖励反传梯度,在执行时各智能体独立贪婪决策。 CTDE 指 Centralized Training, Decentralized Execution —— 在训练阶段使用集中式的信息或梯度(可以看到全局状态、联合奖励、各智能体的隐藏变量等)来稳定、加速学习;而在执行阶段,每个智能体只依赖自身可获得的局部观测来独立决策。 采用 CTDE 的好处: 部署高效、可扩展:运行时每个体只需本地观测,无需昂贵通信和同步,适合大规模或通信受限场景。 降低非平稳性:每个智能体看到的“环境”里不再包含 其他正在同时更新的智能体——因为所有参数其实在同一次反向传播里被一起更新,整体策略变化保持同步;对单个智能体而言,环境动态就不会呈现出随机漂移。 避免“懒惰智能体”:只要某个行动对团队回报有正贡献,它在梯度里就能拿到正向信号,不会因为某个体率先学到高收益行为而使其他个体“无所事事”。 核心公式与训练方法 值分解假设 $$ Q\bigl((h_1,\dots,h_d),(a_1,\dots,a_d)\bigr);\approx;\sum_{i=1}^{d},\tilde{Q}_i(h_i,a_i) $$ 其中 $h_i$ 为第 $i$ 个智能体的历史观测,$a_i$ 为其动作。每个 $\tilde{Q}_i$ 只使用局部信息;训练时通过对联合 $Q$ 的 TD 误差求梯度,再"顺着求和"回传到各 $\tilde{Q}_i$ 。这样既避免了为各智能体手工设计奖励,又天然解决了联合动作空间呈指数爆炸的问题。 Q-learning 更新 $$ Q_{t+1}(s_t,a_t);=;(1-\eta_t),Q_{t}(s_t,a_t);+;\eta_t\bigl[r_t+\gamma\max_{a}Q_{t}(s_{t+1},a)\bigr] $$ 论文沿用经典 DQN 的 Q-learning 目标,对 联合 Q 值 计算 TD 误差,然后按上式更新;全局奖励 $r_t$ 会在反向传播时自动分摊到各 $\tilde{Q}_i$ 。 训练过程 使用LSTM:让智能体在「只有局部、瞬时观测」的环境中记住并利用过去若干步的信息。 1. 初始化 组件 说明 在线网络 为每个智能体 $i=1\ldots d$ 建立局部 $Q$ 网络 $\widetilde Q_i(h^i,a^i;\theta_i)$。最后一层是 值分解层:把所有 $\widetilde Q_i$ 相加得到联合 $Q=\sum_i\widetilde Q_i$ 目标网络 为每个体复制参数:$\theta_i^- \leftarrow \theta_i$,用于计算贝尔曼目标。 经验回放缓冲区 存储元组 $(h_t, \mathbf a_t, r_t, o_{t+1}) \rightarrow \mathcal D$,其中 $\mathbf a_t=(a_t^1,\dots,a_t^d)$。 超参数 Adam 学习率 $1\times10^{-4}$,折扣 $\gamma$,BPTT 截断长度 8,Eligibility trace $\lambda=0.9$ ;小批量 $B$、目标同步周期 $C$、$\varepsilon$-greedy 初始值等。 网络骨架:Linear (32) → ReLU → LSTM (32) → Dueling (Value + Advantage) 头产生 $\widetilde Q_i$ 。 2. 与环境交互并存储经验 局部隐藏状态更新(获得 $h_t^i$) 采样观测 $o_t^i \in \mathbb R^{3\times5\times5}$(RGB × 5 × 5 视野) 线性嵌入 + ReLU $x_t^i = \mathrm{ReLU}(W_o,\text{vec}(o_t^i)+b_o),; W_o!\in!\mathbb R^{32\times75}$ 递归更新 LSTM $h_t^i,c_t^i = \text{LSTM}{32}(x_t^i,;h{t-1}^i,c_{t-1}^i)$ (初始 $h_0^i,c_0^i$ 置零;执行期只用本体状态即可) 动作选择(分散执行) $$ a_t^i=\begin{cases} \text{随机动作}, & \text{概率 } \varepsilon,\ \arg\max_{a}\widetilde Q_i(h_t^i,a;\theta_i), & 1-\varepsilon. \end{cases} $$ 环境反馈:执行联合动作 $\mathbf a_t$,获得单条 团队奖励 $r_t$ 以及下一组局部观测 $o_{t+1}^i$。 重要:此处不要直接把 $h_{t+1}^i$ 写入回放池,而是存下 $(h_t^i, a_t^i, r_t, o_{t+1}^i)$。 之后在训练阶段再用同样的“Step 0” 方式,离线地把 $o_{t+1}^i\rightarrow h_{t+1}^i$。 这样可避免把梯度依赖塞进经验池。 写入回放池:$(h_t, \mathbf a_t, r_t, o_{t+1}) \rightarrow \mathcal D$。 3. 批量随机采样并联合训练 对缓冲区达到阈值后,每次更新步骤: 采样 $B$ 条长度为 $L$ 的序列。 假设抽到第 $k$ 条序列的第一个索引是 $t$。 依次取出连续的 $(h_{t+j}, a_{t+j}, r_{t+j}, o_{t+j+1}), j=0, \ldots, L-1$。 先用存储的 $o_{t+j+1}$ 离线重放"Step 0"得到 $h_{t+j+1}$,这样序列就拥有 $(h_{t+j}, h_{t+j+1})$ 前向计算 $$ \hat Q_i^{(k)} = \widetilde Q_i(h^{i,(k)}_t,a^{i,(k)}t;\theta_i), \quad \hat Q^{(k)}=\sum{i}\hat Q_i^{(k)} . $$ 贝尔曼目标(用目标网络) $$ y^{(k)} = r^{(k)} + \gamma \sum_{i}\max_{a}\widetilde Q_i(h^{i,(k)}_{t+1},a;\theta_i^-). $$ 损失 $$ L=\frac1B\sum_{k=1}^{B}\bigl(y^{(k)}-\hat Q^{(k)}\bigr)^2 . $$ 梯度反传(自动信用分配) 因为 $\hat Q=\sum_i\widetilde Q_i$,对每个 $\widetilde Q_i$ 的梯度系数恒为 1, 整个 团队 TD 误差 直接回流到各体网络,无需个体奖励设计 。 参数更新:$\theta_i \leftarrow \theta_i-\eta\nabla_{\theta_i}L$。 4. 同步 / 软更新目标网络 硬同步:每 $C$ 次梯度更新后执行 $\theta_i^- \leftarrow \theta_i$。 软更新:可选 $\theta_i^- \leftarrow \tau\theta_i+(1-\tau)\theta_i^-$。 5. 重复直到收敛 持续循环步骤 2–4,逐步衰减 $\varepsilon$。 训练完成后,每个体只需本地 $\widetilde Q_i$ 就能独立决策,与中心最大化 $\sum_i\widetilde Q_i$ 等价 。
论文
zy123
6月17日
0
0
0
2025-05-05
动态图神经网络
动态图神经网络 如何对GAT的权重($W$)和注意力参数($a$)进行增量更新(邻居偶尔变化) 1. 核心思想 局部更新:邻居变化的节点及其直接邻域的权重和注意力参数需要调整,其他部分冻结。 梯度隔离:反向传播时,仅计算受影响节点的梯度,避免全局参数震荡。 2. 数学实现步骤 (1) 识别受影响的节点 设邻居变化后的新邻接矩阵为 $\tilde{A}$,原邻接矩阵为 $A$,受影响节点集合 $\mathcal{V}_{\text{affected}}$ 包括: 新增或删除边的两端节点(直接受影响)。 这些节点的1-hop邻居(间接受影响,根据GAT层数决定)。 (2) 损失函数局部化 仅对 $\mathcal{V}_{\text{affected}}$ 中的节点计算损失: $$ \mathcal{L}_{\text{incremental}} = \sum_{i \in \mathcal{V}_{\text{affected}}} \ell(y_i, \hat{y}_i) $$ 其中 $\ell$ 为交叉熵损失,$y_i$ 为标签,$\hat{y}_i$ 为模型输出。 (3) 梯度计算与参数更新 梯度掩码: 反向传播时,非受影响节点的梯度强制置零: $$ \nabla_{W,a} \mathcal{L}{\text{incremental}} = \left{ \begin{array}{ll} \nabla{W,a} \ell(y_i, \hat{y}i) & \text{if } i \in \mathcal{V}{\text{affected}} \ 0 & \text{otherwise} \end{array} \right. $$ 参数更新: 使用优化器(如Adam)仅更新有梯度的参数: $$ W \leftarrow W - \eta \nabla_W \mathcal{L}{\text{incremental}}, \quad a \leftarrow a - \eta \nabla_a \mathcal{L}{\text{incremental}} $$ 其中 $\eta$ 为较小的学习率(防止过拟合)。 (4) 注意力权重的动态适应 GAT的注意力机制会自动适应新邻居: $$ \alpha_{ij} = \text{softmax}\left(\text{LeakyReLU}\left(a^T [W h_i \| W h_j]\right)\right) $$ 由于 $W$ 和 $a$ 已局部更新,新邻居 $j \in \tilde{\mathcal{N}}(i)$ 的权重 $\alpha_{ij}$ 会重新计算。 3. 适用场景 低频变化:如社交网络每天新增少量边、论文引用网络月度更新。 局部变化:每次变化仅影响图中少量节点(<10%)。 若邻居高频变化(如秒级更新),需改用动态GNN(如TGAT)或时间序列建模。 EvolveGCN EvolveGCN-H 1. EvolveGCN-H核心思想 EvolveGCN-H 通过 GRU(门控循环单元) 动态更新 GCN 每一层的权重矩阵 $W_t^{(l)}$,将权重矩阵视为 GRU 的 隐藏状态,并利用当前时间步的 节点嵌入(特征) 作为输入来驱动演化。 关键特点: 输入依赖:利用节点嵌入 $H_t^{(l)}$ 指导权重更新。 时序建模:通过 GRU 隐式捕捉参数演化的长期依赖。 2. 动态更新流程(以第 $l$ 层为例) 输入: 当前节点嵌入矩阵 $H_t^{(l)} \in \mathbb{R}^{n \times d}$: 上一时间步的权重矩阵 $W_{t-1}^{(l)} \in \mathbb{R}^{d \times d'}$: 邻接矩阵 $A_t \in \mathbb{R}^{n \times n}$: 输出: 更新后的权重矩阵 $W_t^{(l)} \in \mathbb{R}^{d \times d'}$。 下一层节点嵌入 $H_t^{(l+1)} \in \mathbb{R}^{n \times d'}$。 3. 动态更新示意图 Time Step t-1 Time Step t +-------------------+ +-------------------+ | Weight Matrix | | Weight Matrix | | W_{t-1}^{(l)} | --(GRU更新)--> | W_t^{(l)} | +-------------------+ +-------------------+ ^ ^ | | +-------------------+ +-------------------+ | Node Embeddings | | Node Embeddings | | H_t^{(l)} | --(GCN计算)--> | H_t^{(l+1)} | +-------------------+ +-------------------+ ^ ^ | | +-------------------+ +-------------------+ | 邻接矩阵 A_t | | 邻接矩阵 A_{t+1} | | (显式输入) | | (下一时间步输入) | +-------------------+ +-------------------+ $$ \begin{align*} W_t^{(l)} &
论文
zy123
5月5日
0
10
0
2025-04-16
陈茂森论文
陈茂森论文 随机移动网络系统的稳定性 马尔科夫链与网络平均度推导 1.马尔科夫链的基本概念 马尔科夫链描述的是这样一种随机过程:系统在若干个可能的状态中变化,下一时刻所处状态只依赖于当前状态,而与过去的状态无关,这就是所谓的“无记忆性”或马尔科夫性。 无记忆性意味着,对于任何 $s, t \ge 0$, $$ P(T > s+t \mid T > s) = P(T > t). $$ 假设你已经等待了 $s$ 分钟,那么再等待至少 $t$ 分钟的概率,和你一开始就等待至少 $t$ 分钟的概率完全相同。 在所有概率分布里,只有指数分布 $$ P(T>t) = e^{-\lambda t} $$ 具有这种“无记忆性”特征: $$ P(T>s+t \mid T>s) = \frac{P(T>s+t)}{P(T>s)} = \frac{e^{-\lambda(s+t)}}{e^{-\lambda s}} = e^{-\lambda t} = P(T>t). $$ 链路状态的马尔科夫模型 考虑网络中每条链路的动态行为,其状态空间为: 状态0:链路断开 状态1:链路连通 定义概率函数: $p_1(t)$:时刻 $t$ 处于连通状态的概率 $p_0(t) = 1 - p_1(t)$:断开概率 同时,我们假设链路从一个状态转移到另一个状态需要等待一段时间,这段等待时间通常服从指数分布(论文中通过 KS 检验确认): 从断开(0)到连通(1)的等待时间 $T_{01} \sim \text{Exp}(\lambda_{01})$ 从连通(1)到断开(0)的等待时间 $T_{10} \sim \text{Exp}(\lambda_{10})$ 其中,$\lambda_{01}$ 和 $\lambda_{10}$ 为转移速率,表示单位时间内事件(转移)发生的平均次数 2.推导单条链路的连通概率 根据连续时间马尔科夫链的理论,我们可以写出状态转移的微分方程。对于状态1(连通状态),概率 $p_1(t)$ 的变化率由两个部分组成: 当链路处于状态0时,以速率 $\lambda_{01}$ 变为状态1。这部分概率增加的速率为 $$ \lambda_{01} , p_0(t)=\lambda_{01} (1-p_1(t)). $$ 当链路处于状态1时,以速率 $\lambda_{10}$ 转换为状态0。这部分使 $p_1(t)$ 减少,其速率为 $$ \lambda_{10} , p_1(t). $$ 所以,$p_1(t)$ 的微分方程写成: $$ \frac{d p_1(t)}{dt} = \lambda_{01} \, (1-p_1(t)) - \lambda_{10} \, p_1(t). $$ 这个方程可以整理为: $$ \frac{d p_1(t)}{dt} + (\lambda_{01}+\lambda_{10}) \, p_1(t) = \lambda_{01}. $$ 这其实是一个一阶线性微分方程,其标准求解方法是求解其齐次解与非齐次解。 3. 求解微分方程 整个微分方程的通解为: $$ p_1(t)= \frac{\lambda_{01}}{\lambda_{01}+\lambda_{10}} + C\, e^{-(\lambda_{01}+\lambda_{10})t}. $$ 利用初始条件 $p_1(0)=p_1^0$(初始时刻链路连通的概率),我们可以求出 $C$: 即 $$ C = p_1^0 -\frac{\lambda_{01}}{\lambda_{01}+\lambda_{10}}. $$ 所以,链路在任意时刻 $t$ 连通的概率为: $$ p_1(t)= \frac{\lambda_{01}}{\lambda_{01}+\lambda_{10}} + \left( p_1^0 -\frac{\lambda_{01}}{\lambda_{01}+\lambda_{10}} \right)e^{-(\lambda_{01}+\lambda_{10})t}. $$ 这就是单条链路的连通概率函数,描述了从任意初始条件出发,经过一段时间后,链路达到平衡状态的过程。 4.推导网络平均度的变化函数 在一个由 $N$ 个节点构成的网络中,每个节点都与其它节点进行通信(不考虑自环),因此每个节点最多有 $N-1$ 个邻居。对于任意一对节点 $i$ 和 $j$,它们之间链路连通的概率 $p_1(t)$(假设所有链路独立且同分布)。 某个节点 $i$ 在时刻 $t$ 的度 $d_i(t)$可以写作: $$ d_i(t)= \sum_{\substack{j=1 \ j\neq i}}^N p_{ij}(t), $$ 其中 $p_{ij}(t)=p_1(t)$。 因此,每个节点的期望度为: $$ E[d_i(t)]=(N-1)p_1(t). $$ 网络平均度就是对所有节点的期望度取平均,由于网络中每个节点都遵循相同统计规律,所以网络平均度可表示为: $$ \bar{d}(t) = \frac{1}{N}\sum_{i=1}^{N} E[d_i(t)] = \frac{N \cdot (N-1)p_1(t)}{N} = (N-1)p_1(t) $$ 将我们前面得到的 $p_1(t)$ 表达式代入,就得到网络平均度随时间变化的表达式: $$ \bar{d}(t)= (N-1)\left[ \frac{\lambda_{01}}{\lambda_{01}+\lambda_{10}} + \left( p_1^0 -\frac{\lambda_{01}}{\lambda_{01}+\lambda_{10}} \right)e^{-(\lambda_{01}+\lambda_{10})t}\right]. $$ 这就是网络平均度的变化函数: 网络开始时每条链路的连通概率为 $p_1^0$ 这种调整过程符合指数衰减规律,即偏离平衡值的部分按 $e^{-(\lambda_{01}+\lambda_{10})t}$ 衰减 当 $t$ 趋向无穷大时,指数项 $e^{-(\lambda_{01}+\lambda_{10})t}$ 衰减为0,网络平均度趋向于 $(N-1)\frac{\lambda_{01}}{\lambda_{01}+\lambda_{10}}$,这就是网络达到平衡状态后的理论平均度。 特征信号参数的平稳性 证明系统在平衡态下具有统计上的稳定性。 从节点空间分布证明平稳性。 设节点在模型区域的坐标为 $(X,Y)$,其分布概率密度函数写为 $$ f(x,y). $$ 那么节点在模型子区域 $R_1$ 中出现的概率为 $$ P_{R_1}=\int_{R_1} f(x,y) \,dx\,dy. $$ 在平衡状态下,理论上节点的位置分布 $f(x,y)$ 保持不变,即每个区域内节点出现的概率 $P_{R_1}$ 是常数,不随时间变化。证明在平衡状态下节点分布稳定。 扰动后的恢复能力 静止节点分布特性满足均匀分布,概率密度函数为 $g(x,y)$; 运动节点的概率密度函数为 $h(x,y)$; 在时刻 $t_0$ 时,网络中共有 $N$ 个节点,其中有 $s$ 个静止,故静止节点的比例为 $p=\frac{s}{N}$。 节点整体的分布概率密度函数可写为 $$ f(x,y)=p\, g(x,y)+(1-p)\, h(x,y). $$ 在平衡状态下,$p$ 的理论值为一个常数,所以 $f(x,y)$ 不随时间变化,从而网络连通度稳定。 接下来,考虑外界扰动的影响:假设在时刻 $t_1$ 新加入 $m$ 个符合均匀分布的节点, 扰动后的总分布($t_1$时刻后) 新加入的 $m$ 个节点是静止的,其分布为 $g(x,y)$ 此时网络的总节点数 $N+m$: 静止节点总数:$s+m$ 运动节点总数:$N-s$(原有运动节点数不变) 因此,扰动后的分布为: $$ f(x,y,t_1) = \frac{s + m}{N + m} g(x,y) + \frac{N - s}{N + m} h(x,y) $$ $$ f(x,y,t_1) = p' \cdot g(x,y) + (1-p') \cdot h(x,y) $$ 其中 $p' = \frac{s + m}{N + m}$。 近似处理(当 $N, s \gg m$ 时) $$ p' = \frac{s + m}{N + m} \approx \frac{s}{N} = p $$ 因此,扰动后的分布近似为: $$ f(x,y,t_1) \approx p \cdot g(x,y) + (1-p) \cdot h(x,y) $$ 这与初始平衡态的分布相同,说明网络在扰动后恢复了平衡态。 系统稳定性分析 平衡点及误差坐标 论文第 2.1 节推导出,单条链路连通概率 $p_1(t)$ 满足 $$ \dot p_1(t) = -(\lambda_{01}+\lambda_{10})\,p_1(t) \;+\;\lambda_{01}. \tag{2‑18} $$ 网络有 $N$ 个节点,**平均度** $$ d(t) = (N-1)\,p_1(t). $$ 设平衡连通概率 $p_1^*$ 满足 $\dot p_1=0$,解得 **平衡点** $$ p_1^* = \frac{\lambda_{01}}{\lambda_{01}+\lambda_{10}}, \quad d^* \;=\;(N-1)\,p_1^*. $$ **定义误差(偏离平衡的量)** $$ e(t)=d(t)-d^*. $$ 其中 $$ d(t)=(N-1)\,p_1(t), \qquad d^*=(N-1)\,p_1^*. $$ 将 $d$ 和 $d^*$ 代入 $$ e(t) =d(t)-d^* =(N-1)\,p_1(t)\;-\;(N-1)\,p_1^* =(N-1)\,\bigl[p_1(t)-p_1^*\bigr]. $$ 解得 $$ p_1(t)-p_1^* \;=\;\frac{e(t)}{\,N-1\,} \quad\Longrightarrow\quad p_1(t) =\frac{e(t)}{\,N-1\,}+p_1^*. $$ **误差求导** $$ \dot e(t) = \frac{d}{dt}\bigl[(N-1)(p_1-p_1^*)\bigr] = (N-1)\,\dot p_1(t), $$ 得到 $$ \dot e =(N-1)\Bigl[-(\lambda_{01}+\lambda_{10})\Bigl(\tfrac{e}{N-1}+p_1^*\Bigr) +\lambda_{01}\Bigr].\\\dot e = -(\lambda_{01}+\lambda_{10})\,e. $$ 这就是把原来以 $p_1$ 为自变量的微分方程,转写成以 "偏离平衡量" $e$ 为自变量的形式 记常数 $$ c = \lambda_{01}+\lambda_{10} >0, $$ 则误差模型就是一维线性常微分方程: $$ \dot e = -\,c\,e. $$ 构造李雅普诺夫函数 对一维系统 $\dot e=-ce$($c>0$),自然选取 $$ V(e)=e^2 $$ 作为李雅普诺夫函数,理由是: $V(e)>0$ 当且仅当 $e\neq0$; 平衡点 $e=0$ 时,$V(0)=0$。 计算 $V$ 的时间导数 对 $V$ 关于时间求导: $$ \dot V(e) = \frac{d}{dt}\bigl(e^2\bigr) = 2\,e\,\dot e = 2\,e\,\bigl(-c\,e\bigr) = -2c\,e^2. $$ 因为 $c>0$ 且 $e^2\ge0$,所以 $$ \boxed{\dot V(e)\;=\;-2c\,e^2\;\le\;0.} $$ 当 $e\neq0$ 时,$\dot V<0$; 当 $e=0$ 时,$\dot V=0$。 这正是“半负定”(negative semi-definite)的定义。 结论 李雅普诺夫第二类定理告诉我们: 若存在一个函数 $V(e)$ 在平衡点处为 0、在邻域内正定,且其导数 $\dot V(e)$ 在该邻域内为半负定,则平衡点 $e=0$(即 $d=d^*$)是稳定的。 由于我们已经构造了满足上述条件的 $V(e)=e^2$,并验证了 $\dot V(e)\le0$,故平衡态 $d=d^*$ 是 李雅普诺夫意义下稳定 的。 网络特征谱参数的估算 由于邻接矩阵不能保证半正定性,因此会产生幂迭代估算过程不能收敛的问题。需构造$A^T A$ 基于奇异值分解改进幂迭代估算(集中式) 输入:矩阵 $B = A^T A$,目标特征值数量 $k$,收敛阈值 $\delta$ 输出:前 $k$ 个特征值 $\lambda_1' \geq \lambda_2' \geq \dots \geq \lambda_k'$ 及对应特征向量 $u_1', u_2', \dots, u_k'$ 1. 初始化 随机生成初始非零向量 $v^{(0)}$,归一化: $$ v^{(0)} \gets \frac{v^{(0)}}{|v^{(0)}|_2} $$ 设置已求得的特征值数量 $n \gets 0$,剩余矩阵 $B_{\text{res}} \gets B$ 2. 迭代求前k个特征值与特征向量 While $n < k$: 幂迭代求当前最大特征值与特征向量 初始化向量 $v^{(0)}$(若 $n=0$,用随机向量;否则用与已求特征向量正交的向量) Repeat: a. 计算 $v^{(t+1)} \gets B_{\text{res}} v^{(t)}$ b. 归一化: $$ v^{(t+1)}\gets \frac{v^{(t+1)}}{|v^{(t+1)}|2} $$ c. 计算 Rayleigh 商: $$ y^{(t)} = \frac{(v^{(t)})^T B{\text{res}} v^{(t)}}{(v^{(t)})^T v^{(t)}} $$ d. Until $|y^{(t)} - y^{(t-1)}| < \delta$(收敛) 记录当前特征值与特征向量: $$ \lambda_{n+1}' \gets y^{(t)}, \quad u_{n+1}' \gets v^{(t)} $$ 收缩矩阵以移除已求特征分量 每次收缩操作将已求得的特征值从矩阵中“移除”,使得剩余矩阵的谱(特征值集合)中次大特征值“升级”为最大特征值。 更新剩余矩阵: $$ B_{\text{res}} \gets B_{\text{res}} - \lambda_{n+1}' u_{n+1}' (u_{n+1}')^T $$ 确保 $B_{\text{res}}$ 的对称性(数值修正) 增量计数 $n \gets n + 1$ 瑞利商公式 目的:求对称矩阵A的最大特征值 集中式: $$ y(k)= \frac{x(k)^T A x(k)}{x(k)^T x(k)} $$ 分布式一致性计算: $$ y(k) = \frac{\sum_{i=1}^N x_i(k) b_i(k)}{\sum_{i=1}^N x_i^2(k)} $$ 其中 $$ b_i(k) = \sum_j a_{ij} x_j(k) $$ 两者是等价的: 考虑一个简单的2×2矩阵 $$ A = \begin{pmatrix}2 & 1\\1 & 2\end{pmatrix}, \quad x = \begin{pmatrix}2\\1\end{pmatrix}. $$ 集中式计算 $$ y= \frac{x^T A x}{x^T x} = \frac{\begin{pmatrix}2 & 1\end{pmatrix} \begin{pmatrix}5\\4\end{pmatrix}}{2^2 + 1^2} = \frac{10 + 4}{5} = \frac{14}{5} = 2.8. $$ 分布式计算 各节点分别计算本地观测值 节点1的计算: $$ b_1 = a_{11}x_1 + a_{12}x_2 = 2 \cdot 2 + 1 \cdot 1 = 5. $$ 节点2的计算: $$ b_2 = a_{21}x_1 + a_{22}x_2 = 1 \cdot 2 + 2 \cdot 1 = 4. $$ 然后通过全网共识计算 $$ y = \frac{2 \cdot 5 + 1 \cdot 4}{2^2 + 1^2} = \frac{14}{5} = 2.8. $$ 主要符号表 符号 类型 含义 存储/计算位置 $n$ 下标 当前计算的奇异值序号(从0开始) 全局共识 $K$ 常量 需要计算的前$K$大奇异值总数 预设参数 $j,k$ 下标 节点编号($j$表示当前节点) 本地存储 $𝒩_j$ 集合 节点$j$的邻居节点集合 本地拓扑信息 $a_{jk}$ 矩阵元素 邻接矩阵$A$中节点$j$与$k$的连接权值 节点$j$本地存储 $v_{n,j}^{(t)}$ 向量分量 第$n$个右奇异向量在节点$j$的分量(第$t$次迭代) 节点$j$存储 $u_{n,j}$ 向量分量 第$n$个左奇异向量在节点$j$的分量 节点$j$计算存储 $\sigma_n$ 标量 第$n$个奇异值 全局共识存储 $\delta$ 标量 收敛阈值 预设参数 分布式幂迭代求前$K$大奇异对 While $n < K$: 初始化: 若 $n = 0$: 各节点$j$随机初始化 $v_{0,j}^{(0)} \sim \mathcal{N}(0,1)$ 若 $n > 0$: 分布式Gram-Schmidt正交化: $$ v_{n,j}^{(0)} \gets v_{n,j}^{(0)} - \sum_{m=0}^{n-1} \underbrace{\text{Consensus}\left(\sum_k v_{m,k} v_{n,k}^{(0)}\right)}{\text{全局内积}\langle v_m, v_n^{(0)} \rangle} v{m,j} $$ 分布式归一化: $$ v_{n,j}^{(0)} \gets \frac{v_{n,j}^{(0)}}{\sqrt{\text{Consensus}\left(\sum_k (v_{n,k}^{(0)})^2\right)}} $$ 迭代计算: Repeat: a. 第一轮通信(计算$z=Av$): $$ z_j^{(t)} = \sum_{k \in 𝒩_j} a_{jk} v_{n,k}^{(t)} \quad \text{(邻居交换$v_{n,k}^{(t)}$)} $$ b. 第二轮通信(计算$y=A^T z$): $$ y_j^{(t+1)} = \sum_{k \in 𝒩_j} a_{kj} z_k^{(t)} \quad \text{(邻居交换$z_k^{(t)}$)} $$ c. 隐式收缩($n>0$时): $$ y_j^{(t+1)} \gets y_j^{(t+1)} - \sum_{m=0}^{n-1} \sigma_m^2 v_{m,j} \cdot \underbrace{\text{Consensus}\left(\sum_k v_{m,k} y_k^{(t+1)}\right)}{\text{投影系数计算}} $$ d. 归一化: $$ v{n,j}^{(t+1)} = \frac{y_j^{(t+1)}}{\sqrt{\text{Consensus}\left(\sum_k (y_k^{(t+1)})^2\right)}} $$ e. 计算Rayleigh商: $$ \lambda^{(t)} = \text{Consensus}\left(\sum_k v_{n,k}^{(t)} y_k^{(t+1)}\right) $$ f. 终止条件: $$ \text{If } \frac{|\lambda^{(t)} - \lambda^{(t-1)}|}{|\lambda^{(t)}|} < \delta \text{ then break} $$ 保存结果: $$ \sigma_n = \sqrt{\lambda^{(\text{final})}}, \quad v_{n,j} = v_{n,j}^{(\text{final})} $$ 所有节点同步 $n \gets n + 1$ 分布式计算左奇异向量$u_{n,j}$ 对于邻接矩阵 $A \in \mathbb{R}^{N \times N}$,其奇异值分解为: $$ A = U \Sigma V^T $$ 其中: $U$ 的列向量 ${u_n}$ 是左奇异向量 $V$ 的列向量 ${v_n}$ 是右奇异向量 $\Sigma$ 是对角矩阵,元素 $\sigma_n$ 为奇异值 左奇异向量的定义关系: $$ A v_n = \sigma_n u_n \quad \Rightarrow \quad u_n = \frac{1}{\sigma_n} A v_n $$ 展开为分量形式(对第 $j$ 个分量): $$ u_{n,j} = \frac{1}{\sigma_n} \sum_{k=1}^N a_{jk} v_{n,k} $$ 输入:$\sigma_n$, $v_{n,j}$(来自幂迭代最终结果) For $n = 0$ to $K-1$: 本地计算: $$ u_{n,j} = \frac{1}{\sigma_n} \sum_{k \in 𝒩_j} a_{jk} v_{n,k} \quad \text{(需邻居节点发送$v_{n,k}$)} $$ 正交归一化: For $m = 0$ to $n-1$: $$ u_{n,j} \gets u_{n,j} - \text{Consensus}\left(\sum_k u_{m,k} u_{n,k}\right) \cdot u_{m,j} $$ 归一化: $$ u_{n,j} \gets \frac{u_{n,j}}{\sqrt{\text{Consensus}\left(\sum_k u_{n,k}^2\right)}} $$ 分布式重构邻接矩阵$A$ 输入:$\sigma_n$, $u_{n,j}$, $v_{n,k}$ For 每个节点$j$并行执行: 对每个邻居$k \in 𝒩_j$: 请求节点$k$发送$v_{n,k}$($n=0,...,K-1$) 计算: $$ a_{jk} = \sum_{n=0}^{K-1} \sigma_n u_{n,j} v_{n,k} $$ 非邻居元素: $$ a_{jk} = 0 \quad \text{for} \quad k \notin 𝒩_j $$ 非稳态下动态特征参数的估算 一致性控制策略 异步更新模型 节点仅在离散时刻 $t_k^i$ 接收邻居信息,更新自身状态 $x_i(t)$。 各节点的状态更新时刻是独立的 延时处理 若检测到延时,节点选择最新收到的邻居状态替代旧值(避免使用过期数据)。 一致性协议设计 无时延系统 $$ \dot i = \sum{j \in N(t_k^i, i)} a_{ij}(t_k^i) \left( x_j(t_k^i) - x_i(t) \right) $$ 参数 含义 $\dot _i$ 节点 $i$ 的状态变化率(导数),表示 $x_i$ 随时间的变化速度。 $x_i(t)$ 节点 $i$ 在时刻 $t$ 的本地状态值(如特征估计、传感器数据等)。 $x_j(t_k^i)$ 节点 $i$ 在 $t_k^i$ 时刻收到的邻居节点 $j$ 的状态值。 $N(t_k^i, i)$ 节点 $i$ 在 $t_k^i$ 时刻的邻居集合(可直接通信的节点)。 $a_{ij}(t_k^i)$ 权重因子,控制邻居 $j$ 对节点 $i$ 的影响权重,满足 $\sum_j a_{ij} = 1$。 有时延系统 $$ \dot i = \sum{j \in N(t_k^i, i)} a_{ij}(t_k^i) \left( x_j(t_k^i - \tau_{ij}^k) - x_i(t) \right) $$ 参数 含义 $\tau_{ij}^k$ 节点 $j$ 到 $i$ 在时刻 $t_k^i$ 的信息传输延时。 $t_k^i - \tau_{ij}^k$ 节点 $i$ 实际使用的邻居状态 $x_j$ 的有效时刻(扣除延时)。 权重$\alpha_{ij}$ $$ \text{有有效邻居时 } a_{ij}(t) = \begin{cases} \frac{\alpha_{ij}(t_k^i)}{\sum_{s \in N(t_k^i, i)} \alpha_{is}(t_k^i)}, & \text{若 } j \in N(t_k^i, i) \ 0, & \text{若 } j \notin N(t_k^i, i) \end{cases} $$ $$ \text{无有效邻居时 } a_{ij}(t) = \begin{cases} 1, & \text{若 } j = i \ 0, & \text{若 } j \neq i \end{cases} $$ 通信拓扑定义 引入 $G^0(t)$:实际成功通信的瞬时拓扑(非理想链路 $G(t)$),强调有效信息传递而非物理连通性。 收敛性分析 动态网络的收敛条件: 在节点移动导致的异步通信和随机延时下,只要网络拓扑满足有限时间内的联合连通性(即时间窗口内信息能传递到全网),所有节点的状态 $x_i$ 最终会收敛到同一全局值。 (平均代数连通度 > 0 == 动态网络拓扑的平均拉普拉斯矩阵的第二小特征值>0 ) 无需时刻连通:允许瞬时断连,但长期需保证信息能通过动态链路传递。 基于 UKF 的滤波估算 KF EKF UKF 线性要求 严格线性 弱非线性 强非线性 可微要求 - 必须可微 不要求 计算复杂度 低 中 中 适用场景 线性系统 平滑非线性 剧烈非线性 本文基于UKF: 采用**确定性采样(Sigma点)**直接近似非线性分布 完全规避对 f(x) 和 h(x) 的求导需求 保持高斯系统假设 允许函数不连续/不可微 适应拓扑突变等非线性情况 UKF 具体步骤 符号说明 $i$: 节点索引,$N$ 为总节点数 $x_i(k)$: 节点 $i$ 在时刻 $k$ 的状态分量 (相当于$x$) $b_i(k)$: 节点 $i$ 的本地状态估计值 (相当于$Ax$) $a_{ij}$: 邻接矩阵元素(链路权重) $Q_k, R_k$: 过程噪声与观测噪声协方差 $\mathcal{X}_{i,j}$: 节点 $i$ 的第 $j$ 个 Sigma 点 $W_j^{(m)}, W_j^{(c)}$: Sigma 点权重(均值和协方差) Step 1: 分布式初始化 节点状态初始化: 每个节点 $i$ 随机生成初始状态分量 $x_i(0)$。 本地状态估计 $b_i(0)$ 初始化为 $x_i(0)$。 Step 2: 生成 Sigma 点(确定性采样) 在每个节点本地执行: 计算 Sigma 点: $$ \begin{aligned} \mathcal{X}{i,0} &= \hat{b}{i,k-1} \ \mathcal{X}{i,j} &= \hat{b}{i,k-1} + \left( \sqrt{(n+\lambda) P_{i,k-1}} \right)j \quad (j=1,\dots,n) \ \mathcal{X}{i,j+n} &= \hat{b}{i,k-1} - \left( \sqrt{(n+\lambda) P{i,k-1}} \right)_j \quad (j=1,\dots,n) \end{aligned} $$ $\lambda = \alpha^2 (n + \kappa) - n$(缩放因子,$\alpha$ 控制分布范围,$\kappa$ 通常取 0) $\sqrt{(n+\lambda) P}$ 为协方差矩阵的平方根(如 Cholesky 分解) 计算 Sigma 点权重: $$ \begin{aligned} W_0^{(m)} &= \frac{\lambda}{n + \lambda} \quad &\text{(中心点均值权重)} \ W_0^{(c)} &= \frac{\lambda}{n + \lambda} + (1 - \alpha^2 + \beta) \quad &\text{(中心点协方差权重)} \ W_j^{(m)} = W_j^{(c)} &= \frac{1}{2(n + \lambda)} \quad (j=1,\dots,2n) \quad &\text{(对称点权重)} \end{aligned} $$ $\beta$ 为高阶矩调节参数(高斯分布时取 2 最优) Step 3: 预测步骤(时间更新) 传播 Sigma 点: $$ \mathcal{X}{i,j,k|k-1}^* = f(\mathcal{X}{i,j,k-1}) + q_k \quad (j=0,\dots,2n) $$ $f(\cdot)$ 为非线性状态转移函数 $q_k$ 为过程噪声 ,反映网络拓扑动态变化(如节点移动导致的链路扰动)。 计算预测均值和协方差: $$ \hat{b}{i,k|k-1} = \sum{j=0}^{2n} W_j^{(m)} \mathcal{X}_{i,j,k|k-1}^* $$ $$ P_{i,k|k-1} = \sum_{j=0}^{2n} W_j^{(c)} \left( \mathcal{X}{i,j,k|k-1}^* - \hat{b}{i,k|k-1} \right) \left( \mathcal{X}{i,j,k|k-1}^* - \hat{b}{i,k|k-1} \right)^T + Q_k $$ $Q_k$ 为过程噪声协方差 Step 4: 分布式观测生成 邻居状态融合: 节点 $ i $ 从邻居 $ j $ 获取其本地观测值 $ b_{j,\text{local}}(k) $: $$ b_{j,\text{local}}(k) = \sum_{l=1}^N a_{jl} x_l(k) \quad \text{(节点 $ j $ 对邻居状态的加权融合)} $$ 节点 $ i $ 综合邻居信息生成自身观测: $$ b_i^H(k) = \sum_{j=1}^N a_{ji} b_{j,\text{local}}(k) + r_k $$ 注:$ r_k $ 为通信噪声,反映信息传输误差(如延时、丢包)。 Step 5: 观测更新(测量更新) 观测 Sigma 点: $$ \mathcal{Z}{i,j,k|k-1} = h(\mathcal{X}{i,j,k|k-1}^*) + r_k \quad (j=0,\dots,2n) $$ $h(\cdot)$ 为非线性观测函数 计算观测统计量: $$ \hat{z}{i,k|k-1} = \sum{j=0}^{2n} W_j^{(m)} \mathcal{Z}_{i,j,k|k-1} $$ $$ P_{i,zz} = \sum_{j=0}^{2n} W_j^{(c)} \left( \mathcal{Z}{i,j,k|k-1} - \hat{z}{i,k|k-1} \right) \left( \mathcal{Z}{i,j,k|k-1} - \hat{z}{i,k|k-1} \right)^T + R_k $$ $$ P_{i,xz} = \sum_{j=0}^{2n} W_j^{(c)} \left( \mathcal{X}{i,j,k|k-1}^* - \hat{b}{i,k|k-1} \right) \left( \mathcal{Z}{i,j,k|k-1} - \hat{z}{i,k|k-1} \right)^T $$ $R_k$ 为观测噪声协方差 计算卡尔曼增益并更新状态: $$ K_{i,k} = P_{i,xz} P_{i,zz}^{-1} $$ $$ \hat{b}{i,k|k} = \hat{b}{i,k|k-1} + K_{i,k} \left( b_i^H(k) - \hat{z}_{i,k|k-1} \right) $$ $$ P_{i,k|k} = P_{i,k|k-1} - K_{i,k} P_{i,zz} K_{i,k}^T $$ Step 6: 全局一致性计算 瑞利商计算: 所有节点通过一致性协议交换 $\hat{b}{i,k|k}$,计算全局状态: $$ y(k) = \frac{\sum{i=1}^N x_i(k) \hat{b}{i,k|k}}{\sum{i=1}^N x_i^2(k)} $$ 正交化: 更新本地状态分量(相当于幂迭代$x=Ax$再归一化): $$ x_i(k+1) = \frac{\hat{b}_{i,k|k}}{|\hat{b}(k)|_2} $$ Step 7: 收敛判断 若 $y(k)$ 收敛,输出 $\sigma = \sqrt{y(k)}$;否则返回 Step 2。 稳态下动态特征参数的估算 稳态下,网络拓扑变化趋于平稳,奇异值的理论曲线不再随时间变化(实际值因噪声围绕理论值波动)。此时采用集中式多观测值卡尔曼滤波 多观测值滤波算法 核心思想:利用相邻奇异值的有序性约束($\sigma_{n-1} \leq \sigma_n \leq \sigma_{n+1}$),构造双观测值作为上下界,限制估计范围。 观测值生成: 对第$n$大奇异值$\sigma_n$,其观测值$y_n$由相邻奇异值线性组合: $$ y_n = C_1 \sigma_{n-1} + C_2 \sigma_{n+1} $$ 系数$C_1, C_2$:根据$\sigma_{n-1}$和$\sigma_{n+1}$的权重动态调整(如距离比例)。 物理意义:将$\sigma_{n-1}$和$\sigma_{n+1}$作为$\sigma_n$的下界和上界,避免单观测值因噪声导致的估计偏离。 疑问: 第三章的目的是什么?先分解再重构的意义在? 状态转移函数和观测函数怎么来?UKF每次预测单奇异值,如何同时预测K个呢? 卡尔曼滤波 观测值怎么来?是否需要拟合历史数据生成观测值?还是根据第三章分布式幂迭代求真实的特征值?
论文
zy123
4月16日
0
7
0
2025-04-14
高飞论文
高飞论文 证明特征值序列为平稳的时间序列 问题设定 研究对象 设 ${\lambda_1(A)t}{t\in\mathbb Z}$ 是随时间变化的随机对称矩阵 $A_t$ 的最大特征值序列(如动态网络的邻接矩阵)。 目标 证明 ${\lambda_1(A)_t}$ 是 二阶(弱)平稳的时间序列,即 $E[\lambda_1(A)_t]=\mu_1$(与 $t$ 无关); $\operatorname{Var}[\lambda_1(A)_t]=\sigma_1^2<\infty$(与 $t$ 无关); $\operatorname{Cov}(\lambda_1(A)t,\lambda_1(A){t-k})=\gamma(k)$ 只依赖滞后 $k$。 关键假设 矩阵统计特性(引理 1) $A_t$ 为 $N\times N$ 实对称随机矩阵;元素 ${a_{ij}}{i\le j}$ 相互独立且有界:$|a{ij}|\le K$。 非对角元素:$E[a_{ij}]=\mu>0,\ \operatorname{Var}(a_{ij})=\sigma^2$;对角元素:$E[a_{ii}]=v$。 $N$ 足够大时 $$ E[\lambda_1(A_t)]\approx(N-1)\mu+v+\tfrac{\sigma^2}{\mu}\equiv\mu_1,\qquad \operatorname{Var}[\lambda_1(A_t)]\approx2\sigma^2\equiv\sigma_1^2 . $$ 说明: $\sigma^2$ 这是随机矩阵 $A_t$ 的非对角线元素 $a_{ij}$ ($i \neq j$) 的方差,即 $$ \text{Var}(a_{ij}) = \sigma^2. $$ 根据引理1的假设,所有非对角线元素独立同分布,均值为 $\mu$,方差为 $\sigma^2$。 $\sigma_1^2$ 这是最大特征值 $\lambda_1(A_t)$ 的方差,即 $$ \text{Var}[\lambda_1(A_t)] \equiv \sigma_1^2. $$ 当 $N$ 足够大时,$\sigma_1^2$ 近似为 $2\sigma^2$。 时间序列模型 对去中心化序列 $$ \tilde z_t:=\lambda_1(A)t-\mu_1 $$ 假设其服从 AR(1) $$ \tilde z_t=\rho,\tilde z{t-1}+\varepsilon_t,\qquad \varepsilon_t\stackrel{\text{i.i.d.}}{\sim}\text{WN}(0,\sigma_\varepsilon^{2}),\ \ |\rho|<1, $$ 且 $\varepsilon_t$ 与历史 ${\tilde z_{s}}_{s<t}$ 独立。 证明主特征值序列平稳 (1) 均值恒定性的推导 去中心化后 $E[\tilde z_t]=0$。因此 $$ E[\lambda_1(A)_t]=E[\tilde z_t]+\mu_1=\mu_1, $$ 与 $t$ 无关,满足第一条。 (2) 方差恒定 AR(1)模型定义为: $$ z_t = \rho z_{t-1} + \varepsilon_t $$ $$ \begin{aligned} z_t &= \varepsilon_t + \rho z_{t-1} \\ &= \varepsilon_t + \rho (\varepsilon_{t-1} + \rho z_{t-2}) \\ &= \varepsilon_t + \rho \varepsilon_{t-1} + \rho^2 \varepsilon_{t-2} + \cdots \\ &= \sum_{j=0}^\infty \rho^j \varepsilon_{t-j} \end{aligned} $$ $$ \text{Var}(z_t) = \text{Var}\left( \sum_{j=0}^\infty \rho^j \varepsilon_{t-j} \right)= \sum_{j=0}^\infty \rho^{2j} \text{Var}(\varepsilon_{t-j}) $$ 由于$\text{Var}(\varepsilon_{t-j}) = \sigma_\varepsilon^2$ 对所有 $j$ 成立, $$ = \sigma_\varepsilon^2 \sum_{j=0}^\infty \rho^{2j}=\frac{\sigma_\varepsilon^2}{1-\rho^2} $$ $|\rho| < 1$ 是保证级数收敛和方差有限的充要条件。 根据引理1,$\text{Var}[\lambda_1(A_t)] \approx 2\sigma^2 = \sigma_1^2$。为使模型与理论一致,可设: $$ \sigma_\varepsilon^2 = (1 - \rho^2) \cdot 2\sigma^2 $$ 此时: $$ \text{Var}[\tilde{z}_t] = 2\sigma^2 = \sigma_1^2 $$ (3) 协方差仅依赖滞后 $k$ 对 $k\ge0$, $$ \gamma(k):=\operatorname{Cov}(\tilde z_t,\tilde z_{t-k}) =\rho^{k}\sigma_{\tilde z}^{2}, $$ 仅含 $k$ 而与 $t$ 无关;于是 $$ \operatorname{Cov}(\lambda_1(A)_t,\lambda_1(A)_{t-k})=\gamma(k), $$ 满足第三条。 (4) 平稳性的核心条件 |ρ| < 1 是关键条件 直观上:$\rho$ 越小,当前特征值对过去的依赖越弱; $\rho=\pm1$ 会让方差发散,不可能稳态。 噪声独立性:$\varepsilon_t$ 为白噪声,确保新信息与历史无关。 证明剩余特征值平稳(大模型说不可取): 1. 收缩操作(Deflation)的严格定义 设 $A_t$ 的谱分解为: $$ A_t = \sum_{i=1}^N \lambda_i u_i u_i^\top, $$ 其中 $\lambda_1 \geq \lambda_2 \geq \dots \geq \lambda_N$,且 $\{u_i\}$ 是标准正交基。 第一次收缩: 定义剩余矩阵 $A_{t,2} = A_t - \lambda_1 u_1 u_1^\top$,其性质为: 特征值:$\lambda_2, \lambda_3, \dots, \lambda_N$(即移除 $\lambda_1$ 后剩余特征值不变)。 特征向量:$u_2, \dots, u_N$ 保持不变(因 $u_1$ 与其他特征向量正交)。 第 $k$ 次收缩: 递归定义: $$ A_{t,k+1} = A_{t,k} - \lambda_k u_k u_k^\top, $$ 剩余矩阵 $A_{t,k+1}$ 的特征值为 $\lambda_{k+1}, \dots, \lambda_N$。 每次收缩移除当前主成分,剩余矩阵的特征值是原始矩阵中未被移除的部分。 2. 剩余特征值的统计特性 目标:证明 ${\lambda_k(A_t)}_{t \in \mathbb{Z}}$ 对 $k \geq 2$ 也是弱平稳的。 (1) 均值恒定性 剩余矩阵的期望: 由线性性: $$ E[A_{t,k+1}] = E[A_t] - \sum_{i=1}^k E[\lambda_i u_i u_i^\top]. $$ 若 $A_t$ 的元素分布时不变,且 $\lambda_i$ 和 $u_i$ 的期望稳定(由主特征值的平稳性保证),则 $E[A_{t,k+1}]$ 与 $t$ 无关。 特征值期望: 对剩余矩阵 $A_{t,k+1}$,其主特征值 $\lambda_{k+1}(A_t)$ 的期望近似为: $$ E[\lambda_{k+1}(A_t)] \approx (N-k-1)\mu + v + \frac{\sigma^2}{\mu} \equiv \mu_{k+1}, $$ 其中 $(N-k-1)\mu$ 是剩余非对角元素的贡献(假设每次收缩后非对角元素统计特性不变)。 (2) 方差恒定性 剩余矩阵的方差: 收缩操作通过正交投影移除 $\lambda_k u_k u_k^\top$,因此剩余矩阵 $A_{t,k+1}$ 的元素方差仍为 $\sigma^2$(对角元素可能需调整)。 由引理1的推广: $$ \text{Var}[\lambda_{k+1}(A_t)] \approx 2\sigma^2 \equiv \sigma_{k+1}^2. $$ 动态模型: 假设去中心化序列 $\tilde{z}{k+1,t} = \lambda{k+1}(A_t) - \mu_{k+1}$ 服从AR(1): $$ \tilde{z}{k+1,t} = \rho{k+1} \tilde{z}{k+1,t-1} + \varepsilon{k+1,t}, \quad |\rho_{k+1}| < 1, $$ 稳态方差为: $$ \sigma_{\tilde{z}{k+1}}^2 = \frac{\sigma{\varepsilon_{k+1}}^2}{1-\rho_{k+1}^2} = \sigma_{k+1}^2. $$ (3) 协方差仅依赖滞后 $m$ 协方差函数: $$ \gamma_{k+1}(m) = \text{Cov}(\tilde{z}{k+1,t}, \tilde{z}{k+1,t-m}) = \rho_{k+1}^{|m|} \sigma_{\tilde{z}_{k+1}}^2. $$ 仅依赖 $m$,与 $t$ 无关。 3. 递推证明的完整性 归纳基础: $k=1$ 时(主特征值),平稳性已证。 归纳假设: 假设 $\lambda_k(A_t)$ 的平稳性成立,即: $E[\lambda_k(A_t)] = \mu_k$(常数), $\text{Var}[\lambda_k(A_t)] = \sigma_k^2$(有限), $\text{Cov}(\lambda_k(A_t), \lambda_k(A_{t-m})) = \gamma_k(m)$。 归纳步骤: 通过收缩操作,$\lambda_{k+1}(A_t)$ 成为 $A_{t,k+1}$ 的主特征值。 若 $A_{t,k+1}$ 满足与 $A_t$ 相同的统计假设(独立性、有界性、时不变性),则 $\lambda_{k+1}(A_t)$ 的平稳性可类比主特征值的证明。 JB-test JB-test(Jarque-Bera test) 是一种用于检验样本数据是否服从正态分布的统计假设检验方法。这个检验特别适用于判断数据的偏度(skewness)和峰度(kurtosis)是否符合正态分布的特性。 正态分布具有以下特性: 偏度(Skewness) 为 $0$,表示数据的分布是对称的。 峰度(Kurtosis) 为 $3$,表示数据的峰度是"中等"的。 JB-test的统计量 Jarque-Bera统计量的计算公式为: $$ JB = \frac{n}{6} \left( S^2 + \frac{(K - 3)^2}{4} \right) $$ 其中: $n$ 是样本的大小。 $S$ 是样本的偏度(skewness),衡量分布的对称性。 $K$ 是样本的峰度(kurtosis),衡量分布的尖峭程度。 JB-test的分布和检验步骤 零假设($H_0$):数据服从正态分布。 备择假设($H_1$):数据不服从正态分布。 在进行检验时,首先计算 JB 统计量,然后将其与卡方分布进行比较: JB 统计量的分布近似于自由度为 $2$ 的卡方分布(当样本量较大时)。 如果 JB 统计量的值大于临界值(根据设定的显著性水平,比如 $0.05$),则拒绝零假设,即认为数据不符合正态分布。 如果 JB 统计量的值小于临界值,则无法拒绝零假设,即认为数据服从正态分布。 结论 如果 JB 统计量接近 $0$,说明数据的偏度和峰度与正态分布的期望非常接近,数据可能符合正态分布。 如果 JB 统计量远离 $0$,则说明数据的偏度或峰度与正态分布的特征差异较大,数据不符合正态分布。 特征值精度预估 1. 噪声随机变量与协方差 符号 含义 $w_i$ 第 $i$ 个过程噪声样本 $v_j$ 第 $j$ 个观测噪声样本 $Q$ 过程噪声的真实方差(协方差矩阵退化) $R$ 观测噪声的真实方差(协方差矩阵退化) 说明: 在矩阵形式的 Kalman Filter 中,通常写作 $$ w_k\sim\mathcal N(0,Q),\quad v_k\sim\mathcal N(0,R). $$ 这里为做统计检验,把 $w_i, v_j$ 当作样本,$Q,R$ 就是它们在标量情况下的方差。 2. 样本统计量 符号 含义 $N_w,;N_v$ 过程噪声样本数和观测噪声样本数 $\bar w$ 过程噪声样本均值 $\bar v$ 观测噪声样本均值 $s_w^2$ 过程噪声的样本方差估计 $s_v^2$ 观测噪声的样本方差估计 定义: $$ \bar w = \frac1{N_w}\sum_{i=1}^{N_w}w_i,\quad s_w^2 = \frac1{N_w-1}\sum_{i=1}^{N_w}(w_i-\bar w)^2, $$ $$ \bar v = \frac1{N_v}\sum_{j=1}^{N_v}v_j,\quad s_v^2 = \frac1{N_v-1}\sum_{j=1}^{N_v}(v_j-\bar v)^2. $$ 3. 方差比的 $F$ 分布区间估计 构造 $F$ 统计量 $$ F = \frac{(s_w^2/Q)}{(s_v^2/R)} = \frac{s_w^2}{s_v^2},\frac{R}{Q} \sim F(N_w-1,,N_v-1). $$ 置信区间(置信度 $1-\alpha$) 查得 $$ F_{L}=F_{\alpha/2}(N_w-1,N_v-1),\quad F_{U}=F_{1-\alpha/2}(N_w-1,N_v-1), $$ 则 $$ \begin{align*} P\Big{F_{\rm L}\le F\le F_{\rm U}\Big}=1-\alpha \quad\Longrightarrow \quad P\Big{F_{\rm L},\le\frac{s_w^2}{s_v^2},\frac{R}{Q}\le F_{\rm U},\Big}=1-\alpha. \end{align*} $$ 解出 $\frac{R}{Q}$ 的区间 $$ P\Bigl{,F_{L},\frac{s_v^2}{s_w^2}\le \frac{R}{Q}\le F_{U},\frac{s_v^2}{s_w^2}\Bigr}=1-\alpha. $$ 令 $$ \theta_{\min}=\sqrt{,F_{L},\frac{s_v^2}{s_w^2},},\quad \theta_{\max}=\sqrt{,F_{U},\frac{s_v^2}{s_w^2},}. $$ 4. 卡尔曼增益与误差上界 在标量情况下(即状态和观测均为1维),卡尔曼增益公式可简化为: $$ K = \frac{P_k H^T}{HP_k H^T + R} = \frac{HP_k}{H^2 P_k + R} $$ 针对我们研究对象,特征值滤波公式的系数都属于实数域。$P_{k-1}$是由上次迭代产生,因此可以$FP_{k-1}F^T$看作定值,则$P_k$的方差等于$Q$的方差,即: $$ \text{var}(P_k) = \text{var}(Q) $$ 令 $c = H$, $m = 1/H$(满足 $cm = 1$),则: $$ K = \frac{cP_k}{c^2 P_k + R} = \frac{1}{c + m(R/P_k)} \quad R/P_k\in[\theta_{\min}^2,\theta_{\max}^2]. $$ 则极值为 $$ K_{\max}=\frac{1}{c + m\,\theta_{\min}^2},\quad K_{\min}=\frac{1}{c + m\,\theta_{\max}^2}. $$ 通过历史数据计算预测误差的均值: $$ E(x_k' - x_k) \approx \frac{1}{M} \sum_{m=1}^{M} (x_k^{l(m)} - x_k^{(m)})\\ $$ 定义误差上界 $$ \xi =\bigl(K_{\max}-K_{\min}\bigr)\;E\bigl(x_k'-x_k\bigr) =\Bigl(\tfrac1{c+m\,\theta_{\min}^2}-\tfrac1{c+m\,\theta_{\max}^2}\Bigr) \,E(x_k'-x_k). $$ 若令 $c\,m=1$,可写成 $$ \xi =\frac{(\theta_{\max}-\theta_{\min})\,E(x_k'-x_k)} {(c^2+\theta_{\min})(c^2+\theta_{\max})}. $$ 量化噪声方差估计的不确定性,进而评估卡尔曼滤波器增益的可能波动,并据此给出滤波误差的上界. 基于时空特征的节点位置预测 在本模型中,整个预测流程分为两大模块: GCN 模块:主要用于从当前网络拓扑中提取每个节点的空间表示**。这里的输入主要包括: 邻接矩阵 $A$:反映网络中节点之间的连通关系,维度为 $N \times N$,其中 $N$ 表示节点数。(可通过第二章网络重构的方式获取) 特征矩阵 $H^{(0)}$:一般是原始节点的属性信息,如历史位置数据,其维度为 $N \times d$,其中 $d$ 是初始特征维度。 LSTM 模块:用于捕捉节点随时间变化的动态信息,对每个节点的历史运动轨迹进行序列建模,并预测未来时刻的坐标。 其输入通常是经过 GCN 模块处理后,每个节点在一段时间内获得的时空融合特征序列,维度一般为 $N \times T \times d'$,其中 $T$ 表示时间步数,$d'$ 是经过 GCN 后的特征维度。 GCN 模块 输入 邻接矩阵 $A$:维度 $N \times N$。在实际操作中,通常先加上自环形成 $$ \hat{A} = A + I. $$ 特征矩阵 $H^{(0)}$:维度 $N \times d$,每一行对应一个节点的初始特征(例如历史采样的位置信息或其他描述)。 图卷积操作 常用的图卷积计算公式为: $$ H^{(l+1)} = \sigma \Bigl(\tilde{D}^{-1/2}\tilde{A}\tilde{D}^{-1/2} H^{(l)} W^{(l)} \Bigr) $$ 其中: $\tilde{A} = A + I$ 为加上自环后的邻接矩阵, $\tilde{D}$ 为 $\tilde{A}$ 的度矩阵,定义为 $\tilde{D}{ii} = \sum{j}\tilde{A}_{ij}$; $H^{(l)}$ 表示第 $l$ 层的节点特征,初始时 $H^{(0)}$ 就是输入特征矩阵; $W^{(l)}$ 是第 $l$ 层的权重矩阵,其维度通常为 $d_l \times d_{l+1}$(例如从 $d$ 到 $d'$); $\sigma(\cdot)$ 是非线性激活函数,例如 ReLU 或 tanh。 经过一层或多层图卷积后,可以得到最终的节点表示矩阵 $H^{(L)}$(或记为 $X$),维度为 $N \times d'$。 其中: 每一行 $x_i \in \mathbb{R}^{d'}$ 表示节点 $i$ 的空间特征,这些特征综合反映了其在网络拓扑中的位置及与邻居的关系。 输出 GCN 输出:形状为 $N \times d'$;若将模型用于时序建模,则对于每个时间步,都可以得到这样一个节点特征表示。 这里 $d'>d$ 。1.高维嵌入不仅保留了绝对位置信息,还包括了网络拓扑信息。2.兼容下游LSTM任务需求。 LSTM 模块 输入数据构造 在时序预测中,对于每个节点,我们通常有一段历史数据序列。假设我们采集了最近 $T$ 个时刻的数据,然后采用“滑动窗口”的方式,预测 $T+1$、 $T+2$... 对于每个时刻 $t$,节点 $i$ 的空间特征 $x_i^{(t)} \in \mathbb{R}^{d'}$ 由 GCN 得到; 将这些特征按照时间顺序排列,得到一个序列: $$ X_i = \bigl[ x_i^{(t-T+1)},, x_i^{(t-T+2)},, \dots,, x_i^{(t)} \bigr] \quad \in \mathbb{R}^{T \times d'}. $$ 对于整个网络来说,可以将数据看作一个三维张量,维度为 $(N, T, d')$。 LSTM 内部运作 LSTM 通过内部门控机制(遗忘门 $f_t$、输入门 $i_t$ 和输出门 $o_t$)来更新其记忆状态 $C_t$ 和隐藏状态 $h_t$。公式如下 遗忘门: $$ f_t = \sigma(W_f [h_{t-1},, x_t] + b_f) $$ 输入门和候选记忆: $$ i_t = \sigma(W_i [h_{t-1},, x_t] + b_i) \quad,\quad \tilde{C}t = \tanh(W_C [h{t-1},, x_t] + b_C) $$ 记忆更新: $$ C_t = f_t \odot C_{t-1} + i_t \odot \tilde{C}_t $$ 输出门和隐藏状态: $$ o_t = \sigma(W_o [h_{t-1},, x_t] + b_o), \quad h_t = o_t \odot \tanh(C_t) $$ 其中,$x_t$ 在这里对应每个节点在时刻 $t$ 的 GCN 输出特征; $[h_{t-1},, x_t]$ 为连接后的向量; LSTM 的隐藏状态 $h_i \in \mathbb{R}^{d'' \times 1}$(其中 $d''$ 为 LSTM 的隐藏单元数)捕捉了时间上的依赖信息。 输出与预测 最后,经过 LSTM 处理后,我们在最后一个时间步获得最终的隐藏状态 $h_t$ 或使用整个序列的输出;接着通过一个全连接层(FC层)将隐藏状态映射到最终的预测输出。 全连接层转换公式: $$ \hat{y}i = W{\text{fc}} \cdot h_t + b_{\text{fc}} $$ 其中,假设预测的是二维坐标(例如 $x$ 和 $y$ 坐标),$W_{\text{fc}} \in \mathbb{R}^{2 \times d''}$,输出 $\hat{y}_i \in \mathbb{R}^2$ 表示节点 $i$ 在未来某个时刻(或下一时刻)的预测坐标。 若整个网络有 $N$ 个节点,则最终预测结果的输出维度为 $N \times 2$(或 $N \times T' \times 2$,如果预测多个未来时刻)。 疑问 该论文可能有点问题,每个节点只能预测自身未来位置,无法获取全局位置信息。如果先LSTM后GCN可能可以!
论文
zy123
4月14日
0
4
0
2025-03-31
KAN
KAN Kolmogorov-Arnold表示定理 该定理表明,任何多元连续函数都可以表示为有限个单变量函数的组合。 对于任意一个定义在$[0,1]^n$上的连续多元函数: $$ f(x_1, x_2, \ldots, x_n), $$ 存在**单变量连续函数** $\phi_{q}$ 和 $\psi_{q,p}$(其中 $q = 1, 2, \ldots, 2n+1$,$p = 1, 2, \ldots, n$),使得: $$ f(x_1, \ldots, x_n) = \sum_{q=1}^{2n+1} \phi_{q}\left( \sum_{p=1}^{n} \psi_{q,p}(x_p) \right). $$ 即,$f$可以表示为$2n+1$个“外层函数”$\phi_{q}$和$n \times (2n+1)$个“内层函数”$\psi_{q,p}$的组合。 和MLP的联系 Kolmogorov-Arnold定理 神经网络(MLP) 外层函数 $\phi_q$ 的叠加 输出层的加权求和(线性组合) + 激活函数 内层函数 $\psi_{q,p}$ 的线性组合 隐藏层的加权求和 + 非线性激活函数 固定 $2n+1$ 个“隐藏单元” 隐藏层神经元数量可以自由设计,依赖于网络的深度和宽度 严格的数学构造(存在性证明) 通过数据驱动的学习(基于梯度下降等方法)来优化参数 和MLP的差异 浅层结构(一个隐藏层)的数学表达与模型设计 模型 数学公式 模型设计 MLP $f(x) \approx \sum_{i=1}^{N} a_i \sigma(w_i \cdot x + b_i)$ 线性变换后再跟非线性激活函数(RELU) KAN $f(x) = \sum_{q=1}^{2n+1} \Phi_q \left( \sum_{p=1}^n \phi_{q,p}(x_p) \right)$ 可学习激活函数(如样条)在边上,求和操作在神经元上 边上的可学习函数: $\phi_{q,p}(x_p)$(如B样条) 求和操作:$\sum_{p=1}^n \phi_{q,p}(x_p)$ 深层结构的数学表达与模型设计 模型 数学公式 模型设计 MLP $\text{MLP}(x) = (W_3 \circ \sigma_2 \circ W_2 \circ \sigma_1 \circ W_1)(x)$ 交替的线性层($W_i$)和固定非线性激活函数($\sigma_i$)。 KAN $\text{KAN}(x) = (\Phi_3 \circ \Phi_2 \circ \Phi_1)(x)$ 每一层都是单变量函数的组合($\Phi_i$),每一层的激活函数都可以进行学习 传统MLP的缺陷 梯度消失和梯度爆炸: 与其他传统的激活函数(如 Sigmoid 或 Tanh)一样,MLP 在进行反向传播时有时就会遇到梯度消失/爆炸的问题,尤其当网络层数过深时。当它非常小或为负大,网络会退化;连续乘积会使得梯度慢慢变为 0(梯度消失)或变得异常大(梯度爆炸),从而阻碍学习过程。 参数效率: MLP 常使用全连接层,每层的每个神经元都与上一层的所有神经元相连。尤其是对于大规模输入来说,这不仅增加了计算和存储开销,也增加了过拟合的风险。效率不高也不够灵活。 处理高维数据能力有限:MLP 没有利用数据的内在结构(例如图像中的局部空间相关性或文本数据的语义信息)。例如,在图像处理中,MLP 无法有效地利用像素之间的局部空间联系,这很典型在图像识别等任务上的性能不如卷积神经网络(CNN)。 长依赖问题: 虽然 MLP 理论上可以逼近任何函数,但在实际应用中,它们很难捕捉到序列中的长依赖关系(例如句子跨度很长)。这让人困惑:如何把前后序列的信息互相处理?而自注意力(如 transformer)在这类任务中表现更好。 但无论CNN/RNN/transformer怎么改进,都躲不掉MLP这个基础模型根上的硬伤,即线性组合+激活函数的模式。 KAN网络 主要贡献: 过去的类似想法受限于原始的Kolmogorov-Arnold表示定理(两层网络,宽度为2n+12n+1),未能利用现代技术(如反向传播)进行训练。 KAN通过推广到任意宽度和深度的架构,解决了这一限制,同时通过实验验证了KAN在“AI + 科学”任务中的有效性,兼具高精度和可解释性。 B样条(B-spline) 是一种通过分段多项式函数的线性组合构造的光滑曲线,其核心思想是利用局部基函数(称为B样条基函数)来表示整个曲线。 形式上,一个B样条函数通常表示为基函数的线性组合: $$ S(t) = \sum_{i=0}^{n} c_i \cdot B_i(t) $$ 其中: $B_i(t)$ 是 B样条基函数(basis functions); $c_i$ 是 控制点 或系数(可以来自数据、拟合、插值等); $S(t)$ 是最终的 B样条曲线 或函数。 每个基函数只在某个局部区间内非零,改变一个控制点只会影响曲线的局部形状。 示例:基函数定义 $B_0(t)$ - 支撑区间[0,1] $$ B_0(t) = \begin{cases} 1 - t, & 0 \leq t < 1,\\ 0, & \text{其他区间}. \end{cases} $$ $B_1(t)$ - 支撑区间[0,2] $$ B_1(t) = \begin{cases} t, & 0 \leq t < 1, \\ 2 - t, & 1 \leq t < 2, \\ 0, & \text{其他区间}. \end{cases} $$ $B_2(t)$ - 支撑区间[1,3] $$ B_2(t) = \begin{cases} t - 1, & 1 \leq t < 2, \\ 3 - t, & 2 \leq t < 3, \\ 0, & \text{其他区间}. \end{cases} $$ $B_3(t)$ - 支撑区间[2,4] $$ B_3(t) = \begin{cases} t - 2, & 2 \leq t < 3, \\ 4 - t, & 3 \leq t \leq 4, \\ 0, & \text{其他区间}. \end{cases} $$ 假设用该基函数对$f(t) = \sin\left(\dfrac{\pi t}{4}\right)$在[0,4]区间上拟合 $$ S(t) = 0 \cdot B_0(t) + 0.7071 \cdot B_1(t) + 1 \cdot B_2(t) + 0.7071 \cdot B_3(t) $$ 网络结构: 左图: 节点(如$x_{l,i}$)表示第$l$层第$i$个神经元的输入值 边(如$\phi_{l,j,i}$)表示可学习的激活函数(权重) 下一层节点的值计算: $$x_{l+1,j} = \sum_i \phi_{l,j,i}(x_{l,i})$$ 右图:
论文
zy123
3月31日
0
5
0
1
2
下一页