[파이데사] ML 1

2023. 4. 26. 12:322022/파이썬을이용한데이터사이언스

반응형

기초 지식

영어 대문자 → 집합

영어 소문자 볼드체 → 벡터

anaconda → python distribution

arg min : 어떤 특정한 argument를 최소화 함

Data Analytics

Descriptive: 평균값 등 당장 현상황을 살펴봄

  • 통계 분석: statistics, t-test
  • 유사 집단 판별: clustering(k-means, hierarchical)
  • 변수간 연관성 분석: association rule mining
  • 시각화

Diagnostic: 현 상황을 해결하려면?

  • reasoning: structural equation, Bayesian analysis

Predictive: 모델을 통한 예측

  • unsupervised: clustering(k-means, hierarchical)
  • supervised: regression, classification(explainable: decision tree / black-box: SVM, ANN)

Prescriptive: 솔루션 제시

  • 고전적 방법론이 많이 사용
  • optimization: simulation, meta-heuristics
  • decision making: reinforcement learning
  • recommendation

Rule Mining

  • 많은 양의 데이터셋에서 흥미로운 숨겨진 관계를 찾아내는 방법론
  • 주어진 거래 데이터를 통해 거래내역 속 다른 상품들의 출현을 기반으로 한 아이템이 출현하는 것을 예측할 수 있는 규칙을 찾는 것임
  • 이런 정보들은 마케팅 활동을 위한 의사결정을 하는 기반이 되어줌
  • Goal
    • 무엇이 함께 하는지 정의함으로써 규칙을 만들어냄
    • 만약 X가 구매되었다면, Y 또한 구매되었을 것이다.
  • Features
    • 행들은 거래데이터
    • 추천 시스템에서 주로 이용
      • 너가 X를 구매했다면 Y도 좋아할거야
    • 다른 말로 ‘affinity analysis’ 또는 ‘market basket analysis’라고 불림
  • terminology
    • itemset
      • I = {i1, i2, …, in}
    • dataset composed of transactions
      • D = {t1, t2, …, tm}
      • each transaction contains subset of items in
    • rule
      • X → Y / X, Y는 I의 부분집합
      • 선행사건: If part
      • 결과: Then part
      • 선행사건과 결과는 교집합을 가지지 않음
  • measures
    • support
      • A와 B를 모두 가지고있는 거래데이터의 일부
      • 데이터셋에서 자주 나타나는 아이템셋이 무엇이고 얼마나 나타나는지 찾을 때 이용
      $Support(A) = P(A) = |{t∈D s.t. A⊂t}| / |D|$
    • confidence
      • A를 포함하는 거래데이터에서 B가 포함된 아이템들이 어디서 나타나는지 알아봄
      • 의미있는 규칙을 만들어내는데 주로 사용됨 e.g. 얼마나 자주 규칙이 사실이라는 것이 밝혀지는가?
      $Confidence(A, B) = P(A, B) / P(A)$
    • lift
      • X와 Y가 독립이라면 예측될 관측 지지율
      • 만들어진 규칙의 유용성을 밝히는데 사용됨
      $lift(A, B) = P(A, B) / P(A)P(B)$
      • lift 값이 1인 경우, 선행사건인 X와 결과인 Y가 독립임을 나타냄
      • lift 값이 1보다 큰 경우, 두 사건의 종속의 정도를 나타냄
      • lift 값이 1보다 작은 경우, 그 상품들이 서로를 대체할 수 있음을 나타냄
  • How to find rules?
    • how to generate an effective association rules?
      • 이상적인 방법은 가능한 모든 조합의 상품들을 만들고 어떤 규칙이 효과있는지 알아보는 것임
      • 상품들의 수가 늘어날수록 계산시간도 기하급수적으로 증가함
    • brute-force approach
      • 가능한 관련된 규칙을 모두 리스트화
      • 각 규칙별로 support와 confidence를 계산
      • 최소 support 값과 최소 confidence 값의 경계에 도달하지 못한 규칙들을 제거
      • 컴퓨터로 연산 X
  • a priori al

Clustering

  • 클러스터링은 익명화 작업에도 사용
  • partitioning clustering 유형
    • centroid-based
      • k-means
        • initial centroid에 따라 local optimum에 빠질 수 있기 때문에 initial centroid의 값이 중요함
        • distance만 기반으로 하기 때문에 제대로 분류되지 않는 경우가 있음
        • cluster에 둔다: 클러스터 멤버십을 둔다
    • density-based
    • graph-based
    • model-based
반응형

'2022 > 파이썬을이용한데이터사이언스' 카테고리의 다른 글

[파이데사] ML 2  (0) 2023.04.26