เครื่องคำนวณเอนโทรปี - คำนวณเอนโทรปีแชนนอนออนไลน์ฟรี
เครื่องคำนวณเอนโทรปีฟรีสำหรับการคำนวณเอนโทรปีแชนนอนแบบทันที วัดความสุ่มของข้อมูล ความไม่แน่นอน และเนื้อหาสารสนเทศด้วยผลลัพธ์แบบขั้นตอนต่อขั้นตอน เหมาะสำหรับวิทยาศาสตร์ข้อมูล
เครื่องคำนวณเอนโทรปี
ป้อนค่าตัวเลขโดยคั่นด้วยช่องว่างหรือเครื่องหมายจุลภาค ขึ้นอยู่กับรูปแบบที่เลือก
การกระจายความถี่
ป้อนข้อมูลเพื่อดูการแสดงผล
เอกสารประกอบการใช้งาน
เครื่องคำนวณเอนโทรปีคืออะไร?
เครื่องคำนวณเอนโทรปีใช้หาเอนโทรปีของแชนนอนจากชุดตัวเลข เอนโทรปีของแชนนอนเป็นวิธีวัดว่าชุดข้อมูลคาดเดาได้ยากเพียงใด ชุดข้อมูลที่ทุกค่ามีค่าเหมือนกันจะมีเอนโทรปีเป็นศูนย์ เพราะไม่มีสิ่งใดไม่แน่นอน ส่วนชุดข้อมูลที่ทุกค่ามีโอกาสปรากฏเท่ากันจะมีเอนโทรปีสูงสุดเท่าที่เป็นไปได้สำหรับขนาดของชุดข้อมูลนั้น
แนวคิดนี้มาจากทฤษฎีสารสนเทศ ซึ่งเป็นสาขาที่นักคณิตศาสตร์ชาวอเมริกัน โคลด แชนนอน เริ่มต้นขึ้นในปี 1948 แชนนอนต้องการวัดว่าข้อความหนึ่งมีสารสนเทศมากเพียงใด เขานิยามเอนโทรปีว่าเป็นปริมาณเฉลี่ยของ “ความประหลาดใจ” ในลำดับของสัญลักษณ์ ปัจจุบันสูตรเดียวกันนี้ปรากฏในวิทยาการข้อมูล การเข้ารหัสลับ ชีววิทยา และการเรียนรู้ของเครื่อง ทุกที่ที่จำเป็นต้องวัดความสุ่มของกลุ่มผลลัพธ์
สูตรเอนโทรปีของแชนนอน
สำหรับชุดข้อมูลที่มีค่าไม่ซ้ำกันตั้งแต่ x₁ ถึง xₙ โดยแต่ละค่าปรากฏด้วยความน่าจะเป็น p(xᵢ) เอนโทรปีของแชนนอน H คือ:
กล่าวคือ สำหรับค่าไม่ซ้ำกันแต่ละค่า ให้นำความน่าจะเป็นของค่านั้นคูณด้วยลอการิทึมฐาน 2 ของความน่าจะเป็น แล้วบวกผลคูณทั้งหมดเข้าด้วยกัน จากนั้นเปลี่ยนเครื่องหมาย ผลลัพธ์จะเป็นศูนย์หรือค่าบวกเสมอ
เครื่องคำนวณนี้ใช้ลอการิทึมฐาน 2 เสมอ ดังนั้นผลลัพธ์จึงวัดเป็น บิต นอกจากนี้ยังมีฐานอื่นสำหรับวัตถุประสงค์อื่น ลอการิทึมธรรมชาติให้หน่วยที่เรียกว่านัต และฐาน 10 ให้หน่วยที่เรียกว่าฮาร์ตลีย์ บิตเป็นหน่วยมาตรฐานในคอมพิวเตอร์และทฤษฎีสารสนเทศ เครื่องคำนวณนี้จึงใช้ฐาน 2
เหตุใดผลลัพธ์จึงไม่เป็นค่าลบ
ความน่าจะเป็น p(xᵢ) ทุกค่าจะอยู่ระหว่าง 0 ถึง 1 ดังนั้นลอการิทึมของค่าดังกล่าวจึงเป็นศูนย์หรือค่าลบ เมื่อนำความน่าจะเป็นไปคูณกับลอการิทึมที่เป็นค่าลบหรือศูนย์ จะได้ค่าลบหรือศูนย์ เมื่อนำค่าทั้งหมดมาบวกกันแล้วเปลี่ยนเครื่องหมาย ผลลัพธ์จึงเป็นศูนย์หรือค่าบวกเสมอ
เอนโทรปีสูงสุดที่เป็นไปได้
สำหรับชุดข้อมูลที่มีค่าไม่ซ้ำกัน n ค่า เอนโทรปีจะสูงสุดเมื่อทุกค่าปรากฏบ่อยเท่ากัน ค่าสูงสุดนั้นเท่ากับ log₂(n) บิต ชุดข้อมูลที่มีค่าไม่ซ้ำกันซึ่งปรากฏบ่อยเท่ากัน 4 ค่า จะมีเอนโทรปีได้สูงสุด 2 บิต เพราะ log₂(4) = 2 การกระจายตัวที่ไม่สม่ำเสมอของค่า 4 ค่าเดียวกันจะให้เอนโทรปีต่ำกว่า
วิธีคำนวณเอนโทรปีทีละขั้นตอน
- ระบุค่าที่ไม่ซ้ำกัน ในชุดข้อมูลและนับว่าค่าแต่ละค่าปรากฏกี่ครั้ง
- หารจำนวนครั้งที่ปรากฏของแต่ละค่าด้วยจำนวนค่าทั้งหมด เพื่อหาความน่าจะเป็นของค่าไม่ซ้ำกันแต่ละค่า
- หาลอการิทึมฐาน 2 ของความน่าจะเป็นแต่ละค่า แล้วคูณด้วยความน่าจะเป็นค่าเดิม
- บวกผลคูณทั้งหมดเข้าด้วยกัน แล้วคูณผลรวมด้วย −1
เครื่องคำนวณนี้ทำทั้งสี่ขั้นตอนโดยอัตโนมัติ พิมพ์ตัวเลขลงในช่องป้อนข้อมูล โดยคั่นด้วยช่องว่างหรือจุลภาค เลือกรูปแบบที่ตรงกัน แล้วเอนโทรปี ตารางความน่าจะเป็น และแผนภูมิแท่งจะปรากฏทันที ตารางด้านล่างผลลัพธ์จะแสดงค่า จำนวนครั้งที่ปรากฏ ความน่าจะเป็น และ p(x) × log₂(p(x)) สำหรับตัวเลขที่ไม่ซ้ำกันแต่ละค่า จึงเห็นวิธีคำนวณ ไม่ใช่เพียงคำตอบสุดท้าย
กฎการป้อนค่า
- ยอมรับเฉพาะค่าตัวเลข ได้แก่ จำนวนเต็ม ทศนิยม และจำนวนลบ
- คั่นค่าด้วยช่องว่าง (ตัวอย่าง:
1 2 3 4) หรือด้วยจุลภาค (ตัวอย่าง:1,2,3,4) ตามรูปแบบที่เลือก - ชุดข้อมูลมีค่าได้สูงสุด 100,000 ค่า หากป้อนเกินจำนวนดังกล่าว ระบบจะแสดงข้อความผิดพลาดให้ใช้ชุดข้อมูลที่มีขนาดเล็กลง
- รองรับเลขในรูปสัญกรณ์วิทยาศาสตร์ ดังนั้น
1e3จะถูกอ่านเป็น 1000 - ข้อความ สัญลักษณ์ หรือรายการว่างระหว่างตัวคั่นจะถูกปฏิเสธพร้อมแสดงข้อผิดพลาด ไม่ใช่ถูกละเว้นโดยไม่มีการแจ้ง
- ตัวเลขที่ใหญ่เกินกว่าคอมพิวเตอร์จะจัดเก็บได้ เช่น
1e400ก็จะถูกปฏิเสธเช่นกัน ค่าสูงสุดที่เครื่องคำนวณรองรับได้อยู่ที่ประมาณ 1.8 x 10^308
ตัวอย่างพร้อมวิธีทำ
พิจารณาชุดข้อมูล 1 2 3 1 2 1 ซึ่งมีตัวเลขหกตัว
ขั้นแรก นับค่าที่ไม่ซ้ำกันแต่ละค่า:
| ค่า | จำนวนครั้ง | ความน่าจะเป็น |
|---|---|---|
| 1 | 3 | 3/6 = 0.5 |
| 2 | 2 | 2/6 ≈ 0.3333 |
| 3 | 1 | 1/6 ≈ 0.1667 |
จากนั้นใช้สูตรกับแต่ละแถวแล้วบวกผลลัพธ์:
ชุดข้อมูลนี้มีค่าที่ไม่ซ้ำกัน 3 ค่า ดังนั้นเอนโทรปีสูงสุดที่เป็นไปได้คือ log₂(3) ≈ 1.585 บิต ผลลัพธ์จริง 1.4591 บิต ต่ำกว่าค่าสูงสุดดังกล่าว เพราะค่า 1 ปรากฏบ่อยกว่าค่าอื่น ทำให้ชุดข้อมูลมีความสุ่มน้อยกว่าการแบ่งที่เท่ากันอย่างสมบูรณ์เล็กน้อย
ชุดข้อมูลที่ไม่มีความไม่แน่นอน
ชุดข้อมูล 5 5 5 5 5 มีค่าไม่ซ้ำกันเพียงค่าเดียว ดังนั้นความน่าจะเป็นจึงเป็น 1 เนื่องจาก log₂(1) = 0 ทุกพจน์ในผลรวมจึงเป็นศูนย์ และเอนโทรปีเท่ากับ 0 บิตพอดี ชุดข้อมูลที่ทุกค่ามีค่าเหมือนกันไม่มีสิ่งใดไม่แน่นอน
การอ่านผลลัพธ์
- เอนโทรปีใกล้เคียง 0 หมายความว่าข้อมูลมีรูปแบบซ้ำและคาดเดาได้ ค่าเพียงหนึ่งค่าหรือไม่กี่ค่ามีสัดส่วนมาก
- เอนโทรปีใกล้เคียง log₂(n) โดย n คือจำนวนค่าที่ไม่ซ้ำกัน หมายความว่าข้อมูลกระจายตัวใกล้เคียงกันในค่าที่ไม่ซ้ำกันทั้งหมด
- เอนโทรปีเท่ากับ 0 พอดี หมายความว่าทุกค่าในชุดข้อมูลเหมือนกัน
เอนโทรปีเพียงอย่างเดียวไม่ได้บอกว่าชุดข้อมูลนั้น “ดี” หรือ “ไม่ดี” ตัวสร้างรหัสผ่านต้องการเอนโทรปีสูง เพราะทำให้รหัสผ่านคาดเดาได้ยาก เซนเซอร์ที่ควรอ่านค่าอุณหภูมิคงที่ต้องการเอนโทรปีต่ำ เพราะหมายความว่าค่าที่อ่านได้มีความคงที่
การใช้งานเอนโทรปีของแชนนอน
- การเรียนรู้ของเครื่อง: อัลกอริทึมต้นไม้ตัดสินใจใช้เอนโทรปีเพื่อตัดสินว่าคุณลักษณะใดแบ่งชุดข้อมูลออกเป็นกลุ่มที่คาดเดาได้ดีที่สุด
- การบีบอัดข้อมูล: เอนโทรปีกำหนดขีดจำกัดทางทฤษฎีว่าจะแบีบอัดไฟล์ให้มีขนาดเล็กได้เพียงใดโดยไม่สูญเสียสารสนเทศ
- วิทยาการเข้ารหัส: เอนโทรปีใช้วัดระดับความคาดเดาไม่ได้ของรหัสผ่านหรือกุญแจเข้ารหัสลับ
- พันธุศาสตร์: เอนโทรปีช่วยเน้นบริเวณที่ผิดปกติหรือมีความแปรผันสูงในลำดับดีเอ็นเอ
- การวิเคราะห์ข้อความ: การถือว่าตัวอักษรหรือคำเป็น “ค่า” ทำให้เอนโทรปีใช้วัดได้ว่าข้อความส่วนหนึ่งคาดเดาได้เพียงใด
คำถามที่พบบ่อย
เอนโทรปีในทฤษฎีสารสนเทศคืออะไร? เป็นตัวเลขที่วัดว่าชุดข้อมูลมีความไม่แน่นอนหรือคาดเดาได้ยากเพียงใด คำนวณจากความน่าจะเป็นของค่าไม่ซ้ำกันแต่ละค่าในข้อมูล ไม่ใช่จากค่าของข้อมูลเอง
คำนวณเอนโทรปีของแชนนอนด้วยตนเองอย่างไร? นับว่าค่าไม่ซ้ำกันแต่ละค่าปรากฏบ่อยเพียงใด หารจำนวนครั้งที่ปรากฏด้วยจำนวนทั้งหมดเพื่อหาความน่าจะเป็น คูณความน่าจะเป็นแต่ละค่าด้วยลอการิทึมฐาน 2 ของค่านั้น บวกผลลัพธ์เข้าด้วยกัน แล้วคูณด้วย −1
เอนโทรปีเป็นค่าลบได้หรือไม่? ไม่ได้ ค่าต่ำสุดที่เป็นไปได้คือ 0 บิต ซึ่งเกิดขึ้นเมื่อทุกค่าในชุดข้อมูลเหมือนกัน
เอนโทรปีสูงสุดของชุดข้อมูลคือเท่าใด? ค่าสูงสุดคือ log₂(n) บิต โดย n คือจำนวนค่าที่ไม่ซ้ำกัน และจะเกิดขึ้นก็ต่อเมื่อค่าไม่ซ้ำกันทุกค่าปรากฏบ่อยเท่ากัน
มีข้อจำกัดด้านขนาดชุดข้อมูลหรือไม่? มี เครื่องคำนวณนี้รองรับค่าได้สูงสุด 100,000 ค่าในชุดข้อมูลเดียว หากป้อนข้อมูลมากกว่านี้ ระบบจะแสดงข้อผิดพลาด
เอนโทรปีแตกต่างจากความแปรปรวนอย่างไร? ความแปรปรวนวัดว่าค่าตัวเลขกระจายห่างจากค่าเฉลี่ยเพียงใด ส่วนเอนโทรปีวัดว่ารูปแบบของผลลัพธ์คาดเดาได้ยากเพียงใด โดยพิจารณาจากความน่าจะเป็นเท่านั้น ไม่ขึ้นกับขนาดจริงของตัวเลข
เอกสารอ้างอิง
- แชนนอน, C. E. (1948). A Mathematical Theory of Communication. Bell System Technical Journal, 27(3), 379–423.
- Cover, T. M., และ Thomas, J. A. (2006). Elements of Information Theory (พิมพ์ครั้งที่ 2). Wiley-Interscience.
- MacKay, D. J. C. (2003). Information Theory, Inference, and Learning Algorithms. Cambridge University Press.