Nazorat ostida o'qitish

Mashinali o‘rganuv (machine learning) **Nazorat ostida o‘qitish** yoki **Nazoratli o‘rganish** (*inglizcha*: *Supervised learning*)   algoritm kirish-chiqish juftliklari misolida kirish ma'lumotlarini (input data) aniq bir chiqish qiymatiga akslantirishni o'rganadigan mashinali o‘qitish paradigmasi (machine learning paradigm) hisoblanadi. Ushbu jarayon belgilangan ma'lumotlar (labeled data) yordamida statistik modelni o‘qitishni o'z ichiga oladi, ya'ni har bir kirish ma'lumoti uchun to'g'ri chiqish qiymati ko'rsatilgan bo'ladi. Masalan, agar model tasvirlardagi mushuklarni aniqlashi kerak bo'lsa, nazorat ostidagi o‘qitish unga aniq «mushuk» (chiqish) deb belgilangan ko'plab mushuk tasvirlarini (kirish) taqdim etishni nazarda tutadi.

Nazorat ostidagi o‘qitishning maqsadi  o'qitilgan model yangi, ilgari ko'rilmagan ma'lumotlar uchun chiqish qiymatini aniq bashorat qilishidan iborat. Bu algoritmdan o‘qitish misollarini samarali umumiylashtirishni (generalize) talab qiladi va ushbu sifat uning «umumiylashtirish xatosi» (generalization error) orqali o'lchanadi. Nazorat ostidagi o‘qitish odatda klassifikatsiya (classification) (masalan, xabarning spam yoki spam emasligini bashorat qilish) va regressiya (regression) (masalan, uy narxlari kabi uzluksiz qiymatlarni bashorat qilish) kabi vazifalar uchun qo'llaniladi.

## Amaldagi bosqichlar

Nazorat ostidagi o‘qitishning muayyan muammosini hal qilish uchun quyidagi bosqichlarni bajarish lozim:

## Algoritmni tanlash

Nazorat ostidagi o‘qitish algoritmlarining keng doirasi mavjud bo'lib, ularning har biri o'zining kuchli va kuchsiz tomonlariga ega. Barcha nazorat ostidagi o‘qitish muammolari uchun eng yaxshi ishlaydigan yagona o‘qitish algoritmi mavjud emas (qarang: Bepul tushlik yo'qligi haqidagi teorema).

Nazorat ostidagi o‘qitishda e'tiborga olinishi lozim bo'lgan to'rtta asosiy masala mavjud:

### Sistemali xato va dispersiya o'rtasidagi muvozanat

Birinchi masala «bias» (sistemali xato) va «variance» (dispersiya) o'rtasidagi muvozanatdir (bias–variance tradeoff). Tasavvur qilaylik, bizda bir nechta har xil, ammo teng darajada sifatli o‘qitish ma'lumotlar to'plami mavjud. Agar o‘qitish algoritmi har bir to'plamda o'qitilganda muayyan x kirish qiymati uchun chiqishni bashorat qilishda muntazam ravishda xato qilsa, u holda ushbu algoritm biasga ega hisoblanadi. Agar algoritm turli o‘qitish to'plamlarida o'qitilganda har xil chiqish qiymatlarini bashorat qilsa, u holda algoritm yuqori dispersiyaga ega bo'ladi. O'qitilgan klassifikatorning bashorat qilish xatosi o‘qitish algoritmining biasi va dispersiyasi yig'indisi bilan bog'liq. Odatda, bias va dispersiya o'rtasida teskari bog'liqlik mavjud. Past biasli o‘qitish algoritmi ma'lumotlarga yaxshi moslashishi uchun «egiluvchan» bo'lishi kerak. Ammo agar algoritm haddan tashqari egiluvchan bo'lsa, u har bir o‘qitish ma'lumotlar to'plamiga turlicha moslashadi va natijada yuqori dispersiyaga ega bo'ladi. Nazorat ostidagi o‘qitish usullarining asosiy jihati shundaki, ular bias va dispersiya o'rtasidagi ushbu muvozanatni (avtomatik ravishda yoki foydalanuvchi tomonidan sozlanadigan parametr yordamida) tartibga solish imkoniyatiga ega.

### Funksiya murakkabligi va o‘qitish ma'lumotlarining miqdori

Ikkinchi masala mavjud o‘qitish ma'lumotlarining miqdori va «haqiqiy» funksiyaning (klassifikator yoki regressiya funksiyasi) murakkabligi o'rtasidagi munosabatdir. Agar haqiqiy funksiya oddiy bo'lsa, u holda yuqori biasli va past dispersiyali «egiluvchan bo'lmagan» o‘qitish algoritmi uni oz miqdordagi ma'lumotlardan ham o'rgana oladi. Ammo haqiqiy funksiya juda murakkab bo'lsa (masalan, u ko'plab turli kirish belgilari orasidagi murakkab o'zaro ta'sirlarni o'z ichiga olsa va kirish fazosining turli qismlarida turlicha namoyon bo'lsa), u holda funksiyani faqat katta miqdordagi o‘qitish ma'lumotlari hamda past biasli va yuqori dispersiyali «egiluvchan» o‘qitish algoritmi yordamida o'rganish mumkin bo'ladi.

### Kirish fazosining o'lchamliligi

Uchinchi masala  kirish fazosining o'lchamliligi (dimensionality). Agar kirish belgilar vektorlari (feature vectors) katta o'lchamlarga ega bo'lsa, haqiqiy funksiya ushbu belgilarning faqat oz qismiga bog'liq bo'lsa ham, funksiyani o'rganish qiyin bo'lishi mumkin. Buning sababi shundaki, ko'plab «ortiqcha» o'lchamlar o‘qitish algoritmini chalkashtirib, uning dispersiyasi oshishiga olib kelishi mumkin. Shuning uchun, katta o'lchamli kirish ma'lumotlari odatda klassifikatorni past dispersiya va yuqori biasga ega bo'lishi uchun sozlashni talab qiladi. Amaliyotda, agar muhandis kirish ma'lumotlaridan ahamiyatsiz belgilarni qo'lda olib tashlay olsa, bu o'rganilgan funksiyaning aniqligini oshirishi mumkin. Bundan tashqari, tegishli belgilarni aniqlash va keraksizlarini chetga surishga qaratilgan ko'plab belgilarni tanlash (feature selection) algoritmlari mavjud. Bu nazorat ostidagi o‘qitish algoritmini ishga tushirishdan oldin kirish ma'lumotlarini pastroq o'lchamli fazoga akslantirishga intiluvchi o'lchamlilikni kamaytirish (dimensionality reduction) umumiy strategiyasining bir namunasidir.

### Chiqish qiymatlaridagi shovqin

To'rtinchi masala  kutilayotgan chiqish qiymatlaridagi (nazorat qilinuvchi maqsadli o'zgaruvchilar) shovqin darajasidir. Agar kutilayotgan chiqish qiymatlari ko'pincha noto'g'ri bo'lsa (inson xatosi yoki datchik xatolari tufayli), u holda o‘qitish algoritmi o‘qitish misollariga to'liq mos keladigan funksiyani topishga harakat qilmasligi kerak. Ma'lumotlarga haddan tashqari aniqlik bilan moslashishga urinish haddan tashqari moslashishga (overfitting) olib keladi. Siz hatto o'lchash xatolari (stoxastik shovqin) bo'lmagan taqdirda ham, agar siz o'rganishga harakat qilayotgan funksiya o‘qitish modelingiz uchun juda murakkab bo'lsa, haddan tashqari moslashishingiz mumkin. Bunday vaziyatda, maqsadli funksiyaning modellashtirib bo'lmaydigan qismi o‘qitish ma'lumotlarini «buzadi»  bu hodisa deterministik shovqin (deterministic noise) deb ataladi. Har qanday turdagi shovqin mavjud bo'lganda, yuqori biasli va past dispersiyali baholovchidan foydalanish maqsadga muvofiqdir.

Amaliyotda, chiqish qiymatlaridagi shovqinni kamaytirish uchun bir qancha yondashuvlar mavjud, masalan, haddan tashqari moslashishning oldini olish uchun vaqtidan oldin to'xtatish (early stopping), shuningdek, nazorat ostidagi o‘qitish algoritmini o‘qitishdan oldin shovqinli misollarni aniqlash va olib tashlash. Shovqinli o‘qitish misollarini aniqlaydigan bir qancha algoritmlar mavjud bo'lib, shubhali misollarni o‘qitishdan oldin olib tashlash statistik ahamiyatga ega ravishda umumiylashtirish xatosini kamaytirishi isbotlangan.

### E'tiborga olinishi lozim bo'lgan boshqa omillar

o‘qitish algoritmini tanlash va qo'llashda e'tiborga olinishi lozim bo'lgan boshqa omillar quyidagilardan iborat:

* Ma'lumotlarning geterogenligi (turli xilligi). Agar belgilar vektorlari ko'plab turli xil belgilarni (diskret, tartiblangan diskret, hisoblanadigan, uzluksiz qiymatlar) o'z ichiga olsa, ba'zi algoritmlarni qo'llash boshqalariga qaraganda osonroq kechadi. Ko'pgina algoritmlar, jumladan qo'llab-quvvatlovchi vektorlar usuli (support-vector machines), chiziqli regressiya, logistik regressiya, neyron tarmoqlari va k-eng yaqin qo'shnilar algoritmi (k-nearest neighbors algorithm), kirish belgilarining raqamli bo'lishini va o'xshash diapazonlarga (masalan, [-1,1] intervaliga) keltirilishini talab qiladi. Masofaviy funksiyadan foydalanadigan usullar, masalan, k-eng yaqin qo'shnilar algoritmi va Gauss yadroli qo'llab-quvvatlovchi vektorlar usuli, bunga ayniqsa sezgirdir. Qarorlar daraxtining (decision trees) afzalligi shundaki, ular geterogen ma'lumotlar bilan oson ishlaydi.
* Ma'lumotlarning ortiqchaligi (redundancy). Agar kirish belgilari ortiqcha ma'lumotlarni o'z ichiga olsa (masalan, bir-biri bilan yuqori darajada bog'langan belgilar), ba'zi o‘qitish algoritmlari (masalan, chiziqli regressiya, logistik regressiya va masofaga asoslangan usullar) sonli beqarorliklar tufayli yomon natija ko'rsatishi mumkin. Ushbu muammolarni ko'pincha regulyarizatsiyaning (regularization) biror shaklini qo'llash orqali hal qilish mumkin.
* O'zaro ta'sirlar va nouchiziqliliklarning mavjudligi. Agar har bir belgi chiqish qiymatiga mustaqil ravishda hissa qo'shsa, u holda chiziqli funksiyalarga asoslangan algoritmlar (masalan, chiziqli regressiya, logistik regressiya, qo'llab-quvvatlovchi vektorlar usuli, soddalashgan Bayes klassifikatori (naive Bayes)) va masofaviy funksiyalar (masalan, k-eng yaqin qo'shnilar algoritmi, Gauss yadroli qo'llab-quvvatlovchi vektorlar usuli) odatda yaxshi ishlaydi. Biroq, agar belgilar o'rtasida murakkab o'zaro ta'sirlar mavjud bo'lsa, u holda qarorlar daraxti va neyron tarmoqlari kabi algoritmlar yaxshiroq natija beradi, chunki ular aynan ushbu o'zaro ta'sirlarni aniqlash uchun mo'ljallangan. Chiziqli usullar ham qo'llanilishi mumkin, ammo ulardan foydalanishda muhandis o'zaro ta'sirlarni qo'lda ko'rsatishi lozim bo'ladi.

Yangi sohani ko'rib chiqayotganda, muhandis bir nechta o‘qitish algoritmlarini solishtirishi va amaliy tajriba orqali ko'rilayotgan muammo uchun qaysi biri eng yaxshi ishlashini aniqlashi mumkin (qarang: kross-validatsiya). o‘qitish algoritmining unumdorligini sozlash juda ko'p vaqt talab qilishi mumkin. Cheklangan resurslar sharoitida, qo'shimcha o‘qitish ma'lumotlarini to'plash va axborot beruvchi belgilarni ko'paytirishga ko'proq vaqt sarflash, o‘qitish algoritmlarini sozlashga qo'shimcha vaqt sarflashdan ko'ra ko'pincha yaxshiroq natija beradi.

### Algoritmlar

Eng ko'p qo'llaniladigan o‘qitish algoritmlari quyidagilardir: 
* Qo'llab-quvvatlovchi vektorlar usuli
* Chiziqli regressiya
* Logistik regressiya
* Soddalashgan Bayes klassifikatori
* Chiziqli diskriminant tahlil
* Qarorlar daraxti
* K-eng yaqin qo'shnilar algoritmi
* Neyron tarmoqlari (masalan, Ko'p qatlamli perseptron)
* O'xshashlikni o'rganish

## Nazorat ostidagi o‘qitish algoritmlari qanday ishlaydi

Berilgan N ta o‘qitish misollari to'plami \{(x_1, y_1), ..., (x_N,\; y_N)\} shaklida bo'lib, bunda x_i  i-chi misolning belgilar vektori (feature vector) va y_i  uning belgisi (ya'ni klassi) bo'lsin. o‘qitish algoritmi g: X \to Y funksiyasini qidiradi, bunda X  kirish fazosi, Y esa chiqish fazosidir. g funksiyasi barcha mumkin bo'lgan funksiyalar fazosi G ning bir elementi bo'lib, bu fazo odatda «gipotezalar fazosi» deb ataladi. Ba'zan g funksiyasini f: X \times Y \to \mathbb{R} baholash funksiyasi (scoring function) yordamida ifodalash qulay bo'ladi, bunda g eng yuqori ballni beradigan y qiymatini qaytaruvchi funksiya sifatida belgilanadi: g(x) = \underset{y}{\arg\max} \; f(x,y). F orqali baholash funksiyalari fazosini belgilaymiz.

Garchi G va F ixtiyoriy funksiyalar fazosi bo'lishi mumkin bo'lsa-da, ko'plab o‘qitish algoritmlari ehtimollik modellari bo'lib, ularda g shartli ehtimollik modeli g(x) = \underset{y}{\arg\max} \; P(y|x) shaklini oladi yoki f birgalikdagi ehtimollik modeli f(x,y) = P(x,y) shaklini oladi. Masalan, soddalashgan Bayes klassifikatori va chiziqli diskriminant tahlil birgalikdagi ehtimollik modellari bo'lsa, logistik regressiya shartli ehtimollik modelidir.

f yoki g funksiyasini tanlashning ikkita asosiy yondashuvi mavjud: empirik riskni minimallashtirish (empirical risk minimization) va strukturali riskni minimallashtirish (structural risk minimization). Empirik riskni minimallashtirish o‘qitish ma'lumotlariga eng yaxshi mos keladigan funksiyani qidiradi. Strukturali riskni minimallashtirish esa bias va dispersiya muvozanatini boshqaradigan «jarima funksiyasini» o'z ichiga oladi.

Ikkala holatda ham o‘qitish to'plami mustaqil va bir xil taqsimlangan (x_i, \;y_i) juftliklaridan iborat deb taxmin qilinadi. Funksiya o‘qitish ma'lumotlariga qanchalik mos kelishini o'lchash uchun L: Y \times Y \to \mathbb{R}^{\ge 0} yo'qotish funksiyasi (loss function) belgilanadi. (x_i,\;y_i) o‘qitish misoli uchun \hat{y} qiymatini bashorat qilishdagi yo'qotish L(y_i,\hat{y}) ga teng.

g funksiyasining «riski» R(g)  bu g funksiyasining kutilayotgan yo'qotishi sifatida belgilanadi. Buni o‘qitish ma'lumotlaridan quyidagicha baholash mumkin:

:R_{emp}(g) = \frac{1}{N} \sum_i L(y_i, g(x_i)).

### Empirik riskni minimallashtirish

Empirik riskni minimallashtirishda nazorat ostidagi o‘qitish algoritmi R(g) ni minimallashtiradigan g funksiyasini qidiradi. Shunday qilib, nazorat ostidagi o‘qitish algoritmini g ni topish uchun optimallashtirish algoritmini qo'llash orqali yaratish mumkin.

Agar g shartli ehtimollik taqsimoti P(y|x) bo'lsa va yo'qotish funksiyasi manfiy logarifmik haqiqatga o'xshashlik bo'lsa: L(y, \hat{y}) = -\log P(y | x), u holda empirik riskni minimallashtirish maksimal haqiqatga o'xshashlik baholashiga (maximum likelihood estimation) teng bo'ladi.

Agar G fazosi juda ko'p nomzod funksiyalarni o'z ichiga olsa yoki o‘qitish to'plami yetarli darajada katta bo'lmasa, empirik riskni minimallashtirish yuqori dispersiyaga va yomon umumiylashtirishga olib keladi. o‘qitish algoritmi misollarni yaxshi umumiylashtirmasdan, shunchaki yodlab oladi (haddan tashqari moslashish).

### Strukturali riskni minimallashtirish

Strukturali riskni minimallashtirish optimallashtirishga regulyarizatsiya jarimasini kiritish orqali haddan tashqari moslashishning oldini olishga harakat qiladi. Regulyarizatsiya jarimasi murakkab funksiyalardan ko'ra sodda funksiyalarni afzal ko'radigan Okkam usturasi (Occam's razor) tamoyilini amalga oshirish shakli sifatida qaralishi mumkin.

Murakkablikning turli xil ta'riflariga mos keladigan turli xil jarimalar qo'llaniladi. Masalan, g funksiyasi quyidagi shakldagi chiziqli funksiya bo'lgan holatni ko'rib chiqaylik:

: g(x) = \sum_{j=1}^d \beta_j x_j.

Ommabop regulyarizatsiya jarimasi \sum_j \beta_j^2 bo'lib, u vaznlarning kvadratga oshirilgan Evklid normasi yoki L_2 normasi deb ataladi. Boshqa normalarga L_1 normasi, ya'ni \sum_j |\beta_j|, va <math>L_0</math> «normasi» (nolga teng bo'lmagan \beta_jlar soni) kiradi. Jarima C(g) orqali belgilanadi.

Nazorat ostidagi o‘qitishni optimallashtirish muammosi quyidagini minimallashtiradigan g funksiyasini topishdan iborat:

: J(g) = R_{emp}(g) + \lambda C(g).

\lambda parametri bias va dispersiya o'rtasidagi muvozanatni boshqaradi. Agar \lambda = 0 bo'lsa, bu past biasli va yuqori dispersiyali empirik risk minimallashtirishni beradi. Agar \lambda katta bo'lsa, o‘qitish algoritmi yuqori bias va past dispersiyaga ega bo'ladi. \lambda qiymati kross-validatsiya yordamida empirik tarzda tanlanishi mumkin.

Murakkablik jarimasi Bayescha talqinga ko'ra g funksiyasining manfiy logarifmik aprior ehtimolligi -\log P(g) sifatida qaralishi mumkin, bunda J(g) esa g ning aposterior ehtimolligidir (posterior probability).

## Generativ o‘qitish

Yuqorida tavsiflangan o‘qitish usullari «diskriminativ o‘qitish» (discriminative training) usullaridir, chunki ular turli chiqish qiymatlarini yaxshi ajratib beruvchi (diskriminatsiya qiluvchi) g funksiyasini topishga intiladi (qarang: Diskriminativ model). f(x,y) = P(x,y) birgalikdagi ehtimollik taqsimoti bo'lgan va yo'qotish funksiyasi manfiy logarifmik haqiqatga o'xshashlik - \sum_i \log P(x_i, y_i) bo'lgan maxsus holatda, riskni minimallashtirish algoritmi «generativ o‘qitish» (generative training) deb ataladi. Bunda f ma'lumotlarning qanday hosil bo'lganini tushuntirib beruvchi generativ model sifatida qaralishi mumkin. Generativ o‘qitish algoritmlari ko'pincha diskriminativ algoritmlarga qaraganda soddaroq va hisoblash jihatidan samaraliroqdir. Ba'zi hollarda yechim soddalashgan Bayes klassifikatori va chiziqli diskriminant tahlilda bo'lgani kabi aniq formula ko'rinishida hisoblanishi mumkin.

## Umumiylashtirishlar

Standart nazorat ostidagi o‘qitish muammosini umumlashtirishning bir necha yo'li mavjud:
* Yarim nazorat ostidagi o‘qitish (semi-supervised learning) yoki kuchsiz nazorat: kutilayotgan chiqish qiymatlari o‘qitish ma'lumotlarining faqat kichik qismi uchun berilgan. Qolgan ma'lumotlar belgilanmagan yoki noaniq belgilangan bo'ladi.
* Aktiv o‘qitish (active learning): Barcha o‘qitish misollari boshida berilgan deb taxmin qilish o'rniga, aktiv o‘qitish algoritmlari interaktiv tarzda yangi misollarni yig'adi, odatda foydalanuvchiga so'rovlar yuborish orqali. So'rovlar ko'pincha belgilanmagan ma'lumotlarga asoslanadi, bu esa yarim nazorat ostidagi o‘qitishni aktiv o‘qitish bilan birlashtiradi.
* Strukturali bashorat qilish (structured prediction): Kutilayotgan chiqish qiymati sintaktik tahlil daraxti (parse tree) yoki belgilangan graf kabi murakkab ob'ekt bo'lganda, standart usullarni kengaytirish lozim bo'ladi.
* Saralashni o'rganish (learning to rank): Kirish ma'lumotlari ob'ektlar to'plami bo'lib, kutilayotgan chiqish ushbu ob'ektlarning saralangan tartibi bo'lganda ham standart usullar kengaytirilishi kerak.

## Yondashuvlar va algoritmlar

* Analitik o‘qitish (inglizcha: *Analytical learning*)
* Sun’iy neyron tarmoqlari (inglizcha: *Artificial neural networks*)
* Xatolikni teskari tarqatish (inglizcha: *Backpropagation*)
* Busting (inglizcha: *Boosting*)
* Bayes statistikasi (inglizcha: *Bayesian statistics*)
* Pretsedentlarga asoslangan mulohaza yuritish (inglizcha: *Case-based reasoning*)
* Qaror daraxtlari orqali o‘qitish (inglizcha: *Decision tree learning*)
* Induktiv mantiqiy dasturlash (inglizcha: *Inductive logic programming*)
* Gaus jarayonlari regressiyasi (inglizcha: *Gaussian process regression*)
* Genetik dasturlash (inglizcha: *Genetic programming*)
* Ma’lumotlarga ishlov berishning guruhli usuli (inglizcha: *Group method of data handling*)
* Yadroviy baholash usullari (inglizcha: *Kernel estimators*)
* O‘rganuvchi avtomatlar (inglizcha: *Learning automata*)
* O‘rganuvchi klassifikator tizimlar (inglizcha: *Learning classifier systems*)
* O‘rganuvchi vektor kvantlash (inglizcha: *Learning vector quantization*)
* Xabarning minimal uzunligi (inglizcha: *Minimum message length*)
* Ko‘p chiziqli qism-fazo o‘rganish (inglizcha: *Multilinear subspace learning*)
* Soddadil Bayes klassifikatori (inglizcha: *Naive Bayes classifier*)
* Maksimal entropiya klassifikatori (inglizcha: *Maximum entropy classifier*)
* Shartli tasodifiy maydon (inglizcha: *Conditional random field*)
* Eng yaqin qo‘shni algoritmi (inglizcha: *Nearest neighbor algorithm*)
* Ehtimoliy taxminan to‘g‘ri o‘rganish (inglizcha: *Probably approximately correct learning — PAC*)
* Simvollarli mashinali o‘rganish algoritmlari (inglizcha: *Symbolic machine learning algorithms*)
* Subsimvollarli mashinali o‘rganish algoritmlari (inglizcha: *Subsymbolic machine learning algorithms*)
* Qo‘llab-quvvatlovchi vektorlar usuli (inglizcha: *Support vector machines — SVM*)
* Tasodifiy o‘rmon (inglizcha: *Random forest*)
* Klassifikatorlar ansambllari (inglizcha: *Ensembles of classifiers*)
* Ordinal klassifikatsiya (inglizcha: *Ordinal classification*)
* Ma’lumotlarga dastlabki ishlov berish (inglizcha: *Data pre-processing*)
* Muvozanatlanmagan ma’lumotlar to‘plami bilan ishlash (inglizcha: *Handling imbalanced datasets*)
* Statistik relyatsion o‘rganish (inglizcha: *Statistical relational learning*)

## Qo‘llanilishi

* Bioinformatika (inglizcha: *Bioinformatics*)
* Kimyoinformatika (inglizcha: *Cheminformatics*)
** Miqdoriy tuzilish–faollik bog‘liqligi (inglizcha: *QSAR*)
* Ma’lumotlar bazasi marketingi
* Qo‘lyozmani tanib olish
* Axborot qidiruvi (inglizcha: *Information retrieval*)
** Darajalashni o‘rganish (inglizcha: *Learning to rank*)
* Axborotni ajratib olish (inglizcha: *Information extraction*)
* Kompyuter ko‘rishida ob’ektlarni aniqlash
* Matnni optik tanib olish (inglizcha: *OCR*)
* Spamni aniqlash
* Tasvirlarni tanib olish (inglizcha: *Pattern recognition*)
* Nutqni tanib olish (inglizcha: *Speech recognition*)
* Nazorat ostida o‘qitish — biologik tizimlardagi pastga yo‘naltirilgan sababiyatning (inglizcha: *downward causation*) maxsus holatidir.
* Sun’iy yo‘ldosh tasvirlari yordamida relyef shakllarini klassifikatsiya qilish
* Xarid jarayonlarida xarajatlarni klassifikatsiya qilish

## Umumiy masalalar

* Hisoblash o‘rganish nazariyasi (inglizcha: *Computational learning theory*)
* Induktiv bias (inglizcha: *Inductive bias*)
* Haddan tashqari moslashish (inglizcha: *Overfitting*)
* Klassga mansublik ehtimolligi
* Versiyalar fazosi (inglizcha: *Version space*)

## Yana qarang
* Nazorat qilinmaydigan o‘qitish

## Manbalar

## Tashqi havolalar
* Mashinali o‘qitish ochiq manbali dasturiy ta'minoti (MLOSS)