http://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.linalg.orth.html
どうすれば調整できますか?予想よりもベースが少なくなっています。Google は、最初の数ページで明らかに有用な結果を提供してくれません。
http://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.linalg.orth.html
どうすれば調整できますか?予想よりもベースが少なくなっています。Google は、最初の数ページで明らかに有用な結果を提供してくれません。
orth
特異値分解を使用します。の定義はorth
現在https://github.com/scipy/scipy/blob/master/scipy/linalg/decomp_svd.pyにあります。これを書いている時点で、orth
(docstring をドロップする) ための完全なコードは次のとおりです。
def orth(A):
u, s, vh = svd(A, full_matrices=False)
M, N = A.shape
eps = numpy.finfo(float).eps
tol = max(M, N) * numpy.amax(s) * eps
num = numpy.sum(s > tol, dtype=int)
Q = u[:, :num]
return Q
その結果、 未満の特異値はtol
0 と見なされ、それらの方向は の範囲の一部とは見なされませんA
。 tol
は相対許容誤差です。max(M, N)*eps
の最大特異値の倍数に設定されます。A
ここeps
で、 は浮動小数点マシンのイプシロンです。
orth
の計算方法を制御する引数はありませんtol
が、ご覧のとおり、関数は数行しかありません。orth
無視する特異値を決定するために別の方法を使用する場合は、独自の関数を作成するための出発点として使用できます。