Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matrix 奇异值分解,用于从完全填充的矩阵中预测缺失值_Matrix_Prediction_Svd - Fatal编程技术网

Matrix 奇异值分解,用于从完全填充的矩阵中预测缺失值

Matrix 奇异值分解,用于从完全填充的矩阵中预测缺失值,matrix,prediction,svd,Matrix,Prediction,Svd,这是我的第一个问题,我希望它没有被误导/放错地方 假设我有一个数据矩阵,除了一个值之外,它是完全填充的。例如,第1列是高度,第2列是重量,第3列是台式压力机。所以我调查了20个人,得到了他们的身高、体重和卧推重量。现在我有一个5英尺11英寸的人,体重170磅,我想预测他/她的卧推重量。你可以把它看作是一个缺少值的矩阵,或者你可以把它看作是在给定一个自变量向量的情况下预测一个因变量。有很多曲线拟合方法可以解决这类问题,但我想知道如何使用奇异值分解来回答这个问题 我知道奇异值分解是预测缺失值的一种方

这是我的第一个问题,我希望它没有被误导/放错地方

假设我有一个数据矩阵,除了一个值之外,它是完全填充的。例如,第1列是高度,第2列是重量,第3列是台式压力机。所以我调查了20个人,得到了他们的身高、体重和卧推重量。现在我有一个5英尺11英寸的人,体重170磅,我想预测他/她的卧推重量。你可以把它看作是一个缺少值的矩阵,或者你可以把它看作是在给定一个自变量向量的情况下预测一个因变量。有很多曲线拟合方法可以解决这类问题,但我想知道如何使用奇异值分解来回答这个问题

我知道奇异值分解是预测缺失值的一种方法,但实际上我发现的所有信息都与巨大的、高度稀疏的矩阵有关,与矩阵和相关问题有关。我不知道如何使用SVD或类似的方法从小型或中型、完全填充(除了一个缺失值)矩阵中预测缺失值


使用奇异值分解(SVD)一步一步地解决上面的例子对我很有帮助。谢谢大家!

我本来打算把它作为一个评论,但它太长了,所以我把它作为一个答案提交了


我对SVD的阅读表明,它不太适用于您的示例。特别是,似乎您需要以某种方式将一些难度排序分配给矩阵中的板凳压力列,或个人的一些能力排序。也许两者都有。因为他能做的卧推量完全取决于他自己的身高和体重,我认为SVD不会提供任何优化,而仅仅是计算列表中其他人完成的统计平均值,并用它来预测你的5'11 170lb举重运动员的结果。也许如果有BMI(体重指数)栏,如果BMI可以排名。。。可能还有更大的数据集。我认为问题在于,使用奇异值分解可以减少矩阵中的噪声。这里有一个图坦卡蒙似乎使用了一个类似的问题:

这个问题似乎离题了,因为它是关于数学的,而不是关于实现的。它属于你,我明白了,谢谢。是的,我读过那篇文章,但不知道如何从那里做出预测。我不确定当某个东西是两个或两个以上自变量的函数时,统计“平均值”是什么,但找到最相似的行并根据这些行计算预测值是非常重要的。你可以找到一组平均身高为5英尺11的人-找到另一组平均体重为170磅的人,确定其中一个的任何成员是否也是另一个的成员,并计算其平均工作台压力。如果没有,我说你需要更大的抽样。这不管用吗?应该有一种更直接的方法,在整个测量范围内计算一个修正值,这样(身高和体重)和台架压力之间的关系可以浓缩成一个公式(HW/M=B)。我不确定这些数据到底是如何关联的,因为躺在长凳上并按压重物可能与身高,甚至体重没有多大关系。BMI可能意味着什么,但身高和体重似乎不能很好地预测手臂/胸部力量。我认为训练时间是一个更好的预测指标,但这仅仅是因为训练增加了肌肉质量(BMI)。好吧,我只是把它作为一个例子,也许它不是一个很好的例子。我更感兴趣的是理解SVD方法,而不是回答这个问题——我可以通过简单的3D曲面拟合轻松做到这一点。银行业中一个更复杂的例子是,让我们预测一个人的年收入、信用评分、借款金额、额外信用卡数量以及可能相关或可能不相关的任何其他变量导致其信用卡债务违约的可能性。然后,我将回到那篇文章,与作者一起浏览,解决这个问题。有像球员能力和洞的难度,使世界上所有的差异,如何适用于SVD是这个问题的修饰符。这样做之后,您应该能够看到将其应用于其他情况需要什么,或者至少应该应用于哪些情况。