教師あり学習と教師なし学習

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-26 04:10:10954ブラウズ

Supervised vs. Unsupervised Learning

Machine Learning(ML)は、コンピューターがデータから学習し、予測または決定を下すことができる強力なツールです。しかし、すべての機械学習が同じようなタイプの学習であるわけではなく、各学習は特定のタスクに適しています。最も一般的な2つのタイプは、監督と学習

および監視されていない学習です。この記事では、それらの違いを調査し、現実世界の例を提供し、徐々にコードクリップを紹介して、それらの作業原則を理解するのに役立ちます。

監督学習とは何ですか?

監督と学習は、アルゴリズムがマークデータから学習される一種の機械学習です。言い換えれば、モデルに提供するデータには、入力機能と正しい出力(ラベル)が含まれます。目標は、モデルが入力と出力の関係を学習できるようにして、新しいデータで正確に予測できるようにすることです。

監督学習の現実世界の例

電子メールスパム検出:

入力:電子メールテキスト。

    出力:電子メールが「スパム」であるか、「非スパム」のラベルであるかを指示しました。
  • モデル学習は、サンプルに基づいた電子メールで分類されます。
  • 住宅価格の予測:

入力:家の特徴(たとえば、平方フィート、寝室の数、場所)。

出力:家の価格。
  • モデル学習は、履歴データ予測価格に基づいています。
  • 医学診断:

入力:患者データ(たとえば、症状、テスト結果)。 出力:診断(たとえば、「健康」または「糖尿病」)。

    モデル学習は、マークされた医療記録に従って診断されます。
  • 監視されていない学習とは何ですか?
  • 監視されていない学習は、アルゴリズムがデータでマークされたことがない一種の機械学習です。監督学習とは異なり、正しい出力は提供されていません。それどころか、モデルはデータ内のモデル、構造、または関係を見つけようとします。

監督なしの現実世界の例

カスタマーサブディビジョン:

入力:顧客データ(たとえば、年齢、購入履歴、場所)。

output:同様の顧客のグループ(たとえば、「高周波購入者」と「予算買い物客」)。 同様の動作を持つモデル認識カスタマークラスター。

  • 異常検出:
  • 入力:ネットワークトラフィックデータ。
出力:識別は、ネットワーク攻撃の異常モードを示す場合があります。

モデル検出データの異常な値または異常。

    マーケットバスケット分析:
    • 入力:食料品店の取引データ。
    • 出力:製品グループは、しばしば一緒に購入しました(「パンとバター」など)。
    • モデル認識製品間の関連。

    監督学習と教師なし学習の主な違い

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

    いくつかのコードを詳細に研究し、実際に監督学習と監視されていない学習の作業方法を見てみましょう。 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>

監督と学習、監視なしの学習を使用する

監督と研究を使用する時期:

    マークされたデータがあります。
  • 結果を予測するか、データを分類する必要があります。
  • 例:販売を予測し、画像の詐欺を分類し、検出します。
監視されていない学習を使用する時期:

    署名されていないデータがあります。
  • 隠しモードまたは構造を見つけたいです。
  • 例:顧客向けのグループ化、データの寸法の削減、異常の検出。

結論

監督学習と教師のない学習は、機械学習における2つの基本的な方法です。監督学習は、タグデータを持っている場合、予測に非常に適しており、監視されていないデータのモードを探索して発見したい場合は、監視されていない学習が優れています。

違いを理解し、現実の世界(この記事の例など)の例を練習することにより、これらの基本的な機械学習技術を習得します。ご質問がある場合、または自分の経験を共有したい場合は、いつでもメッセージを残してください。

以上が教師あり学習と教師なし学習の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。