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

4
0-1行列ベクトル乗算の自動最適化
質問: 行列が密で、ゼロと1だけで満たされている場合、行列ベクトル乗算を効率的に適用するコードを生成するための手順または理論は確立されていますか?理想的には、最適化されたコードは、以前に計算された情報を体系的に使用して、重複する作業を減らします。 つまり、行列 あり、に基づいて事前計算を行い、後でベクトル受け取ったときにを可能な限り効率的に計算します。MMMMMMMvMvMvvvv MMMは「コンパイル時」に知られている長方形の密なバイナリマトリックスであり、は「実行時」にのみ知られている未知の実数ベクトルです。vvv 例1:(スライディングウィンドウ) 簡単な小さな例を使用して、私のポイントを説明します。、行列を考える この行列をベクトルに適用してを取得するとします。結果のエントリは、 M= ⎡⎣⎢⎢⎢11111111111111111111⎤⎦⎥⎥⎥。M=[11111111111111111111].M = \begin{bmatrix}1 & 1 & 1 & 1 & 1\\ & 1 & 1 & 1 & 1 & 1 \\ & & 1 & 1 & 1 & 1 & 1\\ & & & 1 & 1 & 1 …

6
線形代数のどの部分がコンピューターサイエンスで使用されていますか?
私は線形代数とそのアプリケーションを読んで、コンピューターサイエンスの教材(主に機械学習)の理解に役立てていますが、CSにとって多くの情報が役に立たないことを心配しています。たとえば、線形方程式のシステムを効率的に解く方法を知ることは、新しい方程式ソルバーをプログラムしようとしない限り、あまり役に立ちません。さらに、本は、行列に逆行列がある場合のスパン、線形依存性、独立性、およびこれらの間の関係について多くのことを話しましたが、CSでこれを適用することは考えられません。それでは、線形代数のどの部分がCSで使用されていますか?

2
行列連鎖の乗算とべき乗
それぞれ1000 × 2と2 × 1000の次元の2つの行列とBがあり、(A B )5000を計算する場合、最初に式をA (B A )4999 Bとして書き換えてから、A Bは1000 × 1000の次元ですが、B Aは2 × 2の次元であるため、数値的に評価します。AAABBB1000×21000×21000\times22×10002×10002\times1000(AB)5000(AB)5000(AB)^{5000}A(BA)4999BA(BA)4999BA(BA)^{4999}BABABAB1000×10001000×10001000\times1000BABABA2×22×22\times2 この問題の一般化されたバージョンを解決したいと思います。以下を含む式を最適化するための合理的な効率的なアルゴリズム(ブルートフォースではない)はありますか? 既知の次元の自由行列変数 任意の部分式の積 自然な力に引き上げられた任意の部分式 ...フリーマトリックス変数を具体的なマトリックス値で置き換えた後、数値的に評価するのに必要な作業が最小になるようにするには? 行列チェーン乗算問題は私の問題の特殊なケースです。 編集: これは暫定的な答えです。直感的には正しいようですが、それが正しいことを証明するものはありません。それが正しいことが判明した場合でも、証明に興味があります。(もちろん、正しくない場合は修正してください。) などのべき乗されたすべての積について、因子のすべての巡回置換を検討します。(A1A2…Ak)n(A1A2…Ak)n(A_1 A_2 \ldots A_k)^n (A1A2…Ak)n(A1A2…Ak)n(A_1 A_2 \ldots A_k)^n A1(A2…AkA1)n−1A2…AkA1(A2…AkA1)n−1A2…AkA_1 (A_2 \ldots A_k A_1)^{n-1} A_2 \ldots A_k A1A2(A3…AkA1A2)n−1A3…AkA1A2(A3…AkA1A2)n−1A3…AkA_1 A_2 (A_3 \ldots A_k A_1 A_2)^{n-1} A_3 \ldots …

1
疑似逆行列を見つける複雑さ
任意のフィールドのMoore–Penrose疑似逆行列を見つけるには、いくつの算術演算が必要ですか? 行列が反転可能で複素数値の場合、それは単に逆になります。逆を見つけるには、時間かかります。ここで、は行列乗算定数です。これは、アルゴリズムの第3版の概要の定理28.2です。ωO(nω)O(nω)O(n^\omega)ωω\omega 行列の場合線形独立行または列を有し、複素数値は、擬似逆行列を用いて計算することができる又はのそれぞれここで、の共役転置である。特に、これはの疑似逆行列を見つけるための時間を意味します。A *(A A * )- 1(A A * )- 1 A * A * A O (N ω)AAAAA∗(AA∗)−1A∗(AA∗)−1A^*(A A^*)^{-1}(AA∗)−1A∗(AA∗)−1A∗(A A^*)^{-1}A^*A∗A∗A^*AAAO(nω)O(nω)O(n^\omega)AAA 一般的な行列の場合、私が見たアルゴリズムはQR分解またはSVDを使用します。これは、最悪の場合算術演算をとるようです。より少ない操作を使用するアルゴリズムはありますか?O(n3)O(n3)O(n^3)

1
線形計画法の強力な双対定理の短くて滑らかな証明
線形計画を考える Primal:Ax⃗ ≤b⃗ maxc⃗ Tx⃗ Primal:Ax→≤b→maxc→Tx→\begin{array}{|ccc|} \hline Primal: & A\vec{x} \leq \vec{b} \hspace{.5cm} & \max \vec{c}^T\vec{x} \\ \hline \end{array} Dual:c⃗ ≤y⃗ TAminy⃗ Tb⃗ Dual:c→≤y→TAminy→Tb→\begin{array}{|ccc|} \hline Dual: & \vec{c} \leq \vec{y}^TA \hspace{.5cm} & \min \vec{y}^T\vec{b} \\ \hline \end{array} 弱い双対定理は、とが制約を満たす場合、 あると述べています。線形代数を使用した簡潔で洗練された証明があります: 。x⃗ x→\vec{x}y⃗ y→\vec{y}c⃗ Tx⃗ ≤y⃗ Tb⃗ c→Tx→≤y→Tb→\vec{c}^T\vec{x} \leq \vec{y}^T\vec{b}c⃗ Tx⃗ ≤y⃗ …

1
自然数線形システムを解くためにどのようなアルゴリズムが存在しますか?
私は次の問題を見ています: 自然数、およびいくつかの入力ベクトル次元ベクトルが与えられると、はと自然数係数の線形結合ですか?v 1、… 、v m u u v iんんnv1、… 、vメートルv1、…、vメートルv_1, \ldots, v_mあなたあなたuあなたあなたuv私v私v_i つまり、いくつかのがありますここで、ですか? U = T 1 、V 1 + ⋯ + T M のV Mt1、… 、tメートル∈ Nt1、…、tメートル∈Nt_1, \ldots, t_m \in \mathbb{N}u=t1v1+⋯+tmvmu=t1v1+⋯+tメートルvメートルu = t_1 v_1 + \dots + t_m v_m 明らかに、この問題の実数バージョンはガウスの消去法を使用して解決できます。私は不思議に思っています、この問題の整数バージョンは研究されましたか?それを解決するためにどのようなアルゴリズムが存在しますか? これは自然数を使用していますが、モジュラー演算を使用していないため、これは中国の剰余定理やそのようなシステムとは多少異なります。また、それはディオファントス方程式に関連しているようですが、非負の整数のみが考慮される場合に何が行われたのでしょうか?これは、多次元のサブセット和問題を連想させるものであり、一般化されて、各ベクトルの任意の数のコピーを取ることができます。uuuがv_1、\ dots、v_mによって生成されたラティスの要素であるかどうかのテストにも関連しているようですが、ここでは負でない係数との線形結合しか許可されていません。v1,…,vmv1,…,vmv_1,\dots,v_m 興味のある人にとっては、これは、Parikhの定理のように、Parikhベクトルが線形セットにあるかどうかを見ることによって動機付けられます。 特に、実数/浮動小数点数に入るのを避け、自然数演算のみを使用して問題を解決できるアルゴリズムに興味があります。

1
バンドマトリックスの反転
私はバンド行列を持っています-疎で正方で対称な行列で、その構造は次のようになります:N× NN×NN \times N ここで、青い縞の下の領域は非ゼロ要素です。他はすべてゼロです ガウスの消去法とLU分解よりも単純であるが効率的な、この種の行列を反転するアルゴリズムはありますか?

3
線形方程式系を解くための最速の方法
私は、10000までの未知数を含む最大10000の方程式のシステムをできるだけ速く(できれば数秒以内に)解かなければなりません。ガウスの消去はそのためには遅すぎることを知っているので、どのアルゴリズムがこのタスクに適していますか? すべての係数と定数は、pを法とする非負の整数です(pは素数)。ソリューションは1つだけであることが保証されています。pを法とする解が必要です。

2
量子コンピュータは、古典的なコンピュータよりも線形代数を速く実行できますか?
十分な数の量子ビットを備えた量子コンピューターがあったとしたら、それを使用して、古典的コンピューターよりも高速に線形代数を実行できますか?どのようなスピードアップが期待できますか?だれかが線形代数の量子アルゴリズムを作成しましたか?それは実行時間ですか?理論的には、行列と行列の乗算などの演算は高度に並列化できますが、実際には、高速に実行される並列行列と行列の乗算を実装するには多くの作業が必要です。量子コンピューターは実用的な利点を提供しますか?

1
XORを使用したバイナリベクトルのセットの最小基底
これが十分に研究された問題ではない場合は驚きますが、この時点で他に何を検索すればよいかわかりません。バイナリベクトルのセット。問題は、最小サイズのバイナリベクトル別のセットを見つけることです、すべてのベクトルは、の一部のサブセットのXOR結果で表現できる(したがって、は基本的に、の追加ではなくXORを使用し、線形結合でバイナリ係数のみを許可する基本です)。んnnS⊂{0,1}nS⊂{0,1}nS \subset \{0,1\}^nnnnB⊂{0,1}nB⊂{0,1}nB \subset \{0,1\}^n|B||B||B|SSSBBBBBBSSS ある意味で、これはバイナリベクトルのPCAの形式です。この問題に関する文献を検索しているときに、この博士論文で議論されている離散基底問題に出くわしました。これは密接に関連しているようです。XORの代わりにORを使用し、ここで追加の入力です(そして、タスクは、からのベクトルでを表す際のエラーを最小限に抑えることです)。この問題はNP困難です。同じことが上記の問題にも当てはまりますか、それとも効率的な解決策はありますか?既存の文献へのポインタがあれば大歓迎です。|B||B||B|SSSBBB

1
ハイパーキューブ内のすべてのグリッドポイントをアルゴリズム的に生成する
\def\R{\mathbb{R}}\def\Z{\mathbb{Z}}\def\n#1{\|#1\|_\infty}問題は計算数学から直接生じ、次のように述べた: 正則行列所与の、すべてのベクトルが効果的に見つけるよう、\ N {MVは}の最大成分であります係数のベクトル。M∈ Rd× dM∈Rd×dM\in\R^{d\times d}V ∈ Zdv∈Zdv\in\Z^d∥ MV ∥∞≤ 1‖Mv‖∞≤1\n{Mv}\leq1∥ MV ∥∞‖Mv‖∞\n{Mv} 以下にアルゴリズムを示しますが、グリッドポイントの数よりもはるかに多くのステップがあるため、非常に非効率的です。私の場合はd = 5でも耐えられd= 5d=5d=5ますが、d= 6d=6d=6では完全に失敗します。時間はあまりありません。また、高次元にも対応したいです。 私の現在のアルゴリズムは以下に基づいています(免責事項:より多くの数学が含まれています):最初に、\ n {M ^ {-1}}を計算し∥ M− 1∥∞‖M−1‖∞\n{M^{-1}}ます。次に、\ n {v} \ leq \ n {M ^ {-1}} \ n {Mv} \ leq \ n {M ^ {-1}}が観察され∥ V∥∞≤ ∥はM− 1∥∞∥Mv∥∞≤ ∥はM− 1∥∞‖v‖∞≤‖M−1‖∞‖Mv‖∞≤‖M−1‖∞\n{v}\leq\n{M^{-1}}\n{Mv}\leq\n{M^{-1}}ます。つまり、L …

1
加算、減算、乗算のみを使用して*より大きい*関数を実装することは可能ですか?
すべての値は有限フィールドです。これ以上の機能を書きたいZtZtZ_t GT(x,y)={1,0,if x>y,otherwise.GT(x,y)={1,if x>y,0,otherwise.GT(x,y) = \begin{cases} 1, & \text{if } x > y, \\ 0, & \text{otherwise}. \end{cases} 加算、乗算、減算のみを使用し、除算は使用しないでください。 等式関数 EQU(x,y)={1,0,if x==y,otherwise.EQU(x,y)={1,if x==y,0,otherwise.EQU(x,y) = \begin{cases} 1, & \text{if } x == y, \\ 0, & \text{otherwise}. \end{cases} このように計算できます EQU(x,y)=1−(x−y)pEQU(x,y)=1−(x−y)pEQU(x,y) = 1 - (x-y)^p、ここで、pはオイラーの傾斜関数 です。これは、が素数であるためです。p=phi(t)=t−1p=phi(t)=t−1p=phi(t)=t-1ttt 大なり関数は同様の方法で記述できますか? より大きい関数は、準同型暗号化アプリケーションが暗号化された整数のベクトルから最大整数値を見つけるために使用されます。

1
スペクトルグラフ理論はグラフ同型について何と言っていますか
スペクトルグラフ理論のコンテキストでグラフ同型を論じる研究や結果はありますか? スペクトルグラフ理論の2つの既知の定理は次のとおりです。 グラフの隣接行列に固有値のマルチセットが等しい場合、2つのグラフはアイソスペクトルまたはコスペクトルと呼ばれます。 ほとんどすべての木は共スペクトルです。 グラフの隣接行列の固有値は、ラベルを付け直しても変化しません(ただし、これは必要かつ十分な条件ではありません)。 さらに、グラフ同型は解決が「簡単」ですか?

1
片側誤差のある行列乗算の確率論的検定
3つの行列与えられた場合かどうかをテストします。算術演算および-が\ mathbb {Z}からの数値に適用される場合、一定の時間がかかると仮定します。A 、B 、C∈Zn × nA,B,C∈Zn×nA, B,C \in \mathbb{Z}^{n \times n}A B ≠ CAB≠CAB \neq C+++−−-ZZ\mathbb{Z} O (ん2)O(n2)O(n^2)時間で実行される片側エラーのあるアルゴリズムをどのように記述し、その正しさを証明できますか? 数時間試しましたが、うまくいきません。X ∈Zんx∈Znx \in \mathbb{Z}^nのベクトルの最大半分s \ in S = \ left \ {1、0 \ right \} ^ nS ∈ S={ 1 、0 }んs∈S={1,0}ns \in S = \left\{1, 0\right\}^n がx \ cdot sを満たすという事実を使用する必要があると思います= …

1
線形方程式に正の解があるかどうかをチェックする複雑さ
線形方程式システムを考えます。ここで、は有理数のエントリを持つ行列です。のランクがであると仮定します。それが解決したかどうかを確認するためにcomplexiy何である、すべてのエントリが、そのようなことを(すなわち、0よりも大きいstricly正のベクトルである)は?もちろん、ガウスの消去法を使用できますが、これは最適ではないようです。Ax=0Ax=0Ax=0AAAn×nn×nn\times nAAA&lt;n&lt;n<nxxxxxxxxx
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.