京公网安备 11010802034615号
经营许可证编号:京B2-20210330
R语言提供了另外一个能够处理人工神经网络的算法包nnet,该算法提供了传统的前馈反向传播神经网络算法的实现。
操作
安装包与数据分类:
library(nnet)
data("iris")
set.seed(2)
ind = sample(2,nrow(iris),replace = TRUE,prob = c(0.7,0.3))
trainset = iris[ind == 1,]
testset = iris[ind == 2,]
使用nnet包训练神经网络:

iris.nn = nnet(Species ~ .,data = trainset,size = 2,rang = 0.1,decay = 5e-4,maxit = 200)
# weights: 19
initial value 114.539765
iter 10 value 52.100312
iter 20 value 50.231442
iter 30 value 49.526599
iter 40 value 49.402229
iter 50 value 44.680338
iter 60 value 5.254389
iter 70 value 2.836695
iter 80 value 2.744315
iter 90 value 2.687069
iter 100 value 2.621556
iter 110 value 2.589096
iter 120 value 2.410539
iter 130 value 2.096461
iter 140 value 1.938717
iter 150 value 1.857105
iter 160 value 1.825393
iter 170 value 1.817409
iter 180 value 1.815591
iter 190 value 1.815030
iter 200 value 1.814746
final value 1.814746
stoppedafter 200 iterations
调用summary( )输出训练好的神经网络:
summary(iris.nn)
a 4-2-3 network with 19 weights
options were - softmax modelling decay=5e-04
b->h1 i1->h1 i2->h1 i3->h1 i4->h1
-20.60 0.31 -3.84 3.36 7.72
b->h2 i1->h2 i2->h2 i3->h2 i4->h2
-7.15 1.50 2.49 -4.14 5.59
b->o1 h1->o1 h2->o1
-7.28 -3.67 13.16
b->o2 h1->o2 h2->o2
15.90 -16.64 -19.40
b->o3 h1->o3 h2->o3
-8.62 20.31 6.24
在应用函数时可以实现分类观测,数据源,隐蔽单元个数(size参数),初始随机数权值(rang参数),权值衰减参数(decay参数),最大迭代次数(maxit),整个过程会一直重复直至拟合准则值与衰减项收敛。
使用模型iris.nn模型完成对测试数据集的预测
iris.predict = predict(iris.nn,testset,type = "class")
nn.table = table(testset$Species,iris.predict)
nn.table
iris.predict
setosa versicolor virginica
setosa 17 0 0
versicolor 0 13 1
virginica 0 2 13
基于分类表得到混淆矩阵
confusionMatrix(nn.table)
Confusion Matrix and Statistics
iris.predict
setosa versicolor virginica
setosa 17 0 0
versicolor 0 13 1
virginica 0 2 13
Overall Statistics
Accuracy : 0.9348
95% CI : (0.821, 0.9863)
No Information Rate : 0.3696
P-Value [Acc > NIR] : 1.019e-15
Kappa : 0.9019
Mcnemar's Test P-Value : NA
Statistics by Class:
Class: setosa Class: versicolor Class: virginica
Sensitivity 1.0000 0.8667 0.9286
Specificity 1.0000 0.9677 0.9375
Pos Pred Value 1.0000 0.9286 0.8667
Neg Pred Value 1.0000 0.9375 0.9677
Prevalence 0.3696 0.3261 0.3043
Detection Rate 0.3696 0.2826 0.2826
Detection Prevalence 0.3696 0.3043 0.3261
Balanced Accuracy 1.0000 0.9172 0.9330
在调用predict函数时,我们明确了type参数为class,因此输出的是预测的类标号而非概率矩阵。接下来调用table函数根据预测结果和testset的实际类标号生成分类表,最后利用建立的分类表使用table函数根据caret中的confusionMatrix方法对训练好的神经网络预测性能评估。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
CDA数据分析师 出品 作者:李诗怡 1. 用户标签体系 定义: 通过一系列高度精炼的特征标识,对用户属性、行为与偏好进行量化刻画 ...
2026-09-24Pandas是Python生态中用于表格数据处理的核心库,广泛应用于数据清洗、统计运算、报表输出、数据分析建模等场景。在处理极大数值 ...
2026-09-24随着数字经济快速发展,数据已成为核心生产要素,各行各业的业务沉淀、用户行为、设备运行、市场交易均产生海量数据。数据处理作 ...
2026-09-24 很多分析师每天和数据打交道,但当被问到“标签是什么”“标签和指标有什么区别”“标签体系如何设计”时,却常常答不上来。 ...
2026-09-24在时序数据分析中,大部分业务数据并非持续平稳变化,而是会在某些时间节点出现突然抬升、断崖下跌、趋势反转、波动异变等现象, ...
2026-09-23在统计学与数据分析中,研究多组数据差异最常用的方法为单因素方差分析与事后多重比较。很多数据分析初学者容易混淆两者功能,认 ...
2026-09-23 很多数据分析师每天都在写 SQL,但当被问到“DQL 的本质是什么”“SELECT 子句的书写顺序与执行顺序为何不同”“INNER JOIN ...
2026-09-23 很多数据分析师写过无数个SELECT查询,但当被问到“如何新建一张表来固化中间数据”“创建视图和创建物理表有什么区别”“视 ...
2026-09-22CDA数据分析师 出品 作者:李诗怡 1. 金字塔原理 定义: 一种“先总后分、先结论后原因”的思考和表达方式。顶层为核心观点,中 ...
2026-09-22数据收集是数据分析、数据挖掘与数字化运营的源头工作,数据收集的完整性、准确性、时效性直接决定后续数据分析结果的可信度与业 ...
2026-09-21箱线图是数据分析中用于识别数据分布、判断离散程度、筛查异常值的核心图表。相比于直方图、趋势图,箱线图可以精准区分正常数据 ...
2026-09-21 很多数据分析师精通Excel函数和数据透视表,但当被问到“数据从哪里来”“表和视图有什么区别”“数据库管理系统和SQL是什么 ...
2026-09-21在数据库数据查询与数据分析工作中,日期时间是最常用的数据类型之一。原始数据库中存储的日期格式多为标准时间戳、年月日时分秒 ...
2026-09-20在时序数据分析中,增长率是衡量数据涨跌幅度、研判发展趋势、识别周期波动的核心指标,主要分为环比增长率与同比增长率。传统Ex ...
2026-09-20 很多企业团队并非缺乏指标,而是陷入“指标失控”:仪表盘上堆满实时跳动的数据,却无法回答“当前瓶颈在哪、下一步该做什么 ...
2026-09-20CDA数据分析师 出品 作者:李诗怡 STP模型(营销战略三步法) 定义: 现代营销战略核心框架,通过市场细分(S)、目标市场选择( ...
2026-09-18在互联网产品迭代、运营优化、界面改版与策略升级过程中,主观经验判断容易造成决策偏差、盲目改版、资源浪费等问题。AB实验(AB ...
2026-09-18 很多企业并不缺少指标,缺少的是让指标“串起来、动起来、用起来”的体系。零散指标像散落一地的珠子,指标体系则是那根把珠 ...
2026-09-18在电商行业精细化运营时代,流量红利逐步消退,粗放式投流、广撒网营销模式已无法适配市场竞争需求。依托用户点击、加购、收藏、 ...
2026-09-17在数据可视化与数据分析工作中,图表是将零散数据转化为直观业务规律的核心工具。不同图表拥有专属的数据逻辑与分析维度,能够从 ...
2026-09-17