使用回归估计每个要素的最佳权重

时间:2013-08-17 06:00:13

标签: machine-learning regression prediction estimation feature-extraction

我想在我的程序中使用特征提取,然后估计每个特征的最佳权重并计算新输入记录的分数。

例如,我有一个释义数据集。该数据集中的每个记录是一对两个句子,两个句子的相似性用0和1之间的值表示。 4个功能,我创建了具有这些特征值和相似性得分的新数据集。我想使用这个新数据集来学习权重:

复述数据集:

"A problem was solved by a mathematician"; "A mathematician was found a solution for a problem"; 0.9  
.  
.   

新数据集:

0.42; 0.61; 0.21; 0.73; 0.9
.  
.

我想使用回归来估计每个要素的权重。我想用程序1计算程序中输入句子的相似度:S = W1*F1 + W2*F2 + W3*F3 + W4*F4

我知道回归算法可以用于这项工作,但我不知道如何?请指导我做这项工作? 是否有任何纸张或文档使用回归算法?

1 个答案:

答案 0 :(得分:2)

您正在寻找的是一个简单的 linear regression (顺便说一句,它不是算法,而是 - 数据建模方法,算法用于查找线性回归参数,但回归本身不是算法),但你还应该将偏差(截距)项添加到等式中,使其成为:

S = w1*f1 + w2*f2 + w3*f3 + w4*f4 + b

或以矢量化格式

s = <F,W> + b

其中<F,W>是权重和特征的内在产物,b是偏见(实值变量)

要统一,你可以添加一个常数值f5 = 1,并包含w5而不是b,所以它变为

s = <F,W>

您可以使用Ordinary Least Squares方法

解决此问题
W = (F'F)^(-1)F's

导致残差平方和的最佳线性回归。

在每种编程语言中,您都可以找到用于执行线性回归的库,因此您无需自己实现它。特别是,库也会引入b变量,因此不需要自己实现它。