카이 제곱 테스트는 어떤 기능 선택을 사용할 수 있습니까?


11
  1. 여기에서는 다른 사람들이지도 학습에서 기능 선택 wrt 결과에 카이 제곱 테스트를 사용하기 위해 일반적으로 수행하는 작업에 대해 묻고 있습니다. 올바르게 이해하면 각 기능과 결과 사이의 독립성을 테스트하고 각 기능에 대한 테스트 사이의 p 값을 비교합니까?

  2. 에서 http://en.wikipedia.org/wiki/Pearson%27s_chi-squared_test ,

    Pearson의 카이 제곱 검정은 범주화 된 데이터 세트에 적용되는 통계 테스트로 , 세트 간 관측 된 차이가 우연히 발생했을 가능성을 평가합니다.

    ...

    독립성 검정은 우발성 표에 표시된 두 변수에 대한 쌍으로 된 관측치가 서로 독립적인지 여부를 평가합니다 (예 : 국적이 응답과 관련이 있는지 확인하기 위해 다른 국적의 사람들의 응답 응답).

    따라서 테스트에 의해 독립성이 테스트되는 두 변수는 범주 형이거나 이산 형 (범주 형 외에 순서가 허용됨)이지만 연속적이지 않아야합니까?

  3. 에서 http://scikit-learn.org/stable/modules/feature_selection.html , 그들은

    iris 데이터 세트 에 대해 테스트를 수행 하여 두 가지 최상의 기능 만 검색하십시오.χ2

    에서 홍채 데이터 세트 , 모든 기능은 평가 수치 연속, 그리고 결과는 클래스 레이블 (범주)입니다. 카이 제곱 독립성 테스트는 연속 피처에 어떻게 적용됩니까?

    카이 제곱 독립성 테스트를 데이터 세트에 적용하려면 먼저 비닝을 통해 연속 피처를 이산 피처로 변환해야합니다 (즉, 피처의 연속 도메인을 빈으로 분리 한 다음 피처를 피처의 피처 값 발생으로 대체) )?

    여러 구간에서 발생하면 다항식 특성 (각 구간에서 발생 또는 발생하지 않음)이 발생하므로 카이 제곱 독립성 검정이 적용될 수 있습니다.

    내가 추측 한대로, 우리는 카이 제곱 독립 테스트를 모든 종류 의 기능 결과에 적용 할 수 있습니까?

    결과 부분의 경우 카이 제곱 독립성 테스트에서 연속 결과를 비닝하여 분류뿐만 아니라 회귀에 대한 피처를 선택할 수 있습니다.

  4. scikit 학습 사이트 도 말합니다

    음이 아닌 각 피처와 클래스 사이의 카이 제곱 통계를 계산 합니다.

    이 점수는 X에서 테스트 카이 제곱 통계량에 대해 가장 높은 값을 갖는 n_features 피처를 선택하는 데 사용될 수 있습니다. 여기에는 부울 또는 빈도 (예 : 문서 분류의 용어 수) 와 같은 음이 아닌 피처 만 포함해야합니다 . 클래스.

    테스트에 음이 아닌 기능이 필요한 이유는 무엇입니까?

    지형지 물에 표시가 없지만 범주 형이거나 이산 형인 경우 테스트를 계속 적용 할 수 있습니까? (1 부 참조)

    기능이 부정적이라면, 우리는 항상 도메인을 비닝하고 그것들을 발생으로 대체 할 수 있습니다.

참고 : Scikit Learn은 일반적인 원칙을 따르는 것 같습니다. 이것이 바로 제가 요청하는 것입니다. 그렇지 않다면 여전히 괜찮습니다.

답변:


2

혼란의 일부는 카이 제곱으로 비교할 수있는 변수 유형에 관한 것입니다. Wikipedia는 이에 대해 다음과 같이 말합니다.

표본에서 관찰 된 특정 사건의 빈도 분포가 특정 이론적 분포와 일치한다는 귀무 가설을 검정합니다.

따라서 카운트라고도하는 음수 분포를 음수가 아닌 숫자라고도합니다. 다른 빈도 분포는 범주 형 변수에 의해 정의됩니다. 즉, 범주 형 변수의 각 값에 대해 다른 변수와 비교할 수있는 빈도 분포가 필요합니다.

주파수 분포를 얻는 방법에는 여러 가지가 있습니다. 이는 제 2 범주 형 변수에 의한 것일 수 있으며, 제 1 범주 형 변수와의 공존은 이산 주파수 분포를 얻기 위해 계산된다. 다른 옵션은 범주 형 변수의 다른 값에 대해 (다수) 숫자 형 변수를 사용하는 것입니다. 예를 들어 숫자 형 변수의 값을 합할 수 있습니다. 실제로 범주 형 변수가 이진화 된 경우 전자가 나중에 특정 버전입니다.

예를 들어 다음 변수 세트를 살펴보십시오.

x = ['mouse', 'cat', 'mouse', 'cat']
z = ['wild', 'domesticated', 'domesticated', 'domesticated']

범주 형 변수 x와는 y공동 차례 나오는 계산하여 비교, 이것은 카이 제곱 테스트와 함께 발생하는 것입니다 수 있습니다 :

                 'mouse'    'cat'
'wild'              1         0
'domesticated'      1         2

그러나 'x'의 값을 이진화하고 다음 변수를 얻을 수도 있습니다.

x1 = [1, 0, 1, 0]
x2 = [0, 1, 0, 1]
z = ['wild', 'domesticated', 'domesticated', 'domesticated']

값을 세는 것은 이제 값에 해당하는 값을 합산하는 것과 같습니다 z.

                 x1    x2
'wild'           1     0
'domesticated'   1     2

보시다시피 단일 범주 형 변수 ( x) 또는 여러 숫자 형 변수 ( x1x2)는 우발 사태 표에서 동일하게 표시됩니다. 따라서 카이 제곱 검정은 범주 형 변수 (sklearn의 레이블)에 다른 범주 형 변수 또는 여러 숫자 형 변수 (sklearn의 특징)와 결합하여 적용 할 수 있습니다.


따라서 chi_square 피처 선택을 음이 아닌 피처 (freq, count, ect)에만 사용할 수 있다면 음의 값을 가진 피처가있는 상황에서는 어떤 의미입니까? 기능을 변환하거나 다른 기능 선택 방법을 사용 하시겠습니까? Iris Dataset에 대해 새로운 연구를했고 매일 sepal length의 변화를 측정하는 기능이 있다고 가정합니다. 결국 음수 값이 있습니다. 식물은 시들고 수축하여 길이가 음수로 바뀝니다. 어쩌면 우리는 식물이 얼마나 빨리 시들어 지는지에 따라 어떤 식물인지 분류하려고합니다.
Arash Howaida 님이

1
카이 제곱은 값의 비율 (예 : 빈도 분포)을 기반으로합니다. 이는 (이진화 된) 기능 값을 합산하여 구현됩니다. 따라서 전체 합계의 일부에 의미가 있어야합니다. 음수 값의 경우에는 그렇지 않습니다.
Pieter
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.