Bilamizki, o‘zbek tilida gaplar tuzilish jihatdan sodda, qo‘shma va murakkab turlarga bo‘linadi. Bunda kesim va unga ergashgan egalar soni bitta (sodda), ikkita (qo‘shma)hamda uch yoki undan ortiq (murakkab) bo‘lishi mumkin. Taqdimqilinayotgan loyihamizda sodda gaplar uchun sintaktik analizator haqida gapketadi.
Sintaksis grammatikaning bir bo‘limi bo`lib, bunda so‘zlarning va Gaplarningo‘zaro aloqasini, so‘z birikmalari va gaplarning turlarini, birikish usullarini o‘rganadi. Sintaktik tahlil sintaksisning asosiy hodisalaridan hisoblanib,
bunda gapni tashkil qiluvchi so‘zlar gaysi gap bo‘lagi vazifasini bajarishianiqlanadi.
Gap bo‘laklari dastlab, bosh va ikkinchi darajali bo‘laklarga bo‘linadi. Gapning ega va kesimi bosh bo‘laklar hisoblanadi. Kesim mutloq bosh bo‘lakdir. Kesimsiz gap bo‘lishi mumkin emas. Ikkinchi darajali bo‘laklar esa bosh bo‘laklarni aniqlab, to‘ldirib keladi. Ikkinchi darajali bo‘laklarga to‘ldiruvchi, aniqlovchi va hol kiradi.
Python dasturlash tilining NLTK kutubxonasida lug‘at va qoida kiritish orqali gaplarni sintaktik tahlil qilish imkoniyati mavjud. Tahlil uchun morfologik va sintaktik teglar ishlab chiqilishi gap bo‘laklarining kombinatsiyalari sonini chiqarishda zarur bo‘ladi. Python dasturlash tiliga so‘zlarning qaysi turkumga tegishli ekanligini hamdaqaysi gap bo‘lagi vazifasini bajarayotganini tushuntirish uchun biz maxsus teglar ishlab chiqdik. Quyidagi jadvallarda ularni ko‘rsatib o‘tamiz:
№
|
Teg
|
Gap boʻlagi
|
1
|
OT
|
Gap
|
2
|
SF
|
Ega
|
3
|
SN
|
Kesim
|
4
|
OL
|
Aniqlovchi
|
5
|
RV
|
To'ldiruvchi
|
6
|
FL
|
Hol
|
№
|
Teg
|
Gap boʻlagi
|
1
|
G
|
Gap
|
2
|
EGA
|
Ega
|
3
|
KE
|
Kesim
|
4
|
AN
|
Aniqlovchi
|
5
|
TL
|
To'ldiruvchi
|
6
|
HL
|
Hol
|
7
|
UND
|
Undalma
|
8
|
KRT
|
Kiritma
|
Masalan:
Biz (olmosh) hozir (payt holi) uyga (ot) ketmoqchimiz (fe’l)
G -> EGA HL HL KE
Kecha (payt holi) menga (olmosh) pochtadan (ot) maxsus (sifat) xat (ot) kelibdi (fe’l)
G -> HL TL HL AN TL KE
Quyida lug‘at va qoida qanday kiritilishini ko‘rib o‘tamiz:
Lug‘at tuzishda, dastavval, so‘zlarni qo‘shimchalarsiz holatga o‘tkazib, uning turkumi aniqlanadi. Buning uchun tayyor holatdagi o‘zbek tilidagi qo‘shimchalar jadvalidan hamda 34 ming so‘zdan iborat ma’lumotlar bazasidan foydalaniladi. Lug‘at tayyor bo‘lgach teglanadi va keltirilgan qoidalarga asoslanib, qaysi gap bo‘lgani vazifasida kelganligi aniqlanadi.
Navbatdagi ish qoidalarni kiritish jarayoni bo‘ladi. Qoidalar o‘zbek tili grammatikasiga asoslanib kiritiladi. Qoidalar kiritilishining asosiy samarasi shundaki, ular taxmin qilinayotgan kombinatsiyalar sonini sezilarli kamaytirishga xizmat qiladi.
Python dasturlash tiliga so‘zlarning qaysi gap bo‘lagi vazifasini bajarayotganini tushuntirish uchun biz maxsus sintaktik teglar ishlab chiqdik. Ular
Do'stlaringiz bilan baham: |