京公网安备 11010802034615号
经营许可证编号:京B2-20210330
前面介绍了基于训练集训练SVM的方法。通过训练,算法能找到使间隔区间最大化的最优平面来分割训练数据集,得到SVM模型能够被用来预测新到样例的类别。
准备
使用之前构建的churn构建的model.
操作
利用已构建的SVM模型和测试数据集的属性预测它的模型
svm.pred = predict(model,testset[,!names(testset) %in% c("churn")])
svm.table = table(svm.pred,testset$churn)
svm.table
svm.pred yes no
yes 70 12
no 71 865
调用classAgreement计算分类一致性
classAgreement(svm.table)
$diag
[1] 0.9184676
$kappa
[1] 0.5855903
$rand
[1] 0.850083
$crand
[1] 0.5260472
调用confusionMatrix基于分类表评测预测性能
library(lattice)
library(ggplot2)
library(caret)
confusionMatrix(svm.table)
Confusion Matrix and Statistics
svm.pred yes no
yes 70 12
no 71 865
Accuracy : 0.9185
95% CI : (0.8999, 0.9345)
No Information Rate : 0.8615
P-Value [Acc > NIR] : 1.251e-08
Kappa : 0.5856
Mcnemar's Test P-Value : 1.936e-10
Sensitivity : 0.49645
Specificity : 0.98632
Pos Pred Value : 0.85366
Neg Pred Value : 0.92415
Prevalence : 0.13851
Detection Rate : 0.06876
Detection Prevalence : 0.08055
Balanced Accuracy : 0.74139
'Positive' Class : yes
说明
本节首先调用predict函数获得测试数据集的预测模型,然后用table函数产生测试数据集的分类表,接下来的性能评测过程与前述章节其他方法其他分类方法的评测类似。
引入了一个新的函数classAgreement用来计算一个二维列联表行列之间多种一致性关系数。
diag系数为分类表主对角性上数据点的百分比,kappa系数是对diag系数随机一致性的修正,rand代表聚类评价指标(rand index),主要用来横量两个聚簇之间的相似性,crand系数是出现元素随机分类情况对Rand index 修正结果。
SVM回归分析
还可以使用SVM预测连续变量,也就是使用SVM实现回归分析。在接下来的样例中,我们使用名为eps-regression模型说明如何使用SVM执行回归分析。
使用Quartet数据集来训练一个支持向量机:
library(car)
data(Quartet)
model.regression = svm(Quartet$y1~Quartet$x,type = "eps-regression")
使用predict函数得到预测结果
predict.y = predict(model.regression,Quartet$x)
predict.y
调用plot绘图函数,预测值用正方形,训练数据用圆形:
plot(Quartet$x,Quartet$y1,pch = 19)
points(Quartet$x,predict.y,pch = 15,col = "red")
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
一、问题:为什么 ID 会"断号" 很多刚接触 MySQL 的同学都会有一个困惑:表里的主键 ID 是自增的,删了中间几行数据之后,ID 变 ...
2026-10-22一、问题场景:为什么会重复 JOIN 同一个子查询 在写复杂 SQL 时,经常遇到这种需求:同一张表或同一个聚合子查询,要和主表关联 ...
2026-10-22人力资源专员是HR体系的执行入口。招聘信息发布、简历初筛、面试安排、考勤汇总、入离职手续、劳动合同与档案管理,大多由这个岗 ...
2026-10-22人力资源经理问“必学技巧”,真正要解决的不是知识清单不够长,而是时间有限、业务催得紧,学完却用不上。更有效的路径是:先用 ...
2026-10-22内容营销岗位的核心任务,不是“把文案写得更漂亮”,而是围绕目标受众,用持续的内容供给影响认知、推动转化并沉淀复购。它至少 ...
2026-10-22理财经理培训课程很多,难的是判断“先学什么、后学什么、学完能做什么”。与其按课程名称罗列,不如先看岗位任务:客户分层与维 ...
2026-10-22理财经理的知识结构,可以先用一句话概括:合规与产品知识决定“不出错”,客户经营与资产配置决定“够不够专业”,市场研判与数 ...
2026-10-22经济学背景做数据分析,优势不在工具,而在问题意识:供需如何相互作用、成本与收益如何权衡、变量之间是相关还是因果。真正的缺 ...
2026-10-22需要,但要把“需要”理解准确。经济学本身就在处理数据:GDP、物价、就业、企业营收、问卷调研,都是经济分析的原料。真正的区 ...
2026-10-22经济学分析能力不是单一技能,它至少由三层构成:把现实问题转成可检验假设的理论框架能力、用数据与统计方法验证假设的工具能力 ...
2026-10-22金融分析师的知识提升,先补的不是更多模型,而是让结论可复核的底层能力。按任务顺序,大致是四层:财务与业务理解、指标口径管 ...
2026-10-22金融分析师的“通用技能”,指换到不同机构、不同行业组仍用得上的底层能力,而非某家公司内部系统的操作经验。按任务拆,日常要 ...
2026-10-22先给结论:数据分析证书不是金融分析师的准入条件,招聘方也不会因为一张证书就直接判断你能做分析。要不要考,取决于你当前任务 ...
2026-10-22金融分析师的核心技能,不是“会看K线”或“会讲宏观”,而是能把一家公司、一个行业或一类资产,转化为可核查的数据判断与书面 ...
2026-10-22产品经理的知识提升,不是把需求文档、原型、SQL、数据分析、项目管理都学一遍,而是先对准目标岗位的真实任务,找出自己最缺的 ...
2026-10-22产品专员提升工作知识,最有效的方式不是先囤课程,而是围绕日常交付的四件事来补:需求调研与优先级判断、原型与PRD表达、竞品 ...
2026-10-22产品运营专员提升个人能力,常见误区是先把Excel、SQL、Python列成一张学习清单,然后从第一个工具开始学。更有效的做法是先回答 ...
2026-10-22产品运营的能力提升,最怕从“课程目录”出发:今天学增长模型,明天背SQL语法,学完却说不清自己负责的功能为什么激活率低。更 ...
2026-10-22产品经理的技能和影响力不是两条分开的赛道。技能决定你能不能把问题分析清楚、把方案设计对;影响力决定你的判断能否被团队接受 ...
2026-10-22产品经理要学的数据分析能力,不是“会写SQL”或“会用BI工具”这么简单。更准确地说,是围绕需求评估、功能迭代、指标监控、实 ...
2026-10-22