1. 데이터 집합의 구성
데이터 집합은 일반적으로 변수를 열(Column) 기준으로, 레코드를 행(Row) 기준으로 표기한다.
지도 학습(Supervised Learning)의 경우 이 변수들 중 하나는 출력변수(Ground Truth)가 되며,
일반적으로 열 기준으로 맨 처음 또는 마지막 열에 위치한다.
2. 데이터베이스로부터 표본추출하기
대개의 경우 데이터마이닝 작업을 수행할 때 이용가능한 모든 레코드를 사용하지 않는다.
표본(Sampling) 추출을 통하여 작은 크기의 레코드를 데이터마이닝 작업에 사용하게 된다. 레코드와 변수의 크기(개수 등), 데이터마이닝 소프트웨어, 계산 능력과 용량에 따라 처리 가능한 데이터의 한계 범위는 선택된 데이터마이닝 알고리즘에 따라 달라진다.
한계범위에 속한다 할지라도 선택된 데이터마이닝 알고리즘은 좀 더 작은 크기의 데이터 집합을 사용하여 좀 더 빠르게 수행될 수 있다.
3. 희소 사건의 과대표본추출
관심 대상 사건이 희소 사건인 경우, 데이터를 단순히 표본추출하는 것은 그 사건의 수가 다른 사건에 비해서 상대적으로 더 적어지게 되기 때문에 해당 사건을 파악하기가 더욱 어려워진다. 또한 단순 표본 추출을 할 경우 어떠한 데이터에 대해 편중될 가능성이 그만큼 커지게 된다. 따라서 이런 상황에서는 표본이 관심 사건을 충분히 설명 가능하도록 하는 표본 추출 과정이 필요하다.
4. 데이터의 전처리와 정제
1) 변수의 유형
변수를 분류하는 방법에는 여러 가지가 있다. 수치형 변수와 문자형 변수가 있다.
또한 변수들은 연속형(주어진 범위 내에서 실수 형태로 연속됨), 정수형(오직 정수 형태), 그리고 범주형(일정 범위의 값을 하나의 범주로 나타냄)으로 나뉜다. 여기서 범주형 변수는 수치형(1, 2, ) 또는 문자형(결제수단-현금/카드/이체 등)으로 구분된다. 또한 높은 값, 낮은 값 등으로 순위 정보를 갖는 순위형 변수와 북아메리카, 아프리카, 아시아, 유럽 등의 순위 정보를 갖지 않는 명목형 변수로 나누어진다.
연속형 변수들은 대부분 데이터마이닝 과정에서 처리된다.
머신러닝에 기반한 데이터마이닝은 범주형 변수를 갖는 문제에서 시작하였고, 통계학은 기본적으로 연속형 변수에 대한 분석에서 시작하였다. 경우에 따라서는 연속현 변수를 범주형 변수로 변환시키는 작업이 필요할 때가 있을 수 있다.
2) 범주형 변수의 처리
범주형 변수는 데이터마이닝 과정에서 대부분 다루어진다.
범주형 변수가 순위정보를 가지고 있다면 (나이 범주, 신용도 등급 등), 마치 연속형 변수인 것처럼 변수를 있는 그대로 사용한다. 범주의 개수가 작을수록, 값의 증분이 균등하지 않을수록 절차는 더욱 복잡하게 된다. (하지만 범주형 변수는 종종 있는 그대로 사용될 수 없을 때도 있다.)
3) 변수 선정
모델의 변수선정에 대해서, 변수가 많을수록 모델이 반드시 더 좋은 것은 아니다. 변수를 많이 포함하면 할수록 변수들 간의 관계를 평가하기 위해 필요한 레코드 수가 더 크게 증가한다.
4) 과적합
모델에 많은 변수를 포함시킬 경우 데이터를 과적합(Over-Fitting) 시킬 위험은 더욱 커지게 된다.
모델을 구축하는 근본 목적은 변수들 간의 관계를 규명하는 것이며, 이를 통해 미래의 예측 변수들을 이용하여 출력변수들을 예측하는 업무를 훌륭히 수행하는 데 있다. 모델에 너무 많은 변수들을 포함할 경우, 모델 생성에 사용된 레코드에 대해 충분히 설명할 수 있는 모델이 만들어지기는 하겠지만 미래의 예측 변수에 대한 출력 변수 예측에는 맞지 않을 수 있다.
5) 얼마나 많은 변수들과 데이터가 사용되어야 하는가?
통계학에서는 데이터 집합과 모델의 신뢰성을 달성하기 위해 얼마나 많은 레코드가 필요한지 추청 할 수 있는 절차를 제공한다. 하지만 데이터마이닝에서는 이에 대한 요구사항이 상세하지 않아 대개 경험에 의존하여 데이터마이닝 작업을 수행한다. 이때 유용한 경험에 의한 법칙은 모든 예측 변수가 각각 10개의 레코드를 가져야 한다는 것이다. 분류모형절차에 대해 Delmaster and Hancock(2001) 이 사용한 또 다른 규칙은 최소 6 x m x p 개의 레코드를 가져야 한다는 것으로, m 은 출력변수의 집단의 수이고, p는 변수의 개수이다.
6) 극단치 (Outlier)
보다 많은 데이터를 처리할수록 측정오차, 데이터 입력오류 등을 인하여 잘못된 값이 발생할 가능성은 커지게 된다. 만약 잘못된 데이터가 유효 범주 내에 있다면 그 값은 모델 생성에 영향을 미치게 된다. 잘못된 데이터가 나머지 범위를 훨씬 벗어났다면, 사용하려고 하는 데이터마이닝 절차 중의 일부에 영향을 미칠 수 있다.
극단치 (Outlier)를 확인하는 목적은 좀 더 많은 검토를 필요로 하는 데이터값들에 대해 주의를 기울이는 데 있다.
7) 결측치
일반적으로 일부 레코드들은 결측치(missing values)를 포함한다. 결측치를 포함하는 레코드 수가 모든 레코드 수에 비해 현저히 적다면 그 레코드는 제외할 수 있다. 하지만 전체 레코드 개수가 적은 경우는 결측치 개수가 적다고 하더라도 전체에 영향을 미칠 수 있다.
결측치를 갖는 레코드들에 대한 처리는 대개 변수의 결측치를 다른 레코드의 값을 토대로 계산된 값으로 교체한다.
8) 데이터의 정규화(표준화)
어떠한 알고리즘의 경우에는 모델을 효과적으로 학습시키기 위해 사전에 데이터에 대한 정규화 작업이 필요하다.
정규화 작업을 거치지 않을 경우, 학습 모델이 데이터에 대해 수렴 속도가 현저히 떨어지고 때에 따라서는 수렴이 되지 않을 수도 있다.
5. 표본 분할의 사용과 생성
데이터마이닝 문제를 처리하기 위해서는 다음과 같이 데이터를 분할한 후 모델을 개발한다.
1) 학습용 집합 (Training Data)
가장 크기가 큰 집합으로 분석 대상이 다양한 모델을 구축하기 위해 사용한다.
다수의 모델을 개발하기 위해 동일한 학습용 집합이 사용된다.
2) 평가용 집합 (Evaluation Data)
개발된 또는 개발 중인 모델을 평가하기 위해 사용된다. 때로는 검증용 집합이라고 불린다.
3) 검증용 집합 (Test Data)
이 집합은 가끔씩 예비용 집합이라고 불린다. 새로운 데이터를 가지고 개발된 모델의 성과를 평가할 필요가 있을 때 사용한다.
'숫자' 카테고리의 다른 글
데이터 탐색과 차원 축소 (0) | 2023.04.06 |
---|---|
데이터마이닝 소프트웨어 (0) | 2023.04.05 |
데이터마이닝 실행 과정 (0) | 2023.04.03 |
데이터마이닝 프로세스 - 개념, 지도학습/비지도학습 (0) | 2023.04.02 |
데이터마이닝 개요 (0) | 2023.04.01 |
댓글