Рубрики
Без рубрики

Напомним, в Python – метрика ошибки IMP, чтобы узнать!

Привет, народ! Приятно видеть вас все еще раз! 🙂 Сегодня мы будем сосредоточиться на важной метрике ошибок – вспомнить в Python. Начнем! Во-первых, что такое

Автор оригинала: Pankaj Kumar.

Привет, народ! Приятно видеть вас все еще раз! 🙂 Сегодня мы будем сосредоточиться на важной метрике ошибок – Напомним в Python Отказ

Начнем!

Во-первых, что такое ошибка метрики?

В области науки о науке и машине и машины, где мы должны реализовать модель для прогнозов и проблемных проблем, для нас очень важно понять влияние каждой модели или алгоритма на значениях данных.

Теперь возникает вопрос, как мы собираемся проверить влияние каждой модели на наши данные?

Это когда Метрики ошибок входит в картину. Метрики ошибок – это различные аспекты, через которые мы можем проверить точность и близость модели для значений данных.

Существуют различные метрики ошибок для регрессии, а также модели классификации. Некоторые из которых включают,

  • Точность
  • Муста
  • Отзывать
  • Точность
  • Путаница матрицы
  • F1 Оценка , так далее.

Сегодня мы будем сосредоточиться на вспомните в Python в качестве метрики ошибки!

Напомним в Python в качестве метрики ошибки!

« Напомним » – это Классификация ошибка метрики. Он оценивает результаты алгоритмов классификации, для которых целевое значение/ответ является категорией.

В основном, отзыв в Python определяет количество значений, которые правильно предсказывают и на самом деле правильно помечены. Этим, мы хотим сказать, он представляет процент значений, которые фактически были правильно маркированы и в настоящее время прогнозируются.

Давайте попробуем понять это с помощью примера! Рассмотрим переменную «полюс» со значениями «TRUE, FALSE». Теперь, работа по электронной почте Metric, чтобы узнать, насколько хорошо модель работает в приведенном ниже сценарии, которая, сколько значений, которые были помечены как истинные и фактически предсказаны как истинные образцы.

Итак, технически говоря, Напомним, что метрика ошибки, которая учитывает способность классифицировать правильно прогнозировать положительные маркированные образцы.

Напомним положительный/(истинный положительный + ложный отрицательный)

Давайте теперь реализуем концепцию отзыва с различными примерами в разделе ниже.

1. Напомним, с решением деревьев

Давайте начнем с импорта набора данных! Мы использовали набор данных прогнозирования велосипеда и импортировал его с помощью функции Pandas.rad_csv ().

Вы можете найти набор данных здесь Отказ

Загрузка набора данных

import pandas
BIKE = pandas.read_csv("Bike.csv")

Разделение набора данных

Мы сегрегировали набор данных на тренировку и тестирование набора данных, используя rain_test_split () функция.

#Separating the depenedent and independent data variables into two dataframes.
from sklearn.model_selection import train_test_split 
X = bike.drop(['cnt'],axis=1) 
Y = bike['cnt']
# Splitting the dataset into 80% training data and 20% testing data.
X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=.20, random_state=0)

Теперь, время, чтобы определить метрики ошибок!

Мы создали индивидуальную функцию «err_Metric» и вычислили точность, отзыв, точность и балл F1, как показано ниже-

# Error metrics -- Confusion matrix\FPR\FNR\f1 score\
def err_metric(CM): 
    
    TN = CM.iloc[0,0]
    FN = CM.iloc[1,0]
    TP = CM.iloc[1,1]
    FP = CM.iloc[0,1]
    precision =(TP)/(TP+FP)
    accuracy_model  =(TP+TN)/(TP+TN+FP+FN)
    recall_score  =(TP)/(TP+FN)
    specificity_value =(TN)/(TN + FP)
    
    False_positive_rate =(FP)/(FP+TN)
    False_negative_rate =(FN)/(FN+TP)
    f1_score =2*(( precision * recall_score)/( precision + recall_score))
    print("Precision value of the model: ",precision)
    print("Accuracy of the model: ",accuracy_model)
    print("Recall value of the model: ",recall_score)
    print("Specificity of the model: ",specificity_value)
    print("False Positive rate of the model: ",False_positive_rate)
    print("False Negative rate of the model: ",False_negative_rate)
    print("f1 score of the model: ",f1_score)

Реализация модели!

Давайте теперь применим Модель дерева решений на нашем наборе данных. Мы использовали Учреждение ECLASSFIER () Метод применить его на наши данные.

#Decision Trees
decision = DecisionTreeClassifier(max_depth= 6,class_weight='balanced' ,random_state =0).fit(X_train,Y_train)
target = decision.predict(X_test)
targetclass_prob = decision.predict_proba(X_test)[:, 1]
confusion_matrix = pd.crosstab(Y_test,target)
err_metric(confusion_matrix)

Выход:

Как видно ниже, мы получаем стоимость вспоминания как 0,57 мкл. 57%, что означает 57% данных, которые на самом деле правильно помечены, предсказаны правильно.

Precision value of the model:  0.25
Accuracy of the model:  0.6028368794326241
Recall value of the model:  0.5769230769230769
Specificity of the model:  0.6086956521739131
False Positive rate of the model:  0.391304347826087
False Negative rate of the model:  0.4230769230769231
f1 score of the model:  0.3488372093023256

2. Напомним в Python, используя библиотеку Sklearn

Python Sklearn предлагает нам Recall_Score () Метод Это изображает значение отзыва для набора значений данных.

Синтаксис:

recall_score(x, y, average='weighted')
  • х : Фактические значения
  • y : Предсказанный набор ценностей
  • средний : строка, [нет, «двоичный» (по умолчанию), «Micro», «Macro», «образцы», «взвешенные»]

В приведенном ниже примере X относится к фактическому набору значений, пока y представляет прогнозируемые значения.

from sklearn.metrics import recall_score
x = [10,20,30,40,50,60]
y = [10,21,30,40,50,80]
print("Recall value:")
recall_score(x, y, average='weighted')

Выход:

Recall value:
0.6666666666666666

Заключение

По этому, мы подошли к концу этой темы. Не стесняйтесь комментировать ниже, если вы столкнетесь с любым вопросом.

Для более глубокого понимания попробуйте выполнить концепцию отзыва с различными наборами набора данных и давайте узнаем свой опыт в окне комментариев!

До этого оставайся настроенным!

Увидимся в следующей статье! Наслаждайтесь обучением с JoolsDev 🙂

Рекомендации