Khi nào tôi nên sử dụng Gini tạp chất trái ngược với thông tin đạt được?


66

Ai đó thực tế có thể giải thích lý do căn bản đằng sau tạp chất Ginithông tin đạt được (dựa trên Entropy) không?

Số liệu nào tốt hơn để sử dụng trong các tình huống khác nhau trong khi sử dụng cây quyết định?


5
@ Anony-Mousse Tôi đoán đó là điều hiển nhiên trước bình luận của bạn. Câu hỏi không phải là nếu cả hai đều có lợi thế của mình, mà trong đó kịch bản nào tốt hơn cái kia.
Martin Thoma

Tôi đã đề xuất "Thông tin thu được" thay vì "Entropy", vì nó khá gần hơn (IMHO), như được đánh dấu trong các liên kết liên quan. Sau đó, câu hỏi đã được hỏi dưới một hình thức khác trong Khi nào nên sử dụng tạp chất Gini và khi nào sử dụng thông tin đạt được?
Laurent Duval

1
Tôi đã đăng ở đây một cách giải thích đơn giản về tạp chất Gini có thể hữu ích.
Picaud Vincent

Câu trả lời:


47

Tạp chất Gini và Entropy thông tin đạt được khá nhiều như nhau. Và mọi người sử dụng các giá trị thay thế cho nhau. Dưới đây là các công thức của cả hai:

  1. Gini:Gini(E)=1j=1cpj2
  2. Entropy:H(E)=j=1cpjlogpj

Có một sự lựa chọn, tôi sẽ sử dụng tạp chất Gini, vì nó không yêu cầu tôi tính toán các hàm logarit, vốn rất chuyên sâu về mặt tính toán. Hình thức đóng của giải pháp cũng có thể được tìm thấy.

Số liệu nào tốt hơn để sử dụng trong các tình huống khác nhau trong khi sử dụng cây quyết định?

Các tạp chất Gini, vì lý do đã nêu ở trên.

Vì vậy, chúng khá giống nhau khi phân tích GIỎ HÀNG.

Tài liệu tham khảo hữu ích để so sánh tính toán của hai phương pháp


1
Rất phổ biến để xem công thức của entropy, trong khi những gì thực sự được sử dụng trong cây quyết định trông giống như entropy có điều kiện. Tôi nghĩ rằng đó là sự phân biệt quan trọng hoặc đang thiếu một cái gì đó?
dùng1700890

@ user1700890 Thuật toán ID3 sử dụng Thông tin. đạt được entropy. Tôi cần phải đọc lên entropy có điều kiện. Có lẽ là một cải tiến so với ID3 :)
Dawny33

1
Tôi nghĩ rằng định nghĩa của bạn về gini impurtiy có thể sai: en.wikipedia.org/wiki/Decision_tree_learning#Gini_impurity
Martin Thoma

22

Nói chung, hiệu suất của bạn sẽ không thay đổi cho dù bạn sử dụng tạp chất Gini hay Entropy.

Laura Elena Raileanu và Kilian Stoffel đã so sánh cả hai trong " So sánh lý thuyết giữa chỉ số gini và tiêu chí đạt được thông tin ". Những lưu ý quan trọng nhất là:

  • Nó chỉ quan trọng trong 2% các trường hợp cho dù bạn sử dụng tạp chất gini hay entropy.
  • Entropy có thể chậm hơn một chút để tính toán (vì nó sử dụng logarit).

Tôi đã từng nói rằng cả hai số liệu tồn tại bởi vì chúng nổi lên trong các ngành khoa học khác nhau.


16

Đối với trường hợp một biến có hai giá trị, xuất hiện với phân số f và (1-f),
gini và entropy được cho bởi:
gini = 2 * f (1-f)
entropy = f * ln (1 / f) + (1-f) * ln (1 / (1-f))
Các biện pháp này rất giống nhau nếu được chia tỷ lệ thành 1.0 (vẽ 2 * gini và entropy / ln (2)):

Các giá trị Gini (y4, tím) và Entropy (y3, xanh lục) được chia tỷ lệ để so sánh


14

Gini dành cho các thuộc tính liên tục và Entropy dành cho các thuộc tính xảy ra trong các lớp

Gini là để giảm thiểu phân loại sai
Entropy là để phân tích thăm dò

Entropy chậm hơn một chút để tính toán


7

Để thêm vào thực tế là có ít nhiều giống nhau, hãy xem xét thực tế rằng: sao cho: Xem sơ đồ sau của hai các hàm được chuẩn hóa để lấy 1 làm giá trị tối đa: đường cong màu đỏ là dành cho Gini trong khi đường màu đen dành cho entropy.

0<u<1,log(1u)=uu2/2u3/3+0<p<1,log(p)=p1(1p)2/2(1p)3/3+
0<p<1,plog(p)=p(1p)+p(1p)2/2+p(1p)3/3+
Tiêu chuẩn hóa Gini và Entropy

Cuối cùng, như được giải thích bởi @NIMISHAN Gini là phù hợp hơn để giảm thiểu phân loại sai vì nó là đối xứng đến 0,5, trong khi entropy sẽ bị phạt nhiều xác suất nhỏ hơn.


3

Entropy mất nhiều thời gian tính toán hơn so với Chỉ số Gini vì tính toán nhật ký, có thể đó là lý do Gini Index trở thành tùy chọn mặc định cho nhiều thuật toán ML. Nhưng, từ Tân et. al book Giới thiệu về Khai thác dữ liệu

"Biện pháp tạp chất khá phù hợp với nhau ... Thật vậy, chiến lược được sử dụng để cắt tỉa cây có tác động lớn hơn đến cây cuối cùng so với lựa chọn biện pháp tạp chất."

Vì vậy, có vẻ như việc lựa chọn biện pháp tạp chất ít ảnh hưởng đến hiệu suất của các thuật toán cây quyết định duy nhất.

Cũng thế. "Phương thức Gini chỉ hoạt động khi biến mục tiêu là biến nhị phân." - Học phân tích dự đoán với Python.


3

Tôi đã thực hiện tối ưu hóa phân loại nhị phân trong tuần qua + và trong mọi trường hợp, entropy vượt trội hơn đáng kể so với gini. Đây có thể là tập dữ liệu cụ thể, nhưng có vẻ như thử cả hai trong khi điều chỉnh siêu đường kính là một lựa chọn hợp lý, thay vì đưa ra các giả định về mô hình trước thời hạn.

Bạn không bao giờ biết dữ liệu sẽ phản ứng như thế nào cho đến khi bạn chạy số liệu thống kê.


0

Theo phân tích chính, Gini vượt trội hơn entropy vì tính toán dễ dàng (log rõ ràng có nhiều tính toán liên quan hơn là nhân đơn giản ở cấp độ bộ xử lý / Máy).

Nhưng entropy chắc chắn có lợi thế trong một số trường hợp dữ liệu liên quan đến sự mất cân bằng cao.

Vì entropy sử dụng nhật ký xác suất và nhân với xác suất của sự kiện, những gì đang diễn ra ở chế độ nền là giá trị của xác suất thấp hơn đang được tăng lên.

Nếu phân phối xác suất dữ liệu của bạn là theo cấp số nhân hoặc Laplace (như trong trường hợp học sâu, chúng ta cần phân phối xác suất tại điểm sắc nét) thì entropy vượt trội hơn Gini.

Để đưa ra một ví dụ nếu bạn có 2 sự kiện một xác suất 0,01 và xác suất 0,99 khác.

Trong Gini Prob sq sẽ là .01 ^ 2 + .99 ^ 2, .0001 + .9801 có nghĩa là xác suất thấp hơn không đóng vai trò nào vì mọi thứ đều bị chi phối bởi xác suất đa số.

Bây giờ trong trường hợp entropy .01 * log (.01) +. 99 * log (.99) = .01 * (- 2) + .99 * (-. 00436) = -.02-.00432 trong trường hợp này thấy rõ xác suất thấp hơn được cho tuổi cân nặng tốt hơn.

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.