[imath]Entropy[/imath]
là một đại lượng toán học dùng để đo lượng tin không chắc chắn (hay lượng ngẫu nhiên) của
một sự kiện hay của phân phối ngẫu nhiên cho trước.
Entropy của một phân phối xác suất rời rạc
Giả sử chúng ta có một tập hợp rời rạc các sự kiện có thể xảy ra
[imath]1, \ldots, n[/imath]
với các xác suất.
[imath](p_1, p_2, ..., p_n)[/imath]
. Claude Shannon đặt câu hỏi:
Chúng ta có thể tìm ra thước đo về mức độ "lựa chọn" liên quan đến việc lựa chọn sự kiện hoặc mức độ không chắc chắn của chúng ta về kết quả không?
Ví dụ, giả sử chúng ta có đồng xu rơi vào mặt ngửa với xác suất
[imath]p[/imath]
và sấp với xác suất
[imath]1-p[/imath]
. Nếu
[imath]p = 1[/imath]
, đồng xu luôn rơi vào mặt ngửa. Vì không có độ không chắc chắn ý là nó rất chắc chắn, chúng ta có thể nói độ không chắc chắn là 0. Tuy nhiên, nếu đồng tiền là cân đối và
[imath]p = 0,5[/imath]
, chúng ta tối đa hóa sự không chắc chắn của mình: tức đồng xu đang bay trên không cho dù đồng xu là sấp hay ngửa. Chúng ta có thể nói rằng độ không chắc chắn trong trường hợp này là 1. Vì nó thực sự là không chắc chắn.
Nói chung, Shannon muốn tạo ra một hàm
[imath]H(p_1, p_2, ..., p_n)[/imath]
mô tả sự không chắc chắn của một tập hợp các sự kiện rời rạc tùy ý.
Cách tính entropy của một phân phối
Ngắn gọn thì là công thức này.
[math]
H(x) = H(p_1, p_2, ..., p_n) = - \sum_{i=1}^n p_i log(p_i)
[/math]
Và chi tiết hơn.
Ông cho rằng
[imath]H[/imath]
nên phải có ba thuộc tính:
Đầu tiên,
[imath]H[/imath]
phải là một hàm liên tục của mỗi
[imath]p_i[/imath]
. Một thay đổi nhỏ trong một xác suất sẽ dẫn đến một thay đổi nhỏ tương tự trong
[imath]entropy[/imath]
(độ không chắc chắn).
Thứ hai, Nếu mỗi sự kiện đều có khả năng xảy ra như nhau
[imath](p_i = 1 / n)[/imath]
,
[imath]H[/imath]
sẽ tăng theo hàm của
[imath]n[/imath]
: càng có nhiều sự kiện, chúng ta càng không chắc chắn.
Cuối cùng,
[imath]entropy[/imath]
phải là đệ quy đối với các sự kiện độc lập. Giả sử chúng ta tạo ra một biến ngẫu nhiên
[imath]x[/imath]
bằng quy trình sau: Lật một đồng xu cân đối. Nếu là mặt ngửa,
[imath]x = 0[/imath]
. Nếu lần lật là mặt sấp, hãy lật lại đồng xu. Nếu lần lật thứ hai là mặt ngửa
[imath]x = 1[/imath]
, nếu là mặt sấp
[imath]x = 2.[/imath]
Chúng ta có phân bố xác suất sau:
[math]P(x=0) = \frac{1}{2}; P(x=1) = \frac{1}{4}; P(x=2) = \frac{1}{4}[/math]
Chúng ta có thể tính entropy là
[imath]H(p_0 = \frac{1}{2}, p_1 =\frac{1}{4}, p_2 =\frac{1}{4})[/imath]
. Tuy nhiên, sự độc lập cho chúng ta biết rằng mối quan hệ này nên có:
[math]
H(\frac{1}{2}, \frac{1}{4}, \frac{1}{4}) = H(\frac{1}{2}, \frac{1}{2}) + \frac{1}{2}H(\frac{1}{2}, \frac{1}{2})
[/math]
Hãy tưởng tượng trước tiên chúng ta xem
[imath]x = 0[/imath]
, và sau đó, nếu
[imath]x[/imath]
không phải
[imath]0[/imath]
, xem giá trị khác 0 là trường hợp nào. Sự xuất hiện về việc liệu
[imath]x = 0[/imath]
hay không đòi hỏi tiết lộ một biến nhị phân có phân phối xác suất là
[imath]\{\frac{1}{2}, \frac{1}{2} \}[/imath]
. Sự tiết lộ này có
[imath]Entropy = H(\frac{1}{2}, \frac{1}{2})[/imath]
sự tiết lộ giống việc chúng ta lật từng quân bài đang úp vậy.
Nếu x không phải 0, chúng ta tìm hiểu giá trị của lần lật đồng xu thứ hai. Đây cũng là một biến nhị phân có phân phối xác suất là
[imath]\{\frac{1}{2}, \frac{1}{2} \}[/imath]
. Tuy nhiên, chúng ta chỉ trải nghiệm được điều này một nửa thời gian bởi nếu không phải 0 chúng ta mới tiếp tục lật lý do nhân thêm
[imath]\frac{1}{2}[/imath]
, vì vậy entropy có thể được viết như thế này:
[math]
H(\frac{1}{2}, \frac{1}{4}, \frac{1}{4}) = H(\frac{1}{2}, \frac{1}{2}) + \frac{1}{2}H(\frac{1}{2}, \frac{1}{2})
[/math]
Tóm cái váy lại, quan sát mà chúng ta đang thực hiện về entropy của bất kỳ phân phối xác suất nào
[imath] p = \{p_1, p_2 ,. . . , p_n\}[/imath]
là
[math]
H(p) = H(p_1, 1−p_1) + (1−p_1)H(\frac{p_2}{1−p1},\frac{p_3}{1−p1}, . . . , \frac{p_n}{1−p1})
[/math]
Shannon đã chỉ ra rằng với ba giả định này, có một giả thiết duy nhất mà
[imath]H[/imath]
phải nhận:
[math]
H(x) = H(p_1, p_2, ..., p_n) = - \sum_{i=1}^n p_i log(p_i) = \sum_{i=1}^n p_i log(\frac{1}{p_i})
[/math]
Ông đặt tên cho phép đo này là entropy độ không đảm bảo, bởi vì dạng của
[imath]H[/imath]
có sự tương đồng nổi bật với dạng Gibbs Entropy trong nhiệt động lực học thống kê.
Shannon nhận thấy H có nhiều đặc tính thú vị khác:
- Entropy H bằng 0 nếu và chỉ khi đúng một sự kiện có xác suất 1 và các sự kiện còn lại có xác suất 0. (Sự không chắc chắn chỉ biến mất khi chúng ta chắc chắn về kết quả.)
- Entropy
[imath]H[/imath]
cực đại khi giá trị
[imath]p_i [/imath]
bằng nhau.
- Entropy chung của hai sự kiện là nhỏ hơn hoặc bằng tổng các entropy riêng lẻ.
[imath]H (x, y) = H (x) + H (y)[/imath]
chỉ khi
[imath]x [/imath]
và
[imath]y[/imath]
là các biến cố độc lập.
Đôi điều về tên gọi của entropy
Caianiello và Aizerman nói rằng cái tên entropy là nhờ von Neumann, người đã nói
Bạn nên gọi nó là entropy, vì hai lý do. Ngay từ đầu, hàm không chắc chắn của bạn đã được sử dụng trong cơ học thống kê dưới tên đó, vì vậy nó đã có tên. Ở vị trí thứ hai, và quan trọng hơn, không ai biết entropy thực sự là gì, vì vậy trong một cuộc tranh luận, bạn sẽ luôn có lợi thế.
Tính entropy trong python
from scipy.stats import entropy
entropy([1/2, 1/4, 1/4], base=2)
Kết quả: 1.5
base
là Cơ số logarit để sử dụng, mặc định là
[imath]e[/imath]
(logarit tự nhiên).
Kết luận
Bạn dùng entropy để đo sự không chắc chắn của các sự kiện ngẫu nhiên với một phân bố xác suất.