Python bilan oddiy logistika regressiyasi.

Bez kevorda

Bez Keyvorda 18 fevral, 2021 Kirish Men sizni Titanik falokati haqida aytib beray! - deb zeriktirmayman - biz hammamiz Titanik haqida bilamiz - lekin juda yaxshi
08.09.2021

18 fevral, 2021 yil

Kirish

Men sizni "Titanik falokati haqida aytib beray!" - deb zeriktirmayman - biz hammamiz Titanik haqida bilamiz, lekin Internetda juda yaxshi ma'lumotlar to'plami bor, biz uni Pythonda logistik regressiya modelini yaratish uchun ishlatishimiz mumkin. . Logistik regressiya ikkilik natijalar, ya'ni 1s va 0s, True s va False s bilan bog'liq. "Titanik" ma'lumotlar bazasining jiddiy yaroqliligi, shubhasiz, bizning natijamiz yo'lovchi tirik qolganmi yoki yo'qmi. Ushbu xabarda biz Python -da logistika regressiya modelini yaratish, o'zgartirish va talqin qilish haqida gaplashamiz, shuningdek, biz chalkash o'zgaruvchilar va koeffitsientlar nisbati haqida gaplashamiz.

Ma'lumotlar

Seaborn kutubxonasi ma'lumotlar to'plami bilan ta'minlangan, shuning uchun biz uni yuklashimiz va nima bilan ishlayotganimizni ko'rishimiz mumkin:

Shunday qilib, bizda 15 o'zgaruvchining 891 kuzatuvidan iborat ma'lumotlar ramkasi mavjud. omon qolgan bizning ikkilik javob o'zgaruvchimiz. Logistik regressiyada biz javob o'zgaruvchimiz 0 (natija yo'q) va 1 (natija) kodlangan bo'lishini xohlaymiz; Yaxshiyamki, biz uchun bu ma'lumotlar allaqachon shunday. Bu erda juda ko'p boshqa o'zgaruvchilar bor, lekin, ehtimol, biz omon qolishga ta'sir qilishi mumkin bo'lgan bir nechtasi bilan qiziqamiz. Bunga jinsiy aloqa (erkaklarnikiga qaraganda urg'ochilar qayiqda ko'proq joy olishganmi?), Yoshi (ehtimol bolalar kattalarga qaraganda ko'proq joy olgan bo'lishi mumkinmi?), Yo'l haqi (ular chiptaga qancha to'lashgan) arzon O'rindiqlarni , yana) !? xavfli, va men, biz ham embark_town ko'ring balki taxmin; qayerga o'tirishdi.

Yon eslatma: Ushbu ma'lumotlar to'plami mashinani o'rganish musobaqalarida va shunga o'xshash narsalarga katta e'tibor qaratganga o'xshaydi. Bu kontekstlarda siz, ehtimol, ma'lumotlaringizni mashg'ulotlar va testlar to'plamiga bo'lasiz; o'quv majmuasida bashoratli modelni yaratish; va keyin test to'plamidagi kuzatuvlarni bashorat qilishda qanchalik yaxshi ishlaganingizni ko'ring. Menimcha, bu bashoratli modellashtirishni o'rganishning ajoyib usuli, lekin men o'zimni g'alati misol kabi his qilmayman. "Titanik" da kimdir o'lgan yoki o'lmaganligini aniq sezuvchanlik va aniqlik bilan bashorat qila olsangiz, kim g'amxo'rlik qiladi? Biz har doim bashoratli narsalarni tuzishimiz shart emas. Haqiqatdan so'ng (ya'ni 100 yildan oshiq vaqt o'tgach), biz ma'lumotni bashorat qila oladigan ajoyib modelni yaratganimizni bilishdan ko'ra, omon qolish bilan bog'liq bo'lgan omillarni bilish foydaliroq.s o'nlab yillar davomida mavjud edi.

Bizning birinchi logistika regressiya modeli

Sintaksis asosan Pythonda statsmodels.formula.api funktsiyalari yordamida amalga oshiriladigan boshqa regressiya modellari bilan bir xil. Bizning birinchi formulamiz shaklida bo'ladi

; bizning taxminiy o'zgaruvchimiz jins bo'ladi. Bu shunday ko'rinadi:

Agar siz mening regressiya haqidagi boshqa so'nggi xabarlarimni tekshirgan bo'lsangiz, umid qilamanki, bu juda oilaviy ko'rinadi. Sharh nazariy jihatdan o'xshash, lekin biz gaplashishimiz kerak bo'lgan chiziqli regressiya bilan solishtirganda bir nechta farqlar bor.

Birinchidan, bizning koeffitsientimiz jins [T.male] deb ta'riflanadi. Ayol haqida hech narsa aytilmagan va buning sababi, kategorik tushuntirish o'zgaruvchilari bilan, o'zgaruvchining birinchi darajasi mos yozuvlar sifatida ishlatiladi . Malumot sifatida jins o'zgaruvchisidagi ayollar guruhi ishlatiladi, bunda o'zgaruvchining boshqa barcha darajalari solishtiriladi. (Bu holda, faqat bitta daraja bor - erkak.) Shunday qilib, bizning koeffitsientimiz -2.5137 - noldan past - demak, erkaklar urg'ochilarga qaraganda o'lim ehtimoli ko'proq (ma'lumot darajasi). Balki aniqrog'i, manfiy koeffitsient erkaklarning javob o'zgaruvchisining natijasiga, ya'ni omon qolish ehtimoli kamligini bildiradi.

Albatta, agar biz p-qiymatiga qaramasak, bu ma'nosiz bo'ladi; lekin bu holda bizning p-qiymati

Odds nisbati

Bu ta'sirlarni aniqlashning muhim usuli - bu koeffitsientlardan foydalanish. Bu natijalar bir guruhda sodir bo'lish ehtimolini boshqa guruhda bo'lish ehtimoli bilan solishtiradi. Bizning sharoitimizda, ehtimollik nisbati bizga aniq bir ma'lumot beradi: agar siz Titanikda ayol bo'lsangiz, erkak bilan solishtirganda omon qolish ehtimoli qanchalik yuqori edi?

1 ga teng bo'lgan koeffitsient bu ikki guruh o'rtasida hech qanday farq yo'qligini bildiradi (shuning uchun har qanday ta'sir ahamiyatli bo'lmaydi). Kategorik o'zgaruvchilar uchun koeffitsientlar nisbati 1 dan katta bo'lsa, bu javob guruhi mos yozuvlar guruhiga qaraganda javob o'zgaruvchisining natijasi bilan bog'liq bo'lishi ehtimoli ko'proq. Birdan kam bo'lgan koeffitsient nisbati, bu guruh javob o'zgaruvchisining natijasi bilan kamroq bog'liqligini bildiradi.

Bu biroz so'zli, lekin menimcha, bu doimiy o'zgaruvchilar bilan biroz mantiqiyroq. Misol uchun, agar biz yoshni omon qolishning muhim bashoratchisi ekanligini aniqlagan bo'lsak, siz qanchalik katta bo'lsangiz, omon qolish ehtimoli shunchalik katta bo'ladi, demak, bizning koeffitsientimiz nisbati 1dan katta bo'lar edi. tushuntiruvchi o'zgaruvchining ortishi bilan javob o'zgaruvchisi ortadi. (Va aksincha.)

Yaxshiyamki, koeffitsient nisbati - bu bizning parametr bahosining tabiiy eksponatsiyasi (haha. Aniq).

Biz buni "Titanik" da erkaklar urg'ochi kabi 8% omon qolish ehtimoli bor degan ma'noni anglatishi mumkin. Rostini aytsam, menimcha, hamma narsani boshqacha o'ylash tabiiyroq: urg'ochilar erkaklarga qaraganda necha marta omon qolish ehtimoli ko'proq? Buni amalga oshirish uchun biz faqat jinsiy o'zgaruvchimizni aylantirishimiz kerak, shunda erkaklar urg'ochi emas, balki mos yozuvlar darajasidir:

Vau: urg'ochilar erkaklarga qaraganda 12 baravar ko'proq omon qolishgan! Qisqa eslatma: Agar siz ushbu modelning qisqacha mazmunini chop qilmoqchi bo'lsangiz (bu erda biz o'zgargan yagona narsa-jinsiy o'zgaruvchini o'zgartirish), koeffitsient va z-skoridagi belgidan tashqari barcha statistikalar bir xil bo'ladi. Shunday qilib, -2.5137 koeffitsienti o'rniga, 2.5137 koeffitsienti, bu urg'ochilarning omon qolish ehtimoli ko'proq ekanligini ko'rsatadi (erkaklar omon qolish ehtimoli kamroq degani emas, xuddi shunday, to'g'rimi?).

Biz, albatta, unutmasligimiz kerak bo'lgan oxirgi narsa - ishonch oralig'ini qo'shish! Bu nozik kodni Coursera Regression Modeling in Practice kursi o'qituvchilari menga ko'rsatdilar va biz bu erda koeffitsientlar nisbati va ishonch oralig'ining tezkor jadvalini yaratish uchun foydalanamiz:

Shunday qilib, 95% ishonch oralig'ida urg'ochilar erkaklarga qaraganda Titanikdan omon qolish ehtimoli 8,9 dan 17,1 martagacha ko'proq bo'lgan.

Ko'proq o'zgaruvchilarni qo'shish

Bizning modelimizga ko'proq o'zgaruvchilarni qo'shgan ma'qul. Birinchidan, ular bizga ko'proq qiziqarli narsalarni aytib berishlari mumkin. Lekin bundan ham muhimi, ular bizga tushuntiruvchi o'zgaruvchilarning mumkin bo'lgan chalkashliklarini hisobga olishga yordam beradi. Menimcha, buni tushunishning eng yaxshi usuli - bu misolni ko'rish.

Logistika regressiya modelini tuzganimizda, omon qolishni faqat yosh o'zgaruvchisi bashorat qiladi, natijada koeffitsient –0.0110, p-qiymati 0,040. Bu shuni anglatadiki, yosh va omon qolish o'rtasida zaif korrelyatsiya mavjud; yoshi oshishi bilan omon qolish kamayadi.

Ammo, agar biz o'zgaruvchan jinsni modelga qo'shsak nima bo'lishini ko'ring.

To'satdan, yosh uchun p-qiymati 0,390 gacha ko'tarildi! Aytishimiz mumkinki, jinsiy aloqa omon qolish va yosh o'rtasidagi munosabatni buzadi . Modelga jinsiy aloqa qo'shib, biz jinsni hisobga olganda, yoshning omon qolishiga ta'sirini ko'rib chiqishga majbur bo'lamiz . Bu tushunarsiz holatni tushuntirishning bir usuli shundaki, ehtimol Titanikda keksa odamlarning ko'pchiligi erkaklar edi; va biz bilamizki, erkaklar o'lish ehtimoli ko'proq, shuning uchun agar biz jinsiy aloqaga e'tibor bermasak, qariyalar ham o'lgan bo'lishi mumkin! Shuning uchun biz modellarimiz haqida yaxshilab o'ylab ko'rishimiz va biz qila oladigan barcha mumkin bo'lgan chalkash o'zgaruvchilarni o'z ichiga olishimiz juda muhimdir.

Yakuniy model

Biz bu erda o'z modelimizga yana bir nechta tushuntiruvchi o'zgaruvchilarni qo'shib tugatmoqchimiz. embark_town - uch darajali kategoriya o'zgaruvchisi: Kvinstaun, Sautgempton va Cherbourg. yo'l haqi doimiy o'zgaruvchidir (ya'ni, chiptalar narxi).

Yoshi, yo'l haqi va turar joyning mumkin bo'lgan chalkash ta'sirini hisobga olgandan so'ng, Titanik falokatidan omon qolish ehtimoli ayollarga qaraganda erkaklarga qaraganda o'n baravar yuqori edi (OR = 10.76, 95% CI = 7.36-15.73). Shuningdek, internat shahri omon qolish bilan chambarchas bog'liqligi aniqlandi, bu erda Sautgemptonga kirganlar Cherbourgga kirganlarnikiga qaraganda yarim baravar ko'proq tirik qolish ehtimoli bor edi (OR = 0.49, 95% CI = 0.30-0.80), buxgalteriya hisobidan keyin ham. yo'l haqi, yoshi va jinsi uchun. Narxlar omon qolish bilan bog'liq bo'lsa -da, bu ahamiyatsiz edi (OR = 1.01, 95% CI = 1.005-1.011).

Onlayn kazino
O'yin -kulgi avtomatlari
Onlaynkazino

Bizning yangiliklarimizga obuna bo'lish orqali birinchi eksklyuziv taklifni oling va eng yaxshi onlayn kazinolarda har kungi ajoyib chegirmalarimizdan foydalaning!