3

我正在尝试在 Excel 中使用一些简单的输入数据对 nnet 包的工作方式进行逆向工程。这是我采取的步骤

  1. 导入虚拟数据:test <- read.csv('dataScaled.csv',header=TRUE,sep = ",")

  2. 训练网络: anntrain <- nnet(Price ~ Sqft + Bedrooms + Bathrooms,test[1:650,],size=2, maxit=5000,linout=TRUE)

  3. 获取 ANN 的权重: anntrain$wts 输出:

    [1] -2.12443010 6.68900321 0.85338018 -0.73329823 -3.95336239 7.91917321 [7] -5.38893137 4.05941771 -0.02062346 0.26584364 0.32881053

  4. 获取训练网络的拟合值: anntrain$fitted.values 这将输出我认为是训练网络对我在上面训练的 650 笔交易中的每笔交易的缩放价格预测。

  5. 通过使用 sigmoid 函数使用上述权重重新计算来证明拟合值。

我的困惑是它输出 11 个重量值。如果我只有 3 个输入、2 个隐藏节点和 1 个输出,那不应该等于只有 8 个权重吗?3个额外的重量是什么?

4

1 回答 1

1

每一层都有偏差(为什么使用偏差/阈值?)。偏差就像一个总是给你输入 1 的节点。因此你有 (3+1)*2+(2+1)*1 = 11 个权重。

于 2012-07-21T21:49:05.210 回答