SSGC翻译

摘要

图卷积网络(GCN)是学习图表示的主要方法。 但是,如果没有专门设计的体系结构,则GCN的性能会随着深度的增加而迅速下降。 由于聚集的邻域大小和神经网络深度是图表示的两个完全正交的方面,因此几种方法着重于通过使用浅层神经网络聚集节点的K-hop邻域来汇总邻域。
但是,这些方法仍然会遇到过度平滑的问题,并且会遭受较高的计算和存储成本。 在本文中,我们使用改进的Markov扩散核来导出GCN的一种变体,称为简单光谱图卷积(S2GC)。
我们的频谱分析表明,在S2GC中使用的简单频谱图卷积是低通和高通滤波器带的权衡,它们捕获了每个节点的全局和局部上下文。 我们提供了两个理论上的主张,证明与竞争对手相比,我们可以在一系列越来越大的社区中进行汇总,同时限制严重的过度平滑。 我们的实验评估表明,具有线性学习器的S2GC在文本和节点分类任务中具有竞争力。 此外,S2GC可与其他图卷积网络(GCN)媲美,是学习图表示形式的领先方法。 但是,如果没有专门设计的体系结构,则GCN的性能会随着深度的增加而迅速下降。 由于聚集的邻域大小和神经网络深度是图表示的两个完全正交的方面,因此几种方法着重于通过使用浅层神经网络聚集节点的K-hop邻域来汇总邻域。

引言

在过去的十年中,深度学习已成为计算机视觉和机器学习的主流。
尽管深度学习已成功应用于欧几里得格子(欧几里得网格结构数据)上的特征提取,但在许多实际情况下,数据都位于非欧几里得结构上,其处理对深度学习提出了挑战。 通过在图和信号之间定义卷积运算符,图卷积网络(GCN)将卷积神经网络(CNN)概括为包含属性的图结构输入。 消息传递神经网络(MPNN)(Gilmer et al。,2017)将图卷积统一为两个函数:变换函数和聚集函数。 MPNN基于图的邻接在多个回合中迭代传播节点特征。
尽管在社交媒体,流量分析,生物学,推荐系统甚至计算机视觉等许多应用程序中均取得了巨大成功,但许多最新的GCN模型使用的设置还是比较浅的,这是因为许多最新模型(例如GCN)(Kipf&Welling,2016)可以实现的 他们的最佳表现是2层。 换句话说,2层GCN模型会在两跳邻域中聚集节点,因此对于K> 2的情况,无法在K跳邻域中提取信息。
此外,堆叠更多的层并添加非线性往往会降低这些模型的性能。 这种现象称为过度平滑(Li et al。,2018a),其特征是随着层数的增加,GCN中节点的表示趋向于收敛到相似的,彼此不同的值。 即使增加残余连接,这也是训练非常深的CNN的有效技巧,只会减慢GCN中过度平滑的问题(Kipf&Welling,2016)。 看来,深层GCN模型仅能从深层架构中获得性能下降,而无济于事。
一种解决方案是在限制网络深度的同时加宽聚合函数的接受域,因为可以将所需的邻域大小和神经网络深度视为设计的两个独立方面。 为此,SGC(Wu等人,2019)通过在单层神经网络中应用归一化邻接矩阵的K次幂来捕获图中Khops邻居的上下文。 该方案也用于属性图聚类(Zhang et al。,2019)。 但是,SGC也会因K过度平滑! 1,如定理1所示。PPNP和APPNP(Klicpera等人,2019a)用Personalized PageRank矩阵替换了归一化邻接矩阵的幂,以解决过度平滑的问题。 尽管APPNP缓解了过度平滑的问题,但它采用了非线性运算,由于特征矩阵与可学习权重的乘法运算具有非线性,因此需要进行滤波器导数的高成本计算。 相反,我们表明,由于使用了线性模型,因此我们的方法享有在前馈步骤中计算出的自由导数。 此外,APPNP在多个k跳邻域(k = 0 ;; K)上聚合,但是加权方案偏向于全局或局部上下文,这使得即使不是不可能也很难找到平衡参数的好值。 相比之下,我们的方法以均衡的方式在k跳邻域中进行汇总。
GDC(Klicpera et al。,2019b)通过将Personalized PageRank(Page et al。,1999)推广到任意图扩散过程,进一步扩展了APPNP。 GDC比SGC(Wu等人,2019),PPNP和APPNP(Klicpera等人,2019a)具有更高的表达能力,但它导致了密集的过渡矩阵,这使得大型图的计算和空间存储变得难以处理,尽管作者建议 收缩方法可用于稀疏生成的过渡矩阵。 值得注意的是,Sun等人的正交研究方向。 (2019); Koniusz&Zhang(2020); Elinas等。 (2020)分别通过图的扰动,特征的高阶聚集和变分推理来提高GCN的性能。
为了解决上述问题,我们提出了一种简单光谱图卷积(S2GC)网络,用于在半监督和无监督设置中进行节点聚类和节点分类。 通过分析马尔可夫扩散核(Fouss等人,2012),我们获得了一个非常简单有效的光谱滤波器:我们在k = 0上汇总了k阶扩散矩阵; ; K步,等效于在大小逐渐增加的邻域上进行聚合。 此外,我们表明,与SGC相比,我们的设计包含更大的邻域,并且可以更好地应对过度平滑的情况。 我们解释说,在聚合步骤中限制最大邻域的过度支配会限制平滑度,同时保留每个节点的较大上下文。 我们还通过频谱分析表明,S2GC是低通滤波器带和高通滤波器带之间的折衷,这导致捕获每个节点的全局和局部上下文。 此外,我们展示了S2GC和APPNP之间的关系(Klicpera等,2019a),并解释了为什么S2GC比APPNP更好地捕获了一系列邻域。 我们的实验结果包括节点聚类,非监督和半监督节点分类,节点属性预测和监督文本分类。 我们证明S2GC具有很高的竞争力,通常会大大超过最新技术。

前言

记号。 令G =(V; E)是具有n个节点和m个边的简单且连接的无向图。 我们使用f1; ; ng表示G的节点索引,而dj表示G中节点j的度数。令A为邻接矩阵,D为对角度矩阵。 令eA = A + In表示添加了自环的邻接矩阵和相应的对角度矩阵eD,其中In 2 Sn ++是恒等矩阵。 最后,令X 2 Rn d表示节点特征矩阵,其中每个节点v与d维特征向量Xv相关。 归一化图拉普拉斯矩阵定义为L = In􀀀D􀀀1=2AD􀀀1= 2 2 Sn +,即具有特征分解U U>的对称正半定矩阵,其中是特征值为L的对角矩阵, U 2 Rn n是由L的特征向量组成的a矩阵。
频谱图卷积(Defferrard et al。,2016)。 我们考虑图上的频谱卷积,该图定义为在傅立叶域中信号x 2 Rn与由2 Rn参数化的滤波器g的乘积:
公式(1)
函数对L的特征值即g()进行运算。 为了避免本征分解,g()可以通过切比雪夫多项式Tk()直到第K个顺序的舍位展开来近似(Defferrard et al., 2016):
公式(2)
调整后的〜= 1 2 max􀀀In,其中max表示L的最大特征值,而2 RK现在是Chebyshev系数的向量。
Vanila图卷积网络(GCN)(Kipf&Welling,2016)。 香草GCN是光谱图卷积的一阶近似。 如果将K设置为1,则E = 0 = 2,等式1 =􀀀1。 如图2所示,它们获得卷积运算g(L)x =(I +D􀀀1=​​2AD􀀀1= 2)x。 最后,通过重新规范化技巧,用规范化版本替换矩阵I +D􀀀1=2AD􀀀1= 2 eT = eD􀀀1= 2eA eD􀀀1= 2 =(D + In)􀀀1= 2(A + In )(D + In)􀀀1= 2导致具有非线性函数的GCN层:
公式(3)
图扩散卷积(GDC)(Klicpera等人,2019b)。 广义图扩散由扩散矩阵给出:
公式(4)
带有加权系数k和广义转换矩阵T。 可以认为图4与矩阵值函数的泰勒展开有关。 因此,k和Tk的选择必须至少确保等式。 4个收敛。 Klicpera等。 (2019b)提供了两种特殊情况作为低通滤波器,即热核和基于带重启的随机游走的核。 如果S表示邻接矩阵,而D是S的对角度矩阵,则将相应的图扩散卷积定义为D􀀀1=2SD􀀀1= 2x。 请注意,k可以是一个可学习的参数,也可以通过其他方式选择。 许多作品使用等式中的扩展。 4个,但k的不同选择实现了截然不同的滤波器,从而使每种方法都独一无二。
简单图卷积(SGC)(Wu等人,2019)。 经典的MPNN(Gilmer et al。,2017)对(每一层)1跳邻居的隐藏表示取平均值。 这意味着第K层中的每个节点都从图中距离K跳远的所有节点获取特征信息。 通过假设GCN层之间的非线性不是至关重要的,SGC通过在单个神经网络层中应用转换矩阵的第K次幂来捕获图中K跳邻域中的信息。 如果我们在方程式中设置K = 1且i <K = 0,则SGC可以被视为GDC的一种特殊情况,它没有非线性,也没有通过D􀀀1= 2进行归一化。 4,并且T =〜T,得出:
公式(5)
尽管SGC是一种有效的方法,但是增加K会导致过度平滑。 因此,SGC使用的K层数很少。 定理1表明,过度平滑是在时间t!时图扩散过程中收敛到平稳分布的结果。 1。
定理1(Chung和Graham,1997)令2表示非二分图的转移矩阵的第二大特征值eT =D􀀀1A,p(t)是概率分布矢量和平稳分布。 如果步行从顶点i开始,pi(0)= 1,则在每个顶点经过t步后,我们得到:
公式(6)
APPNP。 Klicpera等。 (2019a)提出使用Personalized PageRank来推导阶数为K的固定滤波器。令f(X)表示特征矩阵X上两层完全连接神经网络的输出,然后将PPNP模型定义为H = In􀀀(1􀀀)eT f1f(X)。 为了避免计算矩阵eT的逆,Klicpera等人。 (2019a)还提出了近似PPNP(APPNP),通过截断功率迭代用近似值代替了昂贵的逆函数:
公式(7)
其中H(0)= f(X)= ReLU(XW)或H(0)= f(X)= MLP(X)。 通过解耦特征转换和传播步骤,PPNP和APPNP可以聚合来自多跳邻居的信息。

方法

下面,我们首先概述两个要点,这些要点是我们网络设计的基础,目的是减轻过度平滑的情况。 此外,我们分析了马尔可夫扩散核(Fouss等,2012),并注意到它充当了不同程度的低通频谱滤波器。 基于该内核的特征映射功能,我们展示了我们的简单光谱图卷积网络,并讨论了它与其他模型的关系。 最后,我们提供了计算和存储复杂性要求的比较。
3.1动机
我们的设计遵循第A.3节中所述的权利要求I和II,其中包括其详细证明。
根据设计,我们的滤波器将最大权重赋予节点的最近邻域,因为扩散阶跃k的邻域N = 0;扩散邻域N = 0。 ; K服从N(eT 0)N(eT 1)N(eT K)N(eT 1)。 也就是说,较小的社区也属于较大的社区。
索赔II。 当K!1时,S2GC与SGC贡献的能量之比为0。因此,无限维接收场的能量(最大k)将不会支配我们滤波器的总能量。 因此,S2GC可以合并较大的接收场,而不会破坏较小的接收场的贡献。 这由表8证实,其中S2GC在K = 16时达到最佳结果,而SGC通过比较得出的结果较差,其峰值在K = 4处(请注意,较大的K更好)。
3.2 MARKOV DIFFUSION KERNEL
当两个节点在图中以相似的方式扩散时,它们被认为是相似的,因为它们随后以相似的方式影响其他节点(Fouss等,2012)。 此外,如果两个节点位于相同的不同群集中,则它们是近邻。 在时间K,节点i和j之间的马尔可夫扩散距离定义为:
公式(8)
对于从时间k = 0开始的过程,经过K个步骤后的平均访问率xi(K)的计算如下:
公式(9)
通过定义Z(K)= 1 K PK k = 1 Tk,我们重新公式化了。 8作为以下指标:
公式(10)
节点i的马尔可夫扩散核(MDK)的基础特征图为Z(K)xi(0)。
在图1中绘制了线性投影Z(K)(滤波器)对频谱的影响,其中f()= 1 K PK k = 0 k(我们从0开始总和包括自环)。 观察以下特性:(i)Z(K)保留T的前导(大)特征值,并且(ii)K越高,低通滤波器越严格,但滤波器也保留高频。 换句话说,随着K的增长,此过滤器包括越来越大的邻域,但也保持了节点的最近位置。 请注意,L = I􀀀T,其中L是归一化的Laplacian矩阵,T是归一化的邻接矩阵。
因此,为T保留较大的正特征值等于为L保留较小的特征值。
3.3 SIMPLE SPECTRAL GRAPH CONVOLUTION
在上述马尔可夫扩散核的基础上,我们包括自环,并在线性层之后提出了带有softmax分类器的简单光谱图卷积(S2GC)网络:
公式(11)
令kxik2 = 1; 8i(每个xi是X中的一行)。 如果K! 1then H = P1 k = 0 eT kX是下面给出的标准化拉普拉斯正则化问题的最佳扩散表示:
公式(12)
与每个向量hi表示H的第i行。与(Zhou et al。,2004)中更常见的形式相比,我们施加khik22 = kxik22 = 1,以通过余弦距离最小化hi和xi之间的差异。 比欧几里得距离。 相对于H区分q(H),我们有eLH􀀀X = 0。 因此,最优表示H =(I􀀀eT)􀀀1X,其中(I􀀀eT)􀀀1= P1k = 0eTk。
但是,无限扩展是由等式引起的。 实际上,由于平滑度过高,所以12不是最佳的。
因此,我们将其包括在等式中。 11 a的自环eT 0 = I,2 [0; 1]参数(表9评估其影响)以平衡节点与连续邻域的自我信息,我们考虑有限K。
我们将等式推广。 11为:
公式(13)

S2GC与GDC的关系。GDC使用大小为n n的整个滤波器矩阵S,因为S通过其次数被多次重新归一化。Klicpera等人(2019b)解释说,“大多数图形扩散导致密集矩阵S”。
相反,我们的方法简单地计算为(PK k=1 eT kX)W(加上自循环),其中X的大小为n d,d n,其中n和d分别是节点和特征的数量。eT kX步计算为eT (eT ( (eTX) )),这需要K个大小为n n的稀疏矩阵和大小为n d的密集矩阵之间的稀疏矩阵乘法。因此,S2GC可以处理非常大的图,因为S2GC不需要稀疏密集滤波器矩阵(与GDC相反)。

S2GC与APPNP的关系。设H0=XW,因为我们在S2GC中使用线性步长。只有这样,对于l=0和H0=XW,APPNP展开式才能得到H1=(1)eTXW+t XW=((1t)eT+t I)XW,这等于Z(1)XW=(PK k=0 eT k)XW=eTX+X=(eT+I)XW,如果t=0:5,k=1,H1的标度(常数)除外。
相反,对于l=1和一般情况h0=f(X;W),APPNP yieldsH2=(1)2eT 2f(X;W)+(1)、eTf(X;W)+u f(X;W),从中很容易注意到与2、1和0跳相关的特定权重系数(1)、2、(1 u)u和。这表明APPNP展开式与等式13中的S2GC展开式非常不同。实际上,只有当=0:5,K=1,f是线性变换时,S2GC和APPNP才是等价的。
此外,由于APPNP假设H0=f(X;W)=ReLU(XW)(或MLP代替ReLU),它们的优化器必须通过f(X;W)反向传播以获得@f@W,并将此结果与上述展开式相乘,例如,@H2@W=(1Ƀ)2eT 2f0(X;W)+(1Ƀ eTf0(X;W)+ f0(X;W)。
相反,我们使用线性函数XW。因此,@XW@W产生X。因此,对于反向传播步骤,我们的展开式与X的乘积实际上是在前向传递中获得的,这使得我们的方法对于大型图非常快。
S2GC与AR的关系。AR滤波器(Li et al.,2019)使用正则化拉普拉斯核(Smola&Kondor,2003),这不同于我们使用的(修改的)马尔可夫扩散核。
具体地说,P正则化拉普拉斯核使用反拉普拉斯矩阵L,得到KL=1 k=0 k(t L)k=(I+t L)t 1,其中L=I t eT,与冯诺依曼扩散核KvN=P1 k=0 t kAk有关。相反,马尔可夫扩散核定义为KMD(K)=Z(K)ZT(K),其中Z(K)=1 K PK K=1 eT K和eT=D1=2AD1=2。
S2GC与跳跃知识网络(JKN)的关系。Xu等人(2018b)通过在最后一层中连接中间节点来组合每个层的中间节点表示。然而,(Xu et al.,2018b)使用非线性层,这导致了完全不同的网络体系结构,并且由于复杂的反向传播链,通常处理时间较慢。
3.4对比分析
对于S2GC,存储成本是O(jEj+nd),其中jEj是总边计数,nd与在中间乘法eT (eT ( (eTX) )期间保存eT kX有关。计算量为O(KjEjd+Knd)。每一个稀疏矩阵乘法eTX花费jEjd。我们需要K个这样的乘法,其中Knd和nd是在滤波器上求和并添加特征X的代价。
相比之下,GDC的存储开销约为O(n2),计算开销约为O(KjEjn),其中n是节点数,K是项的阶数,jEj是图的边数。APPNP、SGC和S2GC的成本比GDC低得多。注意,KjEjd Knd和n d。我们发现APPNP、SGC和S2GC在正向阶段具有相似的计算和存储成本。我们注意到,APPNP中的符号d不是特征X的维数,而是f(X)的维数,f(X)是类别数。
对于包括计算分类步骤的梯度的后向阶段,GDC、SGC和S2GC的计算成本与K和jEj无关,因为这些方法的图卷积不需要反向传播(梯度在前向步骤中计算)。
相反,如前所述,APPNP需要backprop。
表1总结了几种方法的计算和存储成本。表2表明,在大规模产品数据集(OGB基准)上,APPNP比S2GC慢66 以上,尽管为了公平起见,我们在比较的方法中使用了相同的PyTorch基本构建块。

4实验

在这一部分中,我们将对所提出的方法在四个不同的任务上进行评估:节点聚类、社区预测、半监督节点分类和文本分类。
4.1节点分类
我们将S2GC与三种不同的聚类方法进行了比较:(i)仅使用节点特征的方法,即k-均值和谱聚类(spectral-f),通过线性核与节点特征构造相似矩阵。(ii)仅使用图结构的结构聚类方法,即以节点邻接矩阵作为相似矩阵的谱聚类(spectral-g),DeepWalk(Perozzi et al.,2014),以及(iii)利用节点特征和图结构的属性图聚类方法:图自动编码器(GAE)和图变分自动编码器(VGAE)(Kipf&Welling,2016),以及逆变量正则化图自动编码器(ARGE)、变分图自动编码器(ARVGE)(Pan et al.,2018)和AGC(Zhang et al.,2019)。为了评价聚类性能,采用了三种性能指标:聚类精度(Acc)、归一化互信息(NMI)和宏F1评分(F1)。我们在四个数据集上运行每种方法10次:Cora、citeser、PubMed和Wiki,并在表3中报告平均聚类结果,其中前1个结果以粗体突出显示。为了自适应地选择K阶,我们使用了聚类性能度量:基于数据内在信息的内部准则。
(2019).
4.2社区预测
我们补充了我们的社会网络分析,使用S2GC归纳预测Reddit上的社区结构,这是一个大规模数据集,如表10所示,由于记忆问题,vanilla GCN Kipf&Welling(2016)和GDC(Klicpera et al.,2019b)无法处理。
在Reddit数据集上,我们使用L-BFGS训练S2GC,不使用正则化,我们设置K=5和=0:05。我们根据方案对S2GC进行归纳评估(Chen等人,2018)。我们在只包含训练节点的子图上训练S2GC,并在原始图上进行测试。在所有的数据集上,我们根据收敛行为和得到的验证精度来调整历元数。
对于Reddit,我们将S2GC与GraphSAGE(Hamilton等人,2017)、FastGCN(Chen等人,2018)、SGC(Wu等人,2019)和DGI(Velickovic等人,2019)的监督和非监督变体的报告性能进行了比较。表4还突出显示了每种方法的特征提取步骤的设置。注意,S2GC和SGC不涉及学习,因为它们不学习任何参数来提取特征。logistic回归被用作无监督和无学习方法的分类器,用于训练标签。
4.3半监督节点分类
对于半监督节点分类任务,我们在Cora、Citeseer和Pubmed数据集上应用标准的固定训练、验证和测试分割(Yang et al.,2016),每个类20个节点用于训练,500个节点用于验证,1000个节点用于测试。对于基线,我们包括FastGCN(Chen et al.,2018)、APPNP(Klicpera et al.,2019a)、Mixhop(Abu El-Haija et al.,2019)、SGC(Wu et al.,2019)、DGI(Velickovic et al.,2019)和GIN(Xu et al.,2018a)。我们使用Adam-SGD优化器(Kingma&Ba,2014)以0.02的学习率来训练S2GC。我们在所有数据集上设置=0:05和K=16。为了确定K和,我们使用了MetaOpt包Bergstra等人。
(2015)20个步骤对Cora验证集的超参数进行元优化。之后,我们在所有数据集中固定了K=16和=0:05,因此K和根本不调整到单个数据集。我们稍后将讨论和K的影响。
为了在大规模基准上评估所提出的方法(见表6),我们使用Arxiv、Mag和Products数据集将所提出的方法与SGC、GraphSage、GCN、MLP和Softmax(多项式回归)进行比较。在这三个数据集上,我们的方法始终优于SGC。在Arxiv和产品上,我们的方法不能优于GCN和GraphSage,而MLP的性能明显优于softmax分类器。因此,我们认为MLP比图卷积在这里起着更重要的作用。为了证明这一点,我们还进行了一个实验(S2GC+MLP),用MLP代替线性分类器,得到了一个更强大的S2GC变体。在Mag上,S2GC+MLP比S2GC的性能稍有提高,因为MLP的性能接近softmax。在其他两个数据集上,S2GC+MLP表现非常出色。我们的S2GC+MLP在Mag和Arxiv上表现最好。
4.4文本分类
文本分类预测文档的标签。Yao et al.(2019)使用2层GCN创建语料库级图,将文档和单词都视为图中的节点,从而实现最先进的结果。逐点互信息(PMI)给出了词到词的边缘权重,而文本边缘权重则由标准化的TF-IDF分数给出。
我们在5个广泛使用的基准语料库上进行了实验,包括电影评论(MR)、20个新闻组(20NG)、Ohsumed、Reuters21578的R52和R8。我们首先通过清理和标记文本对所有数据集进行预处理,如Kim(2014)。然后我们删除了NLTK6中定义的停止词,以及20NG、R8、R52和Ohsumed中出现次数少于5次的低频词。我们将我们的方法与GCN(Kipf&Welling,2016)和SGC(Wu等人,2019)进行了比较。统计数据表11总结了预处理的数据集。表7显示了S2GC在5个基准数据集上与他们的模型相竞争。我们在补充资料中提供了参数设置。
4.5层数和参数设置
表8总结了具有不同层数的模型的结果(K是层数,它与S2GC中聚合过滤器的数量一致)。我们观察到,在Cora、Citeseer和Pubmed上,我们的方法在K=16时始终获得最佳性能,相当于16层。总的来说,结果表明,S2GC比SGC能更好地聚集在更大的社区中,同时受过度平滑的影响更小。与S2GC相比,GCN和SGC的性能在层数超过32层时由于过平滑而迅速下降。
表9总结了建议方法在0到0.15范围内的结果。下表显示略微提高了S2GC的性能。因此,通过 w.r.t.其他连续较大感受野的滤波器来平衡自环的影响是有用的,但自环不是强制性的。
5结论
我们提出了简单谱图卷积(S2GC),一种扩展马尔可夫扩散核(第3.2节)的方法,它的特征映射来自规范化拉普拉斯正则化问题(第3.3节),如果K!1我们的理论分析表明,S2GC在连续较大的感受野聚集过程中获得了适当的平衡水平。通过分析每个模型的光谱特性和实现,我们发现S2GC与SGC、APPNP和JKN之间存在着联系。然而,正如我们的权利要求I和II所示,我们设计了一个具有独特特性的过滤器,以捕获逐渐增加的上下文的级联,同时通过给每个节点的最近邻域按比例赋予更大的权重来限制过度平滑。我们进行了广泛而严格的实验,结果表明,S2GC在无监督、半监督和有监督的任务上往往优于许多最新的方法,并且给出了几种流行的数据集基准。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值