擅长:python、mysql、java
<p>而不是:</p>
<pre><code>b=(X'*V^(-1)*X)^(-1)*X'*V^(-1)*Y
</code></pre>
<p>使用</p>
^{pr2}$
<p>也就是说,将<code>X*(Y^-1)</code>的所有实例替换为<code>X/Y</code>。Matlab将跳过求逆运算(这很难,而且容易出错),直接计算除法。在</p>
<hr/>
<p>编辑:即使有最好的矩阵操作,有些操作是不可能的(例如导致你所描述的错误)。在</p>
<p>一个可能与你的问题相关的例子是,如果试图在约束条件下解决最小二乘问题,那么多重测量是完美的,100%相关的。除非在极少数退化的情况下,无论是在数学上还是在物理上,都无法做到这一点。您需要测量中的一些独立性来解释测量噪声或建模错误。例如,如果您有两个测量值,每个测量值的方差为1,并且完全相关,那么您的<code>V</code>矩阵如下所示:</p>
<pre><code>V = [1 1; ...
1 1];
</code></pre>
<p>你永远也无法适应这些数据。(这通常意味着您需要重新制定基本函数,但这是一篇较长的文章。)</p>
<p>然而,如果你调整你的测量方差,以允许测量之间的一些小的独立性,那么它就可以正常工作了。例如,95%的相关测量值应该是这样的</p>
<pre><code>V = [1 0.95; ...
0.95 1 ];
</code></pre>