머신러닝의 기초: 지도학습 개념 및 예시 코드
Data Analyst

빅데이터 관련 자료/Machine Learning

머신러닝의 기초: 지도학습 개념 및 예시 코드

carpe08 2024. 1. 20. 16:52
320x100
320x100

지도 학습은 기계 학습에서 가장 기본이 되는 학습 방법 중 하나로, 입력 데이터와 해당 데이터에 대한 정답(레이블)을 사용하여 모델을 학습시키는 방식입니다. 지도 학습은 주로 분류(Classification)와 회귀(Regression) 문제를 해결하는 데 사용됩니다.

1. 분류 (Classification): 분류는 주어진 입력 데이터를 미리 정의된 클래스 중 하나로 분류하는 문제입니다. 간단한 예로는 이메일이 스팸인지 아닌지를 예측하는 것이 있습니다.

예시: 이메일 스팸 분류

  • 입력 데이터: 이메일의 텍스트 내용
  • 레이블: 스팸 또는 정상 이메일
from sklearn.model_selection import train_test_split
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.naive_bayes import MultinomialNB
from sklearn.metrics import accuracy_score

# 데이터 불러오기 및 전처리
X_train, X_test, y_train, y_test = train_test_split(email_texts, labels, test_size=0.2, random_state=42)

# 텍스트 데이터를 벡터화
vectorizer = CountVectorizer()
X_train_vec = vectorizer.fit_transform(X_train)
X_test_vec = vectorizer.transform(X_test)

# 분류 모델 학습
classifier = MultinomialNB()
classifier.fit(X_train_vec, y_train)

# 예측 및 평가
predictions = classifier.predict(X_test_vec)
accuracy = accuracy_score(y_test, predictions)
print(f"Accuracy: {accuracy}")

 

2. 회귀 (Regression): 회귀는 입력 데이터와 해당 데이터에 대한 연속적인 값을 예측하는 문제입니다. 주택 가격 예측이나 판매량 예측과 같은 문제가 회귀에 해당됩니다.

예시: 주택 가격 예측

  • 입력 데이터: 주택의 특징 (면적, 방의 수, 위치 등)
  • 레이블: 주택의 가격 (연속적인 값)
회귀 (Regression):
회귀는 입력 데이터와 해당 데이터에 대한 연속적인 값을 예측하는 문제입니다. 주택 가격 예측이나 판매량 예측과 같은 문제가 회귀에 해당됩니다.

예시: 주택 가격 예측

입력 데이터: 주택의 특징 (면적, 방의 수, 위치 등)
레이블: 주택의 가격 (연속적인 값)

 

지도 학습의 장점

  1. 높은 정확도:
    • 지도 학습은 정답(레이블)이 주어진 상태에서 모델을 학습하기 때문에 높은 정확도를 얻을 수 있습니다. 특히, 분류 문제에서는 정확한 클래스를 예측하는 데 강점이 있습니다.
  2. 다양한 응용 가능:
    • 분류, 회귀, 텍스트 분석, 이미지 인식 등 다양한 문제에 적용 가능합니다. 지도 학습은 다양한 유형의 데이터와 문제에 적응할 수 있는 강력한 도구입니다.
  3. 해석 가능성:
    • 일부 지도 학습 알고리즘은 모델의 예측 결과를 해석하기 쉽습니다. 특성의 중요도를 확인하거나 모델의 의사결정 과정을 설명할 수 있어 신뢰성이 높습니다.

단점:

  1. 라벨링된 데이터 필요:
    • 학습을 위해 라벨링된 데이터가 필요하다는 점은 큰 제약이 될 수 있습니다. 데이터 수집 및 라벨링 작업은 시간과 비용이 많이 소요될 수 있습니다.
  2. 과적합 가능성:
    • 모델이 훈련 데이터에 과도하게 적합되어 새로운 데이터에 대한 일반화 성능이 떨어질 수 있습니다. 이를 방지하기 위해 교차 검증과 같은 기술을 사용해야 합니다.
  3. 비선형 문제 다루기 어려움:
    • 일부 간단한 모델은 비선형 문제를 해결하기 어렵습니다. 이를 극복하기 위해 복잡한 모델이 필요할 때가 있습니다.

활용 사례:

  1. 의료 진단:
    • 환자 데이터를 이용하여 질병을 진단하고 예측하는 의료 분야에서 지도 학습이 많이 사용됩니다.
  2. 금융 예측:
    • 주가 예측, 신용 평가 등 금융 분야에서는 과거 데이터를 기반으로 한 예측이 필요하여 지도 학습이 적용됩니다.
  3. 자연어 처리:
    • 텍스트 분류, 감성 분석, 기계 번역 등 자연어 처리 분야에서 지도 학습은 효과적으로 활용됩니다.

 

지도 학습은 높은 정확도와 다양한 응용 가능성을 가지고 있지만, 데이터 라벨링의 어려움과 과적합 문제에 주의해야 합니다. 이를 잘 이해하고 적절한 상황에서 사용한다면, 지도 학습은 매우 강력한 도구로 작용할 것입니다.

320x100
320x100