【周志华机器学习】七、贝叶斯分类器

参考资料

  1. Machine-learning-learning-notes
  2. LeeML-Notes
  3. ML-NLP

本博客为作者根据周志华的西瓜书和参考资料1、2、3所做的笔记,主要用于学习,非技术类博客,因此存在大量复制粘贴,请见谅。
如果本篇博客有后记部分,则该部分表示的是在书本原有的基础知识上,进行的知识点的扩充。

1. 基本概念

贝叶斯决策论(Bayesian decision theory)是概率框架下实施决策的基本方法,对分类任务来说,在所有相关概率都已知的理想情形下,贝叶斯决策论考虑如何基于这些概率和误判损失来选择最优的类别标记。

代码演示见于github仓库

1.1 贝叶斯公式

1.png

1.2 贝叶斯决策论

假设有N种可能的类别标记,即 y = [ c 1 , c 2 , . . . , c N ) y=[c_1,c_2,...,c_N) y=[c1,c2,...,cN), λ i j \lambda_{ij} λij是将一个真实标记为 c j c_j cj的样本误分类为 c i c_i ci所产生的损失,基于后验概率 P ( c i ∣ x ) P(c_i|x) P(cix)可获得将样本 x x x分类为 c i c_i ci所产生的期望损失(expected loss),即在样本 x x x上的“条件风险”(conditional risk)

在这里插入图片描述

决策论中将“期望损失”称为“风险” (risk).

我们的任务就是寻找一个判定准则最小化所有样本的条件风险总和,因此就有了贝叶斯判定准则(Bayes decision rule):为最小化总体风险,只需在每个样本上选择那个使得条件风险最小的类标。
3.png

此时, h ∗ h^* h称为贝叶斯最优分类器(Bayes optimal classifier),与之对应的总体风险 R ( h ∗ ) R(h^*) R(h)称为贝叶斯风险(Bayes risk). 1 − R ( h ∗ ) 1-R(h^*) 1R(h)反映了分类器所能达到的最好性能,即通过机器学习所能产生的模型精度的理论上限.

具体来说,若目标是最小化分类错误率,则误判损失可写为0-1损失:
在这里插入图片描述

4.png

即对于每个样本x,选择其后验概率 P ( c ∣ x ) P(c | x) P(cx)最大所对应的类标,能使得总体风险函数最小,从而将原问题转化为估计后验概率 P ( c ∣ x ) P(c | x) P(cx)。一般这里有两种策略来对后验概率进行估计:

1.2.1 判别式模型 and 生成式模型

  • 判别式模型:直接对 P ( c ∣ x ) P(c | x) P(cx)进行建模求解。例我们前面所介绍的决策树、神经网络、SVM都是属于判别式模型。
  • 生成式模型:通过先对联合分布 P ( c ∣ x ) P(c | x) P(cx)建模,从而进一步求解 P ( c ∣ x ) P(c | x) P(cx)
  • 判别模型(discriminative model)通过求解条件概率分布或者直接计算y的值来预测y。

    线性回归(Linear Regression),逻辑回归(Logistic Regression),支持向量机(SVM), 传统神经网络(Traditional Neural Networks),线性判别分析(Linear Discriminative Analysis),条件随机场(Conditional Random Field)

  • 生成模型(generative model)通过对观测值和标注数据计算联合概率分布来达到判定估算y的目的。

    朴素贝叶斯(Naive Bayes), 隐马尔科夫模型(HMM),贝叶斯网络(Bayesian Networks)和隐含狄利克雷分布(Latent Dirichlet Allocation)、混合高斯模型

贝叶斯分类器就属于生成式模型,基于贝叶斯公式对后验概率 P ( c ∣ x ) P(c | x) Pcx 进行一项变换:
5.png

对于给定的样本x, P ( x ) P(x) P(x)与类标无关, P ( c ) P(c) P(c)称为类先验概率, P ( x ∣ c ) P(x | c ) P(xc)称为类条件概率。这时估计后验概率 P ( c ∣ x ) P(c | x) P(cx)就变成为估计类先验概率和类条件概率的问题。

对于先验概率和后验概率,这里普及一下它们的基本概念。

  • 先验概率: 根据以往经验和分析得到的概率。也可以认为是无条件概率。
    其中,先验信息一般来源于经验跟历史资料。比如林丹跟某选手对决,解说一般会根据林丹历次比赛的成绩对此次比赛的胜负做个大致的判断。再比如,某工厂每天都要对产品进行质检,以评估产品的不合格率θ,经过一段时间后便会积累大量的历史资料,这些历史资料便是先验知识,有了这些先验知识,便在决定对一个产品是否需要每天质检时便有了依据,如果以往的历史资料显示,某产品的不合格率只有0.01%,便可视为信得过产品或免检产品,只每月抽检一两次,从而省去大量的人力物力。
  • 后验概率:后验概率是基于新的信息,修正原来的先验概率后所获得的更接近实际情况的概率估计。直观意义上后验概率就是条件概率

对于类先验概率 P ( c ) P(c) P(c) P ( c ) P(c) P(c)就是样本空间中各类样本所占的比例,根据大数定理(当样本足够多时,频率趋于稳定等于其概率),这样当训练样本充足时, P ( c ) P(c) P(c)可以使用各类出现的频率来代替。因此只剩下类条件概率 P ( x ∣ c ) P(x | c ) P(xc),它表达的意思是在类别c中出现x的概率,它涉及到属性的联合概率问题,若只有一个离散属性还好,当属性多时采用频率估计起来就十分困难,因此这里一般采用极大似然法进行估计。

1.3 极大似然法

极大似然估计(Maximum Likelihood Estimation,简称MLE),是一种根据数据采样来估计概率分布的经典方法。

常用的策略是先假定总体具有某种确定的概率分布,再基于训练样本对概率分布的参数进行估计。

运用到类条件概率 P ( x ∣ c ) P(x | c ) P(xc)中,假设 P ( x ∣ c ) P(x | c ) P(xc)服从一个参数为θ的分布,问题就变为根据已知的训练样本来估计θ。

极大似然法的核心思想就是:估计出的参数使得已知样本出现的概率最大,即使得训练数据的似然最大。

7.png

所以,贝叶斯分类器的训练过程就是参数估计。总结最大似然法估计参数的过程,一般分为以下四个步骤:

  1. 写出似然函数;
  2. 对似然函数取对数,并整理;
  3. 求导数,令偏导数为0,得到似然方程组;
  4. 解似然方程组,得到所有参数即为所求。

例如:假设样本属性都是连续值, P ( x ∣ c ) P(x | c ) P(xc)服从一个多维高斯分布,则通过MLE计算出的参数刚好分别为:

8.png

上述结果看起来十分合乎实际,但是采用最大似然法估计参数的效果很大程度上依赖于作出的假设是否合理,是否符合潜在的真实数据分布。

2. 朴素贝叶斯分类器

原始的贝叶斯分类器最大的问题在于联合概率密度函数的估计,首先需要根据经验来假设联合概率分布,其次当属性很多时,训练样本往往覆盖不够,参数的估计会出现很大的偏差。

为了避免这个问题,朴素贝叶斯分类器(naive Bayes classifier)采用了“属性条件独立性假设”,即样本数据的所有属性之间相互独立。这样类条件概率 P ( x ∣ c ) P(x | c ) P(xc)可以改写为:
9.png
在这里插入图片描述

这样,为每个样本估计类条件概率变成为每个样本的每个属性估计类条件概率。

10.png

相比原始贝叶斯分类器,朴素贝叶斯分类器基于单个的属性计算类条件概率更加容易操作,需要注意的是:若某个属性值在训练集中和某个类别没有一起出现过,这样会抹掉其它的属性信息,因为该样本的类条件概率被计算为0。因此在估计概率值时,常常用进行平滑(smoothing)处理拉普拉斯修正(Laplacian correction)就是其中的一种经典方法,具体计算方法如下:

11.png

当训练集越大时,拉普拉斯修正引入的影响越来越小。对于贝叶斯分类器,模型的训练就是参数估计,因此可以事先将所有的概率储存好,当有新样本需要判定时,直接查表计算即可。

朴素贝叶斯朴素在哪里呢? —— 两个假设

  • 一个特征出现的概率与其他特征(条件)独立;
  • 每个特征同等重要。

3. 半朴素贝叶斯分类器

朴素贝叶斯分类器采用了属性条件独立性假设,但在现实任务中这个假设往往很难成立,于是,人们尝试对属性条件独立性假设进行一定程度的放松,由此产生了一类称为“半朴素贝叶斯分类器”(semi-naive Bayes classifiers)的学习方法.

半朴素贝叶斯分类器的基本想法是适当考虑一部分属性间的相互依赖信息,从而既不需进行完全联合概率计算,又不至于彻底忽略了比较强的属性依赖关系.

独依赖估计” (One-Dependent Estimator,简称 ODE)是半朴素贝叶斯分类器最常用的一种策略,顾名思义,所谓“独依赖”就是假设每个属性在类别之外最多仅依赖于一个其他属性,即
在这里插入图片描述

4. EM算法

EM(Expectation-Maximization)算法是一种常用的估计参数隐变量的利器,也称为“期望最大算法”,是数据挖掘的十大经典算法之一。EM算法主要应用于训练集样本不完整即存在隐变量时的情形(例如某个属性值未知),通过其独特的“两步走”策略能较好地估计出隐变量的值。

相关代码演示见于GitHub仓库

4.1 EM算法思想

EM是一种迭代式的方法,它的基本思想就是:若样本服从的分布参数θ已知,则可以根据已观测到的训练样本推断出隐变量Z的期望值(E步),若Z的值已知则运用最大似然法估计出新的θ值(M步)。重复这个过程直到Z和θ值不再发生变化。

简单来讲:假设我们想估计A和B这两个参数,在开始状态下二者都是未知的,但如果知道了A的信息就可以得到B的信息,反过来知道了B也就得到了A。可以考虑首先赋予A某种初值,以此得到B的估计值,然后从B的当前值出发,重新估计A的取值,这个过程一直持续到收敛为止。

1.png

现在再来回想聚类的代表算法K-Means(后面的章节会提到):首先随机选择类中心=>将样本点划分到类簇中=>重新计算类中心=>不断迭代直至收敛,不难发现这个过程和EM迭代的方法极其相似,事实上,若将样本的类别看作为“隐变量”(latent variable)Z,类中心看作样本的分布参数θ,K-Means就是通过EM算法来进行迭代的,与我们这里不同的是,K-Means的目标是最小化样本点到其对应类中心的距离和,上述为极大化似然函数

4.2 EM算法数学推导

当样本属性值都已知时,我们很容易通过极大化对数似然,接着对每个参数求偏导计算出参数的值。但当存在隐变量时,就无法直接求解,此时我们通常最大化已观察数据的对数“边际似然”(marginal likelihood)。

在这里插入图片描述

这时候,通过边缘似然将隐变量Z引入进来,对于参数估计,现在与最大似然不同的只是似然函数式中多了一个未知的变量Z,也就是说我们的目标是找到适合的θ和Z让L(θ)最大,这样我们也可以分别对未知的θ和Z求偏导,再令其等于0。

然而观察上式可以发现,和的对数(ln(x1+x2+x3))求导十分复杂,那能否通过变换上式得到一种求导简单的新表达式呢?这时候 Jensen不等式就派上用场了,先回顾一下高等数学凸函数的内容:

Jensen’s inequality:过一个凸函数上任意两点所作割线一定在这两点间的函数图象的上方。理解起来也十分简单,对于凸函数 f ( x ) ′ ′ f(x)'' f(x)>0,即曲线的变化率是越来越大单调递增的,所以函数越到后面增长越厉害,这样在一个区间下,函数的均值就会大一些了。

3.png

因为ln(*)函数为凹函数,故可以将上式“和的对数”变为“对数的和”,这样就很容易求导了。

4.png

接着求解 Q i Q_i Qi和θ:首先固定θ(初始值),通过求解 Q i Q_i Qi使得 J ( θ , Q ) J(θ,Q) J(θQ)在θ处与L(θ)相等,即求出 L ( θ ) L(θ) L(θ)的下界;然后再固定 Q i Q_i Qi,调整θ,最大化下界 J ( θ , Q ) J(θ,Q) J(θQ)。不断重复两个步骤直到稳定。通过jensen不等式的性质, Q i Q_i Qi的计算公式实际上就是后验概率:

5.png

通过数学公式的推导,简单来理解这一过程:固定θ计算Q的过程就是在建立 L ( θ ) L(θ) L(θ)的下界,即通过jenson不等式得到的下界(E步);固定Q计算θ则是使得下界极大化(M步),从而不断推高边缘似然 L ( θ ) L(θ) L(θ)。从而循序渐进地计算出 L ( θ ) L(θ) L(θ)取得极大值时隐变量Z的估计值。

EM算法也可以看作一种“坐标下降法”,首先固定一个值,对另外一个值求极值,不断重复直到收敛。

这时候也许大家就有疑问,问什么不直接这两个家伙求偏导用梯度下降呢?这时候就是坐标下降的优势,有些特殊的函数无法直接求导,这时如果先固定其中的一个变量,再对另一个变量求极值,则变得可行。

6.png

4.3 EM算法流程

两枚硬币A和B,假定随机抛掷后正面朝上概率分别为PA,PB。为了估计这两个硬币朝上的概率,咱们轮流抛硬币A和B,每一轮都连续抛5次,总共5轮:

硬币结果统计
A正正反正反3正-2反
B反反正正反2正-3反
A正反反反反1正-4反
B正反反正正3正-2反
A反正正反反2正-3反

硬币A被抛了15次,在第一轮、第三轮、第五轮分别出现了3次正、1次正、2次正,所以很容易估计出PA,类似的,PB也很容易计算出来(真实值),如下:

PA = (3+1+2)/ 15 = 0.4
PB= (2+3)/10 = 0.5

问题来了,如果我们不知道抛的硬币是A还是B呢(即硬币种类是隐变量),然后再轮流抛五轮,得到如下结果:

硬币结果统计
Unknown正正反正反3正-2反
Unknown反反正正反2正-3反
Unknown正反反反反1正-4反
Unknown正反反正正3正-2反
Unknown反正正反反2正-3反

OK,问题变得有意思了。现在我们的目标没变,还是估计PA和PB,需要怎么做呢?

显然,此时我们多了一个硬币种类的隐变量,设为z,可以把它认为是一个5维的向量(z1,z2,z3,z4,z5),代表每次投掷时所使用的硬币,比如z1,就代表第一轮投掷时使用的硬币是A还是B。

  • 但是,这个变量z不知道,就无法去估计PA和PB,所以,我们必须先估计出z,然后才能进一步估计PA和PB。
  • 可要估计z,我们又得知道PA和PB,这样我们才能用极大似然概率法则去估计z,这不是鸡生蛋和蛋生鸡的问题吗,如何破?

答案就是先随机初始化一个PA和PB,用它来估计z,然后基于z,还是按照最大似然概率法则去估计新的PA和PB,然后依次循环,如果新估计出来的PA和PB和我们真实值差别很大,直到PA和PB收敛到真实值为止。

我们不妨这样,先随便给PA和PB赋一个值,比如:
硬币A正面朝上的概率PA = 0.2
硬币B正面朝上的概率PB = 0.7

然后,我们看看第一轮抛掷最可能是哪个硬币。
如果是硬币A,得出3正2反的概率为 0.2 ∗ 0.2 ∗ 0.2 ∗ 0.8 ∗ 0.8 = 0.00512 0.2*0.2*0.2*0.8*0.8 = 0.00512 0.20.20.20.80.8=0.00512
如果是硬币B,得出3正2反的概率为 0.7 ∗ 0.7 ∗ 0.7 ∗ 0.3 ∗ 0.3 = 0.03087 0.7*0.7*0.7*0.3*0.3=0.03087 0.70.70.70.30.3=0.03087
然后依次求出其他4轮中的相应概率。做成表格如下:

轮数若是硬币A若是硬币B
10.00512,即0.2 0.2 0.2 0.8 0.8,3正-2反0.03087,3正-2反
20.02048,即0.2 0.2 0.8 0.8 0.8,2正-3反0.01323,2正-3反
30.08192,即0.2 0.8 0.8 0.8 0.8,1正-4反0.00567,1正-4反
40.00512,即0.2 0.2 0.2 0.8 0.8,3正-2反0.03087,3正-2反
50.02048,即0.2 0.2 0.8 0.8 0.8,2正-3反0.01323,2正-3反

按照最大似然法则:
第1轮中最有可能的是硬币B
第2轮中最有可能的是硬币A
第3轮中最有可能的是硬币A
第4轮中最有可能的是硬币B
第5轮中最有可能的是硬币A

我们就把概率更大,即更可能是A的,即第2轮、第3轮、第5轮出现正的次数2、1、2相加,除以A被抛的总次数15(A抛了三轮,每轮5次),作为z的估计值,B的计算方法类似。然后我们便可以按照最大似然概率法则来估计新的PA和PB。

PA = (2+1+2)/15 = 0.33
PB =(3+3)/10 = 0.6

就这样,不断迭代 不断接近真实值,这就是EM算法的奇妙之处。

可以期待,我们继续按照上面的思路,用估计出的PA和PB再来估计z,再用z来估计新的PA和PB,反复迭代下去,就可以最终得到PA = 0.4,PB=0.5,此时无论怎样迭代,PA和PB的值都会保持0.4和0.5不变,于是乎,我们就找到了PA和PB的最大似然估计。

在这里插入图片描述

5. 后记

5.1 贝叶斯网络

贝叶斯网络(Bayesian network),又称信念网络(Belief Network),或有向无环图模型(directed acyclic graphical model),是一种概率图模型。它是一种模拟人类推理过程中因果关系的不确定性处理模型,其网络拓朴结构是一个有向无环图(DAG)。

在这里插入图片描述

贝叶斯网络的有向无环图中的节点表示随机变量 { X 1 , X 2 , . . . , X n } \{X_1,X_2,...,X_n\} {X1,X2,...,Xn}

它们可以是可观察到的变量,或隐变量、未知参数等。认为有因果关系(或非条件独立)的变量或命题则用箭头来连接。若两个节点间以一个单箭头连接在一起,表示其中一个节点是“因(parents)”,另一个是“果(children)”,两节点就会产生一个条件概率值

例如,假设节点E直接影响到节点H,即E→H,则用从E指向H的箭头建立结点E到结点H的有向弧(E,H),权值(即连接强度)用条件概率P(H|E)来表示,如下图所示:

简言之,把某个研究系统中涉及的随机变量,根据是否条件独立绘制在一个有向图中,就形成了贝叶斯网络。其主要用来描述随机变量之间的条件依赖,用圈表示随机变量(random variables),用箭头表示条件依赖(conditional dependencies)。

此外,对于任意的随机变量,其联合概率可由各自的局部条件概率分布相乘而得出:

P ( x 1 , . . . , x k ) = P ( x k ∣ x 1 , . . . , x k − 1 ) . . . P ( x 2 ∣ x 1 ) P ( x 1 ) P(x_1,...,x_k)=P(x_k|x_1,...,x_{k-1})...P(x_2|x_1)P(x_1) P(x1,...,xk)=P(xkx1,...,xk1)...P(x2x1)P(x1)

1. 结构形式

1. head-to-head


依上图,所以有: P ( a , b , c ) = P ( a ) ∗ P ( b ) ∗ P ( c ∣ a , b ) P(a,b,c) = P(a)*P(b)*P(c|a,b) P(a,b,c)=P(a)P(b)P(ca,b)成立,即在c未知的条件下,a、b被阻断(blocked),是独立的,称之为head-to-head条件独立。

2. tail-to-tail

考虑c未知,跟c已知这两种情况:

  1. 在c未知的时候,有: P ( a , b , c ) = P ( c ) ∗ P ( a ∣ c ) ∗ P ( b ∣ c ) P(a,b,c)=P(c)*P(a|c)*P(b|c) P(a,b,c)=P(c)P(ac)P(bc),此时,没法得出 P ( a , b ) = P ( a ) P ( b ) P(a,b) = P(a)P(b) P(a,b)=P(a)P(b),即c未知时,a、b不独立。
  2. 在c已知的时候,有: P ( a , b ∣ c ) = P ( a , b , c ) / P ( c ) P(a,b|c)=P(a,b,c)/P(c) P(a,bc)=P(a,b,c)/P(c),然后将 P ( a , b , c ) = P ( c ) ∗ P ( a ∣ c ) ∗ P ( b ∣ c ) P(a,b,c)=P(c)*P(a|c)*P(b|c) P(a,b,c)=P(c)P(ac)P(bc)带入式子中,得到: P ( a , b ∣ c ) = P ( a , b , c ) / P ( c ) = P ( c ) ∗ P ( a ∣ c ) ∗ P ( b ∣ c ) / P ( c ) = P ( a ∣ c ) ∗ P ( b ∣ c ) P(a,b|c)=P(a,b,c)/P(c) = P(c)*P(a|c)*P(b|c) / P(c) = P(a|c)*P(b|c) P(a,bc)=P(a,b,c)/P(c)=P(c)P(ac)P(bc)/P(c)=P(ac)P(bc),即c已知时,a、b独立。
3. head-to-tail


还是分c未知跟c已知这两种情况:

  1. c未知时,有: P ( a , b , c ) = P ( a ) ∗ P ( c ∣ a ) ∗ P ( b ∣ c ) P(a,b,c)=P(a)*P(c|a)*P(b|c) P(a,b,c)=P(a)P(ca)P(bc),但无法推出P(a,b) = P(a)P(b),即c未知时,a、b不独立。

  2. c已知时,有: P ( a , b ∣ c ) = P ( a , b , c ) / P ( c ) P(a,b|c)=P(a,b,c)/P(c) P(a,bc)=P(a,b,c)/P(c),且根据 P ( a , c ) = P ( a ) ∗ P ( c ∣ a ) = P ( c ) ∗ P ( a ∣ c ) P(a,c) = P(a)*P(c|a) = P(c)*P(a|c) P(a,c)=P(a)P(ca)=P(c)P(ac),可化简得到:

所以,在c给定的条件下,a,b被阻断(blocked),是独立的,称之为head-to-tail条件独立。

这个head-to-tail其实就是一个链式网络,如下图所示:

在xi给定的条件下,xi+1的分布和x1,x2…xi-1条件独立。意味着:xi+1的分布状态只和xi有关,和其他变量条件独立。通俗点说,当前状态只跟上一状态有关,跟上上或上上之前的状态无关。这种顺次演变的随机过程,就叫做马尔科夫链(Markov chain)。

2. 因子图

将一个具有多变量的全局函数因子分解,得到几个局部函数的乘积,以此为基础得到的一个双向图叫做因子图(Factor Graph)。

通俗来讲,所谓因子图就是对函数进行因子分解得到的一种概率图。一般内含两种节点:变量节点和函数节点。我们知道,一个全局函数通过因式分解能够分解为多个局部函数的乘积,这些局部函数和对应的变量关系就体现在因子图上。

举个例子,现在有一个全局函数,其因式分解方程为:
g ( x 1 , x 2 , x 3 , x 4 , x 5 ) = f A ( x 1 ) f B ( x 2 ) f C ( x 1 , x 2 , x 3 ) f D ( x 3 , x 4 ) f E ( x 3 , x 5 ) g(x_1,x_2,x_3,x_4,x_5)=f_A(x_1)f_B(x_2)f_C(x1,x2,x3)f_D(x_3,x_4)f_E(x_3,x_5) g(x1,x2,x3,x4,x5)=fA(x1)fB(x2)fC(x1,x2,x3)fD(x3,x4)fE(x3,x5)

其中 f A , f B , f C , f D , f E f_A,f_B,f_C,f_D,f_E fA,fB,fC,fD,fE为各函数,表示变量之间的关系,可以是条件概率也可以是其他关系。其对应的因子图为:

在概率图中,求某个变量的边缘分布是常见的问题。这问题有很多求解方法,其中之一就是把贝叶斯网络或马尔科夫随机场转换成因子图,然后用sum-product算法求解。换言之,基于因子图可以用sum-product 算法高效的求各个变量的边缘分布。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CHH3213

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值