612-19- guruh talabasi Mirxoshimov Isfandiyor
Mavzu: Mashinali o’qitish faniga kirish va uning asosiy tushunchalari, algoritmlari
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.
Bu sohaga qanday kirish mumkinligi to’g’risida birqancha saytlardagi fikrlarnbi korib chiqamiz:
Machine Leaning – analitik model yaratishni avtomatlashtiradigan ma’lumotlarni tahlil qilish usuli bo’lib, u ma’lumotlarni o’rgana oladi. Machine Leaning insonning minimal aralashinuvi bilan qaror qabul qilishi mumkin degan g’oyaga asoslangan yo’nalish.
Agar siz Machine Leaning va Data Science sohalariga qiziqib ularni o’rganishni boshlamoqchi bo’lsangiz bu maqola sizga oz bo’lsada tushuncha bera oladi degan umiddamiz! Unda Machine Learning va Data Science haqida ma’lumot berib o’tmoqchimiz.
Birinchi navbarta dasturlash tilini tanlab olishingiz kerak bo’ladi. Masalan, Python, R, Matlab, C/C++ va boshqa dasturlash tillari ( bu sizga bog’liq ). Python-Machine Learning va Data Science sohalarida keng qo’llaniladigan tillardan biridir.
Python o’rganish uchun oson va kuchli dasturlash tili hisoblanadi! U to’liq ishlab chiqilgan, algoritmlarni amalga oshirish uchun ajoyib vosita. Aynan ushbu dasturlash tilida ko’plab Data Analysis va Machine Learning uchun paketlar(packages) mavjud.
Artificial intelligence
Mavzu: Mashinali o’qitish turlari. Mashinali o’qitishning umumiy qadamlari
Machine Leaning’ning 4 ta yo’nalishi bor:
1. Supervised Learning
“Supervised Learning atamasi Machine Learning tizimiga nima qilish kerakligini ko’rsatuvchi o’qituvchi yoki o’rgatuvchi tomonidan taqdim etilgan maqsad y nuqtai nazaridan kelib chiqadi.”
Supervised Leaning, tasniflash va regressiya muammolarida yaxshi. Masalan, yangilik maqolasi qaysi toifaga tegishli ekanligini aniqlash yoki kelajakdagi ma’lum bir sana uchun sotish hajmini bashorat qilish. Supervised Leaning’ning vazifasi savolga eng optimal javobni topib bera olishdan iborat.
Barcha Machine Learning algoritmlari singari, Supervised Leaning mashg’ulotlarga asoslangan. O’qitish bosqichida tizim etiketli (label’langan) ma’lumotlar to’plamlari bilan oziqlanadi, ular tizimga har bir muayyan kirish qiymatiga qanday chiqish bog’liqligini ko’rsatadi. Keyin o’qitilgan model sinov ma’lumotlari bilan taqdim etiladi: Bu etiketlangan (label’langan) ma’lumotlar, ammo yorliqlar algoritmga oshkor etilmagan. Sinov ma’lumotlarining maqsadi etiketsiz (label’lanmagan) ma’lumotlarda algoritm qanchalik aniq ishlashini o’lchashdir.
2. Unsupervised Learning
“Unsupervised Learning’ da o’qituvchi yoki o’rgatuvchiga hojat yo’q! Algoritm ushbu qo’llanmasiz ma’lumotlarni tushuna olishi kerak.”
U nsupervised Learning’ni regressiya yoki tasniflash muammosiga to‘g‘ridan-to‘g‘ri qo‘llash mumkin emas, chunki Supervised Learning’dan farqli o‘laroq, bizda kirish ma’lumotlari mavjud, lekin tegishli chiqish ma’lumotlari yo‘q. Unsupervised Learning’ning maqsadi ma’lumotlar to’plamining asosiy tuzilishini topish, ma’lumotlarni o’xshashliklari bo’yicha guruhlash va ushbu ma’lumotlar to’plamini tartiblangan formatda taqdim etishdir.
3. Semi – Supervised Learning
Semi – Sepervised Learning(SSL) nazorat ostida va nazoratsiz o’rganish o’rtasidagi yarmidir. Belgilanmagan ma’lumotlarga qo’shimcha ravishda, algoritm ba’zi nazorat ma’lumotlari bilan ta’minlangan — lekin barcha misollar uchun shart emas. Ko’pincha, bu ma’lumotlar ba’zi misollar bilan bog’liq bo’lgan maqsadlar bo’ladi.”
4. Reinforcement Learning
Reinforement Learning (RL) qaror qabul qilishga qaratilgan bo’limdir. Bu maksimal mukofot olish uchun muhitda maqbul vaziyatni o’rganishdir. Bu optimal darajada atrof-muhit bilan o’zaro ta’sir qilish va uning qanday munosabatda bo’lishini kuzatish orqali o’rganiladi, xuddi bolalar atrofdagi dunyoni o’rganishlari va maqsadga erishishga yordam beradigan harakatlarni o’rganishlari kabi.
Aytaylik, musobaqada nazoratchi yo’q bo’lganda, Reinforcement Learning mukofotni maksimal darajada oshiradigan harakatlar ketma-ketligini mustaqil ravishda kashf qilishi kerak. Ushbu kashfiyot jarayoni sinov va xato qidiruviga o’xshaydi. Harakatlarning sifati nafaqat ular qaytaradigan darhol mukofot, balki ular olishi mumkin bo’lgan kechiktirilgan mukofot bilan ham o’lchanadi. Nazoratchining yordamisiz ko’rinmas muhitda yakuniy muvaffaqiyatga olib keladigan harakatlarni o’rganishi mumkinligi sababli, mustahkamlashni o’rganish juda kuchli algoritmdir. U qabul qilayotgan barcha ma’lumotlarini saqlaydi va eslab qoladi. Keyin eng optimal variantlarni taqdim etadi.
Mavzu:Mashinali o’qitishda instrumental vositalardan foydalanishMatlab/paython dasturiy muhiti bilan ishlash
Mashinali oqitish (MO) uchun kerakli instrumental vositalar (Octave/ Matlab/Python/) tahlili va imkoniyatlari bilan tanishish GNU Octave - bu MATLAB bilan mos keladigan yuqori darajadagi tilni ishlatadigan bepul matematik hisoblash tizimi. Bu chiziqli va chiziqli bo'lmagan matematik masalalarni echish hamda boshqa raqamli tajribalarni bajarish uchun interaktiv buyruq interfeysini taqdim etadi. Bundan tashqari, Oktav partiyani qayta ishlash uchun ishlatilishi mumkin. Oktav tili haqiqiy va murakkab skalar va matritsalar arifmetikasi bilan ishlaydi, chiziqli algebraik masalalarni echish, chiziqli bo'lmagan algebraik tenglamalar tizimining ildizlarini topish, polinomlar bilan ishlash, har xil differentsial tenglamalarni echish, differentsial va differentsial-algebraik tizimlarni birlashtirish uchun kengaytmalarga ega. funktsiyalarni cheklangan va cheksiz intervallarga birlashtirgan birinchi darajadagi tenglamalar. Ushbu ro'yxat Oktav tili yordamida osonlikcha kengaytirilishi mumkin (yoki C, C ++, Fortran va boshqalarda yaratilgan dinamik ravishda yuklanadigan modullar yordamida).
Oktav MATLAB muvofiqligini hisobga olgan holda yozilgan va uning ko'plab xususiyatlarini amalga oshiradi: Matritsalar ma'lumotlarning asosiy turlari sifatida; Kompleks raqamlar uchun o'rnatilgan qo'llab-quvvatlash; Kuchli o'rnatilgan matematik funktsiyalar va katta funktsiyalar kutubxonalari; Kengaytirilganlik, maxsus funktsiyalarni yaratish qobiliyati tufayli. Ammo farqlar ham mavjud: Sharhlar # va% bilan boshlanishi mumkin; C kabi operatorlar ++, -, + =, * =, / = qo'llab-quvvatlanadi; Elementlarga yangi o'zgaruvchini yaratmasdan murojaat qilish mumkin, masalan [1:10]; Qatorlar "" "va" "" belgilar bilan belgilanishi mumkin.
Python hozirda eng keng qo'llaniladigan dasturlash tillaridan biridir. Uning afzalliklaridan biri bu turli xil vazifalarni hal qiladigan ko'plab to'plamlardir. Ushbu o'quv qo'llanma uchun biz ma'lumotlarni o'qish, saqlash va qayta ishlashni ancha osonlashtiradigan Pandas, NumPy va SciPy kutubxonalaridan foydalanishni tavsiya etamiz. Shuningdek, sizga ko'plab mashinalarni o'rganish algoritmlarini amalga oshiradigan Scikit-Learn to'plami taqdim etiladi.
Shuni ta'kidlash kerakki, Pythondagi asosiy farqlar: Satr oxirida izlarning yo'qligi (nuqta, vergul va hk), bu yozishni chiziqli konstruksiyalarni juda "yoqimli" va tezkor qiladi (va ko'pgina kompyuter dasturlari hali ham chiziqli matematik, ammo murakkab ko'p darajali tizimlar emas). Bo'shashmasdan terish. O'zgaruvchini e'lon qilishda ma'lumotlar turini e'lon qilishning hojati yo'q, bu yana modelni yaratish jarayonini tezlashtiradi. Python talqin qilingan, o'zaro faoliyat platforma va yaxshi disk raskadrovka vositalariga ega. Ilovalarni ishlab chiqish uchun bizga quyidagilar kerak: Til, kod ishlab chiqish muhiti (IDE) va ishlash vaqti. Bizning holatlarimizda bu Anaconda va PyCharm. Asosiy kutubxonalar to'plami: Scikit-learn, Numpy, Pandas, Matplotlib, Theano, Keras. Muhim nuqta shundaki, asl holatida ishlash uchun barcha komponentlar Windows tizimiga xos emas, shuning uchun ushbu ko'rsatmalar birinchi navbatda Windows foydalanuvchilari uchun amal qiladi.
Mavzu: bir o’zgaruvchili va ko’p o’zgaruvchili chiziqli regressiya masalalari va ularni dasturlash
Chiziqli regressiya - bu mustaqil (bashorat qiluvchi) va qaram (mezon) o'zgaruvchisi o'rtasidagi bog'liqlik haqida ko'proq ma'lumot olish uchun foydalaniladigan statistik usul. Tahlilingizda bir nechta mustaqil o'zgaruvchilar mavjud bo'lganda, bu ko'p chiziqli regressiya deb nomlanadi. Umuman olganda, regressiya tadqiqotchiga “… eng yaxshi bashoratchi nima?” Degan umumiy savolni berishga imkon beradi.
Masalan, tana massasi indeksi (BMI) bilan o'lchangan semirishning sabablarini o'rgangan edik. Xususan, quyidagi o'zgaruvchilar insonning BMI-ni muhim bashorat qiladimi yoki yo'qligini aniqlashni xohladik: haftada iste'mol qilinadigan tez ovqatlanish soni, haftada televizor tomosha qilish soni, haftada mashq bajarish uchun sarflangan daqiqalar soni va ota-onalarning BMI. . Chiziqli regressiya ushbu tahlil uchun yaxshi usul bo'lar edi.
Bitta mustaqil o'zgaruvchi bilan regressiya tahlilini o'tkazayotganingizda, regressiya tenglamasi Y = a + b * X, bu erda Y - o'zgaruvchi, X - mustaqil o'zgaruvchi, a - doimiy (yoki kesishgan), va b - qiyalik. regressiya chizig'ining Masalan, GPA 1 + 0.02 * IQ regressiya tenglamasi bo'yicha eng yaxshi taxmin qilingan deylik. Agar talabada IQ 130 bo'lsa, demak uning GPA 3,6 ga teng (1 + 0,02 * 130 = 3,6).
Bir nechta mustaqil o'zgaruvchiga ega bo'lgan regressiya tahlilini o'tkazayotganda, Y = a + b1 * X1 + b2 * X2 +… + bp * Xp tenglamasi. Masalan, agar biz GPA tahliliga ko'proq o'zgaruvchilarni, masalan, rag'batlantirish va o'zini o'zi tarbiyalash choralarini qo'shishni xohlasak, biz ushbu tenglamadan foydalanamiz.
R-kvadrat, aniqlash koeffitsienti sifatida ham tanilgan, regressiya tenglamasining modelga mosligini baholash uchun keng tarqalgan statistikadir. Ya'ni, barcha mustaqil o'zgaruvchilar sizning bog'liq o'zgaruvchingizni bashorat qilishda qanchalik yaxshi? R-kvadratning qiymati 0,0 dan 1,0 gacha o'zgarib turadi va tushuntirilgan teskari foizni olish uchun 100 ga ko'paytirilishi mumkin. Masalan, faqat bitta mustaqil o'zgaruvchi (IQ) bilan GPA regressiya tenglamamizga qaytamiz ... Aytaylik, tenglama uchun R kvadratimiz 0,4 edi. Biz buni GPAdagi tafovutning 40% IQ bilan izohlashini tushunishimiz mumkin. Agar biz boshqa ikkita o'zgaruvchini (motivatsiya va o'zini o'zi tarbiyalash) qo'shsak va R-kvadrat 0,6 ga ko'tarilsa, demak, IQ, motivatsiya va o'z-o'zini tarbiyalash birgalikda GPA ballaridagi farqning 60% ni tushuntiradi.
Regressiya tahlillari odatda SPSS yoki SAS kabi statistik dasturlar yordamida amalga oshiriladi va shuning uchun R-kvadrat siz uchun hisoblanadi.
Yuqoridagi tenglamalardan b koeffitsientlari mustaqil va bog'liq bo'lgan o'zgaruvchilar o'rtasidagi munosabatlarning kuchini va yo'nalishini anglatadi. Agar GPA va IQ tenglamalariga qarasak, 1 + 0.02 * 130 = 3.6, 0.02 - o'zgaruvchan IQ uchun regressiya koeffitsienti. Bu bizga munosabatlar yo'nalishi ijobiy ekanligini aytadi, shunda IQ oshgani sayin GPA ham ortadi. Agar tenglama 1 - 0,02 * 130 = Y bo'lsa, demak, bu IQ va GPA o'rtasidagi munosabatlar manfiy bo'lgan degan ma'noni anglatadi.
Dostları ilə paylaş: |