본문 바로가기

IT관련

오라클 머신러닝 - SQL*Developer (Data Miner) 에서 클러스터링(Clustering) 실습 예제 2 (적용)

앞에서 오라클에서 제공하는 3가지 클러스터링 알고리즘(Expectation Maximization, K-Means, O-Cluster)을 가지고 학습하는 단계까지 진행했습니다.

  참조 ==>   >> SQL*Developer (Data Miner) 에서 클러스터링(Clustering) 실습 예제 1 <<

 

클러스터링도 다른 머신러닝 처럼 "학습(Learning)"을 먼저하고 "적용(Apply)" 하는 단계를 거칩니다.

 

이번에는 앞에서 학습한 모델을 적용해서 실제로 데이터를 가져오는 과정을 실습하겠습니다.

 

 

1) 클러스터링 학습결과 적용

 

[구성요소] 창에서 [모델 작업] 탭에 있는 [적용] 아이콘을 Drag & Drop 해서 워크플로우 창에 배치합니다.

 

 

적용을 하기 위해서는 "적용할 데이터" 와 "분석한 모델" 을 연결(접속)시켜 줘야 합니다.

"CUST_SIMP_TABLE" 아이콘을 오른쪽 마우스버튼 누르고 팝업창에서 [접속] 메뉴 눌러서 "적용" 아이콘과 연결해줍니다.

같은 방식으로,

"클러스터 생성" 아이콘을 오른쪽 마우스버튼 누르고 팝업창에서 [접속] 메뉴 눌러서 "적용" 아이콘과 연결해줍니다.

최종적으로는 아래와 같은 모양이 되어야 합니다.

 

 

위에서는 분석(학습)에 사용되었던 원 소스 데이터인 CUST_SIMP_TABLE 을 다시 적용(Apply) 하는 방식으로 하고 있습니다만, 꼭 원소스 테이블이 아닌 다른 테이블을 소스로 사용할 수도 있습니다.

 

원래 머신러닝의 개념이 한번 학습해놓은 모델을 다른 데이터에 반복적으로 적용할 수 있는 개념이기 때문에, 클러스터링에서도 똑같이 적용이 가능한 것입니다.

 

"적용" 아이콘에 오른쪽 마우스버튼을 누르고 팝업창에서 [편집] 메뉴를 선택합니다.

 

 

[적용 노드 편집] 팝업창이 뜨는데, 여기에서 분석할때처럼 똑같이 사례ID로 CUST_ID 를 선택해줍니다.

그러면, CUST_ID 를 기준으로 앞서 만들어진 클러스터링 모델 3가지(EM, KM, OC)를 적용하겠다는 의미가 됩니다.

 

 

[확인] 버튼을 눌러서 팝업창을 닫고,

다시 "적용" 아이콘에서 오른쪽 마우스버튼 누르고 팝업창에서 [실행] 메뉴를 클릭합니다.

 

 

실행이 성공적으로 되면, "적용" 아이콘 오른쪽 위 귀퉁이에 초록색 v 마크가 달립니다.

다시, "적용" 아이콘에서 마우스 오른쪽 버튼을 누르고 팝업창에서 [데이터 보기] 메뉴를 클릭합니다.

 

 

아래와 같이 최종적으로 적용된(클러스터링된) 결과를 확인할 수 있습니다.

 

 

맨 좌측에 CUST_ID 고객번호가 나오고, 그 오른쪽으로 각 모델별로(EM,KM,OC) 클러스터번호가 나타납니다.

 

 

2) 결과테이블로 출력

 

이제 위에서 확인한 결과를 오라클DB내의 테이블로 출력해보겠습니다.

[구성요소] 창의 [데이터] 탭에서 [테이블 또는 뷰 생성] 아이콘을 Drag & Drop 해서 워크플로우 창에 배치합니다.

 

 

"적용" 아이콘에서 오른쪽 마우스 팝업메뉴에서 [접속]을 클릭해서 "OUTPU_1_5" 아이콘과 연결해줍니다.

 

"OUTPUT_1_5" 아이콘에서 오른쪽 마우스 팝업메뉴에서 [편집] 메뉴를 클릭합니다.

 

 

아래와 같이 [테이블 또는 뷰 생성 노드 편집] 팝업창이 뜹니다.

여기에서 이름을 입력합니다. 이 이름이 생성될 Table Name 이 됩니다.

 

 

[확인] 을 눌러서 팝업창을 닫고,

"CLUSTER_OUTPUT" 아이콘에서 오른쪽 마우스버튼 눌러 팝업창에서 [실행] 메뉴를 클릭해줍니다.

 

 

실행이 성공적으로 끝나면 결과가 우리가 지정한 CLUSTER_OUPUT 이라는 테이블로 출력됩니다.

 

아래와 같이 scott 유저에 CLUSTER_OUTPUT 이라는 테이블로 생성된 것을 확인할 수 있습니다.