Soundex • Александр Пиперский • «Элементтер» бойынша ғылыми-танымал проблемалар • Лингвистикаға

Soundex

Soundex – тиісті аттарды кодтау алгоритмі. 1918-1922 жылдары құрылды. АҚШ-та, Роберт Расселл мен Маргарет Кент Оделл сияқты ұқсас дыбыстарды іздеуге көмектеседі. ХХ ғасырдың ортасында Soundex 1890-1920 жж. Халық санағының нәтижелерін талдау үшін АҚШ-та кеңінен қолданылады. Төменде 1910 жылғы санақ картасының мысалы келтірілген, мұнда Wilson тегі үшін Soundex код W425 сияқты көрінеді:

Тапсырма

Түпнұсқалардың тізімі және олардың сәйкес Soundex кодтары шатастырылған тәртіпте беріледі. Кейбір таңбалар жоқ:

Бәрібір, Андерсон, Ashcombe, Букингем, Чэпман, Colquhoun, Эванс, Fairwright, Kingscott, Льюис, Littlejohns, Stanmore, Stubbs, Tocher, Тонки, Негепеда

S312, T␣6␣, ␣5␣3, C42␣, T520, L␣42, A536, C155, 623, S356, 252, ␣152, ␣330, A251, A400, L2␣0

1-міндет. Soundex кодының қалай жасалатынын сипаттаңыз.

2-міндет. Soundex атауларын және кодтарын сәйкестендіріп, жетпейтін таңбаларды кірістіріңіз.

3-міндет. Төмендегі атауларға арналған Soundex кодтарын жасаңыз: Фергюсон, Фицджеральд, Хаметт, Keefe, Максвелл, Разей, Шоу, Upfield.


Кеңестер

Әрбір әріп әріптен және үш нөмірден тұрады. Хатта соңғы аттың бірінші әрпі қайталанады және сандар келесі атаудағы үнсіздіктерді кодтайды.


Шешім

Soundex барлық кодтары латын әріптерінен және үш саннан тұрады. Тегі үшін кодты неге түсіну қиын емес Уилсон басталады W: себебі бұл фамилияның бірінші әрпі.

Алғашқы әріп сақталғаны анықталғаннан кейін, тапсырма шатастырылған хат-хабарлармен алты кішкене тапсырмаға бөлінеді:

Бәрібір, Андерсон, Ashcombe
A536, A251, A400

Чэпман, Colquhoun
C42␣, C155

Льюис, Littlejohns
L␣42, L2␣0

Stanmore, Stubbs
S312, S356

Tocher, Тонки
T␣6␣, T520

Букингем, Эванс, Fairwright, Kingscott, Негепеда
␣5␣3, ␣623, ␣252, ␣152, ␣330

Естеріңізге сала кетейік, Soundex – алгоритмі, ол ұқсас дыбыс сөздерді табу үшін арналған. Мүмкін сандар кейбір тән дыбысын кодтауы мүмкін. Фамилиядағы үндестірілген хаттарға сәйкес келетіндігін болжауға болады. Шын мәнінде, тек алты сан, бірдей сан барлық үнсіз топтарды кодтайды дегенді білдіреді.

Бұл топтар:

bpv (f)cgjkqs (xz)dtлмнr
123456

Soundex-та әріптерді жіктеу дыбыстарды олардың қалай анықталғанына қарай сәйкес келеді: 1-топ ернінің қатысуымен айтылған үндестелерді қамтиды; 2-топта, тілдің арт жағынан және үнсіздікпен айтылған үндестіктер; 3-топ – алдын-ала тілдік окклюзал (d және t); 5-топта – мұрын. Бұдан шығатын болсақ, топтарға бөлуге болады, ал біз көрмеген әріптерді (кестеде олар жақшаларда берілген). Хат f 1-топқа зертханалық үндеулерге түседі (қазірдің өзінде бар vжұп f саңырау сөз), және x және z – 2-топта (x тұрады k және с2-топта орналасқан, бірақ z – қоңырау шалу жұбы с). Хаттар с және w Бұл кесте қосылмаған: олар Soundex кодын генерациялау кезінде еленбейді. Хат үшін де солай. yағылшын тілінде дауысты сөз болып саналады.

Бір топтағы үнсіздік тіркесімдерінің кодының бір ғана санына сәйкес келетінін байқайсыз. Мысалы, тегі кодтарындағы деректерден Kingscott тек 5 жауапты ␣5␣3-ге сәйкес келеді n, 3 – үшін tал ортасында нөмір жауапты болуы керек g, с және с (анық, бұл 2 нөмір).

Кодадағы нөлдер үндестірушілердің үш позицияны толтыру үшін жеткіліксіз болған жағдайларға сәйкес келеді. Мысалы, оны орнатуға болады Бәрібір – бұл A400, мұнда екі л 4-ке сәйкес келеді а, w, а және y кодтауға қатыспаңыз.

Тапсырмаға жауап 1. Барлық осы ескертулерді қорытындылай отырып, біз кодтау алгоритмін құрастыра аламыз. Барлық кодтарды қатесіз алуға мүмкіндік беретін операциялардың тәртібіне назар аудару керек.

1. Бірінші әріпті өзгертпеңіз.

2. Жою с және w.

3. Барлық сандарды сандармен ауыстырыңыз (әріптер, ең жиі оқылатындар ұқсас, топтарға біріктіріледі):

bfpvcgjkqsxzdtлмнr
123456

4. Біреуіне бір немесе одан да көп сандар бірдей етіп азайтады.

5. Барлық үндеткіштерді (а, e, i, o, u, y).

6. Алғашқы үш цифраны қалдырыңыз немесе кодтың ұзындығы бір әріп пен үш сан болатын етіп оң жаққа нөлдерді қосыңыз.

Тапсырмаға жауап 2 (қалпына келтірілген таңбалар сызылған).

Бәрібір: A400, Андерсон: A536, Ashcombe: A251, Букингем: B252, Чэпман: C155, Colquhoun: C425, Эванс: E152, Fairwright: F623, Kingscott: K523, Льюис: L200, Littlejohns: L342, Stanmore: S356, Stubbs: S312, Tocher: T260, Тонки: T520, Негепеда: W330.

Тапсырмаға жауап 3.

Фергюсон: F622, Фицджеральд: F326, Хаметт: H530, Keefe: K100, Максвелл: M240, Разей: R200, Шоу: S000, Upfield: U143.


Кейінгі сөз

Soundex алгоритмі қолданылған (кейде әлі күнге дейін қолданылуда) мәселе әдетте ізделмеген жолды іздеу деп аталады (шамамен жолды сәйкестендіру, анық емес жол іздеу).

Екі тілдің эквивалентін білу қабілеті адам тілін білудің маңызды бөлігі болып табылады. Бұл қабілет әртүрлі деңгейде көрінуі мүмкін. Мысалы, семантиканың (сөздің мағынасы) және синтаксис (фразалар мен сөйлемдегі сөздердің арасындағы байланыстар) деңгейінде, ресейлік спикер сөз тіркестерінің Ол жүз секундтық қашықтықты 45 секундтан кейін суға батырып жіберді, Жүз метрге жетіп, оны 45 секундқа созды. және Ол ¾ минутта үңгірді айналдырды (Apresyan 1995: I, 12) сол сияқты. Сол сияқты, әріптер деңгейінде де біз мұны оңай түсінеміз Муравьев және Муравьев – бұл тегі бірдей, бірақ Наталья және Наталья – сол атау (бірақ сіз кінәні тапқыңыз келсе, біз жалған сөйлей аламыз: «Ал, әрине, айтады Наталья Муравьева, ал сізде паспорт бар – Наталья Муравьева«).Бірақ дәл сәйкес келмейтін сөздер мен сөз тіркестерінің эквиваленттігін түсіну үшін осындай негізгі қабілетті автоматтандыру өте қиын міндет.

Мұндай келіспеушіліктер іс жүзінде үнемі орын алады. Soundex бастапқыда тиісті атауларды салыстыру үшін ойлап тапты, себебі 20-шы ғасырдың басында өз аттарымен жазудың вариациясы қазірден әлдеқайда жоғары болды, бірақ қазір ол мүлдем нөлге дейін азайған жоқ. Осылайша, кітабы (Lisbach, Meyer 2013: 15) сол адам туралы ақпаратты жазуға арналған екі нұсқаның мысалын келтіреді – мысалы, қоңырау орталығындағы тыңдаудан және құжаттарды өрістерге бөлу арқылы қайта жазғанда:

Kate suzanne jankowiz
Белгілі қ. 20, 65920 Frankfurt am Main (Германия)
КэтринСьюзанДженниферYankovits-brunner
20БеллеривестрасФранкфурт / М65920DE

Soundex-тің маңызды артықшылығы, оны көптеген жолдарда оның танымалдығын қамтамасыз етеді, атап айтқанда, бұл алгоритм үшін сөздік қажет емес. Soundex Дональд Нуттың классикалық бағдарламалау бағдарламасында (Knuth 1998: 395-396) аталған. Дегенмен, бірінші басылымда (Knuth 1973: 391-392) автор барлық нәзіктіктерді ескермеді және бір мезгілде дауыстарды шығаруға кеңес берді, с және w; мысалы, мысалы Чэпман жоқ Чэпман → Капман → Ca15a5 → C155, және Чэпман → Cpmn → C155 → C15 → C150.

Soundex көптеген тілдерде жүзеге асырылады. Мысалы, орнатылған SOUNDEX функциясы MySQL деректер базасын басқару жүйесінде.Ал Python 3-де сіз осы тапсырманың барлық мазмұнын бірнеше жолмен жаза аласыз (кодының авторы Иван Держанский):

Кемшіліктері Soundex бетінде жатыр. Кейде бұл алгоритм өте жақын тегі арасындағы ұқсастығын анықтай алмайды: мысалы, Левинсон L152 кодын алады және Левинсон – L525 коды. Сонымен қатар, Soundex сөздіктің ағылшын тілінде жиі кездесетін жазудан өте ерекшеленетін жағдайларда жақсы жұмыс істемейді. Мысалы, шотланд тегі Colquhounжағдайында берілген жағдай ұқсас Cahun, ал оның Soundex C425 коды дәлелденбейді л (4) және q (2). Бұл фамилияның тағы бір нұсқасы Colhoun (еске алайық, капитан Кассиус Колхоун «Без басқыш» Майн Рид) – басқа коды бар: ол C450 болып шығады. Алайда, мұндай жазуда әдетте айтылады л (Колхун), сондықтан бұл жағдайда әртүрлі кодтар соншалықты жаман емес.

Белгісіз іздеу мәселесін шешу үшін жиі қолданылған алгоритмдер жиі қолданылады. Бұл Soundex (мысалы, Metaphone) сияқты фонетикалық алгоритмдер болуы мүмкін және әртүрлі әртүрлі тәсілдер – мысалы, редакциялық қашықтыққа қатысты, ол туралы біздің сайтта жарияланған.

Әдебиет:
1. Ю.А. Апесян. Таңдалған жұмыстар. T. I // Лексикалық семантикасы. М.: Орыс мәдениетінің тілдері, 1995.
2. Дональд Кнут. Компьютерлік программалау өнері. Vol.3: Сұрыптау және іздеу // Оқу (Масс.), 1973.
3. Дональд Кнут. Компьютерлік программалау өнері. Vol. 3: Сұрыптау және іздеу. 2nd ed. // Оқу (Mass.), 1998.
4. Бертран Лисбах және Виктория Мейер. Лингвистикалық сәйкестілік сәйкестігі // Висбаден: Springer, 2013.

Бұл тапсырма 2015 жылы Благоевград қаласында (Болгария) өтетін XIII халықаралық лингвистика олимпиадасында қолданылған.


Like this post? Please share to your friends:
Leave a Reply

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: