ps2022新功能抠图扣得干净吗,ps2022新功能视频教程

神经网络有哪些主要分类规则并如何分类?

神经网络模型的分类人工神经网络的模型很多,可以按照不同的方法进行分类。其中,常见的两种分类方法是,按照网络连接的拓朴结构分类和按照网络内部的信息流向分类。

1按照网络拓朴结构分类网络的拓朴结构,即神经元之间的连接方式。按此划分,可将神经网络结构分为两大类:层次型结构和互联型结构。

层次型结构的神经网络将神经元按功能和顺序的不同分为输出层、中间层(隐层)、输出层。输出层各神经元负责接收来自外界的输入信息,并传给中间各隐层神经元;隐层是神经网络的内部信息处理层,负责信息变换。

根据需要可设计为一层或多层;最后一个隐层将信息传递给输出层神经元经进一步处理后向外界输出信息处理结果。

而互连型网络结构中,任意两个节点之间都可能存在连接路径,因此可以根据网络中节点的连接程度将互连型网络细分为三种情况:全互连型、局部互连型和稀疏连接型2按照网络信息流向分类从神经网络内部信息传递方向来看,可以分为两种类型:前馈型网络和反馈型网络。

单纯前馈网络的结构与分层网络结构相同,前馈是因网络信息处理的方向是从输入层到各隐层再到输出层逐层进行而得名的。

前馈型网络中前一层的输出是下一层的输入,信息的处理具有逐层传递进行的方向性,一般不存在反馈环路。因此这类网络很容易串联起来建立多层前馈网络。反馈型网络的结构与单层全互连结构网络相同。

在反馈型网络中的所有节点都具有信息处理功能,而且每个节点既可以从外界接受输入,同时又可以向外界输出。

谷歌人工智能写作项目:小发猫

人工神经网络评价法

人工神经元是人工神经网络的基本处理单元,而人工智能的一个重要组成部分又是人工神经网络刘雪峰老师卷积神经网络,大白话讲卷积神经网络。人工神经网络是模拟生物神经元系统的数学模型,接受信息主要是通过神经元来进行的。

首先,人工神经元利用连接强度将产生的信号扩大;然后,接收到所有与之相连的神经元输出的加权累积;最后,将神经元与加权总和一一比较,当比阈值大时,则激活人工神经元,信号被输送至与它连接的上一层的神经元,反之则不行。

人工神经网络的一个重要模型就是反向传播模型(Back-PropagationModel)(简称BP模型)。

对于一个拥有n个输入节点、m个输出节点的反向传播网络,可将输入到输出的关系看作n维空间到m维空间的映射。由于网络中含有大量非线性节点,所以可具有高度非线性。

(一)神经网络评价法的步骤利用神经网络对复垦潜力进行评价的目的就是对某个指标的输入产生一个预期的评价结果,在此过程中需要对网络的连接弧权值进行不断的调整。(1)初始化所有连接弧的权值。

为了保证网络不会出现饱和及反常的情况,一般将其设置为较小的随机数。(2)在网络中输入一组训练数据,并对网络的输出值进行计算。

(3)对期望值与输出值之间的偏差进行计算,再从输出层逆向计算到第一隐含层,调整各条弧的权值,使其往减少该偏差的方向发展。

(4)重复以上几个步骤,对训练集中的各组训练数据反复计算,直至二者的偏差达到能够被认可的程度为止。(二)人工神经网络模型的建立(1)确定输入层个数。

根据评价对象的实际情况,输入层的个数就是所选择的评价指标数。(2)确定隐含层数。

通常最为理想的神经网络只具有一个隐含层,输入的信号能够被隐含节点分离,然后组合成新的向量,其运算快速,可让复杂的事物简单化,减少不必要的麻烦。(3)确定隐含层节点数。

按照经验公式:灾害损毁土地复垦式中:j——隐含层的个数;n——输入层的个数;m——输出层的个数。人工神经网络模型结构如图5-2。

图5-2人工神经网络结构图(据周丽晖,2004)(三)人工神经网络的计算输入被评价对象的指标信息(X1,X2,X3,…,Xn),计算实际输出值Yj。

灾害损毁土地复垦比较已知输出与计算输出,修改K层节点的权值和阈值。灾害损毁土地复垦式中:wij——K-1层结点j的连接权值和阈值;η——系数(0<η<1);Xi——结点i的输出。

输出结果:Cj=yj(1-yj)(dj-yj)(5-21)式中:yj——结点j的实际输出值;dj——结点j的期望输出值。

因为无法对隐含结点的输出进行比较,可推算出:灾害损毁土地复垦式中:Xj——结点j的实际输出值。

它是一个轮番代替的过程,每次的迭代都将W值调整,这样经过反复更替,直到计算输出值与期望输出值的偏差在允许值范围内才能停止。

利用人工神经网络法对复垦潜力进行评价,实际上就是将土地复垦影响评价因子与复垦潜力之间的映射关系建立起来。

只要选择的网络结构合适,利用人工神经网络函数的逼近性,就能无限接近上述映射关系,所以采用人工神经网络法进行灾毁土地复垦潜力评价是适宜的。

(四)人工神经网络方法的优缺点人工神经网络方法与其他方法相比具有如下优点:(1)它是利用最优训练原则进行重复计算,不停地调试神经网络结构,直至得到一个相对稳定的结果。

所以,采取此方法进行复垦潜力评价可以消除很多人为主观因素,保证了复垦潜力评价结果的真实性和客观性。(2)得到的评价结果误差相对较小,通过反复迭代减少系统误差,可满足任何精度要求。

(3)动态性好,通过增加参比样本的数量和随着时间不断推移,能够实现动态追踪比较和更深层次的学习。

(4)它以非线性函数为基础,与复杂的非线性动态经济系统更贴近,能够更加真实、更为准确地反映出灾毁土地复垦潜力,比传统评价方法更适用。

但是人工神经网络也存在一定的不足:(1)人工神经网络算法是采取最优化算法,通过迭代计算对连接各神经元之间的权值不断地调整,直到达到全局最优化。

但误差曲面相当复杂,在计算过程中一不小心就会使神经网络陷入局部最小点。

(2)误差通过输出层逆向传播,隐含层越多,逆向传播偏差在接近输入层时就越不准确,评价效率在一定程度上也受到影响,收敛速度不及时的情况就容易出现,从而造成个别区域的复垦潜力评价结果出现偏离。

神经网络 二分类 vs 多分类

二分类:标签为0和1,网络输出的结果要经过sigmoid激活函数处理,输出值的值域为0~1之间,小于0.5则视为标签0,大于等于0.5则为标签1多分类:标签为多个值,网络需要输出一个维度与标签数量一致的z-score向量,向量需要通过softmax激活后转化为对应各标签的概率(概率和为1),而判定出的标签是概率最高的那个。

关于用bp神经网络做分类时,指标的筛选问题 10

想用神经网络做评价模型,请问在matlab中输入数据是什么?Target数据是什么?

输入数据是因子,是变量,是x,target是结果,是对应x下的y值。评价模型首先你肯定有评价的指标,这个就是y。其余对这个指标有影响的因素就是x。

你的例子里输入就是90*20的矩阵,target就是90*1的矩阵。模型训练好以后,用剩下的10家去检验模型。

神经网络基本原理就是得到一个自变量x的方程,使得通过方程计算的结果与实际的y之间的差值最小,从而说明模型的正确性,用于后续的评价和预测等。

BP人工神经网络

人工神经网络(artificialneuralnetwork,ANN)指由大量与自然神经系统相类似的神经元联结而成的网络,是用工程技术手段模拟生物网络结构特征和功能特征的一类人工系统。

神经网络不但具有处理数值数据的一般计算能力,而且还具有处理知识的思维、学习、记忆能力,它采用类似于“黑箱”的方法,通过学习和记忆,找出输入、输出变量之间的非线性关系(映射),在执行问题和求解时,将所获取的数据输入到已经训练好的网络,依据网络学到的知识进行网络推理,得出合理的答案与结果。

岩土工程中的许多问题是非线性问题,变量之间的关系十分复杂,很难用确切的数学、力学模型来描述。

工程现场实测数据的代表性与测点的位置、范围和手段有关,有时很难满足传统统计方法所要求的统计条件和规律,加之岩土工程信息的复杂性和不确定性,因而运用神经网络方法实现岩土工程问题的求解是合适的。

BP神经网络模型是误差反向传播(BackPagation)网络模型的简称。它由输入层、隐含层和输出层组成。

网络的学习过程就是对网络各层节点间连接权逐步修改的过程,这一过程由两部分组成:正向传播和反向传播。

正向传播是输入模式从输入层经隐含层处理传向输出层;反向传播是均方误差信息从输出层向输入层传播,将误差信号沿原来的连接通路返回,通过修改各层神经元的权值,使得误差信号最小。

BP神经网络模型在建立及应用过程中,主要存在的不足和建议有以下四个方面:(1)对于神经网络,数据愈多,网络的训练效果愈佳,也更能反映实际。

但在实际操作中,由于条件的限制很难选取大量的样本值进行训练,样本数量偏少。(2)BP网络模型其计算速度较慢、无法表达预测量与其相关参数之间亲疏关系。

(3)以定量数据为基础建立模型,若能收集到充分资料,以定性指标(如基坑降水方式、基坑支护模式、施工工况等)和一些易获取的定量指标作为输入层,以评价等级作为输出层,这样建立的BP网络模型将更准确全面。

(4)BP人工神经网络系统具有非线性、智能的特点。

较好地考虑了定性描述和定量计算、精确逻辑分析和非确定性推理等方面,但由于样本不同,影响要素的权重不同,以及在根据先验知识和前人的经验总结对定性参数进行量化处理,必然会影响评价的客观性和准确性。

因此,在实际评价中只有根据不同的基坑施工工况、不同的周边环境条件,应不同用户的需求,选择不同的分析指标,才能满足复杂工况条件下地质环境评价的要求,取得较好的应用效果。

bp神经网络只有一类样本怎么分类

神经网络一列为一个样本,所以对于matlab而言,要求输入和输出的列数必须一样的经常有人问起的问题:Errorusing==>network/trainTargetsareincorrectlysizedfornetwork.Matrixmusthave1rows.解决:要求PT的列数一样,如果不一样P=p’t=t’转置一下2.归一澄清一个对归一的错误理解1样本矩阵为9行4列。

9组样本,4个变量。

现在归一化:x=[68.766.6561019.2;89.990.8450011.8;120.8120.6680020.6;16940.4616040.6;180.869.8733033.4;190.3130.2732031.6;109.8151.1575486.1;33.261.4825522.6;111.7126.6704013.6;]写法一:fori=1:9x1(i,:)=(x(i,:)-min(x(i,:)))/(max(x(i,:))-min(x(i,:)))end结果:0.00890.00851.000000.01740.01761.000000.01480.01481.000000.021001.00000.00000.02020.00501.000000.02180.01351.000000.00420.01151.000000.00130.00471.000000.01400.01611.00000写法二:x=x'fori=1:4x1(i,:)=(x(i,:)-min(x(i,:)))/(max(x(i,:))-min(x(i,:)))end结果:Columns1through80.22600.36090.55760.86440.93951.00000.487600.23670.45530.724500.26560.81121.00000.18970.295600.61250.44210.75370.75100.33401.00000.099600.11840.38760.29070.26651.00000.1454Column90.49970.77870.67640.0242注意:写法 2为正确的归一化对归一的错误理解2将数据集分为训练集和测试集,对训练集和测试集分别做归一处理所以就会有人问如果我的测试集只有一个数据如何归一呀最大最小值从那里找呀正确的理解是:训练集和测试集的归一标准是一样的建议:如果训练集和测试集是一起归一的可以自己编程实现归一如果是训练集和测试集是分开的,最好是使用matlab自带的premnmx、postmnmx、tramnmx函数如果是自己编程的话,请注意训练集和测试集的归一标准需要一样premnmx、postmnmx、tramnmx函数的使用例子如下:ExampleHereisthecodetonormalizeagivendatasetsothattheinputsandtargetswillfallintherange[-1,1],usingPREMNMX,andthecodetotrainanetworkwiththenormalizeddata.p=[-10-7.5-5-2.502.557.510];t=[07.07-10-7.0707.07107.070];[pn,minp,maxp,tn,mint,maxt]=premnmx(p,t);net=newff(minmax(pn),[51],{'tansig''purelin'},'trainlm');net=train(net,pn,tn);Ifwethenreceivenewinputstoapplytothetrainednetwork,wewilluseTRAMNMXtotransformthemfirst.Thenthetransformedinputscanbeusedtosimulatethepreviouslytrainednetwork.ThenetworkoutputmustalsobeunnormalizedusingPOSTMNMX.p2=[4-7];[p2n]=tramnmx(p2,minp,maxp);an=sim(net,pn);[a]=postmnmx(an,mint,maxt);这个是归一到-1和1之间那我要归一到01之间怎么办有人说可以使用加绝对值就归一到01之间了我觉得加绝对值可能会有些问题比较好的方式是变换P在-11之间Pp=(p+1)/2就可以归一到01之间至于要归一到0.1-0.9之间选取合适的变换就可以做到了二、神经网络(BP)系列(2)(初学者系列)每次结果不一样解析这个系列主要针对使用matlab神经网络工具箱,对一些初学者容易理解错误的地方进行解析。

神经网络每次结果不同解析神经网络每次结果不同是因为初始化的权值和阈值是随机的因为每次的结果不一样,才有可能找到比较理想的结果啊找到比较好的结果后,用命令savefilenamenet;保存网络,可使预测的结果不会变化,调用时用命令loadfilenamenet;取p_test=[];t_test=[];t=sim(net,p_test);err=t_test-t;plot(p_test,err);选择误差小的保存网络savefilenamenet以后调用时loadfilenamenetp_test=[];t_test=[];t=sim(net,p_test);err=t_test-t;plot(p_test,err):因为每次初始化网络时都是随机的,而且训练终止时的误差也不完全相同,结果训练后的权植和阀也不完全相同(大致是一样的),所以每次训练后的结果也略有不同举个例子,这样初始化就能使网络的输出结果是一样的,另外也可以给网络特定的权值,一种方法是把预测结果后的效果比较好的权值做为初值p=[0.87260.94410;000.7093;0.73780.70930.3795;0.64160.37950.7031;10.70310.4241;0.77740.42410.9559;0.95590.50120.7052;...0.82090.70520.4983;0.60110.49831;]';t=[00.73780.641610.77740.50120.82090.60110.9350];rand('state',0);net=newff(minmax(p),[6,1],{'tansig','logsig'},'trainlm');net.trainParam.epochs=2000;=0.001;net=train(net,p,t);y=sim(net,p);error=y-t;res=norm(error);p_test=[0.935010.6236;]';t_test=[0.8027]a=sim(net,p_test)rand('state',0);这个的作用是每次初始化一样0是种子数,如果换成其他数,就可以产生不同的随机值注:rand('state',0);的使用有点为结果相同而相同,至于这样的结果网络性能是否达到好的要求则没有考虑,建议还是不要用这种方法使每次结果相同用保存网络的方法吧消除初值影响可以考虑的另一个方法是简单集成神经网络原理由于选择不同的权值所得结果不同,使最终神经网络泛化能力体现出一定的随机性。

利用这个特性也可以改善神经网络的泛化能力,神经网络集成便是利用这种思路的体现,即先训练一组只有初始权值不同的子网,然后通过各子网“表决(Voting)”的形式(如加权和)得到学习系统的输出。

当神经网络集成用于分类器时,集成的输出通常由个体网络的输出投票产生。通常利用绝对多数投票法(某分类成为最终结果当且仅当输出结果为该分类的神经网络的数目最多)。理论分析和大量实验表明,后者优于前者。

因此,在对分类器进行集成时,目前大多采用相对多数投票法。当神经网络集成用于回归估计时,集成的输出通常由各网络的输出通过简单平均或加权平均产生。

Perrone等人认为,采用加权平均可以得到比简单平均更好的泛化能力。

三、神经网络(BP)系列(3)(初学者请看)分类实例分类实例输入输出设计:对某一问题分析,影响网络性能的输入主要有5个指标,输出则分为8类。8类的话可以用三位二进制表示。

000001010011100101110111神经网络的输入为5维的向量,输出为三维的向量。

输入的数据具有不同的单位和量级,所以在输入在输入神经网络之前应该首先进行归一化处理,将样本数据归一到01之间。

样本总共有328组数据将样本集分为训练集和测试集随机抽取70取做为测试测试集其余的作为训练集网络设计采用tansig(x)和logsig(x)函数作为传输函数,tansig(x)如下式:tansig=2/(1+exp(-2x))-1logsig(x)如下式:logsig(x)=1/(1+exp(-n))对于有限个输入到输出的映射,并不需要无限个隐层节点,这就涉及到如何选择隐层节点数的问题,而这一问题的复杂性,使得至今为止尚未找到一个很好的解析式,隐层节点数往往根据前人设计所得的经验和自己进行试验来确定。

设计网络时我采用的方法是通过神经网络训练来确定隐含层的个数,首先确定隐含层中节点数目的范围,设计一个隐含层神经元数目可变的BP网络,通过误差对比,确定最佳的隐含层神经元的个数。

最后确定的隐含层的个数为12。所以网络结构为5-12-3的三层结构。

load('');p=CC1(:,[1,3:6])';T=[000;111;110;101;100;011;010;001];t=repmat(T,41,1)';pp=p;%%%%%%归一到01之间fori=1:5p(i,:)=(p(i,:)-min(p(i,:)))/(max(p(i,:))-min(p(i,:)));endAllSamNum=328;%总样本数TrainSamNum=258;%训练样本数TestSamNum=AllSamNum-TrainSamNum;%测试样本数PerPos=randperm(AllSamNum);TrainDataIn=p(:,1:TrainSamNum)TrainDataOut=t(:,1:TrainSamNum)TestDataIn=p(:,PerPos(:,TrainSamNum+1:TrainSamNum+TestSamNum))TestDataOut=t(:,PerPos(:,TrainSamNum+1:TrainSamNum+TestSamNum))MaxMin=[01;01;01;01;01];net=newff(MaxMin,[12,3],{'tansig','logsig'},'trainlm');%训练参数设置net.trainParam.epochs=1000;%训练次数=0.0001;%训练结束的目标=0.1;%学习率=20;net=train(net,TrainDataIn,TrainDataOut);out=sim(net,TestDataIn)训练结果:TRAINLM,Epoch0/1000,MSE0.296308/0.0001,Gradient83.9307/1e-010TRAINLM,Epoch20/1000,MSE0.0224641/0.0001,Gradient6.7605/1e-010TRAINLM,Epoch40/1000,MSE0.00563627/0.0001,Gradient3.27027/1e-010TRAINLM,Epoch60/1000,MSE0.00348587/0.0001,Gradient1.49868/1e-010TRAINLM,Epoch80/1000,MSE0.00247714/0.0001,Gradient0.459233/1e-010TRAINLM,Epoch100/1000,MSE0.0018843/0.0001,Gradient0.289155/1e-010TRAINLM,Epoch120/1000,MSE0.00148204/0.0001,Gradient0.392871/1e-010TRAINLM,Epoch140/1000,MSE0.00119585/0.0001,Gradient0.340864/1e-010TRAINLM,Epoch160/1000,MSE0.000980448/0.0001,Gradient0.391987/1e-010TRAINLM,Epoch180/1000,MSE0.000779059/0.0001,Gradient0.389835/1e-010TRAINLM,Epoch200/1000,MSE0.000606974/0.0001,Gradient0.310202/1e-010TRAINLM,Epoch220/1000,MSE0.000388926/0.0001,Gradient0.331632/1e-010TRAINLM,Epoch240/1000,MSE0.000143563/0.0001,Gradient0.0403953/1e-010TRAINLM,Epoch248/1000,MSE9.87756e-005/0.0001,Gradient0.174263/1e-010TRAINLM,Performancegoalmet.训练好的权值、阈值的输出方法是:输入到隐层权值:{1,1}隐层阈值:theta1=net.b{1}隐层到输出层权值:{2,1};输出层阈值:theta2=net.b{2}>>{1,1}w1=1.7663-2.8022-0.7142-2.1099-2.40113.6614-2.5297-4.42955.05088.18994.40077.6775-6.02826.15671.87754.5009-9.99155.97375.02343.39310.2703-2.88500.4482-2.91531.36482.37693.31510.87453.19001.2608-2.2815-6.68471.87382.4093-2.9033-5.33326.1506-8.4386-6.79793.1428-0.0135-10.8942-9.63337.231112.06932.31305.22110.01552.94310.3135-6.4017-0.89870.19763.25270.1444-3.6517-1.63393.55052.48131.7880>>theta1=net.b{1}theta1=0.5955-5.4876-9.8986-4.47313.6523-4.03715.61875.74260.9147-8.5523-2.3632-5.6106>>{2,1}w2=Columns1through8-0.2751-3.5658-2.3689-6.4192-1.12091.5711-1.76157.6202-1.2874-9.1588-14.45337.50643.70740.90198.7033-5.00313.3536-0.88447.88870.93360.8410-2.49051.0627-9.3513Columns9through12-2.5894-1.9950-3.0132-4.700913.3490-9.8521-4.6680-4.2037-5.92512.9388-1.6797-2.1077>>theta2=net.b{2}theta2=-2.47620.56920.6694输出:out=Columns1through81.00001.00000.00200.00001.00001.00000.00000.00001.00000.00000.00411.00001.00001.00001.00001.00000.99910.00000.00360.00150.99920.99850.00550.0036Columns9through161.00000.00000.00191.00000.00000.00000.00000.99961.00001.00000.99011.00001.00001.00001.00000.00000.99770.99990.99960.99940.00460.00230.00141.0000Columns17through240.00200.99250.00200.00000.00201.00000.00021.00000.00410.02840.00410.02840.00411.00000.99831.00000.00360.99550.00361.00000.00360.99890.99990.9990Columns25through321.00000.99381.00000.00001.00000.99990.00001.00001.00000.01770.00000.00211.00000.00061.00001.00000.00000.99710.00001.00000.00000.00040.99990.0000Columns33through400.99541.00000.00000.00000.99510.00200.00000.99970.00651.00001.00000.00250.01780.00411.00000.00000.99860.99900.99991.00000.01010.00360.00131.0000Columns41through480.00001.00000.99830.00000.00201.00000.00000.98730.00201.00000.00000.00370.00411.00000.03280.06371.00000.00000.99991.00000.00360.99821.00000.9884Columns49through560.00000.00011.00001.00001.00000.00000.00041.00000.01640.99920.99821.00001.00001.00000.99650.99981.00000.99990.99480.99910.99890.00240.99980.9968Columns57through641.00001.00000.00000.00200.00200.00010.00010.00000.97631.00000.01340.00410.00410.99900.03950.00170.02020.99881.00000.00360.00360.99990.99991.0000Columns65through700.99930.00000.00000.99781.00001.00000.00000.00180.01100.00011.00000.99981.00001.00001.00000.99990.99870.0007每次结果因为初始化不同会不一样,可以选取一个性能比较好的网络保持起来savemyBpNetnetsaveTestDataInTestDataOut测试数据也保存起来(TestDataInTestDataOut为测试数据的输入向量和目标向量)以后调用时loadloadmyBpNetnetout=sim(net,TestDataIn)基本框架程序:(前面的样本数据自己根据实际情况设计)load('');p=CC1(:,[1,3:6])';T=[000;111;110;101;100;011;010;001];t=repmat(T,41,1)';pp=p;%%%%%%归一到01之间fori=1:5p(i,:)=(p(i,:)-min(p(i,:)))/(max(p(i,:))-min(p(i,:)));endAllSamNum=328;%总样本数TrainSamNum=258;%训练样本数TestSamNum=AllSamNum-TrainSamNum;%测试样本数PerPos=randperm(AllSamNum);TrainDataIn=p(:,1:TrainSamNum)TrainDataOut=t(:,1:TrainSamNum)TestDataIn=p(:,PerPos(:,TrainSamNum+1:TrainSamNum+TestSamNum))TestDataOut=t(:,PerPos(:,TrainSamNum+1:TrainSamNum+TestSamNum))MaxMin=[01;01;01;01;01];net=newff(MaxMin,[12,3],{'tansig','logsig'},'trainlm');net.trainParam.epochs=1000;%训练次数=0.0001;%训练结束的目标=0.1;%学习率=20;net=train(net,TrainDataIn,TrainDataOut);out=sim(net,TestDataIn)。

bp神经网络中合格与基本合格如何界定

你指的是分类吧。具体怎么分类,要看训练样本是怎么划分的。可能样本的输出是这样量化:合格1,基本合格0.5,不合格0.或者合格100,基本合格010,不合格001.神经网络可以用作分类、聚类、预测等。

神经网络需要有一定量的历史数据,通过历史数据的训练,网络可以学习到数据中隐含的知识。在你的问题中,首先要找到某些问题的一些特征,以及对应的评价数据,用这些数据来训练神经网络。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值