Qo’llanma haqida

Sun’y intellekt (SI) hozirgi rivojlanib borayotgan zamonning eng taraqiy etgan fanlaridan biri bo’lib, uning natijalarini deyarli hayotimizning har bir javhasiga kirib keldi. Hamda kunlik turmushimizda bu natijalardan doimiy foydalanimiz va ko’pnicha, hattoki, bu narsaga e’tibor ham bermaymiz. Ushbu soha matematika va boshqa bir qancha sohalarining birlashuvidan hosil bo’lib, ushbu fanlarning yutuqlari esa amaliyotga keng tadbiq qilingan desak adashmaymiz. Bularga ko’plab namunalar keltirish mumkin, masalan, Google tarjimon (Google Translate), ChatGPT, haydovchisiz avtomobillar va boshqalar.

Sun’iy intellekt - mashinalarning yoki dasturlarning intellekti bo’lib, bu intellekt inson yoki hayvon intellektidan faqrli hisoblanadi. Ya’ni, qisqa qilib aytganda, mashina yoki dasturga odam intellektiga o’xshash, lekin tabiiy bo’lmagan intellekt berishdir. Biz ushbu darslar davomida, intellekt va ong so’zlarni o’zaro almashtirish orqali ishlatamiz.

Ushbu qo’llanmaning maqsadi. O’rganuvchilarga ushbu sohaga kirish va shu soha mutaxasisi bo’lish uchun eng zarur bo’lgan ko’nikmalarni berishdan iborat.

Yuqorida ta’kidlaganimizdek, bu soha bir qancha fanlarning birlashuvidan tashkil topgani uchun boshlovchilarga bu fani o’rganish, odatda, bir nechta fanlarni bilish talabini qo’yadi. Odatda, ko’pchilik ma’lum bir darajada oliy matematikani bilish yetarli deb hisoblashadi. Bizning fikrimizcha, bu faqat tayyor modellarni ishga tushirish va ulardan foydalanish uchun yetarli, hamda “Oliy matematika” deganda aynan nimalarni tushinish kerak yoki qaysi fanlarni oliy matematika o’z ichiga oladi? Bu savol ochiqligicha qoladi, ya’ni hamma har xil javob beradi. Bundan tashqari, tayyor modellarni ishga tushirishni 2-3 yil dasturlash tarjibasi bor va ingliz tilini yaxshi biluvchi dasturchilar ham amalaga oshirishmoqda. Masalan, OpenAI kompaniyasi tomonidan taqdim etilgan ChatGPT modelini biror sohaga moslash uchun, shunchaki shu sohaning muammolarini ma’lum qoidalar asosida ChatGPTga uzatish yetarli hisoblanadi.

Shu sabablardan biz ushbu qo’llanmada sohani matematik jihatdan chuquroq o’rganishni oldimizga maqsad qilib qo’ydik, shuning uchun o’rganuvchilarni maktab darsligi darajasida matematik bilimlarga ega deb ta’savur qilamiz va shu asosida undan keyin zarur bo’lgan fanlarni ma’lum bir qismini bosqichma-bosqich chuqur o’rganib chiqamiz. Bundan tashqari o’rganish jarayonida dasturlash hamda SIning eng so’ngi va foydali kutubxonalarni Python dasturlash tilida o’rganamiz.

Zaruriy bilimlar. O’rganish zurur bo’lgan sohalar juda ko’p bo’lib, biz imkon qadar eng zarurlarni va ulardan ham mu’lum bir bo’limlarni ushbu qo’llanmada keltiramiz. Quyidagi fanlar SIni o’rganish uchun asos bo’lib xizmat qiladi(boshqa fanlarni ham qo’shish mumkin):

  1. Dasturlash tili (Python) - biz mashinaga ong berishimiz uchun unga buyruq berish kerak bo’ladi. Bu uchun esa eng yaxshi dastur tili Python hisoblanadi.

  2. Chiziqli algebra - biz berilganlarni asosan jadvallar, ketma-ketliklar ko’rinishda mashina xotirasida saqlaymiz, ular bilan ishlash uchun esa birinchi navbata chiziqli algebra zarur bo’ladi.

  3. Ehtimollar nazariyasi va matematik statistika - bu ikki fan SI paydo bo’lishidan oldin ham mavjuda bo’lib, SI asosan ushbu ikki fan ichidagi soha sifatida bo’lgan, hamda hozirgi kunda ham SI ko’pchilik holda ushbu sohalarga tayanadi.

  4. Mashinali o’rganish - SIning eng tayyangan va hozirgi kundagi mavjud deyarli hamma metodlar ushbu soha asosida amalga oshirilgan.

  5. Algoritmlar va berilganlar strukturasi - Qanday qilib berilganlarni saqlash va ular bilan ishlash uchun turli xil algoritmlarni o’rganadi.

SI har xil sohalarga qo’llash orqali yana bir qancha fanlar vujudga kelgan, ulardan:

  1. Kompyuterli ko’rish (Computer Vision) - ushbu soha asosan grafik berilganlar bilan ishlash uchun xizmat qiladi. Lekin hozirgi kunda berilgan rasmni yoki videoni matn yordamida tasvirlash ham mumkin.

  2. Tabiiy tillar bilan ishlash (Natural Language Processing) - Bu soha tabiiy tillar bilan ishlash uchun xizmat qiladi.

  3. Mustahkamlab o’rganish (Reinforcement Learning) - Bu soha asosan robotatexnikada ishlatiladi.

Ingliz tilidan O’zbek tiliga Artificial Intelligence atamasini Sun’iy Intelekt, Machine Learning atamasini Mashinali o’rganish (MO), Computer Vision atamasini Kompyuterli ko’rish (KK) va Reinforcement Learning atamasini esa Mustahkamlab o’rganish ko’rinishida tarjima qildik. Bu tarjimalar boshqa mutaxasislar tomonidan farqli qilingan bo’lishi mumkin.

Qo’lanmaning yondashuvi. Odatda ushbu sohalarni universitet talabalariga alohida fan sifatida o’tiladi, hamda asosan o’sha fandan chiqmasdan chuquroq shu fan talabalar tomonidan o’rganiladi. Bu esa ba’zida qo’yilgan maqsadga yetib borishga to’sqinlik qiladi. Masalan, biz chiziqli algebrani 4 yoki 5 oy, keyin boshqa bir qator fanlar ham shu kabi vaqt davomida o’rgansak, shundan keyin biz mashinali o’rganish sohasiga o’tishimiz mumkin. Bu esa o’rganuvchining fanga va zamonga bo’lgan ishtiyoqini so’ndirishi mumkin. Shu sababdan bu qo’llanmada biz yuqoridagi birinchi 5 ta fani birgalikda o’tishni lozim topdik. Ya’ni har bir zarur mavzu ketma-ketlikda o’rganib boriladi hamda har safar ma’lum bir mavzular o’rganilib bo’linganda, birorta Mashinali o’rganish usuli amaliy tarizda yechib ko’rsatiladi. Misol uchun, birinchi Python dasturlash tilidan ma’lum bir tushunchalar o’tiladi, undan so’ng chiziqli algebradan biror mavzu o’rganilib undagi vazifalar Python dasturlash tilida amalga oshiriladi va shu tarizda davom etiladi. Umid qilamizki, bunday usul yordamida biz o’rganuvchilarni qisqa va eng zarur qismlarni o’rganishni ta’minlaymiz.

Keyingi qolgan fanalar esa alohida yo’nalish tanlangandan so’ng bemalol o’rganish mumkin va odatda biri ikkinchisini o’rganishni talab qilmaydi. Chunki biz dastlabki asos bo’lgan bilim va ko’nikmalarni birinchi 5 ta fandan olamiz. Bundan tashqari, yuqorida keltirilgan fanlar bilan cheklanmasdan zarur o’rinlarda, boshqa fanlarga ham murojaat qilib ularning yutuqlaridan foydalanamiz. Chunki ushbu fan to’lig’icha amaliy masalarni yechgandan so’ng ko’p o’rinlarda qo’shimcha ma’lumotlar talab qiladi.

Asosiy fan. Asosiy fan sifatida, ushbu qo’llanmada, biz MO faniga chuquroq kirishamiz hamda qolgan yordamchi fanlarning ham shu fanga zarur qismlarni qisqacha o’rganib ketamiz. Ammo shu bilan birgalikda faqat nazariy bilimlar bilan cheklanmasdan, albatta mashinali o’rganishda keng qo’llaniladigan algoritmlarni o’rganib, ularning dasturini yozib chiqamiz. Bunday algoritmlar yordamida bir qator qiziq masalalarni yechib natijalar olamiz, jumladan rasmlarni klassifikatsiya qilish, xatlarni spam (aloqasi bo’lmagan elektron xabarlar) yoki yo’qligini tekshirish. Har bir mantiqiy yakunlangan mavzudan so’ng mavzuga doir masala va topshiriqlar berib boriladi. Ularning oldingilariga o’xshash bo’lib, asosan takomilashgan ko’rinishi yoki mavjud imkoniyatlardan boshqacharoq ko’rinishida bo’ladi.

Ushbu fan va unga asos bo’luvchi fanlarni chuqur nazariy qismlarini o’rganish orqali haqiqiy mutaxasis bo’lish mumkin bo’ladi. Chunki ko’pchilik hozirgi kundagi kurslarda va amaliy masalalarda soha vakillari tayyor algoritmlardan foydalanishni afzal ko’rishadi. Bu narsani amaliy masalarni yechishda ishlatish juda ham maqullanadi, sababi oldindan tayyor bo’lgan narsani qayta ishlab chiqishdan ko’ra uning tayyoridan foydalanish oson. Agar biz ushbu kitobda algoritmlarning va usullarning nazariy qismiga o’tib ularni o’rganadigan bo’lsak, u holda siz aziz o’quvchilarni qiyin ahvolga solib qo’ygan bo’lamiz hamda natija biz kutganmizidek ham bo’lmaydi. Shuning uchun biz, ushbu kitobda, ko’proq amaliy qismlariga e’tiborimizni qaratib nazariy qismlarning eng kerakli bo’lgan joylarini bir ko’zdan kechirib ketamiz. Masalan, hozirda qo’llanilayotgan ko’pchilik algoritmlarning asosida funksiyaning optimal parameterlarini topish yotadi. Bunday muammolarni yechishning bir qancha usullari bo’lib, ulardan eng keng qo’llanilayotgani gradent (qiyalik) bo’yicha tushishdir. Ushbu optimal parameterlarni topish usulini soddaroq holdagi modellarda ko’rib, tassavur hosil qilamiz va undan so’ng, tayyor kutubxonalardan foydalanib o’zimiga kerakli modellarni qurib o’rganamiz.

Qo’llanmanig tarixi

Ushbu qo’llanma taxminan 2023-yilning oxirdan boshlab (Musulmon Lolaev tomonidan) yozib boshlandi. Qo’lanmani ishlab chiqishda juda ko’p o’zgarishlar kirtildi va hozir ham yangi mavzular qo’shilib, mavjud mavzular yangilanib, to’ldirilib kelinmoqda. Ushbu qo’llanma asosida YouTubeda video darsliklar ham yo’lga qo’yilgan, faqat ushbu qo’llanma va video darslik o’rtasida ma’lum bir tafovutlar mavjud. Keyinchalik video darsliklar ham qo’llanma asosida qayta yangilanib boriladi.

Ba’zi mavzularda shunchaki qisqacha tushunchalar yoritilgan yoki ba’zi mavzular yoki boblar to’lig’icha bo’sh. Ushbu boblar va mavzular kelajakda to’ldirilib boriladi.

Ushbu qo’llanma internetga birinchi marta ai-courses.readthedocs.io, keyinchalik esa ai-intro.tqqt.uz mazillarida edi va hozirgi ai.cs.tqqt.uz maziliga joylanga. Umida qilamiz ushbu manzil boshqa o’zgarmaydi.

Mualif haqida

“TQQT” LLC kompaniyasi Musulmon Lolaev tomonidan tashkil etilgan bo’lib, ushbu darslik kompaniyaning loyihalaridan biri hisoblanadi. Ushbu yo’nalish tabiiy fanlarda bepul darsliklarni tashkil qilish hamda shu orqali yoshlarni o’zbek tilida eng zarur ilmlar bilan ta’minlashni maqsad qilib qo’ygan. Kompaniyaning ushbu yo’nalishi to’lig’icha notijoriy (“non-profit”) bo’lib, faqat bepul ta’lim berishga qaratilgan.