Tanib olish
Neyron tarmoqlar yuzni tanib olish kabi ilovalarda qo‘llaniladi.
Bu ilovalar namunalarni tanib olish (pattern recognition) usulidan foydalanadi.
Bu turdagi klassifikatsiyani perseptron yordamida amalga oshirish mumkin.
Perseptronlar yordamida ma’lumotlarni ikki qismga ajratib klassifikatsiya qilish mumkin.
Perseptronlar chiziqli ikkilik klassifikatorlar nomi bilan ham tanilgan.
Namunalarni klassifikatsiya qilish
x y nuqtalari sochilgan fazodagi to‘g‘ri chiziqni (chiziqli grafikni) tasavvur qiling.
Chiziqdan yuqoridagi va pastdagi nuqtalarni qanday klassifikatsiya qilish mumkin?
Perseptronni chiziq formulasini bilmagan holda chiziqdan yuqoridagi nuqtalarni tanib olishga o‘rgatish mumkin.

Perseptronni qanday dasturlash mumkin
Perseptronni dasturlash uchun quyidagilarni bajaradigan oddiy JavaScript dasturidan foydalanishimiz mumkin:
- Oddiy plotter yaratadi
- 500 ta tasodifiy x y nuqtasini yaratadi
- x y nuqtalarini ko‘rsatadi
- Chiziq funksiyasini yaratadi: f(x)
- Chiziqni ko‘rsatadi
- Kutilgan javoblarni hisoblaydi
- Kutilgan javoblarni ko‘rsatadi
Oddiy plotter yaratish
Oddiy plotter obyektini yaratish AI Canvas bobida tasvirlangan.
Misol
const plotter = new XYPlotter("myCanvas");
plotter.transformXY();
const xMax = plotter.xMax;
const yMax = plotter.yMax;
const xMin = plotter.xMin;
const yMin = plotter.yMin;
Tasodifiy X Y nuqtalarini yaratish
Xohlagancha xy nuqtalarini yarating.
x qiymatlari tasodifiy bo‘lsin (0 va maksimum oralig‘ida).
y qiymatlari tasodifiy bo‘lsin (0 va maksimum oralig‘ida).
Nuqtalarni plotterda ko‘rsating:
Misol
const numPoints = 500;
const xPoints = [];
const yPoints = [];
for (let i = 0; i < numPoints; i++) {
xPoints[i] = Math.random() * xMax;
yPoints[i] = Math.random() * yMax;
}
Chiziq funksiyasini yaratish
Chiziqni plotterda ko‘rsating:
To‘g‘ri javoblarni hisoblash
Chiziq funksiyasi asosida to‘g‘ri javoblarni hisoblang:
y = x * 1.2 + 50.
Agar y chiziqdan yuqorida bo‘lsa, kutilgan javob 1 bo‘ladi, agar y chiziqdan pastda bo‘lsa, 0 bo‘ladi.
Kutilgan javoblarni massivda (desired[]) saqlang.
Misol
let desired = [];
for (let i = 0; i < numPoints; i++) {
desired[i] = 0;
if (yPoints[i] > f(xPoints[i])) {desired[i] = 1;}
}
To‘g‘ri javoblarni ko‘rsatish
Har bir nuqta uchun: agar desired[i] = 1 bo‘lsa, qora nuqta, aks holda ko‘k nuqta ko‘rsating.
Misol
for (let i = 0; i < numPoints; i++) {
let color = "blue";
if (desired[i]) color = "black";
plotter.plotPoint(xPoints[i], yPoints[i], color);
}
Perseptronni qanday o‘qitish mumkin
Keyingi bobda to‘g‘ri javoblardan quyidagi maqsadda qanday foydalanishni o‘rganasiz:
Noma’lum kirish qiymatlari uchun chiqish qiymatlarini bashorat qilish maqsadida perseptronni o‘qitish.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
