O’ZBEKISTON RESPUBLIKASI RAQAMLI TEXNOLOGIYALA VAZIRLIGI MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI QARSHI FILIALI “KOMPYUTER INJINERINGI” FAKULTETI 3-BOSQICH KI-11-21(S) GURUH TALABASI Boynazarov Abdulloning “ Mashinali o’qitishga kirish” FANIDAN 2-Amaliy ishi Bajardi: Boynazarov A. Qabul qildi: Ochilova A.. QARSHI – 2024 2-AMALIY MASHG’ULOT Mavzu: Mashinali o‘qitishda instrumental vositalardan foydalanish. Python dasturiy muhiti bilan ishlash. Pythonning mashinali o‘qitish uchun maxsus muhitlari ( Google Collab va boshqalar) bilan tanishish. Mashinani o'rganish uchun afzal vositalar - Python–MatLab–R AI bo'yicha so'rov -javoblar saytlari va Data Science forumi mushtarak so'rovlar bilan takroriy -takroriy mu’rajat etmoqda. Men ma’lumotlar -fanida yangiman, qaysi tildi o'rganishim zarur? Mashinada o'rganish uchun eng yaxshi til qaysi? Mashinali o’qitish Machine learning(mashinali o‘qitish) - o‘zi o‘rganadigan dasturlar yaratish amaliyoti va nazariyasi, sun'iy intellektning katta qismi. Dasturchilar o‘z algoritmlariga xususiy hollarda umumiy qonuniyatlarni aniqlashni o‘rgatishadi. Natijada, kompyuter, inson avvaldan ko‘rsatib o‘tgan buyruqlaridan emas, balki, o‘z shaxsiy malakasidan kelib chiqib qaror qabul qiladi. Bunday o‘qitishning juda ko‘p metodlari data mining'ga oid bo‘lishi mumkin. Mashinali o‘qitishga birinchi tarifni 1959-yilda amerikalik informatik Artur Samuel bergan. U sun'iy intellekt elementlariga ega bo‘lgan shashka o‘yini, dunyoda birinchi o‘zi o‘rganadigan dasturni yaratgan Hozirgi kun talabalari axborot texnologiyalari bo’yicha zamonaviy dasturlash tizimlari bilan ishlashni bilishlari davr talabidir. Bunda dars darayonida foydalaniladigan o’quv, o’quv-uslubiy qo’llanmalarning mavjud bo’lishi, o’quv jarayoni samaradorligini oshirishga xizmat qiladi. Kompyuter yordamida matematik, fizik masalalarni yechish uchun ko’pincha foydalanuvchi biron bir dasturlash tilida dastur tuzishni bilishi talab qilanadi. MatLab, Python va R kollej o'quvchilariga matematika va statistika asoslarini o'qitishda muvaffaqiyatli ishlatiladi Bu matumotlarga asoslangan muhitda ma'lumotlarni katta tahlillar orqali o'rganish juda kuchli, ayniqsa qaror qabul qilish va bu matumotlarga boy muhitda ma'lumotlarni statistik ishlatish uchun. MatLab yordamida hisoblash va statistik abi boshlang'ich matematikani o'qitish uchun foydalanish mumkin. “Mashinali o’qitishga kirish” fanini ham o’qitishda Matlab asturidan foydalanish keng imkoniyatlarni ochib beradi. Menyu buyruqlarining vazifalari, matematik belgilar vositalari bilan ishlash, Matlabda oddiy matеmatik ifodalarni hisoblash, tеnglamalarni sonli va simvolli yеchish, hosila, integral, limitlarni hisoblash, grafiklar qurish bo’yicha barcha mavzular misollar bilan bayon etilgan. MATLAB MatLab nafaqat tijorat raqamli hisoblash muhiti, balki dasturlash tili sifatida da yuqori baholanadi. MatLab xududi o'shanaqa standart kutubxonaga ega, biroq uning ishlatilishida matricalı algebra va ma'lumotlarni ishlov berish va chizish uchun katta tarmoq bor. Shu bilan birga, u ilg'or o'quvchi uchun vositalar kompleksini qamrab oladi, lekin bu foydalanuvchiga qo'shimcha xarajatlarni keltirib chiqaradi. MatLab-ning afzalliklari MatLab-ham ko'plab sodiq foydalanuvchilari bor, ular orasida ko'plab universitetlar va dastur uchun litsenziya sotib olish uchun byudjetke ega bo'lgan bir nechta kompaniyalar bor. Ko'plab universitetlarda ishlatilgan bo'lsada, MatLab dasturlash tilin o'rganishni boshlagan yangi boslovchilar uchun oson dir, sababi paket sotib olinganda sizga zarur bo'lgan hamma narsalarni qamrab oladi. Pythondan foydalanganda sizdan qo'shimcha paketlar o'rnatilishi talab etiladi. MatLab-ning bitta bo'lagi - bu boshqa dasturlash tillarida hali yaxshi olternativ bo'lmagan MatLab paketining asosiy bo'lagi bo'lgan Simulink deb nomlangan tovar. MatLab ning kamchiliklari Kamchilik - bu licenziyaning bahosi. Uning juda qimmat foydalanuvchisi har bitta modulni sotib olishi va uni to'lovi zarur. Kamchilik - bu o'zaro ishga layoqatlilik kompilyaciya vaqtida yoki MatLab nı boshqa til kodiga aylantirish juda qiyin. Hamma xatolar bilan shug'ullanish uchun juda qiyin yoki MatLabning teran bilimini talab etadi. MatLab ga qandaydir tovar ishlab chiqarish taklif etilmaydi. Sababi, MatLab dastur kabi dasturni o'rnatishni yaratmasdan ( masalan, o'rnatish fayllari va o'rnatish vaqtida nusxa ko'chiriladigan boshqa bajarilatuǵın fayllar kabi ). Python dasturlash tili sodda va o’qilishi oddiy bo’lgan dasturlash tili bo’lib u inglizcha so’zlarni qo’llab quvvatlaydi kalit so’zlar o’rnida shuning uchun bu boshqacha ko’rinishga ega. Python Interpretori: Bu tarjimon tomonidan ish vaqtida qayta ishlanganligini va uni bajarishdan oldin dasturni kompilyatsiya qilishning hojati yo’qligini bildiradi. Bu PERL va PHP ga o’xshaydi. Python Interaktiv: Bu siz aslida Python buyrug’ida o’tirib, dasturlarni yozish uchun to’g’ridan-to’g’ri tarjimon bilan aloqa o’rnatishingiz mumkin degan ma’noni anglatadi. Python Ob’ektga Yo’naltirilgan: Python Ob’ektga yo’naltirish uslubini yoki dasturiy texnikasini qo’llab-quvvatlaydi. Python Boshlovchilar tili: Python – boshlang’ich dasturchilar uchun ajoyib til bo’lib, oddiy matnni ishlashdan WWW brauzerlariga o’yinlarga keng ko’lamdagi ilovalarni ishlab chiqishni qo’llab-quvvatlaydi. Python — juda mashhur dasturlash tili hisoblanadi. Ushbu dasturlash tili Guido van Rossum tomonidan 1991-yilda yaratilgan. Rasmiy sayti: python.org Fayl kengaytmalari: .py, .pyc, .pyd, .pyo .pyw, .pyz Quyidagiga nazar soling: Web Dasturlash: Django, Pyramid, Bottle, Tornado, Flask, web2py Interfeys Dasturlash: tkInter, PyGObject, PyQt, PySide, Kivy, wxPython Scientific and Numeric: SciPy, Pandas, IPython Kompyuter Dasturlari: Buildbot, Trac, Roundup Server Administrator: Ansible, Salt, OpenStack Python dasturlash tilining qo‘llanish sohalari: — veb dasturlar ishlab chiqishda — dasturiy ta’minotlar ishlab chiqishda — sun’iy intellekt va qurilmalarga dastur ishlab chiqishda — ma’lumotlarni tahlil qilish va boshqa ko‘plab sohalarda keng foydalaniladi. Nega aynan Python dasturlash tili? Python turli platformalarda ishlaydi. (Windows, Linux, Mac va h.k) Python ingliz tiliga o‘xshash oddiy sintaksisga ega. Python dasturlash tili boshqa dasturlash tillariga qaraganda dasturchiga kamroq kod yozishga imkonini beradi. Python da WEB, Desktop va Mobile dasturlar yaratish imkoniyati mavjud. Python kutubxonalar anchagina ko‘p! deyarli barcha ishingizni kutubxonalar orqali bajarasiz! Python xotiradan kam joy egallab ishlash tezlgini ancha yuqori! pypi — Python kutubxonalar sayti! Python dasturlash tilida ishlash uchun sizdan kuchli kompyuter talab qilinmaydi. Yozgan kodingizni oddiyroq xususiyatlarga ega bo‘lgan kompyuterda ishlatish hattoki qo‘lingizdagi Android telefoningizda ham ishlatish imkoniyati mavjud. Server uchun juda yaxshi dasturlash tili hisoblanadi. Hozirgi vaqtda dasturchilar orasida hakkerlar uchun yaratilgan dasturlash tili degan nomni olgan. Google Colab — Google tomonidan yaratilgan xizmat boʻlib, kompyuteringizga qoʻshimcha dasturlar oʻrnatmasdan Jupyter Notebook orqali Python kodi bilan ishlash imkonini beradi. Google Colab-da siz turli xil Python kutubxonalaridan foydalanishingiz, fayllarni yuklashingiz va ishga tushirishingiz, ma'lumotlarni tahlil qilishingiz va brauzerda natijalar olishingiz mumkin. Ushbu xizmat Python dasturlashni o‘rganayotgan dasturchilar va talabalar uchun ayniqsa foydalidir. Google Colab kimga kerak? umuman olganda, Big Data bilan ishlaydigan har bir kishi; ma’lumotlar tahlilchilari (uzoq vaqt davomida fayllardagi ma'lumotlarni saralash, vizualizatsiya qilish yoki naqshlar yaratish); ma’lumotlar olimlari (mashinalarni o‘rganishning yangi modellarini ishlab chiqish va sinovdan o‘tkazish, prognozlar qilish); 11 ma'lumotlar muhandislari (katta ma'lumotlarni saqlash uchun dasturiy ta'minot, tizimlarni ishlab chiqish). “Colaboratory ” Python’da kod bilan ishlash uchun Jupyter daftariga asoslanadi, faqat Google Drive’dagi ma’lumotlar bazasi bilan, kompyuterda emas. Bu yerda matn, formulalar, rasmlar, HTML belgilari va boshqalarni qo‘llabquvvatlaydigan bir xil hujayralar mavjud. Ya'ni, siz Python-da dasturlashingiz va keraksiz fayllarni, bir nechta kutubxonalarni yuklab olmaysiz, mashinani ortiqcha yuklamaysiz va qattiq diskingizdagi bo‘sh joy tugashidan xavotirlanmang. Yagona shart sizda Google hisobiga ega bo‘lishingiz kerak. “Colaboratory ” ning asosiy xususiyati bepul, kuchli GPU va TPU grafik protsessorlari bo‘lib, ular yordamida siz nafaqat asosiy ma’lumotlar tahlilini, balki mashinani o‘rganish sohasida yanada murakkab tadqiqotlarni ham amalga oshirishingiz mumkin. CPU hisoblash uchun soatlab ketadigan narsani GPU yoki TPU bir necha daqiqa va hatto soniyalarda bajara oladi. Siz o‘qiyotgan hujjat statik veb-sahifa emas, balki kod yozish va bajarish imkonini beruvchi Colab notebook deb nomlangan interaktiv muhitdir. Misol uchun, bu yerda qiymatni hisoblaydigan, uni o‘zgaruvchida saqlaydigan va natijani chop etadigan qisqa Python skriptiga ega kod katakchasi mavjud: seconds_in_a_day = 24 * 60 * 60 seconds_in_a_day Yuqoridagi katakchadagi kodni bajarish uchun uni bosish bilan tanlang va keyin kodning chap tomonidagi ijro tugmasini bosing yoki “Command/Ctrl+Enter” klaviatura yorliqlaridan foydalaning. Kodni tahrirlash uchun katakchani bosing va tahrirlashni boshlang. Bir yacheykada belgilagan o‘zgaruvchilar keyinchalik boshqa kataklarda ham ishlatilishi mumkin: seconds_in_a_week = 7 * seconds_in_a_day seconds_in_a_week 12 Colab noutbuklari bajariladigan kod va boy matnni bitta hujjatda tasvirlar, HTML, LaTeX va boshqalar bilan birlashtirish imkonini beradi. O‘zingizning Colab noutbuklaringizni yaratganingizda, ular Google Drive hisob qaydnomangizda saqlanadi. Siz Colab daftarlaringizni hamkasblaringiz yoki doʻstlaringiz bilan osongina baham koʻrishingiz mumkin, bu ularga daftarlaringiz haqida fikr bildirish yoki hatto ularni tahrirlash imkonini beradi. Qoʻshimcha maʼlumot olish uchun Colab haqida umumiy maʼlumotga qarang. Yangi Colab daftarini yaratish uchun yuqoridagi Fayl menyusidan yoki quyidagi havoladan foydalanishingiz mumkin: yangi Colab daftarini yarating. Colab daftarlari Colab tomonidan joylashtirilgan Jupyter noutbuklaridir. Jupyter loyihasi haqida ko‘proq ma’lumot olish uchun jupyter.org saytiga qarang. Colab yordamida siz ma'lumotlarni tahlil qilish va vizualizatsiya qilish uchun Python kutubxonalarining to‘liq quvvatidan foydalanishingiz mumkin. Quyidagi kod katakchasi ba'zi tasodifiy ma'lumotlarni yaratish uchun numpy-dan foydalanadi va uni vizualizatsiya qilish uchun matplotlib-dan foydalanadi. Kodni tahrirlash uchun katakchani bosing va tahrirlashni boshlang. import numpy as np from matplotlib import pyplot as plt ys = 200 + np.random.randn(100) x = [x for x in range(len(ys))] plt.plot(x, ys, '-') plt.fill_between(x, ys, 195, where=(ys > 195), facecolor='g', alpha=0.6) plt.title("Sample Visualization") plt.show()