在matlab中使用神经网络工具箱时。
创建网络后,当我尝试使用它来分类两个类时,我得到了某种相似性值。
sim(net,featureVector)
的输出返回一个矩阵Out
,每行[2x1]
,其中某些值介于[0, 1]
我知道sigmoid函数返回[0, 1]
之间的值,但问题是:
如果样本的n%
类似于A类,那么它应该(100-n)%
类似于B类。?
这是我从几个样本得到的输出=> [其中HIT
和FAIL
是两个类。]
因此,从第二张图像看,神经网络似乎独立于两个类别而返回某种相似性值,这两个类别肯定不遵循上述规则。
看起来它为每个类使用了一些最小距离公式,并独立返回结果。
我的确切问题是。
1。 sim(net,featureVector)
方法究竟返回了什么?
的 2。我在想什么?
第3。如果是,它使用的最小距离为Algo。
的 4。请指出我可以了解更多内容的链接。
答案 0 :(得分:3)
sim
是模拟的快捷方式,而不是相似性。您得到的是网络net
的输出节点值。这两个值是属于每个类的独立分数。如果你想要的东西更像"概率就像"你必须将它标准化,这样做,只需将这个向量除以它自己的总和。因此,将[a b]
更改为[a/(a+b) b/(a+b)]
,这将导致总计为1
的值(根据需要)。
如果是,它使用的最小距离为Algo。
神经网络不是基于与班级的最小距离和#34;。它是一个更复杂的对象,它来自回归模型,而不是简单的距离测量(尽管显然可以明确地说明与类#34;距离神经网络权重的类型,但它的等式将是真的很长,特别是像图像这样的高维数据。)