在实现逻辑回归模型时包括特征
Posted
技术标签:
【中文标题】在实现逻辑回归模型时包括特征【英文标题】:Including features when implementing a logistic regression model 【发布时间】:2021-03-07 21:21:36 【问题描述】:在某些情况下,我正在尝试进行一些匹配以查看该公司是否与另一家公司匹配。我已经对名称匹配、地址匹配、域匹配等数据进行了特征工程......
从那里,我还创建了另一个功能,该功能基于一种方法,其中包含名称匹配、地址匹配和域匹配的组合,并根据我认为在确定时更重要的直觉来设置它们的权重一场比赛。让我们将此功能称为“最终得分”。这个分数让我可以粗略估计这些是否匹配。
现在是我实现逻辑回归的部分。我尝试使用我设计的没有“最终分数”和“最终分数”的功能构建逻辑回归,结果非常相似。
注意:我确实检查了功能的重要性,它非常重要。
我的问题是,在训练模型时,将“最终得分”作为逻辑回归模型的特征包含在内是一种好的做法吗?
【问题讨论】:
你考虑过做k-nearest吗? 【参考方案1】:通常,您不希望线性和逻辑回归类型模型中的高度相关特征。它对性能没有影响,但会影响对模型的解释。
这个问题被称为Multicollinearity,是由于参数(系数)的不稳定(高方差)估计引起的。
您可以查看此answer 以了解其原因。
我可以提供一个直观的例子,它可能会引起麻烦:
Y = P(scoring a goal by football player in a match)
Feature vector = [weight, height] # height and weight are highly correlated
那么学习的模型可能是:
log(P(goal)/P(1-goal)) = 0.55*weight- 0.12*height + bias
# how would you interpret the negative coefficient of height now?
有ways(正则化)来处理这个问题,还有situations 可以安全地使用这些相关特征。
【讨论】:
对,我完全忘记了这个概念。这现在很清楚了。感谢您的帮助!以上是关于在实现逻辑回归模型时包括特征的主要内容,如果未能解决你的问题,请参考以下文章
逻辑回归模型(Logistic Regression)及Python实现
在 scikit learn 中训练具有不同特征维度的逻辑回归模型
R语言广义线性模型函数GLMglm函数构建逻辑回归模型(Logistic regression)使用卡方检验验证两个逻辑回归模型是否具有显著性(即删除无用特征后的模型和原始模型是否具有明显差异)