TIL

내일배움캠프 본캠프 17일차 - 머신러닝 특강

수현조 2024. 12. 17. 20:50

데이터의 종류 및 활용

1. 데이터 종류

  1. 정형 데이터
    • 정의: 형태와 구조가 명확하게 정의된 데이터
    • 예시: 엑셀, 데이터베이스(SQL) 등
  2. 반정형 데이터
    • 정의: 구조는 있지만 일정하지 않은 데이터
    • 예시: HTML, JSON, CSV
  3. 비정형 데이터
    • 정의: 구조화되지 않은 자유로운 형태의 데이터
    • 예시: 블로그 글, SNS 게시글, 이미지, 비디오

2. 데이터 활용 방법

데이터 전처리의 중요성

데이터 전처리는 데이터를 분석하기 위해 반드시 필요한 과정이며, 재료 손질에 비유될 수 있음.

1) 데이터 정제 (재료 손질)

  • 결측값 처리:
    • 데이터에 비어 있는 값 제거/대체
    • 비유: 감자의 썩은 부분 제거
  • 이상치 제거:
    • 너무 크거나 작은 값 제외
    • 비유: 너무 큰 감자나 작은 감자는 제외

2) 데이터 변환 (재료 다듬기)

  • 포맷 형식 변환:
    • 날짜, 시간 등 데이터를 일관된 형식으로 변환
    • 예시: 날짜 형식 (241216 → 2024.12.16)
  • 범주형 데이터 변환:
    • 언어 또는 카테고리를 변환
    • 비유: 프랑스 요리 레시피를 한국어로 번역

3) 데이터 표준화 및 정규화 (재료 크기 맞추기)

  • 데이터 표준화:
    • 데이터의 크기를 평균 0, 분산 1로 맞추어 처리
    • 비유: 감자, 당근, 양파를 크기 비슷하게 썰어 요리 준비
  • 데이터 정규화:
    • 데이터의 범위를 0~1 사이로 스케일링

3. 넷플릭스 사례를 통한 데이터 활용

  1. DVD 대여 서비스 시대
    • 고객의 대여 기록 데이터를 수집
  2. 첫 번째 추천 시스템
    • 활용 데이터: 대여 기록과 평점 데이터
    • 목적: 비슷한 취향의 고객이 좋아하는 영화를 추천
  3. 스트리밍 시대 전환
    • 고객의 세밀한 행동 데이터 수집:
      • 언제 시청하는가?
      • 무엇을 시청하는가?
      • 얼마나 시청하는가?
  4. 개인화 추천 시스템 고도화
    • 머신러닝 알고리즘 도입
    • 효과: 고객별 맞춤 콘텐츠 추천 → 고객 만족도 상승 → 넷플릭스 글로벌 성장
  5. 콘텐츠 제작에 데이터 활용
    • 사람들이 선호하는 콘텐츠 유형 분석
    • 이를 기반으로 투자 → 제작 → 수익 확신

4. 과거와 현재의 데이터 활용

과거의 데이터 활용

  • 방식: 통계와 수학적 기법 중심
  • 목적: 가설 검증
    • 예시: 특정 약물의 효과 검증 - 임상실험

현재의 데이터 활용

  • 방식: 패턴 발견 및 가설 생성
  • 목적: 데이터에서 숨겨진 패턴이나 관계를 발견
    • 예시:
      • 특정 고객이 목요일에 주로 쇼핑 → 목요일에 할인 쿠폰 발송
      • 앱 사용 시간 분석 → 최적의 시간대에 알림 메시지 발송

데이터 분석 비유

  • 과거: 데이터는 지도와 나침반
  • 현재: 데이터는 금속 탐지기 (숨겨진 패턴을 찾아냄)

머신러닝

머신러닝 기본 개념

  • 가설식
    • H: 가설
    • X: 변수 (현상을 설명하는 요소)
    • W: 가중치 (각 변수의 중요도를 나타냄)
    • B: 데이터의 편향을 나타냄 (어떻게 치우쳐 있는지를 표현)
  • 핵심: 가중치 조합을 최적화해 정답에 가까워지도록 학습

머신러닝의 주요 종류

1. 지도학습

정의: 답(Label)이 있는 데이터를 학습하여 예측 모델을 생성
활용 사례:

  • 이중 분류: 스팸 메일 여부 (1: 스팸, 0: 정상)
  • 다중 분류:
    • 고양이, 강아지, 사자 중 하나 판별
    • Softmax 함수를 사용하여 확률 정규화

2. 비지도학습

정의: 정답(Label)이 없는 데이터에서 스스로 패턴을 학습
활용 사례:

  • 군집화 (Clustering): 비슷한 그룹끼리 묶기 (예: 상어파, 토끼파)
  • 한계: 정확도가 떨어질 수 있음

3. 강화학습

정의: 보상과 벌점 시스템을 통해 최적의 행동을 학습
비유: 강아지 훈련 (잘하면 간식, 못하면 벌점)

활용 사례:

  • 알파고
  • 자율주행 시스템

특징:

  • 학습 시간이 오래 걸림
  • 보상 설정이 애매할 수 있음

다항 선형 회귀다항 로지스틱 회귀는 모두 지도학습에서 사용되는 알고리즘이지만, 목적과 결과값의 형태가 다릅니다. 이 둘을 비교하며 자세히 정리해드리겠습니다.


1. 다항 선형 회귀 (Polynomial Linear Regression)

정의

  • 다항식 형태를 사용하여 **수치 값(연속형 데이터)**을 예측하는 회귀 기법
  • 선형 회귀의 확장된 버전으로, 직선(1차원)이 아닌 곡선(다항식 형태)을 통해 데이터를 모델링합니다.

수식

  • 기본 선형 회귀식: y=w0+w1xy = w_0 + w_1x
  • 다항 선형 회귀식: y=w0+w1x+w2x2+⋯+wnxny = w_0 + w_1x + w_2x^2 + \cdots + w_nx^n
    • n: 다항식의 차수 (차수가 클수록 더 복잡한 곡선을 모델링)

활용 사례

  • 날씨 예측: 온도, 습도, 바람세기를 기반으로 기온 예측
  • 집값 예측: 위치, 면적 등 다양한 특성으로 가격 예측
  • 곡선 데이터: 실험 결과가 곡선 형태로 나타날 때 유용

특징

  • 결과값은 연속적인 수치(예: 온도, 가격, 거리)
  • 과적합 위험: 차수가 너무 높으면 학습 데이터에 과적합될 수 있음

2. 다항 로지스틱 회귀 (Multinomial Logistic Regression)

정의

  • 확률 기반으로 여러 범주형 클래스 중 하나를 예측하는 회귀 기법
  • 다중 분류 문제를 해결하기 위해 사용되며, Softmax 함수를 통해 각 클래스의 확률을 계산합니다.

수식

  • Softmax 함수: Softmax(yi)=exp⁡(yi)∑j=1nexp⁡(yj)\text{Softmax}(y_i) = \frac{\exp(y_i)}{\sum_{j=1}^{n} \exp(y_j)}
    • yiy_i: 특정 클래스에 속할 확률
    • exp⁡\exp: 지수 함수

활용 사례

  • 이미지 분류: 고양이, 강아지, 사자 중 하나 예측
  • 텍스트 분류: 뉴스 기사를 스포츠, 경제, 정치로 분류
  • 음악 장르 분류: 재즈, 힙합, 클래식

특징

  • 결과값은 각 클래스에 속할 확률이며, 확률의 합이 1이 되도록 정규화
  • 클래스 수가 늘어나면 모델의 복잡도가 증가

다항 선형 회귀와 다항 로지스틱 회귀 비교

구분 다항 선형 회귀 다항 로지스틱 회귀
정의 다항식을 이용한 수치 예측 다중 분류 문제를 해결하는 회귀 기법
결과값 연속적인 수치 (예: 25도, 300만 원) 확률 기반 범주 예측 (클래스 중 하나)
활용 사례 집값 예측, 곡선 형태 데이터 예측 고양이/강아지/사자 이미지 분류
알고리즘 특징 과적합 위험 → 정규화 필요 Softmax 함수로 확률 정규화
목적 수치 값 예측 여러 클래스 중 하나 예측

핵심 요약

  1. 다항 선형 회귀
    • 다항식을 사용해 연속된 수치 값을 예측
    • 데이터가 곡선 형태일 때 적합
  2. 다항 로지스틱 회귀
    • 확률 기반으로 여러 클래스 중 하나를 예측
    • Softmax 함수를 활용해 확률을 정규화

머신러닝 핵심 개념 요약

  1. 선형 회귀
    • 데이터를 선형식으로 표현
    • 활용: 날씨 예측, 집값 예측
  2. 경사 하강법
    • 가중치 값을 조정해 오차를 최소화하는 핵심 알고리즘
  3. 이중 분류 vs 다중 분류
    • 이중 분류: 두 가지 결과 중 하나 예측 (스팸 여부)
    • 다중 분류: 여러 클래스 중 하나를 예측 (예: 음악 장르)
  4. 다항 회귀
    • 선형 회귀: 수치 기반 예측
    • 로지스틱 회귀: 확률 기반 예측

정리된 비유

  • 지도학습: 문제집의 정답을 보고 공부
  • 비지도학습: 스스로 패턴을 발견
  • 강화학습: 보상과 벌점을 통해 반복 학습

 

 

지도학습, 비지도학습, 강화학습은 머신러닝의 학습 유형이며,
회귀와 분류는 머신러닝 문제를 해결하는 문제 유형입니다.

즉, 학습 유형문제 유형은 별개이지만 상호 연관되어 있습니다.
각각의 관계를 명확하게 설명해드릴게요.


1. 지도학습과 회귀/분류

지도학습은 **정답(Label)**이 있는 데이터를 기반으로 모델을 학습시키는 방식입니다.
지도학습 내에서는 문제 유형에 따라 회귀분류로 나뉩니다.

1) 회귀 (Regression)

  • 정의: 입력 데이터를 기반으로 연속된 수치 값을 예측
  • 활용 사례:
    • 집값 예측: 면적, 위치 등을 기반으로 가격 예측
    • 날씨 예측: 온도, 습도, 바람 세기를 기반으로 기온 예측
  • 특징:
    • 결과값이 연속적인 숫자 (예: 25도, 300만 원)

2) 분류 (Classification)

  • 정의: 입력 데이터를 기반으로 범주형 값을 예측
  • 이중 분류: 두 가지 중 하나를 예측 (예: 스팸 메일 여부)
  • 다중 분류: 여러 클래스 중 하나를 예측 (예: 강아지, 고양이, 사자)
  • 특징:
    • 결과값이 범주형(클래스) (예: 0 또는 1, '고양이' 또는 '강아지')

2. 비지도학습과 회귀/분류

비지도학습은 정답(Label)이 없는 데이터를 학습하는 방식입니다.
회귀분류는 비지도학습에 직접적으로 적용되지는 않지만, 데이터 탐색을 위해 쓰일 수 있습니다.

비지도학습 주요 기법

  1. 군집화 (Clustering)
    • 비슷한 데이터를 그룹으로 묶음
    • 활용 예시: 고객을 그룹화 (고객 세분화)
  2. 차원 축소 (Dimensionality Reduction)
    • 데이터의 복잡도를 줄이고 중요한 특성을 추출

관계: 비지도학습에서는 정답이 없기 때문에 회귀분류와 같은 명확한 문제 유형 대신, 데이터 간의 관계와 패턴을 찾는 데 집중합니다.


3. 강화학습과 회귀/분류

강화학습은 보상(Reward)과 벌점(Penalty)을 통해 최적의 행동을 학습합니다.
여기서 회귀나 분류는 직접적인 학습 목표가 아닙니다.

  • 강화학습의 목표는 수치 값 예측(회귀)이나 클래스 분류(분류)가 아니라,
    **가장 적절한 행동(Action)**을 찾아내는 것입니다.

강화학습과 회귀/분류의 간접 관계

  • 강화학습에서 보상 함수를 예측하는 과정이 회귀 문제와 유사할 수 있음
  • 예를 들어, 어떤 행동이 얼마나 높은 보상을 가져올지를 예측하기 위해 수치 값을 학습

정리: 학습 유형과 문제 유형의 관계

학습 유형 적용되는 문제 유형 예시
지도학습 회귀 (Regression) 집값 예측, 날씨 예측
  분류 (Classification) 스팸 메일 여부, 이미지 분류
비지도학습 군집화, 차원 축소 고객 그룹화, 패턴 탐색
강화학습 행동 최적화 자율주행, 게임 AI (알파고)

핵심 정리

  • 지도학습에서는 회귀분류 문제를 해결
  • 비지도학습에서는 회귀/분류 대신 군집화차원 축소를 활용
  • 강화학습은 보상 기반의 최적화 문제를 해결하며, 회귀와 분류는 간접적으로 사용될 수 있음