【例6.1】使用SAENET包的SAENET.train函数对SA模型进行评估。
(1)加载所需包和数据
(2)数据准备
去掉性别属性,删除编码出错率高的观测值,并且将结果样本存储为R中矩阵对象data1。
>data$sex<=NULL #去掉性别属性
>data$height[data$height==0]=NA
>data<=na.omit(data)
>data1<=as.matrix(data)为了说明问题,只抽取10个观测值。
>set.seed(2016)
>n=nrow(data)
>train<=sample(1:n,10,FALSE)
此时,对模型的评估已准备就绪。在这个例子中,设计3个隐藏层,且结点数分别为5、4、2的模型{n.nodes=c(5,4,2)}。余下的代码把模型存储到R中fit对象。
>fit<=SAENET.train(X.train=data1[train,],
n.nodes=c(5,4,2),
unit.type="logistic",
lambda=1e-5,(www.xing528.com)
beta=1e-5,
rho=0.07,
epsilon=0.1,
max.iterations=100,
optim.method=c("BFGS"),
rel.tol=0.01,
rescale.flag=TRUE,
rescaling.offset=0.001)
每一层的输出可以通过输入fit[[n]]$X.output来查看,这里n是感兴趣的层(the Layer of Interest)。例如,查看第三层的两个结点的输出:
>fit[[3]]$X.output
图6.4绘制了观测的输出值,为了清晰起见,将第753项标注为观测值1,第597项标注为观测值2,…,第223项标注为观测值10。
图6.4 第三层特性的可视化表示
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。