機械学習モデルの品質評価

Machine LearningMachine LearningBeginner
今すぐ練習

This tutorial is from open-source community. Access the source code

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

機械学習においては、モデルによって行われる予測の品質を評価することが重要です。これにより、モデルがどの程度機能しているか、正確な予測を行うために信頼できるかを理解することができます。scikit - learnライブラリは、予測の品質を定量化するためのいくつかの指標と評価方法を提供しています。

この実験では、scikit - learnによって提供される3つの異なるAPIを用いてモデル評価を行います。Estimatorスコアメソッド、評価パラメータ、およびメトリック関数です。

VMのヒント

VMの起動が完了したら、左上隅をクリックしてノートブックタブに切り替え、Jupyter Notebookを使って練習しましょう。

時々、Jupyter Notebookが読み込み終了するまで数秒待つ必要があります。Jupyter Notebookの制限により、操作の検証は自動化できません。

学習中に問題に遭遇した場合は、Labbyにお問い合わせください。セッション終了後にフィードバックを提供してください。すぐに問題を解決いたします。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL sklearn(("Sklearn")) -.-> sklearn/CoreModelsandAlgorithmsGroup(["Core Models and Algorithms"]) sklearn(("Sklearn")) -.-> sklearn/ModelSelectionandEvaluationGroup(["Model Selection and Evaluation"]) sklearn(("Sklearn")) -.-> sklearn/UtilitiesandDatasetsGroup(["Utilities and Datasets"]) ml(("Machine Learning")) -.-> ml/FrameworkandSoftwareGroup(["Framework and Software"]) sklearn/CoreModelsandAlgorithmsGroup -.-> sklearn/linear_model("Linear Models") sklearn/ModelSelectionandEvaluationGroup -.-> sklearn/model_selection("Model Selection") sklearn/ModelSelectionandEvaluationGroup -.-> sklearn/metrics("Metrics") sklearn/UtilitiesandDatasetsGroup -.-> sklearn/datasets("Datasets") ml/FrameworkandSoftwareGroup -.-> ml/sklearn("scikit-learn") subgraph Lab Skills sklearn/linear_model -.-> lab-71124{{"機械学習モデルの品質評価"}} sklearn/model_selection -.-> lab-71124{{"機械学習モデルの品質評価"}} sklearn/metrics -.-> lab-71124{{"機械学習モデルの品質評価"}} sklearn/datasets -.-> lab-71124{{"機械学習モデルの品質評価"}} ml/sklearn -.-> lab-71124{{"機械学習モデルの品質評価"}} end

Estimatorスコアメソッド

Estimatorスコアメソッドは、scikit - learnによって各Estimatorに対して提供される既定の評価基準です。これは、モデルの予測の品質を表すスコアを計算します。各Estimatorのドキュメントでこれに関する詳細を見つけることができます。

以下は、Estimatorに対してscoreメソッドを使用する例です。

from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_digits

X, y = load_digits(return_X_y=True)
clf = LogisticRegression()
clf.fit(X, y)

score = clf.score(X, y)
print("Score:", score)

評価パラメータ

scikit - learnは、交差検証やグリッドサーチなどのいくつかのモデル評価ツールにscoringパラメータを提供しています。scoringパラメータは、評価中にEstimatorに適用されるメトリックを制御します。

以下は、交差検証でscoringパラメータを使用する例です。

from sklearn.model_selection import cross_val_score
from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_digits

X, y = load_digits(return_X_y=True)
clf = LogisticRegression()

scores = cross_val_score(clf, X, y, cv=5, scoring='accuracy')
print("Scores:", scores)

メトリック関数

scikit - learnのmetricsモジュールは、特定の目的で予測誤差を評価するためのいくつかの関数を実装しています。これらの関数は、モデルによって行われる予測の品質を計算するために使用できます。

以下は、metricsモジュールのaccuracy_score関数を使用する例です。

from sklearn.metrics import accuracy_score
from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_digits
from sklearn.model_selection import train_test_split

X, y = load_digits(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)

clf = LogisticRegression()
clf.fit(X_train, y_train)

y_pred = clf.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)

まとめ

この実験では、scikit - learnによって提供される3つの異なるAPIについて学びました。Estimatorスコアメソッド、評価パラメータ、およびメトリック関数です。これらのAPIを使うことで、モデルによって行われる予測の品質を評価し、モデルがどの程度機能しているかを理解することができます。