Jump to content

Kernel (linear algebra)

This is a fully translated article. Click here for more information.
From DawoumWiki, the free Mathematics self-learning

수학(mathematics)에서, 선형 맵(linear map)커널(kernel)은, 역시 널 공간(null space) 또는 널공간(nullspace)으로 알려져 있으며, 영 벡터에 매핑되는 맵의 도메인(domain)선형 부분공간(linear subspace)입니다.[1] 즉, 두 벡터 공간(vector spaces) VW 사이의 선형 맵 L : VW가 주어지면, L의 커널은 L(v) = 0을 만족하는 V의 모든 원소 v의 벡터 공간이며, 여기서 0W에서 영 벡터(zero vector)를 나타내며,[2] 또는 보다 기호적으로:

Properties

Kernel and image of a linear map L from V to W

L의 커널은 도메인 V선형 부분공간(linear subspace)입니다.[3][2] 선형 맵 에서, V의 두 원소가 W에서 같은 이미지(image)를 가지는 것과 그것들의 차이가 L의 커널 안에 놓이는 것, 즉, 다음인 것은 필요충분 조건입니다:

이것으로부터, L의 이미지는 커널에 의한 V몫(quotient)동형적(isomorphic)임이 따라옵니다: V유한-차원(finite-dimensional)인 경우에서, 이것은 랭크-널러티 정리(rank–nullity theorem)를 의미합니다: 여기서 용어 랭크(rank)는 L의 이미지의 차원, 을 참조하고, 널러티(nullity)는 L의 커널의 차원, 을 참조합니다.[4] 즉, 랭크-널러티 정리가 다음과 같이 다시 말할 수 있도록 다음이 됩니다:

V안의 곱 공간(inner product space)일 때, 몫 V에서 직교 여(orthogonal complement)로 식별될 수 있습니다. 이것은 행렬의 행 공간(row space), 또는 코이미지의 선형 연산자에 대한 일반화입니다.

Application to modules

커널의 개념은 스칼라가 필드(field)가 아닌 링(ring)의 원소인 벡터 공간의 일반화인 모듈(modules)준동형(homomorphisms)에도 의미가 있습니다. 매핑의 도메인은 모듈이며, 커널은 부분모듈(submodule)을 구성합니다. 여기서, 랭크와 널러티의 개념이 반드시 적용되는 것은 아닙니다.

In functional analysis

만약 VWW가 유한-차원임을 만족하는 토폴로지적 벡터 공간(topological vector spaces)이면, 선형 연산자 LV → W연속(continuous)인 것과 L의 커널이 V닫힌(closed) 부분공간인 것은 필요충분 조건입니다.

Representation as matrix multiplication

필드(field) K (전형적으로 또는 )에서 계수를 갖는 m × n 행렬 A로 표시되는 선형 맵을 생각해 보십시오. 그 맵은 K에 걸쳐 n 개의 성분을 갖는 열 벡터 x 위에 작용합니다. 이 선형 맵의 커널은 방정식 Ax = 0에 대한 해의 집합이며, 여기서 0영 벡터(zero vector)로 이해됩니다. A의 커널의 차원(dimension)A널러티(nullity)라고 불립니다. 집합-구성 표기법(set-builder notation)에서, 다음과 같습니다:

행렬 방정식은 동차 선형 방정식의 시스템(system of linear equations)과 동등합니다:

따라서 A의 커널은 위의 동차 방정식에 대한 해 집합과 같습니다.

Subspace properties

필드 K에 걸쳐 m × n 행렬 A의 커널은 Kn선형 부분공간(linear subspace)입니다. 즉, A의 커널, 집합 Null(A)는 다음 세 가지 속성을 가집니다:

  1. Null(A)는 항상 영 벡터(zero vector)를 포함하는데, 왜냐하면 A0 = 0.
  2. 만약 x ∈ Null(A)y ∈ Null(A)이면, x + y ∈ Null(A)입니다. 이것은 덧셈에 걸쳐 행렬 곱셈의 분배성에서 따릅니다.
  3. 만약 x ∈ Null(A)이고 c스칼라(scalar) cK이면, cx ∈ Null(A)인데, 왜냐하면 A(cx) = c(Ax) = c0 = 0.

The row space of a matrix

Ax는 다음처럼 벡터의 점 곱(dot product)의 관점에서 쓸 수 있습니다:

여기서, a1, ... , am는 행렬 A의 행을 나타냅니다. xA의 커널 안에 있는 것과 xA의 각각의 행 벡터와 직교 (또는 수직)인 것은 필요충분 조건임을 따릅니다 (왜냐하면 직교성은 0의 점 곱을 가지는 것으로 정의되기 때문입니다).

행렬 A행 공간(row space), 또는 코이미지는 A의 행 벡터의 스팬(span)입니다. 위의 추론에 의해, A의 커널은 행 공간에 대한 직교 여(orthogonal complement)입니다. 즉, 벡터 xA의 커널 안에 놓이는 것과 그것이 A의 행 공간에 있는 모든 각 벡터에 수직인 것은 필요충분 조건입니다.

A의 행 공간의 차원은 A랭크(rank)라고 불리고, A의 커널 차원은 A널러티(nullity)라고 불립니다. 이들 수량은 랭크-널러티 정리(rank–nullity theorem)에 의해 관련됩니다:[4]

Left null space

행렬 A왼쪽 널 공간( left null space), 또는 여-커널(cokernel)xTA = 0T를 만족하는 모든 열 벡터 x로 구성되며, 여기서 T는 행렬의 전치(transpose)를 나타냅니다. A의 왼쪽 널 공간은 AT의 커널과 같습니다. A의 왼쪽 널 공간은 A열 공간(column space)에 대한 직교 여이고, 결합된 선형 변환의 여-커널(cokernel)에 대해 이중입니다. A의 커널, 행 공간, 열 공간, 및 왼쪽 널 공간은 행렬 A와 결합된 네 개의 기본 부분공간(four fundamental subspaces)입니다.

Nonhomogeneous systems of linear equations

커널은 역시 비-동차 선형 방정식의 시스템에 대한 해에서 역할을 합니다:

만약 uv가 위의 방정식에 대한 두 개의 가능한 해이면, 다음입니다:

따라서, 방정식 Ax = b에 대한 임의의 두 해의 차이는 A의 커널 내에 놓입니다.

방정식 Ax = b에 대한 임의의 해는 고정된 해 v와 커널의 임의적인 원소의 합으로 표현될 수 있음을 따릅니다. 즉, 방정식 Ax = b에 대한 해 집합은 다음과 같습니다:

기하학적으로, 이것은 Ax = b에 대한 해 집합이 벡터 v에 의한 A의 커널의 평행이동(translation)임을 말합니다. 프레드홀름 대안(Fredholm alternative)플랫(flat)도 참조하십시오.

Illustration

다음은 행렬의 커널의 계산에 대한 간단한 그림입니다 (보다 복잡한 계산에 더 적합한 방법에 대해 아래의, § Computation by Gaussian elimination을 참조하십시오). 그림은 역시 행 공간과 그것의 커널과의 관계를 다룹니다.

다음 행렬을 생각해 보십시오:

이 행렬의 커널은 다음에 대해 모든 벡터 (x, y, z) ∈ R3로 구성됩니다:

이는 x, y, 및 z를 포함하는 동차 선형 방정식의 시스템(system of linear equations)으로 표현될 수 있습니다:

같은 선형 방정식은 역시 다음처럼 행렬 형식으로 쓸 수 있습니다:

가우스-요르단 소거법(Gauss-Jordan elimination)을 통해, 그 행렬은 다음으로 줄어들 수 있습니다:

방정식 형태로 행렬을 다시 작성하면 다음을 산출합니다:

커널의 원소는 다음과 같이 매개변수 형식으로 나아가서 표현될 수 있습니다:

c는 모든 실수에 걸쳐 자유 변수(free variable)이므로, 마찬가지로 다음처럼 같게 표현될 수 있습니다:

A의 커널은 정확하게 이들 방정식에 대한 해 집합입니다 (이 경우에서, R3에서 원점을 통과하는 직선). 여기서, 벡터 (−1,−26,16)TA의 커널의 기저(basis)를 구성하므로, A의 널러티는 1입니다.

다음 점 곱은 영입니다:

이는 A의 커널에 있는 벡터가 A의 각각의 행 벡터와 직교함을 보여줍니다.

이들 두 개의 (선형적으로 독립) 행 벡터는 A의 행 공간—벡터 (−1,−26,16)T에 직교하는 평면을 스팬합니다.

A의 랭크 2, A의 널러티 1, 및 A의 차원 3과 함께, 랭크-널러티 정리를 설명할 수 있습니다.

Examples

  • 만약 L: RmRn이면, L의 커널은 동차 선형 방정식의 시스템(system of linear equations)의 해 집합입니다. 위의 그림에서와 같이, 만약 L이 연산자이면: L의 커널은 다음 방정식에 대한 해의 집합입니다:
  • C[0,1]가 구간 [0,1] 위에 모든 연속 실수-값 함수의 벡터 공간(vector space)을 나타낸다고 놓고, 다음 규칙에 의해 L: C[0,1] → R를 정의합니다: 그런-다음 L의 커널은 f(0.3) = 0인 모든 함수 fC[0,1]로 구성됩니다.
  • C(R)를 모든 무한하게 미분-가능 함수 RR의 벡터 공간으로 놓고, D: C(R) → C(R)미분 연산자(differentiation operator)라고 놓습니다: 그런-다음 D의 커널은 C(R)에서 그것의 도함수가 영인 모든 함수, 즉, 모든 연속 함수(constant functions)의 집합으로 구성됩니다.
  • RR의 무한하게 많은 복사본의 직접 곱(direct product)으로 놓고, s: RR미는 연산자(shift operator)라고 놓습니다: 그런-다음 s의 커널은 모든 벡터 (x1, 0, 0, 0, ...)로 구성되는 일-차원 부분공간입니다.
  • 만약 V안의 곱 공간(inner product space)이고 W가 부분공간이면, 직교 투영(orthogonal projection) VW의 커널은 V에서 W에 대한 직교 여(orthogonal complement)입니다.

Computation by Gaussian elimination

행렬의 커널의 기저(basis)가우스 소거법(Gaussian elimination)에 의해 계산될 수 있습니다.

이 목적을 위해, m × n 행렬 A가 주어지면, 우리는 먼저 증가된 행렬(augmented matrix) 을 구성하며, 여기서 In × n 항등 행렬(identity matrix)입니다.

가우스 소거법 (또는 임의의 다른 적절한 방법)에 의해 그것의 열 사다리꼴(column echelon form)을 계산하면, 우리는 행렬 를 얻습니다. A의 커널의 기저는 B의 대응하는 열이 영 열(zero column)임을 만족하는 C의 비-영 열로 구성됩니다.

사실, 위쪽 행렬이 열 사다리꼴이 되는 즉시 계산이 중지될 수 있습니다: 계산의 남아있는 부분은 위쪽 부분이 영인 열에 의해 생성된 벡터 공간의 기저를 변경하는 것으로 구성됩니다.

예를 들어, 다음임을 가정합니다:

그런-다음

전체 행렬 위에 열 연산에 의해 위쪽 부분을 열 사다리꼴로 넣으면 다음을 제공합니다:

B의 마지막 세 개 열은 영 열입니다. 그러므로, C의 세 개의 마지막 벡터는 A의 커널의 기저입니다:

그 방법이 커널을 계산한다는 것을 증명: 열 연산은 역-가능 행렬에 의해 후-곱셈에 해당하므로, 로 감소한다는 사실은 를 만족하는 역-가능 행렬 가 존재함을 의미하며, 열에서 는 사다리꼴 형식입니다. 따라서 입니다. 열 벡터 의 커널에 속하는 것 (즉, )과 인 것은 필요충분 조건이며, 여기서 입니다. 가 열 사다리꼴 형식에 있으므로, 인 것과 의 비-영 엔트리가 의 영 열에 해당하는 것은 필요충분 조건입니다. 를 곱함으로써, 이것이 그 경우인 것과 의 해당하는 열의 선형 조합인 것은 필요충분 조건임을 추론할 수 있습니다.

Numerical computation

컴퓨터에서 커널을 계산하는 문제는 계수의 본성에 따라 다릅니다.

Exact coefficients

만약 행렬의 계수가 정확하게 주어진 숫자이면, 행렬의 열 사다리꼴 형식(column echelon form)은 가우스 소거법보다 더 효율적으로 버라이스 알고리듬(Bareiss algorithm)에 의해 계산될 수 있습니다. 모듈러 산술(modular arithmetic)중국 나머지 정리(Chinese remainder theorem)를 사용하는 것이 훨씬 더 효율적이며, 이는 유한 필드(finite fields)에 걸쳐 몇 가지 유사한 문제로 문제를 줄입니다 (이것은 정수 곱셈의 계산 복잡성의 비-선형성으로 인한 간접비용을 방지합니다).

유한 필드에서 계수에 대해, 가우스 소거법이 잘 작동하지만, 암호화(cryptography)그뢰브너 기저(Gröbner basis) 계산에서 발생하는 큰 행렬에 대해, 더 나은 알고리듬이 알려져 있으며, 이는 대략적으로 같은 계산 복잡성(computational complexity)을 가지지만, 최신 컴퓨터 하드웨어에서 더 빠르고 더 잘 작동합니다.

Floating point computation

엔트리가 부동-점 숫자(floating-point numbers)인 행렬에 대해, 커널을 계산하는 문제는 행 숫자가 그것들의 랭크와 같은 행렬에 대해서만 의미가 있습니다: 반올림 오차(rounding errors)로 인해, 부동-점 행렬은 거의 항상 완전한 랭크(full rank)를 가지며, 훨씬 더 작은 랭크의 행렬의 근사치인 경우에도 마찬가지입니다. 심지어 완전한-랭크 행렬에 대해, 그것이 좋은 조건부(well conditioned), 즉, 그것이 낮은 조건 숫자를 가지는 경우에만 커널을 계산할 수 있습니다.[5]

심지어 좋은 조건부 완전한 랭크 행렬에 대해, 가우스 소거법은 올바르게 작동하지 않습니다: 그것은 중요한 결과를 얻기에는 너무 큰 반올림 오차를 도입합니다. 행렬의 커널 계산은 동차 선형 방정식의 시스템을 푸는 특별한 경우이므로, 커널은 동차 시스템을 풀도록 설계된 임의의 다양한 알고리듬으로 계산될 수 있습니다. 이러한 목적을 위한 최첨단 소프트웨어는 Lapack 라이브러리입니다.

See also

Notes and references

  1. ^ Weisstein, Eric W. "Kernel". mathworld.wolfram.com. Retrieved 2019-12-09.
  2. ^ a b "Kernel (Nullspace) | Brilliant Math & Science Wiki". brilliant.org. Retrieved 2019-12-09.
  3. ^ Linear algebra, as discussed in this article, is a very well established mathematical discipline for which there are many sources. Almost all of the material in this article can be found in Lay 2005, Meyer 2001, and Strang's lectures.
  4. ^ a b Weisstein, Eric W. "Rank-Nullity Theorem". mathworld.wolfram.com. Retrieved 2019-12-09.
  5. ^ "Archived copy" (PDF). Archived from the original (PDF) on 2017-08-29. Retrieved 2015-04-14.{{cite web}}: CS1 maint: archived copy as title (link)

Bibliography

External links