Coursera Machine Learning 7장 요약

4768 단어 svm

최적화된 목표 함수


벡터기를 지원하는 원가 함수는 다음과 같다.
J(\theta)=C\sum_{i=1}^{m}y^{(i)} cost_1 (\theta^T x^{(i)} )+(1-y^{(i)} )cost_0 (\theta^T x^{(i)} )+\frac{1}{2}\sum_{j-1}^{n}\Theta_{j}^{2}
이 원가 함수 $\theta 달러를 최소화하고 함수 $h를 가정합니다\theta(x)달러는 플러스 마이너스로 판단됩니다.
 
물류 회귀의 원가 함수는 다음과 같이 몇 가지 차이가 있기 때문이다.
J(\theta)=\frac{1}{m}\sum_{i=1}^{m}y^{(i)}(- \log (h_{\theta}x^{(i)} ))+(1-y^{(i)} )(- \log (1-h_{\theta}(x^{(i)})))+\frac{\lambda}{2m}\sum_{j-1}^{n}\Theta_{j}^{2}
・$cost1 (\theta^T x^{(i)} )$, $cost_0(\theta^Tx^{(i)})$와 $\log(h{theeta}x^{(i)})$, $-\log(1-h{theeta}(x^{(i)})$사이의 차이
아래의 자홍색 선처럼 벡터기에서 논리 회귀에 가깝지만 곡선이 아니라 직선의 조합을 지원한다.

• $\rac{1} $없음
SVM의 원가 함수에서 $\rac{1}{m}은 최소화에 영향을 주지 않기 때문에 제거됩니다
• $C와 $\lambda의 차이
논리 회귀에서는 $\lambda의 귀일화 매개 변수가 할당되었으나 SVM에서는 C가 커지면 할당됩니다.
극단적으로 말하면 $J(\theta)=Ca+b는 $J(\theta)=a+\lambdab로 상반부와 후반부의 차이는 어느 것을 조정해서 권한을 컨트롤하는가에 있다.따라서 실질적으로는 $C=\rac{1}{lambda}달러라고 할 수 있다.
・ 가설 함수의 출력
논리 회귀에서는 가설 함수에 따라 정답 확률을 출력하지만 SVM에서는 $\Theeta^Tx\geq0달러가 $h$일 경우\theta(x)=1달러, 그 외에 $h\theta(x)=0$양수 판단

테두리 분류기


SVM은 큰 테두리 분류기로 불린다.다음 견본을 제시할 때 경계는 데이터와 비교적 큰 거리를 유지하는 검은 선으로 설정된다.이러한 확정 경계와 가장 가까운 데이터 사이를 여유라고 하고 SVM에서 상술한 최적화를 통해 확정 경계를 설정하여 이 여유를 최대한 높인다.


또한 아래의 데이터를 제시할 때 C의 값이 클수록 편차 값의 영향을 받고 빨간색과 같은 식별 경계를 도출한다.

내부 핵


SVM으로 선형 분류가 불가능한 다음 분류 문제를 해결하는 경우 SVM은 커널이라는 개념을 사용합니다.

여기에 $x^{(i)} 입력값을 이용하여 새로운 특징 $f$를 정의하고 가설을 구축합니다.그 수속에 관하여 아래에 서술하다.
예를 들어 위의 그림과 같이 $x^{(i)}가 2차원 벡터의 값이라면
우선 2차원 공간에서 몇 개의 점을 지표로 설정한다.예를 들어 아래 그림에서 보듯이, 3개의 랜드마크 $l^ {(1)} $, $l^ {(2)}, $l^ {(3)} 달러를 설정했다고 가정하십시오.

$x$와 이 지표의 근사값을 $f$로 정의하고 $f$f를 새로운 특징량에 사용하여 가설 함수를 설계합니다.이 근사치를 계산하는 함수는 수학적으로 내핵이라고 불리는데, 이런 상황에서 특히 고스 내핵이라고 불린다.
f_i=similarity(x, l^{(i)}) = exp(-\frac{||x-l^{(i)}||}{2\sigma})
이 의식은 $x\apploxl^{(i)}이면 $fi\approx 1$
$x$l^{(i)}$f$에서 멀어지면i\applox0달러가 됩니다.
고스 내핵의 매개 변수입니다
이게 커지면 $l^{(i)}를 가지고 $f를 떠나세요i 달러는 천천히 1에서 0에 가깝다
이게 작아지면 $l^ (i)} $f갑자기 1에서 0에 가까워지다.
이렇게 모든 지표에 새로운 특징이 있습니다 $fi$i를 얻고 가설 함수를 설계합니다.
상기 그림에서 보듯이 3개의 지표를 설정할 때
\theta_0 + \theta_1f_1 + \theta_2f_2 + \theta_3f_3
이러한 가설 함수는 0 이상이 1이면 0이다.

랜드마크 설정 방법


지표의 설정 방법 중 하나는 훈련 데이터를 지표로 직접 설정하는 것이다.즉, m개의 트레이닝 데이터에 대해 지표를 설정하고 $l^{(i)}와 각 트레이닝 데이터의 근사치 $f$1^{(i)}…f_m^{(i)}달러를 쌓아 새로운 특징 벡터를 설정합니다. $f^{(i)}달러입니다.
$\theeta^Tf\geq0이(가) 지정된 경우 이 피쳐 양을 y=1로 예측할 수 있습니다.
$\theta가 없으면 피쳐 $f$를 사용하여 다음 공식을 해결할 수도 있습니다.
min C\sum_{i=1}^{m}y^{(i)} cost_1 (\theta^T f^{(i)} )+(1-y^{(i)} )cost_0 (\theta^T f^{(i)} )+\frac{1}{2}\sum_{j-1}^{n}\Theta_{j}^{2}

SVM 사용


실제 사용 시


공식을 일부러 설치하지 않아도 libsvm이나liblinear를 사용할 수 있습니다
$C 결정 및 커널 선택 필요

선형 내핵


특징량이 n이 많고 훈련 데이터 m가 적을 때 충분한 데이터가 없으면 과도하게 의합하기 쉬우므로 선형 내핵(내핵을 사용하지 않음)을 사용한다.

가우스 코어

  • 특징량 n이 적고 훈련 데이터 m이 많을 때 고스 내핵을 사용한다.
  • 이 경우 $\sigma 달러를 지정해야 합니다. 이 값은 편차가 발리와 비교되며 크면 높거나 낮거나 작으면 상반됩니다.
  • 고스 내핵을 사용하는 경우 포장에 따라 내핵 함수를 실현해야 할 때가 있다.
  • 고스 내핵을 사용할 때 특징량의 비례자가 너무 크면 축소한다
    ####추가 커널
  • 다항식 커널
  • 문자열 커널
  • 캐피털 코어
  • 직사각형 교차 내핵
    기다리다
    ###여러 범주의 분류
    원-vs-all 방식으로 문제를 풀고 회귀 논리로 풀 때와 같다
  • SVM 사용 시기

  • 특징량 n이 트레이닝 데이터 수 m에 비해 많을 때(ex.n=10000m=10.10000) 송진봉 회귀냐 선형 커널 SVM
  • 이냐
  • n이 적고 m이 중간일 때(ex.n=1.0000m=10.50000) 가우스앙 커널 SVM
  • n이 적고 m여시(ex.n=1.10000m=5000+) 수동으로 특징량을 늘리고 논리 회귀 또는 선형 핵 SVM
  • 을 사용한다.
    물류 회귀는 선형 SVM과 유사합니다.SVM의 능력은 복잡한 비선형 데이터를 학습하는 가우스앙 커널로, 가우스앙 커널을 항상 사용할 수 있는 조건을 갖추고 있다.
    또 이 모든 경우에 신경 네트워크를 사용할 수 있지만 장소에 따라 느릴 수 있기 때문에 이 경우 SVM을 사용하는 것이 좋다.

    좋은 웹페이지 즐겨찾기