Hướng dẫn what does f1 mean in python? - f1 có nghĩa là gì trong python?


Khi sử dụng các mô hình phân loại trong học máy, một số liệu phổ biến mà chúng tôi sử dụng để đánh giá chất lượng của mô hình là điểm F1.F1 Score.

Số liệu này được tính là:

Điểm F1 = 2 * (độ chính xác * nhớ lại) / (độ chính xác + thu hồi) = 2 * (Precision * Recall) / (Precision + Recall)

where:

  • Độ chính xác: Dự đoán tích cực chính xác liên quan đến tổng dự đoán tích cực: Correct positive predictions relative to total positive predictions
  • Nhớ lại: Dự đoán tích cực chính xác liên quan đến tổng số dương tính thực tế: Correct positive predictions relative to total actual positives

Ví dụ: giả sử chúng tôi & nbsp; sử dụng mô hình hồi quy logistic để dự đoán có 400 cầu thủ bóng rổ đại học khác nhau có được soạn thảo vào NBA hay không.

Ma trận nhầm lẫn sau đây tóm tắt các dự đoán được thực hiện bởi mô hình:

Hướng dẫn what does f1 mean in python? - f1 có nghĩa là gì trong python?

Dưới đây là cách tính điểm F1 của mô hình:

Độ chính xác = Đúng tích cực / (Đúng dương + dương tính giả) = 120 / (120 + 70) = .63157.63157

Nhớ lại = Đúng tích cực / (Đúng dương + Sai âm) = 120 / (120 + 40) = .75.75

Điểm F1 = 2 * (.63157 * .75) / (.63157 + .75) = .68576857

Ví dụ sau đây cho thấy cách tính điểm F1 cho mô hình chính xác này trong Python.

Ví dụ: Tính điểm F1 trong Python

Mã sau đây cho thấy cách sử dụng hàm f1_score () từ gói sklearn trong Python để tính điểm F1 cho một mảng các giá trị dự đoán và giá trị thực.f1_score() function from the sklearn package in Python to calculate the F1 score for a given array of predicted values and actual values.

import numpy as np
from sklearn.metrics import f1_score

#define array of actual classes
actual = np.repeat([1, 0], repeats=[160, 240])

#define array of predicted classes
pred = np.repeat([1, 0, 1, 0], repeats=[120, 40, 70, 170])

#calculate F1 score
f1_score(actual, pred)

0.6857142857142857

Chúng ta có thể thấy rằng điểm F1 là 0,6857. Điều này phù hợp với giá trị mà chúng tôi đã tính toán trước đó bằng tay.0.6857. This matches the value that we calculated earlier by hand.

Lưu ý: Bạn có thể tìm thấy tài liệu đầy đủ cho hàm f1_score () ở đây.: You can find the complete documentation for the f1_score() function here.

Ghi chú về việc sử dụng điểm F1

Nếu bạn sử dụng điểm F1 để so sánh một số mô hình, mô hình có điểm F1 cao nhất thể hiện mô hình có khả năng phân loại các quan sát thành các lớp nhất.

Ví dụ: nếu bạn phù hợp với một mô hình hồi quy logistic khác với dữ liệu và mô hình đó có điểm F1 là 0,75, mô hình đó sẽ được coi là tốt hơn vì nó có điểm F1 cao hơn.

Tài nguyên bổ sung

Làm thế nào để thực hiện hồi quy logistic trong Python làm thế nào để tạo ra một ma trận nhầm lẫn trong Python Cách tính độ chính xác cân bằng trong điểm Python F1 so với độ chính xác: Bạn nên sử dụng cái nào?
How to Create a Confusion Matrix in Python
How to Calculate Balanced Accuracy in Python
F1 Score vs. Accuracy: Which Should You Use?

from sklearn.metrics import f1_score

# define true labels

true_labels = ["a", "c", "b", "a"]

# define corresponding predicted labels

pred_labels = ["c", "c", "b", "a"]

# find f1 scores for different weighted averages

score = f1_score(true_labels, pred_labels, average="macro")

print("Macro F1-Score: ", score)

score = f1_score(true_labels, pred_labels, average="micro")

print("Micro F1-Score: ", score)

score = f1_score(true_labels, pred_labels, average="weighted")

print("Weighted F1-Score: ", score)

Hướng dẫn what does f1 mean in python? - f1 có nghĩa là gì trong python?

Các mô hình phân loại được sử dụng trong các vấn đề phân loại để dự đoán lớp mục tiêu của mẫu dữ liệu. Mô hình phân loại dự đoán xác suất mà mỗi trường hợp thuộc về một lớp này hay lớp khác. Điều quan trọng là đánh giá hiệu suất của mô hình phân loại để sử dụng một cách đáng tin cậy các mô hình này trong sản xuất để giải quyết các vấn đề trong thế giới thực. Các biện pháp hiệu suất trong các mô hình phân loại học máy được sử dụng để đánh giá cách thức các mô hình phân loại học máy hoạt động tốt trong một bối cảnh nhất định. Các số liệu hiệu suất này bao gồm độ chính xác, độ chính xác, thu hồi và điểm F1. Bởi vì nó giúp chúng tôi hiểu được điểm mạnh và hạn chế của các mô hình này khi đưa ra dự đoán trong các tình huống mới, hiệu suất mô hình là điều cần thiết cho việc học máy. Trong bài đăng trên blog này, chúng tôi sẽ khám phá bốn số liệu hiệu suất mô hình phân loại máy học này thông qua ví dụ Python Sklearn. accuracy, precision, recall, and F1-score. Because it helps us understand the strengths and limitations of these models when making predictions in new situations, model performance is essential for machine learning. In this blog post, we will explore these four machine learning classification model performance metrics through Python Sklearn example.

  • Điểm chính xác
  • Điểm chính xác
  • Điểm nhớ lại
  • F1-Score

Là một nhà khoa học dữ liệu, bạn phải hiểu rõ về các khái niệm liên quan đến những điều trên liên quan đến việc đo lường hiệu suất của mô hình phân loại. Trước khi chúng ta đi vào các chi tiết của các số liệu hiệu suất như được liệt kê ở trên, hãy hiểu các thuật ngữ chính như tích cực thực, dương tính giả, âm tính đúng và âm tính giả với sự trợ giúp của ma trận nhầm lẫn. Các thuật ngữ này sẽ được sử dụng trên các số liệu hiệu suất khác nhau.

  • Thuật ngữ - Tích cực thực sự, dương tính giả, âm tính đúng, âm tính giả
  • Điểm chính xác là bao nhiêu?
    • Các kịch bản trong thế giới thực khác nhau khi điểm chính xác có thể được sử dụng làm số liệu đánh giá
  • Điểm thu hồi là gì?
    • Các kịch bản trong thế giới thực khác nhau khi điểm thu hồi có thể được sử dụng làm số liệu đánh giá
  • Điểm chính xác là gì?
      • Thận trọng với các số liệu / điểm số chính xác
  • Điểm số F1 là gì?
  • Kết luận

Thuật ngữ - Tích cực thực sự, dương tính giả, âm tính đúng, âm tính giả

Điểm chính xác là bao nhiêu?benign or malignant breast cancer class. You can load the dataset using the following code:

Các kịch bản trong thế giới thực khác nhau khi điểm chính xác có thể được sử dụng làm số liệu đánh giá

Điểm thu hồi là gì?

from sklearn.model_selection import train_test_split
#
# Create training and test split
#
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.30, random_state=1, stratify=y)

Các kịch bản trong thế giới thực khác nhau khi điểm thu hồi có thể được sử dụng làm số liệu đánh giáactual negative is 64 records. Let’s train the model and get the confusion matrix. Here is the code for training the model and printing the confusion matrix.

from sklearn.preprocessing import StandardScaler
from sklearn.svm import SVC
from sklearn.metrics import confusion_matrix
from sklearn.metrics import precision_score, recall_score, f1_score, accuracy_score
import matplotlib.pyplot as plt
#
# Standardize the data set
#
sc = StandardScaler()
sc.fit(X_train)
X_train_std = sc.transform(X_train)
X_test_std = sc.transform(X_test)
#
# Fit the SVC model
#
svc = SVC(kernel='linear', C=10.0, random_state=1)
svc.fit(X_train, y_train)
#
# Get the predictions
#
y_pred = svc.predict(X_test)
#
# Calculate the confusion matrix
#
conf_matrix = confusion_matrix(y_true=y_test, y_pred=y_pred)
#
# Print the confusion matrix using Matplotlib
#
fig, ax = plt.subplots(figsize=(5, 5))
ax.matshow(conf_matrix, cmap=plt.cm.Oranges, alpha=0.3)
for i in range(conf_matrix.shape[0]):
    for j in range(conf_matrix.shape[1]):
        ax.text(x=j, y=i,s=conf_matrix[i, j], va='center', ha='center', size='xx-large')

plt.xlabel('Predictions', fontsize=18)
plt.ylabel('Actuals', fontsize=18)
plt.title('Confusion Matrix', fontsize=18)
plt.show()

Ma trận nhầm lẫn sau đây được in:confusion matrix is printed:

Hướng dẫn what does f1 mean in python? - f1 có nghĩa là gì trong python?
Hình 1. Ma trận nhầm lẫn biểu thị dự đoán so với thực tế trên dữ liệu thử nghiệmConfusion Matrix representing predictions vs Actuals on Test Data

Các kết quả dữ liệu dự đoán trong sơ đồ trên có thể được đọc theo cách sau đây cho 1 đại diện cho ung thư ác tính (dương tính).1 represents malignant cancer (positive).

  • Tích cực thực sự (TP): Định nghĩa tích cực thực sự mức độ mà mô hình dự đoán chính xác lớp dương. Đó là, mô hình dự đoán rằng trường hợp là tích cực và trường hợp thực sự là tích cực. Tích cực thực sự có liên quan khi chúng ta muốn biết có bao nhiêu bản tích cực mà mô hình của chúng ta dự đoán chính xác. Ví dụ, trong một vấn đề phân loại nhị phân với các lớp học, một và một cách chính xác, nếu mục tiêu của chúng tôi là dự đoán lớp học một cách chính xác như lớp học A A. Lấy một ví dụ trong thế giới thực, nếu mô hình được thiết kế để dự đoán liệu email có phải là spam hay không, một tích cực thực sự sẽ xảy ra khi mô hình dự đoán chính xác rằng email là một spam. Tỷ lệ tích cực thực sự là tỷ lệ phần trăm của tất cả các trường hợp được phân loại chính xác là thuộc về một lớp nhất định. Tích cực thực sự rất quan trọng vì chúng chỉ ra mô hình của chúng tôi thực hiện tốt như thế nào trên các trường hợp tích cực. Trong ma trận nhầm lẫn ở trên, trong số 107 điểm tích cực thực tế, 104 được dự đoán chính xác là tích cực. Do đó, giá trị của dương tính thực là 104.: True positive measures the extent to which the model correctly predicts the positive class. That is, the model predicts that the instance is positive, and the instance is actually positive. True positives are relevant when we want to know how many positives our model correctly predicts. For example, in a binary classification problem with classes “A” and “B”, if our goal is to predict class “A” correctly, then a true positive would be the number of instances of class “A” that our model correctly predicted as class “A”. Taking a real-world example, if the model is designed to predict whether an email is spam or not, a true positive would occur when the model correctly predicts that an email is a spam. The true positive rate is the percentage of all instances that are correctly classified as belonging to a certain class. True positives are important because they indicate how well our model performs on positive instances. In the above confusion matrix, out of 107 actual positives, 104 are correctly predicted positives. Thus, the value of True Positive is 104.
  • Sai dương tính (FP): Tích cực sai xảy ra khi mô hình dự đoán rằng một thể hiện thuộc về một lớp mà nó thực sự không có. Tích cực sai có thể có vấn đề vì chúng có thể dẫn đến việc ra quyết định không chính xác. Ví dụ, nếu một mô hình chẩn đoán y tế có tỷ lệ dương tính giả cao, nó có thể dẫn đến việc bệnh nhân trải qua điều trị không cần thiết. Tích cực sai có thể gây bất lợi cho các mô hình phân loại vì chúng giảm độ chính xác tổng thể của mô hình. Có một vài cách để đo lường dương tính giả, bao gồm cả tỷ lệ dương tính giả. Tỷ lệ dương tính giả là tỷ lệ của tất cả các ví dụ tiêu cực được dự đoán là dương. Mặc dù dương tính giả có vẻ như chúng sẽ xấu cho mô hình, nhưng trong một số trường hợp, chúng có thể mong muốn. Ví dụ, trong các ứng dụng y tế, thường tốt hơn là sai về phía thận trọng và có một vài dương tính giả hơn là bỏ lỡ một chẩn đoán hoàn toàn. Tuy nhiên, trong các ứng dụng khác, chẳng hạn như lọc thư rác, dương tính giả có thể rất tốn kém. Do đó, điều quan trọng là phải xem xét cẩn thận các sự đánh đổi liên quan khi chọn giữa các mô hình phân loại khác nhau. Trong ví dụ trên, dương tính giả đại diện cho số lượng tiêu cực (trong số 64) được dự đoán sai là dương. Trong số 64 tiêu cực thực tế, 3 được dự đoán sai là tích cực. Do đó, giá trị của dương tính giả là 3.: False positives occur when the model predicts that an instance belongs to a class that it actually does not. False positives can be problematic because they can lead to incorrect decision-making. For example, if a medical diagnosis model has a high false positive rate, it may result in patients undergoing unnecessary treatment. False positives can be detrimental to classification models because they lower the overall accuracy of the model. There are a few ways to measure false positives, including false positive rates. The false positive rate is the proportion of all negative examples that are predicted as positive. While false positives may seem like they would be bad for the model, in some cases they can be desirable. For example, in medical applications, it is often better to err on the side of caution and have a few false positives than to miss a diagnosis entirely. However, in other applications, such as spam filtering, false positives can be very costly. Therefore, it is important to carefully consider the trade-offs involved when choosing between different classification models. In the above example, the false positive represents the number of negatives (out of 64) that get falsely predicted as positive. Out of 64 actual negatives, 3 is falsely predicted as positive. Thus, the value of False Positive is 3.
  • Đúng là tiêu cực (TN): Các tiêu cực thực sự là kết quả mà mô hình dự đoán chính xác là tiêu cực. Ví dụ, nếu mô hình dự đoán liệu một người có bệnh hay không, một tiêu cực thực sự sẽ là khi mô hình dự đoán rằng người đó không mắc bệnh và họ thực sự không mắc bệnh. Tiêu cực thực sự là một trong những biện pháp được sử dụng để đánh giá mức độ thực hiện của một mô hình phân loại. Nói chung, một số lượng lớn các tiêu cực thực sự chỉ ra rằng mô hình đang hoạt động tốt. Đúng là âm được sử dụng cùng với âm âm giả, dương tính thực và dương tính giả để tính toán nhiều số liệu hiệu suất như độ chính xác, độ chính xác, thu hồi và điểm F1. Mặc dù True Negative cung cấp cái nhìn sâu sắc có giá trị về hiệu suất của mô hình phân loại, nhưng nó cần được giải thích trong bối cảnh của các số liệu khác để có được một bức tranh hoàn chỉnh về độ chính xác của mô hình. Trong số 64 tiêu cực thực tế, 61 được dự đoán chính xác tiêu cực. Do đó, giá trị của tiêu cực thực là 61. (TN): True negatives are the outcomes that the model correctly predicts as negative. For example, if the model is predicting whether or not a person has a disease, a true negative would be when the model predicts that the person does not have the disease and they actually don’t have the disease. True negatives are one of the measures used to assess how well a classification model is performing. In general, a high number of true negatives indicates that the model is performing well. True negative is used in conjunction with false negative, true positive, and false positive to compute a variety of performance metrics such as accuracy, precision, recall, and F1 score. While true negative provides valuable insight into the classification model’s performance, it should be interpreted in the context of other metrics to get a complete picture of the model’s accuracy. Out of 64 actual negatives, 61 is correctly predicted negative. Thus, the value of True Negative is 61.
  • Sai âm (FN): Một âm tính giả xảy ra khi một mô hình dự đoán một thể hiện là âm khi nó thực sự dương. Tiêu cực sai có thể rất tốn kém, đặc biệt là trong lĩnh vực y học. Ví dụ, nếu xét nghiệm sàng lọc ung thư dự đoán rằng bệnh nhân không bị ung thư khi họ thực sự làm, điều này có thể dẫn đến bệnh tiến triển mà không cần điều trị. Các tiêu cực sai cũng có thể xảy ra trong các lĩnh vực khác, chẳng hạn như phát hiện bảo mật hoặc gian lận. Trong những trường hợp này, một âm tính giả có thể dẫn đến việc ai đó được cấp quyền truy cập hoặc phê duyệt một giao dịch không nên được phép. Các tiêu cực sai thường nghiêm trọng hơn so với dương tính giả, và do đó, điều quan trọng là phải tính đến chúng khi đánh giá hiệu suất của mô hình phân loại. Giá trị này đại diện cho số lượng tích cực (trong số 107) được dự đoán sai là âm. Trong số 107 mặt tích cực thực tế, 3 được dự đoán sai là âm. Do đó, giá trị của âm giả là 3. (FN): A false negative occurs when a model predicts an instance as negative when it is actually positive. False negatives can be very costly, especially in the field of medicine. For example, if a cancer screening test predicts that a patient does not have cancer when they actually do, this could lead to the disease progressing without treatment. False negatives can also occur in other fields, such as security or fraud detection. In these cases, a false negative may result in someone being granted access or approving a transaction that should not have been allowed. False negatives are often more serious than false positives, and so it is important to take them into account when evaluating the performance of a classification model. This value represents the number of positives (out of 107) that get falsely predicted as negative. Out of 107 actual positives, 3 is falsely predicted as negative. Thus, the value of False Negative is 3.

Với các định nghĩa trên, hãy để Lôi thử và hiểu khái niệm về độ chính xác, độ chính xác, thu hồi và điểm số F1.

Điểm chính xác là bao nhiêu?

Điểm chính xác mô hình đo tỷ lệ của các nhãn dự đoán tích cực thực sự chính xác. Độ chính xác còn được gọi là giá trị dự đoán tích cực. Độ chính xác được sử dụng cùng với việc thu hồi để đánh đổi các dương tính giả và phủ định sai. Độ chính xác bị ảnh hưởng bởi phân phối lớp. Nếu có nhiều mẫu hơn trong lớp thiểu số, thì độ chính xác sẽ thấp hơn. Độ chính xác có thể được coi là một thước đo của độ chính xác hoặc chất lượng. Nếu chúng ta muốn giảm thiểu các tiêu cực sai, chúng ta sẽ chọn một mô hình có độ chính xác cao. Ngược lại, nếu chúng tôi muốn giảm thiểu các dương tính giả, chúng tôi sẽ chọn một mô hình có thu hồi cao. Độ chính xác chủ yếu được sử dụng khi chúng ta cần dự đoán lớp dương tính và có chi phí lớn hơn liên quan đến dương tính giả so với các tiêu cực giả như trong chẩn đoán y tế hoặc lọc thư rác. Ví dụ: nếu một mô hình chính xác 99% nhưng chỉ có độ chính xác 50%, điều đó có nghĩa là một nửa thời gian khi dự đoán email là một thư rác, nó thực sự không phải là thư rác.model precision score measures the proportion of positively predicted labels that are actually correct. Precision is also known as the positive predictive value. Precision is used in conjunction with the recall to trade-off false positives and false negatives. Precision is affected by the class distribution. If there are more samples in the minority class, then precision will be lower. Precision can be thought of as a measure of exactness or quality. If we want to minimize false negatives, we would choose a model with high precision. Conversely, if we want to minimize false positives, we would choose a model with high recall. Precision is mainly used when we need to predict the positive class and there is a greater cost associated with false positives than with false negatives such as in medical diagnosis or spam filtering. For example, if a model is 99% accurate but only has 50% precision, that means that half of the time when it predicts an email is a spam, it is actually not spam.

Điểm chính xác là một thước đo hữu ích cho sự thành công của dự đoán khi các lớp rất mất cân bằng.success of prediction when the classes are very imbalanced. Mathematically, it represents the ratio of true positive to the sum of true positive and false positive.

Điểm chính xác = TP / (FP + TP)

Từ công thức trên, bạn có thể nhận thấy rằng giá trị của dương tính giả sẽ ảnh hưởng đến điểm chính xác. Do đó, trong khi xây dựng các mô hình dự đoán, bạn có thể chọn tập trung một cách thích hợp để xây dựng các mô hình có dương tính giả thấp hơn nếu điểm chính xác cao là quan trọng đối với các yêu cầu kinh doanh.

Điểm chính xác từ ma trận nhầm lẫn ở trên sẽ xuất hiện như sau:

Điểm chính xác = 104 / (3 + 104) = 104/107 = 0,972 = 104 / (3 + 104) = 104/107 = 0.972

Có thể đạt được điểm số tương tự bằng cách sử dụng phương pháp precision_score từ sklearn.metricsprecision_score method from sklearn.metrics

print('Precision: %.3f' % precision_score(y_test, y_pred))

Các kịch bản trong thế giới thực khác nhau khi điểm chính xác có thể được sử dụng làm số liệu đánh giá

Điểm chính xác có thể được sử dụng trong kịch bản mà mô hình học máy được yêu cầu để xác định tất cả các ví dụ tích cực mà không có bất kỳ dương tính giả nào. Ví dụ, các mô hình học máy được sử dụng trong các ứng dụng chẩn đoán y tế trong đó bác sĩ muốn các mô hình học máy sẽ không cung cấp nhãn viêm phổi nếu bệnh nhân không mắc bệnh này. Các bác sĩ ung thư lý tưởng muốn các mô hình có thể xác định tất cả các tổn thương ung thư mà không cần bất kỳ kết quả dương tính giả nào và do đó người ta có thể sử dụng điểm chính xác trong các trường hợp như vậy. Lưu ý rằng một số lượng lớn các dương tính giả sẽ dẫn đến rất nhiều căng thẳng cho bệnh nhân nói chung mặc dù điều đó có thể không gây tử vong từ góc độ sức khỏe. Các thử nghiệm tiếp theo sẽ có thể phủ nhận dự đoán dương tính giả.

Ví dụ khác trong đó điểm chính xác có thể hữu ích là phát hiện gian lận thẻ tín dụng. Trong các vấn đề phát hiện gian lận thẻ tín dụng, các mô hình phân loại được đánh giá bằng cách sử dụng điểm chính xác để xác định có bao nhiêu mẫu tích cực được phân loại chính xác theo mô hình phân loại. Bạn không muốn có một số lượng cao các dương tính giả nếu không bạn có thể sẽ chặn nhiều thẻ tín dụng và do đó rất nhiều sự thất vọng với người dùng cuối.

Một ví dụ khác mà bạn muốn độ chính xác lớn hơn là các bộ lọc thư rác. Một số lượng lớn các dương tính giả trong bộ lọc thư rác có nghĩa là một hoặc nhiều email quan trọng có thể được gắn thẻ là thư rác và chuyển sang các thư mục spam. Điều này có thể cản trở theo nhiều cách khác nhau bao gồm tác động đến công việc hàng ngày của bạn.spam filters. A greater number of false positives in a spam filter would mean that one or more important emails could be tagged as spam and moved to spam folders. This could hamper in so many different ways including impact on your day-to-day work.

Điểm thu hồi là gì?

Điểm thu hồi mô hình đại diện cho khả năng mô hình để dự đoán chính xác các tích cực từ các mặt tích cực thực tế. Điều này không giống như độ chính xác, trong đó đo lường có bao nhiêu dự đoán được thực hiện bởi các mô hình thực sự tích cực trong tất cả các dự đoán tích cực được đưa ra. Ví dụ: nếu mô hình học máy của bạn đang cố gắng xác định các đánh giá tích cực, điểm thu hồi sẽ là bao nhiêu phần trăm các đánh giá tích cực đó, mô hình học máy của bạn dự đoán chính xác là tích cực. Nói cách khác, nó đo lường mức độ tốt của mô hình máy học của chúng tôi trong việc xác định tất cả các tích cực thực tế trong tất cả các tích cực tồn tại trong một bộ dữ liệu. Điểm thu hồi càng cao, mô hình máy học càng tốt trong việc xác định cả các ví dụ tích cực và tiêu cực. Nhớ lại còn được gọi là độ nhạy hoặc tỷ lệ dương thực sự. Điểm thu hồi cao chỉ ra rằng mô hình tốt trong việc xác định các ví dụ tích cực. Ngược lại, điểm thu hồi thấp chỉ ra rằng mô hình không tốt trong việc xác định các ví dụ tích cực. Nhớ lại thường được sử dụng cùng với các số liệu hiệu suất khác, chẳng hạn như độ chính xác và độ chính xác, để có được một bức tranh hoàn chỉnh về hiệu suất của mô hình. Về mặt toán học, nó đại diện cho tỷ lệ dương tính thực với tổng của dương tính và âm tính giả.

Ghi nhớ điểm = TP / (FN + TP)

Từ công thức trên, bạn có thể nhận thấy rằng giá trị của âm tính giả sẽ tác động đến điểm thu hồi. Do đó, trong khi xây dựng các mô hình dự đoán, bạn có thể chọn tập trung một cách thích hợp để xây dựng các mô hình có tiêu cực giả thấp hơn nếu điểm thu hồi cao là quan trọng đối với các yêu cầu kinh doanh.

Điểm thu hồi từ ma trận nhầm lẫn ở trên sẽ xuất hiện như sau:

Điểm nhớ lại = 104 / (3 + 104) = 104/107 = 0,972 = 104 / (3 + 104) = 104/107 = 0.972

Có thể đạt được điểm số tương tự bằng cách sử dụng phương pháp reBle_score từ sklearn.metricsrecall_score method from sklearn.metrics

print('Recall: %.3f' % recall_score(y_test, y_pred))

Điểm thu hồi có thể được sử dụng trong kịch bản mà các nhãn không được phân chia như nhau giữa các lớp. Ví dụ: nếu có tỷ lệ mất cân bằng lớp là 20:80 (dữ liệu mất cân bằng), thì điểm thu hồi sẽ hữu ích hơn độ chính xác vì nó có thể cung cấp thông tin về việc mô hình học máy xác định các sự kiện hiếm hơn.

Các kịch bản trong thế giới thực khác nhau khi điểm thu hồi có thể được sử dụng làm số liệu đánh giá

Điểm thu hồi là một số liệu quan trọng cần xem xét khi đo lường hiệu quả của các mô hình học máy của bạn. Nó có thể được sử dụng trong một loạt các kịch bản trong thế giới thực, và điều quan trọng là luôn luôn nhằm mục đích cải thiện điểm thu hồi và điểm chính xác cùng nhau. Sau đây là các ví dụ về một số kịch bản trong thế giới thực trong đó điểm thu hồi có thể được sử dụng làm số liệu đánh giá:

  • Trong chẩn đoán y tế, điểm thu hồi sẽ là một số lượng cực kỳ âm tính cao hơn nếu không sẽ chứng minh là gây tử vong cho cuộc sống của bệnh nhân. Điểm thu hồi thấp hơn có nghĩa là một âm tính giả lớn hơn, về cơ bản có nghĩa là một số bệnh nhân dương tính được gọi là âm tính giả. Điều đó có nghĩa là bệnh nhân sẽ được đảm bảo rằng anh ấy/cô ấy không bị bệnh và do đó anh ấy/cô ấy đã giành được bất kỳ hành động nào nữa. Điều đó có thể dẫn đến căn bệnh trở nên trầm trọng hơn và chứng minh tử vong cho cuộc sống.
  • Trong một hệ thống sản xuất, bạn sẽ muốn có một điểm thu hồi cao hơn cho các mô hình học máy dự đoán về nhu cầu bảo trì hệ thống. Điểm thu hồi thấp hơn có nghĩa là một âm tính giả cao hơn có thể dẫn đến thời gian ngừng hoạt động của các máy và do đó tác động đến doanh nghiệp nói chung.
  • Trong một hệ thống phát hiện gian lận thẻ tín dụng, bạn sẽ muốn có điểm thu hồi cao hơn của các mô hình dự đoán dự đoán các giao dịch gian lận. Điểm thu hồi thấp hơn có nghĩa là âm tính giả cao hơn, điều đó có nghĩa là gian lận lớn hơn và do đó mất doanh nghiệp về mặt người dùng khó chịu.
  • Trong phân tích tình cảm, điểm thu hồi xác định có bao nhiêu tweet hoặc bình luận có liên quan được tìm thấy trong khi điểm chính xác là phần của các tweet được truy xuất thực sự được gắn thẻ là dương. Một điểm thu hồi cao sẽ được hưởng lợi từ một phân tích tập trung.

Điểm chính xác là gì?

Độ chính xác của mô hình là một số liệu hiệu suất phân loại mô hình học máy được định nghĩa là tỷ lệ tích cực thực sự và tiêu cực thực sự cho tất cả các quan sát tích cực và tiêu cực. Nói cách khác, độ chính xác cho chúng ta biết tần suất chúng ta có thể mong đợi mô hình học máy của mình sẽ dự đoán chính xác kết quả trong tổng số lần nó đưa ra dự đoán. Ví dụ: Hãy giả sử rằng bạn đang kiểm tra mô hình học máy của mình với bộ dữ liệu gồm 100 bản ghi và mô hình học máy của bạn dự đoán tất cả 90 trong số các trường hợp đó một cách chính xác. Số liệu chính xác, trong trường hợp này, sẽ là: (90/100) = 90%. Tỷ lệ chính xác là tuyệt vời nhưng nó không cho chúng ta biết bất cứ điều gì về các lỗi mà các mô hình học máy của chúng ta tạo ra trên dữ liệu mới mà chúng ta đã thấy trước đây.is a machine learning classification model performance metric that is defined as the ratio of true positives and true negatives to all positive and negative observations. In other words, accuracy tells us how often we can expect our machine learning model will correctly predict an outcome out of the total number of times it made predictions. For example: Let’s assume that you were testing your machine learning model with a dataset of 100 records and that your machine learning model predicted all 90 of those instances correctly. The accuracy metric, in this case, would be: (90/100) = 90%. The accuracy rate is great but it doesn’t tell us anything about the errors our machine learning models make on new data we haven’t seen before.

Về mặt toán học, nó đại diện cho tỷ lệ của tổng của các tiêu cực tích cực và thực sự trong tất cả các dự đoán.

Điểm chính xác = (TP + TN)/ (TP + FN + TN + FP)

Điểm chính xác từ trên ma trận nhầm lẫn ở trên sẽ xuất hiện như sau:

Điểm chính xác = (104 + 61) / (104 + 3 + 61 + 3) = 165/171 = 0.965 = (104 + 61) / (104 + 3 + 61 + 3) = 165/171 = 0.965

Có thể đạt được điểm số tương tự bằng cách sử dụng phương pháp chính xác_score từ sklearn.metricsaccuracy_score method from sklearn.metrics

print('Accuracy: %.3f' % accuracy_score(y_test, y_pred))

Thận trọng với các số liệu / điểm số chính xác

Sau đây là một số vấn đề với số liệu / điểm chính xác:issues with accuracy metrics / score:

  • Các số liệu độ chính xác giống nhau cho hai mô hình khác nhau có thể chỉ ra hiệu suất mô hình khác nhau đối với các lớp khác nhau.
  • Trong trường hợp bộ dữ liệu mất cân bằng, các số liệu chính xác không phải là số liệu hiệu quả nhất được sử dụng.

Người ta nên thận trọng khi dựa vào các số liệu chính xác của mô hình để đánh giá hiệu suất mô hình. Hãy xem ma trận nhầm lẫn sau đây. Đối với độ chính xác của mô hình được biểu thị bằng cả hai trường hợp (trái và phải), độ chính xác là 60%. Tuy nhiên, cả hai mô hình thể hiện các hành vi khác nhau.cautious when relying on the accuracy metrics of model to evaluate the model performance. Take a look at the following confusion matrix. For model accuracy represented using both the cases (left and right), the accuracy is 60%. However, both the models exhibit different behaviors.

Hướng dẫn what does f1 mean in python? - f1 có nghĩa là gì trong python?

Hiệu suất mô hình được biểu thị bằng ma trận nhầm lẫn bên trái cho thấy mô hình có tốc độ nhận dạng dương yếu trong khi ma trận nhầm lẫn bên phải biểu thị rằng mô hình có tốc độ nhận dạng tích cực mạnh. Lưu ý rằng độ chính xác là 60% cho cả hai mô hình. Do đó, người ta cần đào sâu hơn để hiểu về hiệu suất mô hình với các số liệu chính xác.

Các số liệu chính xác cũng không đáng tin cậy cho các mô hình được đào tạo trên các bộ dữ liệu mất cân bằng. Lấy một kịch bản của bộ dữ liệu với sự mất cân bằng 95% (dữ liệu 95% là lớp tiêu cực). Độ chính xác của trình phân loại sẽ rất cao vì nó sẽ thực hiện chính xác dự đoán đúng đưa ra âm tính trong hầu hết thời gian. Một trình phân loại tốt hơn thực sự liên quan đến vấn đề mất cân bằng lớp học, có khả năng có điểm số liệu chính xác tồi tệ hơn. Trong kịch bản như vậy của bộ dữ liệu mất cân bằng, một số liệu khác AUC (khu vực theo đường cong ROC) mạnh hơn so với điểm số liệu chính xác. AUC tham gia vào việc xem xét, phân phối lớp trong bộ dữ liệu mất cân bằng.accuracy metrics is also not reliable for the models trained on imbalanced datasets. Take a scenario of dataset with 95% imbalance (95% data is negative class). The accuracy of the classifier will be very high as it will be correctly doing right prediction issuing negative most of the time. A better classifier that actually deals with the class imbalance issue, is likely to have a worse accuracy metrics score. In such scenario of imbalanced dataset, another metrics AUC (the area under ROC curve) is more robust than the accuracy metrics score. The AUC takes into the consideration, the class distribution in imbalanced dataset.

Điểm số F1 là gì?

Điểm F1 mô hình đại diện cho điểm số mô hình là một hàm của điểm chính xác và thu hồi. F-Score là một số liệu hiệu suất của mô hình học máy cho trọng lượng tương đương với cả độ chính xác và thu hồi để đo lường hiệu suất của nó về độ chính xác, làm cho nó trở thành một thay thế cho các số liệu chính xác (nó không yêu cầu chúng ta phải biết tổng số quan sát ). Nó thường được sử dụng như một giá trị duy nhất cung cấp thông tin cấp cao về chất lượng đầu ra của mô hình. Đây là một thước đo hữu ích của mô hình trong các kịch bản trong đó người ta cố gắng tối ưu hóa điểm chính xác hoặc thu hồi điểm và kết quả là, hiệu suất mô hình phải chịu đựng. Sau đây thể hiện các khía cạnh liên quan đến các vấn đề với tối ưu hóa điểm chính xác hoặc thu hồi điểm: represents the model score as a function of precision and recall score. F-score is a machine learning model performance metric that gives equal weight to both the Precision and Recall for measuring its performance in terms of accuracy, making it an alternative to Accuracy metrics (it doesn’t require us to know the total number of observations). It’s often used as a single value that provides high-level information about the model’s output quality. This is a useful measure of the model in the scenarios where one tries to optimize either of precision or recall score and as a result, the model performance suffers. The following represents the aspects relating to issues with optimizing either precision or recall score:

  • Tối ưu hóa để thu hồi giúp giảm thiểu cơ hội không phát hiện ung thư ác tính. Tuy nhiên, điều này có chi phí dự đoán ung thư ác tính ở bệnh nhân mặc dù bệnh nhân khỏe mạnh (số lượng cao FP).
  • Tối ưu hóa cho độ chính xác giúp với sự đúng đắn nếu bệnh nhân bị ung thư ác tính. Tuy nhiên, điều này có chi phí thiếu ung thư ác tính thường xuyên hơn (số lượng FN cao).

Về mặt toán học, nó có thể được biểu diễn dưới dạng trung bình hài hòa của điểm chính xác và thu hồi.

Điểm F1 = 2 * Điểm chính xác * Điểm nhớ lại/ (Điểm chính xác + Điểm thu hồi/)Precision Score + Recall Score/)

Điểm chính xác từ ma trận nhầm lẫn ở trên sẽ xuất hiện như sau:

Điểm F1 = (2 * 0,972 * 0,972) / (0,972 + 0,972) = 1,89 / 1.944 = 0,972= (2 * 0.972 * 0.972) / (0.972 + 0.972) = 1.89 / 1.944 = 0.972

Có thể đạt được điểm số tương tự bằng cách sử dụng phương pháp F1_Score từ sklearn.metricsf1_score method from sklearn.metrics

print('F1 Score: %.3f' % f1_score(y_test, y_pred))

Kết luận

Dưới đây là bản tóm tắt về những gì bạn đã học được liên quan đến độ chính xác, nhớ lại, độ chính xác và điểm số F1.

  • Một điểm chính xác được sử dụng để đo lường hiệu suất mô hình trong việc đo lường số lượng tích cực thực sự theo cách chính xác trong tất cả các dự đoán tích cực được đưa ra.
  • Điểm thu hồi được sử dụng để đo lường hiệu suất mô hình về mặt đo lường số lượng tích cực thực sự một cách chính xác trong tất cả các giá trị tích cực thực tế.
  • Điểm số chính xác là một thước đo hữu ích của sự thành công của dự đoán khi các lớp rất mất cân bằng. & NBSP;
  • Điểm chính xác được sử dụng để đo lường hiệu suất mô hình về mặt đo lường tỷ lệ tổng của các tiêu cực tích cực và thực sự trong tất cả các dự đoán được đưa ra.
  • Điểm số F1 là trung bình hài hòa của điểm chính xác và thu hồi và được sử dụng làm số liệu trong các kịch bản trong đó việc chọn điểm chính xác hoặc thu hồi có thể dẫn đến sự thỏa hiệp về mặt mô hình tạo ra các dương tính giả cao và âm tính sai tương ứng.harmonic mean of precision and recall score and is used as a metrics in the scenarios where choosing either of precision or recall score can result in compromise in terms of model giving high false positives and false negatives respectively.

Kiểm tra cuốn sách mới nhất của tôi về Lý luận bởi các nguyên tắc đầu tiên có tiêu đề là - Nguyên tắc đầu tiên suy nghĩ: Xây dựng các sản phẩm chiến thắng bằng cách sử dụng tư duy nguyên tắc đầu tiên. Bạn cũng có thể kiểm tra blog liên quan - Nguyên tắc đầu tiên tư duy được giải thích với các ví dụ.my latest book on reasoning by first principles titled as – First principles thinking: Building winning products using first principles thinking. You may as well check out the related blog – First principles thinking explained with examples.

  • Tác giả
  • Bài viết gần đây

Hướng dẫn what does f1 mean in python? - f1 có nghĩa là gì trong python?

Gần đây tôi đã làm việc trong lĩnh vực phân tích dữ liệu bao gồm khoa học dữ liệu và học máy / học sâu. Tôi cũng đam mê các công nghệ khác nhau bao gồm các ngôn ngữ lập trình như Java/JEE, JavaScript, Python, R, Julia, v.v. vv Để cập nhật và blog mới nhất, hãy theo dõi chúng tôi trên Twitter. Tôi rất thích kết nối với bạn trên LinkedIn.

Kiểm tra cuốn sách mới nhất của tôi có tiêu đề là Nguyên tắc đầu tiên suy nghĩ: Xây dựng các sản phẩm chiến thắng bằng cách sử dụng suy nghĩ nguyên tắc đầu tiên

Hướng dẫn what does f1 mean in python? - f1 có nghĩa là gì trong python?

F1 có nghĩa là gì trong dữ liệu?

Điểm F1 được định nghĩa là giá trị trung bình hài hòa của độ chính xác và thu hồi.Như một lời nhắc nhở ngắn, giá trị trung bình hài hòa là một số liệu thay thế cho trung bình số học phổ biến hơn.Nó thường hữu ích khi tính toán một tỷ lệ trung bình.Trong điểm F1, chúng tôi tính toán trung bình của độ chính xác và thu hồi.harmonic mean of precision and recall. As a short reminder, the harmonic mean is an alternative metric for the more common arithmetic mean. It is often useful when computing an average rate. In the F1 score, we compute the average of precision and recall.

Giá trị F1 là gì?

F1-SCORE là một trong những số liệu đánh giá quan trọng nhất trong học máy.Nó tổng hợp một cách tao nhã hiệu suất dự đoán của một mô hình bằng cách kết hợp hai số liệu cạnh tranh khác - độ chính xác và thu hồi.one of the most important evaluation metrics in machine learning. It elegantly sums up the predictive performance of a model by combining two otherwise competing metrics — precision and recall.

Điểm F1 được sử dụng để làm gì?

Điểm F1 là bao nhiêu?Điểm F1 thường được sử dụng để đo lường hiệu suất phân loại nhị phân, nhưng các phần mở rộng cho các phân loại đa lớp tồn tại.to measure performance of binary classification, but extensions to multi-class classifications exist.

Điểm F1 là 0,5 có nghĩa là bao nhiêu?

Điểm chính xác thấp (your classifier has a high number of False positives which can be an outcome of imbalanced class or untuned model hyperparameters. In an imbalanced class problem, you have to prepare your data beforehand with Over/Under-Sampling or Focal Loss in order to curb FP/FN.