정방향 회귀 알고리즘은 무엇입니까?


14

어쩌면 피곤한 것일 수도 있지만 Forward Stagewise Regression 알고리즘을 이해하는 데 어려움을 겪고 있습니다. 에서 "통계 학습의 요소" 60 페이지 :

전단계 회귀 (FS)는 전단계 회귀보다 훨씬 더 제한적입니다. 그것은 [y]의 평균과 동일한 절편을 갖는 순차 단계적 회귀처럼 시작하며, 계수가 처음 인 중심 예측 변수는 모두 0입니다.

각 단계에서 알고리즘은 현재 잔차와 가장 관련이있는 변수를 식별합니다. 그런 다음이 선택된 변수의 잔차에 대한 단순 선형 회귀 계수를 계산 한 다음 해당 변수의 현재 계수에 추가합니다. 변수가 잔차와 상관 관계가 없어 질 때까지 계속됩니다. 즉 N> p 인 경우 최소 제곱합입니다.

그래서 이것이 알고리즘입니까? :

b[1]=mean(y)
b[2..n]=0
r=(y-X*b)
index, maxCorr = max(transpose(r)*X)
while(abs(maxCorr) > someThreshold)
  b[index]=b[index]+regress(r,X[1..n][index])
  r=(y-X*b)
  index, maxCorr = max(transpose(r)*X)

b는 계수의 열-벡터이고, X는 입력 행렬이며, y는 출력의 열-벡터입니다. 즉 y = X * b + 오류입니다.

이 알고리즘은 테스트 할 데이터 세트에 대해 0이 아닌 몇 가지 계수 만 제공하므로 임계 값 = .0001로 예측 정확도가 전혀 좋지 않습니다.

답변:


5

저자는 책에서 알고리즘을 잘 설명하지 못합니다. 논문 에서 방정식 1.6과 1.7을 보면 더 명확 해집니다. 이 논문은 약간 다른 공식 (계수 벡터가 아닌 잔차를 형성 함)을 가지고 있지만, 요점은 매우 작은 단계에 매우 적합한 최소 제곱에 도달한다는 것입니다. p 단계보다 완료 "). "regress (...)"를 작은 숫자로 바꾸거나 0.05와 같이 곱할 수 있습니다. 그것을 가지고 놀아 무엇이 효과가 있는지보십시오.

또한 임계 값이 작게 보입니다. r '* X는 실제 상관 관계에 비례하지만 그보다 훨씬 큰 숫자를 제공 할 것입니다 (예를 들어 논문의 당뇨병 데이터의 경우 상관 관계는 ~ 70-900입니다).

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.