吴恩达机器学习非监督学习

吴恩达机器学习笔记(一),含作业及附加题答案链接 吴恩达机器学习笔记(一) 监督学习 非监督学习 代价函数cost function 梯度下降和线性回归gradient descent and linear regression 梯度下降 多变量梯度下降 特征标准化变量归一法feature normalization 关于alpha学习速率 正规方程normal 阅读详情

非监督学习

聚类 Clustering

无目标y,将数据归并到各个类的方式

k均值聚类算法 k-means

步骤:

第一次先将随机猜测簇质心

  1. 遍历所有样本,检查样本靠近哪个簇质心,就分配到哪个簇质心
  2. 查看簇质心的样本点并取平均值,将每个簇质心移动到平均值的位置,再重新进行两个步骤…当算法已经收敛时,再次操作簇质心位置不变

k-means代价函数(失真函数Distortion)

x_i为样本,c_i 为x_i对应的 簇质心的编号, u_i为簇质心的值,u_c_i为x_i对应的簇质心的值

初始化k-mean

选择k个聚类(k<m) ,随机选择k个样本,让初始聚类位置位于这k个样本的位置

选择k值的方法

选择k值应根据k-mean 的后续用途的表现来决定

比如选择T-shirt 的尺寸,可以让k=3 (S,M,L) ,也可以让k=(XS,S,M,L,XL)

异常检测

查看正常事件的无标签数据集,从而学习检测或提出警报

高斯分布(正态分布)

$\sigma^2$ 表示方差 ,$\mu$表示均值

对于X单个特征

异常检测算法

$\prod$表示累乘

该算法步骤:

  1. 选择n个特征(有可能出现异常的特征)

  2. 算得参数

  3. 给定新样本x,计算p(x)

     该公式每个特征都是独立的

    该公式是通用的,即使不独立也可用

    Σ 是协方差矩阵,对角线是方差,Cov(X_i,X_j)>0则正相关,Cov(X_i,X_j)<0负相关,Cov(X_i,X_j)==0不相关 ,不相关不一定独立,但是独立一定不相关

    假设每个特征是独立的,则Cov(X_i,X_j)=0

  4. 分析p(x)是否小于某个阈值, 从而判断异常

如何选择阈值$\epsilon$ :实际评估算法

通过调整$\epsilon$、添加或删除特征,看是否使算法表现更好

有已标记的数据集(y=0正常,y=1异常),将其分为3个集合,训练集无异常,交叉验证集和测试集含异常,其中如果有些异常数据被意外标记正常,该算法仍能工作

对训练集进行异常检测算法(训练集标签都为0,可视为无标签,仍是无监督学习),通过调整$\epsilon$、添加或删除特征等,看是否使交叉集上更可靠地检测出异常,最后将其应用到测试集中看其表现

在训练集拟合模型p(x)后,在交叉验证集或测试样本x上,预测

由于异常数量相对集合很小,属于偏斜数据,可以使用精准率,召回率来评估分数

异常检测vs监督算法

当拥有大量负例少量正例时,如何判断使用异常检测还是监督学习?

异常检测能找到与之前完全不同的新正例,监督学习是判断当前样例是否与已经见过的正例相似

选择特征

看x是否符合高斯分布,如果不符合,设法转化成高斯分布(如x→log(x+c))

当训练集转化特征时,交叉验证和测试集也要转化

流程:训练模型后后,在查看交叉验证集中未检测到的异常,并看是否能创造错新的特征提高异常检测(选择出现异常时可能取很大或很小值的特征)

吴恩达 深度神经网络,吴恩达神经网络课程 也就是说,学生个体经验与人类历史知识不是对立、矛盾的,而是相互关联的,教师要找到它们的关联处、契合处,通过引导学生主动“联想与结构”的活动,让学生的经验凸显意义,让外在于学生的知识与学生建立起生命联系,使经验与知识相互滋养,成为学生自觉发展的营养。在这个过程中,学生掌握学科的核心知识,理解学习的过程,把握学科的本质及思想方法,形成积极的内在学习动机、高级的社会性情感、积极的态度、正确的价值观,成为既具独立性、批判性、创造性又有合作精神、基础扎实的优秀的学习者,成为未来社会历史实践的主人”。 阅读详情

相关推荐

网安保研避坑指南:中科院信工所各研究室真实体验与导师选择建议

本文为中科院信工所网络安全保研生提供深度指南,详细解析了信工所六个研究室的研究方向、真实氛围与导师选择策略。文章特别强调,选择导师是决定研究生体验的关键,并提供了针对各研究室的避坑建议与实战调研方法,帮助学生做出明智选择。

weixin_29210727的博客 1589

[特殊字符] 吴恩达机器学习 - 非监督学习

非监督学习就是:在无标签中找结构、在混乱中找模式、在未知中重建逻辑。👉 下一篇我们将讲解“异常检测”或“聚类算法实战”,你想看哪一个?欢迎留言!

tang7mj的博客 933

Ubuntu下Ollama局域网共享大模型服务:5分钟搞定配置与防火墙设置

本文提供了一份在Ubuntu系统上快速配置Ollama实现局域网共享大模型服务的实战指南。通过修改服务配置使其监听所有网络接口,并设置UFW防火墙规则,用户可在5分钟内让同一Wi-Fi下的其他设备(如笔记本、手机)便捷调用主机上的AI模型能力,实现团队或多设备间的AI资源共享。

ik6789012的博客 825

【吴恩达·机器学习】第一章:机器学习绪论:监督学习和非监督学习

机器学习主要分为监督学习和非监督学习(还有强化学习)。监督学习中又可分为回归问题和分类问题。无监督学习分为聚类问题、异常检测、降维。随后,就单变量的线性回归问题进行的深入的讲解。从回归模型的构建开始(线性模型),到代价函数再到梯度下降算法,进行了生动的讲解。

Yaoyao2024的博客 2003

S32K3实战:手把手教你用eMIOS模块实现电机PWM控制(附代码)

本文详细解析了NXP S32K3系列MCU的eMIOS模块在电机PWM控制中的应用,从硬件设计到软件实现,再到调试与优化,提供了完整的实战指南。通过eMIOS模块的硬件级PWM生成能力,工程师可以实现高精度的电机控制,适用于汽车电子和工业控制领域。

weixin_42570484的博客 147

V-REP(Cooprliesim EDU)自学笔记 实现UR5机械臂末端按轨迹移动

V-REP(Cooprliesim EDU)自学笔记 实现UR5机械臂末端按轨迹移动

xu_white的博客 7583

吴恩达《Machine Learning》精炼笔记 6:关于机器学习的建议

作者 | Peter编辑 |AI有道系列文章:吴恩达《Machine Learning》精炼笔记 1:监督学习与非监督学习吴恩达《Machine Learning》精炼笔记 2:梯度下...

红色石头的专栏 703

ISP之LSC(Lens Shading Correction)

LSC - Lens Shading Correction即镜头暗影校正。

IQ_WXY的博客 5098

吴恩达机器学习笔记—监督学习和非监督学习(Machine Learning)

“吴恩达机器学习”网易云课堂的视频课程的学习笔记—希望能跟有兴趣的同学一起学习。 这是课堂链接:https://study.163.com/course/courseMain.htm?courseId=1004570029 (1)监督学习(Supervised learning) 给算法...

cheqhv0854的博客 288

IEC 104电力规约详细解读(五) - 遥控

主站下发遥控选择命令,子站进行遥控选择返校,若成功则回答遥控选择成功报文,若失败则回答失败报文。主站下发取消遥控命令或者遥控执行命令行。子站皆以报文的镜像确认。遥控命令用来实现对一个可操作设备状态的改变。在配电自动化中,包括单点命令和双点命令。通常,单点命令用于控制单点信息对象;双点命令用于控制双点信息对象。

张二狗的博客 7353

模型可解释性分析:基于SHAP的深度探索

SHAP模型可解释性分析摘要 本文系统性地介绍了SHAP(SHapley Additive exPlanations)方法在机器学习模型可解释性分析中的应用。SHAP基于博弈论的Shapley值理论,为特征重要性评估提供了统一框架。文章详细阐述了四种核心算法:Kernel SHAP(模型无关方法)、Tree SHAP(针对树模型的高效算法)、Deep SHAP(适用于深度学习)和Linear SHAP(线性模型专用)。通过Python实现展示了从数据准备到SHAP分析的全流程,包括摘要图、依赖图等可视化技术

huanghm88的专栏 611

吴恩达机器学习笔记之非监督学习

Unsupervised learning 监督学习的样本数据是有标签的,而非监督学习的数据样本是没有标签的。事先对这些数据的特征的特点不知道,需要用算法来帮我们进行分析,包括聚类分析,让算法自己去寻找数据中的结构, 聚类——只是非监督学习的一种。 鸡尾酒宴问题——非监督学习的另一种,让算法从一段嘈杂的音频中分离出不同的声音,实现这个功能只需要一行代码,涉及到奇异值分解。 [W,s,v]...

blue_coffeei的博客 267

YOLOv11改进策略【模型轻量化】| 使用 MoblieOne 模块,引入结构重参数化,提高模型检测效率

本文记录的是基于MobileOne的YOLOv11骨干网络改进方法研究。MobileOne的基础模块通过重参数化,。在将其替换YOLOv11的骨干网络后,实现模型轻量化。

Limiiiing的博客 1425

吴恩达机器学习笔记-非监督学习

聚类 之前的课程中我们学习的都是监督学习相关的算法,现在来开始看非监督学习。非监督学习相对于监督非学习来看,其使用的是未标记的训练集而监督学习的是标记的训练集。换句话说,我们不知道向量y的预期结果,仅仅只是拥有一个可以找到结构的特征的集合。 其中一种可能的结构是,所有的数据可以大致地划分成两组,这种划分的算法称为聚类算法。 这是我们第一种 无监督学习算法。在很多场景下我们会使用聚类的方式来解决非监督学习问题,比如市场分割,社会网络分析等等。 K-means K-Means算法是最流行和广泛使用的自动将

miffy2017may的博客 234

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

2022吴恩达机器学习课程——第三课(非监督学习)

2022吴恩达机器学习课程——第三课(非监督学习)

lyz1_2_3的博客 1132

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

吴恩达团队2022机器学习课程,来啦

吴恩达佬团队在Coursera开设新的机器学习课程啦!!!

啥都生的博客 3370

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

机器学习(一):监督学习和非监督学习定义

1、聚类算法clustering:给定一组数据,自动把这些数据分组,把相似数据分为一组。3、降维Dimensionality reduction:把大数据集压缩成小数据集,并尽可能少的丢失信息。2、分类算法Classification:从有限个可能性的输出中,预测一个类别(通过划定分界线)1、回归算法Regression:从无限个可能性的输出中,预测一个数值(通过拟合曲线)概念:给定一组输入,没有预期输出,算法需要找到数据的特征、结构。概念:给定输入X到预期Y的映射,预测输出值。

weixin_45733884的博客 699

吴恩达老师机器学习笔记(一:基础部分)

*第一章 课时1: 类型 应用场景 数据挖掘 用户点击次数统计,用户画像 手写体数字识别 信封邮编识别 个性化推荐 销售产品,音视频推荐 课时2: 机器学习的定义 案例 成果 跳棋 计算机下跳棋不断战胜新的对手 邮件过滤 智能分类邮件是否是垃圾邮件 监督学习 我们教会计算机做某件事情 无监督学习 我们让计算机自己学习 课时3: ...

专注于AI领域前沿技术学习与分享:目标检测、图像修复、超分重建、AI工程化 877

吴恩达斯坦福大学机器学习课程——Lecture 1:课程简介

磨蹭了很久,终于决定动手将两年前花了半年时间整理的吴恩达斯坦福大学机器学习课程的笔记发布出来。吴恩达教授在斯坦福大学的机器学习课程可以说是大多数机器学习爱好者或研究人员的入门教程。虽然只有短短的二十节课,但是整个课程涵盖了监督学习、非监督学习、机器学习理论、强化学习等机器学习的主要内容,是机器学习爱好者和研究人员的入门的不二选择。 这套笔记是本人2017年在澳...

longqiang850407的博客 500

吴恩达机器学习笔记系列(三)——非监督学习

1.监督学习 : 在监督学习中,给定一个数据集,并且知道结果是应该什么样子的,输和输出之间存在联系。 监督学习包括: ​ regression:把输入映射到某个连续函数(continuous function) ​ classification:把输入的变量映射到不同类别 2.无监督学习: 几乎不知道想要求解的问题的结果应该是什么样子的。我们...

sinat_37998852的博客 561

【吴恩达机器学习笔记】Part3-Week1(上) 非监督学习

聚类算法,K-means

hotpants的博客 237

【人工智能】<吴恩达-机器学习>监督学习&非监督学习

目录 一、机器学习概述 - What is machine learning ?: 二、机器学习分类 - Machine learning algorithms: 1.监督学习 - Supervised learning: 2.无监督学习 - Unsupervised learning: Cocktail party problem algorithm: 一、机器学习概述 - What is machine learning ?: Machine learning: Field of stu.

范同学的学习历程 2850

Note on Machine Learning by Andrew Ng (吴恩达机器学习笔记 英文版)

Machine Learning By Andrew Ng (吴恩达机器学习笔记 英文版) 这是我记录的吴恩达机器学习的课堂笔记。但是我记录的是英文版,所以如果有什么地方记录不准确,希望大家指出。另外,我也见到了中文版的笔记,但是只有第一章。学习了中文版后,我打算在学习ML之余,结合我自己的理解,不断更新这个笔记。 Machine Learning 101 Supervised Learnin...

HarryChen的博客 1228

吴恩达机器学习学习笔记(6)

K-means 聚类算法基本原理:通过预设 K 个初始聚类中心,计算每个样本与中心的距离,将样本分配到最近的聚类,再重新计算聚类中心,反复迭代直至中心稳定。关键步骤:确定 K 值→初始化中心→分配样本→更新中心→收敛判断。应用示例:电商用户分群(根据购买频率、消费金额等特征,将用户划分为 K 个群体,针对性制定营销策略)。降维算法主成分分析(PCA):通过线性变换将高维数据映射到低维空间,保留数据中方差最大的方向(主成分),在减少维度的同时保留关键信息。应用场景。

一刀7段的博客 615

【学习笔记】吴恩达机器学习 | 第一章 | 机器学习绪论

【学习笔记】吴恩达机器学习 | 第一章 | 机器学习绪论

BenjaminChen的博客 5721
上一篇: 吴恩达机器学习决策树
下一篇: bootsect.s和setup.s
Lincooo
博客等级 码龄4年 61粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值