0

계층 적 집적 클러스터이 형식으로 데이터를 클러스터링 할 수 있습니까?계층 적 집적 클러스터링

"beirut,proff,email1" 
"beirut,proff,email2" 
"swiss,aproff,email1" 
"france,instrc,email2" 
"swiss,instrc,email2" 
"beirut,proff,email1" 
"swiss,instrc,email2" 
"france,aproff,email2" 

그렇지 않은 경우 문자열 값이있는 데이터를 클러스터링하는 호환 가능한 클러스터링 알고리즘은 무엇입니까?

도움 주셔서 감사합니다.

답변

0

모든 유형의 클러스터링에는 거리 메트릭이 필요합니다. 당신이 당신의 끈으로 기꺼이하는 모든 것이 서로 같거나 같지 않으면, 당신이 할 수있는 최선은 현장에서의 해밍 거리입니다. 즉, "abc , def, ghi "및"uvw, xyz, ghi "는 2이고"abw, dez, ghi "사이의 거리는 2입니다. 특정 필드 내에 유사한 문자열을 클러스터하려면 - 클러스터링"Slovakia "및 "슬로베니아"라는 이름의 유사성 때문에 또는 "폴란드"와 "우크라이나"는 서로 국경을 이루기 때문에보다 복잡한 측정 항목을 사용하게됩니다. 거리 메트릭이 주어지면 계층 적 응집 클러스터링이 제대로 작동해야합니다.

그러나 여기서는 클러스터링이 실제로 수행하기를 원하는 것으로 가정합니다. 데이터 집합은 클러스터링을위한 이상한 유스 케이스처럼 보입니다.

+0

실제로 거리 메트릭을 사용하지 않는 많은 클러스터링 알고리즘이 있습니다. –

+0

Anony-Mousse : 거리 측정법을 사용하지 않는 클러스터링 알고리즘에 대해 제게 알려주십시오. –

0

계층 적 클러스터링은 다소 유연한 클러스터링 알고리즘입니다. 어떤 연계 (와드)를 제외하고는 "거리"에 대한 요구 사항이 없습니다 - 유사점 일 수도 있지만 일반적으로 음수 값도 마찬가지로 작동하며 삼각형 불평등 등은 필요하지 않습니다.

k-means와 같은 다른 알고리즘은 훨씬 더 제한적입니다. K- 평균은 분산을 최소화합니다. 그래서 그것은 (제곱 된) 유클리드 거리만을 처리 할 수 ​​있습니다; 그리고 그것은 수단을 계산할 수 있어야하므로 데이터는 연속적이고 고정 된 차원 벡터 공간에 있어야합니다. 희박성이 문제 일 수 있습니다.

아마도 더욱 유연한 알고리즘 중 하나는 Generalized DBSCAN입니다. 본질적으로, 그것은 "x가 y의 이웃"(예를 들어, ε보다 작은 거리) 및 "코어 포인트"(예를 들어, 밀도)를 측정하기위한 술어 인 바이너리 결정을 필요로한다. 더 이상 하나의 "거리"가 아닐 수도있는 임의의 복합어와 같은 술어를 생각해 낼 수 있습니다.

어느 쪽이든 : 이러한 레코드의 유사성을 측정 할 수 있다면, 검색 클러스터링은을 사용해야합니다. 문제는 3 비트가 아니라 "그 이메일이 같다", "같은 이름을 가지고있다", "같은 위치에있다"등 3 비트가 아닌 유사성을 충분히 얻을 수 있다면 3 비트가 재미있는 계층 구조.