행렬
1. 개요
1. 개요
행렬은 수나 문자를 직사각형 모양으로 배열한 것을 말한다. 이 배열은 행과 열이라는 두 가지 방향으로 구성되며, 각 위치에 있는 값을 성분 또는 원소라고 부른다. 행렬의 크기는 행의 개수와 열의 개수로 표현되며, m개의 행과 n개의 열을 가진 행렬은 m × n 행렬이라고 표기한다.
행렬은 일반적으로 대문자 A, B, C 등으로 표시하거나, 성분을 나타내는 (a_{ij})와 같은 기호로도 나타낸다. 여기서 i는 행의 번호, j는 열의 번호를 의미한다. 행렬은 선형대수학의 핵심적인 도구로서, 다양한 수학적 연산과 응용의 기초가 된다.
행렬의 주요 연산에는 덧셈, 스칼라곱, 행렬곱, 그리고 전치가 있다. 덧셈과 스칼라곱은 비교적 직관적인 연산인 반면, 행렬곱은 선형 변환의 합성을 표현하는 중요한 연산이다. 전치 연산은 행렬의 행과 열을 서로 바꾸는 작업이다.
이러한 연산을 바탕으로 행렬은 연립 일차 방정식의 풀이, 기하학적 선형 변환의 표현, 그리고 컴퓨터 과학과 데이터 과학을 포함한 수많은 과학 및 공학 분야에서 광범위하게 활용된다.
2. 정의와 표기
2. 정의와 표기
행렬은 수나 문자, 함수 등을 직사각형 모양으로 배열한 것을 말한다. 이때 가로줄을 행, 세로줄을 열이라고 부르며, 행렬 안에 배열된 개별 값은 성분 또는 원소라고 한다. 행렬의 크기는 행의 개수와 열의 개수로 표현하며, m개의 행과 n개의 열을 가진 행렬은 m × n 행렬이라고 읽는다.
행렬은 일반적으로 알파벳 대문자 A, B, C 등으로 표기한다. 행렬의 각 성분은 행 번호 i와 열 번호 j를 아래첨자로 표시하여 a_{ij}와 같이 나타낸다. 예를 들어, 2행 3열에 위치한 성분은 a_{23}이 된다. 행렬 전체를 성분 표기법으로 간단히 나타낼 때는 (a_{ij})와 같이 쓰기도 한다.
행렬은 선형대수학의 핵심적인 연구 대상으로, 벡터의 집합을 다루는 데 유용한 도구이다. 행렬을 통해 선형 방정식계를 간결하게 표현하거나, 선형 변환을 수학적으로 기술하는 것이 가능해진다. 행렬에 적용되는 주요 연산으로는 행렬 덧셈, 스칼라곱, 행렬 곱셈, 전치 등이 있다.
3. 기본 연산
3. 기본 연산
3.1. 덧셈과 스칼라곱
3.1. 덧셈과 스칼라곱
같은 크기의 행렬끼리는 덧셈과 뺄셈이 가능하다. 두 행렬 A와 B가 모두 m행 n열일 때, 두 행렬의 합 A+B는 대응하는 성분끼리 더하여 얻어진다. 즉, (A+B)의 i행 j열 성분은 A의 i행 j열 성분과 B의 i행 j열 성분의 합이다. 마찬가지로 뺄셈 A-B는 대응하는 성분끼리 빼서 계산한다.
행렬에 스칼라를 곱하는 연산을 스칼라곱 또는 스칼라 배라고 한다. 행렬 A의 각 성분에 스칼라 k를 곱한 결과가 스칼라곱 kA이다. 이는 행렬 A의 모든 성분을 k배하는 것과 같다. 예를 들어, 모든 성분이 1인 행렬에 스칼라 2를 곱하면 모든 성분이 2가 된다.
덧셈과 스칼라곱은 벡터 공간을 정의하는 기본 연산이며, 행렬의 집합이 이러한 연산에 대해 닫혀 있을 때 벡터 공간의 구조를 가진다. 이 연산들은 교환 법칙과 결합 법칙을 만족하며, 스칼라곱은 덧셈에 대해 분배 법칙이 성립한다.
3.2. 행렬 곱셈
3.2. 행렬 곱셈
행렬 곱셈은 두 개의 행렬을 조합하여 새로운 행렬을 생성하는 연산이다. 이 연산은 선형 변환의 합성을 자연스럽게 표현하며, 선형 대수학의 핵심 연산 중 하나이다. 행렬 곱셈은 일반적인 곱셈과 달리 교환 법칙이 성립하지 않는다는 점이 특징이다. 즉, 행렬 A와 B에 대해 AB와 BA는 일반적으로 같지 않다.
행렬 곱셈은 왼쪽 행렬의 행과 오른쪽 행렬의 열의 내적을 계산하는 방식으로 이루어진다. 구체적으로, 행렬 A가 m × n 크기이고, 행렬 B가 n × p 크기일 때, 두 행렬의 곱 AB는 m × p 크기의 행렬이 된다. 이때 곱셈이 정의되기 위해서는 A의 열의 개수와 B의 행의 개수가 같아야 한다. 결과 행렬의 (i, j) 성분은 A의 i번째 행과 B의 j번째 열의 대응하는 성분들을 곱한 후 모두 더한 값이다.
이 연산은 선형 방정식 시스템을 간결하게 표현하거나, 컴퓨터 그래픽스에서 회전 변환과 확대 축소 변환을 연속적으로 적용할 때, 그리고 인공 신경망에서 가중치와 입력을 결합할 때 등 다양한 분야에서 필수적으로 사용된다. 행렬 곱셈의 이러한 특성은 선형대수를 응용하는 물리학, 공학, 컴퓨터 과학 및 데이터 과학의 기초를 이룬다.
3.3. 전치 행렬
3.3. 전치 행렬
행렬의 전치 행렬은 원래 행렬의 행과 열을 서로 바꾸어 얻는 새로운 행렬이다. 행렬 A의 전치 행렬은 보통 A^T, A^t, 또는 A'로 표기한다. 만약 행렬 A의 크기가 m × n이라면, 그 전치 행렬 A^T의 크기는 n × m이 된다. 즉, A의 i행 j열 성분이 A^T에서는 j행 i열 성분이 된다.
전치 연산은 몇 가지 중요한 성질을 가진다. 먼저, 행렬의 전치를 두 번 취하면 원래 행렬로 돌아온다. 즉, (A^T)^T = A이다. 또한, 행렬 덧셈과 스칼라곱에 대해 전치 연산은 분배 법칙을 따르며, 행렬 곱셈의 경우에는 (AB)^T = B^T A^T와 같이 곱의 순서가 바뀐다. 이 성질은 선형대수학에서 중요한 역할을 한다.
전치 연산을 통해 정의되는 특수한 행렬들이 있다. 예를 들어, 대칭 행렬은 자신의 전치 행렬과 같은 행렬(A^T = A)이며, 반대칭 행렬은 자신의 전치 행렬에 음수를 취한 것과 같은 행렬(A^T = -A)이다. 또한, 직교 행렬은 자신의 전치 행렬이 역행렬과 같은 행렬(A^T = A^{-1})로 정의된다.
전치 행렬은 선형 변환의 표현을 변환하거나, 내적 공간에서 쌍대 공간과 관련된 연산을 정의하는 데 사용된다. 통계학과 데이터 과학에서는 공분산 행렬이 대칭 행렬이라는 성질 때문에, 기계 학습에서는 경사 하강법 등에서 도함수를 행렬 형태로 표현할 때 전치 연산이 빈번하게 활용된다.
4. 특수한 행렬
4. 특수한 행렬
4.1. 정방행렬
4.1. 정방행렬
정방행렬은 행의 개수와 열의 개수가 같은 행렬을 말한다. 즉, 크기가 n × n인 행렬이다. 이는 행렬의 중요한 분류 중 하나로, 정사각행렬이라고도 불린다. 정방행렬은 행렬식과 역행렬의 개념이 정의되는 기본적인 대상이며, 선형 변환을 표현할 때도 핵심적인 역할을 한다.
정방행렬의 대각선, 즉 왼쪽 위에서 오른쪽 아래로 이어지는 대각선을 주대각선이라고 한다. 주대각선 위에 위치한 성분들은 행 번호와 열 번호가 같은 원소들이다. 이 주대각선을 기준으로 행렬의 여러 특성이 결정된다. 예를 들어, 주대각선을 제외한 모든 성분이 0인 정방행렬을 대각행렬이라고 한다.
정방행렬의 주요 예시로는 단위행렬이 있다. 단위행렬은 주대각선의 모든 성분이 1이고, 나머지 성분은 모두 0인 정방행렬이다. 이는 실수에서의 곱셈 항등원인 1과 유사한 역할을 하여, 행렬 곱셈의 항등원이 된다. 또한, 대칭행렬과 반대칭행렬도 모두 정방행렬의 특수한 형태에 속한다.
정방행렬은 선형대수학의 여러 이론과 응용 분야에서 기본이 된다. 고유값과 고유벡터는 정방행렬에 대해서만 정의되며, 이는 행렬의 대각화와 깊은 연관이 있다. 또한 컴퓨터 그래픽스의 회전 변환이나 데이터 과학의 공분산 행렬과 같은 다양한 응용에서도 정방행렬이 자주 등장한다.
4.2. 대각행렬과 단위행렬
4.2. 대각행렬과 단위행렬
대각행렬은 주대각선을 제외한 모든 성분이 0인 정방행렬이다. 즉, i ≠ j일 때 성분 a_{ij} = 0인 행렬을 의미한다. 대각행렬은 주대각선 상의 값들만으로 구성되며, 행렬의 덧셈과 곱셈 연산이 매우 단순해지는 특징이 있다. 특히 두 대각행렬을 곱하면 그 결과도 대각행렬이 되며, 결과 행렬의 주대각선 성분은 각각의 대각 성분을 곱한 값이 된다.
대각행렬의 특별한 경우로 모든 주대각선 성분이 1인 행렬을 단위행렬이라고 한다. 단위행렬은 보통 기호 I 또는 E로 표시하며, 행렬 곱셈에서 1과 같은 역할을 한다. 즉, 임의의 행렬 A에 대해 A I = I A = A가 성립한다. 단위행렬은 역행렬을 정의하는 데 핵심적인 개념이 되며, 선형 변환에서 항등 변환에 해당한다.
대각행렬과 단위행렬은 선형대수학의 여러 분야에서 널리 활용된다. 선형 방정식 시스템을 풀거나, 행렬식을 계산할 때, 또는 고유값과 고유벡터를 다룰 때 중요한 도구로 사용된다. 또한 컴퓨터 과학과 데이터 과학에서 알고리즘의 효율성을 높이기 위해 복잡한 행렬 연산을 대각행렬 연산으로 단순화시키는 경우가 많다.
4.3. 대칭행렬과 반대칭행렬
4.3. 대칭행렬과 반대칭행렬
대칭행렬은 정방행렬 중에서 전치 행렬이 자신과 같은 행렬이다. 즉, 행렬 A가 A^T = A를 만족하면 대칭행렬이다. 이는 행렬의 주대각선을 기준으로 대칭인 위치에 있는 성분들이 서로 같다는 것을 의미한다. 대칭행렬은 물리학과 공학에서 관성 텐서나 인접 행렬 등 다양한 분야에 자주 등장한다.
반면 반대칭행렬 또는 교대행렬은 전치 행렬이 자신의 음수가 되는 정방행렬이다. 즉, A^T = -A를 만족한다. 이 성질로 인해 주대각선상의 모든 성분은 0이 되고, 주대각선을 기준으로 대칭인 위치의 성분들은 절댓값이 같고 부호가 반대가 된다. 반대칭행렬은 벡터의 외적이나 회전을 표현하는 데 사용된다.
모든 정방행렬은 하나의 대칭행렬과 하나의 반대칭행렬의 합으로 유일하게 분해할 수 있다. 이는 행렬 이론에서 중요한 성질 중 하나이다. 이러한 분해는 선형대수학의 여러 문제를 해결하거나 복잡한 행렬을 분석할 때 유용하게 활용된다.
5. 행렬식과 역행렬
5. 행렬식과 역행렬
행렬식은 정방행렬에 대응되는 하나의 스칼라 값이다. 행렬 A의 행렬식은 det(A) 또는 |A|로 표기한다. 행렬식은 해당 행렬이 가역적인지, 즉 역행렬이 존재하는지를 판별하는 결정적인 기준이 된다. 행렬식의 값이 0이 아닐 때 그 행렬은 가역행렬이며, 행렬식이 0이면 특이행렬로 역행렬이 존재하지 않는다. 2×2 행렬과 3×3 행렬에 대한 행렬식 계산은 비교적 간단한 공식으로 이루어지지만, 그 이상의 고차 정방행렬의 행렬식은 소행렬식과 여인자를 이용한 라플라스 전개 등의 방법으로 계산한다.
역행렬은 정방행렬 A에 대해, A와 곱했을 때 단위행렬 I가 나오는 행렬을 의미하며, A^{-1}로 표기한다. 즉, A A^{-1} = A^{-1} A = I의 관계를 만족한다. 역행렬을 구하는 방법에는 여러 가지가 있다. 대표적으로 가우스 소거법을 활용한 방법과, 수반행렬을 이용한 공식 A^{-1} = (1/det(A)) adj(A)이 있다. 후자의 방법은 이론적으로 중요하지만, 실제 계산 효율성 측면에서는 고차원 행렬에 적용하기 어렵다는 단점이 있다.
행렬식과 역행렬은 선형대수학의 핵심 개념으로, 선형 방정식계를 푸는 데 직접적으로 활용된다. 크래머 법칙은 계수 행렬의 행렬식을 이용해 방정식의 해를 표현하는 방법을 제공한다. 또한, 행렬식은 선형 변환의 기하학적 성질을 해석하는 데에도 쓰인다. 예를 들어, 선형 변환을 나타내는 행렬의 행렬식의 절댓값은 해당 변환이 공간을 얼마나 확대 또는 축소하는지를 나타내는 배율 역할을 한다.
6. 응용 분야
6. 응용 분야
6.1. 선형 방정식 풀이
6.1. 선형 방정식 풀이
행렬은 선형 방정식 시스템을 표현하고 해결하는 데 핵심적인 도구이다. 연립일차방정식은 각 방정식의 계수와 상수항을 행렬 형태로 간결하게 나타낼 수 있다. 예를 들어, 여러 개의 미지수와 방정식으로 이루어진 시스템은 계수 행렬과 상수 벡터를 통해 확대 행렬로 표현된다.
이러한 행렬 표현을 바탕으로 가우스 소거법이나 가우스-조르단 소거법과 같은 체계적인 알고리즘을 적용하여 방정식의 해를 구할 수 있다. 이 과정은 기본 행 연산을 통해 행렬을 행 사다리꼴이나 기약 행 사다리꼴 형태로 변환하는 것을 포함하며, 이를 통해 해의 존재 여부(유일해, 무수히 많은 해, 해 없음)를 판별하고 해를 직접 구할 수 있다.
더 나아가, 행렬식이 0이 아닌 정사각 행렬의 경우 역행렬을 계산할 수 있다. 연립방정식이 Ax = b 형태로 주어졌을 때, 양변에 역행렬 A⁻¹을 곱하면 x = A⁻¹b와 같이 해를 직접 구하는 공식을 얻을 수 있다. 이는 이론적으로 중요하며, 크래머 공식과 같은 다른 해법의 기초가 된다.
따라서 행렬을 이용한 선형 방정식 풀이는 선형대수학의 근간을 이루며, 공학, 경제학, 물리학 등 수학이 적용되는 거의 모든 분야에서 문제를 모델링하고 해결하는 표준적인 방법으로 자리 잡고 있다.
6.2. 선형 변환
6.2. 선형 변환
행렬은 선형 변환을 표현하는 강력한 도구이다. 선형 변환은 벡터 공간에서 벡터를 다른 벡터로 대응시키는 함수로서, 벡터의 덧셈과 스칼라곱 연산을 보존하는 특성을 가진다. 임의의 선형 변환은 특정 기저에 대한 행렬로 유일하게 표현될 수 있으며, 이때 변환의 작용은 행렬과 벡터의 곱셈 연산으로 계산된다.
구체적으로, 두 유클리드 공간 R^n과 R^m 사이의 선형 변환 T가 주어졌을 때, R^n의 표준 기저에 대한 T의 상을 열벡터로 나열하면 m × n 행렬 A가 만들어진다. 그러면 임의의 벡터 x ∈ R^n에 대한 변환 결과 T(x)는 단순히 행렬-벡터 곱 A x로 얻어진다. 이 표현은 선형 방정식 시스템을 푸는 것과 본질적으로 같으며, 복잡한 변환을 단순한 대수적 계산으로 처리할 수 있게 해준다.
행렬 표현을 통해 선형 변환의 합성과 역변환도 쉽게 다룰 수 있다. 두 변환 T와 S를 연이어 적용하는 합성 변환 S∘T는 두 변환에 대응하는 행렬 B와 A의 곱 BA에 해당한다. 또한, 변환이 가역적이라면 그 역변환은 대응 행렬의 역행렬에 의해 표현된다. 이러한 대응 관계 덕분에 선형 변환에 대한 기하학적 또는 함수론적 논의를 행렬의 대수적 성질로 전환하여 연구할 수 있다.
이 개념은 컴퓨터 그래픽스, 로봇공학, 양자역학 등 다양한 분야에서 핵심적으로 활용된다. 예를 들어, 3차원 컴퓨터 그래픽에서 물체의 회전, 확대, 이동 같은 기하학적 변환은 모두 행렬 곱셈으로 구현된다. 마찬가지로, 신경망에서 한 계층의 출력을 다음 계층의 입력으로 변환하는 과정도 선형 변환으로 모델링되며, 이는 가중치 행렬과 입력 벡터의 곱으로 수행된다.
6.3. 컴퓨터 과학 및 데이터 과학
6.3. 컴퓨터 과학 및 데이터 과학
행렬은 컴퓨터 과학과 데이터 과학 분야에서 데이터를 구조화하고 연산하는 핵심적인 도구로 활용된다. 컴퓨터 그래픽스에서는 3차원 물체의 회전, 확대, 이동과 같은 기하학적 변환을 행렬 곱셈으로 효율적으로 표현하며, 게임 엔진과 컴퓨터 애니메이션의 기반이 된다. 또한 컴퓨터 비전과 영상 처리에서 필터 적용이나 이미지 변환을 수행할 때도 행렬 연산이 광범위하게 사용된다.
데이터 과학과 인공지능 분야에서는 데이터셋 자체가 하나의 거대한 행렬로 간주된다. 예를 들어, 사용자-아이템 평점 데이터나 문서-단어 빈도수 행렬은 추천 시스템과 자연어 처리의 기본 입력 형태이다. 머신러닝 알고리즘, 특히 선형 회귀와 로지스틱 회귀의 모델 파라미터 추정 과정에서도 행렬 연산이 필수적이다.
딥러닝의 핵심 구성 요소인 인공신경망은 각 계층 사이의 연결 가중치를 행렬로 표현하며, 순전파와 역전파 과정에서 대규모 행렬 곱셈이 반복적으로 수행된다. 이는 GPU와 같은 병렬 처리 하드웨어를 통해 가속화되는 연산의 대부분을 차지한다. 또한 주성분 분석과 같은 차원 축소 기법이나 특이값 분해와 같은 행렬 분해 기술은 데이터 압축과 패턴 인식에 중요한 역할을 한다.
