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.

ULASHISH

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.

Perceptron



Perseptronni qanday dasturlash mumkin

Perseptronni dasturlash uchun quyidagilarni bajaradigan oddiy JavaScript dasturidan foydalanishimiz mumkin:

  1. Oddiy plotter yaratadi
  2. 500 ta tasodifiy x y nuqtasini yaratadi
  3. x y nuqtalarini ko‘rsatadi
  4. Chiziq funksiyasini yaratadi: f(x)
  5. Chiziqni ko‘rsatadi
  6. Kutilgan javoblarni hisoblaydi
  7. 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; }

O‘zingiz sinab ko‘ring »


Chiziq funksiyasini yaratish

Chiziqni plotterda ko‘rsating:

Misol

function f(x) {   return x * 1.2 + 50; }

O‘zingiz sinab ko‘ring »


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); }

O‘zingiz sinab ko‘ring »


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!