25.05.19 코딩 공부 시작

코딩 척척석박사 분들 피드백 환영합니다.

공대생이 코딩에서 살아남기

특강/머신러닝

[머신러닝] 1회차 (06.24)

코딩 아가 2025. 6. 24. 17:10

머신러닝이란?

기계(컴퓨터)가 학습을 할 수 있도록 하는 연구분야

  • 작업(T): 제품 결함 탐지, 생산 공정 모니터링, 품질 평가 등
  • 성능 지표(P): 정확도, 정밀도, 재현율 등
  • 경험(E): 수집된 생산 데이터, 검사 기록, 공정 센서 데이터 등
  • 경험(E) > 이상 탐지 분류 모델(T) 실행 > 정확도(성능 지표P)확인 > 정확도 향상 업데이트

AI > 머신러닝 > 딥 러닝

빅데이터 특징 (5V)

1. Volume (방대한 데이터 양)

  • 머신러닝: 많은 데이터를 활용해 패턴을 학습하고 예측

2. Variety (데이터 다양성)

  • 머신러닝: 다양한 데이터를 처리하고 분석

3. Velocity (데이터 속도)

  • 머신러닝: 빠른 속도로 데이터를 처리하고 실시간으로 의사결정

4. Veracity (데이터 진실성)

  • 데이터의 불확실성과 부정확성(오류 포함 가능성)
  • 머신러닝: 데이터의 노이즈와 오류를 처리, 신뢰성 있는 결과를 도출

5. Value (데이터 가치)

  • 데이터를 통해 유용한 정보를 추출하여 비즈니스나 연구 문제를 해결
  • 머신러닝: 데이터를 분석해 예측, 분류, 군집화 등을 통해 가치를 창출

통계학: 표본에서 모집단 특성 추론

머신 러닝: 수집된 데이터를 활용해 예측과 일반화 성능 향상

제조업에서 머신러닝

1. 품질 데이터의 자동 분석

2. 공정 이상 탐지 및 예측

3. 결함률 감소와 생산성 향상

머신러닝 학습 종류

1. 지도학습 (Supervised Learning)

정답이 있는 데이터를 활용해 데이터 학습(입력값(X)에 대한 Label(Y)를 주어 학습)

데이터 정확도 측정

  • 분류(Classification): 카테고리 분류
    • 이진 분류: 데이터가 두 개의 카테고리에 분류
    • 다중 분류: 데이터가 세 개 이상의 카테고리에 분류
    • 다중 레이블 분류: 하나의 데이터가 여러 개의 카테고리를 가진 경
  • 회귀(Regression): 숫자 값 예측
    • 선형 회귀: 선형적(직선), 간단, 직관적
    • 다항 회귀: 비선형적 모델링
    • 릿지 회귀(라쏘 회귀)
    • 서포트 벡터 회귀
    • 결정 트리 회귀(랜덤 포레스트 회귀)
    • 딥러닝 기반 회귀

2. 비지도 학습 (Unsupervised Learning)

데이터의 패턴이나 구조를 학습

데이터 간 유사성 차이 측정

  • 클러스터링: 데이터를 유사한 그룹으로 묶는 작업
  • 차원축소: 데이터를 더 간결하고 중요한 특징만 남기는 작업
  • 연관 규칙 학습: 데이터 간 상관관계 발견하는 작업

3. 강화 학습 (Reinforcement Learning)

Scikit-learn 라이브러리 = sklearn

기능
설명
지도 학습
분류, 회귀 등 (예: 로지스틱 회귀, 랜덤 포레스트)
비지도 학습
클러스터링, 차원 축소 (예: K-Means, PCA)
전처리
스케일링, 인코딩, 결측치 처리
모델 평가
정확도, 혼동행렬, 교차검증
데이터 분할
학습/검증 데이터 나누기

자주 사용하는 모듈

#pip install scikit-learn
import sklearn
#도구가 나눠져 있어서 직접 찾아야함
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.linear_model import LogisticRegression
from sklearn.naive_bayes import GaussianNB
from sklearn import svm
from sklearn import tree
from sklearn.ensemble import RandomForestClassifier

머신러닝 모델링

1. 문제 정의

해결하고 싶은 문제가 무엇인지 확실하게 정의

2. 데이터 전처리

  • 데이터 수집
  • 데이터 클리닝: 타입 확인, 결측치/이상치 처리, 정규화
  • 피쳐 엔지니어링: 변수 선택 및 생성(도메인 지식, EDA 상관관계 분)
  • 데이터 분할: Train/Validation/Test 데이터로 구분(Train : Test = 6 : 4, 시계열 데이터는 특정 시점 기준)

3. 모델링

  1. 모델 선택 및 생성
    • 도 학습 - 분류 및 회귀(예측)
      • 선형 회귀 (예측)
      • 로지스틱 회귀 (분류)
      • 랜덤 포레스트 (분류, 예측)
      • 서포트 벡터 머신 (분류, 예측)
      • 다층 퍼셉트론 (분류, 예측)
    • 비지도학습 - 군집 분석
      • 주성분 분석(PCA)
      • 계층적 군집화
      • K-means
      • DBSCAN
  2. 모델 학습
  3. 모델을 이용하여 예측
  4. 성능 평가
    • 분류 모델
      • 정확도(Accuracy)
      • 정밀도(Precision)
      • 재현율(Recall)
    • 회귀 모델
      • MSE(Mean Squared Error)
      • RMSE(Root Mean Squared Error)
      • MAE(Mean Absolute Error)
  5. 성능 올리기: 하이퍼파라미터 값 변경하며 반복
    • 하이퍼파라미터: 모델 학습 전 사용자가 직접 값을 설정해야하는 변수
    1.