Đường cơ sở là gì trong đường cong thu hồi chính xác là gì


15

Tôi đang cố gắng hiểu đường cong thu hồi chính xác, tôi hiểu độ chính xác và thu hồi là gì nhưng điều tôi không hiểu là giá trị "cơ sở". Tôi đã đọc liên kết này https://classeval.wordpress.com/int sinhtion / intributiontion-to-the-precision-recall-plot/

và tôi không hiểu phần cơ bản như trong "Đường cong chính xác - thu hồi của một bộ phân loại hoàn hảo" nó làm gì? và làm thế nào để chúng ta tính toán nó? Có phải nó chỉ là một đường cơ sở ngẫu nhiên mà chúng ta chọn? Ví dụ: tôi có dữ liệu twitter với các thuộc tính như retweet,status_countvv và nhãn lớp của tôi là Favorited1 nếu Được yêu thích và 0 nếu không được ưa thích và tôi áp dụng các vịnh ngây thơ trên đó và bây giờ tôi muốn vẽ đường cong gợi nhớ chính xác, tôi nên đặt đường cơ sở của mình trong trường hợp này như thế nào ?

Câu trả lời:


13

"Đường cong cơ sở" trong đồ thị đường cong PR là một đường nằm ngang có chiều cao bằng số lượng ví dụ tích cực trên tổng số dữ liệu đào tạo , nghĩa là. tỷ lệ các ví dụ tích cực trong dữ liệu của chúng tôi ( ).N PPNPN

OK, tại sao đây là trường hợp? Giả sử chúng ta có một "phân loại rác" . trả về một ngẫu nhiên khả cho -thứ dụ mẫu là trong lớp . Để thuận tiện, giả sử . Hàm ý trực tiếp của việc gán lớp ngẫu nhiên này là sẽ có độ chính xác (dự kiến) bằng với tỷ lệ của các ví dụ tích cực trong dữ liệu của chúng tôi. Nó chỉ là tự nhiên; mọi mẫu phụ hoàn toàn ngẫu nhiên của dữ liệu của chúng tôi sẽ có ví dụ được phân loại chính xác. Điều này sẽ đúng với mọi ngưỡng xác suấtC JCJCJ i y i A p iU [ 0 , 1 ] C J E { PpiiyiApiU[0,1]CJqE{PN}qchúng tôi có thể sử dụng làm ranh giới quyết định cho xác suất thành viên lớp được trả về bởi . ( biểu thị một giá trị trong trong đó các giá trị xác suất lớn hơn hoặc bằng được phân loại trong lớp ) Mặt khác, hiệu suất thu hồi của là (trong kỳ vọng) bằng nếu . Tại bất kỳ ngưỡng cho chúng tôi sẽ chọn (ước tính) tổng dữ liệu của chúng tôi mà sau đó sẽ chứa (xấp xỉ) trong tổng số các trường hợp của lớp q [ 0 , 1 ] q A C J q p iU [ 0 , 1 ] q ( 100 ( 1 - q ) ) % ( 100 ( 1 - q ) ) % ACJq[0,1]qACJqpiU[0,1]q(100(1q))%(100(1q))%Atrong mẫu. Do đó, đường ngang chúng tôi đã đề cập ở đầu! Với mỗi giá trị thu hồi ( giá trị trong biểu đồ PR), giá trị chính xác tương ứng ( giá trị trong biểu đồ PR) bằng với .y PxyPN

Một cách nhanh chóng phụ lưu ý: Ngưỡng là không thường bằng 1 trừ việc thu hồi dự kiến. Điều này xảy ra trong trường hợp được đề cập ở trên chỉ vì phân phối đồng đều ngẫu nhiên các kết quả của ; đối với một phân phối khác (ví dụ: ) mối quan hệ nhận dạng gần đúng giữa và thu hồi này không được giữ; đã được sử dụng vì nó dễ hiểu và dễ hình dung nhất. Đối với phân phối ngẫu nhiên khác nhau trong , cấu hình PR của sẽ không thay đổi. Chỉ cần vị trí của các giá trị PR cho các giá trị cho sẽ thay đổi.C J C J p iB ( 2 , 5 ) q U [ 0 , 1 ] [ 0 , 1 ] C J qqCJCJpiB(2,5)qU[0,1][0,1]CJq

Bây giờ về một phân loại hoàn hảo , người ta sẽ có nghĩa là một phân loại mà lợi nhuận khả để dụ mẫu phúc của lớp nếu thực sự là trong lớp và bổ sung trả về khả nếu không phải là một thành viên của lớp . Điều này ngụ ý rằng với bất kỳ ngưỡng chúng ta sẽ có độ chính xác (nghĩa là về mặt đồ thị, chúng ta có một dòng bắt đầu với độ chính xác ). Điểm duy nhất chúng tôi không nhận được độ chính xác là tại . Với 1 y i A y i A C P 0 y i A q 100 % 100 % 100 % q = 0 q = 0 PCP1yiAyiACP0yiAq100%100%100%q=0q=0, Độ chính xác rơi xuống tỷ lệ ví dụ tích cực trong dữ liệu của chúng tôi ( ) như (điên cuồng?) Chúng tôi phân loại thậm chí điểm với khả năng là của lớp như là trong lớp . Biểu đồ PR của chỉ có hai giá trị có thể có cho độ chính xác của nó là và . 0AACP1PPN0AACP1PN

OK và một số mã R để xem lần đầu tiên này với một ví dụ trong đó các giá trị dương tương ứng với mẫu của chúng tôi. Chú ý rằng chúng tôi làm một "mềm chuyển nhượng" của thể loại lớp theo nghĩa là các giá trị xác suất kết hợp với mỗi điểm định lượng để sự tự tin của chúng tôi rằng thời điểm này là của lớp .40%A

  rm(list= ls())
  library(PRROC)
  N = 40000
  set.seed(444)
  propOfPos = 0.40
  trueLabels = rbinom(N,1,propOfPos)
  randomProbsB = rbeta(n = N, 2, 5) 
  randomProbsU = runif(n = N)  

  # Junk classifier with beta distribution random results
  pr1B <- pr.curve(scores.class0 = randomProbsB[trueLabels == 1], 
                   scores.class1 = randomProbsB[trueLabels == 0], curve = TRUE) 
  # Junk classifier with uniformly distribution random results
  pr1U <- pr.curve(scores.class0 = randomProbsU[trueLabels == 1], 
                   scores.class1 = randomProbsU[trueLabels == 0], curve = TRUE) 
  # Perfect classifier with prob. 1 for positives and prob. 0 for negatives.
  pr2 <- pr.curve(scores.class0 = rep(1, times= N*propOfPos), 
                  scores.class1 = rep(0, times = N*(1-propOfPos)), curve = TRUE)

  par(mfrow=c(1,3))
  plot(pr1U, main ='"Junk" classifier (Unif(0,1))', auc.main= FALSE, 
       legend=FALSE, col='red', panel.first= grid(), cex.main = 1.5);
  pcord = pr1U$curve[ which.min( abs(pr1U$curve[,3]- 0.50)),c(1,2)];
  points( pcord[1], pcord[2], col='black', cex= 2, pch = 1)
  pcord = pr1U$curve[ which.min( abs(pr1U$curve[,3]- 0.20)),c(1,2)]; 
  points( pcord[1], pcord[2], col='black', cex= 2, pch = 17)
  plot(pr1B, main ='"Junk" classifier (Beta(2,5))', auc.main= FALSE,
       legend=FALSE, col='red', panel.first= grid(), cex.main = 1.5);
  pcord = pr1B$curve[ which.min( abs(pr1B$curve[,3]- 0.50)),c(1,2)]; 
  points( pcord[1], pcord[2], col='black', cex= 2, pch = 1)
  pcord = pr1B$curve[ which.min( abs(pr1B$curve[,3]- 0.20)),c(1,2)]; 
  points( pcord[1], pcord[2], col='black', cex= 2, pch = 17)
  plot(pr2, main = '"Perfect" classifier', auc.main= FALSE, 
       legend=FALSE, col='red', panel.first= grid(), cex.main = 1.5);  

nhập mô tả hình ảnh ở đây

trong đó các vòng tròn màu đen và hình tam giác lần lượt biểu thị và trong hai ô đầu tiên. Chúng tôi ngay lập tức thấy rằng các trình phân loại "rác" nhanh chóng đi đến độ chính xác bằng ; tương tự, bộ phân loại hoàn hảo có độ chính xác trên tất cả các biến thu hồi. Không có gì đáng ngạc nhiên, AUCPR cho phân loại "rác" bằng tỷ lệ của ví dụ tích cực trong mẫu của chúng tôi ( ) và AUCPR cho "phân loại hoàn hảo" xấp xỉ bằng .q=0.50q=0.20PN10.401

Trên thực tế, biểu đồ PR của một bộ phân loại hoàn hảo là một chút vô dụng vì người ta không thể có nhớ lại bao giờ (chúng tôi không bao giờ dự đoán chỉ có lớp tiêu cực); chúng ta chỉ bắt đầu vẽ đường thẳng từ góc trên bên trái như một vấn đề quy ước. Nói đúng ra nó chỉ nên thể hiện hai điểm nhưng điều này sẽ tạo ra một đường cong khủng khiếp. : D0

Đối với hồ sơ, đã có một số câu trả lời rất tốt trong CV liên quan đến tiện ích của các đường cong PR: ở đây , ở đâyở đây . Chỉ cần đọc qua chúng một cách cẩn thận sẽ cung cấp một sự hiểu biết chung về đường cong PR.


1
Tham gia cộng đồng này chỉ để tôi có thể nâng cao điều này. Đây là một lời giải thích tuyệt vời về khái niệm đường cơ sở trong các đường cong gợi nhớ chính xác. Là một nhà sinh học, tôi thấy nó vô cùng hữu ích.
jimh

1
@jimh: Cảm ơn bạn, thật tuyệt khi nghe điều đó. Tôi vui mừng bài viết là hữu ích.
usεr11852 nói Phục hồi Monic

Tôi biết đó không phải là một bình luận mang lại thông tin hữu ích, nhưng tôi muốn cảm ơn bạn rất nhiều vì lời giải thích thấu đáo và mở mắt của bạn.
Ric S

0

Câu trả lời tuyệt vời ở trên. Đây là cách suy nghĩ trực quan của tôi về nó. Hãy tưởng tượng bạn có một bó bóng đỏ = dương và vàng = âm và bạn ném chúng ngẫu nhiên vào một cái xô = phần dương. Sau đó, nếu bạn có cùng số bóng đỏ và vàng, khi bạn tính PREC = tp / tp + fp = 100/100 + 100 từ xô của bạn màu đỏ (dương) = vàng (âm), do đó, PREC = 0,5. Tuy nhiên, nếu tôi có 1000 quả bóng màu đỏ và 100 quả bóng màu vàng, thì trong xô tôi sẽ ngẫu nhiên mong đợi PREC = tp / tp + fp = 1000/1000 + 100 = 0,91 vì đó là đường cơ hội trong phân số dương cũng là RP / RP + RN, trong đó RP = dương thực và RN = âm thực.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.