20일차 인공지능 기초수학2

차지예·2025년 6월 11일

생성AI

목록 보기
17/56
post-thumbnail

Sage Cell Server

목차

  1. 선형연립방정식
  2. REF, RREF
  3. 가우스-조던 소거법 1
  4. 가우스-조던 소거법 2
  5. 행렬의 연산
  6. 행렬 곱
  7. 전치 행렬
  8. 가역과 역행렬
  9. 역행렬과 선형연립방정식
  10. 특수 행렬
  11. (반)대칭 행렬
  12. LU 분해
  13. 치환과 반전

1. 선형연립방정식

var('x y')
solve([x + y == 3, 2*x - y == 0], x, y)
{x+y=32xy=0\begin{cases} x + y = 3 \\ 2x - y = 0 \end{cases}

🔍 설명:
두 개의 일차 방정식으로 구성된 연립방정식의 해를 구합니다.
solve()는 Sage에서 해석적 풀이를 제공하는 함수입니다.


2.REF (행 사다리꼴), RREF (기약 사다리꼴)

A = Matrix([[1, 2, -1], [2, 3, 0], [1, -1, 1]])
A.echelon_form()  # REF
A.rref()          # RREF
A=[121230111]A = \begin{bmatrix} 1 & 2 & -1 \\ 2 & 3 & 0 \\ 1 & -1 & 1 \end{bmatrix}

🔍 설명:
REF: 행의 앞부분에 0이 없도록 정렬한 형태
RREF: 각 행의 선도 원소(leading entry)가 1이고, 다른 행에는 0이 되도록 만든 형태


3. 가우스-조던 소거법 1

A = Matrix([[1, 1, 3], [2, -1, 1]])
A.rref()
[113211]\left[ \begin{array}{cc|c} 1 & 1 & 3 \\ 2 & -1 & 1 \end{array} \right]

🔍 설명:
확장 행렬을 RREF 형태로 바꾸는 가우스-조던 소거법을 적용해 해를 직접 확인합니다.


4.가우스-조던 소거법 2

A = Matrix([[1, 2, 3], [2, 4, 6]])
A.rref()
{x+2y=32x+4y=6무수히 많은 해\begin{cases} x + 2y = 3 \\ 2x + 4y = 6 \end{cases} \Rightarrow \text{무수히 많은 해}

🔍 설명:
두 식은 서로 종속되어 있습니다.
→ 랭크(rank) = 1, 변수 2 → 자유변수 1개 → 무수히 많은 해


5.행렬의 연산 (덧셈, 뺄셈)

A = Matrix([[1, 2], [3, 4]])
B = Matrix([[4, 3], [2, 1]])
A + B, A - B
A+B=[5555],AB=[3113]A + B = \begin{bmatrix} 5 & 5 \\ 5 & 5 \end{bmatrix}, \quad A - B = \begin{bmatrix} -3 & -1 \\ 1 & 3 \end{bmatrix}

🔍 설명:
행렬의 크기가 같을 때 성분별로 더하거나 뺄 수 있습니다.


6.행렬 곱

A = Matrix([[1, 2], [3, 4]])
B = Matrix([[2, 0], [1, 2]])
A * B
AB=[44108]AB = \begin{bmatrix} 4 & 4 \\ 10 & 8 \end{bmatrix}

🔍 설명:
행렬 곱은 행 × 열의 내적 연산입니다.


7.전치 행렬

A = Matrix([[1, 2, 3], [4, 5, 6]])
A.transpose()
AT=[142536]A^T = \begin{bmatrix} 1 & 4 \\ 2 & 5 \\ 3 & 6 \end{bmatrix}

🔍 설명:
전치(transpose) 행렬은 행과 열을 바꾼 형태입니다.


8. 가역과 역행렬

A = Matrix([[1, 2], [3, 4]])
A.is_invertible(), A.inverse()
A1=1det(A)adj(A)=12[4231]=[211.50.5]A^{-1} = \frac{1}{\det(A)} \cdot \text{adj}(A) = \frac{1}{-2} \begin{bmatrix} 4 & -2 \\ -3 & 1 \end{bmatrix} = \begin{bmatrix} -2 & 1 \\ 1.5 & -0.5 \end{bmatrix}

🔍 설명:
역행렬이 존재하려면 행렬식이 0이 아니어야 합니다. (det(A) ≠ 0)


9.역행렬과 선형연립방정식

A = Matrix([[2, 1], [5, 3]])
b = vector([1, 2])
x = A.inverse() * b
Ax=bx=A1bAx = b \Rightarrow x = A^{-1}b

🔍 설명:
역행렬을 이용하여 선형연립방정식을 간단히 풀이할 수 있습니다.


10. 특수 행렬

identity_matrix(3), zero_matrix(3, 3), diagonal_matrix([1, 2, 3])

항등행렬

I=[100010001]I = \begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{bmatrix}

영행렬

O=[000000000]O = \begin{bmatrix} 0 & 0 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 0 \end{bmatrix}

대각행렬

D=[100020003]D = \begin{bmatrix} 1 & 0 & 0 \\ 0 & 2 & 0 \\ 0 & 0 & 3 \end{bmatrix}

🔍 설명:

항등행렬 (Identity): 단위 원소만 있는 행렬
영행렬 (Zero): 모든 원소가 0
대각행렬 (Diagonal): 대각선 외의 값이 모두 0


11.대칭/반대칭 행렬

A = Matrix([[0, 2, -1], [-2, 0, 4], [1, -4, 0]])
B = Matrix([[1, 2], [2, 3]])
대칭 행렬: AT=A\text{대칭 행렬: } A^T = A
[1223]T=[1223]대칭 행렬\begin{bmatrix} 1 & 2 \\ 2 & 3 \end{bmatrix}^T = \begin{bmatrix} 1 & 2 \\ 2 & 3 \end{bmatrix} \Rightarrow \text{대칭 행렬}

반대칭 행렬: AT=A\text{반대칭 행렬: } A^T = -A
A=[021204140],AT=[021204140]=AA = \begin{bmatrix} 0 & 2 & -1 \\ -2 & 0 & 4 \\ 1 & -4 & 0 \end{bmatrix}, \quad A^T = \begin{bmatrix} 0 & -2 & 1 \\ 2 & 0 & -4 \\ -1 & 4 & 0 \end{bmatrix} = - A

12.LU 분해

A = Matrix([[2, 3], [4, 7]])

# 순서(P, L, U)
P, L, U = A.LU()
A=[2347]A = \begin{bmatrix} 2 & 3 \\ 4 & 7 \end{bmatrix}

LU 분해 (with pivoting):

P=[0110],L=[100.51],U=[4700.5]P = \begin{bmatrix} 0 & 1 \\ 1 & 0 \end{bmatrix}, \quad L = \begin{bmatrix} 1 & 0 \\ 0.5 & 1 \end{bmatrix}, \quad U = \begin{bmatrix} 4 & 7 \\ 0 & 0.5 \end{bmatrix}

검산:

PA=[4723]=LU=[100.51][4700.5]PA = \begin{bmatrix} 4 & 7 \\ 2 & 3 \end{bmatrix} = LU = \begin{bmatrix} 1 & 0 \\ 0.5 & 1 \end{bmatrix} \begin{bmatrix} 4 & 7 \\ 0 & 0.5 \end{bmatrix}

🔍 설명:

  • L: 하삼각행렬 (Lower triangular matrix)
  • U: 상삼각행렬 (Upper triangular matrix)
  • P: 치환행렬 (Permutation matrix), 행의 교환을 나타냄

LU 분해는 연립방정식 해법, 역행렬 계산 등에 유용하게 사용됩니다.

0개의 댓글