VC 치수가 중요한 이유


12

Wikipedia 는 다음과 같이 말합니다.

VC 차원은 알고리즘이 산산조각 낼 수있는 가장 큰 점 집합의 카디널리티입니다.

예를 들어 선형 분류기는 카디널리티 n + 1을 갖습니다. 내 질문은 왜 우리가 관심을 갖는가? 선형 분류를 수행하는 대부분의 데이터 세트는 매우 큰 경향이 있으며 많은 점이 포함됩니다.

답변:


4

VC 치수는 무엇입니까

@CPerkins가 언급했듯이 VC 차원은 모델의 복잡성을 측정 한 것입니다. 또한 위키 백과와 같이 데이터 포인트를 산산조각내는 능력과 관련하여 정의 할 수도 있습니다.

기본적인 문제

  • 보이지 않는 데이터를 잘 일반화하는 모델 (예 : 분류 자)이 필요 합니다.
  • 특정 양의 샘플 데이터로 제한됩니다.

다음 이미지 ( 여기 에서 가져온 )는 일부 모델 (에스1 까지 에스케이)가 다른 복잡성 (VC 치수)으로 표시되며 여기에서 x 축에 표시되고 h.

바이어스 편차 트레이드 오프

이미지는 VC 차원이 높을수록 경험적 위험 (모델이 표본 데이터에서 발생하는 오류)을 낮출 수 있지만 신뢰 구간이 더 높아짐을 보여줍니다. 이 구간은 모델의 일반화 능력에 대한 신뢰로 볼 수 있습니다.

낮은 VC 치수 (높은 바이어스)

복잡도가 낮은 모델을 사용하는 경우 선형 분류자를 사용할 때 데이터를 선형 모델로 설명 할 수 있다고 가정 할 때 데이터 세트와 관련하여 일종의 가정 (바이어스)을 도입합니다. 그렇지 않은 경우 문제가 비선형이기 때문에 선형 모델로 주어진 문제를 해결할 수 없습니다. 데이터 구조를 배울 수없는 성능이 나쁜 모델로 끝납니다. 그러므로 우리는 강한 편견을 피하려고 노력해야합니다.

높은 VC 차원 (더 큰 신뢰 구간)

x 축의 다른면에서 우리는 데이터의 일반적인 기본 구조, 즉 모델 오버 피트를 학습하는 대신 데이터를 암기 할 수있는 큰 용량의 복잡한 모델을 볼 수 있습니다. 이 문제를 깨닫고 나면 복잡한 모델을 피해야합니다.

우리가 바이어스를 도입하지 않기 때문에 논란의 여지가있을 수 있습니다. 즉, VC 치수는 낮지 만 VC 치수는 높지 않아야합니다. 이 문제는 통계 학습 이론에 뿌리를두고 있으며 편차-분산-거래 로 알려져 있습니다. 이 상황에서해야 할 일은 가능한 한 복잡하고 가능한 한 복잡해야하므로 동일한 경험적 오류로 끝나는 두 모델을 비교할 때는 덜 복잡한 모델을 사용해야합니다.

VC 차원의 아이디어 뒤에 더 많은 것이 있음을 보여줄 수 있기를 바랍니다.


1

VC 차원은 일련의 집합 중 특정 객체 (함수)를 찾기 위해 필요한 정보 (샘플) 비트 수입니다. 객체 (기능) .

V차원은 정보 이론에서 유사한 개념에서 비롯됩니다. 정보 이론은 Shannon의 다음 관찰에서 시작되었습니다.

당신이 가지고 있다면 N 객체와 이들 중 특정 개체를 찾고 있습니다. 이 객체를 찾으려면 몇 비트의 정보가 필요 합니까? 객체 세트를 두 개의 절반 으로 나누고 "찾고있는 객체의 절반이 어디에 있습니까?"라고 물을 수 있습니다. . 상반기에 있으면 "yes"를, 하반기에 있으면 "no"를받습니다. 다시 말해, 1 비트의 정보 를받습니다 . 그 후, 같은 질문을하고 마침내 원하는 물체를 찾을 때까지 세트를 반복해서 나눕니다. 몇 비트의 정보가 필요합니까 ( 예 / 아니오 )? 분명히영형2() 비트 정보-정렬 된 배열의 이진 검색 문제와 유사합니다.

Vapnik과 Chernovenkis는 패턴 인식 문제에서 비슷한 질문을했습니다. 당신이 세트를 가지고 있다고 가정 주어진 st 함수 엑스각 함수는 yes 또는 no (감독 된 이진 분류 문제)를 출력 합니다.특정 함수를 찾고있는 함수, 주어진 데이터 세트에 대해 올바른 결과 예 / 아니오 를 제공하는 함수={(엑스1,와이1),(엑스2,와이2),...,(엑스,와이)}. 다음과 같은 질문을 할 수 있습니다. "어떤 함수가 no를 반환 하고 어떤 함수가 특정 함수에 대해 yes 를 반환합니까?엑스나는데이터 세트에서. 당신이 가지고있는 훈련 데이터에서 실제 답변이 무엇인지 알고 있기 때문에 일부에 대한 잘못된 답변을 제공하는 모든 기능을 버릴 수 있습니다엑스나는. 몇 비트의 정보가 필요합니까? 다시 말하면, 잘못된 기능을 모두 제거하려면 몇 가지 훈련 예제가 필요합니까? . 이것은 정보 이론에서 Shannon의 관찰과는 약간의 차이입니다. 함수 세트를 정확히 반으로 나누지 않고 있습니다 (아마도 하나의 함수 중 하나 일 수 있습니다) 일부에게는 잘못된 답변을 제공합니다 엑스나는), 아마도 함수 집합이 매우 커서 다음과 같은 함수를 찾기에 충분합니다. ϵ-원하는 기능에 가깝고이 기능이 ϵ-확률로 마감 1δ ((ϵ,δ)- PAC의 프레임 워크) 샘플, 정보의 비트 수 (수) 당신이 될 것입니다 필요영형2/δϵ.

이제 집합 중 함수 오류를 저 지르지 않는 함수가 없습니다. 이전과 마찬가지로 다음과 같은 기능을 찾기에 충분합니다.ϵ-확률로 마감 1δ. 필요한 샘플 수는영형2/δϵ2.

두 경우 모두 결과는 다음에 비례합니다. 영형2 -이진 검색 문제와 유사합니다.

이제 무한한 함수 집합을 가지고 있고 그 함수들 중에서 ϵ-확률이 가장 좋은 기능에 가깝습니다. 1δ. 함수가 연속적인 (SVM) 아프고 연속적인 함수를 찾았다 고 가정합니다 (설명을 단순화하기 위해).ϵ-최고의 기능에 가깝습니다. 함수를 조금만 이동하면 분류 결과가 변경되지 않으므로 첫 번째와 동일한 결과로 분류되는 다른 함수가 있습니다. 동일한 분류 결과 (분류 오류)를 제공하는 이러한 모든 기능을 사용하여 데이터를 정확히 동일한 손실 (그림의 한 줄)로 분류하므로 단일 기능으로 계산할 수 있습니다.

여기에 이미지 설명을 입력하십시오

___________________ 두 라인 (기능)이 동일한 성공으로 포인트를 분류합니다.

그러한 함수 세트 에서 특정 함수를 찾으려면 몇 개의 샘플이 필요합니까 (각 함수가 주어진 포인트 세트에 대해 동일한 분류 결과를 제공하는 함수 세트로 함수를 고안했음을 기억하십시오)? 이것은 무엇입니까V 차원은 말한다- 영형2 에 의해 대체 V특정 포인트에 대해 동일한 분류 오류가있는 일련의 함수로 나뉘어 진 무한 연속 함수가 있기 때문입니다. 필요한 샘플 수는V영형(δ)ϵ 완벽하게 인식하는 기능이 있다면 V영형(δ)ϵ2 원래 기능 세트에 완벽한 기능이없는 경우

그건, V 차원은 달성하기 위해 필요한 많은 샘플에 대한 상한을 제공합니다 (btw는 개선 할 수 없음). ϵ 확률 오류 1δ.


0

VC 차원은 모델의 복잡성을 측정 한 것입니다. 예를 들어, VC 차원 Dvc를 고려할 때 모델의 복잡성을 고려할 때 n = 10xDvc 데이터 포인트가 있어야한다는 것이 좋습니다.

이를 사용하여 테스트 오류에 대한 상한을 만들 수도 있습니다.

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