Chuyển đến nội dung

Máy Tính Entropy - Tính Toán Entropy Shannon Trực Tuyến Miễn Phí

Máy tính entropy miễn phí để tính toán entropy Shannon ngay lập tức. Đo tính ngẫu nhiên, độ không chắc chắn và nội dung thông tin của dữ liệu với kết quả từng bước. Hoàn hảo cho khoa học dữ liệu.

Máy Tính Entropy

Nhập các giá trị số được phân tách bằng khoảng trắng hoặc dấu phẩy tùy thuộc vào định dạng được chọn.

Định Dạng Dữ Liệu

Phân Phối Tần Suất

Nhập dữ liệu để xem biểu đồ

Máy tính tải...
📚

Tài liệu hướng dẫn

Máy tính entropy là gì?

Máy tính entropy tìm entropy Shannon của một tập hợp các số. Entropy Shannon là cách đo mức độ khó dự đoán của một tập dữ liệu. Tập dữ liệu trong đó mọi giá trị đều giống nhau có entropy bằng 0, vì không có gì không chắc chắn. Tập dữ liệu trong đó mọi giá trị đều có khả năng xuất hiện như nhau có entropy cao nhất có thể đối với kích thước của tập dữ liệu đó.

Ý tưởng này bắt nguồn từ lý thuyết thông tin, một lĩnh vực do nhà toán học người Mỹ Claude Shannon khởi xướng vào năm 1948. Shannon muốn đo lượng thông tin mà một thông điệp chứa đựng. Ông định nghĩa entropy là lượng “bất ngờ” trung bình trong một chuỗi ký hiệu. Công thức này hiện được dùng trong khoa học dữ liệu, mật mã học, sinh học và học máy, ở bất cứ đâu cần đo tính ngẫu nhiên của một tập hợp các kết quả.

Công thức entropy Shannon

Với một tập dữ liệu có các giá trị duy nhất từ x₁ đến xₙ, mỗi giá trị xuất hiện với xác suất p(xᵢ), entropy Shannon H là:

H(X)=−∑i=1np(xi)log⁡2p(xi)H(X) = -\sum_{i=1}^{n} p(x_i) \log_2 p(x_i)

Diễn giải bằng lời: với mỗi giá trị duy nhất, nhân xác suất của nó với lôgarit cơ số 2 của xác suất đó, cộng tất cả các tích này lại, rồi đổi dấu. Kết quả luôn bằng 0 hoặc là số dương.

Máy tính này luôn sử dụng lôgarit cơ số 2, vì vậy kết quả được đo bằng bit. Các cơ số khác được dùng cho những mục đích khác: lôgarit tự nhiên cho đơn vị gọi là nat, còn cơ số 10 cho đơn vị gọi là hartley. Bit là đơn vị tiêu chuẩn trong máy tính và lý thuyết thông tin, nên máy tính này sử dụng cơ số 2.

Vì sao kết quả không thể là số âm

Mọi xác suất p(xᵢ) đều nằm trong khoảng từ 0 đến 1, nên lôgarit của nó bằng 0 hoặc là số âm. Nhân một xác suất với một lôgarit âm hoặc bằng 0 sẽ cho một số âm hoặc bằng 0. Cộng các giá trị đó rồi đổi dấu luôn cho kết quả bằng 0 hoặc lớn hơn 0.

Entropy lớn nhất có thể

Với một tập dữ liệu có n giá trị duy nhất, entropy cao nhất khi mọi giá trị xuất hiện với tần suất như nhau. Giá trị cực đại đó bằng log₂(n) bit. Một tập dữ liệu có 4 giá trị duy nhất phổ biến như nhau chỉ có thể đạt tối đa 2 bit entropy, vì log₂(4) = 2. Bất kỳ phân phối không đồng đều nào của cùng 4 giá trị cũng cho entropy thấp hơn.

Cách tính entropy: từng bước

  1. Liệt kê các giá trị duy nhất trong tập dữ liệu và đếm số lần xuất hiện của từng giá trị.
  2. Chia mỗi số đếm cho tổng số giá trị để có xác suất của từng giá trị duy nhất.
  3. Tính lôgarit cơ số 2 của mỗi xác suất, rồi nhân với chính xác suất đó.
  4. Cộng tất cả các tích này lại, rồi nhân tổng với −1.

Máy tính này tự động thực hiện bốn bước trên. Nhập các số vào ô nhập liệu, phân tách bằng dấu cách hoặc dấu phẩy, chọn định dạng tương ứng, rồi entropy, bảng xác suất và biểu đồ cột sẽ xuất hiện ngay. Bảng bên dưới kết quả hiển thị giá trị, số đếm, xác suất và p(x) × log₂(p(x)) của từng số duy nhất, nhờ đó các bước tính được thể hiện rõ chứ không chỉ có đáp án cuối cùng.

Quy tắc nhập dữ liệu

  • Chỉ chấp nhận các giá trị dạng số: số nguyên, số thập phân và số âm đều được chấp nhận.
  • Các giá trị được phân tách bằng dấu cách (ví dụ: 1 2 3 4) hoặc dấu phẩy (ví dụ: 1,2,3,4), tùy theo định dạng được chọn.
  • Một tập dữ liệu có thể chứa tối đa 100.000 giá trị. Nhập nhiều hơn số lượng này sẽ tạo ra thông báo lỗi yêu cầu sử dụng tập dữ liệu nhỏ hơn.
  • Ký hiệu khoa học được chấp nhận, vì vậy 1e3 được đọc là 1000.
  • Văn bản, ký hiệu hoặc các mục trống giữa những dấu phân tách sẽ bị từ chối và tạo ra lỗi, thay vì bị bỏ qua một cách âm thầm.
  • Một số quá lớn để máy tính lưu trữ, chẳng hạn như 1e400, cũng bị từ chối. Giá trị lớn nhất mà máy tính có thể chứa xấp xỉ 1,8 x 10^308.

Ví dụ minh họa

Xét tập dữ liệu 1 2 3 1 2 1, gồm sáu số.

Trước tiên, đếm từng giá trị duy nhất:

Giá trịSố đếmXác suất
133/6 = 0,5
222/6 ≈ 0,3333
311/6 ≈ 0,1667

Tiếp theo, áp dụng công thức cho từng hàng và cộng các kết quả:

H=−(0.5log⁡20.5+0.3333log⁡20.3333+0.1667log⁡20.1667)H = -(0.5 \log_2 0.5 + 0.3333 \log_2 0.3333 + 0.1667 \log_2 0.1667) H=−(0.5×−1+0.3333×−1.585+0.1667×−2.585)H = -(0.5 \times -1 + 0.3333 \times -1.585 + 0.1667 \times -2.585) H≈1.4591 bitH \approx 1.4591 \text{ bit}

Tập dữ liệu có 3 giá trị duy nhất, nên entropy lớn nhất có thể là log₂(3) ≈ 1,585 bit. Kết quả thực tế, 1,4591 bit, thấp hơn mức tối đa đó vì giá trị 1 xuất hiện thường xuyên hơn các giá trị khác, khiến tập dữ liệu kém ngẫu nhiên hơn một chút so với sự phân chia hoàn toàn đồng đều.

Một tập dữ liệu không có sự không chắc chắn

Tập dữ liệu 5 5 5 5 5 chỉ có một giá trị duy nhất, nên xác suất của nó là 1. Vì log₂(1) = 0, mọi số hạng trong tổng đều bằng 0 và entropy chính xác là 0 bit. Không có gì không chắc chắn trong một tập dữ liệu mà mọi giá trị đều giống hệt nhau.

Đọc kết quả

  • Entropy gần 0 có nghĩa là dữ liệu lặp lại và dễ dự đoán. Một hoặc một vài giá trị chiếm ưu thế.
  • Entropy gần log₂(n), trong đó n là số lượng giá trị duy nhất, có nghĩa là dữ liệu gần như được phân bố đồng đều trên tất cả các giá trị duy nhất.
  • Entropy chính xác bằng 0 có nghĩa là mọi giá trị trong tập dữ liệu đều giống nhau.

Bản thân entropy không cho biết một tập dữ liệu là “tốt” hay “xấu”. Bộ tạo mật khẩu cần entropy cao vì điều đó khiến mật khẩu khó đoán. Một cảm biến cần đọc nhiệt độ không đổi lại cần entropy thấp, vì điều đó cho thấy số đo ổn định.

Entropy Shannon được sử dụng ở đâu

  • Học máy: các thuật toán cây quyết định sử dụng entropy để quyết định đặc trưng nào phân tách tập dữ liệu tốt nhất thành các nhóm dễ dự đoán.
  • Nén dữ liệu: entropy xác định giới hạn lý thuyết về mức độ có thể nén nhỏ một tệp mà không làm mất thông tin.
  • Mật mã học: entropy đo mức độ khó dự đoán của một mật khẩu hoặc khóa mật mã.
  • Di truyền học: entropy có thể làm nổi bật các vùng bất thường hoặc có biến thiên cao trong một trình tự DNA.
  • Phân tích văn bản: coi chữ cái hoặc từ là các “giá trị” cho phép entropy đo mức độ dễ dự đoán của một đoạn văn bản.

Các câu hỏi thường gặp

Entropy trong lý thuyết thông tin là gì? Đó là một số đo mức độ không chắc chắn hoặc khó dự đoán của một tập dữ liệu. Entropy được tính từ xác suất của từng giá trị duy nhất trong dữ liệu, không phải từ bản thân các giá trị.

Tính entropy Shannon bằng tay như thế nào? Đếm số lần xuất hiện của từng giá trị duy nhất, chia mỗi số đếm cho tổng số để có các xác suất, nhân mỗi xác suất với lôgarit cơ số 2 của nó, cộng các kết quả lại, rồi nhân với −1.

Entropy có thể là số âm không? Không. Giá trị nhỏ nhất có thể là 0 bit, xảy ra khi mọi giá trị trong tập dữ liệu đều giống hệt nhau.

Entropy lớn nhất của một tập dữ liệu là bao nhiêu? Giá trị lớn nhất là log₂(n) bit, trong đó n là số lượng giá trị duy nhất, và chỉ đạt được khi mọi giá trị duy nhất xuất hiện với tần suất như nhau.

Kích thước tập dữ liệu có bị giới hạn không? Có. Máy tính này chấp nhận tối đa 100.000 giá trị trong một tập dữ liệu. Dữ liệu đầu vào lớn hơn sẽ trả về lỗi.

Entropy khác phương sai như thế nào? Phương sai đo mức độ phân tán của các giá trị số quanh giá trị trung bình. Entropy đo mức độ khó dự đoán của mẫu các kết quả, chỉ dựa trên xác suất, bất kể độ lớn thực tế của các số.

Tài liệu tham khảo

  1. Shannon, C. E. (1948). A Mathematical Theory of Communication. Bell System Technical Journal, 27(3), 379–423.
  2. Cover, T. M., & Thomas, J. A. (2006). Elements of Information Theory (2nd ed.). Wiley-Interscience.
  3. MacKay, D. J. C. (2003). Information Theory, Inference, and Learning Algorithms. Cambridge University Press.