如何解读Weka中MultilayerPerceptron模型的输出结果
Weka多层感知机(MLP)输出内容解读
整体结构说明
你贴出的是用全量训练集拟合后得到的MLP模型参数片段,该模型是二分类任务(输出为阳性/阴性两类),隐藏层激活函数默认使用Sigmoid。
节点(Node)含义
隐藏层Sigmoid节点
你给出的Sigmoid Node 19就是隐藏层的第19个神经元,每个Sigmoid节点的计算逻辑为:
节点输出值 = Sigmoid( 阈值(Threshold) + Σ(每个输入特征值 × 对应权重) )
其中Weka输出里的Threshold就是常说的偏置项(bias),等价于取值固定为1的虚拟输入特征对应的权重。
输出层节点
输出末尾标注的Node 0、Node 1对应输出层的两个神经元,分别映射到Positive(阳性)、Negative(阴性)两个分类结果,最终预测时会取两个节点输出值更高的类别作为结果。
权重(Weights)解读规则
- 权重符号代表影响方向:正权重代表对应输入特征取当前标注值时,会提升该节点的输出值;负权重代表对应输入特征取当前标注值时,会降低该节点的输出值。
- 权重绝对值代表影响强度:绝对值越大,该特征对这个节点输出的影响程度越高。
以你给出的Node 19参数为例:- 正权重中绝对值最高的是
Attrib Age的6.05,说明年龄对该节点输出的影响最大,年龄越大,节点输出值越高;其次是Attrib visual blurring=Yes的3.02,说明存在视力模糊症状会大幅提升该节点的输出。 - 负权重中绝对值最高的是
Attrib Obesity=No的-1.7,说明如果没有肥胖症状,会明显降低该节点的输出。
- 正权重中绝对值最高的是
- 离散分类特征的解读逻辑:类似
Attrib Gender=Female这类特征,是one-hot编码后的特征,当样本性别为女时,该特征取值为1,会贡献1.98的权重加成;如果样本性别为男,该特征取值为0,不会产生该项贡献。
注意事项
你当前贴出的仅为单个隐藏层节点的参数,缺少隐藏层节点到输出层节点的权重部分,所以不能直接用单个隐藏层节点的权重作为全局特征重要性的判断依据。如果要估算全局特征重要性,需要拿到隐藏层所有节点的参数、以及隐藏层到输出层的权重,加权计算后才能得到特征对最终分类结果的实际影响。
内容的提问来源于stack exchange,提问作者rayqz
相关产品推荐
相关产品推荐

