【TDA】持续同调的矢量化方法

news2024/10/23 21:22:10

Topological deep learning: a review of an emerging paradigm
持续同调与深度学习协同下的3D点云分类_苏潇
Applications of Topology to Data Analysis
Computational Topology: An Introduction

持续同调对于特征的方式有条形码PB和持续图表PD两种形式,它们包含了持续同调的所有信息。条形码对于特征的表征方式非常的直观, 但对其直接进行统计分析是比较复杂的事情, 而持续图表作为一个多重点集也无法直接作为机器学习和深度学习网络的输入。
为了进一步将持续同调提取的拓扑特征应用于机器学习、统计分析和深度学习方法, 各种关于持续图表的度量稳定且便于嵌入的矢量化方式被提出。
这些方法将拓扑空间中对物体拓扑结构特征的表征方式—持续图表转换为向量、矩阵、数组等形式, 以便在向量空间中可以使用基于距离和内积的工具, 从而用于各种机器学习方法、统计分析理论与算法、深度学习网络等.

PD是一个不完备的度量空间; PE作为单个数值直接应用过于片面; PL的计算代价过大; 由于 PD中离散点的个数有限导致 PI中的大部分区域取值为 0, 这使得数据量级较大的 PI存在较多无效信息. 此外, 在实际问题中各种矢量化方法精度存在较大的差异, 适用范围也不尽相同.

1、持续同调熵

持续同调熵(Persistent Entropy, PE)是对拓扑空间的特征表示方法之一,它是依据持续同调条形码的概率分布计算得到的香农熵值。持续同调熵可以作为衡量任意两个条形码相似程度的一个指标,用以比较不同物体之间拓扑结构的差异。因其源于概率分布香农熵,结果较为稳定。持续同调熵的定义如下。

给定一个特定维度下的持续同调条形码,将其记作 B = { [ b i , d i ] } i = 1 n B = \{[b_i, d_i]\}_{i=1}^n B={[bi,di]}i=1n,计算每个“条”的长度 l i = d i − b i l_i = d_i - b_i li=dibi(假定没有无限长度条)以及所有“条”长度的总和 L ( B ) = l 1 + ⋯ + l n L(B) = l_1 + \cdots + l_n L(B)=l1++ln,那么持续同调熵的定义为:

P E ( B ) = − ∑ i = 1 n l i L ( B ) log ⁡ ( l i L ( B ) ) PE(B) = -\sum_{i=1}^n \frac{l_i}{L(B)} \log \left( \frac{l_i}{L(B)} \right) PE(B)=i=1nL(B)lilog(L(B)li)

P E ( B ) = ∑ i = 1 n − l i L ( B ) log ⁡ ( l i L ( B ) ) . P E(B)=\sum_{i=1}^{n}-\frac{l_{i}}{L(B)} \log \left(\frac{l_{i}}{L(B)}\right) . PE(B)=i=1nL(B)lilog(L(B)li).

由于持续同调熵是从无限维的持续同调条形码映射到一维空间的, 因而使用单一的数字去概括持续同调特征存在一定的局限性.

2、持续性景观

持续性景观(Persistence Landscapes, PL)是对持续图表进行编码的方式之一,是在巴拿赫空间或者希尔伯特空间内有数值的随机变量。持续性景观通过把持续图表的散点集映射为分段线性函数序列从而对持续图表进行矢量化,以便可以直接使用统计方法进行分析或者将其作为机器学习分类器的输入。

一个有限的持续图表是一个多重点集(“出现—消失”的点对),一个持续性景观是一个连续的分段线性函数序列 η 1 , η 2 , … , η k \eta_1, \eta_2, \ldots, \eta_k η1,η2,,ηk,其中 η k \eta_k ηk 被称为第 k k k 个持续性景观函数。持续性景观函数 η k \eta_k ηk 是斜率为 0、1 或者 -1 的分段线性函数, η k \eta_k ηk 的临界点是斜率变化时的 t t t 值。具体过程分为两步。

步骤一: 记录 PD 中每个点的坐标值为 { ( b 1 , d 1 ) , … , ( b n , d n ) , i = 1 , 2 , … , n } \{(b_1, d_1), \ldots, (b_n, d_n), i = 1, 2, \ldots, n\} {(b1,d1),,(bn,dn),i=1,2,,n},其中 b i b_i bi 代表相应的拓扑特征出现的时间点, d i d_i di 表示相应的拓扑特征消失的时间点。

步骤二: 将上述的每个点映射为 u ( x i , y i ) = ( b i + d i 2 , d i − b i 2 ) . u(x_i, y_i) = \left( \frac{b_i + d_i}{2}, \frac{d_i - b_i}{2} \right). u(xi,yi)=(2bi+di,2dibi).

根据映射后点 u u u 的坐标,可以得到分段线性函数 Λ p : R → [ 0 , ∞ ) \Lambda_p: \mathbb{R} \to [0, \infty) Λp:R[0,),具体形式为
Λ p ( t ) = { t − x + y , t ∈ [ x − y , x ] , x + y − t , t ∈ ( x , x + y ] , 0 , otherwise . \Lambda_p(t) = \begin{cases} t - x + y, & t \in [x - y, x], \\ x + y - t, & t \in (x, x + y], \\ 0, & \text{otherwise}. \end{cases} Λp(t)= tx+y,x+yt,0,t[xy,x],t(x,x+y],otherwise.

Λ p ( t ) = { t − b , t ∈ [ b , b + d 2 ] , d − t , t ∈ ( b + d 2 , d ] , 0 , otherwise . \Lambda_p(t) = \begin{cases} t - b, & t \in [b, \frac{b + d}{2}], \\ d - t, & t \in \left(\frac{b + d}{2}, d\right], \\ 0, & \text{otherwise}. \end{cases} Λp(t)= tb,dt,0,t[b,2b+d],t(2b+d,d],otherwise.

通过上述对每一个点构造一个分段线性函数 Λ p \Lambda_p Λp 的方式就可以得到一系列方程,持续性景观的定义如式所示 η ( k , t ) = k max ⁡ p Λ p ( t ) , t ∈ R , k ∈ N , \eta(k, t) = k\max_p \Lambda_p(t), \quad t \in \mathbb{R}, \quad k \in \mathbb{N}, η(k,t)=kmaxpΛp(t),tR,kN,其中, k max ⁡ p k\max_p kmaxp 代表的是集合中第 k k k 个最大值。

在这里插入图片描述

在这里插入图片描述
PL图右上角的 λ 0 \lambda_0 λ0表示最大的, λ 1 \lambda_1 λ1表示第二大的

持续图表对应的度量空间是不具有完备性的, 而持续性景观本身作为一个函数集合具备向量的空间结构, 因而可以在该空间内进行范数度量的定义以便进行统计分析. 持续性景观具有可逆的优点, 因而不会损失任何信息, 性质也比较稳定, 但是在持续性景观中对于方程个数的选取、均值的计算都相对繁琐。

问:PL得到的不也是二维坐标系上的函数图吗,它是怎么矢量化成特征? (回答来源于GPT)
持续图表通常包含一系列的点,每个点代表一个拓扑特征的出现和消失的维度。这些点不能直接用作机器学习模型的输入,因为它们不是数值向量。而持续性景观通过将这些点转化为分段线性函数,进一步将这些函数“展平”(flatten)成数值向量,从而可以作为特征输入。
在实际应用中,可能会遇到不同数据点的持续性景观函数数量不同,导致展平后的向量长度不一致的问题。为了解决这个问题,通常会使用零填充(zero padding)的方法,将所有向量展平到相同的长度,从而形成一个可以用于机器学习模型的统一大小的特征矩阵。这样,每个数据点的持续性景观都可以被转化为一个固定长度的数值向量

3、贝蒂曲线

贝蒂曲线(Betti Curve)是用来描述拓扑空间内不同维度下得到的同调群随着时间变化的函数。

给定一个持续图表 𝐷 = { ( 𝑏 𝑗 , 𝑑 𝑗 ) } 𝑗 ∈ 𝐼 𝐷 = \{(𝑏_𝑗, 𝑑_𝑗)\}_{𝑗∈𝐼} D={(bj,dj)}jI,定义它关于持续图表的贝蒂曲线(Betti Curve)为映射: 𝐵 𝑛 : 𝐼 → R 𝐵_𝑛: 𝐼 → ℝ Bn:IR,对于每一步 𝑖 ∈ 𝐼 𝑖 ∈ 𝐼 iI,返回的是包含 𝑖 𝑖 i 的条数 ( 𝑏 𝑗 , 𝑑 𝑗 ) (𝑏_𝑗, 𝑑_𝑗) (bj,dj)。即为

𝐵 𝑛 ( 𝑖 ) = # ( 𝑏 𝑗 , 𝑑 𝑗 ) , 𝑖 ∈ ( 𝑏 𝑗 , 𝑑 𝑗 ) . 𝐵_𝑛(𝑖) = \#{(𝑏_𝑗, 𝑑_𝑗), 𝑖 ∈ (𝑏_𝑗, 𝑑_𝑗)}. Bn(i)=#(bj,dj),i(bj,dj).

在这里插入图片描述

4、Wasserstein Distance和 Bottleneck Distance

在拓扑数据分析中, 持续图表是拓扑特征表示的常用形式, 而Wasserstein Distance[^18] 和 Bottleneck Distance[^18]则是比较持续图表之间差异的一种距离度量, 两个持续图表的 Wasserstein Distance是用Wasserstein度量计算它们之间的距离.

Wasserstein Distance(也称为 Earth Mover’s Distance)是一种用于测量两个概率分布之间差异的距离度量, 它考虑了将一种分布转换为另一种分布所需的最小代价。在拓扑数据分析中, 可将持续图表看作是一种分布, 每个点对应于持续图表中的一个拓扑特征(例如持续同调的连通分支或孔). 因此, 给定两个持续图表, 我们可以将它们转换为概率分布并计算它们之间的Wasserstein Distance从而度量它们之间的差异. Wasserstein Distance越小, 两个持续图表就越相似。
在这里插入图片描述

给定两个持续图表 𝐷 , 𝐷 ′ 𝐷, 𝐷' D,D,定义二者的 𝑝 𝑝 p-Wasserstein 距离为

𝑊 𝑝 ( 𝐷 , 𝐷 ′ ) = inf ⁡ γ : 𝐷 → 𝐷 ′ ( ∑ u ∈ 𝐷 ∥ 𝑢 − γ ( 𝑢 ) ∥ ∞ 𝑝 ) 1 𝑝 , 𝑊𝑝(𝐷, 𝐷′) = \inf_{\gamma:𝐷→𝐷′} \left( \sum_{u \in 𝐷} \|𝑢 − \gamma(𝑢)\|_\infty^𝑝 \right)^{\frac{1}{𝑝}}, Wp(D,D)=γ:DDinf(uDuγ(u)p)p1,

其中 1 ≤ 𝑝 ≤ ∞ 1 \leq 𝑝 \leq \infty 1p。当 𝑝 → ∞ 𝑝 → \infty p 时,Wasserstein Distance 变为 Bottleneck Distance,即为

𝑊 ∞ ( 𝐷 , 𝐷 ′ ) = inf ⁡ γ : 𝐷 → 𝐷 ′ sup ⁡ u ∈ 𝐷 ∥ 𝑢 − γ ( 𝑢 ) ∥ ∞ , 𝑊_∞(𝐷, 𝐷′) = \inf_{\gamma:𝐷→𝐷′} \sup_{u \in 𝐷} \|𝑢 − \gamma(𝑢)\|_\infty, W(D,D)=γ:DDinfuDsupuγ(u),

二者的距离越小, 表示两个 PD越接近.

问:计算两个PD之间的距离和矢量化有什么关系,如果有很多个PD可以得到一个距离矩阵,那如果只有一个PD呢? (gpt回答)
通过计算持续图表中点的分布与某些参考分布(如均匀分布、高斯分布)之间的Wasserstein Distance,可以将这些距离作为特征向量的组成部分。

5、持续性图像

持续性图像(Persistence Images, PI)是一种将 PD转换成向量的方法, 它同时还保持与原始 PD的可解释性。
具体来说, 假设有一个记录了PD中所有 出现—消失 坐标值(𝑥, 𝑦)的点集B, 给定一个线性变换𝑇: ℝ2 → ℝ2, 𝑇(𝑥, 𝑦) = (𝑥, 𝑦 − 𝑥). 其中称𝑦 − 𝑥为持续值, 它代表了持续特征的持续时间. 设𝑇(𝐵)是出生—持续坐标对的变换多重点集, 其中每一个点(𝑥, 𝑦) ∈ 𝐵对应于一个点于(𝑥, 𝑦 − 𝑥) ∈ 𝑇(𝐵).

ϕ u \phi_u ϕu: ℝ2 → ℝ2 是均值为 u = ( u x , u y ) ∈ R 2 u = (u_x, u_y) \in ℝ^2 u=(ux,uy)R2 的可微概率密度函数. 通常情况下, 选择概率密度函数为均值是 u u u, 方差是 σ 2 \sigma^2 σ2 高斯函数 g ( u ) g(u) g(u)。即

ϕ u ( x , y ) = g u ( x , y ) = 1 2 π σ 2 e − ( x − u x ) 2 + ( y − u y ) 2 2 σ 2 . \phi_u(x, y) = g_u(x, y) = \frac{1}{2\pi\sigma^2} e^{-\frac{(x-u_x)^2 + (y-u_y)^2}{2\sigma^2}}. \quad ϕu(x,y)=gu(x,y)=2πσ21e2σ2(xux)2+(yuy)2.

此外, 定义一个非负加权函数 f f f: ℝ2 → ℝ2, 该函数沿水平轴方向为 0, 连续分段且可微. 加权函数是为了对上述不同的持续值 ( y − x ) (y - x) (yx) 赋予不同的权重, 且权重函数的选取也不是固定的, 权重函数中的超参数也是可以调整的. 通过权重函数与高斯函数, 就可以将 PD转化成平面上的标量函数. 具体定义如下.

定义 :给定一个持续图表 PD, 将其记作 B, 定义持续函数 ρ B \rho_B ρB: ℝ^2 → ℝ 为

ρ B ( z ) = ∑ f ( u ) ϕ u ( z ) . 其中 u ∈ T ( B ) \rho_B(z) = \sum f(u)\phi_u(z). \quad 其中u∈T(B) ρB(z)=f(u)ϕu(z).其中uT(B)

该定义先进行子域离散化的操作, 继而在离散过程中对每个区域进行积分从而得到有限维向量. 具体来说, 在每个像素区域对函数进行积分, 将得到的积分数值视为每个像素区域的最终取值, 这样就得到一个数值矩阵的表征方式. 也可以视为在平面固定一个有 n n n 个框(像素)的网格, 随后分配 ρ B \rho_B ρB 的积分给每个框.

定义 :给定一个持续图表 PD, 将其记作 B, 定义持续性图像 PI为像素值 I ( ρ B ) p = ∬ p ρ B d y d x I(\rho_B)_p = ∬_p \rho_B dydx I(ρB)p=pρBdydx 构成的矩阵.
PI 可以将不同的同调维度 PD 组合成单个对象, 假定在实验中关于不同维度同调 H 0 , H 1 , … H k H_0, H_1, … H_k H0,H1,Hk 的 PD 已经计算得到, 那么可以分别将 H 0 , H 1 , … H k H_0, H_1, … H_k H0,H1,Hk 的 PI 向量串联起来, 从而得到同时表示所有同调维度的单个 PI 向量, 该向量可进一步作为深度学习算法的输入. 在 PI 的生成过程中, 通常可调整的参数为: 概率密度函数(包含高斯函数的方差 σ 2 \sigma^2 σ2)、分辨率(积分区域的划分)、加权函数. 积分区域的划分决定着生成向量的大小, n n n 越大,得到的向量越长, 细粒度信息越精细, 需要占用的存储空间也就越多。

在这里插入图片描述

持续性图像的优点有两个:

  1. 由于不同维度得到的持续性图像的表征形式是向量, 故可通过拼接的方式实现信息的聚合,并且该结果属于欧氏空间.
  2. 可以设置权重对持续性图像进行调整, 以强调最重要的特征.

6、加权轮廓

加权轮廓(Weight Silhouettes)是持续图表的矢量化方法之一,它是对持续性景观的加权平均
给定一个非对角线元素个数为 m m m的持续图表 D = { ( b j , d j ) } j ∈ I D = \{(b_j, d_j)\}_{j \in I} D={(bj,dj)}jI和一组正实数 ω = { ω j } j ∈ I \omega = \{\omega_j\}_{j \in I} ω={ωj}jI,定义持续图表权重为 w w w的加权轮廓(Weight Silhouettes)映射 ϕ : R → R \phi: \mathbb{R} \to \mathbb{R} ϕ:RR
ϕ ( t ) = ∑ j = 1 m ω j Λ j ( t ) ∑ j = 1 m ω j , \phi(t) = \frac{\sum_{j=1}^m \omega_j \Lambda_j(t)}{\sum_{j=1}^m \omega_j}, ϕ(t)=j=1mωjj=1mωjΛj(t),
其中 Λ P ( t ) \Lambda_P(t) ΛP(t)来源于持续性景观中定义。

考虑持续图表的两个点 ( b i , d i ) (b_i, d_i) (bi,di) ( b j , d j ) (b_j, d_j) (bj,dj),通常情况下当 ∣ d j − b j ∣ ≥ ∣ d i − b i ∣ |d_j - b_j| \geq |d_i - b_i| djbjdibi时希望有 ω j ≥ ω i \omega_j \geq \omega_i ωjωi。特别地,对任意的 p > 0 p > 0 p>0,取权重 ω j = ∣ d j − b j ∣ p \omega_j = |d_j - b_j|^p ωj=djbjp,得到Power-Weighted Silhouette的定义如下。

定义 :对于每个 0 < p ≤ ∞ 0 < p \leq \infty 0<p,定义Power-Weighted Silhouette为式

ϕ ( p ) ( t ) = ∑ j = 1 m ∣ d j − b j ∣ p Λ j ( t ) ∑ j = 1 m ∣ d j − b j ∣ p , \phi(p)(t) = \frac{\sum_{j=1}^m |d_j - b_j|^p \Lambda_j(t)}{\sum_{j=1}^m |d_j - b_j|^p}, ϕ(p)(t)=j=1mdjbjpj=1mdjbjpΛj(t),

其中,称 p p p为权衡参数,它在只考虑持续时间最长的点对和对持续图表中的点对统一处理之间进行权衡。若 p p p值较小,那么 ϕ ( p ) ( t ) \phi^{(p)}(t) ϕ(p)(t)中持续性时间较短的点对更多地影响最终取值,若 p p p值较大,那么 ϕ ( p ) ( t ) \phi^{(p)}(t) ϕ(p)(t)中持续时间较长的点对最终取值影响更大。

在这里插入图片描述

在加权轮廓中不同的权衡参数会有不同形状的“轮廓”. 当𝑝值较小时, 加权轮廓更强调持续图表中持续时间较短的点, 当𝑝值较大时, 加权轮廓更强调持续图表中持续时间较长的点.

7、热核

热核(Heat Kernel)是持续同调中描述数据拓扑特征的常用的方法之一, 其思想是: 对持续图表的每个点应用于标准差为𝜎的高斯函数核, 同时持续图表中每个关于对角线对称位置上的点应用于同标准差的负高斯函数核

8、持久性统计数值PS

PS是对PD中点的出生和死亡坐标的统计测量
在这里插入图片描述
P k P_k Pk表示k维PD图,k = 0, 1

  1. M k M_k Mk L k L_k Lk的均值;
  2. M k M_k Mk L k L_k Lk的标准差;
  3. M k M_k Mk L k L_k Lk的变异系数;
  4. M k M_k Mk L k L_k Lk的偏度;
  5. M k M_k Mk L k L_k Lk的峰度;
  6. M k M_k Mk L k L_k Lk的第25百分位数;
  7. M k M_k Mk L k L_k Lk的中位数;
  8. M k M_k Mk L k L_k Lk的第75百分位数;
  9. M k M_k Mk L k L_k Lk的四分位距;
  10. L k L_k Lk的持久熵。

持久熵
在这里插入图片描述

所以这里对于0、1维PD,PS 是 19 维向量 (9×2+1)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Qt开发技巧(十八):新窗口控件用智能指针,将一些配置类变量封装起来,Qt窗体的Z序叠放,子窗体的释放,Qt中的事件发送,Qt的全局头文件

继续讲一些Qt开发中的技巧操作&#xff1a; 1.新窗口控件用智能指针 通过对Qt自带Examples的源码研究你会发现&#xff0c;越往后的版本&#xff0c;越喜欢用智能指针QScopedPointer来定义对象&#xff0c;这样有个好处就是用的地方只管new就行&#xff0c;一直new下去&#xf…

2025 年最佳的 Retool 开源替代方案

自 2017 年推出以来&#xff0c;Retool 已迅速成为开发者的热门选择。 Retool 的出现&#xff0c;填补了当时企业在快速构建内部工具上的空白。传统的应用开发往往需要耗费大量时间和资源&#xff0c;尤其是对于定制的内部业务应用。而 Retool 提供了一个灵活的平台&#xff0…

element设置时间和日期框早于现在的时间和日期禁用

效果: 今日此时此刻之前的日期、时间禁止选用&#xff0c;切换日期和时间为“2024-10-19 00:00:00"&#xff0c;再切换为”2024-10-18 00:00:00"时&#xff0c; 会给form.time默认赋值为今日此时此刻&#xff08;日期时间少于今日此时此刻则重新赋值&#xff09; 安…

datax连接池泄漏问题排查及解决

1、问题描述 频繁调用datax服务&#xff08;从oracle同步到mysql&#xff09;出现报错&#xff0c;获取不到连接 oracle读取时报错信息 "errorMessage": "Code:[DBUtilErrorCode-10], Description:[连接数据库失败. 请检查您的 账号、密码、数据库名称、IP、…

print_hex_dump调试内核,嘎嘎香

本文首发于我的公众号 皮塞作坊 专注于干货分享&#xff0c;号欢迎大家关注,二维码文末可以扫。 公众号: 使用print_hex_dump调试内核/驱动&#xff0c;太香了 最近在验证芯片功能的过程中发现了一个好用的内核调试接口&#xff0c;print_hex_dump&#xff0c;除了直接打印16…

【AIGC】关键词智能匹配:AI驱动的RAG知识库检索技术全解析

随着大语言模型的快速发展&#xff0c;AI在知识获取和生成中的应用越发广泛。RAG&#xff08;Retrieval-Augmented Generation&#xff09;模型通过结合外部知识库&#xff0c;提升了生成文本的质量与准确性&#xff0c;而关键词搜索是其关键组成部分。本文将深入探讨AI如何通过…

【java】数组(超详细总结)

目录 一.一维数组的定义 1.创建数组 2.初始化数组 二.数组的使用 1.访问数组 2.遍历数组 3.修改数据内容 三.有关数组方法的使用 1.toString 2. copyOf 四.查找数组中的元素 1.顺序查找 2.二分查找binarySearch 五.数组排序 1.冒泡排序 2.排序方法sort 六.数组逆置…

LabVIEW伺服压机是如何实现压力位移的精度?

LabVIEW伺服压机通过精确的压力和位移控制&#xff0c;实现了高精度的压装操作。为了达到这种精度&#xff0c;系统通常依赖于多个硬件和软件模块的协同工作&#xff0c;包括伺服电机、压力传感器、位移传感器以及LabVIEW的实时控制和数据处理功能。以下是LabVIEW伺服压机如何实…

Linux修改npm的镜像源为淘宝镜像

起因&#xff1a;使用官方镜像源下载软件包速度太慢 1.查看npm当前镜像源命令 npm get registry 执行结果 2.还原为官方镜像源命令 npm config set registry https://registry.npmjs.org/ 3.修改为淘宝镜像命令 npm config set registry https://registry.npmmirror.com …

【你也能从零基础学会网站开发】 SQL Server结构化查询语言数据操作应用--DML篇 delete语句数据删除操作的使用方法

&#x1f680; 个人主页 极客小俊 ✍&#x1f3fb; 作者简介&#xff1a;程序猿、设计师、技术分享 &#x1f40b; 希望大家多多支持, 我们一起学习和进步&#xff01; &#x1f3c5; 欢迎评论 ❤️点赞&#x1f4ac;评论 &#x1f4c2;收藏 &#x1f4c2;加关注 delete介绍与语…

关于武汉芯景科技有限公司的限流开关芯片XJ6288开发指南(兼容SY6288)

一、芯片引脚介绍 1.芯片引脚 二、系统结构图 三、功能描述 1.EN引脚控制IN和OUT引脚的通断 2.OCB引脚指示状态 3.过流自动断开

NC 单据模板自定义项 设置参照,比如部门参照、自定义参照等

NC 单据模板自定义项 设置参照&#xff08;自定义参照&#xff09; 一、如图下图&#xff0c;NC 单据模板自定义项 设置自定义参照&#xff1a; 1、选择需要设置参照的自定义字段&#xff0c;选择高级属性页签&#xff0c;在类型设置中&#xff0c;数据类型选择参照信息&#…

使用JUC包的AtomicXxxFieldUpdater实现更新的原子性

写在前面 本文一起来看下使用JUC包的AtomicXxxxFieldUpdater实现更新的原子性。代码位置如下&#xff1a; 当前有针对int&#xff0c;long&#xff0c;ref三种类型的支持。如果你需要其他类型的支持的话&#xff0c;也可以照葫芦画瓢。 1&#xff1a;例子 1.1&#xff1a;普…

Maven的进阶

目录 一、pom.xml文件 二、坐标 2.1 坐标的概念 2.2 坐标的意义 2.3 坐标的含义 2.4 在IDEA中查看项目的坐标 三、依赖 3.1 依赖的意义 3.2 依赖的使用 3.3 第三方依赖的查找使用方法 3.4 依赖的范围 3.5 依赖传递和可选依赖 3.5.1 依赖传递 3.5.2 依赖范围对传…

【前端】如何制作自己的网站(7)

以下内容接上文。 结合图片的超链接 将img元素作为内容&#xff0c;放在a元素中。即可为图片添加一个超链接。 例如右边的代码&#xff0c;点击头像就会打开“aboutme.html“。 点击右边的图片试试&#xff5e; 两个非文本元素——图片与超链接。 从现在开始&#xff0…

蘑菇书(EasyRL)学习笔记(1)

1、强化学习概述 强化学习&#xff08;reinforcement learning&#xff0c;RL&#xff09;讨论的问题是智能体&#xff08;agent&#xff09;怎么在复杂、不确定的环 境&#xff08;environment&#xff09;里面去最大化它能获得的奖励。如下图所示&#xff0c;强化学习…

【Petri网导论学习笔记】Petri网导论入门学习(七) —— 1.5 并发与冲突

导航 1.5 并发与冲突1.5.1 并发定义 1.14定义 1.15 1.5.2 冲突定义 1.17 1.5.3 一般Petri网系统中的并发与冲突定义 1.18一般网系统中无冲撞概念阻塞&#xff08;有容量函数K的P/T系统&#xff0c;类似于冲撞&#xff09;一般Petri网中并发与冲突共存情况 1.5 并发与冲突 Petr…

计算机导论

概述 计算机简史 1935年代&#xff0c;英国数学家图灵(Alan Turing)提出“图灵机”&#xff0c;奠定了计算机的理论基础。 1952年&#xff0c;冯诺依曼确定了计算机由运算器、控制器、存储器、输入、输出等5部分组成&#xff08;Von Neumann 体系结构&#xff09;。 60年代…

【MySQL备份】Percona XtraBackup

这份文档针对的是最新发布的版本&#xff1a;Percona XtraBackup 2.4.29&#xff08;发布说明&#xff09;。 Percona XtraBackup是一款针对MySQL系列服务器的开源热备份工具&#xff0c;在备份过程中不会锁定您的数据库。它能够对MySQL 5.1、5.5、5.6和5.7服务器以及带有Xtra…