Оценка качества модели машинного обучения

Machine LearningMachine LearningBeginner
Практиковаться сейчас

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

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В машинном обучении важно оценивать качество предсказаний, сделанных моделью. Это помогает понять, насколько хорошо модель работает, и можно ли доверять ей при making точных предсказаний. Библиотека scikit-learn предоставляет несколько метрик и методов оценки, чтобы количественно оценить качество предсказаний.

В этом лабе мы исследуем три различных API, предоставляемые scikit-learn для оценки модели: метод оценки Estimator, параметр scoring и функции метрик.

Советы по ВМ

После запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к 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 для каждого оценщика. Он вычисляет оценку, представляющую качество предсказаний модели. Вы можете найти дополнительную информацию об этом в документации по каждому оценщику.

Вот пример использования метода 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)

Параметр scoring

Scikit-learn предоставляет параметр scoring в нескольких инструментах оценки модели, таких как кросс-валидация и поиск по сетке. Параметр scoring контролирует метрику, применяемую к оценщикам в ходе оценки.

Вот пример использования параметра 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)

Функции метрик

Модуль metrics библиотеки scikit-learn реализует несколько функций для оценки ошибки предсказания для конкретных целей. Эти функции можно использовать для вычисления качества предсказаний, сделанных моделью.

Вот пример использования функции accuracy_score из модуля metrics:

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)

Резюме

В этом лабе мы узнали о трех различных API, предоставляемых scikit-learn для оценки модели: метод оценки Estimator, параметр scoring и функции метрик. Эти API позволяют нам оценить качество предсказаний, сделанных моделью, и понять, насколько хорошо модель работает.