“kompyuter injiniring” fakulteti IV bosqich ki 11-19 guruh talabasining


Download 0.55 Mb.
Pdf ko'rish
Sana09.06.2023
Hajmi0.55 Mb.
#1474964
Bog'liq
3-mustaqil ish davomi



0’ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA 
KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI 
MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT 
TEXNOLOGIYALARI UNIVERSITETI QARSHI FILIALI 
 
 
“KOMPYUTER INJINIRING” FAKULTETI 
IV BOSQICH KI 11-19 GURUH TALABASINING 
“Mashinali o’qitishga kirish ” fanidan 
Mustaqil ishi 
 
 
 
 
 
 
 
 
Bajardi:
 
 
 
 
 
Eshmurodova D 
Qabul qildi: 
 
 
 
 
 
Ochilova S 
 


Mustaqil ishni
davomi 
Nerv tarmog'ini ishga tushiring 
TrainingAnswers-ning boshlanishi har bir savol uchun [0, 0, 0, 0] bo'lgan qatorni 
yaratadi - bu bizning tanlangan holatimizsiz tanlov. Shuningdek, biz neyron 
tarmog'imizni boshlashimiz kerak bo'ladi - faqat brain.js bilan bitta qator: 
Viktorina doirasini yarating 
Viktorinamizning asosini yaratish uchun biz o'quv savollari va variantlarini ko'rib 
chiqishimiz kerak. Bu juda aniq va unchalik qiziq emas, shuning uchun men 
buning o'rniga siz maqsadga erishish uchun misol keltiraman: 
render () {return (main> form onSubmit = {this.onSubmit}> [..]] // savollar va 
variantlarni takrorlash div className = “question”> h4> {question} / h4> div 
className = “options” > label htmlFor = {optionId}> span> {label} / span> input 
type = ”radio” talab qilingan ism = {questionId} id = {optionId} check = {() => 
this.isOptionChecked (questionIndex, optionIndex)} onChange = {() => 
this.onOptionChange (questionIndex, optionIndex)} /> / label> [...] / div> / div> 
[...] button type = ”submit”> Submit / button> / form> / main>); } 
Agar siz React bilan yangi tanishsangiz, qurilish shakllari uchun hujjatlarni ko'ring. 
Biz yozishimiz mumkin isOptionChecked va OnOptionChange keyingi 
funktsiyalar: 
isOptionChecked = (questionIndex, optionIndex) => (this.state.trainingAnswers 
[questionIndex] [optionIndex]! == 0); onOptionChange = (questionIndex, 
optionIndex) => {this.setState (prevState => {const {trainingAnswers} = 
Object.assign (prevState, {}); trainingAnswers [questionIndex] = Array (4) .fill 
(0); trainingAnswers [ questionIndex] [optionIndex] = 1; return 
{trainingAnswers};}); }; 


Endi, foydalanuvchimiz biron bir variantni bosganida, biz tegishli narsani 
yangilaymiz ta'lim Javoblar xususiyati uchun qator 1 tanlangan indeksda va radio 
tugmachasining holatini o'zgartirib, uni tekshirilgandek ko'rsatish kerak. 
Bizning vaqtni qo'shish vaqti keldi onSubmit funktsiyasi, bu erda biz o'quv 
ma'lumotlarini yaratamiz va asab tarmog'ini o'rgatamiz: 
onSubmit = e => {e.preventDefault (); const {trainingAnswers} = this.state; const 
trainingData = trainingQuestions.map ((q, i) => ({input: q.options.map (o => 
o.value), output: trainingAnswers [i],})); this.setState ({Training: true,}); 
this.net.trainAsync (trainingData) .then (res => {console.log (res); // Xatolik 
darajasi va # takrorlashni this.getPreditions ()}) qayd qiling; } 
Looping o'quv savollari, biz kerakli kirish va chiqish massivlarini yaratamiz. Biz 
har bir variantning optimizm qiymatini olish orqali kirish ma'lumotlarini olamiz va 
chiqish ma'lumotlarini ta'lim Javoblar savol bilan bir xil indeksdagi qator. 
Shundan so'ng biz davlatni yangilaymiz ta'lim: to'g'ri neyron tarmoq 
o'rganayotgani haqida foydalanuvchiga xabar berish. Mijoz qurilmasining qayta 
ishlash quvvatiga va sizda qancha savol borligiga qarab, jarayon bir necha soniya, 
daqiqa yoki uzoq davom etishi mumkin! 
Va nihoyat, biz trening ma'lumotlarini asab tizimiga o'tkazamiz va unga mos 
kelmaydigan tarzda mashq qilishni aytamiz. Bu tarmoq naqshni topganda yoki 
undan voz kechganda bajariladigan va'dani qaytaradi. 
Biz tizimga kirgan xatolar tezligini kuzatib boring trainAsync. Ideal holda u 0 - 
0,05 orasida bo'lishi kerak. Agar u yuqoriroq bo'lsa, trening ma'lumotlarini 
tekshiring. 
U erdan biz bashorat qilishimiz mumkin: 
getPrediction = () => {const taxminlar = validationQuestions.map (q => 
(this.net.run (q.options.map (o => o.value)))); this.setState ({ta'lim: noto'g'ri, 
bashoratlar,}); } 


Foydalanish net.run, biz yangi o'qitilgan neyron tarmog'imizdan biz ilgari 
aniqlagan har bir tasdiqlash savollari uchun o'z taxminlarini aytib berishlarini 
so'raymiz. 
Katta final uchun biz shartli yuklash mantig'ini qo'shamiz va foydalanuvchiga 
topilmani taqdim etamiz. 
render () {const {training, taxminlar} = this.state; const validationQuestion = 
validationQuestions [0]; return (main> {training && (h2> Loading… / h2>)} {! 
bashoratlar &&! Training && ([...] // o'quv savollari shakli)} {bashoratlar va&! 
mashg'ulotlar && (div> h2> biz so'radik asab tarmog'i: / h2> div className = 
"question"> h4> {validationQuestion.question} / h4> div className = "options"> 
{validationQuestion.options.map ((o, i) => (label key = { o.id}> {/ * yorlig'i va 
ehtimolligini dumaloq foiz sifatida ko'rsatish * /} oralig'i> {$ {o.label}: $ 
{Math.round (taxminlar [0] [i] * 100)} %} / span> / label>))} / div> / div> / div>)} 
/ main>); }} 
Endi sizda viktorinaning asosiy asoslari mavjud, uni quyidagilar bilan kengaytirib 
ko'ring:Foydalanuvchingizga tasdiqlash bo'yicha savollaringizga javob berishga 
ruxsat berish orqali asab tarmog'ingizning haqiqiy xato darajasini aniqlang. 
Qarang, ular sizning taxminlaringizni necha marta tanladilar. 
Ushbu qo'shimcha javoblar bilan asab tarmog'ini o'rgating va aniqligini oshira 
olasizmi yoki yo'qligini bilib oling. 
Neyron tarmog'ini o'qituvchi bilan yoki o'qituvchisiz o'qitish mumkin (nazorat 
ostida, nazoratsiz o'rganish). 
Nazorat ostidagi o'rganish - bu regressiya va sinflash kabi masalalarga xos bo'lgan 
o’rganish. Boshqacha qilib aytganda, bu erda siz o'qituvchi va NT o’quvchi 
sifatida harakat qiladi. Siz kirish ma'lumotlarini va kerakli natijani berasiz, ya'ni 
o’quvchi kirish ma'lumotlariga qarab, siz unga bergan natijaga intilishi kerakligini 
tushunadi.
Nazorat qilinmagan o'rganish - bu turdagi o'rganish unchalik keng tarqalgan emas. 


Bu erda o'qituvchi yo'q, shuning uchun tarmoq kerakli natijani bermaydi yoki 
ularning soni juda kamchilikni tashkil etadi. Asosan, ushbu turdagi o’rgatishlar 
ma'lum parametrlarga ko'ra ma'lumotlarni guruhlash masalasi bo'lgan NTlariga 
xosdir. Aytaylik, siz Xabrega 10 000 ta maqola yuborgansiz va ushbu 
maqolalarning barchasini tahlil qilgandan so'ng, Milliy Assambleya ularni, 
masalan, tez-tez uchraydigan so'zlar asosida turkumlashi mumkin bo'ladi. Bunday 
maqolalarni guruxlashda Dasturlash tillari dasturlash sinfiga va fotoshop kabi 
so'zlarni dizayn sinfiga ajratadi.
Kuchaytirilgan o'rganish kabi qiziqarli usul ham mavjud. Ushbu usul alohida 
maqolaga loyiqdir, ammo men uning mohiyatini qisqacha tavsiflashga harakat 
qilaman. Ushbu uslub, agar biz Milliy Assambleyadan olingan natijalar asosida 
unga baho berishimiz mumkin bo'lsa, amal qiladi. Masalan, biz Milliy 
assambleyaga PAC-MAN o'ynashni o'rgatmoqchimiz, keyin har safar Milliy 
assambleya ko'p ochko to'plaganida, biz uni rag'batlantiramiz. Boshqacha qilib 
aytganda, biz NTga maqsadga erishish uchun har qanday usulni topish huquqini 
beramiz, agar u yaxshi natija bersa. Shu tarzda, tarmoq undan nimaga erishmoqchi 
ekanliklarini tushuna boshlaydi va "o'qituvchi" ga doimiy ma'lumot bermasdan, 
ushbu maqsadga erishishning eng yaxshi usulini topishga harakat qiladi.
Shuningdek, o’rganishni uchta usul yordamida bajarish mumkin:stoxastik usul, 
paketli usul va mini-paketli usuli.
Har bir usul haqida qisqacha:
Stoxastik (ba'zan "onlayn" deb nomlanadigan) usul quyidagi printsipga muvofiq 
ishlaydi - Δw ni aniqlash va unga mos vaznni yangilash.
Paketli usul boshqacha ishlaydi. Joriy iteratsiyada barcha vaznlarning Δw 
qiymatlari yig'indisi hisoblanadi va shundan keyingina ushbu yig'indidan 
foydalanib barcha vaznlar yangilanadi. Ushbu yondashuvning eng muhim 
afzalliklaridan biri hisoblash vaqtini sezilarli darajada tejashdir, shu bilan birga bu 
aniqlikka jiddiy ta'sir ko'rsatishi mumkin.
Giperparametrlar - bu qo'lda va ko'pincha sinov va xato bilan tanlanishi kerak 
bo'lgan qiymatlar. Ushbu qiymatlar orasida:
• o'rganish momenti va tezligi;
• yashirin qatlamlar soni;
• har bir qatlamdagi neyronlarning soni;
• siljuvchi neyronlarning mavjudligi yoki yo'qligi.
Boshqa turdagi NTlarida qo'shimcha giperparametrlar mavjud. To'g'ri 
giperparametrlarni tanlash juda muhim va bu NTning yaqinlashishiga bevosita 
ta'sir qiladi. Neyronlar qancha ko'p bo'lsa, natija shunchalik aniq bo'ladi va lekin 
uni o'qitishga qancha vaqt sarflanadi. Shunga qaramay, oddiy muammolarni hal 
qilish uchun 1000 ta neyron bilan NT yaratish kerakligini yodda tutish kerak. 
Ammo vaqtni tanlash va o'rganish tezligi bilan hamma narsa biroz murakkabroq 
kechadi. Ushbu giperparametrlar masalaga va NT arxitekturasiga qarab turlicha 
bo'ladi. Masalan, XOR yechimi uchun o'rganish tezligi 0,3 - 0,7 oralig'ida bo'lishi 


mumkin, ammo aksiyalar narxini tahlil qiladigan va bashorat qiladigan neyron 
tarmog'ida 0,00001 dan yuqori bo'lgan o'qish tezligi neyron tizimining yomon 
yaqinlashishiga olib keladi. Hozircha giperparametrlarga e'tibor bermasdan ularni 
qanday tanlashni yaxshilab tushunishga harakat qilish kerak. Bu tajriba bilan 
keladi.
Yaqinlashish neyron tarmog'i arxitekturasi to'g'ri yoki yo'qligini va 
giperparametrlar qo'yilgan masalaga muvofiq to'g'ri tanlanganligini 
ko'rsatadi. Aytaylik, bizning dasturimiz har bir takrorlashda neyron tizimining 
xatosini jurnalga chiqaradi. Agar har bir takrorlash bilan xato kamaysa, demak biz 
to'g'ri yo'ldamiz va bizning neyron tarmog'imiz birlashmoqda. Agar xatolik 
yuqoriga va pastga sakrab tushsa yoki ma'lum darajada qotib qolsa, u holda neyron 
tarmog’imiz yaqinlashmaydi. 99% hollarda, bu giperparametrlarni o'zgartirish 
orqali hal qilinadi. Qolgan 1% sizning NT arxitekturasida xatolik borligini 
anglatadi. Shuningdek, yaqinlashishga neyron tarmog'ining qayta o'qitilishi ta'sir 
qiladi.
Qayta o’rgatish - bu ma'lumotlar bilan to'lgan neyron tarmog'ini qayta oqitish 
holatidir. Ushbu muammo tarmoqni bir xil ma'lumotlarga o'rgatish juda uzoq vaqt 
talab qilsa paydo bo'ladi. Boshqacha qilib aytganda, tarmoq ma'lumotlardan 
o'rganishni emas, balki ularni yodlash va "siqib" olishni boshlaydi. Shunga ko'ra, 
ushbu neyron tarmog'ining kiritilishiga yangi ma'lumotlar kiritilganda, olingan 
ma'lumotlarda shovqin paydo bo'lishi mumkin, bu natijaning aniqligiga ta'sir 
qiladi. Misol uchun, agar biz NTga turli xil olma fotosuratlarini (faqat qizillari) 
ko'rsatsak va bu olma deb aytsak. Keyin, NT sariq yoki yashil olma ko'rganda, 
uning olma ekanligini aniqlay olmaydi, chunki u barcha olma qizil bo'lishi 
kerakligini eslaydi. 
Oʻrgatish jarayonida NT ning bogʻlanishli vazn koeffitsiyenti, chegara va tuzilma 
kabi qiymatlari toʻgʻrilanadi. Shu holatda mazkur parametrlarning boshlangʻich 
qiymatlari odatda tasodifiy ravishda beriladi. 
NTning oʻrgatish usullari tasnifi 14.1-rasmda keltirilgan koʻrinishda ifodalanadi.
Tasnifning eng asosiy koʻrsatkichlaridan biri-bu tashqi muhit bilan oʻzaro 
aloqaning mavjudligi. Oʻrgatish jarayonida tashqi muhitdan keladigan axborotning 
miqdori va sifati(semantikasi, ma’nosi)ga koʻra supervizorli (supervised learning), 
nosupervizorli (unsupervised learning) va tasdiqlash (reinforcement learning)ni 


oʻrgatadigan usul (algoritm)larga ajratiladi.
Supervizorli (o’qituvchili) usulda oldindan barcha oʻrgatish juftlaridan iborat 
boʻlgan oʻrgatish toʻplami shakllanadi. Oʻrgatish jufti X kirish va unga muvofiq 
boʻlgan Y chiqish vektorlar qiymatlari bilan ifodalanadi. Bu holatda har bir kirish 
vektorining - komponentasi - kirish neyronga keladigan signalga muvofiq boʻladi. 
Shunga oʻxshash har bir chiqish vektorning - komponentasi -chiqish neyronda 
paydo boʻladigan signalga muvofiq boʻladi.
Oʻrgatish jarayonida chiqish vektorlarining qiymati berilgan kirish vektorlarining 
qiymatlariga muvofiq oldindan berilgan chiqish qiymatlarining ogʻishlarini 
hisobga olib topiladi. Bu ogʻishlarning qiymatiga muvofiq NTning parametrlari 
mazkur ogʻishlar qiymatlarini minimum(berilgan)ga keltirish bilan toʻgʻirlanadi. 
Supervizorli oʻrgatish algoritmlarining orasida eng keng tarqalgani xatoliklarni 
(toʻlqinlarni) teskari tarqatish algoritmi (error backpropagation) hisoblanadi.
Supervizorsiz (o’qituvchisiz) usullarda oʻrgatish toʻplami faqat kirish vektorlari 
majmaisini oʻz ichiga oladi. Bu holatda qoʻllaniladigan raqobatli oʻrgatish 
algoritmi (competitive learning) klasterlash masalalarini yechish uchun NTning 
parametrlarini toʻgʻrilaydi. Oʻrgatish jarayonida tegishli klasterga kiradigan kirish 
komponenta(neyron)lari va bu klasterni tavsiflaydigan chiqish neyronlari orasidagi 
bogʻlanishli vaznlarning qiymatlari maksimal darajada koʻpaytiriladi. Shuningdek, 
chiqish neyronining faol boʻlmagan kirish neyronlari bilan bogʻlanishli vaznlar 
qiymatlari kamaytiriladi.
Tasdiqlash bilan oʻrgatish usullari yuqorida keltirilgan ikkita usulning oʻrtasida 
turadi. Bu usulning asosiy tamoyili tashqi muhitdan (oʻqituvchidan) keladigan 
“Tasdiqlash-rad qilish” yoki “Ragʻbatlantirish-jazolash” (reward/penalty) 
signalining mavjudligi boʻladi. Bunday oʻrgatish jarayonida navbatdagi kirish 
vektori berilganda NTning harakati qoniqarli boʻlsa, u holda tasdiqlash («+1») 
signal, aks holda - rad qilish («0» yoki «-1») signal orqali bajariladi. Bu holatda 
to’rda tasdiqlash signallarini olish tezligini oshirishni ta’minlash maqsadida vazn 
koeffitsiyentining qiymatlarini tegishli ravishda oʻzgartiradi. Bu vazn 
koeffitsiyentining qiymati maqbul darajasiga yetmaguncha oʻrgatish jarayoni 
davom etadi.
Tuzilmali oʻrgatish usullari endi rivojlana boshladi. Ular murakkab masalalarni 
yechish uchun moʻljallangan NTni qurishga imkoniyat beradi.
Kirishlarga quyiladigan talablar boʻyicha oʻxshashliklarga va yagona buyruqqa 
asoslangan oʻrgatish usullariga ajratiladi. Bu holatda tadqiq qilinadigan obyektlarni 
tavsiflaydigan etalon toʻplam shakllanadi. Berilgan etalonga muvofiq NT 
parametrlari shunday qilib tanlanadiki, kirish belgilarining tegishli qiymatlarida 
faqat mazkur belgilarga ega boʻlgan chiqish neyronlari faollashishi kerak.
NTlarni obyektlarni anglab olishga o’rgatishning umumiy sxemasi. NTlarni 
obyekt(misol)larni anglab olishga o’rganish uchun obyektlardan iborat o’rgatuvch 
tanlov zarur bo’ladi. Har bir obyekt kiruvchi parametrlar tasvirlanadi va oldindan 


ma’lun bo’lgan javoblar bilan beriladi. Masalan, tibbiy tashxislash masalasida 
kiruvchi parametrlar sifatida bemorning tibbiy xususiyatlaridan foydalanilsa, 
oldindan ma’lum bo’lgan javob sifatida unga qoyiladigan diagnoz hisoblanadi.
NTlarni obyektlarni anglab olishga o’rgatishning umumiy sxemasini qaraymiz . 
O’rgatuvchi tanlovdan joriy (boshida birinchi) obyekt olinadi va uning kiruvchi 
parametrlari o’rgatuvchi NTlarning kiruvchi sinapslariga uzatiladi. Odatda 
obyektning har bir kiruvchi parametri unga mos kiruvchi sinapsga uzatiladi.
NT berilgan sondagi taktlarning bajarilishini amalga oshiradi va kiruvchi 
signallarning vektori neyronlar o’rtasidagi bog’lanishlar bo’yicha tarqaladi (to’g’ri 
ishlash).
Neyronlar yordamida hosil qilingan chiquvchi signallar deb ataluvchi signallar 
o’lchanadi.
Hosil qilingan signallarni izohlash amalga oshiriladi va to’r yordamida obyektda 
mavjud bo’lgan javobning talab etilayotgan javob bilan farqli tomonlarini 
xarakterlaydigan baho hisoblanadi. Bu baho mos funksiyalar baholari yordamida 
hisoblanadi. Baho qancha kichik bo’lsa, u holda to’r yordamida olingan javob talab 
qilingan javobga shuncha yaqin bo’ladi. Agar baho nolga teng bo’lsa, u holda 
oldindan ma’lum bo’lgan javobga erishildi deb hisoblanadi.
Agar obyekt bahosi nolga teng bo’lsa, u holda hech qanday ish amalga 
oshirilmaydi. Aks holda baholar asosida aloqalar matritsasining har bir sinaptikli 
vazni uchun tuzatish koeffitsiyentlari hisoblanadi, undan keyin esa sinaptikl 
vaznlarni moslashtirish amalga oshiriladi (teskari ishlash amalga oshiriladi). 
Tarmoqning vaznlarini bunday to’g’rilash esa-tarmoqni obyektni anglashga 
o’rgatish deb ataladi.
Navbatdagi obyekt olinadi va yoridagi qadamlardagi amallar takrorlanadi. 
O’rgatuvchu tanlovning birinchi obyektidan oxirgi obyektigacha barcha 
obyektlarni tekshirish to’rni obyektlarni anglashga o’rgatishning bitta sikli deb 
ataladi.
Siklning bajarilishida har bir obyekt o’zining bahosiga ega bo’ladi. Bundan 
tashqari o’rgatuvchi tanlovdagi barcha obyektlar to’plamining yig’indi bahosi 


hisoblanadi. Agarda siklning bir nechta qadamidan keyin obyektlar to’plamining 
yig’indi bahosi nolga teng bo’lsa, u holda to’r yordamida o’rgatish jarayoni 
to’xtaydi, aks holda sikllar takrorlanadi.
To’liq o’rgatishga erishish uchun o’rgatish sikllarining soni ko’plab faktorlarga 
bog’liq bo’ladi. Bu faktorlarga o’rgatuvchi tanlovning hajmi, kiruvchi 
parametrlarning soni, obyektning ko’rinishi, NTlar turi va parametrlari hamda 
tarmoq nomlanganda ushbu tarmoqda vaznlarning tavakkal joylashishi kiradi.
NTlarni obyektlarni anglashga o’rgatishning uslubiy jihatlari. Ba’zi hollarda 
shunday holatlar uchraydiki, bunda to’r obyektni anglashga o’rgata olmaydi. Bu 
shunday holatda ro’y beradiki, qachonki o’rgatishning qandaydir 
pog’onasida o’gatuvchi parametrlar va natijalar o’rtasidagi qonuniylikni bundan 
keyin izlash imkoniyatlari mumkin bo’lmay qoladi. Masalan. oddiy holatda to’rga 
bir hil parametrlarga ega bo’lgan turli sinflarga tegishli ikkta obyekt yoki turli 
javov qiymatiga ega bo’lgan ikkita obyekt berilishi mumkin. Korinib turibdiki, bu 
holda ikkita obyekt fazoning bitta nuqtasiga tushadi, shuning uchun ularni bir-
biridan ajratish mumkin bo’lmaydi va o’rgatish jarayoni to’xtaydi. NTlarni 
boshqaruvchi dastur o’rgatish jarayonining to’xtaganligi haqida signal beradi va 
bundan keyin o’rgatish jarayoni mumkin emasligini ko’rsatadi. Bu holatda NTlarni 
obyektlarni anglab olishga o’rgatuvchi mutaxassisning vazifasi bunday 
holatlarning oldini olishdan iborat, ya’ni bunday holat ro’y bermasligi uchun u 
masalani qat’iy qo’yishi va o’rgatuvchi tanlovni sinchkovlik bilan nazorat qilishi 
talab etiladi [8-14]. 
NTlarni obyektlarni anglab olishga o’rgatishda yana bir muhim jihatni e’tiborga 
olish zarur. O’rgatish yutug’i umuman ko’p hollarda tarmoqdagi neyronlar 
soniga yoki aniqrog’i tarmoq soniga bog’liq. Chunonchi, 
tamoqlardagi “tajriba” tarmoqning vaznli koeffitsiyentlarida saqlanadi. Nazariy 
jihatdan neyronlar va tarmoq sonini cheksiz ko’paytirish natijasida hammavaqt 
berilgan o’rgatuvchi tanlovda NTlarni to’liq o’rgatishga erishish mumkin. Bu 
holda eng muhim masala o’rgatuvchi NTlarning nafaqat o’rgatuvchi tanlovdagi 
obyektlarni, balkim o’rgatuvchi tanlovga kirmagan yangi obyektlarni ham yaxshi 
anglab olishi eng muhim masala hisoblanadi.
O’qituvchisiz o’rgatuvchi neyronli tarmoqlar 
Yuqorida keltirilgan tarmoqlar o’qituvchili o’rgatuvchi tarmoqlarga kiradi. Ularni 
muvaffaqiyatli qo’llash uchun exspertning ishtiroki zarur.
O’qituvchisiz o’rgatuvchi tarmoqlarda o’rgatish jarayonida tarmoqlarning vaznlari 
to’g’rilanib (uzatilib) boriladi. Bunda tarmoqlarni to’g’rilab borish neyronlardagi 
mavjud vaznli koeffitsiyentlar asosida olib boriladi. Ushbu prinsip asosida 


ishlashdigan Xebba neyron tarmog’ini keltiramiz.
Sinflash algoritmi.
14.2 б-rasmda keltirilgan bitta neyronlar qatlamidan iborat NT kirishiga x vektor 
uzatiladi.
Minimal javobni beradigan neyron tartib raqami x vektor qarashli bo’lgan sinf 
raqami hisoblanadi.
O’rgatish algoritmi.
Barcha tarmoqlardagi tuzatishlarni nolga teng deb hisoblaymiz.
to’plamdagi har bir nuqta uchun quyidagi protseduralarni bajaramiz.
2.1.Tarmoqda sinflash uchun nuqtani (obyektni) olamiz.
2.2. Aytaylik sinflashda nuqta l-sinfga tegishli degan javob olingan bo’lsin. U 
holda tarmoqning teskari ishlashi uchun Δ vektor uzatilgan bo’lsin va uning 
koordinatalari quyidagi qoida bo’yicha aniqlansin: .
2.3. Ushbu nuqtalar uchun hisoblangan tuzatmalar oldingi hisoblanganlarga 
qo’shiladi.
Har bir neyron uchun quyidagi prorseduralarni amalga oshiramiz.
3.1. Agar oxirgi sinaps bilan hisoblangan tuzatma 0 ga teng bo’lsa, u holda NTdan 
olib tashlanadi.
3.2. Aytaylik, o’rgatish parameteri qiymati-oxirgi sinaps yordamida hisoblangan 
tuzatmaga teskari qiymatga teng bo’lsin.
3.3. Birinchi n ta sinapslarda to’plangan tuzatmalarning kvadratlar yig’indisini 
hisoblaymiz va (-2) ga bo’lib, oxirgi sinapsning tuzatmasiga kiritamiz.
3.4. parametrlar bilan o’rgatish qadamini bajaramiz.


Agar yana hisoblangan sinaptikli vaznlar oldingi qadamda olingan vaznlardan farq 
qilsa, u holda algoritmning birinch qdamiga o’tamiz.
Algoritmning ikkinchi va uchinchi qadamlari tushuntirishlarni talab qiladi. 12.30 v 
-rasmdan ko’rinadi, algoritmning 2.2-qadamida hisoblangan tuzatmalar minimal 
signal bergan neyronlardan tashqari barcha neyronlar uchun nolga teng bo’ladi. 
Minimal signal bergan neyronning birinchi n ta tuzatmalari anglab olinuvchi 
x nuqtalar koordinatalariga teng, oxirgi sinapsning tuzatmalari esa birga temg 
bo’ladi. Algoritm ikkinchi qadamining tugashidan keyin i-neyronning oxirgi 
sinapsidagi tyzatma i-sinfga talluqli nuqtalar soniga teng bo’ladi, ushbu 
neyronning qolgan tarmoqlaridagi tuzatmalar esa - i-sinfning barcha nuqtalarining 
mos koordinatalari yig’indisiga teng bo’ladi. To’g’ri vaznlarni olish uchun birinchi 
n ta tarmoqlarning barcha tuzatmalarini oxirgi sinapsning tuzatmasiga bo’lish, 
oxirgi sinaps qiymatini olingan qiymatlar kvadratlari yi’g’indisiga teng deb olish 
va qolgan sinapslarning qiymatlarini esa- ushbu sinapslar uchun olingan 
tuzatmalarni (-2) ko’paytirish natijasida olingan qiymatlarga teng deb 
olinadi.Algoritmning uchinch qadamida ham xuddi shu jarayon bajariladi.
Koxonen algoritmi bo’yicha o’rgatishda hisoblash jarayonini qisqrtirish maqsadida 
kiruvchi obyektlar va ularning vaznli koeffitsiyentlarining qiymatlari quyidagicha 
normallashtiriladii:
,
bu yerda xi - kiruvchi obyektlar yoki vaznli koeffitsiyentlarining i- komponentasi; 
n -obyektlarning o’lchovi.
Ba'zi bir neyronlarning (aksonlarning) chiqishi, navbatdagi neyronlarning kirish 
signallar(dendritlar) bo’lgan holatlarni ko'rib chiqamiz. 
Sun'iy NTlarining turlari. Biz yuqorida sun'iy neyronning tuzilishini aniqladik. 
Sun'iy neyron tarmoq(NT)lari neyronlarning bir-biriga ko'p bog'lanishidan iborat.
Shu paytgacha biz kirish ma'lumotlarini neyronlarning kirishiga berilgan variantini 
ko'rib chiqdik. Ko'pgina NTlarida kirish signallari kirish qatlamideb nomlanadi. 
Kirish qatlami hech qanday hisob-kitoblarni amalga oshirmaydi, u faqat kirish 
signallarini neyronlar o'rtasida taqsimlash masalasini bajaradi. Kirish qatlamidan 
signal oladigan neyronlar guruhiga yashirin qatlam deyiladi. Yashirin qatlamlar bir 
nechta bo'lishi mumkin. Ma'lumotlarni hisoblaydigan neyronlar guruhi (tarmoq 
javoblari) chiqish qatlami deb ataladi. Keltirilgan qatlamlarni 14.3-rasmdagidek 
tasvirlash mumkin:
NTlarining bu tuzilishi biologik miyaning ko'p qatlamli tuzilishini takrorlaydi.
Biz hozirgacha bir qatlamli NTlar bilan shug’ullandik. Ko’p qatlamli NTlari bir 


qatlamliga qaraganda ancha katta imkoniyatlarga ega.Eng kamida bitta yashirin 
qatlamga ega bo’lgan NTlar bir qatlamli NTlarga nisbatan ancha ko’p 
imkoniyatlarga ega bo’ladi.
Ko'p qatlamli tarmoqlarning afzalliklari. Mantiqiy algebra haqida bir oz 
to’xtalamiz. Mantiqiy OR (YOKI) operatsiyasi ko'pincha mantiqiy qo'shish deb 
nomlanadi. Bu erda qoidalar oddiy qo'shishdagidek 2 emas, balki 1 + 1 = 1 bundan 
mustasno. Mantiqiy AND (VA) ning ishlashi mantiqiy ko’paytma deb nomlanadi 
va bu erda hamma amllar odatdagi ko'paytirish kabi bajariladi. Yana bir keng 
tarqalgan mantiqiy amal – bu NOT (inkor) amali. Uning nomidan kelib chiqadiki, 
uning maqsadi qiymatlarni teskari yo'naltirishdir. Agar signal qiymati 0 ga teng 
bo'lsa, mantiqiy inkorni qo’llash natijasida 0 signal 1 ga teng bo'ladi. Agar bizga 
“yokini inkori”ni matematik mantiqdagi chinlik jadvalaidan foydalanib echsak, u 
holda quyidagicha bo’ladi. Demak biz buni matematik mantiqdan foydalanib 
natijalarni hosil qildik. Endi buni NT ga qanday o'tkazish mumkinligini ko’rib 
chiqamiz.
Agar NTda bitta neyronga shartli ravishda , boshqasiga
bersak va chiqindagi qiymatlarni jamlasak, u holda cjiqishda natijani hosil 
qilamiz.
Endi har bir neyron o’rganish jarayonida qandaydir tarzda harakatlarni bizning 
yordamimissiz o'z-o'zidan avtomatik ravishda bajarishga o’tishi kerak. Ushbu 
turdagi NT uchta qatlamdan iborat bo'lib, sun'iy NTlarida eng keng tarqalgan. 
Bunday Ntlarda asosiy hisoblashlashlar aynan yashirin qatlamlarda amalga 
oshiriladi.
Teskari tarqalishli aloqa usuli (TTA) nima? Shunday qilib, biz sizning neyron 
tarmog'ingiz to'g'ri o'rganishi va to'g'ri qaror qabul qilishi uchun qanday qilib 
ishonch hosil qilishni muhokama qilish nuqtasiga keldik. Endi har bir bosqichni 
batafsil ko'rib chiqamiz. Yuqorida biz to’g’ri tarqalishli aloqani ko'rib chiqqan 
edik. Bunda biz ketma-ket ma'lumotlarni kirish neyronlaridan chiqish neyronlariga 
uzatamiz. Shundan so'ng, biz xatoni hisoblab chiqamiz va unga asoslanib, orqaga 
qaytish qilamiz, bu neyron tarmog'ining vaznini ketma-ket o'zgartirish neyronning 
chiqish vaznidan boshlanadi. Vaznlar qiymatlari eng yaxshi natija beradigan 
teskari yo'nalish bo’yicha o'zgaradi. Bunda deltani topish usulidan foydalanish 
qulay, chunki bu eng sodda va tushunarli usul. Vaznlarni yangilashning stoxastik 
usulidan ham foydalanish mumkin (buni keyinroq ko’rib chiqamiz).
Biz yuqorida NT to’g’ri tarqalishi natijasini va uning xatosini hisoblab 
chiqqanimiz uchun darhol teskari tarqalishli NTga o'tishimiz mumkin. Avval aytib 
o'tganimdek, algoritm har doim chiqish neyronidan boshlanadi. Bu holda, 
(14.3) formuladan foydalanib, uning uchun δ (delta) qiymatini hisoblaymiz.
(14.3)
Chiqish neyronida chiquvchi sinapslar bo'lmaganligi sababli biz birinchi 
formuladan foydalanamiz (δ chiqish), shuning uchun yashirin neyronlar uchun biz 


allaqachon ikkinchi formulani (δ yashirin) olamiz. Bu erda biz kerakli va olingan 
natija o'rtasidagi farqni hisoblaymiz va uni berilgan neyronning kirish qiymatidagi 
faollashuv funksiyasining hosilasiga ko'paytiramiz. Hisoblashlarni boshlashdan 
oldin, e'tiborni hosilaga qaratamiz. Birinchidan, teskari tarqalishli aloqalarda faqat 
differensiallash mumkin bo'lgan faollashtirish funksiyalaridan foydalanish 
kerak. Ikkinchidan, ortiqcha hisoblashlarni amalga oshirmaslik uchun, hosila 
formulasi shaklini yanada sodda formulasi bilan almashtirish mumkin:
(14.4)
Shunday qilib, O1 nuqta bo'yicha hisoblashlar quyidagicha bo'ladi.
Echim. O1 neyron uchun hisoblashlar yakunlanadi. Ta’kidlaymizki, neyronning 
delta qiymatini hisoblab chiqqandan so'ng, ushbu neyrondan chiqadigan barcha 
sinapslarining vaznlarini zudlik bilan yangilash kerak bo’ladi. Ular O1da 
bo'lmaganligi sababli, yashirin darajadagi neyronlarga o’tiladi va xuddi shu 
jarayon amalga oshiriladi. Faqat bunda deltani hisoblash uchun (14.4) formuladan 
foydalaniladi. Uning mohiyati quyidagicha: neyronning kirishdagi qiymatining 
faollashuv funksiyasini hosilasini ushbu neyron bilan bog’langan barcha 
chiqishdagi vaznlar va deltalarga ko’paytmalarining yig’indisiga ko’paytirishdan 
iborat.
Ta’kidalymizki, teskari tarqalishli aloqalarning mohiyati chiqishlardagi 
neyronlarning xatosini neyron tarmog'ining barcha oldingi vaznlariga tarqatishdan 
iboratdir. Xatolik faqat neronning chiqishida (delta miqdor) hisoblanadi. 
Binobarin, endi xatolik o'rniga neyrondan neyronga o'tadigan deltadan 
foydalaniladi. Bunday holda H1 uchun deltani topamiz.
Echim. Endi har bir chiquvchi sinaps uchun gradientni topishimiz kerak
Bu erda A nuqta sinaps boshidagi nuqta, B nuqta esa sinaps oxiridagi nuqta. 
Shunday qilib, w5 gradyanini quyidagicha hisoblashimiz mumkin:
Echim. Endi bizda w5 vaznini yangilash uchun barcha kerakli ma'lumotlar mavjud 
va biz buni teskari tarqalishli aloqa funksiyasi tufayli amalga oshiramiz, bu esa u 
yoki bu vaznni o'zgartirish zarur bo'lgan miqdorni hisoblab chiqadi va quyidagicha 
amalga oshiriladi:
Bu erda biz gradiyent tushish algoritmini ko'rib chiqishda qaralgan ikkita 
konstantani ko'ramiz: E (epsilon) - o'rganish tezligi, a (alfa) - 
moment. Formula quyidagi ma’noga ega: sinaps vaznining o'zgarishi - bu o'rganish 
tezligini (E) ushbu vazn gradientiga (GRAD w) ko’paytmasi va ushbu vaznning 
oldingi o’garishlarini (1-iteratsiyada 0 ga teng) momentga ko’paytmasini 
qo’shilganiga teng.
Bu holda w5 vaznning o'zgarishini hisoblab chiqamiz va unga Δw5 qo'shib uning 
qiymatini yangilaymiz.
Echim. Shunday qilib, algoritmni qo'llaganimizdan so'ng, vazn 0,063 ga oshdi. 
Endi H2 uchun xuddi shunday jarayon amalga oshiriladi.


Echim. Albatta, I1 va I2 neyronlarning vazn sinapslari ham bor, ularni ham 
yangilash kerak. Lekin kirish neyronlari uchun deltalarni topish shart emas, chunki 
ularda kirish sinapslari mavjud emas.
Echim. NTning chiqishi faqat yangilangan vaznlar bilan hisoblanadi. Teskari 
tarqalishli xatolikning bir marta takrorlanishidan so'ng, xatolikni 0,04 (6%) ga 
kamaytirishga muvaffaq bo'lindi. Endi buni xatolik etarlicha kichik bo'lguncha 
takrorlash kerak.
Xatoliklaarni teskari tarqalishi. Chiqishdagi xatolikni qanday topishni ko’rib 
chiqqan edik: E = - (Y - y). Ammo yashirin qatlamlardagi xatolikni qanday topish 
mumkin? Chiqish bilan bog'liq xatolikni qanday qilib orqaga qaytarish kerak?
Barcha ulanishlar uchun bitta chiqishdagi xatolik qiymatidan foydalanish noto’g’ri 
hisoblanadi. Xatolikning kattaligi bitta emas, balki barcha ulanishdagi 
neyronlarning hissalari bilan belgilanadi. Shunday qilib, biz qandaydir tarzda, 
ushbu xatolikni barcha tugunlar orasida, ularning qo'shgan hissalariga mutanosib 
ravishda taqsimlashimiz kerak. Ya'ni, xatolikning katta qismi ko'proq vaznga ega 
bo'lgan neyronlarga tegishli bo’ladi, chunki ular chishdagi xatolik miqdoriga 
ko'proq ta'sir qiladi.
Bunday holda, chiqish neyronidagi signal ikkita oldinda turgan neyronlar 
tomonidan hosil bo'ladi. Ularning vaznlari mos ravishda 1 va 3 ga teng. Agar 
chiqishdagi xatolikni oldinda turgan neyronlarning vaznlarini hisobga olib ular 
ortasida mutanosib ravishda taqsimlaydigan bo'lsak, u holda kichikroq vaznga ega 
bo’lgan (w1,1=1) neyronni yangilash (to’g’rilash) uchun chiqishdagi xatolik 
qiymatining 1/4 qismini va katta vaznga ega bo’lganini (w1,2=3) yangilash uchun 
chiqishdagi xatolikning 3/4 qismi ta’minlash kerak bo’ladi. Agar biz tarmoqning 
chiqish neyroniga o'xshash tarzda bog'langan ming yoki undan ortiq 
neyronlarga ega ekanligini tasavvur qilsak, chiqadigan xatolikni ushbu 
ulanishlardagi neyronlar o'rtasida ularning ulushlariga mos keladigan vaznlarning 
kattaligi mutanosib ravishda taqsimlaymiz.
Endi chiqishda neyronlar ko’p bo’lganda chiqishdagi xatoliklarni teskari tarqalish 
holatini ko'rib chiqamiz . 
Ko'rib turganimizdek, vaznlarni yangilash uchun o’quv jarayonida barcha 
neyronlarning chiqishidagi xatoliklar haqida ma'lumot kerak bo’ladi. Xuddi 
yuqoridagidek (14.8-rasm) chiqishdagi xatolik oldindagi tegishli neyronlarning 
vazn koeffitsientlariga mutanosib ravishda ko'paytiriladi. Bu holat NT bir nechta 
chishlardan iborat bo’lganda ham xuddi bitta chiqish bo’lgan holatdagidek amalga 
oshiriladi.
Shunday qilib, e1 xatolik w1,1 va w1,2 ulanishlarga va e2 xatolik w2,1 va 
w2,2 ulanishlarga mutanosib ravishda taqsimlanadi (14.8-rasm).
Matematik shaklda xatolik qiymatlari ulanishlar bo'yicha qanday 
taqsimlanganligini keltiramiz. Ushbu ifodalardan ko’rinadiki, chiqishdagi 
xatolikga ko'proq hissa qo'shgan neyronlar bu haqda ko'proq ulush olishini va 
aksincha, kichikroq hissa qo'shgan neyronlar kamroq ulush olishini bildiradi.


Masalan, w1,1 = 1 va w1,2 = 3 vaznlarga ega bo'lsa, u holda w1,1 uchun 
e1 xatolikning ulushi: e1 =1/(1 + 3) = 1/4, boshqa w1,2 vazn uchun esa e1 =3/(1 + 
3) = 3/4 bo’ladi.
Qatlamlar orasidagi xatoni ko'paytirish. Agar ko'proq qatlamlar bo'lsa, 
chiqishdan kirishgacha harakat qilib, biz yuqoridagi amallarni har bir qatlam 
(qator) uchun takrorlaymiz.Kirish signallari oldinga yo'nalishda, yashirin 
qatlam neyronlarida tarqalganda, barcha signallarning yig'indisi va faollashtirish 
funksiyasidan so'ng boshqa ulanishlarning vaznlari bilan ko'paytirish natijasida 
bitta chiqish signali hosil bo'ladi. Xatoliklarni teskari tarqalishida yashirin qatlam 
neyronlaridagi xatoliklarni qanday aniqlash mumkin? Biz chiqishdagi xatolikni 
qanday aniqlashni bilamiz – bu maqsad va chiqish qiymatlari o'rtasidagi farqdan 
iborat bo’ladi. Yashirin qatlamda maqsad yoki kerakli chiqish qiymatlari mavjud 
bo’lmaydi. Ammo biz yashirin qatlamdagi neyronning barcha chiqadigan 
ulanishlari bo'yicha xatoliklarni jamlasak, uning umumiy qiymatini olamiz.
Yuqoridagilardan w1,1 va w2,1 ulanish xatolarining yig'indisini e1ck deb olsak, 
u holda quyidagicha yozilish mumkin:
Keling, xatolardan birining tarqalishini kuzataylik. Chiqish qatlamining birinchi 
neyronini olaylik. e1 xatolikning w1,1=1 va w1,2 = 2 vaznlari bilan ulanishlari 
orasidagi mos ravishda 0,23 va 0,47 ga teng qismlarini ko'ramiz. Buni quyidagicha 
hisoblaymiz:
e1 * (w1,1 / (w1,1 + w1,2) = 0,7 * (1/(1 + 2)) = 0,23
e1 * (w1,2 /( w1,1 + w1,2) = 0,7 * (2/(1 + 2)) = 0,47
U holda yashirin qatlamning birinchi neyronidagi birlashtirilgan xatolik - bu 
taqsimlangan xatoliklar yig'indisi, bu holda 0,23 + 0,21 = 0,44.
Ushbu usulni qo'llagan holda biz barcha neyronlar va qatlamlar uchun xatolikni 
bilib olamiz, bu esa barcha ulanishlarning vaznlarini kerakli nisbatda yangilashga 
imkon beradi.
Matritsa shaklidagi xatoliklarning teskari tarqalish usuli. Teskari tarqalishli hisob-
kitoblarini ancha soddalashtish mumkin. Signallarning to'g'ridan-to'g'ri 
tarqalishidagi kabi teskari tarqalishli hisob-kitoblarda ham matritsalardan 
foydalanish mumkin. Ushbu jarayonni tavsiflashga harakat qilaylik.
Chiqishdagi xatolik quyidagicha ifodalanishi mumkin:
Endi biz yashirin qatlamdagi xatolik matritsasini yaratishimiz kerak. Yashirin 
qatlamning birinchi neyronining xatoligi ikkita signal yig'indisidan hosil bo'ladi. 
Ushbu signallar:
e1 * (w1,1 / (w1,1 + w1,2) va e2 * (w2,1 /( w2,1 + w2,2).
Xuddi shunday yashirin qatlamning ikkinchi neyronining xatoligi ikkita signal 
yig'indisidan hosil bo'ladi. Ushbu signallar:


e1 * (w1,2 / (w1,2 + w1,1) va e2 * (w2,2 /( w2,12+ w2,1)
Endi biz ushbu amallarni matritsalarni ko'paytirish shaklida yozishimiz mumkin:
Keyinchalik samarali hisoblash uchun biz ushbu jarayonni yanada soddalashtira 
olamiz.
Agar biz ushbu ifodani to’g’ri tarqalishli signal shakldagi kabi qayta yozishga 
muvaffaq bo'lsak, faqat bunda xatolar signallar ko'rinishida paydo bo'ladi va 
teskari yo'nalishda ketadi, u holda biz katta afzalliklarga ega bo'lamiz.
Buni qanday qilish kerak? Agar yuqoridagi ifodaga nazar tashlasangiz, siz 
xatolarning tarqalish kattaligida eng katta rolni e * wij chiqish xatoliklari va ular 
bilan bog'liq bo'lgan vaznlar ko’paytmasi o'ynayotganini sezasiz. Vazn qanchalik 
katta bo'lsa, xatolik ulushining qiymati shunchalik yashirin qatlamga 
uzatiladi. Shuning uchun, agar biz vaznlar matritsasi elementlaridagi maxrajni 
e'tiborsiz qoldirsak, unda umuman biz uchun juda muhim bo'lgan ulanish 
qiymatlaridan xatolik tarqalishining mutanosibligi saqlanib qoladi, biz faqat 
mashtalashni yo’qotamiz - bu esa unchalik qo'rqinchli emas. Shunday qilib, vazn 
matritsasining birinchi elementi misolida e1*(w1,1 / 
(w1,1+w1,2)) ifodasini e1*w1,1 ga soddalashtirish mumkin.
Natijada biz quyidagi ifodani olamiz:
Aslida, biz ilgari qurgan vaznlar matritsasini oldik, ammo endi u teskari. 
Yuqoridagi o'ng element pastki chapga aylanadi va aksincha. Agar siz ushbu 
matritsaga transponirlashni qo'llasangiz, unda hamma narsa o'z joyiga tushadi.
Endi biz o'z maqsadimizga erishdik. Endi xatolikni orqaga qaytarish uchun 
matritsali yondashuvni qo'llashimiz mumkin:
NEYRAL TARMOQLAR TASNIFI NEYRAL TARMOQLAR TANIFI Bosh 
sahifa Analitik hal qiluvchi maʼlumotlarni onlayn qazib olish. YordamData 
MiningClassify Kirish Sun'iy neyron tarmoqlar - bu miyaning neyron tuzilishiga 
asoslangan neyronlarning nisbatan qo'pol elektron tarmoqlari. Ular bir vaqtning 
o'zida yozuvlarni qayta ishlaydilar va yozuvning tasnifini (ya'ni, asosan 
o'zboshimchalik bilan) yozuvning ma'lum haqiqiy tasnifi bilan solishtirish orqali 
o'rganadilar. Birinchi yozuvning dastlabki tasnifidagi xatolar tarmoqqa qaytariladi 
va keyingi iteratsiyalar uchun tarmoqlar algoritmini o'zgartirish uchun ishlatiladi. 
Sun'iy neyron tarmog'idagi neyron 1. Kirish qiymatlari to'plami (xi) va tegishli 
og'irliklar (wi). 2. Og‘irliklarni yig‘uvchi va natijalarni (y) natijaga keltiruvchi 
funksiya (g). Neyronlar qatlamlarga bo'lingan: kirish, yashirin va chiqish. Kirish 
qatlami to'liq neyronlardan iborat emas, balki oddiygina neyronlarning keyingi 
qatlamiga kirish bo'lgan yozuv qiymatlaridan iborat. Keyingi qatlam yashirin 
qatlamdir. Bitta neyron tarmog'ida bir nechta yashirin qatlamlar mavjud bo'lishi 
mumkin. Yakuniy qatlam chiqish qatlami bo'lib, bu erda har bir sinf uchun bitta 
tugun mavjud. Tarmoq bo'ylab bir marta oldinga siljish natijasida har bir chiqish 
tuguniga qiymat tayinlanadi va yozuv eng yuqori qiymatga ega bo'lgan sinf 


tuguniga tayinlanadi. Sun'iy neyron tarmog'ini o'rgatish Trening bosqichida har bir 
yozuv uchun to'g'ri sinf ma'lum (nazorat ostidagi trening deb ataladi) va chiqish 
tugunlariga to'g'ri qiymatlar berilishi mumkin -- to'g'ri sinfga mos keladigan tugun 
uchun 1, qolganlari uchun 0. (Amalda, mos ravishda 0,9 va 0,1 qiymatlari 
yordamida yaxshiroq natijalar topildi.) Shunday qilib, tarmoqning chiqish tugunlari 
uchun hisoblangan qiymatlarini ushbu to'g'ri qiymatlar bilan solishtirish va har bir 
tugun uchun xato muddatini hisoblash mumkin (Delta qoidasi). ). Keyinchalik bu 
xato atamalar yashirin qatlamlardagi og'irliklarni sozlash uchun ishlatiladi, umid 
qilamanki, keyingi iteratsiya paytida chiqish qiymatlari to'g'ri qiymatlarga 
yaqinroq bo'ladi. Ansambl usullari XLMiner V2015 Neyron tarmoqlari bilan 
foydalanish uchun ikkita kuchli ansambl usulini taklif qiladi: yuklash (bootstrap 
yig'ish) va kuchaytirish. Neyron tarmog'i algoritmi o'z-o'zidan yangi 
ma'lumotlarning yaxshi tasniflanishiga olib keladigan bitta modelni topish uchun 
ishlatilishi mumkin. Bizning modelimiz ma'lumotlarga mos keladimi yoki 
yo'qligini bilish uchun joriy tasniflagichning statistik ma'lumotlari va chalkashlik 
matritsalarini ko'rishimiz mumkin, ammo topilishini kutayotgan yaxshiroq 
tasniflagich bor yoki yo'qligini qanday bilamiz? Javob shundaki, biz yaxshiroq 
tasniflagich mavjudligini bilmaymiz. Biroq, ansambl usullari bizga bir nechta zaif 
neyron tarmoq tasniflash modellarini birlashtirishga imkon beradi, ular birgalikda 
qabul qilinganda yangi, aniqroq kuchli tasniflash modelini tashkil qiladi. Ushbu 
usullar turli xil tasniflash modellarini yaratish, asl ma'lumotlar to'plamining turli 
namunalarini olish va keyin ularning natijalarini birlashtirish orqali ishlaydi. 
(Chiqishlar bir nechta usullar bilan birlashtirilishi mumkin, masalan, tasniflash 
uchun ko'pchilik ovoz va regressiya uchun o'rtacha.) Modellarning bu 
kombinatsiyasi kuchli modeldagi tafovutni samarali ravishda kamaytiradi. 
XLMiner-da taklif qilingan ikki xil ansambl usullari (to'plash va kuchaytirish) 
uchta moddada farqlanadi: 1) har bir tasniflagich yoki zaif model uchun o'quv 
ma'lumotlarini tanlash; 2) zaif modellar qanday yaratiladi; va 3) natijalar qanday 
birlashtirilganligi. Har uch usulda har bir zaif model ma'lumotlar to'plamining 
ma'lum bir qismida malakali bo'lish uchun butun Trening to'plamida o'qitiladi. 
Bagging (bootstrap aggregating) yoziladigan birinchi ansambl algoritmlaridan biri 
edi. Bu oddiy algoritm, lekin juda samarali. Bagging almashtirish bilan tasodifiy 
tanlab olish (bootstrap sampling) yordamida bir nechta Trening to'plamlarini 
yaratadi, har bir ma'lumotlar to'plamiga tasniflash algoritmini qo'llaydi, so'ngra 
yangi ma'lumotlar tasnifini aniqlash uchun modellar orasida ko'pchilik ovoz oladi. 
Qoplashning eng katta afzalligi algoritmni parallellashtirishning nisbiy 
qulayligidir, bu uni juda katta ma'lumotlar to'plamlari uchun yaxshiroq tanlash 
imkonini beradi. Boosting oldingi modellardagi noto'g'ri tasniflangan yozuvlarga 
e'tibor qaratish uchun modellarni ketma-ket o'rgatish orqali kuchli modelni 
yaratadi. Tugallangandan so'ng, barcha tasniflagichlar ko'pchilik ovoz bilan 
birlashtiriladi. XLMiner AdaBoost algoritmi (hozirgi kunda qo'llaniladigan eng 
mashhur ansambl algoritmlaridan biri) tomonidan amalga oshirilgan 


kuchaytirishning uch xil variantini taklif qiladi: M1 (Freund), M1 (Breiman) va 
SAMME (Ko'p sinfli eksponensial yordamida bosqichli qo'shimcha 
modellashtirish). Adaboost.M1 birinchi navbatda har bir yozuv yoki kuzatuv uchun 
vazn (wb(i)) belgilaydi. Ushbu vazn dastlab 1/n ga o'rnatiladi va algoritmning har 
bir iteratsiyasida yangilanadi. Ushbu birinchi o'quv majmuasi (Tb) yordamida 
original tasniflash modeli yaratiladi va xatolik quyidagicha hisoblanadi: Adaboost 
formulasi Bu erda I() funksiyasi rost bo'lsa 1 ni, bo'lmasa 0 ni qaytaradi. b-
iteratsiyadagi tasniflash modelining xatosi ?b doimiysini hisoblash uchun 
ishlatiladi. Bu konstanta vaznni yangilash uchun ishlatiladi (wb(i). AdaBoo-da 
Chuqur o‘qitish (Deep learning) sun‟iy neyron tarmoqlarga asoslangan 
mashinani o„qitish usullarining kengroq oilasining bir qismidir. Chuqur o„qitishda 
kompyuter modelida to„g„ridan-to„g„ri tasvirlar, matn yoki tovushdan tasniflash 
vazifalarini bajarishni o„rganadi[5]. Chuqur o„qitish modellari eng zamonaviy 
aniqlikka erishishi mumkin, ba‟zan esa inson darajasidan oshib ketadi. Modellar 
etiketli ma‟lumotlarning katta to„plami va ko„plab qatlamlarni o„z ichiga olgan 
neyron tarmoq arxitekturasi yordamida o„qitiladi. Ba‟zi manbaalar ta‟kidlashicha, 
Frank Rosenblatt bugungi kundagi chuqur o„qitish tizimlarining barcha asosiy 
tarkibiy qismlarini ishlab chiqqan va o„rgangan[7]. U buni 1962 yilda Kornell 
universiteti tomonidan nashr etilgan "Neyrodinamika tamoyillari: Perseptronlar va 
miya mexanizmlari nazariyasi" kitobida tasvirlab bergan[2]. 
Chuqur neyron tarmoqlari bu Deep Learning modellarida ishlatiladigan asosiy 
texnologik arxitekturani tashkil etuvchi tushuncha. Ushbu tuzilmalarni sun'iy aql 
uchun asos bo'lgan sun'iy neyron tarmoqlarining umumiy g'oyasini tushunmasdan 
tushunib bo'lmaydi. 
Neyron tarmoqlari ming narsada ishlatiladi: davlat raqamlarini, qo'shiqlarini, 
yuzlarini, ovozini yoki hatto oshxonamizning mevalarini tanib olish. Ular, ayniqsa, 
foydali texnologiya bo'lib, ular yaqinda amaliy bo'lgan bo'lsa-da, ular insoniyat 
kelajagini tashkil qiladi. 
Keyingi keling, sun'iy neyron tarmoqlari g'oyasini chuqur ko'rib chiqaylik, ular 
qanday ishlashini, qanday o'qitilganligini va ularni tashkil etuvchi turli 
neyronlarning o'zaro ta'siri qanday bo'lishini tushunish. 
Regressiya — (matematikada) biror (u) tasodifiy miqdor oʻrta qiymatining 
boshqa bir tasodifiy miqdoriga bogʻlikligi. Funksional bogʻlanishda 
miqdorning har bir qiymatiga u miqdorning bitta qiymati mos kelsa, regressiv 
bogʻlanishda x ning x qiymatiga turli hollarda turli qiymatlar mos keladi. R. 
tushunchasi faqat tasodifiy miqdorlar uchun emas, tasodifiy vektorlarga 
nisbatan ham kiritiladi. R. terminini ingliz olimi F.Galton kiritgan (1886). R. 
tabiat va jamiyat hodisalarini oʻrganishda muhim matematik vosita 


hisoblanadi.
Korrelyatsiya – bu lotincha so'z bo'lib aloqadorlik, bog’liqlik degan ma'noni 
anglatadi. Xodisa va belgilar orasidagi bog’lanish funktsional va korrelyatsion 
bo'lishi mumkin.
Funktsional bog’lanish – xodisalar o'rtasidagi g’at'iy bog’lanish bo'lib, bir 
belgining o’zgarishi bilan unga bog’liq ikkinchi belgining majburan ma'lum bir 
kattalikka o’zgarishiga olib keladi. Masalan: aylanani radiusi o’zgarsa, uning 
maydoni ham o’zgaradi.
Korrelyatsion bog’lanish – o'rganilgan belgining ma'lum bir kattaligiga u bilan 
bog’liq ikkinchi bir belgining bir necha kattaliklarini mos kelishidir. Tana 
og’irligi va bo'y uzinligi bog’liqligi korrelyatsion bog’lanishga misol bo'la 
oladi. Agarda bo'yi bir xil bo'lgan bolalarni tana vaznini o'lchasak, u har xil 
bo'ladi va ma'lum bir amplitudada tebranadi. Chunki, tana vazniga faqat 
bo'yi emas balki, ovqatlanish, salomatlik va asab-ruhiy xolat ham ta'sir etadi. 
Xodisa va belgilarning uzviy bog’liqligini o'lchash va baholash haqida 
tasavvurini berish uchun korrelyatsiya koeffitsienti hisoblanadi.
Regressiya tenglamasi va regressiya chizig‘iKorrelyatsion bog‘liqlik ta’rifini 
aniqlashtiramiz, buning uchun shartli о‘rtacha qiymat tushunchasini kiritamiz. 
Shartli о‘rtacha qiymat deb, Y tasodifiy miqdorning X=x qiymatiga mos 
qiymatlarining arifmetik о‘rtacha qiymatiga aytiladi. 
Masalan, X miqdorning x1=2 
qiymatiga Y miqdorning y1=3, y2=5, y3=6, y4=10 qiymatlari mos kelsin.
f(x) va funksiyalar- regressiya funksiyalari, ularning grafiklari esa regressiya 
chizig‘i deyiladi. 
Korrelyatsion nazariyasining asosiy masalalaridan biri korrelyatsion 
bog‘lanish shaklini aniqlash, ya’ni uning regressiya funksiyasi kо‘rinishini 
(chiziqli, kvadratik, kо‘rsatkichli va hokozo) topishdan iborat. Regressiya 
funksiyalari kо‘p hollarda chiziqli bо‘ladi. Ikkinchi masala korrelyatsion 
bog‘lanishning zichligi (kuchi)ni aniqlash. 
Logistik regressiya tushunchasi va ularning mashinali o'qitishda qo'llanilishi
Logistik regression (logistik regression) - ob'ektlarning sinflarga tegishli bo'lgan 
havoriy (апостериорные) ehtimolligini baholashga imkon beruvchi 
chiziqli tasnifni (классификатор) yaratish usuli. n-sonli belgilar bilan 
tasvirlansin Unda ob'ektlarning xarakterli tavsiflari maydoni . Y — 
sinflarning son-sanoqsiz sonlari (nomlari, teglari) bo'lsin.
"Ob'ekt, javob" juftligini o'qitish namunasi berilsin
Logistik regressiyasi maqsadli o'zgaruvchining ehtimolligini taxmin qilish 
uchun ishlatiladigan nazorat ostida o'quv tasnifi algoritmidir. Maqsad yoki 


qaram o'zgaruvchining tabiyati dixotomikdir, ya'ni faqat ikkita mumkin bo'lgan 
sinf bo'ladi. Qisqacha aytganda, qaram o'zgarmaydigan ikkilik xususiyatga ega va 
(muvaffaqiyat / ha degan ma'noni anglatadi) yoki 0 (rad etish / yo'q degan
ma'noni anglatadi) sifatida kodlangan ma'lumotlarga ega.
Matematik tarzda, logistik regressiyasi modeli p (Y = 1) ni x funktsiyasi sifatida
bashorat qiladi, bu spamni aniqlash, diabetni prognoz qilish, saratonni aniqlash va 
h. K. kabi turli xil tasniflash vazifalari uchun ishlatilishi mumkin bo'lgan eng oddiy
ML algoritmlaridan biridir.
Logistika regressiyasi – bu o'zgaruvchilar o'rtasidagi bog'liqlikni aniqlashning bir u
suli bo'lib, ulardan biri qat'iy qaram va boshqalar mustaqildir. Buning uchun
logistika funktsiyasi (qayta ishlaydigan logistika taqsimoti) qo'llaniladi. 
Logistika regressiyasining amaliy ahamiyati shundaki, u bir yoki bir nechta 
mustaqil o'zgaruvchini o'z ichiga olgan voqealarni bashorat qilishning kuchli statist
ik usuli hisoblanadi. Bu quyidagi hollarda talab qilinadi:
Logistik regressiyasi turlari . Odatda, logistika regressiyasi ikkilik maqsadli 
parametrlarga ega bo'lgan ikkilik logistika regressiyasini anglatadi, ammo 
maqsadli o'zgaruvchilarning yana 
ikkita toifasi tomonidan prognoz qilinishi mumkin.
Ushbu toifadagi toifalarga asoslanib, logistik regressiya 
quyidagi turlarga bo'linishi mumkin
Ikkilik yoki binomial
Ushbu turdagi tasniflashda qaram o'zgaruvchining faqat ikkita turi mavjud: 1 va 0. 
Misol uchun, bu o'zgaruvchilar muvaffaqiyat yoki muvaffaqiyatsizlikni, ha 
yoki yo'q, g'alaba yoki yo'qotishni va boshqalarni ifodalaydi.
Polinomial
Ushbu tasniflash shaklida qaram o'zgarmaydigan 3 yoki undan ko'p sonli tartibsiz t
urlarga yoki miqdoriy ahamiyatga ega bo'lmagan turlarga ega bo'lishi 
mumkin. Misol uchun, bu o'zgaruvchilar "a turi" yoki "b turi" yoki "C 
turi"ni ifodalaydi.
Tartib
Ushbu tasniflash shaklida qaram o'zgarmaydigan 3 yoki undan ko'p buyurtma
turlari yoki miqdoriy ahamiyatga ega bo'lgan turlarga ega bo'lishi mumkin.
Misol uchun, bu o'zgaruvchilar "yomon" yoki "yaxshi", "juda yaxshi", "yaxshi" va 
har bir toifadagi 0,1,2,3 kabi ballar bo'lishi mumkin.
Ikki tomonlama logistik regressiyasi modeli.
Logistika regressiyasining eng oddiy shakli ikkilik yoki binomial logistika
regressiyasi bo'lib, unda maqsadli yoki qaram o'zgaruvchining faqat 2 turi bo'li-
shi mumkin: 1 yoki 0.
Logistik regressiyasining yana bir foydali shakli-maqsad yoki qaram
o'zgaruvchining 3 yoki undan ko'p tartibsiz turlarga, ya'ni miqdoriy ahamiyatga


ega bo'lmagan turlarga ega bo'lishi mumkin bo'lgan polinomial logistik
regressiyasi. 
Logistik regressiya bu o'zgaruvchilardan o'zaro bog'liqlikni aniqlash usulidir, 
ulardan biri qat'iyan bog'liq, boshqalari esa mustaqil. Buning uchun logistik 
funksiyadan (akkumulyativ logistik taqsimot) foydalaniladi. Logistik 
regressiyaning amaliy qiymati shundaki, u bir yoki bir nechta mustaqil 
o'zgaruvchini o'z ichiga olgan voqealarni bashorat qilishning kuchli statistik usuli 
hisoblanadi.
Xulosa 
Sun'iy neyron tarmog'i (ANN) - bu inson miyasini axborotni tahlil qilish va qayta 
ishlash usulini taqlid qilishga mo'ljallangan hisoblash tizimining bir qismi. Bu 
sun'iy intellekt (AI) ning asosidir va inson yoki statistik standartlar tomonidan 
imkonsiz yoki qiyin bo'lishi mumkin bo'lgan muammolarni hal qiladi. ANN-lar 
o'z-o'zini o'rganish qobiliyatiga ega, bu esa ko'proq ma'lumot paydo bo'lishi bilan 
yanada yaxshi natijalarga erishish imkonini beradi. 
Foydalanilgan adabiyotlar 
1. Горбань А.Н. Обучение нейронных сетей. М.: изд-во СССР-США СП 
“ParaGraph”, 1990. 160 с.
2. Розенблатт, Ф. Принципы нейродинамики: Перцептроны и теория 
механизмов мозга = Principlesof Neurodynamic: Perceptron sand the Theory of 
Brain Mechanisms. -М.: Мир, 1965. -480 с.
3. Hopfield J.J. Neural networks and physical systems with emergent collective 
computational abilities // Proc. Nat. Acad. Sci. USA. 1982. Vol. 79. P.2554-2558.
4. Башмаков А.И., Башмаков И.А.Интеллектуальные информatsiонные 
технологии: Учеб.пособие. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2005. - 304 
с : ил. - (Информатика в техническом университете). ISBN 5-7038-2544-Х.
5. Галушкин А.И. Теория нейронных сетей. Кн. 1: Учебное пособие для 
вузов.-М.: ИПРЖР, 2000. -416 с.
6. Комарцова Л.Г., Максимов А.В. Нейрокомпьютеры: Учеб. пособие для 
вузов. -М.: Изд-во МГТУ им. Н.Э. Баумана, 2002. -320 с.
7. Компьютеры и мозг [Электронный ресурс] / А.А. Ежов, С.А. Шумский. - 
Электрон, текстовые дан. (416768 байт). -М.: Компания 
«НейрОКИнтелсофт», 1999. -Режим доступа: http: 
//www.neurok.ru/pub/archive/cb.zip.
8. Уоссерман Ф. Нейрокомпьютерная техника. -М.: Мир, 1992.
9. Галушкин А.И. Нейрокомпьютеры. Кн. 3: Учебное пособие для вузов. -
М.:ИПЖР, 2000. -528 с.


10. Галушкин А.И. Теория нейронных сетей. Кн. 1: Учебное пособие для 
вузов. -М.: ИПРЖР, 2000. -416 с.

Download 0.55 Mb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling