다음을 통해 공유


Microsoft 시퀀스 클러스터링 알고리즘 기술 참조

Microsoft 시퀀스 클러스터링 알고리즘은 Markov 체인 분석을 사용하여 순서가 지정된 시퀀스를 식별하는 하이브리드 알고리즘이며, 이 분석 결과를 클러스터링 기술과 결합하여 모델의 시퀀스 및 기타 특성을 기반으로 클러스터를 생성합니다. 이 항목에서는 알고리즘의 구현, 알고리즘을 사용자 지정하는 방법 및 시퀀스 클러스터링 모델에 대한 특별한 요구 사항에 대해 설명합니다.

시퀀스 클러스터링 모델을 찾아보고 쿼리하는 방법을 포함하여 알고리즘에 대한 자세한 내용은 Microsoft 시퀀스 클러스터링 알고리즘을 참조하세요.

Microsoft 시퀀스 클러스터링 알고리즘 구현

Microsoft 시퀀스 클러스터링 모델은 Markov 모델을 사용하여 시퀀스를 식별하고 시퀀스의 확률을 결정합니다. Markov 모델은 서로 다른 상태 간의 전환을 저장하는 지시된 그래프입니다. Microsoft 시퀀스 클러스터링 알고리즘은 숨겨진 Markov 모델이 아닌 n-order Markov 체인을 사용합니다.

Markov 체인의 주문 수는 현재 상태의 확률을 결정하는 데 사용되는 상태 수를 알려줍니다. 1차 Markov 모델에서 현재 상태의 확률은 이전 상태에만 따라 달라집니다. 2차 Markov 체인에서 상태의 확률은 이전 두 상태 등에 따라 달라집니다. 각 Markov 체인에 대해 전환 행렬은 각 상태 조합에 대한 전환을 저장합니다. Markov 체인의 길이가 증가함에 따라 행렬의 크기도 기하급수적으로 증가하고 행렬은 매우 희박해집니다. 처리 시간도 비례적으로 증가합니다.

사이트의 웹 페이지 방문을 분석하는 클릭스트림 분석 예제를 사용하여 체인을 시각화하는 것이 유용할 수 있습니다. 각 사용자는 각 세션에 대해 긴 클릭 시퀀스를 만듭니다. 웹 사이트에서 사용자 동작을 분석하는 모델을 만들 때 학습에 사용되는 데이터 집합은 동일한 클릭 경로의 모든 인스턴스 수를 포함하는 그래프로 변환되는 일련의 URL입니다. 예를 들어, 그래프에는 사용자가 1페이지에서 2페이지로 이동할 확률(10%), 사용자가 1페이지에서 3페이지로 이동할 확률(20%) 등이 포함되어 있습니다. 가능한 모든 경로와 경로 조각을 함께 배치하면 관찰된 단일 경로보다 훨씬 길고 복잡할 수 있는 그래프를 얻을 수 있습니다.

기본적으로 Microsoft 시퀀스 클러스터링 알고리즘은 클러스터링의 EM(Expectation Maximization) 메서드를 사용합니다. 자세한 내용은 Microsoft 클러스터링 알고리즘 기술 참조를 참조하세요.

클러스터링의 대상은 순차적 특성과 비순차적 특성입니다. 각 클러스터는 확률 분포를 사용하여 임의로 선택됩니다. 각 클러스터에는 전체 경로 집합을 나타내는 Markov 체인과 시퀀스 상태 전환 및 확률을 포함하는 행렬이 있습니다. 초기 분포에 따라 Bayes 규칙은 특정 클러스터에서 시퀀스를 포함한 모든 특성의 확률을 계산하는 데 사용됩니다.

Microsoft 시퀀스 클러스터링 알고리즘은 모델에 대한 비순차적 특성의 추가를 지원합니다. 즉, 이러한 추가 특성이 시퀀스 특성과 결합되어 일반적인 클러스터링 모델과 마찬가지로 비슷한 특성을 가진 사례 클러스터를 만듭니다.

시퀀스 클러스터링 모델은 일반적인 클러스터링 모델보다 더 많은 클러스터를 만드는 경향이 있습니다. 따라서 Microsoft 시퀀스 클러스터링 알고리즘은 시퀀스 및 기타 특성에 따라 클러스터를 구분하기 위해 클러스터 분해를 수행합니다.

시퀀스 클러스터링 모델의 기능 선택

시퀀스를 작성할 때 기능 선택이 호출되지 않습니다. 그러나 기능 선택은 클러스터링 단계에서 적용됩니다.

모델 유형 기능 선택 방법 코멘트
시퀀스 클러스터링 사용되지 않음 기능 선택이 호출되지 않습니다. 그러나 매개 변수 MINIMUM_SUPPORT 및 MINIMUM_PROBABILIITY 값을 설정하여 알고리즘의 동작을 제어할 수 있습니다.
클러스터링 흥미롭기 점수 클러스터링 알고리즘은 불연속 또는 불연속 알고리즘을 사용할 수 있지만 각 특성의 점수는 거리로 계산되고 연속됩니다. 따라서 흥미롭기 점수가 사용됩니다.

자세한 내용은 기능 선택을 참조하세요.

성능 최적화

Microsoft 시퀀스 클러스터링 알고리즘은 처리를 최적화하는 다양한 방법을 지원합니다.

  • CLUSTER_COUNT 매개 변수의 값을 설정하여 생성된 클러스터 수를 제어합니다.

  • MINIMUM_SUPPORT 매개 변수의 값을 늘려 특성으로 포함된 시퀀스 수를 줄입니다. 따라서 드문 시퀀스가 제거됩니다.

  • 관련 특성을 그룹화하여 모델을 처리하기 전에 복잡성을 줄입니다.

일반적으로 다음과 같은 여러 가지 방법으로 n-order Markov 체인 모드의 성능을 최적화할 수 있습니다.

  • 가능한 시퀀스의 길이 제어

  • 프로그래밍 방식으로 n의 값을 줄입니다.

  • 지정된 임계값을 초과하는 확률만 저장합니다.

이러한 방법에 대한 전체 토론은 이 항목의 범위를 벗어납니다.

시퀀스 클러스터링 알고리즘 사용자 지정

Microsoft 시퀀스 클러스터링 알고리즘은 결과 마이닝 모델의 동작, 성능 및 정확도에 영향을 주는 매개 변수를 지원합니다. 알고리즘이 학습 데이터를 처리하는 방식을 제어하는 모델링 플래그를 설정하여 완성된 모델의 동작을 수정할 수도 있습니다.

알고리즘 매개 변수 설정

다음 표에서는 Microsoft 시퀀스 클러스터링 알고리즘과 함께 사용할 수 있는 매개 변수에 대해 설명합니다.

클러스터_수
알고리즘에서 빌드할 대략적인 클러스터 수를 지정합니다. 데이터에서 대략적인 수의 클러스터를 빌드할 수 없는 경우 알고리즘은 가능한 한 많은 클러스터를 빌드합니다. CLUSTER_COUNT 매개 변수를 0으로 설정하면 알고리즘이 추론을 사용하여 빌드할 클러스터 수를 가장 잘 결정합니다.

기본값은 10입니다.

비고

0이 아닌 숫자를 지정하는 것은 알고리즘에 대한 힌트 역할을 하며, 이는 지정된 숫자를 찾는 목표를 진행하지만 결국 더 많거나 적게 찾을 수 있습니다.

최소 지원
클러스터를 만들기 위해 특성을 지원하는 데 필요한 최소 사례 수를 지정합니다.

기본값은 10입니다.

최대 시퀀스 상태
시퀀스에 사용할 수 있는 최대 상태 수를 지정합니다.

이 값을 100보다 큰 숫자로 설정하면 알고리즘이 의미 있는 정보를 제공하지 않는 모델을 만들 수 있습니다.

기본값은 64입니다.

최대 상태
알고리즘이 지원하는 비시퀀스 특성의 최대 상태 수를 지정합니다. 비시퀀스 특성의 상태 수가 최대 상태 수보다 큰 경우 알고리즘은 특성의 가장 인기 있는 상태를 사용하고 나머지 상태를 다음과 같이 Missing처리합니다.

기본값은 100입니다.

모델링 플래그

다음 모델링 플래그는 Microsoft 시퀀스 클러스터링 알고리즘에서 사용할 수 있습니다.

NULL이 아님 (NOT NULL)
열에 null을 포함할 수 없음을 나타냅니다. 모델 학습 중에 Analysis Services가 null을 발견하면 오류가 발생합니다.

마이닝 구조 열에 적용됩니다.

모델_존재_전용
열이 두 가지 가능한 상태인 MissingExisting 로 처리될 것임을 의미합니다. null은 Missing 값으로 간주됩니다.

마이닝 모델 열에 적용됩니다.

마이닝 모델에서 누락 값의 사용 및 누락 값이 확률 점수에 미치는 영향에 대한 자세한 내용은 누락 값(Analysis Services - 데이터 마이닝)을 참조하세요.

요구 사항

사례 테이블에는 사례 ID 열이 있어야 합니다. 필요에 따라 사례 테이블에는 사례에 대한 특성을 저장하는 다른 열이 포함될 수 있습니다.

Microsoft 시퀀스 클러스터링 알고리즘에는 중첩 테이블로 저장된 시퀀스 정보가 필요합니다. 중첩 테이블에는 단일 키 시퀀스 열이 있어야 합니다. 열에는 Key Sequence 문자열 데이터 형식을 포함하여 정렬할 수 있는 모든 형식의 데이터가 포함될 수 있지만 열에는 각 사례에 대한 고유 값이 포함되어야 합니다. 또한 모델을 처리하기 전에 케이스 테이블과 네스티드 테이블이 모두 테이블을 연결하는 키로 오름차순으로 정렬되었는지 확인해야 합니다.

비고

Microsoft Sequence 알고리즘을 사용하지만 시퀀스 열을 사용하지 않는 모델을 만드는 경우 결과 모델에는 시퀀스가 포함되지 않고 모델에 포함된 다른 특성에 따라 사례만 클러스터링됩니다.

입력 열 및 예측 가능한 열

Microsoft 시퀀스 클러스터링 알고리즘은 다음 표에 나열된 특정 입력 열 및 예측 가능한 열을 지원합니다. 마이닝 모델에서 사용할 때 콘텐츠 형식의 의미에 대한 자세한 내용은 콘텐츠 형식(데이터 마이닝)을 참조하세요.

칼럼 내용 유형
입력 특성 연속적, 순환적, 불연속적, 이산화된, 키, 키 시퀀스, 테이블 및 순서화된
예측 가능한 특성 연속적, 순환적, 불연속적, 불연속화된, 표 및 정렬된

비고

  • 시퀀스 예측에 DMX(PredictSequence) 함수를 사용합니다. 시퀀스 예측을 지원하는 SQL Server 버전에 대한 자세한 내용은 SQL Server 2012 버전에서 지원하는 기능 (https://go.microsoft.com/fwlink/?linkid=232473)을 참조하세요.

  • Microsoft 시퀀스 클러스터링 알고리즘은 PMML(예측 모델 태그 언어)을 사용하여 마이닝 모델을 만드는 것을 지원하지 않습니다.

  • Microsoft 시퀀스 클러스터링 알고리즘은 드릴스루, OLAP 마이닝 모델 사용 및 데이터 마이닝 차원 사용을 지원합니다.

또한 참조하십시오

Microsoft 시퀀스 클러스터링 알고리즘
시퀀스 클러스터링 모델 쿼리 예제
시퀀스 클러스터링 모델에 대한 마이닝 모델 콘텐츠(Analysis Services - 데이터 마이닝)