我在Weka上使用Multilayer Perceptron生成一个功率模型,这是一个统计工具箱。
Weka显示了以下生成的权力模型,但是,我不知道如何解释它。
如何使用Weka生成的模型计算预测值?我想知道如何用模型手动计算它。
感谢。
=== Classifier model (full training set) ===
Linear Node 0
Inputs Weights
Threshold -0.040111709313733535
Node 1 -1.8468414006209548
Node 2 0.8245441127585728
Node 3 -0.6384807874184006
Node 4 -0.7484784535220612
Sigmoid Node 1
Inputs Weights
Threshold -0.24446294747264816
Attrib CPU-User -0.608249350584644
Attrib CPU-System 0.13288901868419942
Attrib CPU-Idle 1.0072001456456134
Attrib GPS 0.39886318520181463
Attrib WIFI 2.661390547312707
Attrib Disk-Write 3.3144190265114104
Attrib Screen -0.18379082022126372
Sigmoid Node 2
Inputs Weights
Threshold -0.04552879905091134
Attrib CPU-User 1.2010400180021503
Attrib CPU-System -0.415901207849663
Attrib CPU-Idle -1.8201808907618635
Attrib GPS 0.3297713837591742
Attrib WIFI 2.670046643619425
Attrib Disk-Write 1.0132120671943607
Attrib Screen 1.5785512067159402
Sigmoid Node 3
Inputs Weights
Threshold -7.438472914350278
Attrib CPU-User -6.382669043988483
Attrib CPU-System -1.6622872921207548
Attrib CPU-Idle -0.12729502604878612
Attrib GPS -0.9716992577028621
Attrib WIFI 0.6911695390337304
Attrib Disk-Write -1.1769266028873722
Attrib Screen 0.5101113538728531
Sigmoid Node 4
Inputs Weights
Threshold -5.509838959208244
Attrib CPU-User -0.3709271557180943
Attrib CPU-System -1.7448007514288941
Attrib CPU-Idle -0.08176108597065958
Attrib GPS -1.0234447340811823
Attrib WIFI -1.5759133030274077
Attrib Disk-Write 0.2376861365371351
Attrib Screen -1.5654514081278506
Class
Input
Node 0
Time taken to build model: 0.81 seconds
=== Predictions ontest split===
inst#, actual, predicted, error
1 153727.273 169587.843 15860.57
2 159036.364 168657.043 9620.68
....
答案 0 :(得分:3)
This presentation给出了用于神经网络的背景和方程的一些细节。 Weka的输出为您提供每个节点的类型以及输入和权重。您应该能够使用该信息自行计算数字。
答案 1 :(得分:1)
在WEKA的多层感知器的情况下。如果您没有更改网络拓扑,则此网络的隐藏层中的节点都是sigmoid,但输出节点是线性单元。 例如。 “线性节点0”是您的OUTPUT单位,Sigmoid节点1到4是您的4个隐藏单位。给出的所有值都是您的互连权重。您可以使用它们手动计算正在获得的结果。
答案 2 :(得分:0)
这个问题现在已经过时了,但其他人可能会对答案感兴趣。请注意,默认情况下,Weka将输入和输出标准化为-1到1范围,这通常可以提高模型精度。您需要将输入缩放到相同的范围,并将该范围的输出缩放回原始范围。
对于非线性单位,激活函数是1 /(1 + exp(-activation))。有超过几个单位,这很快就会变得混乱,但你可以得到正确的答案。另请注意,Weka称之为阈值,在文献中也称为偏差,并且只是添加到它附加到的单位的激活中。