uchun atigi 40000 ta rasmdan foydalandim. Bu maʼlumotlar quyida koʻrsatilgan
rasmlarga oʻxshash matnli tasvir segmentlarini oʻz ichiga oladi:
Ma’lumotlarni oldindan qayta ishlash
Kirish
tasvirini ham, chiqish yorlig’ini ham oldindan qayta ishlashimiz kerak.
Kirish tasvirimizni oldindan qayta ishlash uchun quyidagilarni ishlatamiz:
1.
Tasvirni o’qing va kulrang o’lchamdagi tasvirga aylantirish;
2.
To’ldirishdan foydalanib, har bir rasmni (128,32) o’lchamda qilish;
3.
Arxitekturaning kirish shakliga mos kelishi uchun tasvir oʻlchamini (128,32,1)
sifatida kengaytirish.
4.
Rasm pikseli qiymatlarini 255 ga bo’lish orqali normallashtiring.
Chiqish yorliqlarini oldindan qayta ishlash uchun quyidagilardan foydalaning:
1.
Tasvir nomidagi matnni tasvir nomidan o’qish mumkin, chunki tasvirning
ichida yozilgan matn mavjud.
2.
Funksiya yaratish orqali so’zning har bir belgisini qandaydir raqamli qiymatga
kodlang ("a’:0, "b":1 …….. ‘z’:26 va hokazo). Aytaylik, bizda "abab" so’zi mavjud
bo’lsa, bizning kodlangan yorlig’imiz [0,1,0,1] bo’ladi.
1.
So’zlardan maksimal uzunlikni hisoblang va uni maksimal uzunlik bilan bir xil
o’lchamda qilish uchun har bir chiqish yorlig’ini to’ldiradi. Bu RNN arxitekturasining
chiqish shakliga mos kelishi uchun amalga oshiriladi.
Oldindan ishlov berish bosqichida ikkita ro’yxatni yaratishimiz kerak: biri yorliq
uzunligi, ikkinchisi esa RNN ga kirish uzunligi. Ushbu ikkita ro’yxat
bizning CTC
yo’qotish uchun muhim. Yorliq uzunligi - har bir chiqish matni yorlig’ining uzunligi
va kirish uzunligi arxitekturada 31 bo’lgan LSTM qatlamiga har bir kirish uchun bir
xil bo’ladi.
Model arxitekturasi
Model arxitekturasini yaratish va uni oldindan ishlangan ma’lumotlar bilan
o’rnatish.
Model = CNN + RNN + CTC yo’qolishi
Modelimiz uch qismdan iborat:
1. Konvolyutsion neyron tarmoq qatlami
Konvolyutsion neyron tarmog’i (CNN yoki ConvNet) - bu vizual tasvirlarni tahlil
qilishda muvaffaqiyatli qo’llanilgan, sun’iy neyron tarmoqlarni ta’minlaydigan chuqur
o’rganish sinfidir. CNN har qanday tasvirni parcha-parcha solishtiradi va uni aniqlash
"Science and Education" Scientific Journal / Impact Factor 3.848
May 2023 / Volume 4 Issue 5
www.openscience.uz / ISSN 2181-0842
709
vaqtida qidiradigan qismlar xususiyat deb ataladi. Tasvirdan xususiyatlarni ajratib
olish uchun konvolyutsion neyron tarmoqdir. CNNda uchta asosiy operatsiya mavjud:
a) Konvolyutsiya. b) ReLU. c) Pooling yoki Sub
a) konvolyutsiya qatlami
CNN uchun Convolutionning asosiy maqsadi kirish tasviridan xususiyatlarni
olishdir. Har bir konvolyutsiya qatlami to’rt o’lchamli N x Rangli kanal x kenglik x
balandlikdagi to’plamli kirish sifatida tasvirni oladi. Yadrolar yoki filtrlar, shuningdek,
to’rt o’lchovli (xususiyatlar
xaritalari soni, xususiyat xaritalari soni, filtr kengligi va
filtr balandligi) o’rganilishi mumkin bo’lgan parametrlar (og’irliklar va noaniqliklar)
to’plamidir. Har bir konvolyutsiya qatlamida to’rt o’lchovli konvolyutsiya tasvirlar
to’plami va xususiyat xaritalari o’rtasida ular orasidagi p nuqta bilan hisoblanadi.
Konvolyutsiyadan so’ng o’zgarishlar faqat tasvirning kengligi va balandligi bo’ladi.
b) Rektifikatsiya qilingan chiziqli birlik
ReLU deb nomlangan qo’shimcha operatsiya har bir Convolution operatsiyasidan
so’ng ishlatilgan. Rektifikatsiyalangan chiziqli birlik (ReLU) neyron tarmog’ining
xujayrasi bo’lib, uning x ga berilgan chiqishini hisoblash uchun quyidagi faollashtirish
funksiyasidan foydalanadi:
R(x) = Maks(0,x)
c) Pooling yoki Sub
Ushbu qatlamda parametrlar va hisob-kitoblarni kamaytiradigan kichraytirilgan
xaritalarni olish uchun xususiyat xaritasining o’lchami kamayadi. Birlashtirish Maks,
O’rtacha yoki Sum bo’lishi mumkin. Konvolyutsiya
qatlamidagi filtrlar soni
birlashtirishdan olingan chiqish xaritalari soni bilan bir xil. Pooling tuzatilgan
xususiyat xaritalaridan ma’lumot oladi va keyin algoritmga muvofiq uni qisqartiradi.
2. Takrorlanuvchi neyron tarmoq
Vaqt bosqichida ketma-ket chiqishni bashorat qilish uchun takroriy neyron
tarmoq. Takroriy neyron tarmog’i (RNN) neyron tarmog’ining bir turi bo’lib, oldingi
bosqichdagi chiqish joriy bosqichga kirish sifatida beriladi. gapning keyingi so’zini
bashorat qilish kerak bo’lganda, oldingi so’zlar talab qilinadi va shuning uchun oldingi
so’zlarni eslab qolish zarurati tug’iladi. RNN ning asosiy va eng muhim xususiyati -
bu ketma-ketlik haqidagi ba’zi ma’lumotlarni eslab turadigan yashirin holat. RNNda
hisoblangan narsalar haqidagi barcha ma’lumotlarni eslab qoladigan “xotira” mavjud.
Uzoq qisqa muddatli xotira (LSTM) tarmoqlari ketma-ketlikni bashorat qilish
muammolarida tartibga bog’liqlikni o’rganishga qodir bo’lgan takrorlanuvchi neyron
tarmoq turidir.
Bu mashina tarjimasi, nutqni aniqlash va boshqalar kabi murakkab
muammoli sohalarda talab qilinadigan xatti-harakatlardir. LSTMlar chuqur
o’rganishning murakkab sohasidir. LSTMlar nima ekanligini va ikki tomonlama va
ketma-ketlik kabi atamalar sohaga qanday bog’liqligini bilish qiyin bo’lishi mumkin.
LSTMlar vaqt va qatlamlar bo’yicha qaytarilishi mumkin bo’lgan
xatoni saqlab
"Science and Education" Scientific Journal / Impact Factor 3.848
May 2023 / Volume 4 Issue 5
www.openscience.uz / ISSN 2181-0842
710
qolishga yordam beradi. Doimiyroq xatolikni saqlab, ular takrorlanuvchi tarmoqlarga
ko’p vaqt davomida (1000 dan ortiq) o’rganishni davom ettirishga imkon beradi va shu
bilan sabab va oqibatlarni masofadan bog’lash uchun kanal ochadi. LSTM
yacheykasida axborot oqimini tartibga soluvchi uchta turli eshiklari bor.
1.
eshikni unutish;
2.
kirish eshigi;
3.
chiqish eshigi.
CTC yo’qotish funksiyasi
Har bir vaqt bosqichi uchun chiqishni bashorat qilish uchun ishlatiladigan
transkripsiya qatlami bo’lgan CTC yo’qotish funksiyasi. CTC LOSS Aleks Graves
RNNni o’qitish uchun ishlatiladi, bu qo’lda yozilgan hizalanish muammosini bartaraf
qiladi, chunki qo’lda yozilgan har bir yozuvchining moslashuvi har xil. Shunchaki
tasvirda yozilgan narsalarni (Ground Truth Text) va BLSTM chiqishini beriladi, keyin
u salbiy maksimal ehtimollik yo’lini minimallashtirish maqsadida yo’qotishni hisoblab
chiqadi.