Data/Graph & Matrix
[Matrix] 희소행렬(SparseMatrix) - COO, CSR, CSC
운호(Noah)
2020. 7. 6. 21:03
COO(Coordinate list)
- Coordinate list는 좌표리스트라는 뜻으로, (행, 열, 값)의 튜플 목록으로 Matrix를 저장하는 방법이다.
CSR(Compressed Sparse Row)
- 데이터를 행(가로)의 순서대로 정리 압축하는 방법이다.
- 구성요소
- 행 순서대로 데이터 배열(A)
- 행 순서대로 데이터의 열 인덱스 배열(JA)
- 행 압축 정보 배열(IA)
- 행 압축 정보 배열은 [최초 시작 행번호, 시작 행에서의 데이터 누적 개수, 두번째 행에서의 데이터 누적 개수,..., 마지막 행에서의 데이터 누적개수]이다.
CSC(Compressed Sparse Column)
- 데이터를 열(세로)의 순서대로 정리 압축하는 방법이다.
- 구성요소
- 열 순서대로 데이터 배열
- 열 순서대로 데이터의 행 인덱스 배열
- 열 압축 정보 배열
- 열 압축 정보 배열은 [최초 시작 열번호, 시작 열에서의 데이터 누적 개수, 두번째 열에서의 데이터 누적 개수,..., 마지막 열에서의 데이터 누적개수]이다.