- Amazon.com - INTRODUCTION TO DATA MINING
- Kangcom.com - 데이터 마이닝
- 저자 홈페이지 - http://www-users.cs.umn.edu/~kumar/dmbook/index.php
데이터의 타입
- 데이터 집합은 여러 가지 형태로 상이
- 데이터 집합은 특별한 특성을 가질 수 있음
- 데이터의 타입은 데이터의 분석에 사용하게 될 도구와 기법을 결정
데이터의 품질
- 데이터는 완전하지 않음
- 데이터 품질을 이해하고 개선하면 품질이 개선됨
- 데이터 품질 문제
- 잡음과 이상치의 존재
- 누락되거나 비일관적이거나 중복된 데이터
- 편중되거나 데이터가 기술해야 할 현상이나 모집단을 대표하기 어려운 데이터
데이터 마이닝에 더 접합하도록 데이터를 전처리하는 단계
- 데이터 품질 개선
- 특정 데이터 마이닝 기법이나 도구에 더 잘 맞도록 데이터를 수정
- 데이터 집합의 속성수 감소 (상대적으로 적은 속성들을 가질 경우 효율적으로 동작)
관계 측면에서의 데이터 분석
- 데이터 객체들 간의 관계를 발견하고 난 후, 데이터 객체 자체보다는 관계에 대한 분석 수행
2.1 데이터의 타입
- 데이터 집합(data set)은 데이터 객체(data object)의 모임
- 데이터 객체의 다른 명칭 : 레코드, 점, 벡터, 패턴, 사건, 사례, 표본, 관찰, 개체
- 데이터 객체는 물리적 객체의 질량이나 사건이 일어난 시간과 같이 주어진 객체의 기본적 특성을 표현하는 다수의 속성(attribute)에 의해 기술
- 속성의 다른 명칭 : 변수, 특성, 필드, 특징, 차원
2.1.1 속성과 측정
- 속성(attribute)이란 객체에 따라 또는 시간에 따라 변하는 객체의 특성
- 기호 속성 : 눈동자의 색깔은 소수의 가능한 값들 {갈색, 흑색, 청색, 녹색, 헤이즐색 등}
- 수치 속성 : 온도는 가능한 값의 수가 무한개
- 척도(measurement scale)란 수치나 기호 값을 객체의 속성에 부여하는 규칙(함수)
- 측정(measurement) 과정은 특정 객체의 특정 속성에 하나의 값을 연관시키기 위해 척도를 적용
- 예, 몸무게를 재기 위해 욕실의 체중계에 오름, 누군가를 남녀로 구분
- 측정(measurement) 과정은 특정 객체의 특정 속성에 하나의 값을 연관시키기 위해 척도를 적용
속성의 타입
- 측정하기 위해 사용된 값에 속성의 어떤 특성이 반영되어 있는지를 알 수 있어야 함
- 측정된 값의 어느 특성이 속성의 기반이되는 특성과 일관성이 있는지 알 수 있음
- 직원 ID의 평균을 구하는 어리석은 행위를 피할 수 있음
- 척도의 타입(type of a measurement scale) 이라고도 함
속성의 상이한 타입들
속성의 타입을 명세하는 유용한(단순한)방법은 속성의 기반이 되는 성질에 해당하는 숫자의 성질을 식별하는 것
값의 개수에 의한 속성 기술
- 이산(discrete) - 이산형 속성은 유한개의 값 또는 셀 수 있는 무한 집합의 값
- 범주적 - 우편번호, ID 번호
- 수치적 - 개수
- 이진속성(binary attribute) - 참/거짓, 예/아니오, 남/여, 0/1
- 연속(continuous) - 연속형 속성은 실수 값 (부동 소수점 변수)
- 예, 온도, 높이, 깊이
비대칭 속성
- 존재(0이 아닌 속성 값)만이 중요하게 간주
- 비대칭 이진 속성(asymmetric binary attribute) - 0이 아닌 값들만이 중요
- 비대칭 이산형(asymmetric discrete)
- 연속형 속성(continuous attribute)
- 예, 각 과목에 연관된 학점수를 기록
2.1.2 데이터 집합의 타입
데이터 집합의 일반적 특성
- 차원(dimensionality) - 데이터 집합의 객체들이 소유하는 속성의 수
- 차원의 저주(curse of dimensionality) - 고차원 데이터를 분석하는 작업에 연관된 어려움
- 차원 감소(dimensionality reduction) - 데이터의 전처리에 대한 중요한 동기
- 희소성(sparsity) - 객체 대부분의 속성들이 0의 값을 가짐, 0이 아닌 값들만 저장하고 조작하면 됨
- 해상도(resolution) - 데이터를 상이한 수준의 해상도로 얻을 경우 데이터의 특성도 달라짐
- 예, 지구의 표면은 미터 단위의 해상도에서 평평하지 않지만, 수십 Km 단위의 해상도에서는 상대적으로 매끈하게 보임
- 레코드 데이터(Record data) – 다수의 데이터 마이닝 작업은 데이터 집합을 레코드들(데이타 객체들)의 모임으로 간주
- 트랜잭션 데이터(Transaction data) - 트랜잭션 데이터는 레코드 데이터의 특수한 타입으로 각 레코드(트랜잭션)가 항목의 집합을 포함; 장바구니 데이터(market basket data)라고도 함
- 데이터 행렬(Data matrix) - 데이터 모임에 있는 데이터 객체들이 모두 동일한 수치 속서의 고정 집합을 가지고 있을 경우 데이터 객체들은 각 차원이 객체를 기술하는 하나의 속성을 표현하는 다차원 공간 상의 점(백터)으로 간주; 이러한 데이터 객체들의 집합은 각 객체에 대해 하나씩 m개의 행을 갖고, 각 속성에 대해 하나씩 n개의 열을 갖는 m x n 행렬로 해석; 패턴 행렬(pattern matrix)라고도 함
- 희소 데이터 행렬(sparse data matrix) - 데이터 행렬의 특수한 경우로 속성들이 동일한 타입을 가지며 비대칭 형태; 문서에서 용어(단어)의 순서를 무시할 수 있다면, 용어 백터로 표현 가능, 문서 모임을 이렇게 표현한 것을 문서-용어 행렬(document-term matrix)이라고 함
그래프기반의 데이터
- 객체 간의 관계를 가진 데이터 – 데이터 객체는 그래프의 노드로 매핑되고 객체들 간의 관계는 링크, 방향이나 가중치 같은 특성으로 표현
- 그래프인 객체를 가진 데이터 - 객체가 관계를 가진 서브객체들을 포함한다면 그래프로 표현
서열형 데이터
- 순차 데이터(sequential data)
- 각 레코드가 그에 관련된 시간을 가지는 형태로 레코드 데이터를 확장한 것; 시간 데이터(temperal data)라고도 함;
- 예, 각 레코드의 한 고객에 대한 구입 이력
- 서열 데이터(sequence data)
- 단어나 글자의 서열과 같이 개별 개체의 서열로 된 데이터 집합으로 구성;
- 예, 식물이나 동물의 유전 정보는 유전자라고 알려진 염기의 서열 형태로 표현
- 시계열 데이터(time series data)
- 순차 데이터의 특수한 타입으로 각 레코드가 시계열(time series), 즉 시간이 경과하면서 측정한 값들로 구성
- 예, 금융 데이터 집합
- 시간 데이터에 대한 작업 시 두 개의 측정이 시간적으로 가까우면 그러한 측정값들이 종종 매우 유사해지는 시간 자동상관(temporal autocorrelation)을 고려하는 일이 중요
- 공간 데이터(spatial data)
- 위치나 면적과 같은 공간 속성을 가짐
- 예, 다양한 지리적 위치로부터 수집되는 날씨 데이터(강수량, 온도, 압력)
- 물리적으로 가까운 객체들이 유사해지는 경향이 있는 공간 자동상관(spatial autocorrelation)을 고려하는 일이 중요
비-레코드 데이터 처리
- 데이터 객체들로부터 특징을 추출하여 이 특징들을 이용해서 각 객체에 해당하는 레코드를 생성한 후 레코드-지향 기법들을 적용할 수 있음
- 속성들이 서로 통계적으로 독립되었다고 가정하는 데이터 마이닝 기법을 사용하는 것은 바람직 하지 않음
2.2 데이터 품질
- 데이터 품질 문제의 검출과 수정, 데이터 정제(data cleaning)이라고 함
- 저급 데이터 품질을 감내할 수 있는 알고리즘의 사용에 치중
2.2.1 측정과 데이터 수집 문제
잡음(noise), 아티팩트(artifacts), 편차(bias), 정밀도(precision), 그리고 정확도(accuracy)와 같은 측정 오류를 포함하는 다양한 문제들을 고려
측정과 데이터 수집 오류
- 측정 오류(measurement error) - 측정 과정에서 비롯된 문제를 지칭
- 오류(error) - 연속형 속성의 경우, 측정값과 참값의 수치적 차이
- 데이터 수집 오류(data collection error)는 데이터 객체나 속성 값을 빼먹거나 데이터 객체를 부적절하게 포함시키는 오류
잡음과 아티팩트
- 잡음(noise) - 측정 오류의 임의적 성분; 값의 왜곡이나 가짜 객체의 추가와 관련
- 견고한 알고리즘(robust algorithm) - 잡음의 제거는 매우 어려우며, 데이터 마이닝에서는 상당량의 작업이 잡음 존재 시에도 수용 가능한 결과를 생성하는 견고한 알고리즘을 고안하는데 치중
- 아티팩트(artifact) - 데이터의 반복적인 왜곡
정밀도, 편차, 그리고 정확도
- 정밀도(precision) - 반복된 측정값들(동일 수량에 대한)의 밀접성
- 종종 집합값의 표준편차에 의해 측정
- 편차(bias) - 측정되는 수량으로부터의 측정값의 체계적 변형
- 집합값의 평균과 측정되는 수량의 알려진 값과의 차이를 취해서 측정
- 정확도(accuracy) - 측정되는 수량의 참값에 대한 측정값들의 밀접성
- 정밀도와 편차에 의해 좌우됨
- 유효 자리(significant digit)의 사용이 중요
이상치(anomalous value)
- 데이터 집합에서 대부분의 다른 데이터 객체와 상이한 특성을 가지는 데이터 객체
- 특정 속성에 대한 전형적인 값에 비추어 볼 때 비정상적인 값
- 이상치는 적법한 데이터 객체 또는 값일 수 있음
누락 값(missing value)
- 데이터 분석 과정에서 처리 필요
- 데이터 객체 또는 속성을 제거 - 다수의 객체들이 누락 값을 가지면 신뢰적인 분석은 어렵거나 불가능
- 누락 값을 추정 - 부드럽게 변화하는 형태이나 몇 개의 누락 값이 넓게 펼쳐져 있는 시계열 형태일 경우 누락 값은 나머지 값들을 이용하여 추정(보간) 될 수 있음
- 분석 과정에서 누락 값을 무시 - 객체들이 군집화되어 있고 데이터 객체들의 쌍들 간의 유사도가 계산될 필요가 있을 경우 주어진 쌍의 한 객체 또는 양쪽 객체가 일부 속성에 대해 누락 값을 가지면 누락 값을 가지지 않는 속성들만을 이용해서 유사도를 계산할 수 있음
- 일관성이 없는 값 - 일관성이 없는 값의 원인과 상관없이 이러한 문제를 감지하고 가능하다면 수정하는 일이 중요
중복 데이터
- 하나의 단일 객체를 실제로 표현하는 두 개의 객체가 존재하면 해당 속성의 값들은 상이할 것이며, 이렇게 일관성이 없는 값드을 해결되어야 함
- 유사하지만 중복이 아닌 두 개의 객체를 잘못해서 합치는 일이 없도록 주의를 기울어야 함
2.2.2 응용과 관련된 문제
- 적시성(timeliness) - 일부 데이터는 수집 즉시 나이가 들기 시작; 데이터의 유효 날짜가 지나면 그것을 기반으로 한 모델이나 패턴도 유요하지 않음
- 관련성(relevance) - 가용한 데이터는 응용에 필요한 정보를 포함해야 함
- 데이터 집합의 객체들이 관련된 것인지 확인
- 표본추출 편차(sampling bias) - 주어진 표본이 실제 모집단에 비례한 다양한 타입의 객체들을 포함하지 않을 때 발생
- 데이터에 대한 지식
- 문서가 여러 속성들이 강하게 관련되어 있다고 언급하면, 중복된 정보를 제공할 가능성이 높으므로, 하나만을 유지하기로 결정할 수 있음
- 문서가 열약하여 필드의 누락 값들이 -9999로 표시되어 있다는 것을 알려주지 않으면 그 데이터에 대한 분석은 오류가 있음
- 다른 중요한 특성 - 데이터의 정밀도, 특징의 타입(명목형, 서열형, 구간, 비율), 측정의 척도, 데이터의 출처
2.3 데이터 전처리
2.3.1 총계
두 개 이상의 객체를 하나의 단일 객체로 결합
총계에 대한 동기
- 데이터 축소에 따른 소형 데이터 집합은 적은 기억 공간과 처리시간을 요구 (고가의 데이터 마이닝 알고리즘을 사용할 수 있게됨)
- 저수준 관점 대신에 고수준 관점을 제공하여 범위나 규모에 변화를 가져올 수 있음
- 객체나 속성 그룹의 행위는 개별 객체나 속성의 행위보다 더 안정적임 (평균이나 합계와 같이 집계된 수량이 집계되는 개별 객체들보다 가변성이 적다는 통계적 사실을 반영)
총계의 단점
- 관심있는 세부사항의 잠재적 손실
- 월별로 집계하는 상점의 경우 한 주에서 판매액이 제일 많은 날에 대한 정보가 손실
2.3.2 표본추출
- 분석될 데이터 객체의 부분집합을 선택하는 접근법으로 많이 사용
- 표본은 근사적으로 원래 데이터 집합과 동일한 성질을 가질 때 대표적
- 표본이 대표적이라면 표본을 이용한 작업이 전체 데이터 집합을 이용한 것과 거의 동일하게 작동
표본추출 접근 방법
- 단순 임의 표본추출 (simple random sampling)
- 무대체 표본추출 (sampling without replacement) - 각 항목 선택 시 그것을 모집단(population)을 구성하는 모든 객체의 집합으로부터 제거
- 대체 표본추출 (sampling with replacement) - 객체가 표본으로 선택될 때 그것을 모집단으로부터 제거하지 않음
- 층화 표본추출 (stratified sampling) - 관심 항목에 대해 상이한 빈도를 수용할 수 있는 표본 추출 기법 (희귀 클래스에 대한 분류 모델을 구축할 경우 희귀 클래스가 표본에 적절하게 표현되는 일이 중요)
점진적 표본추출
- 적절한 표본 크기 결정이 어려우므로 종종 적응적(adaptive) 또는 점진적 표본 추출(progressive sampling) 기법이 사용
- 초기에 정확한 표본 크기를 결정할 필요성을 제거해 주지만, 표본 크기가 충분히 큰지를 평가할 방법이 필요
2.3.3 차원 축소
차원 축소의 이득
- 관련 없는 특징 제거
- 잡음의 감소
- 속성의 수 감소로 인한 이해 가능한 모델 생성
- 데이터 가시화에 효과적
- 데이터 마이닝 알고리즘에 의해 요구되는 소요시간이나 메모리 소요량 감소
차원의 저주
- 여러 타입의 데이터 분석이 데이터의 차원이 증가함에 따라서 매우 어려워지는 현상
- 차원이 증가하면 데이터는 그것이 차지한는 공간 상에서 점차적으로 희소해짐
- 분류의 경우, 충분한 데이터 객체가 존재하지 않게 되어 모든 가능한 객체에 대해 신뢰적으로 해당 클래스를 할당해주는 모델의 생성이 어려움
- 군집화에서 핵심적인 역할을 하는 밀도와 점 간의 거리의 의미가 무색해짐
- 다수의 군집화와 분류 알고리즘은 고차원 데이터의 경우 분류 정확도가 떨어지고, 질 나쁜 클러스터를 만들게 됨
차원 축소를 위한 선형 대수 기법
- 주성분 분석(PCA: Principal Component Analysis) - 연속형 속성을 위한 선형 대수 기법
- 원래 속성의 선형 조합
- 서로 직교(orthogonal)(수직)
- 데이터 변형의 최대량을 반영하는 새로운 속성 발견법
- 특이값 분해(SVD: Singular Value Decomposition) - PCA와 관련 있고 차원 축소를 위해 흔히 사용되는 선형 대수 기법
2.3.4 특징 부분집합 선택
차원을 축소하는 또 다른 방법으로 특징의 부분집합만을 사용하는 방법
- 중복 특징(redundant feature) - 한 개 이상의 다른 속성에 포함된 정보의 상당 부분 또는 전체가 중복된 것
- 비관련 특징(irrelevant feature) - 진행하려는 데이터 마이닝 작업에 거의 불필요한 정보를 포함한 것
특징 선택을 위한 표준 전략
- 삽입 방법 - 데이터 마이닝 알고리즘의 일부로 동작 중에 알고리즘 자체에서 사용할 속성과 무시할 속성 결정 (알고리즘 종속적)
- 필터(filter) 방법 - 데이터 마이닝 알고리즘 실행 전 독립적인 방법을 이용하여 선택
- 래퍼(wrapper) 방법 - 속성에서 최상의 부분집합을 발견하기 위해 목표 데이터 마이닝 알고리즘을 블랙박스로 사용
특징 부분집합 선택을 위한 아키텍처
- 특징 부분집합 선택이란 특징의 모든 가능한 부분집합에 대한 탐색
- 탐색 전략은 계산적으로 저비용이어야 하고 특징의 최적 또는 최적에 가까운 집합을 발견해야 함
- 탐색의 핵심 부분은 현재의 특징 부분집합을 그동안 살펴본 것과 비교하여 판단한는 평가 단계
- 분류나 군집화와 같은 특정 데이터 마이닝 작업의 관점에서 속성 부분집합의 양호성을 결정하는 평가 척도 필요
- 필터 방법 : 실제 데이터 마이닝 알고리즘이 주어진 속성의 집합에 대해 얼마나 잘 수행될지 예측하려고 시도
- 래퍼 방법 : 데이터 마이닝 결과를 측정하기 위해 통상적으로 사용되는 기준을 단순히 적용하여 부분집합 평가
- 부분집합의 수는 매우 클 수도 있고 그 모두를 검사하는 것은 불가능하므로 어떤 형태이든 중단 조건 필요
- 반복횟수
- 부분집합 평가 측정값이 최적의 값이거나 특정 임계값을 초과했는지의 여부
- 특정 크기의 부분집합이 구해졌는지의 여부
- 크기와 평가 기준 모두가 달성되었는지의 여부
- 탐색 전략에 가용한 옵션에 의해 더 이상의 개선이 성취될 수 있는지의 여부
- 특징 부분집합이 선택되면, 선택된 부분집합에 대한 목표 데이터 마이닝 알고리즘의 결과가 검증되어야 함
- 단순한 평가 방법 : 특징 전체 집합에 대해 알고리즘을 적용한 후 그 결과를 특징 부분집합에 대해 적용한 결과와 비교하는 것
- 다른 검증 방법 : 다수의 상이한 특징 선택 알고리즘들을 사용하여 특징의 부분집합들을 구한 후, 각 부분집합에 대해 데이터 마이닝 알고리즘을 수행한 결과들을 비교하는 것
특징 가중치
- 특징을 유지하거나 제거하는 데 대한 대안적인 방법
- 좀더 중요한 특징은 높은 가중치, 덜 중요한 특징은 낮은 가중치 부여
- 특징의 상대적 중요도에 대한 도메인 지식을 기반으로 가중치 부여 가능
- 자동적으로 가중치 결정 가능
2.3.5 특징 생성
- 특징추출(feature extraction) - 원본 데이터로부터 특징의 새로운 집합을 생성하는 것
- 새로운 공간으로 데이터 매핑 - 데이터에 대한 완전히 새로운 관점은 중요하ㅏ고 흥미로운 특징 표출
- 푸리에 변환(fourier transform) - 시계열을 주기 정보가 명시적으로 드러나는 표현으로 변경시켜 패턴 검출
- 웨이블릿 변환(wavelet transform) - 시계열과 기타 유형의 데이터에 대해 매우 유용
2.3.6 이산화와 이진화
- 이산화 - 연속형 속성을 범주 속성으로 변환
- 이진화 - 연속형과 이산형 속성을 한 개 이상의 이진 속성으로 변환
이진화
- m개의 범주 값이 존재할 경우, 각각의 원래 값에 대해 구간 [0, m-1] 사이의 정수를 유일하게 할당 (속성이 서열형이면, 그 순서를 할당 순서로 유지)
- m개의 정수 각각을 이진수로 변환
연속형 속성의 이산화
연속형 속성의 값을 이러한 범주로 매핑하는 방법을 결정하는 두 가지 작업
- 연속형 속성의 값들을 정렬한 후 n-1개의 분리점(split point)을 명세해 n개의 구간으로 나눔
- 한 구간에 속한 모든 값들을 동일한 범주 값으로 매핑
무감독(unsupervised) 이산화 - 클래스 정보 사용 안함
- 동등 폭(equal width) - 속성의 범위를 동등한 폭을 가지는 사용자-명세 구간 수로 나눔
- 동등 주파수(equal frequency), 동등 깊이(equal depth) - 각 구간에 동일한 수의 객체들을 배치
유감독(supervised) 이산화 - 클래스 정보 사용
- 데이터 마이닝 (Data Mining) - 제2장. 데이터 (0)2009/12/18
- 데이터 마이닝 (Data Mining) - 제1장. 서론 (2)2009/02/08
- 데이터 마이닝 관련 동영상 모음 (0)2009/02/08
- 비트 파워프로젝트/자동차보험사의 데이터 마이닝... (0)2005/07/31

수안이의 컴퓨터 연구실















lecture1=course-web-page-and-chapter-1.ppt



Leave your greetings.