오늘은 determinant에 대해서 알아보도록 하겠습니다. determinant는 행렬의 특성을 나타내는 어떤 값입니다.
먼저 위키피디아의 정의를 한 번 보겠습니다.
선형대수학에서 행렬식(determinant)은 정사각 행렬에 스칼라를 대응시키는 함수의 하나이다. 실수 정사각 행렬의 행렬식의 절댓값은 그 행렬이 나타내는 선형변환이 초부피를 확대시키는 배수를 나타내며, 행렬식의 부호는 방향 보존 여부를 뜻한다.
정의에 따라 determinant는 오직 ((n)) x ((n))행렬, 즉 정사각 행렬에서만 정의됩니다.
이 정의가 무슨 뜻인지에 대해서 오늘 이해를 한 번 해보도록 하겠습니다.
정사각 행렬에 스칼라를 대응시키는 함수
determinant는 하나의 숫자(스칼라)값입니다. 그렇다면 이 값을 어떻게 구하는 것인가, 다항식으로 구합니다.
어떤 행렬 A의 determinant는 ((det(A)))라고 표현하기도 하고, 아래의 사진처럼 행렬의 괄호를 직선으로 나타내어 표기할 수도 있습니다.
먼저 2 x 2 행렬의 determinant를 구하는 방법을 보여드리겠습니다.

3 x 3 행렬은 다음과 같습니다.

0 x 0 행렬과 1 x 1 행렬의 determinant는 다음과 같습니다.

이렇게 determinant를 구할 수 있습니다.
Determinant의 기하학적 해석
그럼 도대체 이 determinant는 무엇을 뜻하는 걸까요? 바로 어떤 행렬이 공간을 얼마나 늘리거나 줄이는지에 대한 수치를 알려줍니다.
매우 중요한 insight입니다. 행렬은 Linear transformation이라고 했습니다. 행렬은 공간을, 기저벡터를 변화시킵니다. determinant의 기하학적 해석 관점은 바로 어떤 행렬(변환)이 얼만큼 변화시켰는가에 대한 답입니다.
예시를 들어보겠습니다. 다음과 같은 matrix가 있다고 해보겠습니다.
\begin{bmatrix}
3 & 0\\
2 & 2
\end{bmatrix}
이 matrix의 determinant 값은 ((3))x((2)) + ((2))x((0))으로, 6입니다.
행렬식을 눈으로 한 번 봐보겠습니다.
먼저 우리가 흔하게 생각하는, basis가 ((\begin{bmatrix}
1\\
0
\end{bmatrix})), ((\begin{bmatrix}
0\\
1
\end{bmatrix}))인 공간을 보겠습니다. 그리고 이 공간에 있는 어떤 면적을 A라고 해보겠습니다. 여기에 ((\begin{bmatrix}
3 & 0\\
2 & 2
\end{bmatrix}))이 어떤 변화를 가하는지 보겠습니다.

행렬은 기저벡터에 변화를 가한다고 생각할 수 있습니다. 그렇다면 지금 우리의 기저벡터를 행렬의 좌표대로 움직였을 때 A의 넓이가 어떻게 달라지는지 보겠습니다.

위 행렬대로 변화를 가해보니 A의 넓이가 6배가 되었습니다. 이제 '실수 정사각 행렬의 행렬식의 절댓값은 그 행렬이 나타내는 선형변환이 초부피를 확대시키는 배수를 나타내며' 라는 말이 조금 이해가 가시나요?
어떤 행렬의 determinant의 절댓값은 그 행렬이 나타내는 Linear transformation이 단위부피를 확대시키는 배수를 나타냅니다.
그런데 왜 절댓값일까요?
Determinant의 부호
determinant가 음수가 될 수도 있을까요?
((det \ (\begin{bmatrix}
3 & 0\\
2 & 2
\end{bmatrix}))) = ((-2)) 입니다.
아, 계산하면 음수가 나오니까 determinant가 음수가 나오는구나, 하실 수 있습니다. 하지만 우리가 공간을 어떻게 -2배만큼 늘릴 수 있을까요? 직관적으로 와닿지 않으실 겁니다.
determinant의 부호가 음수라는 것은, 공간이 뒤집혔다는 뜻입니다. 좌우반전 처럼 말입니다.

행렬식이 0일 때( det(A) = 0 )
위에서 determinant가 어떤 행렬의 변환으로 인해 단위 공간의 부피가 얼만큼 배가 되었는지로 이해하셨다면, 이제 가장 중요한 경우인 determinant가 0일 때를 보실 수 있습니다.
2차원 그리드에서는 단위면적으로 1x1 정사각형을 보셨으니, 이번에는 3차원 공간에서 단위부피로 1x1x1 정육면체를 보겠습니다. 아래는 determinant가 0일 때 일어나는 상황입니다.

'공간이 찌부러' 집니다.
가장 머리 속에 오래 남는 말이었습니다. 행렬식이 0인 경우 basis들이 span하는 공간 자체가 찌부러집니다. 그리고 위 영상에서 볼 수 있듯이 빨간색 벡터와 초록색 벡터를 Linear combination하면 하늘색 벡터가 나올 수 있음을 직관적으로 볼 수 있습니다. 그렇기에 determinant가 0이라는 뜻은 Matrix have dependent columns, 즉 행렬 내에 dependent한 column이 있다는 뜻입니다.
이는 역행렬과도 관련이 있는데, 역행렬은 아직 다루지 않았기에 일단은 지금처럼 ((det\ (A))) = ((0)), 즉 공간을 압축시켜버리는 변화는 다시 그대로 되돌릴 수 없다고만 직관적으로 알아두시면 좋을 것 같습니다. 그럼 다음은 역행렬에 관한 게시물로 뵙도록 하겠습니다.
'선형대수' 카테고리의 다른 글
Solving ((A))((x)) ((=)) ((b)) (When ((n)) x ((n))) - part 1 (1) | 2024.01.22 |
---|---|
Inverse Matrix(역행렬) (0) | 2024.01.18 |
CR Factorization (0) | 2024.01.18 |
행렬의 곱셈(Matrix-Matrix Multiplication) (0) | 2024.01.17 |
행렬(Matrix)의 Rank (0) | 2024.01.16 |
오늘은 determinant에 대해서 알아보도록 하겠습니다. determinant는 행렬의 특성을 나타내는 어떤 값입니다.
먼저 위키피디아의 정의를 한 번 보겠습니다.
선형대수학에서 행렬식(determinant)은 정사각 행렬에 스칼라를 대응시키는 함수의 하나이다. 실수 정사각 행렬의 행렬식의 절댓값은 그 행렬이 나타내는 선형변환이 초부피를 확대시키는 배수를 나타내며, 행렬식의 부호는 방향 보존 여부를 뜻한다.
정의에 따라 determinant는 오직 ((n)) x ((n))행렬, 즉 정사각 행렬에서만 정의됩니다.
이 정의가 무슨 뜻인지에 대해서 오늘 이해를 한 번 해보도록 하겠습니다.
정사각 행렬에 스칼라를 대응시키는 함수
determinant는 하나의 숫자(스칼라)값입니다. 그렇다면 이 값을 어떻게 구하는 것인가, 다항식으로 구합니다.
어떤 행렬 A의 determinant는 ((det(A)))라고 표현하기도 하고, 아래의 사진처럼 행렬의 괄호를 직선으로 나타내어 표기할 수도 있습니다.
먼저 2 x 2 행렬의 determinant를 구하는 방법을 보여드리겠습니다.

3 x 3 행렬은 다음과 같습니다.

0 x 0 행렬과 1 x 1 행렬의 determinant는 다음과 같습니다.

이렇게 determinant를 구할 수 있습니다.
Determinant의 기하학적 해석
그럼 도대체 이 determinant는 무엇을 뜻하는 걸까요? 바로 어떤 행렬이 공간을 얼마나 늘리거나 줄이는지에 대한 수치를 알려줍니다.
매우 중요한 insight입니다. 행렬은 Linear transformation이라고 했습니다. 행렬은 공간을, 기저벡터를 변화시킵니다. determinant의 기하학적 해석 관점은 바로 어떤 행렬(변환)이 얼만큼 변화시켰는가에 대한 답입니다.
예시를 들어보겠습니다. 다음과 같은 matrix가 있다고 해보겠습니다.
\begin{bmatrix}
3 & 0\\
2 & 2
\end{bmatrix}
이 matrix의 determinant 값은 ((3))x((2)) + ((2))x((0))으로, 6입니다.
행렬식을 눈으로 한 번 봐보겠습니다.
먼저 우리가 흔하게 생각하는, basis가 ((\begin{bmatrix}
1\\
0
\end{bmatrix})), ((\begin{bmatrix}
0\\
1
\end{bmatrix}))인 공간을 보겠습니다. 그리고 이 공간에 있는 어떤 면적을 A라고 해보겠습니다. 여기에 ((\begin{bmatrix}
3 & 0\\
2 & 2
\end{bmatrix}))이 어떤 변화를 가하는지 보겠습니다.

행렬은 기저벡터에 변화를 가한다고 생각할 수 있습니다. 그렇다면 지금 우리의 기저벡터를 행렬의 좌표대로 움직였을 때 A의 넓이가 어떻게 달라지는지 보겠습니다.

위 행렬대로 변화를 가해보니 A의 넓이가 6배가 되었습니다. 이제 '실수 정사각 행렬의 행렬식의 절댓값은 그 행렬이 나타내는 선형변환이 초부피를 확대시키는 배수를 나타내며' 라는 말이 조금 이해가 가시나요?
어떤 행렬의 determinant의 절댓값은 그 행렬이 나타내는 Linear transformation이 단위부피를 확대시키는 배수를 나타냅니다.
그런데 왜 절댓값일까요?
Determinant의 부호
determinant가 음수가 될 수도 있을까요?
((det \ (\begin{bmatrix}
3 & 0\\
2 & 2
\end{bmatrix}))) = ((-2)) 입니다.
아, 계산하면 음수가 나오니까 determinant가 음수가 나오는구나, 하실 수 있습니다. 하지만 우리가 공간을 어떻게 -2배만큼 늘릴 수 있을까요? 직관적으로 와닿지 않으실 겁니다.
determinant의 부호가 음수라는 것은, 공간이 뒤집혔다는 뜻입니다. 좌우반전 처럼 말입니다.

행렬식이 0일 때( det(A) = 0 )
위에서 determinant가 어떤 행렬의 변환으로 인해 단위 공간의 부피가 얼만큼 배가 되었는지로 이해하셨다면, 이제 가장 중요한 경우인 determinant가 0일 때를 보실 수 있습니다.
2차원 그리드에서는 단위면적으로 1x1 정사각형을 보셨으니, 이번에는 3차원 공간에서 단위부피로 1x1x1 정육면체를 보겠습니다. 아래는 determinant가 0일 때 일어나는 상황입니다.

'공간이 찌부러' 집니다.
가장 머리 속에 오래 남는 말이었습니다. 행렬식이 0인 경우 basis들이 span하는 공간 자체가 찌부러집니다. 그리고 위 영상에서 볼 수 있듯이 빨간색 벡터와 초록색 벡터를 Linear combination하면 하늘색 벡터가 나올 수 있음을 직관적으로 볼 수 있습니다. 그렇기에 determinant가 0이라는 뜻은 Matrix have dependent columns, 즉 행렬 내에 dependent한 column이 있다는 뜻입니다.
이는 역행렬과도 관련이 있는데, 역행렬은 아직 다루지 않았기에 일단은 지금처럼 ((det\ (A))) = ((0)), 즉 공간을 압축시켜버리는 변화는 다시 그대로 되돌릴 수 없다고만 직관적으로 알아두시면 좋을 것 같습니다. 그럼 다음은 역행렬에 관한 게시물로 뵙도록 하겠습니다.
'선형대수' 카테고리의 다른 글
Solving ((A))((x)) ((=)) ((b)) (When ((n)) x ((n))) - part 1 (1) | 2024.01.22 |
---|---|
Inverse Matrix(역행렬) (0) | 2024.01.18 |
CR Factorization (0) | 2024.01.18 |
행렬의 곱셈(Matrix-Matrix Multiplication) (0) | 2024.01.17 |
행렬(Matrix)의 Rank (0) | 2024.01.16 |