클러스터링 문제에 대한 기능 선택


9

비지도 알고리즘 (클러스터링)을 사용하여 서로 다른 데이터 세트를 그룹화하려고합니다. 문제는 많은 기능 (~ 500)과 소량의 사례 (200-300)가 있다는 것입니다.

지금까지 나는 항상 데이터를 훈련 세트로 분류 한 분류 문제 만 사용했습니다. 거기에서 기능의 사전 선택을 위해 몇 가지 기준 (예 : random.forest.importance 또는 information.gain)을 사용한 다음 관련 학습자를 찾기 위해 여러 학습자에 대해 순차적 인 순방향 선택을 사용했습니다.

이제 비지도 학습의 경우 사전 선택에 대한 기준이 없으며 순차적 순방향 선택을 사용할 수 없습니다 (적어도 mlr 패키지에는 없음).

클러스터링 알고리즘에 영향을주는 소수의 기능을 찾기 전에 주성분 분석을 수행 할 수 있는지 궁금합니다. 아니면 다른 아이디어가 있습니까?

감사

편집하다:

좋아, 그래서 온라인으로 약간의 연구를 한 후에 나는 나의 질문을 약간 업데이트 할 수 있습니다. 우선 두 가지 이유로 인해 클러스터링 알고리즘 전에 PCA의 사용을 방해하는 기사를 읽었습니다.

  • PC는 모든 기능의 기능이므로 결과를 초기 데이터 세트와 연관시키기가 어렵 기 때문에 해석하기가 어렵습니다.

  • 또한, 실제로는 기능의 아주 작은 부분 만이 클러스터링을 수행하는 데 도움이된다는 문제가있는 경우, 이러한 기능이 샘플 (PC가하는 것) 사이에서 가장 큰 차이를 나타내는 것이라고 말하지 않습니다.

그래서 PCA는 테이블에서 벗어났습니다 ...

이제 클러스터링을위한 순방향 순방향 선택을 수행하는 초기 아이디어로 돌아 왔습니다.

어떤 성능 측정을 권장하십니까? (나는 Dunn-Index에 대해 생각했다) 어느 클러스터링 알고리즘이 같은 크기의 클러스터를 만들까요? (계층 적 클러스터링의 경우 일반적으로 하나의 특이 값을 가진 하나의 클러스터와 나머지 모든 특성을 가진 하나의 클러스터를 얻습니다.

너희들이 나를 도울 수 있기를 바랍니다 ...


감독되지 않은 문제에 임의 포리스트를 적용 할 수 있습니다. 그리고 프로세스에서 여전히 유익한 기능을 추출 할 수 있다고 생각합니다.
amanita kiki

답변:


11

비지도 학습 문제의 차원 축소에 대해 몇 가지 생각을 나누었습니다. 대답에 따르면, 귀하의 관심은 해석이 의도적으로 강조되지 않는 자동화 된 턴키, 블랙 박스 및 "로우 터치"머신 러닝 접근법과 달리 "고 터치"인간 개입 WRT 클러스터 해석에 있다고 가정했습니다. . 후자라면 왜 질문을하겠습니까? 또한 전략적 B2C 마케팅, B2B 기술 분야 및 교육 정책 (학생 및 학교 클러스터링)을 포함하여 수년에 걸쳐 광범위한 비즈니스 환경에서 클러스터 솔루션을 실행 한 경험이 많았습니다.

먼저 "다른 데이터 세트 그룹화"에 대한 귀하의 의견에 대해 질문이 있습니다. 나는 당신이 무엇을 의미하는지 또는 그것이 어떻게 접근에 영향을 줄 수 있는지 알지 못했고 당신이 자세히 설명하기를 바랐습니다.

PCA 기반 솔루션이 "해석하기 어렵다"는 위의 # 1 가정에 도전하고 싶습니다. 클러스터링의 예비 단계로 PCA를 실행하는 이유는 많은 클러스터링 알고리즘이 기능 중복성에 민감한 한 결과 솔루션 의 위생 과 관련이 있습니다. PCA는이 중복성을 관리 가능한 소수의 구성 요소로 축소하여 기능 선택과 관련하여주의해야 할 과제와 어려움을 최소화합니다. PCA에서 출력 된 구성 요소가 개별 기능의 세분성 및 특이성을 흐리게하는 것은 사실이지만 이는 전적으로 의지 할 경우 문제가됩니다결과를 분석 할 때 해당 구성 요소에 대해 다시 말해, 클러스터 해석을위한 구성 요소 만 사용하는 데 전혀 제한이 없습니다. 뿐만 아니라, 요인 차원이 무엇을 의미하는지 신경 쓰지 않아도됩니다. 그것들은 실행 가능한 솔루션을 용이하게하기위한 중간적이고 (궁극적으로) 일회용 수단 일뿐입니다. 그러나 팀이 "의미있는"요소 솔루션을 신중하게 구축 할 수 있기 때문에 몇 주를 소비 할 수 있기 때문에이 점을 고려할 때 많은 실무자와 다릅니다. 나에게 이것은 비효율적 인 고객 시간과 비용 낭비입니다.

이 시점에서 해결해야 할 기술적 고려 사항이 많이있을 것입니다. 예를 들어, PCA 알고리즘이 스케일 불변성이 아닌 경우 (예 : OLS vs ML), 결과 PCA 솔루션이 왜곡되어 높은 분산 기능에 더 많이로드됩니다. 이 경우 이러한 차이를 평탄화하기 위해 기능을 사전 처리하거나 변형해야합니다. 여기에는 평균 표준화, 범위 또는 IQR 표준화, ipsative scaling 등을 포함하여 수많은 가능성이 있습니다. 이 변환을 활용하여 가장 해석하기 쉬운 최상의 솔루션을 제공하십시오.

클러스터 솔루션이 생성되면 구성 요소를 무시하고 솔루션에 직접 사용되지 않은 추가 설명 정보와 함께 원래 기능을 축소하여 해석에 가장 동기를 부여합니다. 이 시점에서 몇 가지 휴리스틱이 정 성적 통찰력에 대한 최고의 가이드입니다. 이는 전체 샘플의 총 평균을 나타내는 추가 열뿐만 아니라 각 기능 (시트의 행), 각 클러스터 (열)의 평균 또는 중앙값을 기반으로 클러스터를 프로파일 링하는 스프레드 시트를 생성하는 것만 큼 쉽습니다. . 그런 다음 각 평균에 대한 각 지형지 물의 클러스터 평균을 총 평균에 곱하고 100을 곱하면 약 "100"이 "정상"IQ 또는 평균 동작 인 한 IQ 점수와 같은 휴리스틱이 생성됩니다. 120+의 인덱스는 클러스터의 동작에 대해 기능이 "true"일 가능성이 높음을 나타내며 80 이하의 인덱스는 클러스터의 "true"가 아닌 기능을 나타냅니다. 120+ 및 80 이하의 이러한 인덱스는 솔루션을 구동 할 때 주어진 기능의 중요성에 대한 프록시 t- 테스트와 같습니다. 물론, 유의성에 대한 그룹 테스트를 수행 할 수 있으며 샘플 크기에 따라 이러한 빠르고 더러운 규칙에 따라 다양한 답변을 얻을 수 있습니다.

그래도 모든 후에도 PCA를 클러스터링 알고리즘에 직접 입력하는 데 반대한다고 가정하면 감소 된 기능 세트를 선택하는 방법에 대한 문제가 남아 있습니다. PCA는 종속 변수없이 회귀를 실행하는 것과 같기 때문에 PCA는 여전히 유용합니다. 각 구성 요소의 최상위로드 기능은 클러스터 알고리즘의 입력이 될 수 있습니다.

많은 수의 특징과 데이터의 상대적으로 작은 표본 크기에 대한 요점으로, 많은 "전체 정보"다변량 분석의 일반적인 경험 법칙은 특징 당 최소 약 10 개의 관측치입니다. 이 문제를 해결하기 위해 활용할 수있는 몇 가지 특수한 방법이 있습니다. 예를 들어, 부분 최소 제곱 (PLS)은 Herman Wold에 의해 1990 년 에이 정확한 문제에 직면하는 화학 계량과 같은 분야에서 사용하기위한 이론적 경험론 에서 처음 개발되었습니다 . 본질적으로 팩터 분석이지만 차원을 생성하기 위해 큰 n을 요구하는 것은 훨씬 덜 엄격합니다. 다른 솔루션으로는 방대한 양의 정보와 함께 사용되는 임의의 포리스트와 같은 "분할 및 정복"기계 학습 방식이 있습니다. 이 방법들은이 PDF에서 검토됩니다http://www.wisdom.weizmann.ac.il/~harel/papers/Divide%20and%20Conquer.pdf

그러나 여전히 요인 분석과는 아무런 관련이 없으며 어떤 종류의 감독 된 "순차적"선택 프로세스를 실행하는 데 어려움이 있다고 결정했다고 가정 해보십시오. 필자의 견해로는 가장 중요한 문제는 사후 성능 메트릭 (Dunn Index)을 찾는 것이 아니라이 방법을 사용할 수 있도록 적합한 프록시 (종속 변수)를 식별하는 것입니다. 이 결정은 전적으로 귀하의 판단과 귀하의 데이터에 대한 SME 상태의 기능입니다. "모범 사례"는 없으며 이에 대한 답변이 훨씬 적으며 데이터를 설명하는 방법과 작은 어려움이 없습니다.

결정이 내려지면 문자 그대로 수백 가지의 변수 선택 솔루션을 선택할 수 있습니다. 변수 선택은 모든 통계 학자와 동생이 논문을 발표 한 주제 영역입니다. 선호하는 접근 방식은 "순차적 순방향 선택"인 것 같습니다.

알고리즘의 일부로 클러스터 솔루션에서 접히는지도 학습 모델이 존재한다는 점은 주목할 가치가 있습니다. 여기에는 잠재 클래스 모델로 알려진 크고 유연한 접근 방식이 포함됩니다. LC 모델의 핵심은 2 단계라는 것입니다. 1 단계에서 DV가 정의되고 회귀 모델이 작성됩니다. 두 번째 단계에서는 모델의 잔차 출력 (단일 잠복 벡터)의 이질성이 잠재 "클래스"로 분할됩니다. 이 CV 토론에서 LC 모델링에 대한 개요가 있습니다 ... 잠재 클래스 다항 로짓 모델 의심

도움이 되었기를 바랍니다.


시간을내어 내 질문에 광범위하게 답변 해 주셔서 감사합니다. 우선, 내가 연구하고있는 분야이기 때문에 화학량 론을 언급 한 것은 재미 있습니다. 다른 샘플의 측정에서 클러스터를 찾으려고하는데 내 기능은 nmr 스펙트럼의 신호입니다. 또한 분석의 목표는 클러스터를 소수의 실제 기능 (신호)과 연관시키는 것이기 때문에 PCA를 조기에 버리는 것에 대해 생각한 주된 이유이기도합니다. 나는 순차적 인 선택을 사용하여 죽지 않았으며, 그것은 지금까지 내가 사용한 것입니다. 당신이 준 링크를 살펴볼 것입니다.
JohnDoe

그것은 화학량 론에 대해 재미 있습니다. Wold의 책은 일반적으로 잘 읽습니다. 어떤 종류의 "대상"이 샘플을 구성합니까? 그리고 nmrs 이미징은 무엇입니까?
Mike Hunter

샘플은 수성 식물 추출물이고 1H-nmr ​​스펙트럼을 취한다. 내 임무는 순전히 탐구 적입니다. 나중에 다른 유전자형이나 가뭄 스트레스 저항 등과 같은 식물의 다른 특징과 관련이있는 클러스터를 찾아야합니다. 올바른 대사 산물 세트를 찾기위한 좋은 출발점을 찾는 것은 쉽지 않습니다. / 질문은 다른 질문에 대해 다른 기능으로 만들어진 다른 클러스터가 있기 때문에 클러스터를 나누는 데 도움이됩니다.
JohnDoe

따라서 순차적 접근 방식이 가장 효과적이라고 생각했습니다.-데이터를 클러스터링하는 기능 세트를 찾은 다음 전체 세트에서 해당 기능을 제거하고 다시 시작하십시오. 이렇게하면 나중에 관련 될 수있는 여러 클러스터 세트를 찾을 수 있습니다. 다른 질문
JohnDoe

1
고려해야 할 사항은 탐색 작업을 "확인"클러스터 분석이라고하는 미리 결정되거나 정의 된 클러스터 세트와 비교하는 것입니다. 나는 이것이 당신과 당신의 팀이 식물 "가뭄 스트레스 저항"의 기능으로서 클러스터 형성에 대한 강력한 가설을 가지고있는 것처럼 들리기 때문에 이것을 제안합니다. 탐구 작업이 탁월한 통찰력과 결과를 제공 할 것입니다. 탐색 적 클러스터링은 데이터에서 사용 가능한 모든 정보를 활용하는 반면 "확인"할당 규칙은 일반적으로 상대적으로 소수의 기능을 활용합니다.
Mike Hunter

1

필요한 것은 클러스터링 품질의 기준입니다. 아이디어는 다음과 같습니다. 기차에서 데이터를 분할하고 테스트하고 기차 부분에 클러스터링을 구축합니다. 이 클러스터링을 사용하여 (가장 가까운 클러스터에 의해) 테스트 세트의 각 요소를 클러스터하십시오. 테스트 세트에 별도의 클러스터링을 구축하십시오. 예측 된 클러스터링을 사용하여 테스트에서 클러스터링의 유사성을 찾으십시오. 이 유사성은 클러스터링 품질의 기준입니다. 지금,이 유사성을 측정하는 방법은 당신에게 달려 있습니다. 일단 얻은 후에는 기능의 하위 집합을 선택하여이 유사성을 최대화합니다.

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