|
1-loyiha ishi mаvzu: Chiziqli regressiya
|
Sana | 15.05.2024 | Hajmi | 1,62 Mb. | | #234704 |
Bog'liq Regressiv
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI
Kafedra: Axborot texnologiyalarining dasturiy ta’minoti
“Ma’lumotlarmni intellektual tahlil qilish texnologiyalari” fanidan (ON)
1-LOYIHA ISHI
Mаvzu: Chiziqli regressiya
Tayyorladi: Xamrayev Mansur
Guruh № 301-23 DIF
Qabul qildi: N.A.Egamberdiyev
Toshkent 2023
Mavzu: Chiziqli regressiya masalasini yechish
Ish tartibi:
Loyiha ishi tavsifini o‘rganish;
Ma’lumotlar to‘plami haqida axborot berish va dasturga yuklash;
Ma’lumotlarga dastlabki ishlov berish: C# dasturlash tilida oqimlar bilan ishlash classi StreamReader, ajratib olish uchun Split() funksiyasidan, ma’lumotlarni double turiga o‘tqazish uchun Parse() funksiyalaridan foydalanish.
Chiziqli regressiya algoritmi, chiziqsiz regressiya algoritmi yoki C# da mavjud kutubxonalardan foydalanib regressiya masalasini yechish (C#dastur ishlab chiqish);
Tanlangan algoritmning aniqligini baholash (MSE va MAEni hisoblash);
Berilgan ob’yektning chiqish qiymatini aniqlash;
Nazariy qism:
Ma’lumotlar to‘plamini kaggle.com saytidan Iris data seti yuklab olindi. Data setda 3 xil turdagi iris gulini o‘lchamlari keltirilgan. Ular Iris-sitoza, Iris-versicolor, Iris-virginica tegishli ravishda 1, 2, 3 sonlari bilan o’zgartirildi. TXT fayldan ma’lumotlar o‘qib olinib, sonlar massiv va matritsaga o‘qitildi. Bu jarayonlardan C# dasturlashning tilining oqimlar bilan ishlash classi StreamReader, ajratib olish uchun Split() funksiyasidan, ma’lumotlarni double turiga o‘tqazish uchun Parse() funksiyalaridan foydalanildi.
Bizga quyidagi ma’lumotlar to‘plami berilgan bo‘lsin:
Ma’lumotlarni C# ning StreamReader klassidan foydalanib o’qib olamiz.
Demak biz chiziqli ko‘p nomalumli tenglamani hosil qilib olamiz va bizga qo‘yilgan masala shula tenglamadan nomalum a larni topish bo‘ladi:
Bu tenglamadan biz lar yig’indisini minimumga intiltiramiz va yuqoridagi tenglamar sistemasini hosil qilib olamiz va quyidagi matritsaga keltirib olamiz:
Va bizga b larni formulasini keltirib chiqaramiz:
Ushbu formulalarni C# dasturlash tilida quyidagicha yozib olamiz.
Endi a larni toppish uchun determinatni hisoblab chiqishimiz kerak bo‘ladi. Detirminant toppish uchun quyidagi C# koddan foydalanamiz:
Demak a larni detirminantni asosiy determinantga bo‘lib topib oldik. Keyingi so‘ralgan narsalar bizdan MSE(o‘rtacha kvadratik xatolik) va MAE(o‘rtacha arifmetik xatolik) larni quyidagi formulalar yordamida hisoblab olamiz:
Endi yozilgan dasturni tekshirib ko‘ramiz. Uning uchun Iris ma’lumotlar to‘plamini kiritamiz. Va mos ravishda gul nomlarini raqamlar bilan o‘zgartiramiz:
Iris-setoza – 1
Iris-vesicolor – 2
Iris-virginica – 3
Va quyidagi natijaga ega bo‘ldik:
MSE = 0.17509
MAE = 0.29439
|
| |