01. 머신러닝 개요

머신러닝의 개념, 종류, 과정

by 짧은 수필

머신러닝이란?

머신러닝(Machine Learning)은 데이터를 기반으로,

컴퓨터가 스스로 학습하여 패턴을 찾아내고 예측을 수행하는 인공지능(AI)의 한 분야입니다.

인간이 명시적으로 프로그래밍하지 않아도,

데이터를 통해 학습하고 문제를 해결할 수 있도록 설계된 기술입니다.




인공지능과의 관계

인공지능(AI): 인간의 지능을 모방하는 기술 전반
- 약한 인공지능(ANI): 특정 작업에 특화 (예: 체스, 자율주행, 번역 시스템, 알파고)
- 강한 인공지능(AGI): 인간 수준의 범용적 지능 (사고, 계획, 문제 해결 등)


머신러닝: AI의 하위 분야로, 데이터를 학습하여 예측 모델을 만듦


딥러닝: 머신러닝의 하위 분야로, 신경망을 활용해 복잡한 패턴 학습




머신러닝과 딥러닝의 차이

머신러닝: 특성 추출(Feature Extraction)과 분류(Classification)를 별도로 수행


딥러닝: 특성 추출과 분류를 통합적으로 수행 (End-to-End 학습)




머신러닝의 역사

1950년, 튜링 테스트: 앨런 튜링이 기계의 지능을 평가하는 실험 제안


2017년, Beneficial AI 컨퍼런스: AI의 윤리적 위험성 논의


불확실한 골짜기: 로봇이 인간과 비슷해질수록 호감도가 감소하는 현상




머신러닝의 종류

머신러닝은 학습 방식에 따라 세 가지로 나뉩니다:

지도학습 (Supervised Learning)
- 정의: 레이블(정답)이 있는 데이터를 학습해 예측 모델을 만듦
- 유형:
- 분류(Classification): 범주형 출력 예측 (예: 스팸 메일 분류, 암 진단)
- 회귀(Regression): 연속형 출력 예측 (예: 집 가격 예측)
- 예시: 붓꽃(iris) 품종 분류, 다음 학기 성적 예측


비지도학습 (Unsupervised Learning)
- 정의: 레이블 없는 데이터에서 숨겨진 패턴이나 구조를 찾음
- 유형:
- 클러스터링(Clustering): 비슷한 데이터 그룹화
- 차원축소(Dimensionality Reduction): 데이터의 차원 축소
- 예시: 고객 세분화, 데이터 시각화


강화학습 (Reinforcement Learning)
- 정의: 정답 없이 보상을 최대화하도록 행동을 학습
- 특징: 게임, 로봇 제어 등에서 사용
- 예시: 알파고, 자율주행 로봇




머신러닝 과정

머신러닝 프로젝트는 다음 단계를 거칩니다:

문제 정의 (Problem Identification): 해결하고자 하는 문제를 명확히 설정
- 예: 다음 학기 성적 예측 (필요 특성: 직전 학기 성적, 출석률, 잠자는 시간 등)


데이터 수집 (Data Collection):
- 출처: CSV, 데이터베이스, 웹 크롤링, IoT 센서, 설문조사 등


데이터 전처리 (Data Preprocessing):
- 결측치 및 이상치 처리
- 특성 공학 (Feature Engineering):
- 스케일링(Scaling): 단위 변환
- 인코딩(Encoding): 범주형 → 수치형
- 비닝(Binning): 수치형 → 범주형
- 변환(Transform): 새로운 특성 추출


탐색적 데이터 분석 (EDA): 데이터의 패턴과 분포 파악


모델 선택 및 하이퍼파라미터 조정:
- 모델: KNN, SVM, Linear Regression, Random Forest, CNN, RNN 등
- 하이퍼파라미터: 모델 성능 최적화를 위해 사람이 설정하는 값


모델 학습 (Training):
- 학습 데이터(70%)와 테스트 데이터(30%)로 분리
- model.fit(X_train, y_train)로 학습 수행


평가 (Evaluation):
- 분류 평가 지표: 정확도(Accuracy), 재현율(Recall), 정밀도(Precision), F1 Score, ROC-AUC
- 회귀 평가 지표: 평균제곱오차(MSE), 평균절대오차(MAE) 등




머신러닝 도구

Scikit-learn: 파이썬 기반 머신러닝 프레임워크
- 기능: 회귀, 분류, 군집, 차원 축소, 특성 공학, 교차 검증, 파이프라인 등
- 샘플 데이터 제공: iris, digits 등




결론

머신러닝은 데이터를 통해 컴퓨터가 학습하고 예측하는 강력한 도구입니다.

지도학습, 비지도학습, 강화학습으로 나뉘며,

문제 정의부터 평가까지 체계적인 과정을 거칩니다.

이를 통해 스팸 메일 분류, 집 가격 예측, 자율주행 등 다양한 문제를 해결할 수 있습니다.


keyword