【问题标题】:Extra weight values in neural network (nnet for R package)神经网络中的额外权重值(用于 R 包的 nnet)
【发布时间】:2012-07-20 16:34:35
【问题描述】:

我正在尝试在 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.32881035

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

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

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

【问题讨论】:

    标签: r neural-network


    【解决方案1】:

    每一层都有偏差 (Why use a bias/threshold?)。偏差就像一个节点,总是给你输入 1。因此你有 (3+1)*2+(2+1)*1 = 11 个权重。

    【讨论】:

      猜你喜欢
      • 2013-09-18
      • 2012-11-26
      • 2012-09-08
      • 1970-01-01
      • 2017-09-01
      • 2018-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多