Mashinali o’qitish. Mashinali o’qitish algoritmlari Ma’ruza rejasi Statistik usullar va ularning xususiyatlari Mashinali o’qitish nima? O’qitish masalasi Mashinali o’qitish algoritmlari ◦ Supervised o’qitish ◦ Unsupervised o’qitish Data set (Ma’lumotlar to’plami) nima? SciPy paketida Mashinali o’qitish qo’llanilishi Foydalanilgan adabiyotlar SI uchun statistik usullar Hozirgi kunda sun’iy intellekt algoritmlari va dasturlarini ishlab chiqishda an’anaviy statistik usullardan foydalanilmoqda. Berilgan to’plamlar qiymatlari asosida regressiya va chiqizli interpolyatsiya usullaridan foydalanib kelingan. Quyida mavjud statistik usullar keltirilgan bo’lib, bular hozirgi kunda SI algoritmlari va dasturlarini ishlab chiqishda keng foydalanib kelinmoqda: ◦ Regressiya ◦ Sinflashtirish ◦ Klasterlash ◦ Ehtimollar nazariyasi ◦ Qoidalar daraxti Mashinali o’qitish Mashinali o’qitish (Machine Learning) – bu kompyuterni dasturlashning yangi yo’nalishi bo’lib, dasturning ma’lumotlarni o’qib olish va shu ma’lumotlar asosida o’rganish xususiyatiga ega bo’lishidir. [Mashinali o’qitish] kompyuterning ma’lumotlarni o’qib olish asosida xususiyatlarni o’rganish qobiliyatidir - Arthur Samuel, 1959 A dastur bu E tajriba asosida T masalani yecishda P samaradorlik o’lchovi bilan yaratiladi, va T masala samaradorligi P orqali tekshiriladi va aniqligi E tajriba asosida amalga oshiriladi - Tom Mitchell, 1997 Tasvirni tanib oluvchi dastur Kiruvchi tasvir Tasvirni tanib oluvchi dastur modeli Model natijasi Modelni o’qitish ....... Mashinali o’qitish O’qitish masalasi X- obyektlar to’plami Y- javoblar to’plami y:X->Y no’malum bog’liqlik esa target function(maqsad funksiya) deyiladi. Berilgan: {x1, . . . , xℓ } X — o’qtiluvchi to’plam(training sample) yi = y (xi ), i = 1, . . . , ℓ — ma’lum javoblar O’qitish masalasi Demak o’qitish masalasi deganda a : X → Y moslikni xal qilivchi algoritmga aytiladi (decision function). Mashinani o’qitish jarayoni bosqichlari Mashinani o’qitish jarayoni chiziqli yoki nochiziqli bo’lishiga qaramasdan quyidagi bosqichlarda amalga oshiriladi: ◦ Muammoni aniqlash. ◦ Ma’lumotlarni tayyorlash. ◦ Algoritmni ishlab chiqish va baholash (testlash). ◦ Natijaviy ma’lumotlar aniqligini oshirish. ◦ Yakuniy natijani (ishlab chiqilgan model) taqdim qilish. Mashinali o’qitish turlari • O’qituvchili o’qitish (Supervised learning) – bu modelni xususiyatlari aniq bo’lgan ma’lumotlar bilan o’qitish. (Regressiya, sinflashtirish) • O’qituvchisiz o’qitish (Unsupervised learning) – bu modelni xususiyatlari aniq bo’lmagan ma’lumotlar bilan o’qitish.(Klasterlash) Supervised Unsupervised • Semi-supervised learning – bu modelni ham aniq ham aniq bo’lmagan xususiyatli ma’lumotlar bilan o’qitishdir. Semisupervised • Reinforcement – bu o’qitishning mukammal usuli bo’lib, bunda model o’zini-o’zi qayta o’qitish va natijalarni yaxshilash imkoniyatiga ega bo’ladi. Reinforcement Supervised learning O’qituvchili o’qitish (Supervised learning) – bu modelni xususiyatlari aniq bo’lgan ma’lumotlar bilan o’qitish. Bunday turdagi o’qitish usullariga Regressiya va Sinflashtirish masalalarini misol keltirish mumkin. Bunda xususiyatlari aniq deganda kiruvchi va chiquvchi parametrlar mavjud bo’lishi nazarda tutiladi. Regression Classification Supervised learning Modelni o’qitishda foydalaniladigan ma’lumotlar odatda ikkita qismga ajratiladi va ular 80:20 nisbatda olinadi. Ya’ni ma’lumotlarning 80% o’qitiluvchi ma’lumot va qolgan 20% esa modelni testlovchi ma’lumot bo’lib xizmat qiladi. O’qitish jarayonida model kiruvchi va chiquvchi ma’lumotlarning 80% dan foydalanadi va modelni o’qitish faqat ushbu ma’lumot orqali amalga oshiriladi. Supervised learning Regressiya nima? Regressiya bu – ma’lumotlarni intellektual tahlil qilish usullaridan biri bo’lib, obyekt yoki jarayonga tegishli o'zgaruvchilar o'rtasidagi o'zaro bog'liqlikni baholash uchun statistik jarayonlar to'plami hisoblanadi. Regression tahlil chiziqli yoki nochiziqli, o’z navbatida logistik regressiya usullari asosida amalga oshiriladi. Regression tahlil asosan bashorat qilish va prognoz qilish uchun keng qo'llaniladi va hozirda ushbu usulning ishlatilishi mashinali o’qitish sohasi bilan mos keladi. Regressiya va uning turlari Regressiya asosida yaratiladigan model ma'lumotlarni berilgan nuqtalardan o'tgan eng yaxshi giper tekislikka (nuqtalar o’rtasidan o’tishiga) moslashtirishga harakat qiladi. Regression tahlilda turli xil modellardan foydalanish mumkin, eng sodda model chiziqli regressiya asosida quriladi. Regressiyaga misol (chiziqli) Avtomobil narxini hisoblash modelini yaratish x: bu avtomobilning kilometraj ko’rsatkichi y: avtomobil narxi y = g(x|θ) bu yerda g() – model θ0 va θ1 – model parametrlari Regressiyaga misol (Python muhitida) Regressiyaga misol (nochiziqli) 1. x – obyekt parametri Model ko’rinishi: 2. obyekt parametri Model ko’rinishi: O’qituvchili o’qitish algoritmlari Linear Regression Nearest Neighbor Gaussian Naive Bayes Decision Trees Support Vector Machine (SVM) Random Forest Ma’lumotlar to’plami (Data set) Data set - bu o’qitish uchun kerakli bo’lgan ma'lumotlar to'plamidir. Boshqacha aytganda, ma'lumotlar to'plami ma'lumotlar bazasi jadvalining yoki bitta statistik ma'lumotlar matritsasining qiymatlarini hisoblanib, bunda jadvalning har bir ustuni ma'lum o'zgaruvchini yoki parametr (x1,x2,....,xn) qiymatini ifodalasa, har bir satr esa berilgan parametrlar asosidagi obyekt qiymatiga (X1, X2,....,XN) to'g'ri keladi. Machine Learning loyihalarida biz o'quv ma'lumotlari to'plamidan (training data set) foydalanamiz. Bu turli xil harakatlarni bajarish uchun modelni o’qitish uchun ishlatiladigan haqiqiy ma'lumotlar to'plami hisoblanadi. Ma’lumot to’plamlari (data set) turlari Mashinani o’qitish jarayonida va modelning to’liq ishlashini ta’minlash maqsadida quyidagi ma’lumotlar to’plami turlaridan foydalaniladi: o’qituvchi to’plam, o’quv tanlanma (training set); validatsiya to’plami (validation set); testlash to’plami (testing set). Ma’lumotlarga dastlabki ishlov berish Ma’lumotlar turini belgilash (Format): O’qituvchi to’plamdagi ma’lumotlar turi va toifasini moslashtirish (Misol uchun, o’qitiluvchi to’plam sifatida 100 t rasm olingan bo’lsin, rasmlar har xil o’lchamda yoki har xil fayl formatida bo’lishi mumkin). Ma’lumotlarni tozalash (Data Cleaning): Ushbu bosqichda ma’lumotlar orasidan ortiqcha yoki ahamiyati past bo’lgan (masalan, sifati juda past bo’lgan tasvirlar, o’lchami juda kichik bo’lgan rasmlar), model turg’unligiga ta’sir qiluvchi ma’lumotlar olib tashlanadi. Xususiyatlarni ajratib olish (Feature Extraction): Ushbu bosqichda o’qituvchi to’plamdagi ma’lumotlar xususiyatlari o’rganib chiqiladi va bashoratlash, tashxislash, sinflashtirish, qaror qabul qilish uchun kerakli xususiyatlar ajratib olinadi. (Misol uchun rasmda “olma” tasvirlanganligini belgilab beruvchi xusisyatlar). Ma’lumotlarga dastlabki ishlov berish Unsupervised learning O’qituvchisiz o’qitish (unsupervised learning) – bu mashinani o’qitish usulidan biri bo’lib, bunda modelni oldindan aniq bo’lgan ma’lumotlar bilan o’qitish amalga oshirilmaydi, aksincha obyekt parametrlarini (ma'lumotlarni) topish uchun modelga o'z ustida ishlashga imkon yaratib beriladi. Supervised learning usuliga qaraganda murakkab usul hisoblanadi va bashoratlash jarayoni avtomatik lekin noaniqroq bo’lishi mumkin. Unsupervised learning usulida asosan “klasterlash” masalasi yechiladi. Unsupervised learning Unsupervised learning: “Klasterlash” Unsupervised learning turlari Clustering ◦ Hierarchical clustering ◦ K-means clustering ◦ K-NN (k nearest neighbors) ◦ Principal Component Analysis ◦ Singular Value Decomposition ◦ Independent Component Analysis Artificial intelligance with ML Foydalanilgan adabiyotlar Aurelian Geron, Hands on Machine Learning with Scikit-Learn Keras&Tensorflow // Second edition Concepts, Tools, and Techniques to Build Intelligent Systems, 2019, 510 pages https://www.geeksforgeeks.org/ml-machine-learning/ https://www.geeksforgeeks.org/ml-types-learning-supervised-learning/ https://www.guru99.com/unsupervised-machine-learning.html