Amaliy mashg’ulot №8. Vlsi fpga uchun matlab yordamida sun'iy neyron tarmoqlarni loyihalash Ishning maqsadi



Download 0,94 Mb.
Pdf ko'rish
bet8/20
Sana09.06.2023
Hajmi0,94 Mb.
#950227
1   ...   4   5   6   7   8   9   10   11   ...   20
Bog'liq
Amaliy mashg’ulot №8. Vlsi fpga uchun matlab yordamida sun\'iy ne

8.3.4. Summator-akkumulyator. 
Bu elementning murakkabligi, ham kasrli sonlarni qayta ishlash 
algoritmining murakkabligi bilan belgilanadi, lekin kristalning resurslarni 
iste'mol qilish nuqtai nazaridan bu erda hammasi oddiy bo’lib, faqat bitta 
ma’lum o’lchamli qo'shuvchi(Summator-akkumulyator) yaratiladi va 
kirishlar sonining ko'payishi bilan, uning o'lchami odatda o'zgarmaydi. 
 
8.3.5. Faollashtirish funktsiyasi. 
Faollashtirish funktsiyasi neyron chiqishidagi signalning uning 
kirishidagi signallarning og'irlik yig'indisiga bog'liqligini aniqlaydi. 
Ko'pgina hollarda, u monotonik o'sib boradigan funksiya bo’lib, (-1...1) 
yoki (0...1) miqdorlar chegarasida yotadi. Sun'iy neyron tarmoqlarda 
chiziqli bo'lmagan faollashtirish funktsiyasining bir nechta turlari mavjud 
bo’lsa ham ko'pincha sigmasimon funksiya ishlatiladi va bu faollashtirish 
funktsiyalari 8.7 rasmda ko'rsatilgan.
8.7 rasm - Sigmoidal (a), ostona (b) va chiziqli (v) neyronlarni 
faollashtirish funktsiyalari. 
Amalda, sun'iy neyronning faollashtirish funktsiyalarini yaratish 
deyarli eng muhim o'rinni egallaydi, chunki chiziqli bo'lmagan 
sigmasimon funktsiyani to'g'ridan -to'g'ri amalga oshirish, iloji bo'lsa 
ham, ancha murakab va ko’p resurs talab qiladi. 
σ(x) = 1/(1 + exp(-tx)) 


Sigmasimon funktsiyani apparatda bajarilishni soddalashtirishning 
bir necha usullari mavjud: qidiruv jadvallaridan foydalanish (lookup 
table, 
aslida 
xotira), 
har 
xil 
bo'lakli 
chiziqli 
aproksimasiya(yaqinlashtirish), 
kombinatsion 
taxminiy 
yaqinlashuv(aproksimasiya). 
8.3.6. Suniy neyronlarning strukturasi. 
Neyron tarmoq topologiyasini qurishdan oldin, avval bitta neyronni 
strukturaviy tuzilishini loyihalash kerak. Quyida beshta funktsional 
blokga iborat sun'iy neyron uchun ekvivalent(almashtirish) sxema 
keltirilgan. U quyidagi kirish, ko'paytirgich, yig'uvchi, chiziqli bo'lmagan 
konvertor(uzgartirgich)), chiqish qisimlaridan iborat. Mana shu bloklar 
funktsiyasini saqlab qolgan holda FPGAda qurib ishlatiladi. 
8.8 rasm. Sun'iy neyronlarni almashtirish(ekvivalent) sxemasi. 
Ekvivalent sxemaga asoslanib (8.8 -rasm) bitta neyronning modeli 
qurilgan. Kirish ma'lumotlari [-1; 1] chegarasidagi ishorali o'nlik kasr 
raqamlardir. 
Eng katta bit (xona) sonning ishorasini bildiradi. Tarmoq og'irliklari 
va chegara qiymatlari 19-bitli(xonali) raqamlar bilan ifodalanadi. Eng 
katta bit ishorani, keyin sonning butun qismini 9 raqami va kevingi 9 bit 
esa kasr qismning 9 raqamini ifodalaydi. Og'irliklar va kirish 
ma'lumotlarining hosablash natijasi 24 bitli registrda saglanadi. Chiqish 
qiymati esa 26 bitli registrda eslab qolinadi. 
Quyida Verilog apparat tavsifi tilida beshta kiruvchili(x0..x4) 
chiziqli neyron modulining sarlavhasi keltirilgan 
module soma(
input wire [9:0] x0, 
input wire [9:0] x1, 
input wire [9:0] x2, 
input wire [9:0] x3, 


 input wire [9:0] x4, 
output wire [26:0] y); 
Sun'iy neyron tarmoqning og'irliklari va chegaralari oddiy 
ko'paytirish va qo'shish bloklari yordamida amalga oshirilsa, 
faollashtirish funktsiyasi xotira blokidan foydalanishni talab qiladi. Ya'ni, 
ba'zi faollashtirish funktsiyalarining haqoniylik jadvali xotira qurilmasida 
joylashtiriladi. Qo’yidagi holatda sigmasimon funktsiya ishlatilgan: 
bu erda: x - nochiziqli konvertorning kirishidagi yig'indi, 
t – funktsiya xarakteristikasining qiyalikini belgilaydigan 
koeffitsient. t = 0 bo’sa sigmasimon ostona funktsiyasiga aylanadi. 
FPGA xotirasining keraksiz sarflanishiga yo'l qo'ymaslik uchun 
ostona funktsiyasining simmetriyalilik xususiyati hisobga olingan. 
Shunday qilib, sigmasimon funktsiyaning birinchi yarmining 8000 ta 26 
bitli qiymatlari yordamida xotirada saqlanib, ikkinchi qismni shu eslab 
qolingan jadvaldan tanlab olivchi mantiqiy sxema yaratilgan. Ammo shu 
holatda ham FPGA asosida bu funktsiyani amalga oshirish uchun katta 
apparat resurslari kerak bo'ladi. 
Sigmasimon funktsiyani ishlatmasdan tuzilgan neyronning 
sxematik tasviri 8.9-rasmda ko'rsatilgan. 
8.9 rasm. FPGA asosidagi neyronning sxemasi. 
Har qanday strukturani amalga oshirish uchun raqamli qiymatlarni 
saqlash qobiliyatini ta'minlash kerak. Bu qiymatlarning xonaligi har bir 
neyronning mumkin bo'lgan holatlari sonini aniqlaydi va neyronlar sonini 
esa umuman avtomatni aniqlashi mumkin bo’lgan holatlarni aniqlaydi. 
Buning uchun har bir neyronning chiqish qiymatini reg turidagi xotirada 
o'zgaruvchi sifatida saqlashi mumkin. Bunda har bir neyron Verilog 
tilidagi modul bo'lgani uchun, ularni og'irliklarning qiymatiga chuqur 
kirishmasdan, individual neyronlar bilan ishlash orqali tarmoq 
topologiyasini tuzish mumkin. 


Biroq, 
FPGA 
va 
boshqa 
o'rnatilgan 
tizimlarda 
o’ramli(konvolyutsion) neyron tarmoqlarni ishga tushirish bir qator 
qiyinchiliklarga ega. Bular, tayyor kutubxonalarning yo'qligi, apparat 
platformasining hisoblash resurslarining cheklanganligi va o'rnatilgan 
platformada 
algoritmni 
tuzish 
sozlah 
jarayonini 
yuqori 
murakkabligidadir. Ammo, yuqorida tasvirlangan muammolarni Modelga 
asoslangan loyihalash va MATLAB / Simulink yaratish muhiti yordamida 
hal qilish mumkin. 
Strukturaviy ravishda Modelga qaratilgan loyihalash jarayonini 
uchta asosiy bosqichga bo'lish mumkin: algoritm modelini yaratish va 
uning parametrlarini takomillashtirish, apparatni amalga oshirish 
algoritmini tayyorlash va avtomatik kod ishlab chiqarish (8.10-rasm). 
8.10-rasm. Modelga qaratilgan loyihalashni ishlab chiqish bosqichlari. 
Birinchi bosqichda neyron tarmoqning tuzilishi MATLABda 
yaratiladi, tarmoq test ma'lumotlari bo'yicha o'qitiladi va kerak bo'lganda 
uning tuzilishi takomillashtiriladi. Keyingi bosqichda, Simulink muhiti 
yordamida FPGA -larni apparatli amalga oshirishga mos bo'lgan, 
ma'lumotlar oqimi bilan ishlavchi, NT-ni algoritmining oqim modeli 
yaratiladi. Uchinchi bosqichda, Simulink modellaridan avtomatik kod 
ishlab chiqarish yordamida biz uni FPGA -da sintez qilish va ishga 
tushirish uchun mos bo'lgan neyron tarmoq algoritmini tasvirlaydigan 
HDL kodini olamiz. 
Bu erda, o’ramli(konvolyutsion) NT-ning apparatli yaratishga misol 
sifatida, qo'lda yozilgan raqamlarni taniy oladigan tarmoq tanlangan 
(8.11-rasm). Keyinchalik, yaratilgan NT-ni boshqa ma'lumotlar to'plami 
- yo'l belgilari,yoki avtomobil raqamlarini tanish bo'yicha o'rgatish 


mumkin va haydovchilarga yordam berish tizimlarida yoki raqamlarni 
aniqlash uchun foto va video yozish tizimlarida foydalanish mumkin. 
8.11-rasm. Qo'lda yozilgan raqamlar tasviriga misol. 

Download 0,94 Mb.

Do'stlaringiz bilan baham:
1   ...   4   5   6   7   8   9   10   11   ...   20




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish