KoŔļājot par loģistikas regresiju

KoŔļājot par loģistikas regresiju

Å ajā rakstā mēs analizēsim transformācijas teorētiskos aprēķinus lineārās regresijas funkcijas Š² apgrieztās logit transformācijas funkcija (citādi saukta par loÄ£istikas atbildes funkciju). Pēc tam, izmantojot arsenālu maksimālās varbÅ«tÄ«bas metode, saskaņā ar loÄ£istikas regresijas modeli mēs atvasinām zaudējumu funkciju LoÄ£istikas zaudējumijeb citiem vārdiem, definēsim funkciju, ar kuru loÄ£istikas regresijas modelÄ« tiek atlasÄ«ti svara vektora parametri KoŔļājot par loÄ£istikas regresiju.

Raksta izklāsts:

  1. Atkārtosim lineāro attiecību starp diviem mainīgajiem
  2. Noskaidrosim transformācijas nepiecieÅ”amÄ«bu lineārās regresijas funkcijas KoŔļājot par loÄ£istikas regresiju Š² loÄ£istikas atbildes funkcija KoŔļājot par loÄ£istikas regresiju
  3. Veiksim transformācijas un izvadi loģistikas atbildes funkcija
  4. Mēģināsim saprast, kāpēc mazāko kvadrātu metode ir slikta, izvēloties parametrus KoŔļājot par loÄ£istikas regresiju фуŠ½ŠŗцŠøŠø LoÄ£istikas zaudējumi
  5. Mēs izmantojam maksimālās varbÅ«tÄ«bas metode noteikÅ”anai parametru izvēles funkcijas KoŔļājot par loÄ£istikas regresiju:

    5.1. 1. gadÄ«jums: funkcija LoÄ£istikas zaudējumi objektiem ar klaÅ”u apzÄ«mējumiem 0 Šø 1:

    KoŔļājot par loģistikas regresiju

    5.2. 2. gadÄ«jums: funkcija LoÄ£istikas zaudējumi objektiem ar klaÅ”u apzÄ«mējumiem -1 Šø +1:

    KoŔļājot par loģistikas regresiju


Rakstā ir daudz vienkārÅ”u piemēru, kuros visus aprēķinus ir viegli veikt mutiski vai uz papÄ«ra; dažos gadÄ«jumos var bÅ«t nepiecieÅ”ams kalkulators. Tāpēc sagatavojies :)

Å is raksts galvenokārt ir paredzēts datu zinātniekiem ar sākotnējo zināŔanu lÄ«meni maŔīnmācÄ«bas pamatos.

Rakstā bÅ«s arÄ« kods grafiku zÄ«mÄ“Å”anai un aprēķiniem. Viss kods ir rakstÄ«ts valodā python 2.7. Ä»aujiet man iepriekÅ” paskaidrot par izmantotās versijas "novitāti" - tas ir viens no nosacÄ«jumiem, lai apgÅ«tu labi zināmo kursu no plkst. Yandex tikpat labi zināmā tieÅ”saistes izglÄ«tÄ«bas platformā Coursera, un, kā varētu pieņemt, materiāls tika sagatavots, pamatojoties uz Å”o kursu.

01. Taisnās līnijas atkarība

Diezgan pamatoti ir uzdot jautājumu ā€“ kāds ar to sakars lineārajai atkarÄ«bai un loÄ£istiskai regresijai?

Tas ir vienkārÅ”i! LoÄ£istiskā regresija ir viens no modeļiem, kas pieder lineārajam klasifikatoram. VienkārÅ”iem vārdiem sakot, lineārā klasifikatora uzdevums ir paredzēt mērÄ·a vērtÄ«bas KoŔļājot par loÄ£istikas regresiju no mainÄ«gajiem (regresoriem) KoŔļājot par loÄ£istikas regresiju. Tiek uzskatÄ«ts, ka atkarÄ«ba starp Ä«paŔībām KoŔļājot par loÄ£istikas regresiju un mērÄ·a vērtÄ«bas KoŔļājot par loÄ£istikas regresiju lineārs. LÄ«dz ar to klasifikatora nosaukums - lineārs. Ä»oti rupji izsakoties, loÄ£istikas regresijas modelis ir balstÄ«ts uz pieņēmumu, ka starp raksturlielumiem pastāv lineāra sakarÄ«ba. KoŔļājot par loÄ£istikas regresiju un mērÄ·a vērtÄ«bas KoŔļājot par loÄ£istikas regresiju. Å is ir savienojums.

Studijā ir pirmais piemērs, un tas, pareizi, ir par pētāmo daudzumu taisnvirziena atkarÄ«bu. Raksta sagatavoÅ”anas procesā es saskāros ar piemēru, kas jau daudzus cilvēkus ir satraucis - strāvas atkarÄ«ba no sprieguma (ā€œLietiŔķā regresijas analÄ«zeā€, N. Drapers, G. Smits). ApskatÄ«sim to arÄ« Å”eit.

Saskaņā ar Oma likums:

KoŔļājot par loģistikas regresijuKur KoŔļājot par loģistikas regresiju - strāvas stiprums, KoŔļājot par loģistikas regresiju - spriegums, KoŔļājot par loģistikas regresiju - pretestība.

Ja mēs nezinātu Oma likums, tad mēs varētu atrast atkarÄ«bu empÄ«riski, mainot KoŔļājot par loÄ£istikas regresiju un mērÄ«Å”ana KoŔļājot par loÄ£istikas regresiju, vienlaikus atbalstot KoŔļājot par loÄ£istikas regresiju fiksēts. Tad mēs redzētu, ka atkarÄ«bas grafiks KoŔļājot par loÄ£istikas regresiju no KoŔļājot par loÄ£istikas regresiju dod vairāk vai mazāk taisnu lÄ«niju caur izcelsmi. Mēs sakām ā€œvairāk vai mazākā€, jo, lai gan attiecÄ«bas patiesÄ«bā ir precÄ«zas, mÅ«su mērÄ«jumos var bÅ«t nelielas kļūdas, un tāpēc punkti diagrammā var nenokrist tieÅ”i uz lÄ«nijas, bet tiks izkaisÄ«ti ap to nejauÅ”i.

1. diagramma ā€œAtkarÄ«baā€ KoŔļājot par loÄ£istikas regresiju no KoŔļājot par loÄ£istikas regresijuĀ»

KoŔļājot par loģistikas regresiju

Diagrammas zīmēŔanas kods

import matplotlib.pyplot as plt
%matplotlib inline

import numpy as np

import random

R = 13.75

x_line = np.arange(0,220,1)
y_line = []
for i in x_line:
    y_line.append(i/R)
    
y_dot = []
for i in y_line:
    y_dot.append(i+random.uniform(-0.9,0.9))


fig, axes = plt.subplots(figsize = (14,6), dpi = 80)
plt.plot(x_line,y_line,color = 'purple',lw = 3, label = 'I = U/R')
plt.scatter(x_line,y_dot,color = 'red', label = 'Actual results')
plt.xlabel('I', size = 16)
plt.ylabel('U', size = 16)
plt.legend(prop = {'size': 14})
plt.show()

02. Lineārās regresijas vienādojuma pārveidoŔanas nepiecieŔamība

ApskatÄ«sim citu piemēru. Iedomāsimies, ka strādājam bankā un mÅ«su uzdevums ir atkarÄ«bā no noteiktiem faktoriem noteikt kredÄ«ta ņēmēja kredÄ«ta atmaksas iespējamÄ«bu. Lai vienkārÅ”otu uzdevumu, ņemsim vērā tikai divus faktorus: aizņēmēja mēneÅ”algu un ikmēneÅ”a kredÄ«ta atmaksas summu.

Uzdevums ir ļoti nosacÄ«ts, taču ar Å”o piemēru varam saprast, kāpēc nepietiek ar to izmantoÅ”anu lineārās regresijas funkcijas, kā arÄ« uzziniet, kādas transformācijas ir jāveic ar funkciju.

AtgriezÄ«simies pie piemēra. Saprotams, ka jo lielāka alga, jo vairāk kredÄ«ta ņēmējs ik mēnesi varēs atvēlēt kredÄ«ta atmaksai. Tajā paŔā laikā noteiktam algu diapazonam Ŕīs attiecÄ«bas bÅ«s diezgan lineāras. Piemēram, ņemsim algas diapazonu no 60.000 200.000 lÄ«dz 3 5.000 RUR un pieņemsim, ka norādÄ«tajā algu diapazonā ikmēneÅ”a maksājuma lieluma atkarÄ«ba no algas lieluma ir lineāra. Pieņemsim, ka noteiktajam algu diapazonam atklājās, ka algas attiecÄ«ba pret maksājumu nevar bÅ«t zemāka par XNUMX un kredÄ«tņēmējam vēl ir jābÅ«t XNUMX RUR rezervē. Un tikai Å”ajā gadÄ«jumā mēs pieņemsim, ka aizņēmējs atmaksās kredÄ«tu bankai. Tad lineārās regresijas vienādojums bÅ«s Ŕāds:

KoŔļājot par loģistikas regresiju

kur KoŔļājot par loÄ£istikas regresiju, KoŔļājot par loÄ£istikas regresiju, KoŔļājot par loÄ£istikas regresiju, KoŔļājot par loÄ£istikas regresiju Sākot no alga KoŔļājot par loÄ£istikas regresiju- aizņēmējs, KoŔļājot par loÄ£istikas regresiju Sākot no kredÄ«ta maksājums KoŔļājot par loÄ£istikas regresiju- aizņēmējs.

Algas un kredÄ«ta maksājuma aizstāŔana ar fiksētiem parametriem vienādojumā KoŔļājot par loÄ£istikas regresiju JÅ«s varat izlemt, izsniegt vai atteikt aizdevumu.

Raugoties nākotnē, mēs to atzÄ«mējam ar dotajiem parametriem KoŔļājot par loÄ£istikas regresiju lineārās regresijas funkcija, lietots loÄ£istikas atbildes funkcijas radÄ«s lielas vērtÄ«bas, kas sarežģīs aprēķinus, lai noteiktu aizdevuma atmaksas varbÅ«tÄ«bu. Tāpēc tiek piedāvāts samazināt mÅ«su koeficientus, teiksim, 25.000 XNUMX reižu. Å Ä« koeficientu transformācija lēmumu par aizdevuma izsniegÅ”anu nemainÄ«s. Atcerēsimies Å”o punktu nākotnei, bet tagad, lai bÅ«tu vēl skaidrāk, par ko ir runa, apskatÄ«sim situāciju ar trim potenciālajiem aizņēmējiem.

1. tabula ā€œPotenciālie aizņēmējiā€

KoŔļājot par loģistikas regresiju

Kods tabulas ģenerēŔanai

import pandas as pd

r = 25000.0
w_0 = -5000.0/r
w_1 = 1.0/r
w_2 = -3.0/r

data = {'The borrower':np.array(['Vasya', 'Fedya', 'Lesha']), 
        'Salary':np.array([120000,180000,210000]),
       'Payment':np.array([3000,50000,70000])}

df = pd.DataFrame(data)

df['f(w,x)'] = w_0 + df['Salary']*w_1 + df['Payment']*w_2

decision = []
for i in df['f(w,x)']:
    if i > 0:
        dec = 'Approved'
        decision.append(dec)
    else:
        dec = 'Refusal'
        decision.append(dec)
        
df['Decision'] = decision

df[['The borrower', 'Salary', 'Payment', 'f(w,x)', 'Decision']]

Saskaņā ar tabulas datiem Vasja ar algu 120.000 3.000 RUR vēlas saņemt aizdevumu, lai varētu to atmaksāt katru mēnesi 5.000 RUR apmērā. Noteicām, ka, lai apstiprinātu aizdevumu, Vasjas algai ir jāpārsniedz trÄ«s reizes maksājuma summa, un vēl jāpaliek XNUMX RUR. Vasja apmierina Å”o prasÄ«bu: KoŔļājot par loÄ£istikas regresiju. PalikuÅ”i pat 106.000 XNUMX RUR. Neskatoties uz to, ka, aprēķinot KoŔļājot par loÄ£istikas regresiju mēs esam samazinājuÅ”i izredzes KoŔļājot par loÄ£istikas regresiju 25.000 XNUMX reižu, rezultāts bija tāds pats ā€“ kredÄ«tu var apstiprināt. Fedja saņems arÄ« aizdevumu, bet LeÅ”a, neskatoties uz to, ka viņŔ saņem visvairāk, bÅ«s jāierobežo apetÄ«te.

UzzÄ«mēsim grafiku Å”im gadÄ«jumam.

2. diagramma ā€œAizņēmēju klasifikācijaā€

KoŔļājot par loģistikas regresiju

Kods grafika zīmēŔanai

salary = np.arange(60000,240000,20000)
payment = (-w_0-w_1*salary)/w_2


fig, axes = plt.subplots(figsize = (14,6), dpi = 80)
plt.plot(salary, payment, color = 'grey', lw = 2, label = '$f(w,x_i)=w_0 + w_1x_{i1} + w_2x_{i2}$')
plt.plot(df[df['Decision'] == 'Approved']['Salary'], df[df['Decision'] == 'Approved']['Payment'], 
         'o', color ='green', markersize = 12, label = 'Decision - Loan approved')
plt.plot(df[df['Decision'] == 'Refusal']['Salary'], df[df['Decision'] == 'Refusal']['Payment'], 
         's', color = 'red', markersize = 12, label = 'Decision - Loan refusal')
plt.xlabel('Salary', size = 16)
plt.ylabel('Payment', size = 16)
plt.legend(prop = {'size': 14})
plt.show()

Tātad, mÅ«su taisne, kas konstruēta saskaņā ar funkciju KoŔļājot par loÄ£istikas regresiju, atdala ā€œsliktosā€ aizņēmējus no ā€œlabajiemā€. Tie aizņēmēji, kuru vēlmes nesakrÄ«t ar iespējām, atrodas virs lÄ«nijas (Lesha), savukārt tie, kuri pēc mÅ«su modeļa parametriem spēj atmaksāt aizdevumu, atrodas zem lÄ«nijas (Vasja un Fedja). Citiem vārdiem sakot, mēs varam teikt tā: mÅ«su tieŔā lÄ«nija sadala aizņēmējus divās kategorijās. ApzÄ«mēsim tos Ŕādi: uz klasi KoŔļājot par loÄ£istikas regresiju Tos aizņēmējus, kuri, visticamāk, kredÄ«tu atdos, klasificēsim kā KoŔļājot par loÄ£istikas regresiju vai KoŔļājot par loÄ£istikas regresiju Mēs iekļausim tos kredÄ«tņēmējus, kuri, visticamāk, nespēs atmaksāt kredÄ«tu.

Apkoposim secinājumus no Ŕī vienkārŔā piemēra. Pieņemsim punktu KoŔļājot par loÄ£istikas regresiju un, aizstājot punkta koordinātas ar atbilstoÅ”o taisnes vienādojumu KoŔļājot par loÄ£istikas regresiju, apsveriet trÄ«s iespējas:

  1. Ja punkts atrodas zem lÄ«nijas un mēs to pieŔķiram klasei KoŔļājot par loÄ£istikas regresiju, tad funkcijas vērtÄ«ba KoŔļājot par loÄ£istikas regresiju bÅ«s pozitÄ«vs no KoŔļājot par loÄ£istikas regresiju lÄ«dz KoŔļājot par loÄ£istikas regresiju. Tas nozÄ«mē, ka varam pieņemt, ka aizdevuma atmaksas varbÅ«tÄ«ba ir robežās KoŔļājot par loÄ£istikas regresiju. Jo lielāka ir funkcijas vērtÄ«ba, jo lielāka ir varbÅ«tÄ«ba.
  2. Ja punkts atrodas virs lÄ«nijas un mēs to pieŔķiram klasei KoŔļājot par loÄ£istikas regresiju vai KoŔļājot par loÄ£istikas regresiju, tad funkcijas vērtÄ«ba bÅ«s negatÄ«va no KoŔļājot par loÄ£istikas regresiju lÄ«dz KoŔļājot par loÄ£istikas regresiju. Tad pieņemsim, ka parāda atmaksas varbÅ«tÄ«ba ir robežās KoŔļājot par loÄ£istikas regresiju un, jo lielāka ir funkcijas absolÅ«tā vērtÄ«ba, jo lielāka ir mÅ«su pārliecÄ«ba.
  3. Punkts atrodas uz taisnas lÄ«nijas, uz robežas starp divām klasēm. Å ajā gadÄ«jumā funkcijas vērtÄ«ba KoŔļājot par loÄ£istikas regresiju bÅ«s vienādi KoŔļājot par loÄ£istikas regresiju un kredÄ«ta atmaksas varbÅ«tÄ«ba ir vienāda ar KoŔļājot par loÄ£istikas regresiju.

Tagad iedomāsimies, ka mums ir nevis divi faktori, bet desmitiem un nevis trÄ«s, bet tÅ«kstoÅ”iem aizņēmēju. Tad taisnas lÄ«nijas vietā mums bÅ«s m-dimensionāls plakne un koeficienti KoŔļājot par loÄ£istikas regresiju mēs netiksim izņemti no zila gaisa, bet atvasināti pēc visiem noteikumiem, un uz uzkrātajiem datiem par kredÄ«tņēmējiem, kuri ir vai nav atmaksājuÅ”i kredÄ«tu. Un patieŔām, ņemiet vērā, ka mēs tagad atlasām aizņēmējus, izmantojot jau zināmos koeficientus KoŔļājot par loÄ£istikas regresiju. Faktiski loÄ£istikas regresijas modeļa uzdevums ir precÄ«zi noteikt parametrus KoŔļājot par loÄ£istikas regresiju, pie kuras zaudējuma funkcijas vērtÄ«ba LoÄ£istikas zaudējumi tiecas uz minimumu. Bet par to, kā tiek aprēķināts vektors KoŔļājot par loÄ£istikas regresiju, vairāk uzzināsim raksta 5. sadaļā. Pa to laiku atgriežamies apsolÄ«tajā zemē ā€“ pie sava baņķiera un viņa trim klientiem.

Pateicoties funkcijai KoŔļājot par loÄ£istikas regresiju mēs zinām, kam var dot kredÄ«tu un kam atteikt. Bet ar Ŕādu informāciju pie direktora iet nevar, jo viņi gribēja no mums uzzināt varbÅ«tÄ«bu, ka katrs aizņēmējs atmaksās kredÄ«tu. Ko darÄ«t? Atbilde ir vienkārÅ”a - mums ir kaut kā jāpārveido funkcija KoŔļājot par loÄ£istikas regresiju, kuru vērtÄ«bas atrodas diapazonā KoŔļājot par loÄ£istikas regresiju uz funkciju, kuras vērtÄ«bas atradÄ«sies diapazonā KoŔļājot par loÄ£istikas regresiju. Un tāda funkcija pastāv, to sauc loÄ£istikas atbildes funkcija vai apgrieztā logit transformācija. IepazÄ«stieties:

KoŔļājot par loģistikas regresiju

ApskatÄ«sim soli pa solim, kā tas darbojas loÄ£istikas atbildes funkcija. Ņemiet vērā, ka mēs iesim pretējā virzienā, t.i. pieņemsim, ka zinām varbÅ«tÄ«bas vērtÄ«bu, kas atrodas diapazonā no KoŔļājot par loÄ£istikas regresiju lÄ«dz KoŔļājot par loÄ£istikas regresiju un tad mēs ā€œatritināsimā€ Å”o vērtÄ«bu uz visu skaitļu diapazonu no KoŔļājot par loÄ£istikas regresiju lÄ«dz KoŔļājot par loÄ£istikas regresiju.

03. Mēs iegūstam loģistikas atbildes funkciju

1. darbÄ«ba. Pārveidojiet varbÅ«tÄ«bas vērtÄ«bas diapazonā KoŔļājot par loÄ£istikas regresiju

Funkcijas transformācijas laikā KoŔļājot par loÄ£istikas regresiju Š² loÄ£istikas atbildes funkcija KoŔļājot par loÄ£istikas regresiju Mēs atstāsim savu kredÄ«ta analÄ«tiÄ·i mierā un tā vietā apskatÄ«sim bukmeikeru pakalpojumus. Nē, protams, mēs neliksim likmes, viss, kas mÅ«s interesē, ir izteiciena nozÄ«me, piemēram, iespēja ir 4 pret 1. Koeficients, kas zināms visiem derÄ«bu slēdzējiem, ir ā€œveiksmesā€ attiecÄ«ba pret ā€œ neveiksmesā€. VarbÅ«tÄ«bas izteiksmē izredzes ir notikuma iespējamÄ«ba, kas dalÄ«ta ar varbÅ«tÄ«bu, ka notikums nenotiks. PierakstÄ«sim notikuma iespējamÄ«bas formulu KoŔļājot par loÄ£istikas regresiju:

KoŔļājot par loģistikas regresiju

Kur KoŔļājot par loÄ£istikas regresiju - notikuma varbÅ«tÄ«ba, KoŔļājot par loÄ£istikas regresiju ā€” varbÅ«tÄ«ba, ka kāds notikums nenotiks

Piemēram, ja varbÅ«tÄ«ba, ka jauns, spēcÄ«gs un rotaļīgs zirgs ar iesauku ā€œVeteroksā€ sacÄ«kstēs pārspēs vecu un ļenganu vecu sievieti vārdā ā€œMatildaā€, ir vienāda ar KoŔļājot par loÄ£istikas regresiju, tad ā€œVeterokā€ izredzes uz panākumu bÅ«s KoŔļājot par loÄ£istikas regresiju Šŗ KoŔļājot par loÄ£istikas regresiju KoŔļājot par loÄ£istikas regresiju un otrādi, zinot izredzes, mums nebÅ«s grÅ«ti aprēķināt varbÅ«tÄ«bu KoŔļājot par loÄ£istikas regresiju:

KoŔļājot par loģistikas regresiju

Tādējādi mēs esam iemācÄ«juÅ”ies ā€œpārtulkotā€ varbÅ«tÄ«bu par iespējām, kas ņem vērtÄ«bas no KoŔļājot par loÄ£istikas regresiju lÄ«dz KoŔļājot par loÄ£istikas regresiju. Spersim vēl vienu soli un iemācÄ«simies ā€œtulkotā€ varbÅ«tÄ«bu uz visu skaitļu lÄ«niju no KoŔļājot par loÄ£istikas regresiju lÄ«dz KoŔļājot par loÄ£istikas regresiju.

2. darbÄ«ba. Pārveidojiet varbÅ«tÄ«bas vērtÄ«bas diapazonā KoŔļājot par loÄ£istikas regresiju

Å is solis ir ļoti vienkārÅ”s - pieņemsim koeficientu logaritmu uz Eilera skaitļa bāzi KoŔļājot par loÄ£istikas regresiju un mēs iegÅ«stam:

KoŔļājot par loģistikas regresiju

Tagad mēs zinām, ka, ja KoŔļājot par loÄ£istikas regresiju, pēc tam aprēķiniet vērtÄ«bu KoŔļājot par loÄ£istikas regresiju bÅ«s ļoti vienkārÅ”i, un turklāt tam vajadzētu bÅ«t pozitÄ«vam: KoŔļājot par loÄ£istikas regresiju. Tā ir patiesÄ«ba.

ZiņkārÄ«bas dēļ pārbaudÄ«sim, kā bÅ«tu, ja KoŔļājot par loÄ£istikas regresiju, tad mēs sagaidām negatÄ«vu vērtÄ«bu KoŔļājot par loÄ£istikas regresiju. Mēs pārbaudām: KoŔļājot par loÄ£istikas regresiju. Pareizi.

Tagad mēs zinām, kā konvertēt varbÅ«tÄ«bas vērtÄ«bu no KoŔļājot par loÄ£istikas regresiju lÄ«dz KoŔļājot par loÄ£istikas regresiju pa visu skaitļu lÄ«niju no KoŔļājot par loÄ£istikas regresiju lÄ«dz KoŔļājot par loÄ£istikas regresiju. Nākamajā solÄ« mēs darÄ«sim pretējo.

Pagaidām atzÄ«mējam, ka saskaņā ar logaritma noteikumiem, zinot funkcijas vērtÄ«bu KoŔļājot par loÄ£istikas regresiju, jÅ«s varat aprēķināt izredzes:

KoŔļājot par loģistikas regresiju

Å Ä« koeficientu noteikÅ”anas metode mums noderēs nākamajā darbÄ«bā.

3. solis. Atvasināsim formulu, lai noteiktu KoŔļājot par loģistikas regresiju

Tā mēs mācÄ«jāmies, zinādami KoŔļājot par loÄ£istikas regresiju, atrodiet funkciju vērtÄ«bas KoŔļājot par loÄ£istikas regresiju. Taču patiesÄ«bā mums vajag tieÅ”i pretējo ā€“ zinot vērtÄ«bu KoŔļājot par loÄ£istikas regresiju atrast KoŔļājot par loÄ£istikas regresiju. Lai to izdarÄ«tu, pievērsÄ«simies tādam jēdzienam kā apgriezto koeficientu funkcija, saskaņā ar kuru:

KoŔļājot par loģistikas regresiju

Rakstā mēs neatvasināsim iepriekÅ” minēto formulu, bet mēs to pārbaudÄ«sim, izmantojot skaitļus no iepriekÅ” minētā piemēra. Mēs zinām, ka ar koeficientu 4 pret 1 (KoŔļājot par loÄ£istikas regresiju), notikuma iespējamÄ«ba ir 0.8 (KoŔļājot par loÄ£istikas regresiju). Veiksim aizstāŔanu: KoŔļājot par loÄ£istikas regresiju. Tas sakrÄ«t ar mÅ«su iepriekÅ” veiktajiem aprēķiniem. Ejam tālāk.

Pēdējā solÄ« mēs to secinājām KoŔļājot par loÄ£istikas regresiju, kas nozÄ«mē, ka varat veikt aizstāŔanu apgriezto koeficientu funkcijā. Mēs iegÅ«stam:

KoŔļājot par loģistikas regresiju

Sadaliet gan skaitÄ«tāju, gan saucēju ar KoŔļājot par loÄ£istikas regresiju, Tad:

KoŔļājot par loģistikas regresiju

Katram gadÄ«jumam, lai pārliecinātos, ka nekur neesam kļūdÄ«juÅ”ies, veiksim vēl vienu nelielu pārbaudi. 2. darbÄ«bā mēs par KoŔļājot par loÄ£istikas regresiju noteica, ka KoŔļājot par loÄ£istikas regresiju. Pēc tam vērtÄ«bu aizstājot KoŔļājot par loÄ£istikas regresiju loÄ£istikas atbildes funkcijā, mēs ceram iegÅ«t KoŔļājot par loÄ£istikas regresiju. Mēs aizstājam un iegÅ«stam: KoŔļājot par loÄ£istikas regresiju

Apsveicam, dārgais lasÄ«tāj, mēs tikko esam ieguvuÅ”i un pārbaudÄ«juÅ”i loÄ£istikas atbildes funkciju. ApskatÄ«sim funkcijas grafiku.

3. grafiks ā€œLoÄ£istiskās atbildes funkcijaā€

KoŔļājot par loģistikas regresiju

Kods grafika zīmēŔanai

import math

def logit (f):
    return 1/(1+math.exp(-f))

f = np.arange(-7,7,0.05)
p = []

for i in f:
    p.append(logit(i))

fig, axes = plt.subplots(figsize = (14,6), dpi = 80)
plt.plot(f, p, color = 'grey', label = '$ 1 / (1+e^{-w^Tx_i})$')
plt.xlabel('$f(w,x_i) = w^Tx_i$', size = 16)
plt.ylabel('$p_{i+}$', size = 16)
plt.legend(prop = {'size': 14})
plt.show()

LiteratÅ«rā var atrast arÄ« Ŕīs funkcijas nosaukumu kā sigmoÄ«dā funkcija. Grafikā skaidri redzams, ka galvenās izmaiņas kādai klasei piederoÅ”a objekta varbÅ«tÄ«bā notiek salÄ«dzinoÅ”i nelielā diapazonā KoŔļājot par loÄ£istikas regresiju, kaut kur no KoŔļājot par loÄ£istikas regresiju lÄ«dz KoŔļājot par loÄ£istikas regresiju.

Iesaku atgriezties pie mÅ«su kredÄ«tanalÄ«tiÄ·a un palÄ«dzēt viņam aprēķināt kredÄ«ta atmaksas varbÅ«tÄ«bu, pretējā gadÄ«jumā viņŔ riskē palikt bez bonusa :)

2. tabula ā€œPotenciālie aizņēmējiā€

KoŔļājot par loģistikas regresiju

Kods tabulas ģenerēŔanai

proba = []
for i in df['f(w,x)']:
    proba.append(round(logit(i),2))
    
df['Probability'] = proba

df[['The borrower', 'Salary', 'Payment', 'f(w,x)', 'Decision', 'Probability']]

Tātad, esam noteikuŔi kredīta atmaksas varbūtību. Kopumā Ŕķiet, ka tā ir taisnība.

PatieŔām, varbÅ«tÄ«ba, ka Vasja ar 120.000 3.000 RUR lielu algu katru mēnesi bankai varēs dot 100 RUR, ir tuvu 0.3%. Starp citu, mums ir jāsaprot, ka banka var izsniegt Lesha aizdevumu, ja bankas politika paredz, piemēram, kreditēt klientus ar aizdevuma atmaksas varbÅ«tÄ«bu, kas lielāka par, piemēram, XNUMX. VienkārÅ”i Å”ajā gadÄ«jumā banka izveidos lielāku rezervi iespējamiem zaudējumiem.

Jāņem vērā arÄ« tas, ka no griestiem tika ņemta algas attiecÄ«ba pret maksājumu vismaz 3 un ar rezervi 5.000 RUR. Tāpēc mēs nevarējām izmantot svaru vektoru tā sākotnējā formā KoŔļājot par loÄ£istikas regresiju. Mums vajadzēja stipri samazināt koeficientus, un Å”ajā gadÄ«jumā mēs katru koeficientu sadalÄ«jām ar 25.000 XNUMX, tas ir, pēc bÅ«tÄ«bas mēs koriģējām rezultātu. Bet tas tika darÄ«ts Ä«paÅ”i, lai sākotnējā posmā vienkārÅ”otu materiāla izpratni. DzÄ«vē mums nevajadzēs izdomāt un pielāgot koeficientus, bet gan tos atrast. Nākamajās raksta sadaļās mēs atvasināsim vienādojumus, ar kuriem tiek atlasÄ«ti parametri KoŔļājot par loÄ£istikas regresiju.

04. Mazāko kvadrātu metode svaru vektora noteikŔanai KoŔļājot par loģistikas regresiju loģistikas atbildes funkcijā

Mēs jau zinām Å”o svaru vektora izvēles metodi KoŔļājot par loÄ£istikas regresijuKā mazāko kvadrātu metode (LSM) un patiesÄ«bā, kāpēc mēs to neizmantojam binārās klasifikācijas problēmās? PatieŔām, nekas neliedz jums to izmantot MNC, tikai Ŕī metode klasifikācijas problēmās dod rezultātus, kas ir mazāk precÄ«zi nekā LoÄ£istikas zaudējumi. Tam ir teorētisks pamats. Vispirms apskatÄ«sim vienu vienkārÅ”u piemēru.

Pieņemsim, ka mÅ«su modeļi (izmantojot MSE Šø LoÄ£istikas zaudējumi) jau ir sākuÅ”i atlasÄ«t svaru vektoru KoŔļājot par loÄ£istikas regresiju un mēs kādā solÄ« aprēķinu pārtraucām. Nav svarÄ«gi, vai vidÅ«, beigās vai sākumā, galvenais, ka mums jau ir dažas svaru vektora vērtÄ«bas un pieņemsim, ka Å”ajā solÄ« svaru vektors KoŔļājot par loÄ£istikas regresiju abiem modeļiem nav atŔķirÄ«bu. Pēc tam paņemiet iegÅ«tos svarus un nomainiet tos loÄ£istikas atbildes funkcija (KoŔļājot par loÄ£istikas regresiju) kādam objektam, kas pieder klasei KoŔļājot par loÄ£istikas regresiju. Mēs pārbaudām divus gadÄ«jumus, kad saskaņā ar izvēlēto svaru vektoru mÅ«su modelis ir ļoti kļūdÄ«jies un otrādi - modelis ir ļoti pārliecināts, ka objekts pieder klasei KoŔļājot par loÄ£istikas regresiju. PaskatÄ«simies, kādi naudas sodi tiks izrakstÄ«ti, lietojot MNC Šø LoÄ£istikas zaudējumi.

Kods soda aprēķināŔanai atkarÄ«bā no izmantotās zaudējuma funkcijas

# ŠŗŠ»Š°ŃŃ Š¾Š±ŃŠŠµŠŗтŠ°
y = 1
# Š²ŠµŃ€Š¾ŃŃ‚Š½Š¾ŃŃ‚ŃŒ Š¾Ń‚Š½ŠµŃŠµŠ½Šøя Š¾Š±ŃŠŠµŠŗтŠ° Šŗ ŠŗŠ»Š°ŃŃŃƒ Š² сŠ¾Š¾Ń‚Š²ŠµŃ‚стŠ²ŠøŠø с ŠæŠ°Ń€Š°Š¼ŠµŃ‚Ń€Š°Š¼Šø w
proba_1 = 0.01

MSE_1 = (y - proba_1)**2
print 'ŠØтрŠ°Ń„ MSE ŠæрŠø Š³Ń€ŃƒŠ±Š¾Š¹ Š¾ŃˆŠøŠ±ŠŗŠµ =', MSE_1

# Š½Š°ŠæŠøшŠµŠ¼ фуŠ½ŠŗцŠøю Š“Š»Ń Š²Ń‹Ń‡ŠøсŠ»ŠµŠ½Šøя f(w,x) ŠæрŠø ŠøŠ·Š²ŠµŃŃ‚Š½Š¾Š¹ Š²ŠµŃ€Š¾ŃŃ‚Š½Š¾ŃŃ‚Šø Š¾Ń‚Š½ŠµŃŠµŠ½Šøя Š¾Š±ŃŠŠµŠŗтŠ° Šŗ ŠŗŠ»Š°ŃŃŃƒ +1 (f(w,x)=ln(odds+))
def f_w_x(proba):
    return math.log(proba/(1-proba)) 

LogLoss_1 = math.log(1+math.exp(-y*f_w_x(proba_1)))
print 'ŠØтрŠ°Ń„ Log Loss ŠæрŠø Š³Ń€ŃƒŠ±Š¾Š¹ Š¾ŃˆŠøŠ±ŠŗŠµ =', LogLoss_1

proba_2 = 0.99

MSE_2 = (y - proba_2)**2
LogLoss_2 = math.log(1+math.exp(-y*f_w_x(proba_2)))

print '**************************************************************'
print 'ŠØтрŠ°Ń„ MSE ŠæрŠø сŠøŠ»ŃŒŠ½Š¾Š¹ уŠ²ŠµŃ€ŠµŠ½Š½Š¾ŃŃ‚Šø =', MSE_2
print 'ŠØтрŠ°Ń„ Log Loss ŠæрŠø сŠøŠ»ŃŒŠ½Š¾Š¹ уŠ²ŠµŃ€ŠµŠ½Š½Š¾ŃŃ‚Šø =', LogLoss_2

Kļūdas gadÄ«jums ā€” modelis pieŔķir klasei objektu KoŔļājot par loÄ£istikas regresiju ar varbÅ«tÄ«bu 0,01

Sods par lietoŔanu MNC būs:
KoŔļājot par loģistikas regresiju

Sods par lietoÅ”anu LoÄ£istikas zaudējumi bÅ«s:
KoŔļājot par loģistikas regresiju

SpēcÄ«gas pārliecÄ«bas gadÄ«jums ā€” modelis pieŔķir klasei objektu KoŔļājot par loÄ£istikas regresiju ar varbÅ«tÄ«bu 0,99

Sods par lietoŔanu MNC būs:
KoŔļājot par loģistikas regresiju

Sods par lietoÅ”anu LoÄ£istikas zaudējumi bÅ«s:
KoŔļājot par loģistikas regresiju

Å is piemērs labi ilustrē, ka rupjas kļūdas gadÄ«jumā zaudējumu funkcija Baļķu zudums soda modeli ievērojami vairāk nekā MSE. Tagad sapratÄ«sim, kāds ir zaudējuma funkcijas izmantoÅ”anas teorētiskais pamatojums Baļķu zudums klasifikācijas problēmās.

05. Maksimālās varbūtības metode un loģistiskā regresija

Kā solÄ«ts sākumā, raksts ir pilns ar vienkārÅ”iem piemēriem. Studijā ir vēl viens piemērs un vecie viesi - bankas aizņēmēji: Vasja, Fedja un LeÅ”a.

Katram gadÄ«jumam pirms piemēra izstrādes atgādināŔu, ka dzÄ«vē mums ir darÄ«Å”ana ar tÅ«kstoÅ”iem vai miljonu objektu apmācÄ«bu paraugu ar desmitiem vai simtiem pazÄ«mju. Tomēr Å”eit skaitļi tiek ņemti tā, lai tie viegli ietilptu iesācēju datu zinātnieka galvā.

AtgriezÄ«simies pie piemēra. Iedomāsimies, ka bankas direktors nolēma izsniegt aizdevumu visiem, kam tas ir nepiecieÅ”ams, neskatoties uz to, ka algoritms ieteica to neizsniegt LeÅ”ai. Un tagad ir pagājis pietiekami daudz laika, un mēs zinām, kurÅ” no trim varoņiem atmaksāja aizdevumu un kurÅ” ne. Kas bija gaidāms: Vasja un Fedja atmaksāja aizdevumu, bet LeÅ”a to nedarÄ«ja. Tagad iedomāsimies, ka Å”is rezultāts mums bÅ«s jauns treniņu paraugs un tajā paŔā laikā it kā bÅ«tu pazuduÅ”i visi dati par kredÄ«ta atmaksas varbÅ«tÄ«bu ietekmējoÅ”iem faktoriem (aizņēmēja alga, ikmēneÅ”a maksājuma lielums). Tad intuitÄ«vi varam pieņemt, ka katrs treÅ”ais aizņēmējs neatmaksā kredÄ«tu bankai jeb, citiem vārdiem sakot, varbÅ«tÄ«ba, ka kredÄ«tu atmaksās nākamais aizņēmējs. KoŔļājot par loÄ£istikas regresiju. Å im intuitÄ«vajam pieņēmumam ir teorētisks apstiprinājums, un tas ir balstÄ«ts uz maksimālās varbÅ«tÄ«bas metode, bieži literatÅ«rā to sauc maksimālās varbÅ«tÄ«bas princips.

Vispirms iepazīsimies ar konceptuālo aparātu.

Izlases iespējamÄ«ba ir iespējamÄ«ba iegÅ«t tieÅ”i Ŕādu paraugu, iegÅ«stot tieÅ”i tādus novērojumus/rezultātus, t.i. katra izlases rezultāta iegÅ«Å”anas varbÅ«tÄ«bu reizinājums (piemēram, vai Vasjas, Fedjas un LeÅ”as aizdevums tika atmaksāts vai netika atmaksāts vienlaikus).

Varbūtības funkcija saista parauga iespējamību ar sadalījuma parametru vērtībām.

MÅ«su gadÄ«jumā apmācÄ«bas paraugs ir vispārināta Bernulli shēma, kurā nejauÅ”ajam mainÄ«gajam ir tikai divas vērtÄ«bas: KoŔļājot par loÄ£istikas regresiju vai KoŔļājot par loÄ£istikas regresiju. Tāpēc izlases iespējamÄ«bu var uzrakstÄ«t kā parametra varbÅ«tÄ«bas funkciju KoŔļājot par loÄ£istikas regresiju Ŕādi:

KoŔļājot par loģistikas regresiju
KoŔļājot par loģistikas regresiju

IepriekÅ” minēto ierakstu var interpretēt Ŕādi. Kopējā varbÅ«tÄ«ba, ka Vasja un Fedja atmaksās aizdevumu, ir vienāda ar KoŔļājot par loÄ£istikas regresiju, varbÅ«tÄ«ba, ka Lesha NEatmaksās aizdevumu, ir vienāda ar KoŔļājot par loÄ£istikas regresiju (jo tā NAV notikusi kredÄ«ta atmaksa), tāpēc visu trÄ«s notikumu kopējā iespējamÄ«ba ir vienāda KoŔļājot par loÄ£istikas regresiju.

Maksimālās varbÅ«tÄ«bas metode ir metode nezināma parametra novērtÄ“Å”anai, palielinot varbÅ«tÄ«bas funkcijas. MÅ«su gadÄ«jumā mums ir jāatrod Ŕāda vērtÄ«ba KoŔļājot par loÄ£istikas regresiju, kurā KoŔļājot par loÄ£istikas regresiju sasniedz maksimumu.

No kurienes rodas Ä«stā ideja - meklēt nezināma parametra vērtÄ«bu, pie kuras varbÅ«tÄ«bas funkcija sasniedz maksimumu? Idejas pirmsākumi izriet no domas, ka izlase ir vienÄ«gais mums pieejamais zināŔanu avots par iedzÄ«votājiem. Izlasē ir pārstāvēts viss, ko mēs zinām par populāciju. Tāpēc mēs varam teikt tikai to, ka izlase ir visprecÄ«zākais mums pieejamās populācijas atspoguļojums. Tāpēc mums ir jāatrod parametrs, pie kura pieejamais paraugs kļūst par visticamāko.

AcÄ«mredzot mums ir darÄ«Å”ana ar optimizācijas problēmu, kurā mums jāatrod funkcijas galējais punkts. Lai atrastu galējÄ«bas punktu, ir jāņem vērā pirmās kārtas nosacÄ«jums, tas ir, jāpielÄ«dzina funkcijas atvasinājums nullei un jāatrisina vienādojums attiecÄ«bā uz vēlamo parametru. Tomēr daudzu faktoru reizinājuma atvasinājuma meklÄ“Å”ana var bÅ«t ilgstoÅ”s uzdevums, lai no tā izvairÄ«tos, ir Ä«paÅ”s paņēmiens - pāreja uz logaritmu. varbÅ«tÄ«bas funkcijas. Kāpēc Ŕāda pāreja ir iespējama? PievērsÄ«sim uzmanÄ«bu tam, ka mēs nemeklējam paÅ”as funkcijas galējÄ«buKoŔļājot par loÄ£istikas regresiju, un galējais punkts, tas ir, nezināmā parametra vērtÄ«ba KoŔļājot par loÄ£istikas regresiju, kurā KoŔļājot par loÄ£istikas regresiju sasniedz maksimumu. Pārejot uz logaritmu, ekstrēma punkts nemainās (lai gan pats ekstrēmums atŔķirsies), jo logaritms ir monotona funkcija.

Saskaņā ar iepriekÅ” minēto, turpināsim attÄ«stÄ«t savu piemēru ar aizdevumiem no Vasya, Fedya un Lesha. Vispirms pāriesim pie varbÅ«tÄ«bas funkcijas logaritms:

KoŔļājot par loģistikas regresiju

Tagad mēs varam viegli atŔķirt izteiksmi pēc KoŔļājot par loÄ£istikas regresiju:

KoŔļājot par loģistikas regresiju

Visbeidzot, apsveriet pirmās kārtas nosacījumu - funkcijas atvasinājumu pielīdzinām nullei:

KoŔļājot par loģistikas regresiju

Tādējādi mÅ«su intuitÄ«vā aplēse par aizdevuma atmaksas varbÅ«tÄ«bu KoŔļājot par loÄ£istikas regresiju bija teorētiski pamatots.

Lieliski, bet ko mums tagad darÄ«t ar Å”o informāciju? Ja pieņemam, ka katrs treÅ”ais aizņēmējs naudu bankai neatdod, tad pēdējā neizbēgami bankrotēs. Tas ir pareizi, bet tikai tad, ja tiek novērtēta aizdevuma atmaksas varbÅ«tÄ«ba, kas vienāda ar KoŔļājot par loÄ£istikas regresiju Mēs neņēmām vērā faktorus, kas ietekmē kredÄ«ta atmaksu: aizņēmēja algu un ikmēneÅ”a maksājuma lielumu. Atcerēsimies, ka iepriekÅ” aprēķinājām katra klienta kredÄ«ta atmaksas varbÅ«tÄ«bu, ņemot vērā Å”os paÅ”us faktorus. Ir loÄ£iski, ka mēs ieguvām varbÅ«tÄ«bas, kas atŔķiras no konstantes vienādÄ«bas KoŔļājot par loÄ£istikas regresiju.

Definēsim paraugu iespējamību:

Kods izlases varbÅ«tÄ«bas aprēķināŔanai

from functools import reduce

def likelihood(y,p):
    line_true_proba = []
    for i in range(len(y)):
        ltp_i = p[i]**y[i]*(1-p[i])**(1-y[i])
        line_true_proba.append(ltp_i)
    likelihood = []
    return reduce(lambda a, b: a*b, line_true_proba)
        
    
y = [1.0,1.0,0.0]
p_log_response = df['Probability']
const = 2.0/3.0
p_const = [const, const, const]


print 'ŠŸŃ€Š°Š²Š“Š¾ŠæŠ¾Š“Š¾Š±ŠøŠµ Š²Ń‹Š±Š¾Ń€ŠŗŠø ŠæрŠø ŠŗŠ¾Š½ŃŃ‚Š°Š½Ń‚Š½Š¾Š¼ Š·Š½Š°Ń‡ŠµŠ½ŠøŠø p=2/3:', round(likelihood(y,p_const),3)

print '****************************************************************************************************'

print 'ŠŸŃ€Š°Š²Š“Š¾ŠæŠ¾Š“Š¾Š±ŠøŠµ Š²Ń‹Š±Š¾Ń€ŠŗŠø ŠæрŠø рŠ°ŃŃ‡ŠµŃ‚Š½Š¾Š¼ Š·Š½Š°Ń‡ŠµŠ½ŠøŠø p:', round(likelihood(y,p_log_response),3)

Izlases iespējamÄ«ba nemainÄ«gā vērtÄ«bā KoŔļājot par loÄ£istikas regresiju:

KoŔļājot par loģistikas regresiju

IespējamÄ«bas paraugs, aprēķinot kredÄ«ta atmaksas varbÅ«tÄ«bu, ņemot vērā faktorus KoŔļājot par loÄ£istikas regresiju:

KoŔļājot par loģistikas regresiju
KoŔļājot par loģistikas regresiju

Izlases iespējamÄ«ba ar varbÅ«tÄ«bu, kas aprēķināta atkarÄ«bā no faktoriem, izrādÄ«jās lielāka nekā iespējamÄ«ba ar nemainÄ«gu varbÅ«tÄ«bas vērtÄ«bu. Ko tas nozÄ«mē? Tas liecina, ka zināŔanas par faktoriem ļāva precÄ«zāk atlasÄ«t kredÄ«ta atmaksas varbÅ«tÄ«bu katram klientam. Tāpēc, izsniedzot nākamo kredÄ«tu, parāda atmaksas iespējamÄ«bas novērtÄ“Å”anai pareizāk bÅ«tu izmantot raksta 3. sadaļas beigās piedāvāto modeli.

Bet tad, ja mēs vēlamies palielināt parauga varbÅ«tÄ«bas funkcija, tad kāpēc gan neizmantot kādu algoritmu, kas, piemēram, Vasja, Fedja un LeÅ”a radÄ«s varbÅ«tÄ«bas, kas ir vienādas ar attiecÄ«gi 0.99, 0.99 un 0.01. Iespējams, Ŕāds algoritms labi darbosies apmācÄ«bas paraugā, jo tas tuvinās izlases iespējamÄ«bas vērtÄ«bu KoŔļājot par loÄ£istikas regresiju, bet, pirmkārt, Ŕādam algoritmam visticamāk bÅ«s grÅ«tÄ«bas ar vispārināŔanas spēju, otrkārt, Å”is algoritms noteikti nebÅ«s lineārs. Un, ja Ŕī raksta plānā nepārprotami nav iekļautas pārtrenÄ“Å”anās apkaroÅ”anas metodes (tikpat vājas vispārināŔanas spējas), tad sÄ«kāk aplÅ«kosim otro punktu. Lai to izdarÄ«tu, vienkārÅ”i atbildiet uz vienkārÅ”u jautājumu. Vai varbÅ«tÄ«ba, ka Vasja un Fedja atmaksās aizdevumu, var bÅ«t vienāda, ņemot vērā mums zināmos faktorus? No skaņas loÄ£ikas viedokļa, protams, nē, tā nevar. Tātad Vasja aizdevuma atmaksai maksās 2.5% no savas algas mēnesÄ«, bet Fedja - gandrÄ«z 27,8%. ArÄ« 2. grafikā ā€œKlientu klasifikācijaā€ redzam, ka Vasja atrodas daudz tālāk no klases atdaloŔās lÄ«nijas nekā Fedja. Un visbeidzot, mēs zinām, ka funkcija KoŔļājot par loÄ£istikas regresiju Vasjai un Fedjai ir dažādas vērtÄ«bas: 4.24 Vasjai un 1.0 Fedjai. Tagad, ja, piemēram, Fedja nopelnÄ«tu par kārtu vairāk vai lÅ«gtu mazāku kredÄ«tu, tad Vasjai un Fedjai kredÄ«ta atmaksas varbÅ«tÄ«ba bÅ«tu lÄ«dzÄ«ga. Citiem vārdiem sakot, lineāro atkarÄ«bu nevar apmānÄ«t. Un ja mēs faktiski aprēķinām izredzes KoŔļājot par loÄ£istikas regresiju, un neņēma tos no zila gaisa, varētu droÅ”i teikt, ka mÅ«su vērtÄ«bas KoŔļājot par loÄ£istikas regresiju vislabāk ļauj novērtēt katra aizņēmēja kredÄ«ta atmaksas varbÅ«tÄ«bu, bet tā kā mēs vienojāmies pieņemt, ka koeficientu noteikÅ”ana KoŔļājot par loÄ£istikas regresiju tika veikta saskaņā ar visiem noteikumiem, tad mēs tā pieņemsim - mÅ«su koeficienti ļauj mums labāk novērtēt varbÅ«tÄ«bu :)

Tomēr mēs novirzāmies. Å ajā sadaļā mums ir jāsaprot, kā tiek noteikts svaru vektors KoŔļājot par loÄ£istikas regresiju, kas nepiecieÅ”ams, lai novērtētu katra aizņēmēja kredÄ«ta atmaksas varbÅ«tÄ«bu.

ÄŖsi apkoposim, ar kādu arsenālu mēs meklējam izredzes KoŔļājot par loÄ£istikas regresiju:

1. Pieņemam, ka sakarÄ«ba starp mērÄ·a mainÄ«go (prognozes vērtÄ«bu) un rezultātu ietekmējoÅ”o faktoru ir lineāra. Å Ä« iemesla dēļ tas tiek izmantots lineārās regresijas funkcija suga KoŔļājot par loÄ£istikas regresiju, kuras rinda sadala objektus (klientus) klasēs KoŔļājot par loÄ£istikas regresiju Šø KoŔļājot par loÄ£istikas regresiju vai KoŔļājot par loÄ£istikas regresiju (klienti, kuri spēj atmaksāt kredÄ«tu, un tie, kuri nespēj). MÅ«su gadÄ«jumā vienādojumam ir forma KoŔļājot par loÄ£istikas regresiju.

2. Mēs izmantojam apgrieztā logit funkcija suga KoŔļājot par loÄ£istikas regresiju lai noteiktu kādai klasei piederoÅ”a objekta varbÅ«tÄ«bu KoŔļājot par loÄ£istikas regresiju.

3. Mēs uzskatām, ka mÅ«su apmācÄ«bas komplekts ir vispārināta ievieÅ”ana Bernulli shēmas, tas ir, katram objektam tiek Ä£enerēts nejauÅ”s mainÄ«gais, kas ar varbÅ«tÄ«bu KoŔļājot par loÄ£istikas regresiju (katram objektam sava) ņem vērtÄ«bu 1 un ar varbÅ«tÄ«bu KoŔļājot par loÄ£istikas regresiju - 0.

4. Mēs zinām, kas mums jāpalielina parauga varbÅ«tÄ«bas funkcija ņemot vērā pieņemtos faktorus, lai pieejamā izlase kļūtu ticamākā. Citiem vārdiem sakot, mums ir jāizvēlas parametri, pēc kuriem izlase bÅ«s ticamākā. MÅ«su gadÄ«jumā izvēlētais parametrs ir aizdevuma atmaksas varbÅ«tÄ«ba KoŔļājot par loÄ£istikas regresiju, kas savukārt ir atkarÄ«gs no nezināmiem koeficientiem KoŔļājot par loÄ£istikas regresiju. Tātad mums ir jāatrod Ŕāds svaru vektors KoŔļājot par loÄ£istikas regresiju, pie kura izlases iespējamÄ«ba bÅ«s maksimāla.

5. Mēs zinām, ko maksimāli palielināt iespējamÄ«bas funkciju paraugs jÅ«s varat izmantot maksimālās varbÅ«tÄ«bas metode. Un mēs zinām visus viltÄ«gos trikus, lai strādātu ar Å”o metodi.

Lūk, kā tas izrādās daudzpakāpju gājiens :)

Tagad atcerieties, ka paŔā raksta sākumā mēs vēlējāmies atvasināt divu veidu zaudējumu funkcijas LoÄ£istikas zaudējumi atkarÄ«bā no tā, kā tiek apzÄ«mētas objektu klases. Tā notika, ka klasifikācijas uzdevumos ar divām klasēm klases tiek apzÄ«mētas kā KoŔļājot par loÄ£istikas regresiju Šø KoŔļājot par loÄ£istikas regresiju vai KoŔļājot par loÄ£istikas regresiju. AtkarÄ«bā no apzÄ«mējuma izvadei bÅ«s atbilstoÅ”a zuduma funkcija.

1. gadÄ«jums. Objektu klasifikācija KoŔļājot par loÄ£istikas regresiju Šø KoŔļājot par loÄ£istikas regresiju

Agrāk, nosakot parauga iespējamÄ«bu, kurā aizņēmēja parāda atmaksas varbÅ«tÄ«ba tika aprēķināta, pamatojoties uz faktoriem un dotajiem koeficientiem. KoŔļājot par loÄ£istikas regresiju, mēs izmantojām formulu:

KoŔļājot par loģistikas regresiju

Faktiski KoŔļājot par loÄ£istikas regresiju ir jēga loÄ£istikas atbildes funkcijas KoŔļājot par loÄ£istikas regresiju dotajam svaru vektoram KoŔļājot par loÄ£istikas regresiju

Tad nekas neliedz mums uzrakstÄ«t parauga iespējamÄ«bas funkciju Ŕādi:

KoŔļājot par loģistikas regresiju

Gadās, ka dažkārt dažiem iesācēju analÄ«tiÄ·iem ir grÅ«ti uzreiz saprast, kā Ŕī funkcija darbojas. ApskatÄ«sim 4 Ä«sus piemērus, kas noskaidros lietas:

1. Ja KoŔļājot par loÄ£istikas regresiju (t.i., pēc apmācÄ«bas parauga objekts pieder klasei +1), un mÅ«su algoritms KoŔļājot par loÄ£istikas regresiju nosaka varbÅ«tÄ«bu objektu klasificēt klasē KoŔļājot par loÄ£istikas regresiju vienāds ar 0.9, tad Ŕī izlases iespējamÄ«ba tiks aprēķināta Ŕādi:

KoŔļājot par loģistikas regresiju

2. Ja KoŔļājot par loÄ£istikas regresijuUn KoŔļājot par loÄ£istikas regresiju, tad aprēķins bÅ«s Ŕāds:

KoŔļājot par loģistikas regresiju

3. Ja KoŔļājot par loÄ£istikas regresijuUn KoŔļājot par loÄ£istikas regresiju, tad aprēķins bÅ«s Ŕāds:

KoŔļājot par loģistikas regresiju

4. Ja KoŔļājot par loÄ£istikas regresijuUn KoŔļājot par loÄ£istikas regresiju, tad aprēķins bÅ«s Ŕāds:

KoŔļājot par loģistikas regresiju

Ir skaidrs, ka iespējamÄ«bas funkcija tiks maksimāli palielināta 1. un 3. gadÄ«jumā vai vispārējā gadÄ«jumā - ar pareizi uzminētām varbÅ«tÄ«bu vērtÄ«bām objekta pieŔķirÅ”anai klasei KoŔļājot par loÄ£istikas regresiju.

Sakarā ar to, ka, nosakot varbÅ«tÄ«bu objekta pieŔķirÅ”anai klasei KoŔļājot par loÄ£istikas regresiju Mēs nezinām tikai koeficientus KoŔļājot par loÄ£istikas regresiju, tad mēs tos meklēsim. Kā minēts iepriekÅ”, Ŕī ir optimizācijas problēma, kurā vispirms jāatrod iespējamÄ«bas funkcijas atvasinājums attiecÄ«bā pret svaru vektoru KoŔļājot par loÄ£istikas regresiju. Tomēr vispirms ir jēga vienkārÅ”ot uzdevumu sev: mēs meklēsim logaritma atvasinājumu varbÅ«tÄ«bas funkcijas.

KoŔļājot par loģistikas regresiju

Kāpēc pēc logaritma, in loÄ£istikas kļūdu funkcijas, mēs mainÄ«jām zÄ«mi no KoŔļājot par loÄ£istikas regresiju par KoŔļājot par loÄ£istikas regresiju. Viss ir vienkārÅ”i, jo modeļa kvalitātes novērtÄ“Å”anas problēmās ir ierasts samazināt funkcijas vērtÄ«bu, mēs reizinājām izteiksmes labo pusi ar KoŔļājot par loÄ£istikas regresiju un attiecÄ«gi, tā vietā, lai palielinātu, tagad mēs minimizējam funkciju.

PatiesÄ«bā tieÅ”i tagad, jÅ«su acu priekŔā, zaudējumu funkcija tika rÅ«pÄ«gi iegÅ«ta - LoÄ£istikas zaudējumi mācÄ«bu komplektam ar divām nodarbÄ«bām: KoŔļājot par loÄ£istikas regresiju Šø KoŔļājot par loÄ£istikas regresiju.

Tagad, lai atrastu koeficientus, mums vienkārÅ”i jāatrod atvasinājums loÄ£istikas kļūdu funkcijas un pēc tam, izmantojot skaitliskās optimizācijas metodes, piemēram, gradienta nolaiÅ”anos vai stohastisko gradienta nolaiÅ”anos, atlasiet optimālākos koeficientus KoŔļājot par loÄ£istikas regresiju. Bet, ņemot vērā raksta ievērojamo apjomu, ir ierosināts diferencÄ“Å”anu veikt patstāvÄ«gi, vai varbÅ«t Ŕī bÅ«s nākamā raksta tēma ar daudz aritmētikas bez tik detalizētiem piemēriem.

2. gadÄ«jums. Objektu klasifikācija KoŔļājot par loÄ£istikas regresiju Šø KoŔļājot par loÄ£istikas regresiju

Å eit pieeja bÅ«s tāda pati kā nodarbÄ«bās KoŔļājot par loÄ£istikas regresiju Šø KoŔļājot par loÄ£istikas regresiju, bet pats ceļŔ uz zaudējumu funkcijas izvadi LoÄ£istikas zaudējumi, bÅ«s greznāks. Sāksim. IespējamÄ«bas funkcijai mēs izmantosim operatoru "ja tad...". Tas ir, ja KoŔļājot par loÄ£istikas regresijuth objekts pieder klasei KoŔļājot par loÄ£istikas regresiju, tad, lai aprēķinātu izlases iespējamÄ«bu, mēs izmantojam varbÅ«tÄ«bu KoŔļājot par loÄ£istikas regresiju, ja objekts pieder klasei KoŔļājot par loÄ£istikas regresiju, tad mēs aizstājam ar varbÅ«tÄ«bu KoŔļājot par loÄ£istikas regresiju. Šādi izskatās varbÅ«tÄ«bas funkcija:

KoŔļājot par loģistikas regresiju

Aprakstīsim ar pirkstiem, kā tas darbojas. Apskatīsim 4 gadījumus:

1. Ja KoŔļājot par loÄ£istikas regresiju Šø KoŔļājot par loÄ£istikas regresiju, tad paraugu ņemÅ”anas iespējamÄ«ba "beigsies" KoŔļājot par loÄ£istikas regresiju

2. Ja KoŔļājot par loÄ£istikas regresiju Šø KoŔļājot par loÄ£istikas regresiju, tad paraugu ņemÅ”anas iespējamÄ«ba "beigsies" KoŔļājot par loÄ£istikas regresiju

3. Ja KoŔļājot par loÄ£istikas regresiju Šø KoŔļājot par loÄ£istikas regresiju, tad paraugu ņemÅ”anas iespējamÄ«ba "beigsies" KoŔļājot par loÄ£istikas regresiju

4. Ja KoŔļājot par loÄ£istikas regresiju Šø KoŔļājot par loÄ£istikas regresiju, tad paraugu ņemÅ”anas iespējamÄ«ba "beigsies" KoŔļājot par loÄ£istikas regresiju

Ir skaidrs, ka 1. un 3. gadÄ«jumā, kad varbÅ«tÄ«bas ir pareizi noteiktas ar algoritmu, varbÅ«tÄ«bas funkcija tiks maksimāli palielināts, tas ir, tieÅ”i to mēs vēlējāmies iegÅ«t. Tomēr Ŕī pieeja ir diezgan apgrÅ«tinoÅ”a, un turpmāk mēs apsvērsim kompaktāku apzÄ«mējumu. Bet vispirms logaritēsim varbÅ«tÄ«bas funkciju ar zÄ«mes maiņu, jo tagad mēs to samazināsim.

KoŔļājot par loģistikas regresiju

Tā vietā aizstāsim KoŔļājot par loģistikas regresiju izteiksme KoŔļājot par loģistikas regresiju:

KoŔļājot par loģistikas regresiju

VienkārÅ”osim pareizo terminu saskaņā ar logaritmu, izmantojot vienkārÅ”as aritmētikas metodes, un iegÅ«sim:

KoŔļājot par loģistikas regresiju

Tagad ir pienācis laiks atbrÄ«voties no operatora "ja tad...". Ņemiet vērā, ka tad, kad objekts KoŔļājot par loÄ£istikas regresiju pieder klasei KoŔļājot par loÄ£istikas regresiju, tad izteiksmē zem logaritma, saucējā, KoŔļājot par loÄ£istikas regresiju pacelts pie varas KoŔļājot par loÄ£istikas regresiju, ja objekts pieder klasei KoŔļājot par loÄ£istikas regresiju, tad $e$ tiek pacelts pakāpē KoŔļājot par loÄ£istikas regresiju. Tāpēc grāda apzÄ«mējumu var vienkārÅ”ot, apvienojot abus gadÄ«jumus vienā: KoŔļājot par loÄ£istikas regresiju. Tad loÄ£istikas kļūdu funkcija bÅ«s Ŕādā formā:

KoŔļājot par loģistikas regresiju

Saskaņā ar logaritma noteikumiem mēs apgriežam daļu un izliekam zÄ«mi "KoŔļājot par loÄ£istikas regresiju" (mÄ«nus) logaritmam mēs iegÅ«stam:

KoŔļājot par loģistikas regresiju

Å eit ir zaudējumu funkcija loÄ£istikas zaudējumi, kas tiek izmantots mācÄ«bu komplektā ar klasēm pieŔķirtajiem objektiem: KoŔļājot par loÄ£istikas regresiju Šø KoŔļājot par loÄ£istikas regresiju.

Nu, Å”ajā brÄ«dÄ« es paņemu atvaļinājumu un mēs pabeidzam rakstu.

KoŔļājot par loÄ£istikas regresiju Autora iepriekŔējais darbs ir ā€œLineārās regresijas vienādojuma iekļauÅ”ana matricas formāā€

Palīgmateriāli

1. Literatūra

1) LietiŔķā regresijas analÄ«ze / N. Draper, G. Smith - 2nd ed. ā€“ M.: Finanses un statistika, 1986 (tulkojums no angļu valodas)

2) VarbÅ«tÄ«bu teorija un matemātiskā statistika / V.E. Gmurman ā€” 9. izd. - M.: Augstskola, 2003.g

3) Varbūtību teorija / N.I. Černova - Novosibirska: Novosibirskas Valsts universitāte, 2007

4) Biznesa analÄ«tika: no datiem lÄ«dz zināŔanām / Paklin N. B., Oreshkov V. I. - 2nd ed. ā€” Sanktpēterburga: Pēteris, 2013. gads

5) Datu zinātne Datu zinātne no nulles / Joel Gras - Sanktpēterburga: BHV Petersburg, 2017

6) Praktiskā statistika datu zinātnes speciālistiem / P. Bruce, E. Bruce - St. Petersburg: BHV Petersburg, 2018

2. Lekcijas, kursi (video)

1) Maksimālās varbūtības metodes būtība, Boriss DemeŔevs

2) Maksimālās varbūtības metode nepārtrauktā gadījumā, Boriss DemeŔevs

3) LoÄ£istiskā regresija. Atklāts ODS kurss, Jurijs KaŔņickis

4) 4. lekcija, Jevgeņijs Sokolovs (no 47 minÅ«Å”u video)

5) Loģistiskā regresija, Vjačeslavs Voroncovs

3. Interneta avoti

1) Lineārā klasifikācija un regresijas modeļi

2) Kā viegli saprast loģistisko regresiju

3) Loģistikas kļūdu funkcija

4) Neatkarīgi testi un Bernulli formula

5) Balāde par MMP

6) Maksimālās varbūtības metode

7) Logaritmu formulas un īpaŔības

8) Kāpēc numurs KoŔļājot par loÄ£istikas regresiju?

9) Lineārais klasifikators

Avots: www.habr.com

Pievieno komentāru