문제

a의 차이점을 이해하도록 도와주세요 생성 그리고 a차별적 알고리즘, 나는 초보자 일 뿐이라는 것을 명심하십시오.

도움이 되었습니까?

해결책

입력 데이터가 있다고 가정 해 봅시다 x 데이터를 레이블로 분류하려고합니다 y. 생성 모델은 다음을 배웁니다 관절 확률 분포 p(x,y) 그리고 차별적 인 모델이 배웁니다 가정 어구 확률 분포 p(y|x) - 읽어야합니다 "확률 y 주어진 x".

정말 간단한 예입니다. 양식에 다음 데이터가 있다고 가정 해 봅시다 (x,y):

(1,0), (1,0), (2,0), (2, 1)

p(x,y) ~이다

      y=0   y=1
     -----------
x=1 | 1/2   0
x=2 | 1/4   1/4

p(y|x) ~이다

      y=0   y=1
     -----------
x=1 | 1     0
x=2 | 1/2   1/2

이 두 행렬을 응시하는 데 몇 분이 걸리면 두 확률 분포의 차이점을 이해하게됩니다.

분포 p(y|x) 주어진 예를 분류하기위한 자연 분포입니다 x 수업에 y, 이를 직접 모델링하는 알고리즘을 판별 알고리즘이라고합니다. 생성 알고리즘 모델 p(x,y), 이것은 변환 될 수 있습니다 p(y|x) 베이 에스 규칙을 적용한 다음 분류에 사용됩니다. 그러나 분포 p(x,y) 다른 목적으로도 사용할 수 있습니다. 예를 들어, 사용할 수 있습니다 p(x,y) 에게 생성하다 ~할 것 같은 (x,y) 한 쌍.

위의 설명에서 생성 모델이 더 일반적으로 유용하고 더 좋다고 생각할 수 있지만 그렇게 간단하지는 않습니다. 이 종이 차별적 대 생성 분류기의 주제에 대한 매우 인기있는 참조이지만, 매우 무겁습니다. 전반적인 요점은 차별적 모델이 일반적으로 분류 작업에서 생성 모델을 능가한다는 것입니다.

다른 팁

생성 알고리즘 신호를 분류하기 위해 데이터가 어떻게 생성되었는지 모델. 그것은 질문을합니다. 내 세대 가정을 바탕으로 어떤 범주 가이 신호를 생성 할 가능성이 가장 높습니까?

식별 알고리즘 데이터가 어떻게 생성되었는지는 신경 쓰지 않으며 단순히 주어진 신호를 분류합니다.

당신의 임무는 연설을 언어로 분류하는 것이라고 상상해보십시오.

당신은 다음 중 하나를 사용할 수 있습니다.

  1. 각 언어를 배우고 방금 얻은 지식을 사용하여 분류

또는

  1. 언어를 배우지 않고 언어 모델의 차이를 결정한 다음 연설을 분류합니다.

첫 번째는입니다 생성 접근 방식과 두 번째는입니다 차별적 접근하다.

자세한 내용은이 참조를 확인하십시오. http://www.cedar.buffalo.edu/~srihari/cse574/discriminative-generative.pdf.

실제로 모델은 다음과 같이 사용됩니다.

~ 안에 차별적 모델, 레이블을 예측합니다 y 훈련 예에서 x, 당신은 평가해야합니다 :

enter image description here

그것은 단지 가장 가능성이 높은 수업을 선택하는 것입니다 y 고려하면 x. 우리가 노력했던 것과 같습니다 클래스 간의 결정 경계를 모델링하십시오. 이 동작은 신경망에서 매우 분명하며, 계산 된 가중치는 공간의 클래스 요소를 분리하는 복잡한 모양의 곡선으로 볼 수 있습니다.

이제 Bayes의 규칙을 사용하여 교체하겠습니다. enter image description here 방정식에서 enter image description here. 당신은 단지 관심이 있기 때문에 Arg Max, 당신은 분모를 닦을 수 있습니다. y. 그래서, 당신은 남아 있습니다

enter image description here

이것은 당신이 사용하는 방정식입니다 생성 모델.

첫 번째 경우에 당신은 그랬습니다 조건부 확률 분포 p(y|x), 클래스 사이의 경계를 모델링 한 두 번째는 공동 확률 분포 p (x, y), p (x, y) = p (x | y) p (y) 이후 각 클래스의 실제 분포를 명시 적으로 모델링합니다.

주어진 관절 확률 분포 함수로 y, 당신은 각각의 x. 이러한 이유로,이를 "생성"모델이라고합니다.

다음은 다음과 같습니다 강의 노트 주제와 관련된 CS299 (Andrew NG)의 진짜 차이점을 이해하는 데 도움이됩니다 차별적 그리고 생성 학습 알고리즘.

우리가 두 종류의 동물, 코끼리가 있다고 가정 해y = 1) 및 개 (y = 0). 그리고 엑스 동물의 특징 벡터입니다.

훈련 세트가 주어지면 로지스틱 회귀와 같은 알고리즘이나 퍼셉트론 알고리즘 (기본적으로)은 코끼리와 개를 분리하는 직선, 즉 결정 경계를 찾으려고 시도합니다. 그런 다음 새로운 동물을 코끼리 나 개로 분류하기 위해 결정 경계의 어느 쪽을 확인하고 그에 따라 예측을합니다. 우리는 이것을 부릅니다 식별 학습 알고리즘.

다음은 다른 접근법입니다. 첫째, 코끼리를 보면 코끼리가 어떻게 생겼는지 모델을 만들 수 있습니다. 그런 다음 개를 보면 개가 어떻게 생겼는지 별도의 모델을 만들 수 있습니다. 마지막으로, 새로운 동물을 분류하기 위해, 우리는 새로운 동물을 코끼리 모델과 일치시키고 개 모델과 일치시켜 새로운 동물이 훈련 세트에서 우리가 본 개와 같은 코끼리처럼 보이는지 확인할 수 있습니다. . 우리는 이것을 부릅니다 생성 학습 알고리즘.

일반적으로 기계 학습 커뮤니티에는 원하지 않는 것을 배우지 않는 관행이 있습니다. 예를 들어, 목표가 주어진 X 입력에 Y 라벨을 할당하는 것이 목표 인 분류 문제를 고려하십시오. 생성 모델을 사용하는 경우

p(x,y)=p(y|x).p(x)

우리는 손에있는 작업과 관련이없는 p (x)를 모델링해야합니다. Data Sparsense와 같은 실제 제한은 우리를 모델로 만들 것입니다. p(x) 약한 독립 가정이 있습니다. 따라서 우리는 분류를 위해 차별적 모델을 직관적으로 사용합니다.

위의 Stompchicken의 답변과 잘 어울리는 추가 정보 요점.

그만큼 근본적인 차이 ~ 사이 차별적 모델 그리고 생성 모델 이다:

차별적 모델 배우십시오 (단단하거나 부드러운) 경계 수업 사이

생성 모델 모델 분포 개별 수업의

편집하다:

생성 모델은 하나입니다 데이터를 생성 할 수 있습니다. 그것은 기능과 클래스를 모두 모델링합니다 (즉, 완전한 데이터).

우리가 모델한다면 P(x,y):이 확률 분포를 사용하여 데이터 포인트를 생성 할 수 있습니다. 따라서 모든 알고리즘 모델링 P(x,y) 생성입니다.

예를 들어. 생성 모델의

  • 순진한 베이 에스 모델 P(c) 그리고 P(d|c) - 어디 c 수업이고 d 기능 벡터입니다.

    또한, P(c,d) = P(c) * P(d|c)

    따라서 일부 형태 모델의 순진한 베이, P(c,d)

  • 베이 에스 그물

  • 마르코프 그물

차별적 모델은 데이터 포인트를 구별/분류합니다. 당신은 모델 만 있으면됩니다 P(y|x) 그러한 경우 (즉, 피처 벡터가 주어진 클래스의 확률).

예를 들어. 차별적 모델 :

  • 로지스틱 회귀

  • 신경망

  • 조건부 임의의 필드

일반적으로 생성 모델은 차별적 모델보다 훨씬 더 많은 모델을 모델링해야하므로 때로는 효과적이지 않습니다. 사실, 클러스터링 등과 같은 감독되지 않은 학습 알고리즘이 모델을 모델링하기 때문에 생성이라고 할 수 있습니다. P(d) (수업이 없습니다 : P)

추신 : 답의 일부는에서 가져온 것입니다 원천

다른 모델은 아래 표에 요약되어 있습니다.enter image description here

나의 두 센트 : 차별적 접근법은 차이점을 강조한다. 생성 접근법은 차이에 초점을 두지 않는다. 그들은 클래스를 대표하는 모델을 구축하려고합니다. 둘 사이에 겹치는 것이 있습니다. 이상적으로 두 가지 접근 방식을 사용해야합니다. 하나는 유사성을 찾는 데 유용하고 다른 접근 방식은 유사성을 찾는 데 유용 할 것입니다.

생성 알고리즘 모델은 교육 데이터에서 완전히 학습하고 응답을 예측합니다.

차별적 인 알고리즘 작업은 단지 두 결과를 분류하거나 구별하는 것입니다.

모든 이전 답변은 훌륭하고 한 가지 더 꽂고 싶습니다.

생성 알고리즘 모델에서 모든 분포를 도출 할 수 있습니다. 식별 알고리즘 모델로부터 조건부 분포 P (y | x) 만 얻을 수 있지만 (또는 이들이 Y의 레이블을 판별하는 데 유용하다고 말할 수 있음)이를 판별 모델이라고합니다. 식별 모델은 y ($ x_i perp x _ {-i} | y $)가 주어지면 X가 독립적이라고 가정하지 않으므로 일반적으로 조건부 분포를 계산하는 데 더 강력합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top