Neyron tarmog'i

**Neyron tarmog'i** (neural network) yoki **sun'iy neyron tarmog'i** (artificial neural network  ANN)  mashinali o'rganish (machine learning) sohasida biologik neyron tarmoqlarining tuzilishi va funksiyalaridan ilhomlangan hisoblash modeli (computational model). Ushbu texnologiya zamonaviy sun'iy intellekt tizimlarining, jumladan tasvirlarni tanish, nutqni matnga aylantirish va tabiiy tilni qayta ishlashning asosini tashkil etadi.

Neyron tarmog'i "sun'iy neyronlar" deb ataladigan o'zaro bog'langan birliklar yoki tugunlardan iborat bo'lib, ular miyadagi biologik neyronlarning soddalashtirilgan modelidir. Ushbu tugunlar "qirralar" (edges) orqali bog'langan bo'lib, ular miyadagi sinapslar vazifasini bajaradi. Har bir sun'iy neyron signal qabul qiladi, uni qayta ishlaydi va keyingi neyronlarga uzatadi. Signal odatda haqiqiy son (real number) shaklida bo'ladi va har bir neyronning chiqishi uning kirishlarining yig'indisi asosida noaniq funksiya **faollashtirish funksiyasi** (activation function) orqali hisoblanadi.

Odatda neyronlar qatlamlarga (layers) guruhlanadi. Signallar birinchi qatlamdan (kirish qatlami) oxirgi qatlamga (chiqish qatlami) qadar harakatlanadi, yo'lda bir nechta oraliq **yashirin qatlamlardan** (hidden layers) o'tishi mumkin. Agar tarmoqda ikkitadan ortiq yashirin qatlam bo'lsa, u odatda **chuqur neyron tarmog'i** (deep neural network) deb ataladi.

## Tarix

### Dastlabki bosqichlar
Neyron tarmoqlarining g'oyasi 200 yildan ko'proq vaqt oldin statistika sohasidagi ishlarga borib taqaladi. Eng oddiy to'g'ridan-to'g'ri bog'lanishli neyron tarmog'i (feedforward neural network) chiziqli tarmoq bo'lib, u eng kichik kvadratlar usuli (method of least squares) yoki chiziqli regressiya (linear regression) tamoyillariga asoslangan. Ushbu usul 1805-yilda Lejandr va 1795-yilda Gauss tomonidan sayyoralar harakatini bashorat qilish uchun taklif qilingan.

Zamonaviy hisoblash modellarining shakllanishi 1943-yilda Uorren Makkallok va Valter Pitts tomonidan e'lon qilingan neyron tarmoqlarining matematik modeli bilan boshlandi. 1949-yilda Donald Hebb "Hebbian o'rganish" (Hebbian learning) gipotezasini taklif qildi, bu mexanizm neyronlar orasidagi bog'lanishlar tajriba asosida qanday kuchayishini tushuntirib berdi.

### Oltin davr va turg'unlik
1958-yilda psixolog Frank Rosenblatt birinchi amaliy neyron tarmoqlaridan biri  **perseptronni** (perceptron) yaratdi. Bu ixtiro inson intellektini simulyatsiya qilish borasida katta umidlar uyg'otdi. Biroq, 1969-yilda Marvin Minskiy va Seymur Papert perseptronlarning cheklovlarini (masalan, XOR muammosini hal qila olmasligini) ko'rsatib berganidan so'ng, AQShda ushbu sohaga qiziqish va moliyalashtirish kamaydi ("Sun'iy intellekt qishi").

### Chuqur o'rganishning yuksalishi
1965-yilda Sovet Ittifoqida Aleksey Ivaxnenko va Lapa ixtiyoriy chuqurlikdagi neyron tarmoqlarini o'rgatish imkonini beruvchi "Ma'lumotlarni qayta ishlashning guruhli usuli"ni (GMDH) e'lon qilishdi. 1970-yilda Seppo Linnainmaa **teskari tarqalish** (backpropagation) algoritmining zamonaviy shaklini e'lon qildi, bu algoritm ko'p qatlamli tarmoqlarni samarali o'rgatish imkonini berdi.

2000-yillarning oxiridan boshlab, hisoblash quvvatining ortishi (ayniqsa GPU  grafik protsessorlar orqali) va katta ma'lumotlar to'plamlarining paydo bo'lishi neyron tarmoqlarining yangi davrini boshlab berdi. 2012-yilda **AlexNet** tarmog'ining ImageNet tanlovidagi g'alabasi "Chuqur o'rganish" (Deep Learning) inqilobiga turtki bo'ldi.

## Mexanizm va ishlash prinsipi

Sun'iy neyron tarmoqlari miya arxitekturasini takrorlashga harakat qiladi. Tarmoq yo'naltirilgan va vaznli graf (weighted graph) shaklida bo'ladi.

### Sun'iy neyronlar
Har bir sun'iy neyron bir nechta kirish signallarini qabul qiladi va bitta chiqish signalini ishlab chiqaradi. Neyronning ishlash jarayoni quyidagi bosqichlardan iborat: 1. Vaznli yig'indi (Weighted Sum): Barcha kirish signallari ularga tegishli "vaznlar" (weights) bilan ko'paytiriladi va yig'iladi. 2. Siljish (Bias): Yig'indiga o'zgarmas qiymat  siljish (bias) qo'shiladi. 3. Faollashtirish funksiyasi: Olingan natija noaniq funksiya (masalan, ReLU, Sigmoid yoki Softmax) orqali o'tkaziladi. Bu tarmoqqa murakkab va chiziqli bo'lmagan bog'liqliklarni o'rganish imkonini beradi.

Matematik ko'rinishda:

: y = f\left(\sum_{i=1}^{n} w_i x_i + b\right)

bu yerda x_i  kirishlar, w_i  vaznlar, b  siljish, f  faollashtirish funksiyasi.

### Tashkil etilishi
Neyronlar odatda uch turdagi qatlamlarga bo'linadi:

* Kirish qatlami (Input layer): Tashqi ma'lumotlarni (tasvirlar, matnlar) qabul qiladi.
* Yashirin qatlamlar (Hidden layers): Ma'lumotlarni qayta ishlaydi va xususiyatlarni (features) ajratib oladi.
* Chiqish qatlami (Output layer): Yakuniy natijani (masalan, obyektnining klassini) beradi.

## O'rgatish (Training)
Neyron tarmoqlarini o'rgatish jarayoni odatda **empirik xavfni minimallashtirish** (empirical risk minimization) tamoyiliga asoslanadi. Maqsad  tarmoq bashorati va haqiqiy natija orasidagi farqni (xatolikni) kamaytirishdir.

### Teskari tarqalish (Backpropagation)
Bu o'rganishning asosiy algoritmi bo'lib, xatolik chiqishdan kirishga qarab teskari yo'nalishda tarqaladi. Algoritm har bir vaznning umumiy xatoga qo'shgan hissasini (gradientni) hisoblaydi va vaznlarni optimallashtirish algoritmi (masalan, **stoxastik gradient tushishi**  SGD) yordamida yangilaydi.

### O'rganish paradigmalari

* Nazorat ostidagi o'rganish (Supervised learning): Tarmoqqa ma'lum bir kirish va unga mos keladigan to'g'ri chiqish (yorliq) beriladi (masalan, "it" deb belgilangan rasmlar).
* Nazoratsiz o'rganish (Unsupervised learning): Tarmoq yorliqlanmagan ma'lumotlar ichidan o'zi qonuniyatlarni topishga harakat qiladi (klasterlash).
* Mustahkamlovchi o'rganish (Reinforcement learning): Agent muhitda harakat qiladi va qilgan ishlari uchun mukofot yoki jazo oladi (masalan, o'yin o'ynashni o'rganuvchi AI).

## Turlari
Hozirgi kunda neyron tarmoqlarining juda ko'p turlari mavjud bo'lib, ularning har biri ma'lum vazifalar uchun optimallashtirilgan:

## Qo'llanilishi
Neyron tarmoqlari deyarli barcha zamonaviy sohalarda qo'llanilmoqda:

* Tibbiy diagnostika: Rentgen va MRT tasvirlari orqali saraton va boshqa kasalliklarni aniqlash.
* Moliya: Birja kotirovkalarini bashorat qilish, kredit skoringi va firibgarlikni (fraud detection) aniqlash.
* Avtonom transport: O'zi boshqariladigan avtomobillarda yo'l belgilari va to'siqlarni tanish.
* Tabiiy tilni qayta ishlash (NLP): Mashinali tarjima, chat-botlar (ChatGPT) va hissiyotlarni tahlil qilish (sentiment analysis).
* Kiberxavfsizlik: Zararli dasturlarni (malware) va tarmoqdagi hujumlarni aniqlash.
* Ilmiy tadqiqotlar: Protein tuzilishini bashorat qilish, kvant kimyosi va fizik tenglamalarni yechish.

## Tanqidlar va cheklovlar
Neyron tarmoqlarining yutuqlariga qaramay, ularga nisbatan bir qator tanqidiy fikrlar ham mavjud: 1. "Qora quti" muammosi: Neyron tarmoqlari qanday qilib aniq bir qarorga kelganini tushuntirish qiyin (izohlanuvchi AI muammosi). 2. Katta resurslar talab qilishi: Tarmoqlarni o'rgatish uchun juda katta hajmdagi ma'lumotlar va qimmatbaho hisoblash quvvati (GPU/TPU) talab etiladi. 3. Ma'lumotlar tarafkashligi (Dataset bias): Agar o'rgatish ma'lumotlari bir yoqlama bo'lsa (masalan, faqat ma'lum bir irq rasmlari), tarmoq noto'g'ri va kamsituvchi qarorlar qabul qilishi mumkin (masalan, Amazonning ayollarni kamsituvchi ishga olish algoritmi).

## Galereya

Fayl:Single_layer_ann.svg|Bir qatlamli to'g'ridan-to'g'ri bog'lanishli neyron tarmog'i.
Fayl:Two_layer_ann.svg|Ikki qatlamli sun'iy neyron tarmog'i.
Fayl:Ann_dependency_(graph).svg|Neyron tarmog'ining bog'liqlik grafi.
Fayl:Cmac.jpg|CMAC neyron tarmog'ining parallel tuzilishi. Ushbu algoritm bir bosqichda yaqinlashishi (converge) mumkin.


## Yana qarang

* Sun'iy intellekt
* Chuqur o'rganish
* Mashinali o'rganish
* Kognitiv arxitektura

## Manbalar
Ushbu maqola inglizcha Vikipediyadagi https://en.wikipedia.org/wiki/Neural_network_(machine_learning) maqolasi asosida yaratildi.

## Tashqi havolalar

* Neyron tarmoqlariga qisqacha kirish (D. Kriesel)
* Neyron tarmog'i o'zi nima? (3Blue1Brown video darsi)