• 데이터마이닝 개념과 기법 개요

    2018. 3. 15. 20:49

    by. 위지원

    데이터 마이닝 개념과 기법을 보고 공부한 내용




    이 책은


    다양한 분야의 데이터로부터 흥미 있는 패턴을 발견하기 위한 데이터 마이닝의 기본 개념과 기술에 초점을 맞추어 효과적이고 효율적이며 스케일 변환이 가능한 데이터 마이닝 툴을 개발하기 위한 주요 기술에 대해 강조하여 설명하고 있다.


    1장은 아래와 같이 이루어져있다.


    1. 왜 데이터 마이닝에 대한 수요가 증가하는지?

    어떻게 IT 발전과정의 일부가 되었는지?

    2. 지식 발견 프로세스 관점에서 데이터마이닝이란?

    3. 마이닝 데이터

    4. 지식

    5. 사용 기술

    6. 적용 분야

    7. 주요 데이터 마이닝 연구와 개발 이슈사항




    1.1 왜 데이터 마이닝인가?


    책에서 바로 아래에 이렇게 적혀있다 " 필요는 발명의 어머니다. " - 플라톤

    데이터는 누구나 알듯이 굉장히 많이 쌓여간다. 우리가 흔히 아는 유투브는 1분마다 400시간 분량의 영상이 올라오고 페이스북에는 매일 수억장의 이미지가 업로드 된다고 한다. 시장조사 업체 IDC에 따르면 데이터양은 매녕 30%씩 오르고 있으며 2025년에는 163ZB(제타바이트)에 이를정도라고 한다. (더 자세한 내용은 이 기사를 참조)


    관련 이미지데이터마이닝에 대한 이미지 검색결과

    그림 출처 : http://ansonalex.com/infographics/what-happens-on-the-internet-in-1-minute-infographic/


    이렇게 증가하는 데이터에서 가치 있는 정보를 발견하고 지식으로 변환하기 위한 도구들이 필요하게 되었고 그 필요에 의해 데이터 마이닝은 탄생하게 되었다.


    책에서 예제로 나온 내용은 사용자의 검색 질의어에서 발견된 일부 패턴들은 개별 데이터 항목을 참고함으로써 얻을 수 없는 중요한 지식을 밝혀낼 수 있으며 그 예로 구글의 독감트렌드를 들었다.


    실제로 기존 시스템보다 2주정도 빠르게 독감활동을 예측하여 굉장한 주목을 받았지만 09년도에 신종플루를 놓치고, 13년도에는 실제 독감률의 2배를 예측하여 신뢰도가 떨어지며 구글은 서비스를 종료할 수 밖에 없었다고 한다. 현재에도 해당 서비스는 빅데이터를 통한 미래 예측 실패 사례로 많이 언급된다고 한다. (출처 : http://techneedle.com/archives/30628)




    이와 비슷한 연구로는 트위터에서 부정적인 표현과 관상동맥 질환 발병률의 관계, 개인 SNS의 단어 작성과 약물중독의 상관관계를 알아보는 등의 연구가 많이 진행되었다.



    데이터 마이닝은 정보기술의 자연스러운 진화의 결과로 볼 수 있다고 한다.아래 그림처럼 몇가지 중요한 기능 측면에서 발전해 왔다.




    70년대 이후로 DB 시스템 연구배발은 계층적 네트워크 데이터 베이스에서 관계형으로,데이터모델링,인덱싱으로 발전해왔다.온라인 트랜잭션처리는 질의어가 읽기 전용 트랜잭션 view되는 상당한 양의 데이터 관리와 효율적인 저장,검색을 위한 주요툴로서 관계형 기술이 널리 채택되고 발전하는 데 상당한 기여를 했다.(..?)



    80년대 후반 이후부터 발생한 고급 데이터 분석은 데이터 베이스 및 정보 산업에 붐을 일으켰고, 대용량의 데이터를 저장할 수 있는 장소가 생겨나도록 했다.


    데이터 웨어 하우스는 새롭게 등장한 데이터 저장 아키텍쳐로 경영 의사 결정을 촉진하기 위하여 단일 사이트에서 통합 스키마에 의해 구성된 여러 이기종 데이터를 저장하는 장소이다.

    웨어하우스를 사용하면 의사결정 응용프로그램이 필요한 데이터를 operational DB에서 직접 가져오는게 아니라 웨어하우스에서 가져온다.





    1.2 데이터 마이닝의 의미


    데이터 마이닝은 여러 학문이 연관된 분야이기 때문에 다양한 방변에서 정의될 수 있다. 예를들면 데이터에서 지식채굴, 지식 추출, 데이터/패턴 분석, 데이터 고고학, 데이터 꺼내기등..


    지식의 발견은 아래와 같이 여러단계로 이루어져 순서대로 반복되며 진행된다. 발견된 지식은 다시 데이터로 사용이 가능하고 패턴을 찾을때 도움을 다시 줄수 있다.









    1.3 데이터 마이닝이 가능한 종류


    일반적으로 데이터 마이닝은 스트림 데이터,시퀀스 데이터,그래프,네트워크 데이터,공간 데이터등 어떠한 데이터에도 가능하다. 다만 이 책에서는 DB, 데이터웨어하우스, 트랜잭션의 데이터를 중점으로 다룬다.


    1) 데이터 베이스의 데이터


    DBMS로 호칭되는 데이터 베이스 시스템은 상호 관련 있는 데이터의 수집과 데이터를 관리 및 접근할 수 있는 소프트 웨어 프로그램의 집합으로 구성된다.


    소프트웨어는 DB구조와 스토리지를 정의하고 동시에 공유,배포 데이터의 접근을 지정 및 관리한다. 또한 시스템 충돌이나 접근제한을 둘 수 있으며 저장된 정보의 일관성과 보안을 보장하는 기능까지도 제공한다.


    관계형 데이터 베이스는 고유한 이름이 각각 할당된 테이블의 집합이다. 우리가 잘 알고 있듯이 컬럼으로 테이블이 구성되어있으며 KEY값으로 식별되어지며 속성 값의 집합에 의해 설명되는 객체를 나타낸다.


    관계형 데이터베이스 아이콘 무료에 대한 이미지 검색결과



    ER 데이터 모델은 관계형 데이터베이스를 위해 구현한다. 아래의 그림처럼 여러가지 도형으로 객체와 객체간의 관계를 묘사한다.




     

    관련 이미지



    책에서는 예로 AllElectronics사의 관계형 데이터 베이스를 들고있다.




    예제에서는 조건을 다음과 같이 주고 있다.


    1. 기업은 관계형 고객, 상품, 직원, 지점 테이블로 표현한다.

    2. 관련 고객은 고객의 고유 식별번호, 고객 이름, 주소, 나이, 직업, 소득, 신용정보, 기타범주의 속성을 포함하는 집합으로 구성된다.

    3. 나머지 테이블도 객체를 설명하는 속성으로 구성되어 있다.

    4. 테이블은 여러 객체간의 관계를 나타내는데 사용할 수 있으며 관계테이블로는 구매 정보, 판매 품복, 근무위치 가 있다.


    이 조건을 스키마로 표현하면 다음과 같다.


    고객 (고객ID, 이름, 주소, 나이, 직업, ...)

    항목 (항목ID, 브랜드범주, 유형, 가격, ...)

    직원 ( 직원ID, 이름, 범주, ..)

    지사 ( 지사ID, 이름, 주소 , ..)

    구매 (거래ID, 고객ID, 직원ID,...)

    거래 항목 (거래ID, 항목ID,...)

    위치 (직원ID, 지점ID)


    관계형 데이터베이스는 SQL과 같은 관계형 질의어나 그래픽 사용자 인터페이스의 지원으로 작성된 데이터 베이스 질의어로 접근이 가능하다. 질의어를 이용하면 sum,avg,count등의 함수로 내가 원하는 결과를 얻을 수 있도록 처리 할 수 있다.


    관계형 데이터 베이스를 마이닝할 때 데이터 패턴이나 경향을 검색면 좀 더 나아갈 수 있다.예를 들면 새로운 고객의 신용도를 예측하기 위해 이미 저장되어있는 고객의 정보를 분석하여 알아낼 수 있고 전년도 판매실적을 분석하여 올해를 예상할 수 도 있다.


    관계형 데이터 베이스는 가장 일반적으로 사용할 수 있고 풍부한 정보 저장소중 하나라 데이터 마이닝의 연구에 중요한 데이터 형태이다.



    2) 데이터 웨어하우스의 데이터


    예를 들어 AllE사가 전세계에 지사를 운영하고 있다고 치자. 어느날 3분기동안 지사별 매출 데이터 분석을 요청했을 때 각각 지사별로 데이터를 가지고 있기때문에 작업이 상당히 어려워진다.


    이럴때에 데이터 웨어하우스를 가지고 있으면 좋다. 데이터 웨어하우스는 단일 사이트에 상주하여 통합된 스키마에 저장된 다양한 소스로부터 수집된 정보의 저장소이기때문이다.


    데이터 웨어하우스는 데이터 클리닝, 통합, 변환, 로딩, 새로고침을 통해 구성된다. 의사 결정을 위해 웨어하우스는 주요 주제를 중심으로 구성된다. 개별 데이터보다는 데이터들의 요약정보같은것을 주로 저장한다.





    데이터 웨어하우스는 데이터 큐브라는 다차원 데이터 구조로 모델링한다. 각 차원은 스키마 상의 속성이나 속성집합이 되며 개별 셀은 카운트와 같은 합산한 값을 저장한다.


    이러한 요약 데이터를 제공함으로써 데이터 웨어하우스는 OLAP 기능을 제공한다.OLAP는 분석 대상 데이터에 대한 배경지식을 이용하여 다양한 수준으로 데이터를 요약해 볼 수 있다.


    OLAP 분석을 통하여 아래의 큐브 모양에서 나타나듯이 각 차원별로 값을 쪼개거나 통합하는 것도 가능하다. 각셀에는 분기별 장소의 제품 판매 액이 담겨져 있다.




    데이터 웨어 하우스를 통해 분석 업무를 수행할 수 있지만 더 깊이있는 작업은 데이터 마이닝 분석 툴이 필요하다. 다차원 데이터 마이닝은 OLAP와 유사한 방법으로 다차원 공간에서 마이닝 분석 작업을 실행하여 탐색적 다차원 데이터 마이닝이라고도 한다.


    3) 트랜잭션의 데이터 (거래 데이터)


    일반적인 거래 데이터는 거래와 관련된 다양한 항목을 가진 테이블로 구성할 수 있으며 이 데이터를 분석하여 사용할 수 있다.


    유명한 일화겠지만 윌마트에서 90년대 중반 매주 수요일 저녁 기저귀와 맥주 매출이 동반 상승하는 현상이 반복되었꼬 이 상관관계를 이용하여 두개를 가까이 진열했을때 매출이 5배나올랐다고 한다.


    월마트에 대한 이미지 검색결과


    1.4 데이터 마이닝이 가능한 패턴


    데이터 마이닝 기능은 다음과 같이 다양하다.


    ㄱ. 특성화, 차별화 기능

    ㄴ. 빈발 패턴 마이닝, 연관성 분석, 상관

    ㄷ. 분류와 회귀분석

    ㄹ. 군집 분석

    ㅁ. 이상치 분석


    일반적으로 이러한 작업들은 탐색과 예측으로 구분할 수 있다.


    ㄱ. 설명(탐색) 마이닝 : 타깃 데이터 집합의 특성을 설명

    ㄴ. 예측 마이닝 : 예측을 하기 위해 현재 데이터에 대해 감응 작용을 수행


    1) 클래스/개념 설명 :: 특성화와 차별화


    데이터 입력은 클래스나 개념과 연관될 수 있다. 예를들어 ALLE 상점의 판매제품에 컴퓨터와 프린터가있고 고객은 망설임 없이 제품을 구매하는 통큰 사람과 계획적으로 구매하는 사람이 있다고 하자, 관련 데이터는 요약된 간결한 형태이지만 정확한 용어로 개별 클래스와 개념을 설명하는 데 유용하게 사용 할 수 있다.


    클래스/개념 설명은 다음과 같은 작업을 이용하여 도출할 수 있다.


    ㄱ. 데이터 특성화 : 타깃 클래스의 데이터를 일반 용어로 요약

    ㄴ. 데이터 차별화(클래스 비교) : 타깃 클래스와 비교대상 클래스를 비교

    ㄷ. 데이터 특성화와 차별화를 모두 사용(4장에서 설명)


    데이터 특성화는 타깃데이터의 일반적인 특징에 대한 요약이다. 효과적인 데이터 요약과 특성화 작업을 위한 방법은 아래와 같으며 자세한건 뒷장에서 소개해준다고 한다.


    ㄱ. 데이터 큐브 기반 OLAP 롤업 작업 (4장)

    ㄴ. 통계측정값과 그래프에 의한 간단한 데이터 요약 (2장)


    특성 결과물은 다양한 형태로 표현할 수 있다. 차트, 데이터 큐브, 테이블등으로 나타낼 수 있으며 일반화된 관계나 특성 룰 형태가 될 수 있다.


    데이터 차별화는 타깃 클래스 객체, 비교 대상 클래스 객체 이 두 객체의 일반적인 특성을 비교하는 것이다. 이 타깃,비교 클래스는 사용자가 정의할 수 있으며 객체는 DB 질의를 통하여 수집할 수 있다.




    2) 빈발 패턴 마이닝, 연관성 분석, 상관 분석 (연관성과 상관은 6,7장에서 설명)


    빈발패턴에는 비발 항목집합, 빈발 서브시퀀스, 빈발 서브구조를 포함한 다양한 종류의 빈발 패턴이 있다. 서브 구조는 그래프, 트리, 격자와 같은 다른 구조 현태를 가지며 항목 집합이나 서브시퀀스와 결합할 수 도 있다. 빈번하게 발생하는 서브구조를 빈발 구조패턴이라한다.


    예를 들어서 빈번하게 같이 구매되는 제품이 무엇인지 알고 싶을때 마이닝한 결과는 다음과 같다.

    X : 구매고객

    confidence : 컴퓨터를 구매시 소프트웨어를 같이 구매할 확률

    support : 분석 대상 모든 거래에서 컴퓨터와 소프트웨어가 같이 구매된 확률


    buys(X,"computer") => buys(X,"software)[support = 1%,confidence = 50%]


    연관성 규칙은 반복된 하나의 속성, 조건을 포함하고 있으며 1개의 조건을 가지고 있으면 단일-차원의 연관성 규칙이라고 한다. 위에서 조건 표기를 삭제하면 다음과 같이 표기될 수 있다.


    computer => software[1%,50%]


    구매 관련 데이터가 들은 DB를 마이닝하면 다음과 같은 규칙을 발견할 수 있다.


    고객중 2%는 20~29tpdlrh tndlqdms $40,000~$49,000 computer를 구매하였으며 이 조건에 맞는 사람들이 computer를 구매할 확률은 60%


    age(X,"20.29") ∧income(X,"40k..49k") => buys(X,"laptop")[support = 2%, confidence = 60%]


    일반적으로 최소 support 값과 최소 confidence 값을 모두 만족시키지않으면 관심 밖의 대상이 된다.



    3) 예측 분석을 위한 분류와 회귀분석 (분류는 8,9장에서 회귀는 책에서 다루지 않음)


    분류와 회귀분석을 하기 전에 유의한 속성을 식별하기 위한 관련 분석을 먼저 해서 관련이 없는 다른 속성은 고려대상에서 제외하여야 한다.


    분류는 데이터 클래스나 개념을 설명하거나 차별화한 모형을 찾아내는 과정이다. 클래스 라벨이 포함된 훈련용 데이터를 분석하여 모형을 생성하고 라벨이 없는 객체를 대상으로 라벨을 예측하기 위해 사용한다.


    분류 결과는 아래와 같이 다양한 방법으로 표현할 수 있다. 이중에서 신경망은 뉴런이란 처리 단위로 뉴런 사이에 가중치가 적용 된 연결 집합이다. 이 외에도 나이브 베이즈 분류, 지지 벡터 머신,KNN 분류 방법등이 있다.




    회귀는 연속형(수치형) 값을 예측한다. 회귀 분석은 분석대상 데이터에 대한 분포 경향을 식별하는 것도 포함한다.



    예를 들어보자. 어떠 한 상점에서 판매하는 목록의 물건들을 "좋다", "그저그렇다", "무반응"이라는 반응값에 근거하여 분류하고 싶어한다고 하자.


    goods icon store free에 대한 이미지 검색결과


    분류판매 관리자는 제품의 특성에 근거하여 3가지 클래스에 대한 모형을 생성하고 싶어한다고 하자. 의사 결정트리를 이용하여 '가격','브랜드','생산국가'를 이용하여 분류할 수 있다.



    회귀는 판매량 데이터에 근거하여 향후 판매 기간동안 제품별 판매수익을 알아낼때 사용할 수 있다.




    4) 군집 분석 (10장,11장에서 설명함)


    군집 분석은 사전에 라벨링이 없는 데이터에 사용이 되어 라벨을 생성하기 위해 사용할 수 있다. 내부 클래스 간 유사도를 높이고 외부 클래스 간 유사도를 최소화하는게 원칙이다.





    5) 이상치 분석(12장에서 설명)


    데이터 집합은 일반적인 경향, 모형을 준수하지 않는 객체를 포함할 수 있다. 이러한 데이터 객체를 이상치라고 한다. 이상치 분석이나 anomaly mining이라고 한다. 많은 데이터 마이닝 방법은 이상치를 노이즈나 예외사항으로 처리하여 제외한다.


    그래도 사기 탐지같은 응용사례를 보면 이상치의 발생이 더 흥미로울때도 있다. 예를들면 갑자기 계좌번호에서 평소보다 돈이 많이 빠지는 이상치가 발견되면 부정사용을 발견할 수 있는 것이 있다.


    관련 이미지


    이상치는 다음과 같은 방법으로 검출할 수 있다.


    1) 데이터에 대한 분포나 확률 모형을 가정한 통계검정을 이용

    2) 모든 군집에서 떨어져 있는 객체를 이상치라고 판단하는 거리측정 방법을 사용

    3) 밀도기반 방법(주로 로컬 영역 데이터에서)


    6) 모든 패턴이 관심 대상인가? -> " 아니요 "


    생성된 패턴의 일부분이 실제로 특정 사용자에게 관심 대상이 된다. 그럼 질문이 발생할 수 있다.


    첫째로는 다음과 같다.



    관심대상 패턴은 지식을 표현하는 데 기여한다. 패턴 관심도는 발견된 패턴의 구조와 해당 패턴에 내재된 통계값에 기초한다.


    연관성 규칙에 대한 객관적 측정값은 support와 confidence가 있다.


    ㄱ.support X=>Y P(X∪Y)

    - 거래 데이터베이스에서 주어진 룰을 만족시키는 거래비율을 나타낸다.

    - 지지도는 X,Y를 모두 포함한 거래인 확률 P(X∪Y)를 값으로 가진다.



    ㄴ.confidence X=> Y P(X|Y)

    - 감지된 연관성의 확실한 정도

    - X를 포함한 거래가 Y까지 포함하는 확률


    ㄷ.정확도와 분류 IF-THEN 규칙에 대한 커버 범위

    - 정확도는 규칙으로 정확하게 분류한 데이터의 퍼센트 비율을 의미한다.

    - 커버범위는 규칙이 적용된 데이터의 퍼센트라는 측면에서 support와 유사하다.

    - 이해 가능도에 대해 마이닝한 패턴의 복잡도 or 비트 길이를 평가한 간단한 목적

    측정적값을 사용할 수 있다.


    객관적 측정 값은 관심 패턴을 식별하는 데에 도움이 되지만 특정 사용자의 요구와 관심을 반영하는 주관적 측정값과 결합되지 않는다면 해당 측정값은 충분치 않다.






    예를 들면 위 그림과 같이 쇼핑객의 쇼핑 패턴 데이터는 같은 DB를 분석하는 각 팀마다 관심대상이 될 수도 있고 아닐 수도 있다. 이와 비슷하게 객관적인 기준에 근거한 패턴은 일반 상식만을 보여주기때문에 관심대상이 아닌 경우도 있다.때문에, 패턴은 사용자가 희망하는 가설을 입증하거나 확인할 때 관심대상이 될 수 있다.


    두번째로는 아래와 같다.




    이는 마이닝 알고리즘의 완결성과 관련된 부분이다.연관 분석과 같은 몇몇 마이닝 작업은 해당 알고리즘의 완결성을 보장한다. 연관 규칙 마이닝은 제한 조건과 관심도 측정값의 사용이 마이닝의 완결성을 보장할 수 있다라는 분석 방법이다 (6장에서 설명)




    마지막은 다음과 같다.





    이는 마이닝 최적화와 관련된 문제이다. 이 방법은 사람이나 마이닝 시스템 둘 모두 흥미있는 패턴을 확인하기 위해 생성된 패턴을 검색할 필요가 없기때문에 효율적이다.


    패턴 측정은 타깃 사용자에 의한 패턴을 효율적으로 발견하기 위해 반드시 필요하다.  관심 없는 패턴을 제거하고 나머지 패넡에 순위를 매김할 수 있다. 이를 나중에 탐색범위를 한정하고 가이드 하기 위한 목적으로도 사용할 수 있다.  이런 제안 조건 기반 마이닝 프로세싱의 예시는 패턴감지와 클러스터링이 있다.(7장,11장에서 설명)



    1.4 사용되는 기술


    데이터 마이닝 방법 개발에 상당한 영향을 준 여러 분야의 예제를 보겠다.






    1) 통계학


    통계학은 데이터를 수집, 분석, 해석, 설명, 표현하는 학문이다. 마이닝은 통계학과 직접 관련이 있다.


    통계 모형은 랜덤 변수와 확률 분포를 사용하여 타깃 클래스에 있는 객체의 행동을 설명하는 수학함수의 집합이며 데이터와 데이터 클래스를 모델링 하기 위해 널리 사용된다. 쉽게 말하자면 우리가 자주 봤던 선형회귀, 트리, 신경망..이런게 통계 모형이다. 예를 들어서 데이터의 특성 도출, 분류와 같은 작업에서 타깃 클래스에 대한 통계값, 기계학습, 패턴 인식 모형을 구축할 수 있다.


    통계 모형은 마이닝의 작업 결과이기도 하고 통계 모형을 가지고 마이닝을 할 수 있다. 예를 들어 노이즈와 결측 값을 모델링하기 위해 통계학을 사용할 수 있다. 두번째 예로는 대형 데이터 집합에서 패턴 감지가 필요할 때 모형을 사용하여 노이즈와 결측값을 확인하고 처리할 수 있다.


    통계학은 데이터와 통계모형을 사용하고 예측하기위한 도구를 개발한다. 예를 들어 분류나 예측 모형을 마이닝한다음에 통계적 가설 테스트(확증적 데이터 분석)로 검증 작업을 거쳐 통계적으로 유의하다! 라는 판단을 하는것이다.


    통계적 방법을 적용할때는 알고리즘을 주의 깊게 설계하고, 계산비용의 축소를 위해 설계 및 튜닝 작업이 실행되어야 한다.


    2) 기계 학습


    데이터에 근거하여 복잡한 패턴을 자동으로 컴퓨터가 인식하고 의사결정을 할 수 있도록 학습하는 분야이다. 기계 학습은 다음과 같이 나뉜다.


    ㄱ. 지도학습(분류) : 훈련용 데이터 집합이 라벨링이 되어있음


    예시로 머신런닝의 Hello World라고 불리우는 MNIST같은 경우에도 트레이닝 셋에서 각 숫자에 대해 라벨링 하여 학습데이터로 주어준다.


    MNIST 알고리즘에 대한 이미지 검색결과



    ㄴ. 비지도 학습(군집 분석) : 훈련용 데이터 집합이 라벨링 되어 있지 않음


    예시로 비슷한것끼리 묶어주는 클러스터링이 있겠다. 보통 비지도 학습은 데이터에서 패턴이나 구조를 발견하기 위해 사용되고는 한다.

    관련 이미지

    ㄷ. 반지도 학습 : 라벨이 있는 것과 없는 것을 같이 사용

    한 가지 접근 법으로는

    - 라벨이 있는 예제 : 클래스 모형을 학습하기 위해 사용

    - 라벨이 없는 예제 : 클래스간의 경계 영역을 정의하기 위해 사용

    아래 그림에서 라벨이 없는 사례의 사용 여부에 따라 의사 결정 경계가 달라진다. A,B 두개의 클래스에 대해서 A클래스에 속하는 사례를 양의 사례 B클래스에 속하는 사례를 음의 사례라고 하자. 라벨링이 없는 사례를 고려하는 경우에는 실선으로 그렇지 않으면 점선으로 나뉜다. 라벨링 하였음에도 불구하고 오른쪽 코너에 있는 양의 사례는 노이즈나,이상치가 되기 쉽다는 점을 알 수 있다(이렇게 끝나는데 어쩌라는건지모르겠..)






    ㄹ. 능동 학습 : 사용자가 학습 과정에서 능동적인 역할을 하도록 하는 방법

    사용자에게 1개 사례에 대해 라벨링할 것을 요청하며 해당 사례는 라벨링이 안 된 예제에서 가져올 수 있거나 학습 프로그램 의해 합성된다. 사용자로부터 이렇게 지식을 능동적으로 습득함으로써 모델 품질을 최적화 하는것이 목적이다.




    3) 데이터 베이스 시스템과 데이터웨어하우스


    데이터 베이스 시스템 연구는 다음과 같은 특징을 지닌다.

    - 조직과 최종 사용자를 위해 데이터 베이스의 생성, 유지, 사용기술에 중점

    - 질의어 처리, 최적화, 데이터 저장소, 인덱싱, 접근 방법에 대한 원칙 수립

    - 매우 크고 상대적으로 정형화가 잘 되어 있는 데이터 집합을 처리하는 데 있어 확정성이 높음


    마이닝 작업은 대용량 데이터 집합에 해당하는 실시간의 빠른 스트리밍 데이터를 다를 수 있어야 하며, 고효율과 확장성을 확보 할 수 있도록 기술을 활용하여야 한다. 또한 마이닝 작업은 복잡한 DB에 대해서 요구사항 처리를 위해 시스템 능력을 확장하는데 사용 할 수 있다.


    최근 데이터베이스 시스템은 데이터 웨어 하우징과 마이닝 솔루션을 사용하여 체계적인 분석 기능을 갖추어 왔다.


    데이터 웨어 하우스는 다양한 장소와 시간대에서 발생한 데이터를 통합한다.


    데이터 큐브

    - 데이터를 부분적으로 재료화한 것으로 다차원 공간의 데이터를 통합

    - 다차원 데이터 베이스 상에서 OLAP 기능을 제공

    - 다차원 데이터 마이닝 작업 지원



    4) 정보 검색


    정보 검색과 데이터 베이스 시스템의 차이점

    1) 검색 대상 데이터는 비구조화 되어있다고 가정

    2) 질의어는 DB 시스템에서 질의어와는 달리 간단한 구조를 갖고 있는 키워드에 의해 주로 형성


    정보 검색의 일반적인 방법은 확률적 모델을 채택한다.

    텍스트 문서는 다양한 단어로 이루어진 집합으로 보고 문서의 언어 모델은 문서 내에 있는 단어를 생성하는 확률 밀도 함수이다.


    두 문서간의 유사성은 모델간의 유사도로 측정 할 수 있고 문서의 주제는 단어의 확률 분포로 알아 볼 수 있다.




    1.4 어떤 종류의 애플리케이션을 대상으로 하는가?


    "데이터가 있는 곳에 데이터 마이닝 응용프로그램이 있다"라고 할정도로 너무 많고 그중에서 잘 알려진 비즈니스 인텔리전스, 검색엔진 두가지를 책에선 설명하고 있다.


    1) 비즈니스 인텔리전스


    비즈니스 인텔리전스 기술은 비즈니스 운영에 대한 과거, 현재, 미래의 모습을 제공한다. 데이터 마이닝은 인텔리전스 기술의 핵심이다.


    분류 및 예측 기술은 예측 분석 분야의 핵심이다. 시장, 공급, 판매를 분석할때 적용할 수 있고 군집 분석은 유사성에 기반한 고객 관계 관리의 중심 역할을 한다.


    데이터 마이닝은 효과적인 시장분석, 경쟁사 분석, 고객 응대등 스마트한 비즈니스를 위한 핵심 기술로 작용하고 있다.




    2) 웹 검색 엔진


    웹 검색 엔진은 웹상의 정보를 탐색하는 특화된 컴퓨터 서버이다. 검색 결과를 hits라고 부르는 리스트로 리턴되며 웹페이지, 이미지, 다른 종류의 파일로 구성되어 있다. 검색 엔진은 알고리즘에 의해 자동 운영되거나 알고리즘과 담당자의 관리를 통하여 운영된다.


    웹 검색 엔진 종류에 대한 이미지 검색결과

    웹 검색 엔진은 매우 큰 데이터 마이닝 응용 프로그램이다. 크롤링, 인덱싱, 검색등 다양한 측면에서 사용된다.


    검색 엔진은 다음과 같은 이유로 데이터 마이닝에 있어 큰 도전 분야 이다.


    ㄱ. 검색엔진은 계속해서 불어나는 데이터를 처리해야 한다.


    한대의 컴퓨터로 해결할 수 없기때문에 수천만대의 컴퓨터로 이루어진 클라우드 컴퓨터를 이용하여 대용량 데이터를 마이닝한다.



    관련 이미지    Azure에 대한 이미지 검색결과


    ㄴ. 검색 엔진은 종종 실시간 데이터를 처리해야한다.


    대규모 데이터를 이용하여 검색 엔진 모형을 구축하고 이를 위해 사전에 검색되었던 질의어를 이용하여 질의어 분류기를 구축해야 한다. 사용자의 질의에 빠르게 답변을 할 수 있도록 해야한다. 또한 계속해서 생겨나는 질의를 처리하기 위하여 질의 분류기를 지속적으로 업데이트하여 관리할 수 있어야한다.


    SPARK에 대한 이미지 검색결과    관련 이미지   


    ㄷ. 검색엔진은 종종 매우 작은 횟수만으로 질의를 해야한다.


    사용자가 질의를 실핼할 때, 사용자의 프로파일과 질의 의력을 사용하여 짧은 시간에 사용자에게 특화된 답을 제공할 수 있어야 한다.





    1.7 데이터 마이닝의 주요 이슈



    데이터 마이닝은 엄첨난 장점을 갖는 역동적이고 빠르게 확장하는 분야로써 이 분야에서 발생되는 주요 이슈 사항에 대해 책에서 간략하게 살펴 보고 있다.


    1) 마이닝 방법


    ㄱ. 다양한 종류의 지식을 마이닝하기

    다양한 종류의 데이터 베이스를 다양한 방법으로 사용하여 수많은 데이터 마이닝 기술의 개발을 한다.


    ㄴ. 다차원 공간 지식 마이닝

    탐색형 다차원 데이터 마이닝이라고도 하며 다차원 공간에 대한 데이터를 탐색 할 수 있다.


    ㄷ. 데이터 마이닝의 학제적 노력

    여러 분야의 새로운 방법을 흡수하고 통합함으로써 마이닝의 파워가 강화될 수 있따.


    ㄹ. 네트워크로 연결된 환경에서 발견의 파워를 강화

    다양한 데이터 객체에 대한 시맨틱 연결은 데이터마이닝에서 긴요하게 사용될 수 있다.


    ㅁ. 불확실성, 노이즈, 불완전한 데이터를 다루기

    대부분의 데이터는 노이즈,불확실성을 포함하여 완벽하지 않는 경우가 있다. 데이터의 전처리,이상치 감지 및 제거는 마이닝 프로세스와 통합되어야하는 기술이다.


    ㅂ. 패턴 또는 제약 조건에 의한 마이닝 및 패턴 평가

    주관적인 측정기준에 근거하여 패턴의 관심 정도를 평가하기 위한 기술이 필요하며 사

    용자 특화 제한 조건을 사용하여 보다 많은 흥미 있는 패턴을 만들고 검색 공간을 더 축소할 수 있다.


    2) 사용자 상호작용



    사용자는 데이터 마이닝에서 중요한 역할을 한다.


    ㄱ. 인터랙티브 마이닝


    데이터 마이닝 프로세스는 고도의 상호작용을 가지고 있어야 한다. 유연한 사용자 인터페이스와 탐색적 마이닝 환경을 구축해 시스템 사용자간의 상호작용을 가능케 하는것이 중요하다. 사용자의 요청에 따라 시스템은 요청을 처리 할 수 있어야 한다.


    ㄴ. 배경 지식의 통합


    배경 지식, 제한 조건, 규칙 등은 지식 발견 프로세스로 통합되어야한다.


    ㄷ. 임시 데이터 마이닝과 데이터 마이닝 질의 언어


    높은 수준의 데이터 마이닝 질의 언어, 인터페이스는 사용자의 요구사항에 맞게 자유롭게 임시 데이터 마이닝 작업을 정의할 수 있도록 최적화 되는 것은 주목받고 있는 연구분야이다.


    ㄹ. 데이터 마이닝 결과를 제공하고 시각화함


    발견된 지식을 사람이 쉽게 이해할 수 있도록 결과를 시각화해야 한다.



    R에 대한 이미지 검색결과            




    3) 효율성과 확장성


    ㄱ. 데이터 마이닝 알고리즘의 효율성과 확장성


    많은 양의 데이터에서 정보를 효과적으로 추출하려면 데이터 마이닝 알고리즘은 효율성(실행시간은 예측 가능해야하며 짧고) 확장성(여러 응용프로그램에서 사용 가능 해야)이 있어야 한다.


    ㄴ. 병렬, 분산, 증분 마이닝 알고리즘


    동일한 사이즈의 대용량 데이터, 광범위한 데이터 분포, 마이닝의 계산 복잡도로 인하여 병렬 및 분산 데이터 집약적 마이닝 알고리즘이 탄생했다.


    데이터를 조각으로 분해하여 조각별로 패턴을 검색하고 병렬로 처리되며 병렬 프로세스는 서로 상호 작용하여 후에 조각의 패턴을 합친다.


    클라우드, 클러스터 컴퓨팅은 분산 및 협업을 통하여 대규모 계산 작업을 처리한다.



    4) 데이터 베이스 유형의 다양성


    ㄱ. 복합 유형의 데이터를 다루기


    다양한 응용 분야는 정형화된 데이터로부터 폭넓은 범위의 신규 데이터 유형을 생성한다. 단순한 데이터 객체부터 시간, 곤간 데이터등 다양한 데이터를 다룬다. 이들 모두를 한번에 처리할 수 있는 마이닝 시스템을 기대하는 것은 비현실적이기 때문에 다양한 응용을 위해 효과적이고 효율적인 마이닝 툴 구축은 활발하게 진행되는 연구 분야이다.


    ㄴ. 동적, 네트워크화된, 글로벌 데이터 저장소를 마이닝하기


    데이터의 원천은 다양한 종류와 의미 그리고 상호 연결된 데이터일 수도 있다. 이런 연결된 데이터들은 다양한 패턴과 지식을 갖을 수 있으며 정보 네트워크 마이닝은 지금까지 계속해서 도전되는 연구 분야이다.


    1.7 데이터 마이닝 관련 모임


    1) 데이터 마이닝의 사회적 파급성


    " 어떻게 하면 마이닝 기술을 이용하여 사회에 기여를 할 수 있을까? "

    " 어떻게 하면 개인 관련 정보의 오용에 대처할 수 있을까? "


    2) 프라이버시를 지키는 데이터 마이닝


    마이닝은 과학적 발전, 경영 관리, 경제회복, 안전과 보안을 돕지만 개인 정보를 노출 시킬 위험을 초래하기도 한다.  그러므로 프라이버시를 보호하는 수준에서의 데이터 공개가 필요하다.


    3) 눈에 보이지 않는 데이터 마이닝


    점점 더 많은 시스템이 데이터 마이닝 기술을 내장하고 사용자가 마이닝에 대한 지식이 없어도 마이닝을 실행하고 마우스 클릭등을 통해 알고리즘에 대한 지식 없이 결과를 이용할 수 있게 해야한다.



    1.8 정리


    데이터 마이닝은 엄첨나게 쌓이는 데이터를 효과적으로 확장가능하며 유연한 데이터 분석

    방법이 필요함에 따라 등장했다.


    데이터 마이닝은 데이터를 분석하여 데이터에 존재하는 일종의 패턴을 발견해내는 것이다.

    이 과정에는 데이터 정제, 통합, 선택, 변환, 패턴 발견 및 평가, 지식 표현이 있다.


    신뢰성 있는 테스트 데이터에 대해 패턴이 유효하다면 이는 관심 대상이 될 것이다. 관심도의 측정은 객관적이거나 주관적이며 발견 과정을 가이드 하기 위해 사용할 수 있다.


    데이터 마이닝은 다차원 뷰를 제시하며 주요 차원은 데이터, 지식, 기술, 응용프로그램이다.


    데이터 마이닝은 모든 종류의 데이터를 대상으로 실행 할 수 있다. 대신 분석 대상 분야에서 의미가 있어야 한다.


    데이터 웨어 하우스는 다양한 소스에서 획득한 장기간 데이터 스토리지의 저장소이며 경영의사 결정을 지원할 수 있또록 평성하였다.


    멀티미디어 데이터 마이닝은 OLAP 기반 다차원 분석으로 핵심 데이터 마이닝 기술을 통합하였다.


    데이터 마이닝 기능은 다른 많은 영역으로부터의 기술을 통합하였다.( DW,통계학,ML등 )


    데이터 마이닝은 많은 성공적인 적용사례가 있으며 아직 많은 과제가 남아있다.




    하..정말 더럽게 안읽히는 책이였다. 나에게 수고의 박수를 짝짝짝***




    대화의 장 💬