svd 분해 예제

SVD는 누락된 데이터를 전혀 통합할 수 없기 때문에 매우 희소한 등급 행렬에도 적합하지 않습니다. YOu는 데이터가 누락되지 않도록 값을 제공해야 합니다. 누락된 값에 0 또는 사용자 또는 항목의 평균 또는 전역 평균을 임의로 할당할 수 있습니다. 그러나 SVD에 사실이 아닌 것을 말하고 있으며 SVD는 실제로 존재하는 정직한 데이터인 것처럼 거짓말을합니다. SVD는 제공하는 값만 실제 실제 값인 것처럼 통합할 수 있습니다. 따라서 분해도 마찬가지로 분해 전에 선택한 넌센스 데이터 값에 의해 크게 영향을 받습니다. 즉, FunkSVD와 같은 SVD 및 반복 SVD 근사치는 실제로 원래 등급 매트릭스에서 누락 된 데이터가있는 시스템에서 약간의 성공을 거두어 실제로 사용되어 왔으며 « 진실 »데이터의 문제에도 불구하고 여전히 몇 가지 신호가 있음을 보여 주었습니다. SVD에 의해 생산. SVD를 다방향 배열로 일반화하는 두 가지 유형의 텐서 분해가 있습니다. 그 중 하나는 텐서를 텐서 랭크 분해라고 하는 1순위 텐서의 합계로 분해합니다. 두 번째 분해 유형은 텐서가 살고 있는 벡터 공간의 텐서 생성물에 나타나는 여러 요소와 관련된 정형매법 하위 공간을 계산합니다. 이러한 분해는 문헌에서 고차 SVD(HOSVD) 또는 터커3/터커M이라고 한다. 또한 다중선형 하위 공간 학습의 다선형 주성분 분석에는 터커 분해와 동일한 수학적 연산이 포함되어 차원 감소의 다른 맥락에서 사용됩니다.

컴퓨터 코드를 포함한 전체 예제는 아래 예제 섹션에서 해결됩니다. 이 예제에서는 두 개의 특이값에서 699px x x 1000px 이미지를 재구성했습니다. 위의 단지 건조, 기술적 인 설명입니다. 그것은 우리에게 방법이 무엇을하고 있는지에 대한 직관적 인 느낌을 제공하지 않습니다. 따라서 두 차원에서 가장 간단한 예제를 가정해 보겠습니다. 그것은 더 높은 치수에 매우 자연스럽게 일반화. 예제를 실행하면 먼저 원래 행렬을 인쇄한 다음 SVD 요소에서 재구성된 행렬을 인쇄합니다. 우리는 $bs{A}$를 3개의 행렬로 분해합니다(고유분해구성이 있는 두 개가 아닌) : 두 번째 단계는 Golub & Kahan(1965)에 의해 처음 설명된 고유 값 계산을 위한 QR 알고리즘의 변형으로 수행할 수 있습니다. LAPACK 서브루틴 DBDSQR[19]는 단수 값이 매우 작은 경우를 커버하기 위해 일부 수정과 함께 이 반복 방법을 구현합니다(Demmel & Kahan 1990).

Householder 반사를 사용하는 첫 번째 단계와 적절한 경우 QR 분해와 함께 단수 값 분해 계산을 위한 DGESVD[20] 루틴을 형성합니다. 공식적으로, m × n {디스플레이 스타일 mtimes n} 실제 또는 복잡한 매트릭스 M {디스플레이 스타일 mathbf {M} } 형식 U Σ V {*의 표시 스타일 mathbf {Sigma V^{*}} } } } } ystyle mtimes m} 실제 또는 복잡한 단위 행렬, Σ {디스플레이 스타일 {Sigma } 는 m × n {디스플레이 스타일 mtimes n} 대각선에 음수가 아닌 실수가있는 직사각형 대각선 행렬, V {displaystyle mathbf {V} } n × n {디스플레이 스타일 n times n} 실제 또는 복잡한 단일 행렬입니다.

This entry was posted in Non classé. Bookmark the permalink.

Comments are closed.