Tilni aniqlash

Tilni aniqlash (inglizchada *tilini aniqlash*), tabiiy tilni qayta ishlash usulida — **tilni aniqlash**. Tilni aniqlash muammosi matnni turkumlashtirishning alohida holati boʻlib, statistik usullar yordamida hal qilinadi.

## Ko‘rib chiqish
Tilni aniqlash uchun PPRLM (parallel fonemalarni aniqlash + til modeli) arxitekturasi bir nechta tillarda oʻqitilgan fonetik tanuvchilarning parallel ulanishi bilan amalga oshiriladi. Fonetik tanib olish Viterbi algoritmidan foydalangan holda yashirin Markov modellariga (HMMs) asoslangan.

Nutq xabarining maʼlum bir maqsadli tilga tegishliligi toʻgʻrisida qaror qabul qilish uchun qoʻllab-quvvatlovchi vektor mashinalari (SVM — qoʻllab-quvvatlovchi vektorli mashinalar) asosidagi klassifikator yordamida yondashuv amalga oshiriladi.

Klassik PPRLM asosida qurilgan tizimning ishlash printsipi quyidagicha:

# tizimda bir nechta fonetik taniydiganlar mavjud;
# har bir kiritilgan tovush fayli fonetik tanuvchilar tomonidan tan olinadi;
# har bir fonetik tan oluvchi fonemalarning natijaviy ketma-ketligiga koʻra, maʼlum bir maqsadli tilning n-gramm modeliga yaqinlik oʻlchovlari hisoblanadi;
# n-gramm modelining maksimal yaqinlik oʻlchoviga ega boʻlgan til gʻolib deb hisoblanadi.

Ilgʻor PPRLM tizimlarida tilni identifikatsiya qilish ochiq vazifa sifatida amalga oshiriladi: qayta ishlangan faylning maqsadli tilga „tegishli“ / „tegishli emas“ tekshiruvi oʻtkaziladi, qaror avtomatik ravishda belgilangan chegarani hisobga olgan holda foydalanuvchi tomonidan qabul qilinadi.

Asosiy algoritmga quyidagi qadamlar qoʻshiladi:

# har bir fonetik tan oluvchining hosil boʻlgan fonemalari ketma-ketligi u yoki bu „yoʻnaltiruvchi“ tilning n-gramm modeli bilan qoʻshib qoʻyiladi va n-gramm modelining fonemalar ketma-ketligiga yaqinlik oʻlchovlari koʻrib chiqiladi;
# n-gramm modellarining fonema ketma-ketligiga yaqinligi oʻlchovlarining toʻliq toʻplami SVM klassifikatori uchun kirish vektoridir;
# tasniflash natijasiga koʻra, SVM klassifikatori har bir maqsadli til uchun alohida belgilangan chegara bilan solishtirib, maqsadli tilga tegishli boʻlish toʻgʻrisida qaror qabul qiladi.

Agar SVM klassifikatori tomonidan berilgan ball chegaradan katta boʻlsa, audio fayl maqsadli tilda aytiladi. Bunday holda, ovoz fayli bir vaqtning oʻzida bir yoki bir nechta tillarga tayinlanishi yoki ularning hech biriga tayinlanmasligi mumkin.

## Yana qarang

* Algoritmik axborot nazariyasi
* Kolmogorov murakkabligi
* Mashina tarjimasi
* CLDR

## Adabiyotlar

* Joshua Gudman. Til daraxtlari va Zipping boʻyicha kengaytirilgan izoh . arXiv: cond-mat/0202383 [cond-matematikastat-mech]
* Benedetto, D., E. Kaglioti va V. Loreto. Til daraxtlari va zipping . *Jismoniy koʻrib chiqish xatlari*, 88:4 (2002), Murakkablik nazariyasi .
* Kavnar, Uilyam B. va Jon M. Trenkle. „N-gramm asosidagi matnlarni turkumlashtirish“. SDAIR-94, Hujjatlarni tahlil qilish va maʼlumot olish boʻyicha 3-yillik simpozium materiallari (1994) http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.53.9367 .
* Cilibrasi, Rudi va Pol M. B. Vitanyi. Siqish orqali klasterlash . *IEEE Transactions on Information Theory* 51(4), 2005 yil aprel, 1523-1545.
* Dunning, T. (1994) „Tilning statistik identifikatsiyasi“. MCCS 94-273 texnik hisoboti, Nyu-Meksiko shtat universiteti, 1994 yil.
* Gudman, Joshua. (2002) „Til daraxtlari va zipping“ boʻyicha kengaytirilgan sharh . Microsoft Research, 2002 yil 21 fevral. (Bu Naive Bayes usuli foydasiga maʼlumotlarni siqishning tanqididir.)
* Grafenstette, Gregori. (1995) Ikki tilni identifikatsiya qilish sxemalarini solishtirish. *Matnli maʼlumotlarning statistik tahlili boʻyicha 3-xalqaro konferentsiya materiallari* (JADT 1995).
* Poutsma, Arjen. (2001) Tilni aniqlashda Monte-Karlo texnikasini qoʻllash. SmartHaven, Amsterdam. CLIN 2001 da taqdim etilgan.
* The Economist. (2002) " Uslub elementlari: siqilgan maʼlumotlarni tahlil qilish tilshunoslikda taʼsirchan natijalarga olib keladi "
* Radim Řehůrek va Milan Kolkus. (2009) Internetda tilni aniqlash: Lugʻat usulini kengaytirish (mavjud havola) " *Hisoblash tilshunosligi va matnni aqlli qayta ishlash*

## Havolalar

### Kutubxonalar

* LID — Pythonda til identifikatsiyasi : Damir Kavar tomonidan Python va sxemada n-grammga asoslangan LID vositasining algoritmi va kod misoli.
* qopqoq Til identifikatori : Lingua-Systems tomonidan; C / C ++ kutubxonasi va Perl kengaytmasi (onlayn demo).
* lc4j, til turkumlash Java kutubxonasi , Marko Olivo tomonidan.
* [Windows 7 uchun Microsoft kengaytirilgan lingvistik xizmatlar](http://msdn.microsoft.com/en-us/library/windows/desktop/dd317839(v=VS.85).aspx) : shu jumladan Microsoft tilni aniqlash.
* uchun Windows 7 API kod toʻplami. NET : yuqoridagilar uchun boshqariladigan interfeyslarni oʻz ichiga oladi.
* NTextCat uchun bepul tilni aniqlash API.  NET (C#)  : 280+ tillar qutidan tashqarida mavjud. Tilni va matnni kodlashni (UTF-8, Windows-1252, Big5 va boshqalarni) taniydi. Mono mos.
* jsli sof JavaScript tilini identifikatsiya qilish kutubxonasidir.
* Chromium-Author’s Compact Language Detection kodi uchun cldr -R kutubxonasi.
* tilni aniqlash : Java uchun ochiq manbali tilni aniqlash kutubxonasi (forks: lang-guess va language-detektori).
* cld2 : Google tomonidan C++ uchun ochiq manbali tilni aniqlash kutubxonasi
* GuessLanguage : JavaScript uchun ochiq manbali tilni aniqlash kutubxonasi
* GuessLanguage : python uchun ochiq manbali tilni aniqlash kutubxonasi
* Text LanguageDetect : nok tilini aniqlash (hozirda qoʻllab-quvvatlanmaydi)
* datagram : ochiq manbali MIT JavaScript tasniflash kutubxonasi. Kirish maʼlumotlarining tillarini avtomatik ravishda tasniflash va tanib olish. U oʻqitilgan maʼlumotlarga asoslangan har qanday tasniflash uchun ishlatilishi mumkin.

### Veb-xizmatlar

* Tilni aniqlash veb-xizmati : matnlar, veb-saytlar va hujjatlarda 100 dan ortiq tillarni aniqlaydigan tilni aniqlash APIsi (JSON va XML).
* Language Detection API : oddiy identifikatsiya tili API
* dataTXT-LI : til identifikatsiyasi RESTful API, karahindiba dataTXT semantik API oilasining  bir qismi (nomli obyektni ajratib olish, matn oʻxshashligi va hokazo).)
* AlchemyAPI : til identifikatori API, SDK sifatida va RESTfull API (veb-asoslangan namoyish) orqali mavjud.
* PetaMem tilini identifikatsiyalash : ngram, nvect va smart usullardan tanlash imkonini beradi.
* Xerox LanguageIdentifier ni oching, u vebga asoslangan shaklda yoki API orqali mavjud.
* GlobalNLP : Internetga asoslangan identifikatsiya tili
* Til detektori, matn yoki URL dan onlayn identifikatsiya va ishlab chiquvchilar uchun mavjud API.
* Bu qaysi til? Onlayn til identifikatori : Henrik Falck tomonidan yozilgan veb-asoslangan vosita.
* Rosetta til identifikatori  : Basis Technology mahsuloti.
* Til identifikatori : Sematext mahsuloti; Java API-ni ochib beradi va REST/Webservice orqali mavjud.
* G2LI (Global axborot infratuzilmasi laboratoriyasining til identifikatori) .
* IMT Holdings tomonidan taqdim etilgan Rosoka Cloud til identifikatori, obyekt va munosabatlarni ajratib olish RESTfull veb-xizmatlarini Amazon Web Services Marketplace orqali taqdim etadi.
* Tilni aniqlash xususiyatiga ega Semantria hissi va matn tahlili API
* Loque.la Language Detection API : API yordamida veb-sayt tilini aniqlash, (json/XML)
* Stel KS Language identifikatsiyasi : Language identification API (11 til)