불꽃 제거: 제5장 엄격해부터 근사해까지

5108 단어 Python

개요


제5장의 수치 예시는 파이톤으로 이루어진다.
불꽃이 사방으로 튀다

가져오기


제5장에서 관측 데이터에 소음이 함유된 상황을 처리하고 관측 데이터에 소음이 함유된 오차항의 제약을 $\epsilon 이하로 감소시킨다.
$$ (P_{0}^{\epsilon}):\min_{\mathbf{x}} ||\mathbf{x}||_{0}\text{ subject to } ||\mathbf{b}-\mathbf{Ax}|| _{2}\leq\epsilon $$
  • OMP(Oriental Matching Track)에서 반복 계산을 중지하는 조건만 $\epsilon{0]=\epsilon달러
    $\ell_{0} 달러의 정액표준 $$$$US(P{1})의 변형 버전으로 넓히면 기본 추적 소음 제거(BPDN)를 받을 수 있습니다.
    $$ (P_{1}^{\epsilon}):\min_{\mathbf{x}} ||\mathbf{x}||_{1}\text{ subject to } ||\mathbf{b}-\mathbf{Ax}|| _{2}\leq\epsilon $$
    적당한 라그랑의 일곱셈 $\lambda에 대해 $US의 해답은 아래의 무제약 최적화 문제의 해답과 일치합니다.
    $$ (Q_{1}^{\lambda}):\min_{\mathbf{x}}\lambda ||\mathbf{x}||_{1} +\frac{1}{2} ||\mathbf{b}-\mathbf{Ax}|| _{2} $$
    $를 해결하는 간단한 방법은 가중치의 최소 2승법을 반복하는 것이다.
    $\mathbf{X}={diag}(\mathbf{|x|})$||||mathbf{x}|{1} =\mathbf{x}\mathbf{X]^{-1}\mathbf{x}달러{1}Nom(가중치) 2 곱하기 $\ell현재 근사해 $\mathbf{x{k-1}를 주면 $\mathbf{X{rm{k-1}}=rm{diag}(\left|\mathbf{x{x{k-1}}}}}}})는 $를 통해 다음 문제를 해결합니다.
    $$ (M_{k}):\min_{\mathbf{x}}\lambda\mathbf{x^{\rm{T}}}\mathbf{X^{\rm{-1}}}\mathbf{x} +\frac{1}{2} ||\mathbf{b} -\mathbf{Ax} ||_{2}^{2} $$
    따라서 IRLS의 알고리즘은 현재 가중치 $\mathbf{X{k-1}를 사용하여 $\mathbf{x{k}를 획득한 후 $\mathbf{x{k}달러를 교체하여 $\mathbf{X{rm{k}의 근사성을 반복하여 $(Q{1^{lambda})의 해를 얻습니다.LARS의 개요로 구성되어 있습니다.

    IRLS 알고리즘


    초기화


    $k=0$으로
  • $\mathbf{x{rm{0}} 초기 해제 $\mathbf{1}달러
  • 초기 가중치 매트릭스 $\mathbf{X{rm{0} =\mathbf{I}달러
  • 주 순환


    1달러로 다음 절차를 수행합니다.
  • 정규화 최소 제곱자: 아래 선형 연립 방정식 $\left(2\lambda\mathbf{X{k-1}^{rm{1}}}}A}\right)\mathbf{x}=\mathbf{x}={{{{{rm{T}b} 교체법으로 풀면 근사해 $\mathbf{x{{k}}}}}}}}}$$$$$$$$$. 교과서에 여러 번 공멍 사다리법의 교체를 기록하면 충분하다.optimize.미니미즈 사용
  • 가중치 업데이트: $\mathbf{x{rm{k}$X$사용{k}(j,j)=|x_{k}(j)|+\epsilon 업데이트 가중 대각 행렬$\mathbf{X}달러
  • 정지 조건: 만약|\mathbf{x{rm{k}]-\mathbf{x{k-1}}|${2}이 미리 정해진 한도값보다 작으면 끝납니다.
  • 실험


    모방하다


    200차원 벡터
    100차원 벡터
    $\mathbf{A}$ 100×200차원 행렬, $[1,1)$의 균일 무작위 수열 귀일화
  • $\mathbf{x}는 비영원소수 $k=4달러로 $[-2,-1]\cup[1,2]달러 범위의 고른 분포에서 id를 추출합니다.
  • 표준 편차 $\sigma=0.1달러의 고스 분포에서 추출한 추가 소음 $\mathbf{e}달러를 사용하여 $\mathbf{b}=\mathbf{Ax]+\mathbf{e}달러
  • 를 계산합니다.
    이 해결 과제 중 하나는 $\lambda달러의 값을 어떻게 결정하는가입니다. 여기는 경험 규칙에 따라 $\sigma와 0이 아닌 원소의 표준 편차의 비율을 $\lambda달러로 합니다. 0이 아닌 원소의 표준 편차는 약 2이므로 $\sigma/2=0.05달러 부근의 값을 $\lambda미원으로 합니다.

    결실

  • $\lambda의 값을 바꾸면서 얻은 해를 $\rac{||||\hat{mathbf{x{rm{lambda}}}}}}}}}}}}||||||mathbf{x{rm{0}}달러로 평가합니다. IRLS의 중복 횟수는 100회입니다
  • .
    코드와 실험 결과를 요약한 Jupter notebook
    대허선은 $\left||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||mathbf{bb|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||가치의 또 다른 경험 법칙.
  • 가장 좋은 $\lambda달러의 값과 그것보다 큰 값, 작은 값을 사용할 때의 세 가지 해석

  • 진해 $\mathbf{x{rm{0}$(적환)보다 $\lambda의 값을 사용하면 $\mathbf{x{rm{0}}} 0이 아닌 원소의 위치를 복구하는 것이 좋습니다.
  • 하나의 도표에 모든 $\lambda 달러에 대한 해답
  • 을 표시합니다

    모든 그림은 $\mathbf{x}의 원소의 값을 표시합니다. $\lambda입니다. 허선은 $\mathbf{x{rm{0}의 값입니다.
  • 최적 $\lambda를 사용한 경우 IRLS의 중복 횟수에 대한 함수 값 $(\lambda|||\mathbf{x}||||||||||||||||||||||||||||||||||||||||)$

  • LARS 알고리즘

  • 이해가 잘 안 돼서 sklearn의 LassoLars만 사용해서 실험
  • 실험


    모방하다


    50차원 벡터
    30 차원 벡터
    $\mathbf{A}$ 30×50차원 행렬, $[1,1)$의 균일 무작위 수열 귀일화
    비영원소수 k
  • $\mathbf{x}로 $[-2,-1]\cup[1,2]달러 범위의 고른 분포에서 id 추출
  • 표준 편차 $\sigma=0.1달러의 고스 분포에서 추출한 추가 소음 $\mathbf{e}달러를 사용하여 $\mathbf{b}=\mathbf{Ax]+\mathbf{e}달러
  • 를 계산합니다.
  • $k=1,...,15$200회 시뮬레이션
  • OMP 및 LARS
  • 비교

    지표

  • 예상 $\mathbf{\hat{x} 및 실제 $\mathbf{x}의 $L2달러 기준
  • 예상 $\mathbf{\hat{x}와 실제 $\mathbf{x} 사이의 지원 거리 $dist(\hat{S}, S)=\racc{max\{{{{{{{{{{{{{{|hat{S}|,|S|||||S|||||||||||||||||||||||||||||||||||||||||||||hat{S}\cap S||||||||||||||||||||
  • 200회 아날로그 평균 획득

    결실




    고찰하다.

  • k가 작은 경우 OMP 오차가.k가 작으면 LARS 오차가 적다.
  • OMP에서 지원을 더 정확하게 복구할 때 K가 커지면 반전 지원
  • 좋은 웹페이지 즐겨찾기