タグ付けされた質問 「linear-algebra」

線形システムの解、最小二乗問題、固有問題、その他の問題を含む、線形代数のアルゴリズム/計算的側面に関する質問。

1
純粋に回転する最小二乗一致
誰でも次の最小二乗問題の方法を推奨できますか? 最小化するを見つける:、ここでRはユニタリ(回転)マトリックス。R∈R3×3R∈R3×3R \in \mathbb{R}^{3 \times 3}∑i=0N(Rxi−bi)2→min∑i=0N(Rxi−bi)2→min\sum\limits_{i=0}^N (Rx_i - b_i)^2 \rightarrow \minRRR ∑i=0N(Axi−bi)2→min∑i=0N(Axi−bi)2→min\sum\limits_{i=0}^N (Ax_i - b_i)^2 \rightarrow \min(任意のA∈R3×3A∈R3×3A \in \mathbb{R}^{3 \times 3})を最小化することにより、近似解を得ることができますマトリックスAAAおよび: SVDの計算:A=UΣVTA=UΣVTA = U \Sigma V^T、ΣΣ\Sigmaをドロップし、R \ approx UV ^ Tを近似R≈UVTR≈UVTR \approx U V^T 極分解の計算:A=UPA=UPA = U P、スケールのみの対称(および私の場合は正定値)PPPをドロップし、R \ approx Uを近似するR≈UR≈UR \approx U QR分解も使用できますが、アイソメトリックではありません(座標系の選択に依存します)。 少なくともおおよそですが、上記の2つの方法よりも優れた近似でこれを行う方法を知っている人はいますか?

3
SPD三重対角線形システムが与えられた場合、3つのインデックスをO(1)時間でリンクできるように事前計算できますか?
検討対称正定値三重対角線形システム ここでと。与えられた3個のインデックス我々は間、厳密式のみの行を想定した場合、とホールド、我々は、フォームの方程式を得るために、中間変数を排除することができます 場所。この式は、の値を「外部」の影響とは無関係に関連付けます(たとえば、に影響する制約が導入された場合)。A ∈ R N × N B ∈ R nは 0 ≤ I < J < K < N I kはuがxはIを + VのXのjは + W 、X 、K = C V > 0 、X jのX I、X K X 0A x = bAx=bA x = bA ∈ Rn × nA∈Rn×nA …

3
2つの12x12行列の行列式が同じかどうかのテスト
12×1212×1212 \times 12QQQJdet(Q)=det(12I−Q−J)(1)det(Q)=det(12I−Q−J)(1)\det(Q) = \det(12I-Q-J) \; \; (1)JJJ 現在、armadilloライブラリでこれを行っていますが、遅すぎることがわかりました。事は、私は何兆もの行列に対してこれを行う必要があるということであり、2つの行列式を計算することが私のプログラムのボトルネックであることがわかりました。したがって、2つの質問があります サイズを知っていれば、行列式をより速く計算するために使用できるトリックはありますか?この場合に機能する可能性のある12×1212×1212 \times12行列の乱雑な展開でしょうか? 同等性をテストする他の効率的な方法はありますか(1)(1)(1) 編集。コメントに答えるため。私はすべての接続された非自己相補的なグラフを計算する必要GGGための131313ようにGGG及びG¯¯¯¯G¯\overline{G}スパニングツリーの同じ数を有しています。この理由は、このmathoverflowの投稿にあります。マシンについては、8コア3.4GHhマシンで並行して実行しています。 編集。12×1212×1212 \times 12行列の行列式を具体的に計算するCプログラムを作成することで、予想される実行時間を50%短縮することができました。提案はまだ歓迎されています。


3
小さい線形システムの数値的に安定な陽解
不均一な線形システムがあります Ax=bAx=b Ax=b ここで、実数であり、N × NのマトリクスN ≤ 4。Aのヌル空間はゼロ次元であることが保証されているため、方程式には一意の逆x = A − 1 bがあります。結果はODEの右側に入りますが、これは適応法を使用して解決する予定であるため、Aおよびbの要素のわずかな変動に対して解が滑らかであることが重要です。この要件と小さな次元性のために、A − 1 bの明示的な公式を実装すると考えました。AAAn×nn×nn\times nn≤4n≤4n\leq 4AAAx=A−1bx=A−1bx=A^{-1} bAAAbbbA−1bA−1bA^{-1} b。要素は正確にゼロでも、まったく異なる値でもかまいません。私の質問は、これがあなたにとって理にかなっているか、そしてこれに対する既知の安定した表現があるかどうかです。x86システム用にCでコーディングしています。

2
コレスキー因子の計算
したがって、コレスキー分解の定理は、任意の実対称正定行列がコレスキー分解持っていると述べています。ここで、は下三角行列です。M = L L ⊤ LMMMM= L L⊤M=LL⊤M= LL^\topLLL 与えられた場合、コレスキー因子を計算する高速アルゴリズムがあることはすでにわかっています。LMMMLLL ここで、長方形の行列が与えられ、が正定であることを知っていたとします。明示的に計算してからコレスキー分解アルゴリズムを適用せずに、のコレスキー因子を計算する方法はありますか?A A ⊤ A L A ⊤ A A ⊤ Am×nm×nm\times nAAAA⊤AA⊤AA^\top ALLLA⊤AA⊤AA^\top AA⊤AA⊤AA^\top A が実行する非常に大きな長方形行列である場合、は明らかに非常に高価であるため、問題になります。A ⊤ AAAAA⊤AA⊤AA^\top A


2
GPUシステムでのBLAS / LAPACKまたはその他の線形代数ルーチンの最速の実装は何ですか?
たとえば、nVidiaにはCUBLASがあり、7-14倍の高速化が約束されています。簡単に言えば、これはnVidiaのGPUカードの理論的なスループットに近いものではありません。GPUでの線形代数の高速化における課題は何ですか?また、より高速な線形代数のルーティングが既に利用可能ですか?

2
和の固有値分解:A(対称)+ D(対角)
仮定実対称行列と固有値分解であるV Λ V Tが与えられています。和A + c Iの固有値で何が起こるかは簡単にわかります。ここで、cはスカラー定数です(この質問を参照)。Dが任意の対角行列である一般的なケースA + Dで結論を出すことはできますか?ありがとう。AAAVΛVTVΛVTV \Lambda V^TA+cIA+cIA + cIcccA+DA+DA + DDDD よろしく、 イワン

1
固有値の多重度を検出する方法は?
Aが一般的なスパース行列であり、固有値を計算するとします。固有値の多重度を検出する方法がわかりません。私の知る限り、特別な場合、コンパニオンマトリックス法によって多項式の根を見つけるには、RRQRを適用して根の多重度を検出できます。

1
ヌル空間突出
システム所与A ∈ R 、N × Nが場合ヤコビ反復がソルバとして使用する場合には、私は、それを読んで、この方法は、収束しないであろうbはのヌル空間内の非ゼロ成分有し、Aが。それでは、Aのヌル空間にまたがるゼロ以外の成分がbにある場合、Jacobiメソッドは非収束であると正式に述べることができますか?ヌル空間に直交する解の一部は収束するため、数学的にどのように形式化できるのでしょうか。A x = b 、Ax=b,Ax=b,A ∈ Rn × nA∈Rn×nA\in\mathbb{R}^{n\times n}bbbAAAbbbAAA したがって、各反復からヌル空間を射影することにより、収束(または?)します。AAA ......... Iは、特にの場合に興味Lが零空間対称ラプラシアン行列は、ベクトルによって張られる1 N = [ 1 ... 1 ] T ∈ R N、および有するゼロ成分中ののヌル空間、ここではセンタリング行列です。それは、各ヤコビ反復がヌル空間を投影することを意味しますか、つまり、各反復は中央に配置されますLx=b,Lx=b,Lx=b,LLL1n=[1…1]T∈Rn1n=[1…1]T∈Rn1_n=[1\dots 1]^T\in\mathbb{R}^nL J b = b 、J = I − 1bbbLLLJb=b,Jb=b,Jb=b, LJ=I−1n1n1TnJ=I−1n1n1nTJ=I-\frac{1}{n}1_n1_n^TLLL?私はこれを求めているので、Jacobiの反復からヌル空間を投影する必要はないでしょう(言い換えれば、反復を中央に配置するために)。LLL

3
三重対角行列の固有システムの並列アルゴリズム
大きなスパースマトリックス(〜200万要素)のランチョス対角化を行っています。Lanzcosアルゴリズムのほとんどすべての手順は、収束を確認するためにLanczos行列を対角化することを除いて、GPU上で並行して実行されます。そのために、私はNumerical RecipesのTQLIアルゴリズムを使用しています。並列または簡単に並列化可能な三重対角行列の固有システムを見つける方法はありますか?TQLIの並列バージョンは存在しますか?

4
ラプラシアン行列の平方根を見つける
次の行列と仮定与えられたが [ 0.500 - 0.333 - 0.167 - 0.500 0.667を- 0.167を- 0.500 - 0.333 0.833 ] その転置とA T。製品A T A = G収量 [ 0.750 - 0.334 - 0.417 - 0.334 0.667 - 0.333 - 0.417 - 0.333 0.750 ]、AAA⎡⎣⎢0.500−0.500−0.500−0.3330.667−0.333−0.167−0.1670.833⎤⎦⎥[0.500−0.333−0.167−0.5000.667−0.167−0.500−0.3330.833] \left[\begin{array}{ccc} 0.500 & -0.333 & -0.167\\ -0.500 & 0.667 & -0.167\\ …

1
逆関数を計算せずに線形回帰問題の標準誤差を計算する
反転するよりも、線形回帰問題の標準誤差をより高速に計算する方法はありますか?ここで、回帰があると仮定します。X′XX′XX'X y=Xβ+ε,y=Xβ+ε,y=X\beta+\varepsilon, ここで、はn × k行列、yはn × 1ベクトルです。XXXn×kn×kn\times kyyyn×1n×1n\times 1 最小二乗問題の解決策を見つけるために、で何かを行うことは実用的ではありません。行列Xで QRまたはSVD分解を直接使用できます。または、勾配法を使用できます。しかし、標準エラーはどうでしょうか?本当に必要なのは(X ′ X )− 1の対角線(およびεの標準誤差の推定値を計算するためのLS解法)だけです。標準誤差計算のための特定の方法はありますか?X′XX′XX'XXXX(X′X)−1(X′X)−1(X'X)^{-1}εε\varepsilon

1
大規模線形システムの反復法が実際に収束的であることを確立する方法は?
計算科学では、直接法または反復法などのいくつかの(効率的な)手段で解く必要のある大きな線形システムに遭遇することがよくあります。後者に注目した場合、大規模な線形システムを解くための反復法が実際に収束的であることをどのように確立できますか? 試行錯誤分析(cf. なぜ私の反復線形ソルバーが収束しないのか?)を行い、証明による収束を保証するか、音響経験ベース(例えば、CGやGMRESなどのKrylov部分空間法)を持つ反復法に依存できることは明らかです。それぞれ対称および非対称システムの場合)。 しかし、実際に収束を確立するために何ができるでしょうか?そして何が行われますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.