프로그래밍/AI

밀집 행렬(Dense Matrix)란?

Tiboong 2025. 4. 29. 15:37
728x90
반응형

밀집 행렬(Dense Matrix)이란?

밀집 행렬(Dense Matrix)은 대부분의 원소가 0이 아닌 값으로 채워진 행렬을 의미합니다. 즉, 행렬 내에 0이 아닌 값이 많고, 0의 비율이 매우 낮은 경우를 말합니다^1^5.

주요 특징

  • 정의: 대부분의 원소가 0이 아닌 행렬^1^5.
  • 메모리 효율성: 모든 원소(0이든 아니든)를 저장하므로 메모리 사용량이 높음^1.
  • 연산 속도: 모든 원소에 직접 접근할 수 있어 연산이 빠름^1.
  • 데이터 접근: 직접적이고 빠른 접근이 가능함^1.
  • 적합한 데이터 유형: 이미지, 시계열 데이터, 센서 데이터 등 0이 아닌 값이 많은 데이터에 적합함^1.

예시

[1 2 3]
[4 5 6]
[7 8 9]

위와 같이 대부분의 값이 0이 아닌 수로 채워진 행렬이 밀집 행렬입니다^1.

비교: 희소 행렬(Sparse Matrix)과의 차이

특성 밀집 행렬 (Dense matrix) 희소 행렬 (Sparse matrix)
정의 대부분의 원소가 0이 아님 대부분의 원소가 0임
메모리 효율성 낮음 (모든 원소 저장) 높음 (0이 아닌 원소만 저장)
연산 속도 일반적으로 더 빠름 특정 연산에서 빠름
데이터 접근 직접적 (빠른 접근) 간접적 (인덱스 필요)

활용 분야

  • 이미지 처리, 시계열 분석, 딥러닝 등에서 주로 사용됩니다^1.
  • 워드 임베딩 등에서 단어를 밀집 벡터로 표현할 때도 밀집 행렬이 사용됩니다^3.

요약하자면, 밀집 행렬은 0이 아닌 값이 많은 행렬로, 메모리 사용량은 크지만 연산이 빠르고, 데이터 접근이 용이한 형태입니다^1^5.

dense matrix image created by bing image creator

 

sparse matrix vs. dense matrix

Sparse Matrix:

(0, 1) 0.5

(0, 3) 0.8

(1, 2) 0.7

(2, 3) 0.6

 

Dense Matrix:

[.  [0. 0.5 0. 0.8]

    [0. 0. 0.7 0. ]

    [0. 0. 0. 0.6].   ]

728x90
반응형