Vectors mapped to 0 by a linear map
カーネルの例 - 線形演算子は直線 上のすべての点を ゼロ点に変換し 、それによって線形演算子のカーネルを形成します。 L : ( x , y ) ⟶ ( x , x ) {\displaystyle L:(x,y)\longrightarrow (x,x)} ( x = 0 , y ) {\displaystyle (x=0,y)} ( 0 , 0 ) {\displaystyle (0,0)} 数学 において 、 線型写像 の 核(せんどうしゃ、英: kernel)は、 零空間 または 零空間 とも呼ばれ、 余領域 の 零ベクトル に写像される 領域 の部分である 。核は常に 領域の 線型部分空間である。 [1] つまり、 2つの ベクトル空間 V と Wの間の線型写像 L : V → W が与えられたとき、 L の核は、 L ( v ) = 0 となるような V の すべての元 v のベクトル空間である。ここで、 0 は W の 零ベクトル を表す 。 [2] またはより記号的に言えば、 ker ( L ) = { v ∈ V ∣ L ( v ) = 0 } = L − 1 ( 0 ) . {\displaystyle \ker(L)=\left\{\mathbf {v} \in V\mid L(\mathbf {v} )=\mathbf {0} \right\}=L^{-1}(\mathbf {0} ).}
プロパティ V から W への 線形写像 Lの核と像 L の核は 定義域 Vの 線型部分空間 である 。 [3] [2] 線型写像において、 V の2つの元が W に 同じ 像を持つのは、それらの差が L の核にある 場合のみである 。つまり、 L : V → W , {\displaystyle L:V\to W,} L ( v 1 ) = L ( v 2 ) if and only if L ( v 1 − v 2 ) = 0 . {\displaystyle L\left(\mathbf {v} _{1}\right)=L\left(\mathbf {v} _{2}\right)\quad {\text{ if and only if }}\quad L\left(\mathbf {v} _{1}-\mathbf {v} _{2}\right)=\mathbf {0} .}
このことから、第一同型定理により、 L の像は V を 核で 割った商 に 同型であること が わかります。 im ( L ) ≅ V / ker ( L ) . {\displaystyle \operatorname {im} (L)\cong V/\ker(L).} V が 有限次元 の場合 、これは 階数零定理 を意味する。 ここで項 dim ( ker L ) + dim ( im L ) = dim ( V ) . {\displaystyle \dim(\ker L)+\dim(\operatorname {im} L)=\dim(V).} ランクは L の像の次元を 指し 、 dim ( im L ) , {\displaystyle \dim(\operatorname {im} L),} ヌル性は L の核の次元を指し 、 [4]
つまり、 ランクヌル性定理は次のように言い換えられる。 dim ( ker L ) . {\displaystyle \dim(\ker L).} Rank ( L ) = dim ( im L ) and Nullity ( L ) = dim ( ker L ) , {\displaystyle \operatorname {Rank} (L)=\dim(\operatorname {im} L)\qquad {\text{ and }}\qquad \operatorname {Nullity} (L)=\dim(\ker L),} Rank ( L ) + Nullity ( L ) = dim ( domain L ) . {\displaystyle \operatorname {Rank} (L)+\operatorname {Nullity} (L)=\dim \left(\operatorname {domain} L\right).}
V が 内積空間 のとき 、商は の V における 直交補空間 と同一視できる。これは、行列の 行空間 (あるいは 余像 ) の線型作用素への一般化である 。 V / ker ( L ) {\displaystyle V/\ker(L)} ker ( L ) {\displaystyle \ker(L)}
モジュールへの一般化 核の概念は、ベクトル空間の一般化である 加群 の 準同型 にも意味を持ちます。ここで、加群とは、スカラーが 体 ではなく 環 の元となるようなものです。写像の領域は加群であり、核は 部分加群 を構成します。ここでは、階数と零性の概念は必ずしも適用されません。
関数解析では V と W が 位相ベクトル空間 で W が有限次元で ある 場合、線形演算子 L : V → W は、 L の核が V の 閉部 分空間である場合に 限り連続 です 。
行列乗算としての表現 K 体 (通常 は または) の係数を持つ m × n 行列 A として表現され、 K 上の n 個の要素を持つ列ベクトル x に作用する線型写像を考える。この線型写像の核は方程式 A x = 0 の解の集合である 。ここで 0 は零ベクトル として理解される 。 A の核の 次元は A の 零性 と呼ばれる 。 集合構築記法 では、 行列方程式は 線型方程式の同次系 と等価である。
したがって、 A の核は 上記の同次方程式の解の集合と同じである。 R {\displaystyle \mathbb {R} } C {\displaystyle \mathbb {C} } N ( A ) = Null ( A ) = ker ( A ) = { x ∈ K n ∣ A x = 0 } . {\displaystyle \operatorname {N} (A)=\operatorname {Null} (A)=\operatorname {ker} (A)=\left\{\mathbf {x} \in K^{n}\mid A\mathbf {x} =\mathbf {0} \right\}.} A x = 0 ⇔ a 11 x 1 + a 12 x 2 + ⋯ + a 1 n x n = 0 a 21 x 1 + a 22 x 2 + ⋯ + a 2 n x n = 0 ⋮ a m 1 x 1 + a m 2 x 2 + ⋯ + a m n x n = 0 . {\displaystyle A\mathbf {x} =\mathbf {0} \;\;\Leftrightarrow \;\;{\begin{alignedat}{7}a_{11}x_{1}&&\;+\;&&a_{12}x_{2}&&\;+\;\cdots \;+\;&&a_{1n}x_{n}&&\;=\;&&&0\\a_{21}x_{1}&&\;+\;&&a_{22}x_{2}&&\;+\;\cdots \;+\;&&a_{2n}x_{n}&&\;=\;&&&0\\&&&&&&&&&&\vdots \ \;&&&\\a_{m1}x_{1}&&\;+\;&&a_{m2}x_{2}&&\;+\;\cdots \;+\;&&a_{mn}x_{n}&&\;=\;&&&0{\text{.}}\\\end{alignedat}}}
部分空間特性 m × n 行列 A の体 K 上の核は K n の 線型部分空間 である 。つまり、 A の核、すなわち Null( A ) 集合は、以下の3つの性質を持つ。
A 0 = 0 なので、 Null( A ) には常に ゼロベクトル が含まれます。 x ∈ Null( A ) かつ y ∈ Null( A ) ならば 、 x + y ∈ Null( A )となる。これは 行列の乗算 と加算の分配法則から導かれる 。 x ∈ Null( A ) で cが スカラー c ∈ K の 場合 、 A ( c x ) = c ( A x ) = c 0 = 0 であるため、 c x ∈ Null( A ) となります。
行列の行空間 積 A x は、ベクトルの ドット積 で次のように表すことができます。 A x = [ a 1 ⋅ x a 2 ⋅ x ⋮ a m ⋅ x ] . {\displaystyle A\mathbf {x} ={\begin{bmatrix}\mathbf {a} _{1}\cdot \mathbf {x} \\\mathbf {a} _{2}\cdot \mathbf {x} \\\vdots \\\mathbf {a} _{m}\cdot \mathbf {x} \end{bmatrix}}.}
ここで、 a 1 , ... , a m は 行列 A の行を表します。したがって、 x が A の核に含まれるのは、 x が A の各行ベクトルに 直交 (または垂直)する 場合のみです (直交性はドット積が0であると定義されるため)。
行列 A の行 空間、あるいは共像は、 A の行ベクトルの 張る空間 である。上記の推論により、 A の核は行空間の 直交補空間 となる 。つまり、ベクトル x が A の核に含まれる場合と、それが A の行空間のすべてのベクトルに直交する場合とで、その場合とで同値である 。
A の行空間の次元は A の 階数 と呼ばれ、 A の核の次元は A の 零点性 と呼ばれる。これらの量は 階数零点性定理 [4] によって関連付けられている。 rank ( A ) + nullity ( A ) = n . {\displaystyle \operatorname {rank} (A)+\operatorname {nullity} (A)=n.}
左ヌルスペース 行列 A の左 零空間 ( コカーネル)は、 x T A = 0 T を満たす すべての列ベクトル x から構成されます。ここで、 T は 行列の 転置を表します。 Aの左零空間は、 A T の核と同じです。 A の左零空間は、 A の 列空間 の直交補空間であり、関連する線形変換の コカーネル の双対です。 A の核、行空間、列空間、および左零空間は、 行列 Aに関連付けられた 4つの基本的な部分空間 です 。
非同次線形方程式系 カーネルは、非同次線形方程式の解においても役割を果たします。 u と v が 上記の方程式の 2 つの可能な解である 場合、 したがって、方程式 A x = b の任意の 2 つの解の差は、 A のカーネルにあります 。 A x = b or a 11 x 1 + a 12 x 2 + ⋯ + a 1 n x n = b 1 a 21 x 1 + a 22 x 2 + ⋯ + a 2 n x n = b 2 ⋮ a m 1 x 1 + a m 2 x 2 + ⋯ + a m n x n = b m {\displaystyle A\mathbf {x} =\mathbf {b} \quad {\text{or}}\quad {\begin{alignedat}{7}a_{11}x_{1}&&\;+\;&&a_{12}x_{2}&&\;+\;\cdots \;+\;&&a_{1n}x_{n}&&\;=\;&&&b_{1}\\a_{21}x_{1}&&\;+\;&&a_{22}x_{2}&&\;+\;\cdots \;+\;&&a_{2n}x_{n}&&\;=\;&&&b_{2}\\&&&&&&&&&&\vdots \ \;&&&\\a_{m1}x_{1}&&\;+\;&&a_{m2}x_{2}&&\;+\;\cdots \;+\;&&a_{mn}x_{n}&&\;=\;&&&b_{m}\\\end{alignedat}}} A ( u − v ) = A u − A v = b − b = 0 {\displaystyle A(\mathbf {u} -\mathbf {v} )=A\mathbf {u} -A\mathbf {v} =\mathbf {b} -\mathbf {b} =\mathbf {0} }
したがって、方程式 A x = bの任意の解は、固定された解 v と核の任意の要素 の和として表すことができます。つまり、方程式 A x = b の解集合はです
。幾何学的に言えば、これは A x = b の解集合が A の核を ベクトル v で変換したもの であることを意味します。 フレドホルム代替法 および 平坦性(幾何学) も参照してください 。 { v + x ∣ A v = b ∧ x ∈ Null ( A ) } , {\displaystyle \left\{\mathbf {v} +\mathbf {x} \mid A\mathbf {v} =\mathbf {b} \land \mathbf {x} \in \operatorname {Null} (A)\right\},}
図 以下は、行列の核の計算を簡略化した図解です(より複雑な計算に適した方法については、後述の「ガウス消去法による計算」を参照してください)。この図では、行空間と核との関係についても触れています。
行列を考えてみましょう。 この行列の核は、 R 3 のすべてのベクトル( x , y , z ) から構成され、これ
は x 、 y 、 z を含む同次 線形方程式系 として表現できます 。 A = [ 2 3 5 − 4 2 3 ] . {\displaystyle A={\begin{bmatrix}2&3&5\\-4&2&3\end{bmatrix}}.} [ 2 3 5 − 4 2 3 ] [ x y z ] = [ 0 0 ] , {\displaystyle {\begin{bmatrix}2&3&5\\-4&2&3\end{bmatrix}}{\begin{bmatrix}x\\y\\z\end{bmatrix}}={\begin{bmatrix}0\\0\end{bmatrix}},} 2 x + 3 y + 5 z = 0 , − 4 x + 2 y + 3 z = 0. {\displaystyle {\begin{aligned}2x+3y+5z&=0,\\-4x+2y+3z&=0.\end{aligned}}}
同じ線形方程式は、次のように行列形式で書くこともできます。 [ 2 3 5 0 − 4 2 3 0 ] . {\displaystyle \left[{\begin{array}{ccc|c}2&3&5&0\\-4&2&3&0\end{array}}\right].}
ガウス・ジョルダンの消去法 によって 、行列は次のように簡約されます。 [ 1 0 1 / 16 0 0 1 13 / 8 0 ] . {\displaystyle \left[{\begin{array}{ccc|c}1&0&1/16&0\\0&1&13/8&0\end{array}}\right].}
行列を方程式の形で書き直すと次のようになります。 x = − 1 16 z y = − 13 8 z . {\displaystyle {\begin{aligned}x&=-{\frac {1}{16}}z\\y&=-{\frac {13}{8}}z.\end{aligned}}}
カーネルの要素は、次のように パラメトリックベクトル形式 でさらに表現できます。 [ x y z ] = c [ − 1 / 16 − 13 / 8 1 ] ( where c ∈ R ) {\displaystyle {\begin{bmatrix}x\\y\\z\end{bmatrix}}=c{\begin{bmatrix}-1/16\\-13/8\\1\end{bmatrix}}\quad ({\text{where }}c\in \mathbb {R} )}
c は実数全体を範囲とする 自由変数 な ので、これは次のようにも表現できる。A の核は 、まさにこれらの方程式の解集合(この場合は R 3 の原点を通る 直線 )である。ここで、ベクトル (−1,−26,16) T は A の核の 基底 を構成する。したがって、 A は単一のベクトルによって張られるため、 A の零性は 1 である。 [ x y z ] = c [ − 1 − 26 16 ] . {\displaystyle {\begin{bmatrix}x\\y\\z\end{bmatrix}}=c{\begin{bmatrix}-1\\-26\\16\end{bmatrix}}.}
次のドット積はゼロです。
これは、 A のカーネル内のベクトルが A の各行ベクトルに直交していることを示しています 。 [ 2 3 5 ] [ − 1 − 26 16 ] = 0 a n d [ − 4 2 3 ] [ − 1 − 26 16 ] = 0 , {\displaystyle {\begin{bmatrix}2&3&5\end{bmatrix}}{\begin{bmatrix}-1\\-26\\16\end{bmatrix}}=0\quad \mathrm {and} \quad {\begin{bmatrix}-4&2&3\end{bmatrix}}{\begin{bmatrix}-1\\-26\\16\end{bmatrix}}=0,}
これら2つの(線形独立な)行ベクトルは、ベクトル (−1、−26、16) T に直交する平面であるA の行空間を張ります 。
A の階数が 2 、 A のヌル性が 1 、 A の次元が 3 であることから 、階数ヌル性定理の図が得られます。
例 L : R m → R n のとき、 L の核は同次 線形方程式系の 解集合である 。上図のように、 L が演算子である場合、 L の核 は方程式の解の集合である。 L ( x 1 , x 2 , x 3 ) = ( 2 x 1 + 3 x 2 + 5 x 3 , − 4 x 1 + 2 x 2 + 3 x 3 ) {\displaystyle L(x_{1},x_{2},x_{3})=(2x_{1}+3x_{2}+5x_{3},\;-4x_{1}+2x_{2}+3x_{3})} 2 x 1 + 3 x 2 + 5 x 3 = 0 − 4 x 1 + 2 x 2 + 3 x 3 = 0 {\displaystyle {\begin{alignedat}{7}2x_{1}&\;+\;&3x_{2}&\;+\;&5x_{3}&\;=\;&0\\-4x_{1}&\;+\;&2x_{2}&\;+\;&3x_{3}&\;=\;&0\end{alignedat}}} C [0,1] を区間 [0,1] 上のすべての連続実数値関数の ベクトル空間 とする と、 次の規則により L : C [0,1] → Rが定義されます。すると、 L の核は f (0.3) = 0 となる すべての関数 f ∈ C [0,1] から構成されます。 L ( f ) = f ( 0.3 ) . {\displaystyle L(f)=f(0.3).} C ∞ ( R ) をすべての無限微分可能関数 R → R のベクトル空間とし 、 D : C ∞ ( R ) → C ∞ ( R ) を微分演算子とします 。 すると 、 D の 核 は C ∞ ( R ) 内 の すべて の 関数 の うち 導 関数 が ゼロであるもの、つまりすべての 定数関数 の集合から構成されます 。 D ( f ) = d f d x . {\displaystyle D(f)={\frac {df}{dx}}.} R ∞ を R の無限個のコピーの 直積とし 、 s : R ∞ → R ∞ を シフト 演算子 とします。すると、 s の核はすべてのベクトル ( x 1 , 0, 0, 0, ...) で構成される 1 次元部分空間になります 。 s ( x 1 , x 2 , x 3 , x 4 , … ) = ( x 2 , x 3 , x 4 , … ) . {\displaystyle s(x_{1},x_{2},x_{3},x_{4},\ldots )=(x_{2},x_{3},x_{4},\ldots ).} V が 内積空間 で W が部分空間である 場合、 直交射影 V → W の核は V における W の 直交補空間 となります 。
ガウス消去法による計算 行列の核の基底はガウス消去法によって 計算 でき ます 。
この目的のために、 m × n 行列 A が与えられた場合、まず行 増加行列 を構築します。ここで、 Iは n × n 単位行列 です 。 [ A I ] , {\displaystyle {\begin{bmatrix}A\\\hline I\end{bmatrix}},}
ガウス消去法(またはその他の適切な方法)によって 列階段形式 を計算すると、 Bの対応する列が ゼロ列 である ような C の非ゼロ列で構成される行列 A のカーネルの基底が得られます 。 [ B C ] . {\displaystyle {\begin{bmatrix}B\\\hline C\end{bmatrix}}.}
実際、上側の行列が列階段形式になるとすぐに計算を停止できます。残りの計算は、上側がゼロである列によって生成されるベクトル空間の基底を変更することです。
例えば 、 A = [ 1 0 − 3 0 2 − 8 0 1 5 0 − 1 4 0 0 0 1 7 − 9 0 0 0 0 0 0 ] . {\displaystyle A={\begin{bmatrix}1&0&-3&0&2&-8\\0&1&5&0&-1&4\\0&0&0&1&7&-9\\0&0&0&0&0&0\end{bmatrix}}.} [ A I ] = [ 1 0 − 3 0 2 − 8 0 1 5 0 − 1 4 0 0 0 1 7 − 9 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 ] . {\displaystyle {\begin{bmatrix}A\\\hline I\end{bmatrix}}={\begin{bmatrix}1&0&-3&0&2&-8\\0&1&5&0&-1&4\\0&0&0&1&7&-9\\0&0&0&0&0&0\\\hline 1&0&0&0&0&0\\0&1&0&0&0&0\\0&0&1&0&0&0\\0&0&0&1&0&0\\0&0&0&0&1&0\\0&0&0&0&0&1\end{bmatrix}}.}
全体の行列に対して列演算を行って上部を階段状にすると、 [ B C ] = [ 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 3 − 2 8 0 1 0 − 5 1 − 4 0 0 0 1 0 0 0 0 1 0 − 7 9 0 0 0 0 1 0 0 0 0 0 0 1 ] . {\displaystyle {\begin{bmatrix}B\\\hline C\end{bmatrix}}={\begin{bmatrix}1&0&0&0&0&0\\0&1&0&0&0&0\\0&0&1&0&0&0\\0&0&0&0&0&0\\\hline 1&0&0&3&-2&8\\0&1&0&-5&1&-4\\0&0&0&1&0&0\\0&0&1&0&-7&9\\0&0&0&0&1&0\\0&0&0&0&0&1\end{bmatrix}}.}
B の最後の3列はゼロ列です。したがって、 C の最後の3つのベクトル は A の核の基底となります 。 [ 3 − 5 1 0 0 0 ] , [ − 2 1 0 − 7 1 0 ] , [ 8 − 4 0 9 0 1 ] {\displaystyle \left[\!\!{\begin{array}{r}3\\-5\\1\\0\\0\\0\end{array}}\right],\;\left[\!\!{\begin{array}{r}-2\\1\\0\\-7\\1\\0\end{array}}\right],\;\left[\!\!{\begin{array}{r}8\\-4\\0\\9\\0\\1\end{array}}\right]}
この方法がカーネルを計算することの証明:列演算は可逆行列による事後乗算に対応するため、 が に簡約されるということは、列階段形式 で と なる 可逆行列が存在することを意味します 。したがって 、、、 および です 。 列ベクトルが (つまり) のカーネルに属するのは、 の 場合に限ります 。 列 階段形式で がそうである ように 、 の場合に限ります。 の非ゼロ要素が のゼロ列に対応するのは、 です 。 を乗算することにより 、 が の対応する列の線形結合である 場合に限り、これが当てはまることが推測できます 。 [ A I ] {\displaystyle {\begin{bmatrix}A\\\hline I\end{bmatrix}}} [ B C ] {\displaystyle {\begin{bmatrix}B\\\hline C\end{bmatrix}}} P {\displaystyle P} [ A I ] P = [ B C ] , {\displaystyle {\begin{bmatrix}A\\\hline I\end{bmatrix}}P={\begin{bmatrix}B\\\hline C\end{bmatrix}},} B {\displaystyle B} A P = B {\displaystyle AP=B} I P = C {\displaystyle IP=C} A C = B {\displaystyle AC=B} v {\displaystyle \mathbf {v} } A {\displaystyle A} A v = 0 {\displaystyle A\mathbf {v} =\mathbf {0} } B w = 0 , {\displaystyle B\mathbf {w} =\mathbf {0} ,} w = P − 1 v = C − 1 v {\displaystyle \mathbf {w} =P^{-1}\mathbf {v} =C^{-1}\mathbf {v} } B {\displaystyle B} B w = 0 {\displaystyle B\mathbf {w} =\mathbf {0} } w {\displaystyle \mathbf {w} } B {\displaystyle B} C {\displaystyle C} v = C w {\displaystyle \mathbf {v} =C\mathbf {w} } C {\displaystyle C}
数値計算 コンピュータ上でカーネルを計算する問題は、係数の性質に依存します。
正確な係数 行列の係数が正確に与えられた数値である場合、 行列の 列階段形は、ガウス消去法よりも Bareissアルゴリズムによって効率的に計算できる。 モジュラー算術 と 中国剰余定理 を用いるとさらに効率的であり 、これにより問題は 有限体上の複数の類似問題に帰着する(これにより、整数乗算の 計算複雑性 の非線形性によって生じるオーバーヘッドを回避できる )。 [ 要出典 ]
有限体の係数に対してはガウス消去法は有効ですが、 暗号化 や グレブナー基底計算で発生する大規模な行列に対しては、 計算の複雑さは ほぼ同じで、より高速で、最新の コンピュータハードウェア でより適切に動作する、より優れたアルゴリズムが知られています 。 [ 要出典 ]
浮動小数点計算 浮動小数点数 を要素とする行列の場合 、カーネルを計算する問題は、行数がそのランクに等しい行列に対してのみ意味を持ちます。丸め誤差 のため 、 浮動小数点行列は、たとえそれがはるかに低いランクの行列の近似値であっても、ほぼ常に フルランク を持ちます。フルランク行列であっても、そのカーネルを計算するには、 条件付き、 つまり条件数 が 低い必要があります 。 [5] [ 要出典 ]
たとえ条件が適切に整えられたフルランク行列であっても、ガウス消去法は正しく動作しません。ガウス消去法では丸め誤差が大きくなり、有意な結果が得られません。行列の核の計算は同次線形方程式系の特別な例であるため、同次系を解くために設計された様々なアルゴリズムのいずれかを用いて計算できます。この目的のための最先端のソフトウェアは Lapack ライブラリです。 [ 要出典 ]
参照
注釈と参考文献 ^ Weisstein, Eric W. 「カーネル」. mathworld.wolfram.com . 2019年12月9日 閲覧 。 ^ ab "Kernel (Nullspace) | Brilliant Math & Science Wiki". brilliant.org . 2019年12月9日 閲覧 。 ^ 本稿で論じられている線形代数は、非常に確立された数学分野であり、多くの文献が存在する。本稿の内容のほぼ全ては、Lay 2005、Meyer 2001、そしてStrangの講義で参照できる。 ^ ab Weisstein, Eric W. 「Rank-Nullity Theorem」. mathworld.wolfram.com . 2019年12月9日 閲覧 。 ^ 「アーカイブコピー」 (PDF) 。 2017年8月29日時点の オリジナル (PDF)からアーカイブ。 2015年4月14日 閲覧 。 {{cite web }}: CS1 maint: archived copy as title (link )
参考文献
外部リンク ウィキブックスには「線形代数/零空間」 に関する書籍があります。