C#의 Math.Net Numerics 라이브러리에 이상한 문제가 있습니다. 최근까지 (아무 것도 내가 말할 수있는 한 변경되지 않은) 내 코드가 완벽하게 작동했지만 다중 회귀를 계산하려고하는 줄의 제목에서 오류 메시지가 표시됩니다.매트릭스는 양수이어야합니다 (Math.Net C# 라이브러리)
각 목록에는 493 개의 이중 값이 있으므로 누구나 내가이 문제를 해결하기 위해 무엇을 할 수 있는지 알고 있습니까?
Vector<double> vectorArrayBuy = CreateVector.Dense(listMRInfoBuy.ElementAt(0).OutputBuy.ToArray());
var matrixArrayBuy = CreateMatrix.DenseOfColumnArrays(listMRInfoBuy.ElementAt(0).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(1).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(2).ListValuesBuy.ToArray(),
listMRInfoBuy.ElementAt(3).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(4).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(5).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(6).ListValuesBuy.ToArray(),
listMRInfoBuy.ElementAt(7).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(8).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(9).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(10).ListValuesBuy.ToArray(),
listMRInfoBuy.ElementAt(11).ListValuesBuy.ToArray());
var itemsBuy = MultipleRegression.NormalEquations(matrixArrayBuy, vectorArrayBuy);
NormalEquations는 매트릭스와 hernitian https://en.m.wikipedia.org/wiki/Positive-를 확정적 긍정적되어야하는 촐레 스키 분해를 사용 https://en.m.wikipedia.org/wiki/Cholesky_decomposition definite_matrix. 오류 메시지가 말하는 것처럼 - 매트릭스가 아닙니다. – Evk
@Evk 바보처럼 들리는데 미안하지만, 어떻게하면 내 행렬이 math.net 숫자로 양의 확정적인지 어떻게 확인할 수 있습니까? – user3610374
시스템에 이상이있을 수 있습니다. 'matrixArrayBuy.ConditionNumber()'는 무엇을 반환합니까? 'MultipleRegression.NormalEquations' 대신에'MultipleRegression.QR' 또는'MultipleRegression.Svd'를 사용하면 우연히 작동합니까? –