0

열 이름에있는 토큰을 기반으로 문서 (실제로는 데이터베이스의 열 이름)를 클러스터해야합니다. 예를 들면 다음과 같습니다. -문서의 토큰이 word 인 경우 문서를 클러스터링합니까?

C1 = ["Date", "Birth"] 
C2 = ["Order", "Date"] 
C3 = ["Birth", "Day"] 
C4 = ["CUSTOMER", "FIRST", "NAME"] 
C5 = ["FIRST","NAME"] 
. 
. 

그러나 이러한 모든 토큰은 실제로 인코딩되므로 실제로 데이터 세트를 따르는 것입니다. > 클러스터 1
C4, C5 - -> 클러스터 2

나는에 깊이 현재 외부

C1 = ["44749712dbec183e983dcd78a7736c41", "e8329d2530ca7d80bb28176883186dfd"] 
C2 = ["a240fa27925a635b08dc28c9e4f9216d", "44749712dbec183e983dcd78a7736c41"] 
C3 = ["e8329d2530ca7d80bb28176883186dfd", "03727ac48595a24daed975559c944a44"] 
C4 = ["979ee13f032c02b4652a4e3c3928d90b", "2c2624a5059934a947d6e25fe8332ade", "ad32e604e17467fc435538334fbddf3e"] 
C5 = ["2c2624a5059934a947d6e25fe8332ade","ad32e604e17467fc435538334fbddf3e"] 
. 
. 

지금 나는 그가
C1은, C2, C3는 것을 값을 인코딩 소모하여 클러스터 할 그렇게하는 방법. 내 문제를 해결할 수있는 알고리즘을 배우는 기계가 있습니까?

현재 Spark MLlib 1.6.0을 사용하고 있지만 문제를 해결하기 위해 Word2Vec과 같은 알고리즘을 적용 할 방법을 찾을 수 없습니다.

인코딩되지 않은 데이터 세트에서 word2vec 또는 알고리즘을 사용할 수 있습니까?

감사합니다.

답변

0

실제로 인코딩이 문제가되지 않아야합니다. 예를 들어, C1 및 C3 문서의 'Birth'키워드는 'e8329d2530ca7d80bb28176883186dfd'와 같습니다. 핵심 작업의 벡터 공간 매핑에 관해서는 모든 키워드를 수집하고 동등한 길이의 벡터를 취할 수 있으며 키워드가 존재하는 경우 벡터 위치를 '1'로 표시하고 그렇지 않으면 '0'으로 표시 할 수 있습니다. 그러나 벡터 공간에 문서를 매핑하는 방법은 다양합니다. Refer this semila book by Jurafsk & Martin. 클러스터링을 수행하는 정확한 모델에 관해서는 K-Mean 또는 K-Nearest Neighbor와 같은 간단한 시작으로 시작하는 여기에 나열 할 방법이 너무 많습니다. ANN 공간에서 사용할 수있는 많은 옵션이 있습니다.

+0

나는 모든 키워드를 미리 가지고 있지 않습니다. 그러면 검색 작업과 같이 데이터베이스 (열)를 계속 검색하면서 키워드를 가져옵니다. 그렇다면 벡터 공간 모델을 만드는 방법은 무엇입니까? 참고서를 보내 주셔서 감사합니다 – Rahul

+0

열을 다시 스캔 할 수 있는지 아니면 한번에 검색해야하는지에 따라 다릅니다. Simpler는 전처리 단계로 벡터 공간을 만든 다음 데이터 포인트를 실제로 다시 만들도록 다시 스캔합니다. 한 번에 할 수 있지만 더 복잡합니다. – Ironluca

+0

스캔 할 열의 총 수가 1,000 만 개를 초과합니다. 단일 데이터 세트 전체를 스캔하는 것은 불가능합니다. 나중에 1 천만 개의 열이 나중에 나타날 수 있습니다. – Rahul

0

word2vec 및 Spark와 같은 최신 hypes로 섞으려는 시도가 쉽지 않습니다. 공상적인 것이 아니라 필요한 것을 사용하십시오.

먼저 유사성이 필요합니다. 각 열을 으로 설정하고 (인코딩 필요 없음)으로 설정 한 다음 Jaccard 인덱스 또는 이와 유사한 값을 계산합니다. 그런 다음 HAC를 클러스터링하십시오.

+0

각 열이 인코딩 형식으로 표시됩니다. Jaccard를 인코딩 된 형식 – Rahul

+0

에 적용 할 수 없습니다. 확실히 Jaccard를 인코딩 된 형식에 적용 할 수 있습니다. 왜 안돼? –