Kompyuter tizimlari




Download 0.85 Mb.
bet2/5
Sana01.01.2023
Hajmi0.85 Mb.
#37392
1   2   3   4   5
Bog'liq
3012107720, notification-file, application-file, 1669973412 (3), 1669120852, 1671794695, 1671786083, 1671627717, 6-Hhg2maExef6D4dssx4y3oBHURCKfsq, AgioGbFzDYdNWpPFYeiuNAhafTAYCWxy, 1, Axborot texnologiyalari va kommunikatsiyalarini rivojlantirish v-www.hozir.org, - Raspberry Pi for Beginners Revised Edition 2014 (2011), electronics-10-00115-v3
Vektor mashinasini qo'llab-quvvatlash (SVM)

SVM - bu tasniflash, regressiya va chegaralarni aniqlash uchun qo'llaniladigan nazorat qilinadigan o'rganish usullari to'plami. SVMda har bir ma'lumot elementi n o'lchovli fazoda nuqta sifatida chiziladi (n = xususiyat soni), har bir xususiyatning qiymati ma'lum bir koordinataning qiymati bo'ladi. Tasniflash ikki (2) sinfni bir-biridan ajratib turuvchi giper tekislikni topish orqali amalga oshiriladi.

  1. rasm - Xususiyatlarni chiqarish

HOG xususiyatlarini hisoblash uchun biz katakchalar sonini 14 x 14 oÿlchamda oÿrnatdik. Avval aytib oÿtganimizdek, MNIST maÿlumotlar toÿplamining


oÿlchami 28 x 28 piksel, shuning uchun bizda har biri 14 x 14 oÿlchamdagi toÿrt
(4) blok/hujayra boÿladi. Orientatsiya vektori 9 ga oÿrnatiladi. Bu HOG xususiyat vektori 4 x 9 = 36 oÿlchamda boÿlishini anglatadi.

Keyin biz Linear SVM ob'ektini yaratamiz va ma'lumotlar to'plami uchun treningni bajaramiz, keyin klassifikatorni quyidagi 4-rasmda ko'rsatilgandek faylga saqlaymiz.





1-rasm - SVM tasnifi


Scikit-learn'dagi SVM kirish sifatida zich (numpy.ndarray va numpy.asarray tomonidan konvertatsiya qilinadigan) va siyrak (har qanday scipy.sparse) namuna vektorlarini qo'llab-quvvatlaydi. Scikit Learn-da SVC, NuSVC va LinearSVC bo'lgan ma'lumotlar to'plamida ko'p sinf tasnifini amalga oshirishga qodir uchta (3) sinf mavjud. Ushbu tizimda biz MNIST ma'lumotlar to'plamini tasniflash uchun LinearSVC sinfidan foydalanamiz. LinearSVC yoki Chiziqli qo'llab-quvvatlash vektor tasnifi, bu chiziqli yadrodan foydalanadi va liblinear nuqtai nazaridan amalga oshiriladi, bu jarimalar va yo'qotish funktsiyalarini tanlashda ko'proq moslashuvchanlikka ega va katta miqdordagi namunalarni o'lchaydi.



  1. K-Eng yaqin qo'shni (KNN)

KNN tasniflagichi tasvirlarni tasniflashning eng oddiy algoritmidir. KNN tasnifi aslida hech narsani o'rganmaydi.
Ushbu algoritm xususiyat vektorlari orasidagi masofaga tayanadi. KNN algoritmi noma'lum ma'lumotlar nuqtalarini eng yaqin k misollar orasida eng keng tarqalgan sinfni topib tasniflaydi.
Eng yaqin k dagi har bir ma'lumot nuqtasi ovoz beradi va eng yuqori toifadagi ovozlar soni g'alaba qozonadi.



Keyin test ma'lumotlarida klassifikatordan foydalanamiz. 1 ga teng k qiymatidan foydalanamiz. Keyin yakuniy baholashni 7-rasmda ko'rsatilganidek bajaramiz.

  1. rasm - Sinov klassifikatori

Keyin biz ba'zi individual bashoratlarni ko'rib chiqamiz. Biz sinov ma'lumotlar to'plamidan besh (5) tasodifiy tasvirni aylantiradi.





  1. rasm - K-NN tasnifi




Tasvir tasniflagichini o'rgatish uchun besh (5) qadam mavjud: a.
1-qadam – Boshlang‘ich ma’lumotlar to‘plamimizni tuzish b. 2-qadam – Ma’lumotlar to‘plamini bo‘lish c. 3- bosqich - xususiyatlarni ajratib olish d. 4-bosqich - tasniflash modelini o'rgatish e. 5-bosqich – tasniflagichni baholash

  1. rasm - Klassifikatorni tekshirish


Avval biz MNIST ma'lumotlar to'plamini tizimga yuklaymiz. Keyin biz ma'lumotlar to'plamini o'quv va sinov ma'lumotlariga ajratamiz. Biz ma'lumotlar to'plamini o'qitish uchun 75% va test uchun 25% ga ajratamiz. Quyidagi 6-rasmda ko'rsatilganidek, trening ma'lumotlar to'plamidan biz tekshirish uchun 10% ni ajratamiz.
Shakl 6 - Split trening, test va tekshirish

  1. Ko'p qatlamli perseptron neyron tarmog'i (MLP)

Ko'p qatlamli Perceptron (MLP) - bu boshqariladigan algoritm
funktsiyani o'rganadi:

Funktsiya ma'lumotlar to'plamini o'rganish orqali o'rganadi, bu erda m


- kiritish uchun o'lchamlar soni va o - chiqish uchun o'lchamlar soni. X = x1, x2, ….., xm va maqsadli y xususiyatlar to'plamini hisobga olgan holda , u tasniflash yoki regressiya uchun chiziqli bo'lmagan funktsiyani o'rganishi mumkin. Bu logistik regressiyadan farq qiladi, chunki kirish va chiqish qatlami o'rtasida bir yoki bir nechta chiziqli bo'lmagan qatlamlar bo'lishi mumkin, ularni yashirin qatlam deb atashadi.

Shundan so'ng biz klassifikatorni o'rgatamiz va k ning optimal qiymatini topamiz. klassifikatorning aniqligini ham hisoblab chiqamiz.


Bu klassifikatorda biz k qiymatini 1 dan 15 gacha aylantiramiz. Keyin quyidagi 7-rasmda ko'rsatilgandek klassifikatorni tasdiqlaymiz.

7-rasm - O'qitish va tasdiqlash klassifikatori





  1. rasm - MLP yashirin qatlami







  1. Ma'lumotlar bazasidagi har bir namuna uchun HOG xususiyatlarini hisoblang.

Keyin biz tasniflagichni sinab ko'rish uchun ishlatiladigan rasmni yuklaymiz. Keyin biz rasmga oldindan ishlov beramiz, masalan, kulrang rangga aylantiramiz va Gauss filtrini qo'llaymiz. Keyin biz tasvirni chegaralaymiz va tasvirdagi konturlarni topamiz. Keyin 15-rasmda ko'rsatilganidek, har bir konturni o'z ichiga olgan to'rtburchaklar olamiz.






  1. Har bir namunaning HOG xususiyatlari va tegishli yorlig'i bilan ko'p sinfli MLP neyron tarmog'ini o'rgating.




  1. Tasniflagichni faylda saqlang.




  1. rasm - MNIST ma'lumotlar to'plamini yuklab oling

2-rasmda ko'rsatilganidek, MNIST ma'lumotlar to'plamini yuklab olamiz.


Keyin biz MNIST ma'lumotlar to'plamining xususiyatini olish uchun yo'naltirilgan gradientlarning histogrammasi (HOG) xususiyatini aniqlashdan foydalanamiz.
Raqamlarning ma'lumotlar to'plami tasvirlari numpy massivda va tegishli teglarda saqlanadi. Keyin har bir tasvir uchun HOG xususiyatlarini hisoblab chiqamiz va ularni boshqa numpy massivda saqlaymiz. Quyidagi 12-rasmda ko'rsatilgan kodlash.



  1. rasm - Tasvirga oldindan ishlov berish




  1. rasm - Sinov tasviri





  1. rasm - Xususiyatlarni chiqarish

Keyin biz sinov tasviriga klassifikatorni bajaramiz.
Biz HOG xususiyatlarini hisoblab chiqamiz va rasmning raqamini taxmin qilamiz va keyin 17-rasmda ko'rsatilgandek natija tasvirini ko'rsatamiz.

HOG xususiyatlarini hisoblash uchun biz katakchalar sonini 14 x 14 oÿlchamda oÿrnatdik. Avval aytib oÿtganimizdek, MNIST maÿlumotlar toÿplamining


oÿlchami 28 x 28 piksel, shuning uchun bizda har biri 14 x 14 oÿlchamdagi toÿrt
(4) blok/hujayra boÿladi. Orientatsiya vektori 9 ga oÿrnatiladi. Bu HOG xususiyat vektori 4 x 9 = 36 oÿlchamda boÿlishini anglatadi.

Keyin biz MLP Neyron Network ob'ektini yaratamiz va ma'lumotlar to'plami uchun treningni bajaramiz, so'ngra klassifikatorni quyidagi 13-rasmda ko'rsatilgandek faylga saqlaymiz.



  1. rasm - Klassifikatorni tekshirish




Shakl 13 - MLP neyron tarmog'i tasnifi
KNN uchun biz KNNning oldingi segmentida tasvirlanganidek tajribani o'tkazamiz, biz klassifikatorni test ma'lumotlar to'plamidan tasodifiy tasvirlar yordamida tekshiramiz.


  1. Download 0.85 Mb.
1   2   3   4   5




Download 0.85 Mb.