感知器学习-最重要的特征

问题描述 投票:4回答:3

对于我在AI课堂上的一项任务,我们的任务是创建Widrow Hoff delta规则的感知器学习实现。我已经在Java中编码了此实现:

以下github链接包含该项目:https://github.com/dmcquillan314/CS440-Homework/tree/master/CS440-HW2-1

我遇到的问题与感知器的创建无关。很好。

在训练感知器之后的项目中,我随后将未分类的数据集应用于感知器,然后学习每个输入向量的分类。这也很好用。

我的问题与学习输入的哪个特征最重要有关。

例如,如果每个输入向量中的特征集是颜色,汽车模型和汽车品牌,我们希望对哪个特征进行分类最为重要。人们将如何去做。

我对此的最初理解使我相信,对于每个输入和所产生的分类矢量,计算相关系数即该特征的值。但是,事实证明这是一个错误的假设。

还有其他方法可以学习最重要的功能吗?

编辑

样本权重向量:

((-752,4771,17714,762,6,676,3060,-2004,5459,9591.299,3832,14963,20912)

样本输入向量:

((55,1,2,130,262,0,0,155,0,0,1,0,3,0)

((59,1,3,126,218,1,0,134,0,2.2,2,1,6,1)

((45,1,2,128,308,0,2,170,0,0,1,0,3,0)

((59,1,4,110,239,0,2,142,1,1.2,2,1,7,1)

最后一个元素是分类。

找到答案后,我会在这里发布答案。到目前为止,我认为老师给出的答案是不准确的。

java machine-learning artificial-intelligence perceptron
3个回答
3
投票

通过计算学习的模型对特征的依赖程度来确定特征的重要性f

感知器是简单的前馈神经网络,对于神经网络(它是实值非线性函数),从属关系对应于输出函数相对于[[f的偏导数。]]特征的相对重要性与其在受过训练的感知器上的平均绝对权重成正比。通常,神经网络并不总是这样。例如,对于多层感知器,这不必成立。

更多详细信息(在此处键入确切的公式将是符号混乱),请查看sections 2 and 3 of this paper。我相信方程式(8)(在第3节中)是您想要的。

那里,分数是多个学习者的总和。如果您是单层感知器,则学习的功能是单个权重向量]

w

=(w1w2,... wn然后,我在开始时提到的

平均绝对重量

就是绝对重量| wi |第[[i
个特征。这似乎太简单了,无法对功能的重要性进行排名,对吗?但是...如果考虑一下,n维输入x会转换为w。 x(向量点积)。也就是说,第[[i个权重wi完全控制输入沿向量空间的一维变化量。]顺便说一下,在大多数(如果不是全部)分类器中,特征权重本身就是其重要性的度量。对于大多数其他分类器而言,权重只是以更复杂的方式计算的。

事实证明,这比我最初想象的要简单得多。答案/过程如下:


1
投票
© www.soinside.com 2019 - 2024. All rights reserved.