취미: 순수한 베이스

저자:발명가들의 수량화 - 작은 꿈, 2016-12-28 10:30:22, 업데이트: 2016-12-28 10:34:52

취미: 순수한 베이스


네비베이

  생활의 많은 경우에 분류가 필요합니다. 예를 들어 뉴스 분류, 환자 분류 등 실제 사용 시나리오입니다. 이 글은 실제 응용에서 시작하여 간단한 일반적인 분류 알고리즘인 Navier-Bayez 분류기를 소개합니다.

  • 01 환자 분류의 예

예를 들어보겠습니다. 베이어스 분류기가 아주 잘 되어있다는 것을 알 수 있습니다. 전혀 어렵지 않습니다.

趣味理解朴素贝叶斯

이제 일곱 번째 환자가 왔습니다. 침투하는 건설 노동자입니다. 그가 감기에 걸릴 확률은 얼마입니까?

   P(A|B) = P(B|A) P(A) / P(B)

이 글은

   P(感冒|打喷嚏x建筑工人) 
    = P(打喷嚏x建筑工人|感冒) x P(感冒) 
    / P(打喷嚏x建筑工人)

의 두 특징이 독립적이라고 가정하면 위의 방정식은

   P(感冒|打喷嚏x建筑工人) 
    = P(打喷嚏|感冒) x P(建筑工人|感冒) x P(感冒)
    / P(打喷嚏) x P(建筑工人)

이 모든 것은 계산할 수 있습니다.

   P(感冒|打喷嚏x建筑工人) 
    = 0.66 x 0.33 x 0.5 / 0.5 x 0.33 
    = 0.66

따라서 침을 내던 건설 노동자는 감기에 걸릴 확률이 66%가 됩니다. 이와 마찬가지로, 이 환자가 알레르기나 뇌진탕에 걸릴 확률을 계산할 수 있습니다. 이 확률을 비교하면 그가 가장 걸릴 확률이 무엇인지 알 수 있습니다.

이것이 베이저 분류기의 기본적인 방법이다: 통계 자료에 기초하여 특정 특성에 따라 각 범주의 확률을 계산하여 분류를 구현한다.

  • 02 순수한 베이어스 분류기의 공식

한 개체가 n개의 특징 (Feature) 을 가지고 있다고 가정하면, 각각 F1, F2,..., Fn, C1, C2,..., Cm 등 m개의 분류가 있습니다. 베이스 분류기는 가장 큰 확률을 계산하는 분류입니다.

   P(C|F1F2...Fn) 
     = P(F1F2...Fn|C)P(C) / P(F1F2...Fn)

P ((F1F2...Fn) 은 모든 범주에 동일하기 때문에, 생략할 수 있으므로, 문제는 수요로 변합니다.

   P(F1F2...Fn|C)P(C)

가장 큰 값은

순수 베이스 분류기는 더 나아가 모든 특징이 서로 독립적이라고 가정합니다.

   P(F1F2...Fn|C)P(C) 
     = P(F1|C)P(F2|C) ... P(Fn|C)P(C)

위의 방정식의 오른쪽에 있는 각 항목은 통계 자료에서 얻을 수 있으며, 이를 통해 각 범주에 대응하는 확률을 계산하여 가장 큰 확률이 있는 범주를 찾을 수 있다.

모든 특징을 서로 독립적으로 하는 가설은 현실에서 실현될 가능성이 거의 없지만 계산을 크게 단순화 할 수 있으며 분류 결과의 정확성에 큰 영향을 미치지 않는 연구가 있습니다.

아래 두 가지 예시를 통해 간단한 베이어스 분류기를 사용하는 방법을 살펴볼 수 있습니다.

  • 03 계정 분류

한 커뮤니티 사이트의 샘플 통계에 따르면, 이 사이트의 10,000개의 계정 중 89%가 진짜 계정 (C0으로 설정) 이며, 11%가 가짜 계정 (C1) 이다.

C0 = 0.89 C1 = 0.11

어떤 계정이 다음 세 가지 특징을 가지고 있다고 가정합니다. F1: 일기 수/등록일 수 F2: 친구 수/ 등록일 수 F3: 실제 헤더 (실제 헤더 1, 비실제 헤더 0) 를 사용하는지 여부 F1 = 0.1 F2 = 0.2 F3 = 0

이 계정이 실제 계정인가 가짜 계정인가? 방법은 단순한 베이어스 분류기를 사용하여 아래 계산식에서 값을 계산하는 것입니다.

P (F1) P (F2) P (F3) P (F3)

위의 값들은 통계 자료에서 얻을 수 있지만, 여기에 문제가 있습니다: F1과 F2는 연속 변수이며, 특정 값의 확률에 따라 계산하는 것은 적합하지 않습니다. 하나의 트릭은 연속 값을 사분 값으로 변환하여, 범위를 계산하는 확률입니다. 예를 들어 F1을 [0, 0.05], ((0.05, 0.2) ], [0.2, +∞] 세 개의 범위에 분해하고, 각 범위에 대한 확률을 계산합니다.

이 문헌은 한 해 동안의 수요에 관한 것입니다.

P ((F1 C0) = 0.5, P ((F1 C1) = 0.1 P (F2C0) = 0.7, P (F2C1) = 0.2 P ((F3 C0) = 0.2, P ((F3 C1) = 0.9

그래서

P (F1 C0) P (F2 C0) P (F3 C0) P (C0) 이 식은 0.5 x 0.7 x 0.2 x 0.89 입니다 0.0623입니다 P ((F1 C1) P ((F2 C1) P ((F3 C1) P ((C1)) 이 식은 0.1 x 0.2 x 0.9 x 0.11 입니다 0.00198 입니다. 보시다시피, 이 사용자는 실제 이미지를 사용하지 않았지만, 가짜 계정에 비해 30배 이상 더 많은 확률로 실제 계정을 사용한다는 것을 판단합니다.

  • 04 성별 분류

아래는 인간의 신체적 특성에 대한 통계자료의 집합입니다.

趣味理解朴素贝叶斯

6피트, 130파운드, 발바닥 8인치에 달하는 사람이 알려져 있는데, 그 사람이 남성인지 여성인지 물어보세요. 순수한 베이어스 분류기에 따라 아래 식의 값을 계산하세요.

P (높이, 성별) x P (체중, 성별) x P (발, 성별) x P (성별)

여기서의 어려움은 키, 체중, 발바닥이 연속적인 변수이기 때문에 분산 변수 방법을 사용하여 확률을 계산할 수 없다는 것입니다. 그리고 표본이 너무 적기 때문에 구간으로 계산할 수 없다는 것입니다. 어떻게 할 수 있습니까? 이 경우 남성과 여성의 키, 체중, 발바닥이 정형 분포라고 가정하면, 샘플을 통해 균등한 값과 분포를 계산하고 정형 분포를 얻는 밀도 함수를 계산할 수 있습니다. 밀도 함수가 있기 때문에 값을 입력하여 특정 지점의 밀도 함수의 값을 계산할 수 있습니다. 예를 들어, 남성의 높이는 평균 5.855이고, 차이는 0.035의 정형 분포입니다. 따라서, 남성의 높이가 6피트인 확률의 상대값은 1.5789과 같습니다.

이 자료를 바탕으로 성별 분류를 계산할 수 있습니다.

P (높이=6명의 남자) x P (체중=130명의 남자) x P (발바닥=8명의 남자) x P (남자)

  = 6.1984 x e-9

P (높이=6명의 여성) x P (체중=130명의 여성) x P (발가락=8명의 여성) x P (여성)

  = 5.3778 x e-4

여성들의 확률이 남성보다 거의 1만 배나 높다는 것을 알 수 있습니다.

위크스컴 퍼블릭 노트


더 많은 내용