Bug‘doy navlarini tanlash jarayoniga Multiagent texnologiyalarini qo‘llash
-rasm. O‘zgarishlarga avtomatik moslashuv
Download 1.44 Mb.
|
Dissertatsiya Shaxzoda-14.04.23
- Bu sahifa navigatsiya:
- 1.3 ML tizimlarini turkumlash usullari
- 1.4. Taksonomiya usullari va tajriba berilganlarini boshlang‘ich tahlili
3-rasm. O‘zgarishlarga avtomatik moslashuv
Shubhasiz, bu uslub shovqinli muhitda, o‘nlab tillarda va millionlab odamlar gapiradigan minglab so‘zlarni qamrab ololmaydi. Eng yaxshi yechim (hech bo‘lmaganda hozircha) o‘z-o‘zidan o‘rganadigan algoritm yozishni, har bir so‘zning talaffuziga misollar bilan ko‘plab ovozli yozuvlarga ega bo‘lishni o‘z ichiga oladi. ML algoritmlari o‘zlari o‘rgangan narsalarni aniqlash uchun tekshirilishi mumkin (ba'zi algoritmlarni tekshirishda bu oson bo‘lmaydi ). Misol uchun, spam-filtr yetarli miqdordagi spam-xabarlarga o‘rgatilgandan so‘ng, uni eng yaxshi spam bashorotlovchisi deb hisoblab, so‘zlar va iboralar ro‘yxatini aniqlash darajasini tekshirish oson. Ammo bazida muammoni yaxshiroq tushunishga olib keladigan kutilmagan munosabatlar yoki yangi tendentsiyalarni topishga ehtiyoj tug‘iladi. Katta hajmdagi ma'lumotlarni o‘rganish uchun ML texnikasini qo‘llash darhol sezilmagan qonuniyatlarni aniqlashga yordam beradi. Bu “bilimni qazib olish” yoki “bilimlarni qazib olish” deb ataladi. Xulosa qilib aytganda, ML quyidagilar uchun juda yaxshi: bitta ML algoritmi ko‘pincha kodni soddalashtirishga va yaxshiroq ishlashga qodir- mavjud yechimlar esa ko‘p qo‘lda sozlashni yoki qoidalarning uzun ro‘yxatini talab qiladigan muammolar; eng yaxshi ML texnikasi an'anaviy yondashuv umuman yaxshi yechim taklif etmaydigan murakkab muammolar yechimini topishi mumkin; o‘zgaruvchan muhit - ML tizimi yangi ma'lumotlarga moslashtira oladi; murakkab vazifalar va katta hajmdagi ma'lumotlar haqida ma'lumot olish. ML tizimlarining turlari: ML tizimlarining juda ko‘p turlari mavjud bo‘lib, ularni quyidagi xususiyatlardan kelib chiqqan holda keng toifalarga guruhlash mumkin: ular inson nazorati ostida (o‘qituvchili o‘rganish, o‘qituvchisiz, yarim nazorat ostida o‘rganish va mustahkamlovchi ta'lim); asta-sekin yoki tez o‘rganish mumkin(dinamik yoki paketli o‘rganish); ular yangi ma'lumotlar nuqtalarini ma'lum ma'lumotlar nuqtalari bilan taqqoslash orqali ishlaydi yoki buning o‘rniga ular o‘quv ma'lumotlaridagi chizgilarni topadi ya’ni olimlar qiladigan ishga o‘xshash bashoratli modelni yaratadi (namuna yoki modelga asoslangan o‘rganish). Ro‘yxatda keltirilgan mezonlar bir-birini istisno qilmaydi ya’ni biz ularni xohlagan tarzda birlashtira olamiz. Misol uchun, zamonaviy spam-filtr spam-xabarlar va oddiy xabarlar misollari yordamida o‘rgatilgan chuqur neyron tarmoq modeli bilan tezda o‘rganishga qodir; bu uni dinamik, modelga asoslangan nazorat qilinadigan o‘quv tizimiga aylantiradi. Quyida eng muhim nazorat ostidagi o‘rganish algoritmlaridan ba'zilari keltirilgan: • eng yaqin qo‘shnilar • chiziqli regressiya • logistik regressiya • vektor mashinasini qo‘llab-quvvatlash (Support vektor mashinasi - SVM) • qaror daraxtlari va tasodifiy o‘rmonlar • neyron tarmoqlar (neyron tarmoq) O‘qituvchisiz o‘rganish: O‘qituvchisiz o‘rganishda, biz taxmin qilganimizdek, trening ma'lumotlari yorliqlanmaydi. Tizim o‘qituvchisiz o‘rganishga harakat qiladi. Quyida o‘qituvchisiz o‘rganishning eng muhim hisoblangan algoritmlari ro‘yxati keltirilgan: vositalar (k-vosita) haqida klasterlash ierarxik klaster tahlili (Ierarxik klaster tahlili - HCA) kutishni maksimallashtirish Vizualizatsiya va o‘lchamlarni kamaytirish Asosiy komponentlar tahlili (PCA) o Yadro PCA o Lokal-chiziqli joylashtirish (LLE) t-tarqatish bilan stoxastik qo‘shni joylashtirish (Stochastic Neighbor Embedding - t-SNE) Assotsiatsiativ qoidalarini o‘rganish Apriori haqida Eclat haqida Tegishli muammo - bu o‘lchamlarni qisqartirish va juda ko‘p ma'lumotni yo‘qotmasdan ma'lumotlarni soddalashtirishga qaratilgan. Bu ishni uddalashning bir usuli birlashtirish hisoblanadi. Misol uchun, avtomobilning yurishi uning yoshi bilan chambarchas bog‘liq bo‘lishi mumkin, shuning uchun o‘lchamlarni kamaytirish algoritmi ularni avtomobilning eskirishini ifodalovchi bitta xususiyatga birlashtiradi. Bu holat yangi xususiyat keltirib chiqarish deb ataladi [4]. Ko‘pincha o‘quv ma'lumotlarini boshqa ML algoritmiga (masalan, o‘qituvchili o‘rganish algoritmiga) o‘tkazishdan oldin o‘lchamlarni kamaytirish algoritmidan foydalanib, o‘lchovliligini kamaytirishga harakat qilish mantiqan to‘g‘ri ish hisoblanadi. Natijada, ML algoritmi ancha tezlashadi, ma'lumotlar diskda va xotirada kamroq joy egallaydi. O‘qituvchisiz ta'limning yana bir muhim vazifasi - anomaliyalarni aniqlash - masalan, firibgarlikning oldini olish uchun kredit kartalari bo‘yicha noodatiy tranzaktsiyalarni aniqlash, ishlab chiqarishdagi nuqsonlarni aniqlash yoki ma'lumotlar to‘plamini boshqa ishni o‘rganish algoritmiga o‘tkazishdan oldin avtomatik ravishda chetlab o‘tishni olib tashlash. Tizim oddiy namunalar bo‘yicha o‘qitildi va u yangi namunani ko‘rganda, u normal ko‘rinishi yoki anomaliya ekanligi haqida xabar berishi mumkin. Va nihoyat, umumiy vazifalar assotsiativ qoidalarini o‘rganishni o‘z ichiga oladi, uning maqsadi katta hajmdagi ma'lumotlarga kirish va atributlar o‘rtasidagi qiziqarli bog‘liqliklarni aniqlashdir. Masalan, bizda supermarket bor, deylik. Savdo jurnallarida assotsiativlik qoidasini ishga tushirish, barbekyu sousi va kartoshka chipslarini sotib olgan odamlar biftek sotib olishga moyil ekanligini ko‘rsatishi mumkin. Shunday qilib, ushbu mahsulotlarni bir-biriga yaqinroq joylashtirish istagi tug‘iladi. Qisman o‘rganish Ba'zi algoritmlar qisman etiketlangan o‘quv ma'lumotlari bilan ishlashga qodir, ular odatda juda ko‘p etiketlanmagan ma'lumotlarni o‘z ichiga oladigan jarayon qisman o‘rganish deb ataladi. Ko‘pgina qisman o‘rganish algoritmlari o‘qituvchisiz va boshqariladigan o‘rganish algoritmlarining kombinatsiyasidir. Misol uchun, chuqur e'tiqod tarmoqlari (DBN) bir-birining ustiga o‘rnatilgan Cheklangan Boltzmann Mashinalari (RVMs) deb nomlangan nazoratsiz o‘rganish komponentlariga asoslangan. RVMlar o‘qituvchisiz tartibda ketma-ket o‘qitiladi, shundan so‘ng butun tizim o‘qituvchili o‘rganish usullaridan foydalangan holda sozlanadi. Ma’lum bir vaziyatda siyosat agentdan qanday harakatni amalga oshirishi kerakligini belgilaydi.Misol uchun, ko‘plab robotlar qanday yurishni o‘rganish uchun mustahkamlashni o‘rganish algoritmlarini qo‘llaydi. DeepMind tomonidan ishlab chiqilgan AlphaGo dasturi ham mustahkamlovchi oʻrganishning yaxshi namunasidir: bu haqda 2017-yil may oyida Go boʻyicha jahon chempionini magʻlub etganligi matbuotda keng eʼlon qilingan edi. Ke Jie. Dasturi g‘olib siyosatini million o‘yin va keyin o‘ziga qarshi multiplayer tahlil qilish orqali bilib oldi. Ta'kidlash joizki, chempion bilan o‘yinlarda bo‘lgan; AlphaGo dasturi ilgari o‘zi o‘rgangan siyosatni qo‘lladi. To‘plamli va dinamik o‘rganish ML tizimlarini tasniflash uchun foydalaniladigan yana bir mezon tizim kiruvchi ma'lumotlar oqimi asosida bosqichma-bosqich o‘rganishi mumkinmi yoki yo‘qmi. To‘plamli o‘rganish To‘plamli o‘rganishda tizim bosqichma-bosqich o‘rganishga qodir emas: u barcha mavjud ma'lumotlardan foydalangan holda o‘rganishi kerak. Umuman olganda, jarayon ko‘p vaqt va hisoblash resurslarini talab qiladi, shuning uchun u odatda avtonom ishlaydi. Birinchidan, tizim o‘qitiladi, so‘ngra ishlab chiqarish muhitiga joylashtiriladi va qo‘shimcha o‘qitishsiz ishlaydi; u shunchaki ilgari o‘rgangan narsalarini qo‘llaydi. Bu oflayn o‘rganish deb ataladi. Agar siz ommaviy ta'lim tizimi yangi ma'lumotlar haqida bilib olishni istasangiz (masalan, spamning yangi turi), keyin biz tizimning yangi versiyasini noldan to‘liq ma'lumotlar to‘plamida (nafaqat yangi, balki eski ma'lumotlarda ham) o‘rgatishimiz kerak bo‘ladi, keyin eski tizimni o‘chirib uni yangisi bilan almashtirishimiz mumkin. ML tizimini o‘rganish, baholash va ishga tushirishning butun jarayoni juda oson avtomatlashtirilishi mumkin, hatto ommaviy o‘qitish tizimi ham o‘zgarishlarga moslasha oladi. MLga faqat ma'lumotlarni yangilab kerak bo‘lganda tizimning yangi versiyasini noldan o‘rgatish kerak. Bu yechim oddiy va ko‘pincha ajoyib ishlaydi.To‘liq ma'lumotlar to‘plami ko‘p soatlarni olishi mumkin, shuning uchun biz odatda har 24 soatda yoki hatto haftada bir marta yangi tizimni o‘rgatamiz. Agar bizning tizimimiz tez o‘zgaruvchan ma'lumotlarga moslashishi kerak bo‘lsa (aytaylik, aktsiyalarning narxini bashorat qilish uchun), unda bizga ko‘proq reaktiv yechim kerak bo‘ladi. Bundan tashqari, to‘liq ma'lumotlar to‘plami bo‘yicha treninglarni intensiv hisoblash kerak. Har kuni noldan mashq qilish uchun juda ko‘p ma'lumotlar va tizimni avtomatlashtirish bilan biz juda ko‘p pul sarflaymiz. Agar ma'lumotlar miqdori juda katta bo‘lsa, unda ommaviy o‘rganish algoritmini qo‘llash hatto imkonsiz bo‘lishi mumkin. Va nihoyat, agar bizning tizimimiz avtonom tarzda o‘rganish imkoniyatiga ega bo‘lishi va cheklangan resurslarga ega bo‘lishi kerak bo‘lsa (masalan, smartfon ilovasi yoki rover), unda katta hajmdagi o‘quv ma'lumotlarini etkazib berish va har kuni soatlab mashq qilish uchun bir nechta resurslarni iste'mol qilish hal qilib bo‘lmaydigan muammoga aylanadi. Ammo yuqorida aytib o‘tilgan barcha holatlarga nisbatan yaxshiroq variant bor - bosqichma-bosqich o‘rganish imkonini beruvchi algoritmlardan foydalanish. Dinamik ta'lim Dinamik o‘rganishda biz tizimni ketma-ket ma'lumotlar namunalarini alohida yoki mini-to‘plam deb ataladigan kichik guruhlarga ajratib berish orqali asta-sekin o‘qitamiz. Har bir o‘quv bosqichi tez va sodda, shuning uchun tizim yangi ma'lumotlar bilan tezda tanishadi. Dinamik ta'lim ma'lumotlarni uzluksiz oqimda (aytaylik, aktsiya bahosi) oladigan va o‘zgarishlarga tez yoki mustaqil ravishda moslashishi kerak bo‘lgan tizimlar uchun juda yaxshi natija beradi. Bundan tashqari, cheklangan hisoblash resurslari bo‘lgan taqdirda dinamik o‘rganish yaxshi variant bo‘ladi: dinamik o‘rganish tizimi yangi ma'lumotlar namunalari haqida bilib olgandan so‘ng, ularga endi kerak emas va shuning uchun ularni tashlab yuborishi mumkin. (agar biz avvalgi holatga qaytishni va ma'lumotlarni "qayta o‘rganishni" xohlamasak). Natijada biz katta hajmdagi joyni tejashimiz mumkin. Dinamik o‘rganish algoritmlari bitta mashinaning asosiy xotirasiga to‘g‘ri kelmaydigan ulkan ma'lumotlar to‘plamlarida tizimlarni o‘qitish uchun ham ishlatilishi mumkin (tashqi o‘rganish (outof-core learning) deb ataladigan usul). Algoritm ma'lumotlarning bir qismini yuklaydi, ushbu ma'lumotlar bo‘yicha o‘rganish bosqichini amalga oshiradi va jarayonni hammasi tugaguncha takrorlaydi. Bu butun jarayon odatda oflayn rejimda amalga oshiriladi (ya'ni jonli tizimda emas), shuning uchun "dinamik o‘rganish" atamasi chalkash bo‘lishi mumkin. Buni bosqichma-bosqich o‘rganish (ekspremental Learn) deb o‘ylang. Dinamik ta'lim tizimlarining muhim parametri ular o‘zgaruvchan ma'lumotlarga qanchalik tez moslashishi kerakligi bilan bog‘liq bo‘lib: bu jarayon o‘rganish tezligi deb ataladi. Agar biz yuqori o‘rganish tezligini belgilasak, tizimimiz tezda yangi ma'lumotlarga moslasha oladi. Shuningdek, eski ma'lumotlarni tezda unutishga moyil bo‘ladi. Aksincha, agar biz past o‘rganish tezligini belgilasak, tizim yanada inert bo‘ladi, bu holda u sekinroq mashq qiladi, lekin yangi ma'lumotlar yoki vakili bo‘lmagan ma'lumotlar nuqtalarining ketma-ketligidagi shovqinlarga nisbatan kam sezgir bo‘ladi. Dinamik o‘rganish bilan bog‘liq katta muammo shundaki, agar tizimga noto‘g‘ri ma'lumotlar kiritilsa, uning foydali ish koeffitsienti asta-sekin kamayadi. Agar biz jonli tizim haqida gapiradigan bo‘lsak, unda bizning mijozlarimiz bunday pasayishni sezadilar. Misol uchun, noto‘g‘ri ma'lumotlar robotdagi noto‘g‘ri ishlaydigan sensorlardan kelib chiqishi mumkin. Ushbu xavfni kamaytirish uchun biz tizimni diqqat bilan kuzatib borishimiz kerak va unumdorlikning pasayishini aniqlasak, darhol o‘rganishni to‘xtatib qo‘yishimiz (va, ehtimol, avvalgi ish holatiga qaytishingiz mumkin). Bundan tashqari, kiritishni kuzatishingiz kerak bo‘lishi mumkin ma'lumotlar va anomal ma'lumotlarga javob berish (masalan, algoritm yordamida anomaliyalarni aniqlash). 1.3 ML tizimlarini turkumlash usullariML tizimlarini turkumlashning yana bir usuli ularning qanday umumlashtirilishi bilan bog‘liq. ML vazifalarining aksariyati bashorotlash bilan bog‘liq. Bu shuni anglatadiki, tizim berilgan sonli o‘quv misollarini avval ko‘rmagan misollar bilan umumlashtirishi kerak. Trening ma'lumotlari bo‘yicha tegishli samaradorlik o‘lchoviga ega bo‘lish yaxshi shart hisoblanadi, ammo yetarli bo‘lmaydi; haqiqiy maqsad esa yangi dizaynlar ustida maqbul ishlash hisoblanadi[5]. Umumlashtirishning ikkita asosiy yondashuvi mavjud bo‘lib ular quyidagilar: namunaga asoslangan ta'lim va modelga asoslangan ta'lim. Chizgilarga asoslangan o‘rganish, ehtimol bu, o‘rganishning eng ahamiyatsiz shakli ya’ni shunchaki yodlashdir. Agar biz xuddi shunday tarzda spam filtrini yaratmoqchi bo‘lsak keyin u faqat foydalanuvchilar tomonidan belgilangan xabarlarga o‘xshash xabarlarni aniqlaydi – ammo bu eng yaxshi yechim hisoblanmaydi. Faqat ma'lum spam-xabarlarga o‘xshash xabarlarni aniqlash o‘rniga, spam-filtrimiz ma'lum spam-xabarlarga juda o‘xshash xabarlarni belgilash uchun dasturlashtirilgan bo‘lib qoladi. Bunday vazifa ikkita xabar o‘rtasidagi o‘xshashlikni aniqlashni talab qiladi.Bu ikki xabar o‘rtasidagi o‘xshashlikning elementar o‘lchovi bo‘lishi mumkin Agar unda ma'lum bo‘lgan spam xabarida topilgan ko‘plab so‘zlar bo‘lsa tizim xabarni spam deb belgilaydi. Bu namunaga asoslangan ta'lim deb ataladi:Bunda tizim xotiradan misollarni o‘rganadi va keyin ularni o‘xshashlik o‘lchovlari yordamida yangi misollar uchun umumlashtiradi. Modelga asoslangan ta'lim Misollar to‘plamini umumlashtirishning yana bir usuli bu misollarning modelini yaratish va undan bashorat qilish uchun foydalanishni o‘z ichiga oladi. Bu modelga asoslangan ta'lim deb ataladi. Aytaylik, bizni pul odamlarni baxtli qiladimi yoki yo‘qmi savoli qiziqtirayotgan bo‘lsin, shuning uchun biz Iqtisodiy hamkorlik va taraqqiyot tashkiloti (OECD) veb-saytidan Better Life Index va Xalqaro valyuta jamg‘armasi veb-saytidan aholi jon boshiga yalpi ichki mahsulot (YaIM) statistikasi ma'lumotlarini yuklab olamiz Keyin biz jadvallarni umumlashtiramiz va aholi jon boshiga to‘g‘ri keladigan YaIM bo‘yicha jadvalni tartiblaymiz. Ya’ni bu jadvallar biz oladigan ma’lumotlarning namunasidir. Biz modelimiz qanchalik yaxshi ekanligini o‘lchaydigan foydali funksiyani (yoki fitnes funksiyasini) yoki model qanchalik yomonligini o‘lchaydigan qiymat funktsiyasini aniqlashimiz mumkin. Lineer regressiya muammolari uchun odamlar odatda xatoliklarni o‘lchaydigan qiymatlar funktsiyasidan foydalanishadi Masofani minimallashtirish maqsadida chiziqli modelni bashorat qilish va o‘qitish misollari olinishi mumkin. Bu erda chiziqli regressiya algoritmi katta rol o‘ynaydi: biz unga o‘qitish misollarini beramiz va u chiziqli modelni ma'lumotlarga yaxshiroq moslashtiradigan parametrlarni topadigan jarayon deyiladi Namunaviy trening ko‘rib chiqilayotgan holatda, algoritm parametrlarning optimal qiymatlari eo = 4,85 va el = 4,91 x 10-5 ekanligini aniqlaydi. Agar berilgan ma’lumotlar to‘g‘ri bo‘lsa, bizning modelimiz yaxshi bashoratlarni beradi. Agar berilgan ma’lumotlar to‘g‘ri bo‘lmasa, unda ko‘proq alomatlarni hisobga olish kerak bo‘ladi. Endi yuqoridagilarni umumlashtiramiz: • biz ma'lumotlarni o‘rgandik; • biz modelni tanlaganmiz; • biz modelni o‘quv ma'lumotlari bilan ta’minladik (ya'ni, o‘qitish algoritmi qiymatlar funktsiyasini minimallashtiradigan model parametrlari uchun qiymatlarni qidirdi); • Nihoyat, biz modelni yaxshi umumlashtirishga umid qilib, yangi namunalar bo‘yicha bashorat qilish uchun modelni qo‘lladik (chiqarish deb ataladi). ML tizimlarining eng keng tarqalgan toifalari va odatiy loyihaning ish jarayoni qanday ko‘rinishga ega. Mashg‘ulotlarda noto‘g‘ri va aniq bashoratlarni ishlab chiqishga nima to‘sqinlik qilishini ko‘ramiz. Chunki, bizning asosiy vazifamiz ikkita bo‘lishi mumkin Mashinali o‘rganishning asosiy muammolari o‘rganish algoritmini tanlash va uni ma'lum ma'lumotlarga o‘rgatishdan iborat.Ular "noto‘g‘ri algoritm" va "noto‘g‘ri ma'lumotlar": Biz noto‘g‘ri ma'lumotlarga misollar ko‘rishdan boshlaymiz: -Trening maʼlumotlari hajmi yetarli emas Farzandingizga olma nima ekanligini o‘rgatish uchun siz olmani ko‘rsatib, "olma" so‘zini aytishingiz kerak (ehtimol, protsedurani bir necha marta takrorlash lozim). Bunda bola barcha rang va shakldagi olmalarni aniqlay oladi. Mashinali o‘rganish hali ham bundan uzoqdir; Ko‘pgina ML algoritmlari to‘g‘ri ishlashi uchun juda ko‘p ma'lumotlarni talab qiladi. Hatto juda oddiy vazifalarni bajarish uchun ham MLga minglab na’munalar kerak bo‘ladi, lekin tasvir yoki nutqni aniqlash kabi murakkab vazifalar uchun millionlab na’munalar kerak bo‘ladi Ma'lumotlarning asossiz samaradorligi 2001 yilda nashr etilgan mashhur maqolada Microsoft tadqiqotchilari Mishel Banquo va Erik Brill mashinali o‘rganishning juda xilma-xil algoritmlari, shu jumladan juda oddiylari ham deyarli bir xil ishlashini ko‘rsatadi. Ularga yetarlicha ma’lumotlar berilganda tabiiy tilni ajratib ko‘rsatish kabi qiyin vazifani yaxshi bajardi[6]. Mualliflarning ta'kidlashicha: "Bunday natijalar bizni vaqtni behuda sarflash va bekor qilish o‘rtasidagi kelishuvni qayta ko‘rib chiqish vasvasasiga tushishimiz mumkinligini ko‘rsatadi. Algoritmlarni ishlab chiqish va ularning xatolarini tuzatish uchun juda ko‘p pul ajratiladi': Murakkab muammolar uchun ma'lumotlar algoritmlardan ko‘ra muhimroq degan g‘oya Piter Norvig va boshqalar tomonidan yozilgan "Ma'lumotlarning asossiz samaradorligi" sarlavhali maqolada yanada ommalashgan. (“Unreasonable Data Efficiency”) 2009 yilda chop etilgan Biroq shuni ta’kidlash kerakki, kichik va o‘rta o‘lchamdagi ma’lumotlar to‘plamlari hali ham juda keng tarqalgan va qo‘shimcha o‘quv ma’lumotlarini olish har doim ham oson yoki sodda emas, shuning uchun hozir algoritmlardan voz kechmaslik kerak . 1.4. Taksonomiya usullari va tajriba berilganlarini boshlang‘ich tahliliDownload 1.44 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling