>백엔드 개발 >파이썬 튜토리얼 >감독과 감독되지 않은 학습

감독과 감독되지 않은 학습

Linda Hamilton
Linda Hamilton원래의
2025-01-26 04:10:10953검색

Supervised vs. Unsupervised Learning

머신러닝(ML)은 컴퓨터가 데이터로부터 학습하고 예측이나 결정을 내릴 수 있게 해주는 강력한 도구입니다. 그러나 모든 기계 학습이 동일한 것은 아닙니다. 다양한 유형의 학습이 있으며 각각 특정 작업에 적합합니다. 가장 일반적인 두 가지 유형은 지도 학습비지도 학습입니다. 이 기사에서는 이들 간의 차이점을 살펴보고, 실제 사례를 제공하고, 코드 조각을 살펴보며 작동 방식을 이해하는 데 도움을 드립니다.


지도 학습이란 무엇인가요?

지도 학습은 알고리즘이 레이블이 지정된 데이터로부터 학습하는 일종의 기계 학습입니다. 즉, 모델에 제공하는 데이터에는 입력 기능과 올바른 출력(레이블)이 포함됩니다. 목표는 모델이 입력과 출력 사이의 관계를 학습하여 보이지 않는 새로운 데이터에 대해 정확한 예측을 할 수 있도록 하는 것입니다.

지도 학습의 실제 사례

이메일 스팸 감지:

  • 입력: 이메일 텍스트.
  • 출력: 이메일이 "스팸"인지 "스팸 아님"인지 나타내는 라벨입니다.
  • 모델은 라벨이 지정된 예를 기반으로 이메일을 분류하는 방법을 학습합니다.

집값 전망:

  • 입력: 집의 특성(예: 면적, 침실 수, 위치)
  • 출력: 집값.
  • 모델은 과거 데이터를 기반으로 가격을 예측하는 방법을 학습합니다.

의학적 진단:

  • 입력: 환자 데이터(예: 증상, 실험실 결과)
  • 출력: 진단(예: "건강" 또는 "당뇨병")
  • 모델은 라벨링된 의료 기록을 기반으로 진단하는 방법을 학습합니다.

비지도 학습이란 무엇인가요?

비지도 학습은 알고리즘이 레이블이 지정되지 않은 데이터로부터 학습하는 일종의 기계 학습입니다. 지도 학습과 달리 올바른 출력이 제공되지 않습니다. 대신 모델은 스스로 데이터에서 패턴, 구조 또는 관계를 찾으려고 노력합니다.

비지도 학습의 실제 사례

고객 세분화:

  • 입력: 고객 데이터(예: 연령, 구매 내역, 위치)
  • 출력: 유사 고객 그룹(예: '고빈도 구매자', '예산 쇼핑객')
  • 이 모델은 유사한 행동을 보이는 고객 집단을 식별합니다.

이상 탐지:

  • 입력: 네트워크 트래픽 데이터.
  • 출력: 사이버 공격을 나타낼 수 있는 비정상적인 패턴을 식별합니다.
  • 모델은 데이터에서 이상값이나 이상치를 감지합니다.

장바구니 분석:

  • 입력: 식료품점 거래 데이터.
  • 출력: 자주 함께 구매되는 제품 그룹(예: '빵과 버터')
  • 모델은 제품 간의 연관성을 식별합니다.

지도 학습과 비지도 학습의 주요 차이점

**方面** **监督学习** **无监督学习**
**数据** 标记的(提供输入和输出) 未标记的(仅提供输入)
**目标** 预测结果或对数据进行分类 发现数据中的模式或结构
**示例** 分类、回归 聚类、降维
**复杂性** 更容易评估(已知输出) 更难评估(没有基本事实)
**用例** 垃圾邮件检测、价格预测 客户细分、异常检测
---

코드 예시

몇 가지 코드를 자세히 살펴보고 지도 학습과 비지도 학습이 실제로 어떻게 작동하는지 살펴보겠습니다. 우리는 Python과 인기있는 Scikit-learn 라이브러리를 사용할 것입니다.

지도 학습 예시: 주택 가격 예측

간단한 선형 회귀 모델을 사용하여 면적과 같은 특성을 기반으로 주택 가격을 예측하겠습니다.

<code class="language-python"># 导入库
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error

# 创建样本数据集
data = {
    'SquareFootage': [1400, 1600, 1700, 1875, 1100, 1550, 2350, 2450, 1425, 1700],
    'Price': [245000, 312000, 279000, 308000, 199000, 219000, 405000, 324000, 319000, 255000]
}
df = pd.DataFrame(data)

# 特征 (X) 和标签 (y)
X = df[['SquareFootage']]
y = df['Price']

# 将数据分成训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 训练线性回归模型
model = LinearRegression()
model.fit(X_train, y_train)

# 做出预测
y_pred = model.predict(X_test)

# 评估模型
mse = mean_squared_error(y_test, y_pred)
print(f"均方误差:{mse:.2f}")</code>

비지도 학습의 예: 고객 세분화

K-평균 클러스터링 알고리즘을 사용하여 고객의 연령과 소비 습관을 기준으로 고객을 그룹화합니다.

<code class="language-python"># 导入库
import numpy as np
import pandas as pd
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt

# 创建样本数据集
data = {
    'Age': [25, 34, 22, 45, 32, 38, 41, 29, 35, 27],
    'SpendingScore': [30, 85, 20, 90, 50, 75, 80, 40, 60, 55]
}
df = pd.DataFrame(data)

# 特征 (X)
X = df[['Age', 'SpendingScore']]

# 训练 K 均值聚类模型
kmeans = KMeans(n_clusters=3, random_state=42)
df['Cluster'] = kmeans.fit_predict(X)

# 可视化集群
plt.scatter(df['Age'], df['SpendingScore'], c=df['Cluster'], cmap='viridis')
plt.xlabel('年龄')
plt.ylabel('消费评分')
plt.title('客户细分')
plt.show()</code>

지도 학습과 비지도 학습을 사용해야 하는 경우

지도 학습을 사용하는 경우:

  • 데이터에 라벨을 지정했습니다.
  • 결과를 예측하거나 데이터를 분류하고 싶습니다.
  • 예: 매출 예측, 이미지 분류, 사기 감지.

비지도 학습을 사용하는 경우:

  • 레이블이 지정되지 않은 데이터가 있습니다.
  • 숨겨진 패턴이나 구조를 발견하고 싶습니다.
  • 예: 고객을 그룹화하고, 데이터 차원을 줄이고, 이상 징후를 찾습니다.

결론

지도 학습과 비지도 학습은 머신러닝의 두 가지 기본 방법으로, 각각 고유한 장점과 사용 사례가 있습니다. 지도 학습은 레이블이 지정된 데이터가 있을 때 예측하는 데 적합하고, 비지도 학습은 레이블이 지정되지 않은 데이터에서 패턴을 탐색하고 발견하려는 경우에 적합합니다.

차이점을 이해하고 이 기사에 나온 것과 같은 실제 사례를 통해 연습함으로써 기본적인 기계 학습 기술을 익히게 됩니다. 질문이 있거나 자신의 경험을 공유하고 싶다면 아래에 댓글을 남겨주세요.

위 내용은 감독과 감독되지 않은 학습의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.