การวิเคราะห์ข้อความความถี่: คุณสมบัติและตัวอย่าง

สารบัญ:

การวิเคราะห์ข้อความความถี่: คุณสมบัติและตัวอย่าง
การวิเคราะห์ข้อความความถี่: คุณสมบัติและตัวอย่าง
Anonim

คุณได้พบกับแนวคิดนี้มากกว่าหนึ่งครั้งในชีวิต ถ้าคุณต้องทำงานกับข้อความ โดยเฉพาะอย่างยิ่ง คุณสามารถเปลี่ยนไปใช้เครื่องคิดเลขออนไลน์ที่วิเคราะห์ความถี่ของข้อความได้อย่างแม่นยำ เครื่องมือที่มีประโยชน์เหล่านี้แสดงจำนวนครั้งที่อักขระหรือตัวอักษรหนึ่งๆ เกิดขึ้นในข้อความใดๆ มักจะแสดงเปอร์เซ็นต์ด้วย ทำไมสิ่งนี้จึงจำเป็น? การวิเคราะห์ความถี่ของข้อความมีส่วนทำให้เกิด "การแตก" ของการเข้ารหัสอย่างง่ายอย่างไร สาระสำคัญของมันคืออะไรใครเป็นคนคิดค้นมัน? เราจะตอบคำถามเหล่านี้และคำถามสำคัญอื่น ๆ ในหัวข้อในบทความ

คำจำกัดความ

การวิเคราะห์ความถี่เป็นหนึ่งในความหลากหลายของการเข้ารหัส มันขึ้นอยู่กับสมมติฐานของนักวิทยาศาสตร์เกี่ยวกับการดำรงอยู่ของการกระจายตัวแบบไม่สำคัญทางสถิติของอักขระแต่ละตัวและลำดับปกติของอักขระทั้งในรูปแบบข้อความธรรมดาและตัวเลข

เชื่อกันว่าการแจกจ่ายดังกล่าว จนถึงการแทนที่ของอักขระแต่ละตัว จะถูกเก็บรักษาไว้ในกระบวนการเข้ารหัส/ถอดรหัส

การวิเคราะห์ความถี่ของระบบ
การวิเคราะห์ความถี่ของระบบ

ลักษณะกระบวนการ

ตอนนี้ มาดูการวิเคราะห์ความถี่ในแง่ง่ายๆ กัน นี่หมายความว่าจำนวนครั้งที่เกิดขึ้นของตัวอักษรเดียวกันในข้อความที่มีความยาวเพียงพอจะเท่ากันในข้อความต่างๆ ที่เขียนในภาษาเดียวกัน

แล้วการเข้ารหัสแบบ monoalphabetic ล่ะ? สันนิษฐานว่าหากมีอักขระที่มีความเป็นไปได้คล้ายกันที่จะเกิดขึ้นในส่วนที่มีข้อความเข้ารหัส ก็ถือว่าสมจริงที่จะถือว่ามันคือตัวอักษรที่เข้ารหัส

ผู้ติดตามการวิเคราะห์ข้อความความถี่ใช้เหตุผลเดียวกันกับไดแกรม (ลำดับของตัวอักษรสองตัว) Trigrams - นี้สำหรับกรณีของการเข้ารหัสแบบหลายตัวอักษรอยู่แล้ว

ประวัติวิธีการ

การวิเคราะห์ความถี่ของคำไม่ใช่การค้นหาความทันสมัย เป็นที่รู้จักในโลกวิทยาศาสตร์ตั้งแต่ศตวรรษที่ 9 การสร้างมีความเกี่ยวข้องกับชื่อ Al-Kindi

แต่กรณีที่ทราบกันดีอยู่แล้วว่าการประยุกต์ใช้วิธีการวิเคราะห์ความถี่นั้นเป็นของยุคหลังมาก ตัวอย่างที่โดดเด่นที่สุดคือการถอดรหัสอักษรอียิปต์โบราณซึ่งผลิตขึ้นในปี พ.ศ. 2365 โดย J.-F. Champollion

ถ้าเรากลายเป็นนิยาย เราจะพบข้อมูลอ้างอิงที่น่าสนใจมากมายเกี่ยวกับวิธีการถอดรหัสนี้:

  • โคนัน ดอยล์ - "The Dancing Men".
  • จูลส์เวิร์น - "ลูกของกัปตันแกรนท์".
  • Edgar Poe - "แมลงทอง".

อย่างไรก็ตาม ตั้งแต่กลางศตวรรษที่ผ่านมา อัลกอริธึมส่วนใหญ่ที่ใช้ในการเข้ารหัสได้รับการพัฒนาโดยคำนึงถึงความต้านทานต่อการเข้ารหัสความถี่ดังกล่าว ดังนั้นมันวันนี้พวกเขามักจะใช้สำหรับการฝึกอบรม cryptographers ในอนาคตเท่านั้น

การวิเคราะห์ความถี่ข้อความ
การวิเคราะห์ความถี่ข้อความ

วิธีพื้นฐาน

ตอนนี้ขอนำเสนอการวิเคราะห์การตอบสนองความถี่โดยละเอียด การวิเคราะห์ประเภทนี้ขึ้นอยู่กับข้อเท็จจริงที่ว่าการทดสอบประกอบด้วยคำและตัวอักษรเหล่านั้น ตัวอักษรประจำชาติมีจำนวนจำกัด สามารถระบุตัวอักษรได้ที่นี่

ลักษณะที่สำคัญที่สุดของข้อความดังกล่าวจะเป็นทั้งการซ้ำตัวอักษร, บิ๊กแรมต่างๆ, ตรีแกรมและ n-grams ตลอดจนความเข้ากันได้ของตัวอักษรต่างๆ ที่เชื่อมต่อกัน, การสลับพยัญชนะ / สระและอื่น ๆ ความหลากหลายของสัญลักษณ์เหล่านี้

แนวคิดหลักของวิธีการคือการนับจำนวนการเกิดขึ้นของ n-grams ที่เป็นไปได้ (แสดงด้วย nm) ในข้อความธรรมดาที่ยาวเพียงพอสำหรับการวิเคราะห์ (แสดงโดย T=t1t2…tl) ประกอบด้วยตัวอักษรของตัวอักษรประจำชาติ (แสดงโดย {a1, a2, …, an}) จากทั้งหมดที่กล่าวมาทำให้เกิดข้อความต่อเนื่องกันเป็นจำนวน m-gram:

t1t2…tm, t2t3… tm+1, …, ti-m+1tl-m+2…tl.

หากเป็นจำนวนครั้งของ m-gram ai1ai2…ตั้งเป้าไปที่ข้อความ T และ L คือจำนวนรวมของ m-grams ที่ผู้วิจัยวิเคราะห์ ก็สามารถสรุปได้ว่าสำหรับ L ขนาดใหญ่เพียงพอ ความถี่สำหรับ m-gram ดังกล่าวจะแตกต่างกันเล็กน้อย

การวิเคราะห์ความถี่
การวิเคราะห์ความถี่

ตัวอักษรที่ใช้บ่อยของตัวอักษรรัสเซีย

แต่การวิเคราะห์ความถี่เวลา แม้จะชื่อคล้ายกัน แต่ก็ไม่เกี่ยวอะไรกับหัวข้อสนทนาของเรา การวิเคราะห์ประเภทนี้ดำเนินการเพื่อสัญญาณจากสถานีเรดาร์ที่สังเกตได้ต่ำโดยใช้การแปลงเวฟเล็ตแบบพิเศษ

ตอนนี้กลับไปที่หัวข้อหลักกัน เมื่อทำการวิเคราะห์ความถี่ คุณสามารถค้นหาตัวอักษรของตัวอักษรรัสเซียตัวใดที่มักพบในข้อความจำนวนมาก (ร้อยละ 0.062 ถึง 0.018):

  • A.
  • V.
  • D.
  • F.
  • I.
  • K.
  • ม.
  • O.
  • ร.
  • T.
  • F.
  • T.
  • ช.
  • b.
  • E.
  • I.

แม้แต่กฎช่วยจำพิเศษได้รับการแนะนำ ซึ่งช่วยให้เรียนรู้อักษรทั่วไปของตัวอักษรรัสเซีย การทำเช่นนี้ แค่จำคำเดียว - "hayloft" ก็พอ

ในกรณีทั่วไป ความถี่ของการใช้ตัวอักษรในเงื่อนไขแบบเปอร์เซ็นต์นั้นง่าย: ผู้เชี่ยวชาญจะนับจำนวนตัวอักษรที่เกิดขึ้นในข้อความ จากนั้นหารค่าผลลัพธ์ด้วยจำนวนอักขระทั้งหมดในข้อความ และเพื่อแสดงค่านี้เป็นเปอร์เซ็นต์ ก็เพียงพอที่จะคูณด้วย 100

สิ่งสำคัญคือต้องคำนึงว่าความถี่จะขึ้นอยู่กับระดับเสียงของข้อความเท่านั้น แต่ยังขึ้นกับลักษณะของข้อความด้วย ตัวอย่างเช่น ในแหล่งข้อมูลทางเทคนิค ตัวอักษร "F" ปรากฏบ่อยกว่าในนิยาย ดังนั้นเพื่อผลลัพธ์ที่เป็นรูปธรรม ผู้เชี่ยวชาญต้องพิมพ์ข้อความที่มีลักษณะและรูปแบบต่างๆ เพื่อการวิจัย

โปรแกรมวิเคราะห์ความถี่ข้อความ
โปรแกรมวิเคราะห์ความถี่ข้อความ

Bi- สาม- สี่กรัม

ในข้อความที่มีความหมาย คุณสามารถค้นหาคำที่พบบ่อยที่สุดได้ (ตามลำดับ มากที่สุดซ้ำ) การรวมกันของตัวอักษรสองตัวหรือมากกว่า ผู้เชี่ยวชาญยังได้รวบรวมตารางหลายตาราง ซึ่งระบุความถี่ของไดแกรมที่คล้ายกันของตัวอักษรต่างๆ

สำหรับภาษารัสเซีย การวิเคราะห์ความถี่ของระบบข้อความที่มีความหมายมากมายทำให้สามารถกำหนด bigrams และ trigrams ที่พบบ่อยที่สุดได้:

  • EN.
  • ST.
  • BUT.
  • NOT.
  • เปิด.
  • RA.
  • OV.
  • KO.
  • VO.
  • STO.
  • ใหม่
  • ENO.
  • TOV.
  • OVA.
  • OVO.

ความสัมพันธ์ที่ต้องการของจดหมายถึงกัน

และนี่ไม่ใช่ความเป็นไปได้ทั้งหมดที่การวิเคราะห์ความถี่สามารถมอบให้กับนักวิจัยข้อความได้ การจัดระบบข้อมูลจากตาราง bigrams และ trigrams ที่คล้ายคลึงกันทำให้สามารถดึงข้อมูลเกี่ยวกับตัวอักษรทั่วไปส่วนใหญ่ได้ หรืออีกนัยหนึ่งคือความสัมพันธ์ที่พวกเขาชอบกัน

การศึกษาอย่างละเอียดดังกล่าวได้ดำเนินการโดยผู้เชี่ยวชาญแล้ว ผลลัพธ์ของมันคือตารางที่ระบุเพื่อนบ้านพร้อมกับตัวอักษรแต่ละตัว ยิ่งกว่านั้นตัวละครเหล่านั้นที่มักจะพบทั้งก่อนและหลังมัน ตัวอักษรในตารางไม่ได้สะกดออกมาโดยบังเอิญ ใกล้กับสัญลักษณ์จะมีการระบุเพื่อนบ้านบ่อยที่สุดเพิ่มเติม - หายากมากขึ้น

พิจารณาตัวอย่าง:

  • ตัวอักษร "A". การเชื่อมต่อที่ต้องการต่อไปนี้มีความโดดเด่นที่นี่: l-d-k-t-v-r-n-A-l-n-s-t-r-v-to-m จากนี้เราจะเห็นว่าส่วนใหญ่ก่อน "A" ในตำราจะมี "H" ("NA") และหลังจาก "A" บ่อยที่สุดในข้อความในภาษารัสเซียเราสามารถพบ "L"("AL")
  • ตัวอักษร "ม". ผู้เชี่ยวชาญระบุการเชื่อมต่อที่ต้องการดังกล่าว: "I-s-a-i-e-o-M-i-e-o-u-a-n-p-s"
  • ตัวอักษร "b". การเชื่อมต่อที่ต้องการมีดังนี้: "n-s-t-l-b-n-k-v-p-s-e-o-i"
  • จดหมาย "ช". การเชื่อมต่อที่ต้องการ: "e-b-a-i-u-Sch-e-i-a".
  • ตัวอักษร "ป". การเชื่อมต่อที่ต้องการกับสัญลักษณ์ตัวอักษรรัสเซียนี้: "v-s-u-a-i-e-o-P-o-r-e-a-u-i-l"
การวิเคราะห์ความถี่เวลา
การวิเคราะห์ความถี่เวลา

การวิเคราะห์กำหนดอะไร

โปรแกรมวิเคราะห์ข้อความความถี่สมัยใหม่ช่วยในการศึกษาบทความ เรียงความ เนื้อเรื่อง และอื่นๆ ในปริมาณมาก ข้อมูลต่อไปนี้มอบให้กับผู้วิจัยตามมาตรฐาน:

  • จำนวนตัวอักษรทั้งหมดในข้อความ
  • จำนวนช่องว่างที่ผู้เขียนใช้
  • จำนวนหลัก
  • ข้อมูลเกี่ยวกับเครื่องหมายวรรคตอนที่ใช้ - จุด จุลภาค ฯลฯ
  • จำนวนตัวอักษรในแต่ละตัวอักษรที่มี - Cyrillic, Latin, etc.
  • ข้อมูลเกี่ยวกับความถี่ในการใช้ตัวอักษรและสัญลักษณ์แต่ละตัวในข้อความ - จำนวนการกล่าวถึงและเปอร์เซ็นต์เทียบกับข้อความทั้งหมด

ต่อสู้กับการปรับให้เหมาะสมมากเกินไปและความอิ่มตัวของสี

ทำไมจึงทำการวิเคราะห์ความถี่ข้อความ มันเป็นเพียงเพื่อจุดประสงค์ของความอยากรู้ - เพื่อกำหนดว่าอักขระใดในข้อความที่เขียนขึ้นซึ่งมักพบบ่อย? ไม่ การวิเคราะห์แบบหลักๆ นั้นใช้ได้จริง และอยู่ในที่อื่น

N-grams ไม่เพียงแต่มี bigrams และ trigrams ที่เสถียรเท่านั้น ไปเหมือนกันหมวดหมู่รวมถึงคำหลัก (แท็ก) การจัดระเบียบ นั่นคือชุดค่าผสมที่เสถียรซึ่งประกอบด้วยคำสองคำขึ้นไป พวกเขามีความโดดเด่นด้วยความจริงที่ว่าองค์ประกอบดังกล่าวเกิดขึ้นพร้อมกันในข้อความและในขณะเดียวกันก็มีความหมายบางอย่าง

สิ่งนี้อยู่ในมือของผู้เชี่ยวชาญด้าน SEO ที่ไร้ยางอาย ในงานของพวกเขา บางครั้งพวกเขาใช้แท็กและคำหลักซ้ำๆ ในข้อความในทางที่ผิด เพื่อเพิ่มความเกี่ยวข้องของหน้าเว็บบางหน้า พวกเขากำลังพยายามหลอกลวงระบบด้วย "กลอุบาย" เช่นนี้: เปลี่ยนการผสมผสานที่เป็นธรรมชาติด้วยการผสมคำตามปกติซึ่งเป็นแบบดั้งเดิมสำหรับภาษารัสเซีย ("ซื้อขนมิงค์") ให้กลายเป็นคำที่ไม่สอดคล้องกัน นั่นคือได้จากการจัดเรียงคำใน N-gram ตามธรรมชาติ ("buy a mink coat")

แต่วันนี้ อัลกอริธึมการค้นหาได้เรียนรู้ที่จะตรวจจับการเพิ่มประสิทธิภาพมากเกินไปเช่นเดียวกับสแปมเกิน - ความอิ่มตัวของข้อความด้วยคำหลัก แท็กที่ส่งผลต่อการจัดอันดับผลลัพธ์บนหน้าการค้นหา ในทางกลับกัน หน้าที่ปรับให้เหมาะสมที่สุดแล้ว กลับถูกจัดอันดับที่ต่ำกว่าตามคำค้นหาของผู้ใช้ และตัวคนเองมักไม่อ่านข้อความที่ไร้ความหมาย ใช้ข้อความแท็กมากเกินไป โดยเลือกข้อมูลที่เป็นประโยชน์จากแหล่งข้อมูลอื่น

วิธีวิเคราะห์ความถี่
วิธีวิเคราะห์ความถี่

ช่วยวิเคราะห์ส่วนตัวสำหรับผู้เชี่ยวชาญ SEO

ดังนั้น ตัวกรองข้อความของเครื่องมือค้นหาสมัยใหม่ในปัจจุบันจึงให้ความสำคัญกับหน้าอินเทอร์เน็ตเหล่านั้นมากกว่า ข้อมูลที่ไม่เพียงแต่อ่านง่าย แต่ยังมีประโยชน์สำหรับผู้เยี่ยมชมอีกด้วย เพื่อเพิ่มประสิทธิภาพการทำงานสำหรับมาตรฐานใหม่ ผู้เชี่ยวชาญ SEOและหันไปวิเคราะห์ความถี่ของข้อความ วันนี้มีบริการยอดนิยมมากมาย

การวิเคราะห์ความถี่ช่วยในการทบทวนข้อความที่เตรียมไว้สำหรับการเผยแพร่เพื่อเป็นข้อมูล ขจัดความซ้ำซ้อนของแท็กและวลีสำคัญที่ไม่จำเป็น นอกจากนี้ยังช่วยให้คุณสามารถดึงความสนใจของผู้เขียนไปยังการใช้คำที่ก่อให้เกิดความสงสัยในตัวกรองข้อความของเครื่องมือค้นหา

การวิเคราะห์การตอบสนองความถี่
การวิเคราะห์การตอบสนองความถี่

การวิเคราะห์ความถี่ของข้อความจึงช่วยในการกำหนดความถี่ของการกล่าวถึงอักขระบางตัวในแหล่งที่มา วิธีการนี้ถูกใช้ในปัจจุบันเพื่อประเมินข้อความที่มากเกินไปด้วยแท็ก การเรียงสับเปลี่ยนของคำที่ผิดธรรมชาติ

แนะนำ: