Data Science/데이터사이언스개론

[데이터사이언스개론] Chapter 2

rladmswl_1116 2024. 3. 17. 10:41

Data Science Process

  • 데이터 사이언스는 상당히 잘 이해된 단계가 있는 프로세스이다.
  • 프로세스는 subtask로 쪼개고 전체 문제를 해결하기 위해 subtask에 대한 해결책을 생각한다.
  • 문제의 근본으로 일반적으로 쓰이는 데이터 마이닝 작업들이 있다.
  • 좋은 데이터사이언티스트가 되기 위해서는
    • 일반적인 데이터 마이닝 작업을 많이 알고,
    • 문제를 쪼개는 능력이 있어야 한다.

 

Common Data Mining Task

근본적으로 다른 몇 가지 데이터 마이닝 작업들이 있다.

  1. Classification
    • 모집단의 개인이 어떤 클래스에 속하는지 예측한다.
    • 클래스는 상호배타적이다. (겹침 존재 불가)
    용어 정리)
    • instance: 학습 데이터
    • attribute: 속성
    • classification target=label: 분류 목표
    절차)
    1. 학습데이터(training dataset)으로 데이터의 클래스를 잘 설명하는 모델을 만든다.
    2. 새로운 데이터를 가지고 추정된 클래스를 생성하기 위해 모델을 적용한다.
    비슷한 업무: 점수 매기기, 클래스 확률 평가

 

2. Regression(회귀)

  •   (value estimation), 개인에 대한 일부 변수의 수치를 추정하거나 예측한다.
  1. 학습데이터(training dataset)으로 특정 변수의 값 잘 설명하는 모델을 만든다.
  2. 새로운 데이터를 가지고 추정 값을 얻기 위해 모델을 적용한다.
  • classification vs regression
    • classification: 학습데이터의 클래스를 예측한다.
    • regression: 학습데이터와 연관된 값을 예측한다.

 

3. similarity matching 

  • 주어진 데이터를 바탕으로 유사한 개인을 찾기 (데이터/속성 찾기)

절차)

  1. 두 개인의 거리를 측정한다. (유사함의 정도는 추상적이므로 숫자로 변환)
  2. 개인과 거리를 최소화하는 또 다른 개인을 찾는다.

 

4. Clustering

  • 유사한 것들끼리 그룹으로 묶기
  • 데이터에 어떤 자연적인 그룹이 존재하는지 확인하는 데 유용

 

5. Association Rule Discovery

  • 연관성 또는 동시 발생 찾기 ex. 기저귀를 사면 맥주를 사더라..
  • 마케팅에서 상품 진열, 추천에 좋음

 

6. Profiling

  • 개인이나 그룹의 일반적인 행동을 묘사한다. (behavior description)
  • 비정상 감지에 유용하다. profile은 평범한 행동을 묘사해주기 때문에 평범하지 않은 행동에 대해 경고해준다. fraud detection이 예시다.

 

7. Link Prediction

  • 데이터 아이템들끼리의 커넥션을 예측한다.
  • 링크가 존재해야 한다고 제안하고 그 강도를 추정한다.
  • 추천할 때 자주 사용(친구 추천, 영화 추천 등)

 

8. Data Reduction

  • 데이터셋을 더 큰 데이터셋의 중요한 정보를 많이 포함하는 더 작은 데이터셋으로 축소(중요한 정보만 가지도록 축소)
  • 장점
    • 작은 데이터셋이 다루기 쉽다.
    • 작은 데이터 셋은 더 나은 정보나 통찰력을 준다.
    • 절충안으로서 데이터 감소는 정보의 손실을 수반

 

9. Casual Modeling

  • 어떤 사건이나 행동이 다른 것에 영향을 주는지 이해하는 것(인과관계)
    • ex) 담배를 피면 폐암이 생기고 폐암이 생기면 담배를 피는가?
  • randomized controlled experiments 사용

 

Supervised vs Unsupervised

종류  supervised data mining unsupervised data mining
타겟 유무 배울 타겟 있음 배울 타겟 없음
목적 타겟을 예측하는 것 특정 타겟 없이 패턴을 찾는 것
학습 데이터 유무 학습 데이터 있어야 함 학습 데이터 필요 없음
예시 classification, regression, link prediction clustering, association rule discovery, profiling

 


classification vs regression

  • 둘 다 supervised data mining task

classification regression

target categorical value numerical value
ex yes/no 숫자 같은 값

Two Phases of Data mining

  1. Mining phase: 존재하는 데이터를 바탕으로 패턴을 찾거나 모델을 만드는 것
  2. Use phase: 새 데이터에 패턴이나 모델을 적용하는 것

Data Mining Process

: 문제를 해결하기 위한 과정이다. 단계 잘 기억하기!

 

1. Business Understanding

  • 풀어야 하는 business problem을 이해해야 한다.
    • 문제가 깔끔하게 존재하는 경우는 거의 드물다.
  • business problem을 여러 개의 문제로 쪼갠다.
    • 성공의 열쇠는 데이터 과학자에 의한 창의적인 문제 공식화이다.
    • 각각의 문제에서 강력한 도구들이 사용될 수도 있다.
  • 문제를 재구성하고 솔루션을 설계하는 것은 반복적인 발견 과정이다.

 

2. Data Understanding

  • 데이터는 솔루션을 구축하는 데 사용하는 재료다.
  • 각각의 데이터의 strength와 limitation을 이해해야 한다.
    • 문제와 정확하게 맞는 경우는 드물다.
    예를 들어서, classificaiton에서는 labeled data가 필요하다.
  • 향후 데이터에 대한 추가적인 투자가 필요할 지 결정해야 한다.
    • 몇 개의 데이터는 무료이고, 몇 개는 노력해서 얻을 수 있고 사야 하는 데이터도 있다.

 

3. Data Preparation (가장 중요한 단계)

  • 데이터를 더 사용하기 쉽도록 데이터를 정리하고 변환한다.
    • 몇 데이터는 특정 형식으로 만들려면 데이터 분석 도구가 필요하다.
  • 예시
    • 데이터를 행렬로 변환
    • 빈 데이터를 제거하거나 채우기
    • 데이터를 다른 타입으로 바꾸기
    • 수치를 규격화시키거나 scale
    • 데이터 지우기
  • 데이터 마이닝의 결과는 이 단계에 달려있다.

 

4. Modeling

  • 데이터에 데이터 마이닝 기술이 적용되는 첫 단계
  • output은 데이터의 규칙성을 캡처하는 모델이나 패턴이다.
  • 데이터 마이닝의 근본적인 아이디어들에 대한 이해를 하는 것이 중요하다.

 

5. Evaluation

  • 데이터 마이닝 결과에 철저하게 접근한다.
    • 다음 단계로 넘어가기 전 정당하다는 확신이 들어야 한다.
  • 예시
    • 모델의 예측 정확성 추정
    • 학습데이터를 바탕으로 모델의 일반성 확인
    • false alarm의 비율 추정
  • 결과를 바로 배포하는 대신 통제된 실험실에서 먼저 모델을 테스트하는 것이 좋다.
    • 더 쉽고 더 싸고 더 빠르고 안전하다.
  • 데이터 사이언티스트는 주주들에게 모델과 모델의 평가 결과를 쉽게 설명할 줄 알아야 한다.

 

6. Deployment

  • 데이터 마이닝의 결과를 실생활에서 사용한다.
  • usual scenario
    • 새 예측 모델이 시행된다.
    • 모델이 기존의 정보 시스템과 통합된다.
  • 많은 케이스에서
    • data science team은 작동하는 프로토타입을 제작하고 평가한다.
    • data engineering team은 모델을 생산 시스템에 배치시킨다.
  • 배치가 끝나면 과정은 종종 처음으로 돌아간다.
    • 다음 반복은 이전 반복에서 얻은 통찰력과 경험을 통해 개선된 솔루션을 만들 수 있다.

Other Data Analytics Technologies

데이터 마이닝 외에도 데이터를 분석하는 데 다양한 기술이 쓰인다. 이러한 기술들을 알고 있는 것도 중요하다. 데이터 사이언티스트의 중요한 기술은 어떤 종류의 분석 기술이 특정한 문제를 해결하는 데 적합한지 인식할 수 있는 것이다.

 

1. Statistics

  • 분석의 기초가 되는 많은 양의 지식을 제공한다.
    • 데이터 요약 (평균, 중간값..), 퍼짐 정도의 이해, 가설 검정, 불확실성 정량화, 상관관계 측정
  • 데이터로부터 모델이나 패턴을 뽑기 위한 기술들은 통계학에 토대를 두고 있다.

 

2. Database System

  • 데이터의 insertion, querying, update, management를 허용하는 응용 소프트웨어
  • database query
    • 데이터나 데이터에 대한 통계에 대한 구체적은 요청이다 .데이터를 가져올 수도 있고 분류할 수도 있다.
    • 기술적인 언어로 공식화되었고 데이터베이스 시스템에 제안되었다.
  • data science and databases technologies
  • : data science는 데이터베이스 시스템에 저장된 데이터를 찾거나 검사하는데 database technology를 사용할 수 있다.

 

3. Machine Learning

 : 컴퓨터 시스템이 명시성 프로그래밍 없이 데이터로 "학습"할 수 있는 기능을 제공하는 것. AI의 subfield 이다.

  • 데이터를 사용하여 모델을 개발하고 모델을 개선한다.
    • decision tree, artificial neural networks 등
  • 그러나 field의 영역이 분명한 것은 아니다.
  • 데이터 마이닝과 머신 러닝은 연관성이 깊다.
    • 데이터로부터 유용하고 정보 있는 패턴을 찾는다.
    • 기술과 알고리즘도 같이 사용된다.
  • 그럼에도 머신 러닝은,
    • 다양한 종류의 성능 향상,
    • 인지 문제에 관심이 있다.
  • 데이터 마이닝은,
    • 상업적 응용과 사업상의 문제,
    • 데이터에서 패턴 및 규칙 찾기 에 관심이 있다

맞춤형 고객 찾기 -> database system

보통의 고객과 수익성 있는 고객의 차이 -> 통계학의 가설

실제 고객은 누구인가? -> data mining(profiling, clustering) Q. 왜 여기에 data mining?

새로운 고객이 수익성 있을까, 있다면 얼마나 있을까 -> data mining(classification, regression)

 


summary

  1. data mining process (CRISP-DM)
    • business understanding
    • data understanding
    • data preparation**
    • modeling
    • evaluation
    • deployment
  2. data scientist should decomposes a problem into one or more common data mining tasks
    • classification
    • regression
    • clustering
    • association rule discovery
    • similarity matching
    • profiling
    • casual modeling
    • data reduction
    • link prediction
  3. other related data analytics technologies
    • statistics
    • database systems
    • machine learning
  • boundary is not always sharp. so you should know about other techniques’ capability to know when they should be used