운이없는 머신 러닝에서 "버킷 화"에 대한 명확한 설명을 찾기 위해 노력하고 있습니다. 지금까지 이해 한 것은 버킷 화가 연속적인 값의 범위가 하나의 이산 값으로 대체되는 디지털 신호 처리의 양자화와 유사하다는 것입니다. 이 올바른지?
버킷 화 적용의 장단점 (정보 손실의 명백한 영향 외에)은 무엇입니까? 버킷 화 적용 방법에 대한 경험 규칙이 있습니까? 머신 러닝을 적용하기 전에 버킷 화를 적용하기위한 지침 / 알고리즘이 있습니까?
운이없는 머신 러닝에서 "버킷 화"에 대한 명확한 설명을 찾기 위해 노력하고 있습니다. 지금까지 이해 한 것은 버킷 화가 연속적인 값의 범위가 하나의 이산 값으로 대체되는 디지털 신호 처리의 양자화와 유사하다는 것입니다. 이 올바른지?
버킷 화 적용의 장단점 (정보 손실의 명백한 영향 외에)은 무엇입니까? 버킷 화 적용 방법에 대한 경험 규칙이 있습니까? 머신 러닝을 적용하기 전에 버킷 화를 적용하기위한 지침 / 알고리즘이 있습니까?
답변:
이것은 광범위한 주제이며 데이터가 버킷 화되거나 이미 버킷 화되어야하는 다양한 이유에 직면하게됩니다. 그들 모두가 예측 정확도와 관련이있는 것은 아닙니다.
먼저, 모델러가 버킷 화하려는 예가 있습니다. 신용 점수 모델을 작성한다고 가정 해 보겠습니다. 대출에 대한 사람들의 성향을 알고 싶습니다. 내 데이터에는 신용 보고서의 상태를 나타내는 열이 있습니다. 즉, 나는 평가 기관에서 보고서를 주문했고, 그 기관은이 점수의 신뢰성을 나타내는 범주 형 변수와 함께 자사의 독점 점수와 같은 점수를 반환했습니다. 이 지표는 내 목적에 필요한 것보다 훨씬 세분화 될 수 있습니다. 예를 들어, "신뢰할만한 점수를 얻을 수있는 정보가 충분하지 않습니다"는 "20 세 미만", "최근에 국가로 이동", "사전 신용 기록 없음"등의 많은 클래스로 분류 될 수 있습니다. 은 희박하게 채워질 수 있으므로 회귀 또는 다른 모델에서는 다소 쓸모가 없습니다. 이를 해결하기 위해 통계적 힘을 "대표"클래스로 통합하기 위해 같은 클래스를 함께 모을 수 있습니다. 예를 들어, "좋은 정보 반환"대 "정보가 반환되지 않음"이라는 이진 표시기를 사용하는 것이 합리적 일 수 있습니다. 내 경험에 따르면 많은 버킷 화 응용 프로그램이이 일반에 속합니다.드물게 채워진 카테고리 유형의 축소 .
일부 알고리즘은 내부적으로 버킷 화를 사용합니다. 예를 들어, 부스팅 알고리즘에 맞는 트리는 종종 요약 단계에서 대부분의 시간을 소비하며, 여기서 각 노드의 연속 데이터는 이산화되고 각 버킷의 응답 평균값이 계산됩니다. 이것은 부스팅으로 인한 정확도의 큰 희생없이 적절한 분할을 찾는 계산 복잡성을 크게 줄입니다.
사전 버킷 화 된 데이터 를 받을 수도 있습니다 . 불연속 데이터는 압축 및 저장이 더 쉽습니다. 긴 부동 소수점 수는 압축 할 수 없지만 "높음", "중간"및 "낮음"으로 불연속 화하면 데이터베이스에 많은 공간을 절약 할 수 있습니다. 귀하의 데이터는 모델링이 아닌 응용 프로그램을 대상으로하는 소스에서 가져온 것일 수도 있습니다. 분석 작업이 덜한 조직으로부터 데이터를 수신하면 이러한 현상이 자주 발생합니다. 이들의 데이터는 종종보고에 사용되며 보고서를 일반인에게 해석하는 데 도움을주기 위해 높은 수준으로 요약됩니다. 이 데이터는 여전히 유용 할 수 있지만 종종 일부 전력이 손실됩니다.
값이 적지 만 수정이 가능하지만 모델링을위한 연속 측정의 사전 버킷 팅입니다. 연속 예측 변수에 비선형 효과를 적용 할 수있는 매우 강력한 방법이 많이 있으며 Buckeization을 통해 이러한 기능을 사용할 수 없습니다. 나는 이것을 나쁜 습관으로 보는 경향이 있습니다.
기사에 따르면 "낮은 수준의 데이터 과학 대 높은 수준" bucketization입니다
버킷 화 단계 (다변량 비닝 (multivariate binning)라고도 함)는 예측력이 높은 메트릭 (및 2-3 메트릭의 조합)을 식별하고 적절하게 결합 및 비닝하여 버킷 내부의 편차를 줄이면서 버킷을 충분히 크게 유지합니다.
따라서 가장 예측 가능한 기능에 따라 데이터를 탐욕스럽게 비운 다음 하위 그룹을 분석한다는 것을 이해합니다.