ส่วนย่อยของตัวอักษรละตินที่มองเห็นและคลุมเครือ


13

ลองนึกภาพคุณให้บัตรกับรหัส "5SBDO0" กับใครสักคนในนั้น

ในแบบอักษรบางตัวอักษร "S" เป็นการยากที่จะแยกความแตกต่างจากตัวเลขห้าอย่างเห็นได้ชัด (เช่นเดียวกับเลขศูนย์และตัวอักษร "O")

การอ่านรหัสออกมาดัง ๆ อาจเป็นเรื่องยากที่จะแยกความแตกต่าง "B" จาก "D" โดยจำเป็นต้องพูดว่า "B เหมือนในเด็กผู้ชาย" "D เหมือนสุนัข" หรือใช้ " สัทอักษร " แทน

อะไรคือเซตย่อยของตัวอักษรและตัวเลขที่ใหญ่ที่สุดซึ่งโดยส่วนใหญ่แล้วทั้งสองจะดูคลุมเครือด้วยสายตาและฟังดูคลุมเครือเมื่ออ่านออกเสียง?


พื้นหลัง:

เราต้องการสร้างสตริงสั้น ๆ ที่สามารถเข้ารหัสค่าได้มากเท่าที่จะเป็นไปได้ในขณะที่ยังสื่อสารได้ง่าย

ลองนึกภาพคุณมีสตริง 6 ตัวอักษร "123456" ในฐาน 10 นี้สามารถเข้ารหัสค่า10 ^ 6

ในเลขฐานสิบหก "1B23DF" คุณสามารถเข้ารหัสค่า16 ^ 6 ในจำนวนอักขระที่เท่ากัน แต่สามารถฟังดูคลุมเครือเมื่ออ่านออกเสียง ("B" กับ "D")

เช่นเดียวกันกับสตริง N ตัวใด ๆ คุณจะได้รับ (ขนาดตัวอักษร) ค่า ^ N

สตริงจะถูก จำกัด อยู่ที่ความยาวประมาณหกตัวอักษรเนื่องจากต้องการที่จะพอดีกับได้อย่างง่ายดายภายในความจุของหน่วยความจำในการทำงานของมนุษย์

ดังนั้นเพื่อหาจำนวนสูงสุดของค่าที่เราสามารถเข้ารหัสได้เราจำเป็นต้องค้นหาชุดตัวอักษร / ตัวเลขที่ใหญ่ที่สุดที่คลุมเครือ ไม่มีเหตุผลที่เราไม่สามารถพิจารณาตัวอักษร GZ และเครื่องหมายวรรคตอนทั่วไปบางอย่าง แต่ฉันไม่ต้องการที่จะไปเปรียบเทียบด้วยตนเองแบบคู่กัน "G เสียงเหมือน A?", "G เสียงเหมือน B?", "ไม่ จีเสียงเหมือน C "ตัวฉันเอง ในขณะที่เรารู้ว่านี่จะเป็นงานทางภาษา O (n ^ 2) ที่ต้องทำ =) ...


6
โปรดทราบว่าตัวอักษรที่ออกเสียงคล้ายกันอาจแตกต่างกันมากระหว่างภาษา ...
Michael Borgwardt

นอกจากนี้สิ่งที่แน่นอนคืออักษรละติน?
MSalters

ดูคำตอบของฉันในคำถาม StackOverflow ที่เกี่ยวข้อง
MSalters

สำหรับความแตกต่างที่มองเห็นฐาน 32คือการเข้ารหัสมาตรฐานที่ จำกัด ความคล้ายคลึงกันของสัญลักษณ์
barjak

@MSalters "ละตินสคริปต์" เป็นแนวคิดทางภาษาศาสตร์สำหรับวัตถุประสงค์ของเราฉันหมายถึง "เลือกจากชุดย่อยของสคริปต์ละตินที่แปลงเป็น Unicode" เช่นen.wikipedia.org/wiki/ISO/IEC_8859-1
elliot42

คำตอบ:


15

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

  • { O , 0 , Q , D }

  • { I , L , 1 }

  • { B , 8 }

  • { Z , 2 }

  • { S , 5 }

  • { 7 , T }

  • { U , V , Y }

อักขระพาร์ติชันที่มีความคล้ายคลึงกันในการออกเสียงของการออกเสียงชื่อ:

  • { A [ʔeɪ], 8 [ʔeɪ (ʔ / t)]}
    = เริ่มต้นด้วย [ʔeɪ]

  • { P [pi:], B [bi:], V [vi:], D [di:], T [ti:], E [ʔi:]}
    = = หยุด / เสียดแทรก + [i:]

  • { G [ʤi:], C [si:], Z [zi:], 3 [θɹi:]}}
    = เสียงเสียดแทรก / affricate (กลุ่ม) + [i:]

  • { M [ɛm], N [ɛn]}
    = [ɛ] + จมูก

  • { S [ɛs], F [ɛf], X [ɛks]}
    = [ɛ] + fricative / affricate

  • { I [ʔaɪ], Y [waɪ], 5 [faɪv], 9 [naɪn]}
    = พยัญชนะ + [aɪ] + (พยัญชนะ)

  • { Q [kjʉ:], U [jʉ:], 2 [t (j) ʉ:]}
    = พยัญชนะ + [(j) ʉ:]

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


3
สำหรับการเริ่มต้นด้วยความคล้ายคลึงกันของการได้ยินให้ดูที่การสื่อสารทางวิทยุเช่นคู่มือการดำเนินการควบคุมการจราจรทางอากาศ (ที่การสื่อสารด้วยวาจาต้องตีความได้อย่างถูกต้อง ตัวอย่างเช่น 5 และ 9 นั้นง่ายต่อการคลุกเคล้าจึงพูดว่า "ห้า" และ "เก้าตัว"
mattnz

@mattnz: ขอบคุณฉันลืม 5 และ 9 คุณภาพเสียงเป็นปัจจัยใหญ่เช่นกัน: วิทยุ, โทรศัพท์, สตูดิโอบันทึกเสียงและการสื่อสารด้วยตัวเองล้วนก่อให้เกิดปัญหาเฉพาะของตนเอง
Jon Purdy

1
ในทางเทคนิคแล้วนั่นคือ "niner" สี่คือ "fower"
Patrick Hughes

3

คุณสามารถใช้Mechanical Turkเพื่อให้คนจริงให้คะแนนตัวอักษรทั้งหมด 26 ^ 2 คู่สำหรับความคล้ายคลึงกันทางหูและการมองเห็น ข้อได้เปรียบคือคุณสามารถรับข้อมูลสำหรับภาษาท้องถิ่นต่างๆด้วยวิธีนี้


1

สำหรับภาษาอังกฤษอัลกอริทึมSoundexและMetaphoneเข้ารหัสซึ่งเสียงที่ไม่ชัดเจน Soundex นั้นอาจจะง่ายเกินไป แต่ Metaphone ได้รวมคะแนนที่ดีไว้ คุณต้องการลำดับ "OU" หรือไม่ ที่สามารถออกเสียงได้หลายวิธีในขณะที่ประโยคนี้ demontrates;)


0

คำตอบของ Jon Purdy ข้างต้นดูเหมือนถูกต้องที่สุด เพื่อวัตถุประสงค์ในทางปฏิบัติฉันพยายามz-base-32เข้ารหัส base32 ที่ไม่ได้มาตรฐานออกแบบมาโดยคำนึงถึงความสามารถในการสื่อสาร ดูเหมือนว่าใช้งานได้ แต่ไม่เหมาะ - ตัวอย่างเช่นพวกเขาไม่ได้มุ่งเน้นไปที่การพูดแก้ความกำกวมอย่างชัดเจน

http://philzimmermann.com/docs/human-oriented-base-32-encoding.txt

http://pypi.python.org/pypi/zbase32/

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.