Masticà a regressione logistica

Masticà a regressione logistica

In questu articulu, avemu da analizà i calculi teorichi di a trasfurmazioni funzioni di regressione lineari в funzione di trasformazione di logit inversa (altrimenti chjamata funzione di risposta logistica). Allora, usendu l'arsenale metudu di massima probabilità, in cunfurmità cù u mudellu di regressione logistica, derivemu a funzione di perdita Perdita logistica, o in altre parolle, avemu da definisce una funzione cù quale i paràmetri di u vettore di pesu sò selezziunati in u mudellu di regressione logistica. Masticà a regressione logistica.

Schema di l'articulu:

  1. Ripitemu a relazione lineale trà duie variàbili
  2. Identifichemu a necessità di trasfurmazioni funzioni di regressione lineari Masticà a regressione logistica в funzione di risposta logistica Masticà a regressione logistica
  3. Facemu e trasfurmazioni è a pruduzzioni funzione di risposta logistica
  4. Pruvemu di capisce perchè u metudu di i minimi quadrati hè male quandu selezziunate i paràmetri Masticà a regressione logistica funzioni Perdita logistica
  5. Avemu aduprà metudu di massima probabilità per a determinazione funzioni di selezzione di paràmetri Masticà a regressione logistica:

    5.1. Casu 1: funzione Perdita logistica per l'uggetti cù designazioni di classi 0 и 1:

    Masticà a regressione logistica

    5.2. Casu 2: funzione Perdita logistica per l'uggetti cù designazioni di classi -1 и +1:

    Masticà a regressione logistica


L'articulu hè riccu cù esempi simplici in quale tutti i calculi sò faciuli di fà oralmente o nantu à carta; in certi casi, una calculatrice pò esse dumandata. Allora preparate :)

Questu articulu hè principalmente destinatu à i scientisti di dati cun un livellu iniziale di cunniscenza in i principii di l'apprendimentu automaticu.

L'articulu furnisce ancu codice per disegnu grafici è calculi. Tuttu u codice hè scrittu in a lingua pitone 2.7. Lasciami spiegà in anticipu nantu à a "novità" di a versione utilizata - questa hè una di e cundizioni per piglià u cursu ben cunnisciutu da Yandex nantu à una piattaforma di educazione in linea ugualmente cunnisciuta Coursera, è, cum'è si pò assume, u materiale hè statu preparatu basatu annantu à stu cursu.

01. Dipendenza dritta

Hè abbastanza raghjone di dumandà a quistione - chì a dependenza lineale è a regressione logistica anu da fà cun ella?

Hè simplice! A regressione logistica hè unu di i mudelli chì appartenenu à u classificatore lineale. In parolle simplici, u compitu di un classificatore lineale hè di predichendu i valori di destinazione Masticà a regressione logistica da variabili (regressori) Masticà a regressione logistica. Hè cresce chì a dependenza trà e caratteristiche Masticà a regressione logistica è i valori di destinazione Masticà a regressione logistica lineari. Da quì u nome di u classificatore - lineari. Per dì assai apprussimatamente, u mudellu di regressione logistica hè basatu annantu à l'assunzione chì ci hè una relazione lineare trà e caratteristiche. Masticà a regressione logistica è i valori di destinazione Masticà a regressione logistica. Questu hè a cunnessione.

Ci hè u primu esempiu in u studiu, è si tratta, currettamente, di a dependenza rettilinea di e quantità studiate. In u prucessu di a preparazione di l'articulu, aghju scontru un esempiu chì hà digià pusatu parechje persone nantu à a punta - a dependenza di u currente nantu à a tensione. ("Analisi di regressione applicata", N. Draper, G. Smith). Fighjeremu ancu quì.

In cunfurmità cù a lege di Ohm:

Masticà a regressione logisticainduve Masticà a regressione logistica - forza attuale, Masticà a regressione logistica - tensione, Masticà a regressione logistica - resistenza.

Se ùn sapemu micca a lege di Ohm, tandu pudemu truvà a dependenza empirically cambiendu Masticà a regressione logistica è misura Masticà a regressione logistica, mentre sustene Masticà a regressione logistica fissu. Allora avemu vistu chì u graficu di dependenza Masticà a regressione logistica от Masticà a regressione logistica dà una linea più o menu dritta attraversu l'origine. Dicemu "più o menu" perchè, ancu s'è a rilazioni hè veramente precisa, e nostre misurazioni ponu cuntene errori chjuchi, è per quessa i punti nantu à u graficu ùn ponu micca cascà esattamente nantu à a linea, ma seranu spargugliati intornu à l'aleatoriu.

Graficu 1 "Dipendenza" Masticà a regressione logistica от Masticà a regressione logistica»

Masticà a regressione logistica

Codice di disegnu di carta

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. U bisognu di trasfurmà l'equazioni di regressione lineale

Fighjemu un altru esempiu. Imaginemu chì travagliammu in un bancu è u nostru compitu hè di determinà a probabilità di u prestitu di rimbursà u prestitu secondu certi fatturi. Per simplificà u compitu, avemu da cunsiderà solu dui fatturi: u salariu mensu di u prestitu è ​​a quantità di rimborsu di u prestitu.

U compitu hè assai cundizionale, ma cù questu esempiu pudemu capisce perchè ùn hè micca abbastanza per aduprà funzioni di regressione lineari, è ancu scopre chì trasfurmazioni deve esse realizatu cù a funzione.

Riturnemu à l'esempiu. Hè capitu chì u più altu u salariu, u più u prestitu hà da pudè assignà mensili per rimbursà u prestitu. À u listessu tempu, per un certu salariu, sta relazione serà abbastanza lineare. Per esempiu, pigghiamu un salariu da 60.000 200.000 RUR à 3 5.000 RUR è assume chì in u salariu specificatu, a dependenza di a dimensione di u pagamentu mensuale nantu à a dimensione di u salariu hè lineale. Dicemu chì per a gamma specifica di salarii hè statu revelatu chì u rapportu di u salariu à u pagamentu ùn pò micca falà sottu à XNUMX è u prestitu deve ancu avè XNUMX XNUMX RUR in riserva. È solu in questu casu, assumeremu chì u prestitu rimbursà u prestitu à u bancu. Allora, l'equazioni di regressione lineare pigliarà a forma:

Masticà a regressione logistica

induve Masticà a regressione logistica, Masticà a regressione logistica, Masticà a regressione logistica, Masticà a regressione logistica - salariu Masticà a regressione logistica- u prestitu, Masticà a regressione logistica - pagamentu di prestitu Masticà a regressione logistica-emu prestitu.

Sustituisce u salariu è u pagamentu di prestitu cù parametri fissi in l'equazioni Masticà a regressione logistica Pudete decide di emette o ricusà un prestitu.

Fighjendu avanti, avemu nutatu chì, cù i paràmetri datu Masticà a regressione logistica funzione di regressione lineare, usatu in funzioni di risposta logistica pruducerà grandi valori chì complicà i calculi per determinà e probabilità di rimborsu di u prestitu. Dunque, hè prupostu di riduce i nostri coefficienti, per dì, da 25.000 XNUMX volte. Questa trasfurmazioni in i coefficienti ùn cambierà micca a decisione di issuà un prestitu. Ricurdemu stu puntu per u futuru, ma avà, per fà ancu più chjaru di ciò chì avemu parlatu, cunsideremu a situazione cù trè putenziali prestiti.

Tabella 1 "Prestiti potenziali"

Masticà a regressione logistica

Codice per generà a tabella

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']]

In cunfurmità cù i dati in a tavula, Vasya, cù un salariu di 120.000 3.000 RUR, vole riceve un prestitu per pudè rimbursà ogni mese à 5.000 XNUMX RUR. Avemu determinatu chì, per appruvà u prestitu, u salariu di Vasya deve esse più di trè volte l'ammontu di u pagamentu, è deve esse XNUMX RUR restante. Vasya satisface stu requisitu: Masticà a regressione logistica. Ancu 106.000 XNUMX RUR resta. Malgradu u fattu chì quandu calcula Masticà a regressione logistica avemu riduciutu e probabilità Masticà a regressione logistica 25.000 XNUMX volte, u risultatu era u listessu - u prestitu pò esse appruvatu. Fedya riceverà ancu un prestitu, ma Lesha, malgradu u fattu chì ellu riceve u più, duverà curbà i so appetiti.

Facemu un graficu per questu casu.

Graficu 2 "Classificazione di i prestiti"

Masticà a regressione logistica

Codice per disegnu u graficu

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()

Allora, a nostra linea dritta, custruita in cunfurmità cù a funzione Masticà a regressione logistica, separa i prestatori "cattivi" da i "boni". Quelli borrowers chì i so desideri ùn coincidenu micca cù e so capacità sò sopra à a linea (Lesha), mentre chì quelli chì, sicondu i paràmetri di u nostru mudellu, sò capaci di rimbursà u prestitu sò sottu à a linea (Vasya è Fedya). In altri palori, pudemu dì questu: a nostra linea diretta divide i prestiti in dui classi. Denoteremu cusì: à classa Masticà a regressione logistica Avemu da classificà quelli prestiti chì sò più prubabile di rimborsà u prestitu cum'è Masticà a regressione logistica o Masticà a regressione logistica Avemu da includere quelli prestiti chì assai prubabilmente ùn puderanu micca rimbursà u prestitu.

Riassumemu e cunclusioni da stu simplice esempiu. Pigliemu un puntu Masticà a regressione logistica è, sustituisce e coordenate di u puntu in l'equazioni currispundenti di a linea Masticà a regressione logistica, cunzidira trè opzioni:

  1. Se u puntu hè sottu à a linea è l'assignemu à a classa Masticà a regressione logistica, allura u valore di a funzione Masticà a regressione logistica serà pusitivu da Masticà a regressione logistica à Masticà a regressione logistica. Questu significa chì pudemu assume chì a probabilità di rimborsà u prestitu hè in l'internu Masticà a regressione logistica. U più grande u valore di a funzione, più altu hè a probabilità.
  2. Se un puntu hè sopra à una linea è l'assignemu à a classa Masticà a regressione logistica o Masticà a regressione logistica, allura u valore di a funzione serà negativu da Masticà a regressione logistica à Masticà a regressione logistica. Allora assumeremu chì a probabilità di rimborsu di u debitu hè in l'internu Masticà a regressione logistica è, u più grande u valore assolutu di a funzione, u più altu a nostra fiducia.
  3. U puntu hè nantu à una linea dritta, à u cunfini trà duie classi. In questu casu, u valore di a funzione Masticà a regressione logistica sarà uguale Masticà a regressione logistica è a probabilità di rimborsà u prestitu hè uguali à Masticà a regressione logistica.

Avà, imaginemu chì ùn avemu micca dui fattori, ma decine, è micca trè, ma millaie di prestiti. Allora invece di una linea dritta averemu m-dimensionale pianu è coefficienti Masticà a regressione logistica ùn seremu micca stati fora di l'aria magre, ma derivati ​​secondu tutte e regule, è nantu à a basa di dati accumulati nantu à i borrowers chì anu o ùn anu micca rimbursatu u prestitu. È in verità, nutate chì avemu avà selezziunate i prestiti cù coefficienti digià cunnisciuti Masticà a regressione logistica. In fatti, u compitu di u mudellu di regressione logistica hè precisamente di determinà i paràmetri Masticà a regressione logistica, à quale u valore di a funzione di perdita Perdita logistica tenderà à u minimu. Ma circa cumu u vettore hè calculatu Masticà a regressione logistica, Truveremu più in a 5a sezione di l'articulu. Intantu, vultemu à a terra prumessa - à u nostru banchieru è i so trè clienti.

Grazie à a funzione Masticà a regressione logistica sapemu quale pò esse datu un prestitu è ​​quale deve esse denegatu. Ma ùn pudete micca andà à u direttore cù tali informazioni, perchè vulianu avè da noi a probabilità di rimborsu di u prestitu da ogni prestatore. Chì fà ? A risposta hè simplice - avemu bisognu di trasfurmà a funzione Masticà a regressione logistica, chì i valori si trovanu in a gamma Masticà a regressione logistica à una funzione chì i valori si trovanu in u range Masticà a regressione logistica. È una tale funzione esiste, hè chjamata funzione di risposta logistica o trasfurmazioni di logit inversa. Incontru:

Masticà a regressione logistica

Videmu passu per passu cumu funziona funzione di risposta logistica. Nota chì andemu in a direzzione opposta, i.e. avemu da assume chì sapemu u valore di probabilità, chì si trova in a gamma da Masticà a regressione logistica à Masticà a regressione logistica è tandu avemu da "unwind" stu valore à tutta a gamma di numeri da Masticà a regressione logistica à Masticà a regressione logistica.

03. Derivemu a funzione di risposta logistica

Passu 1. Cunvertite i valori di probabilità in un intervallu Masticà a regressione logistica

Durante a trasfurmazioni di a funzione Masticà a regressione logistica в funzione di risposta logistica Masticà a regressione logistica Lasceremu u nostru analista di creditu solu è facemu un tour di i bookmakers invece. Innò, di sicuru, ùn faremu micca scumesse, tuttu ciò chì ci interessa ci hè u significatu di l'espressione, per esempiu, a chance hè 4 à 1. L'odds, familiar à tutti i bettors, sò a ratio di "successi" à " fallimenti". In termini di probabilità, l'odds sò a probabilità di un avvenimentu accadutu divisu da a probabilità di l'avvenimentu ùn accade micca. Scrivemu a formula per a pussibilità di un avvenimentu Masticà a regressione logistica:

Masticà a regressione logistica

induve Masticà a regressione logistica - probabilità di accadimentu di un avvenimentu, Masticà a regressione logistica - probabilità chì un avvenimentu ùn sia micca accadutu

Per esempiu, se a probabilità chì un cavallu ghjovanu, forte è ghjucatu soprannominatu "Veterok" batte una vechja vechja è flaccida chjamata "Matilda" in una corsa hè uguale à Masticà a regressione logistica, allura i chances di successu per "Veterok" seranu Masticà a regressione logistica к Masticà a regressione logistica Masticà a regressione logistica è vice versa, sapendu e probabilità, ùn serà micca difficiule per noi di calculà a probabilità Masticà a regressione logistica:

Masticà a regressione logistica

Cusì, avemu amparatu à "traduce" probabilità in chances, chì piglianu valori da Masticà a regressione logistica à Masticà a regressione logistica. Facemu un passu più è amparà à "traduce" a probabilità à tutta a linea numerica da Masticà a regressione logistica à Masticà a regressione logistica.

Passu 2. Cunvertite i valori di probabilità in un intervallu Masticà a regressione logistica

Stu passu hè assai simplice - pigliamu u logaritmu di e probabilità à a basa di u numeru di Euler. Masticà a regressione logistica è avemu:

Masticà a regressione logistica

Avà sapemu chì si Masticà a regressione logistica, poi calculate u valore Masticà a regressione logistica serà assai simplice è, in più, deve esse pusitivu: Masticà a regressione logistica. Questu hè veru.

Per curiosità, andemu à verificà ciò chì si Masticà a regressione logistica, allora aspittemu di vede un valore negativu Masticà a regressione logistica. Avemu verificatu: Masticà a regressione logistica. Hè ghjusta.

Avà sapemu cumu cunvertisce u valore di probabilità da Masticà a regressione logistica à Masticà a regressione logistica longu tutta a linea numerica da Masticà a regressione logistica à Masticà a regressione logistica. In u prossimu passu, faremu u cuntrariu.

Per avà, avemu nutatu chì in cunfurmità cù e regule di logaritmu, sapendu u valore di a funzione Masticà a regressione logistica, pudete calculà e probabilità:

Masticà a regressione logistica

Stu metudu di determinà e probabilità serà utile per noi in u prossimu passu.

Step 3. Derivemu una formula per determinà Masticà a regressione logistica

Allora avemu amparatu, sapendu Masticà a regressione logistica, truvà i valori di funzione Masticà a regressione logistica. Tuttavia, in fattu, avemu bisognu esattamente u cuntrariu - cunnosce u valore Masticà a regressione logistica truvà Masticà a regressione logistica. Per fà questu, andemu à un tali cuncettu cum'è a funzione di probabilità inversa, secondu a quale:

Masticà a regressione logistica

In l'articulu ùn deriveremu micca a formula sopra, ma avemu da verificà cù i numeri di l'esempiu sopra. Sapemu chì cù probabilità di 4 à 1 (Masticà a regressione logistica), a probabilità di l'avvenimentu hè 0.8 (Masticà a regressione logistica). Facemu una sustituzione: Masticà a regressione logistica. Questu coincide cù i nostri calculi fatti prima. Andemu avanti.

In l'ultimu passu avemu dedutu chì Masticà a regressione logistica, chì significa chì pudete fà una sustituzione in a funzione di probabilità inversa. Avemu ottene:

Masticà a regressione logistica

Divide u numeratore è u denominatore per Masticà a regressione logistica, Allora:

Masticà a regressione logistica

In casu, per assicurà chì ùn avemu micca fattu un sbagliu in ogni locu, faremu un più chjucu cuntrollu. In u passu 2, avemu per Masticà a regressione logistica determinatu chì Masticà a regressione logistica. Allora, rimpiazzà u valore Masticà a regressione logistica in a funzione di risposta logistica, aspittemu à ottene Masticà a regressione logistica. Sustituemu è uttene: Masticà a regressione logistica

Felicitazioni, caru lettore, avemu ghjustu derivatu è pruvatu a funzione di risposta logistica. Fighjemu u graficu di a funzione.

Graficu 3 "Funzione di risposta logistica"

Masticà a regressione logistica

Codice per disegnu u graficu

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()

In a literatura pudete ancu truvà u nome di sta funzione cum'è funzione sigmoide. U graficu mostra chjaramente chì u cambiamentu principale in a probabilità di un oggettu chì appartene à una classe si trova in un intervallu relativamente chjucu. Masticà a regressione logistica, da qualchì parte Masticà a regressione logistica à Masticà a regressione logistica.

Suggeriu di vultà à u nostru analista di creditu è ​​aiutallu à calculà a probabilità di rimborsu di u prestitu, altrimenti risicate di esse lasciatu senza bonus :)

Tabella 2 "Prestiti potenziali"

Masticà a regressione logistica

Codice per generà a tabella

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']]

Dunque, avemu determinatu a probabilità di rimborsu di u prestitu. In generale, questu pare esse veru.

Infatti, a probabilità chì Vasya, cù un salariu di 120.000 3.000 RUR, puderà dà 100 0.3 RUR à u bancu ogni mese hè vicinu à XNUMX%. In modu, avemu da capisce chì un bancu pò emette un prestitu à Lesha se a pulitica di u bancu furnisce, per esempiu, per prestitu à i clienti cù una probabilità di rimborsu di prestitu di più di, dì, XNUMX. Hè solu chì in questu casu, u bancu creà una riserva più grande per i pussibuli pèrdite.

Deve ancu esse nutatu chì u rapportu di salariu à pagamentu di almenu 3 è cun un marghjenu di 5.000 XNUMX RUR hè statu pigliatu da u tettu. Dunque, ùn pudemu micca aduprà u vettore di pesi in a so forma originale Masticà a regressione logistica. Avemu bisognu di riduce assai i coefficienti, è in questu casu avemu divisu ogni coefficient per 25.000 XNUMX, vale à dì, in essenza, aghjustatu u risultatu. Ma questu hè stata fatta apposta per simplificà a cunniscenza di u materiale in u stadiu iniziale. In a vita, ùn avemu micca bisognu di inventà è aghjustà i coefficienti, ma truvà. In i prossimi rùbbriche di l'articulu deriveremu l'equazioni cù quale i paràmetri sò selezziunati Masticà a regressione logistica.

04. Metudu di i minimi quadrati per a determinazione di u vettore di pesi Masticà a regressione logistica in a funzione di risposta logistica

Avemu digià cunnisciutu stu metudu per selezziunà un vettore di pesi Masticà a regressione logistica, cum'è Metudu di i minimi quadrati (LSM) è in fattu, perchè ùn avemu micca allora aduprà in i prublemi di classificazione binaria? In verità, nunda ùn impedisce di aduprà MNC, solu stu metudu in i prublemi di classificazione dà risultati chì sò menu precisi cà Perdita logistica. Ci hè una basa teorica per questu. Fighjemu prima un esempiu simplice.

Assumimu chì i nostri mudelli (usu MSE и Perdita logistica) anu digià cuminciatu à selezziunate u vettore di pesi Masticà a regressione logistica è avemu firmatu u calculu à qualchì passu. Ùn importa micca in u mità, à a fine o à u principiu, a cosa principal hè chì avemu digià qualchi valori di u vettore di pesi è supponemu chì in questu passu, u vettore di pesi. Masticà a regressione logistica per i dui mudelli ùn ci sò micca differenzi. Allora pigliate i pesi resultanti è rimpiazzà in elli funzione di risposta logistica (Masticà a regressione logistica) per qualchì ughjettu chì appartene à a classa Masticà a regressione logistica. Esaminemu dui casi quandu, in cunfurmità cù u vettore di pesi selezziunati, u nostru mudellu hè assai sbagliatu è vice versa - u mudellu hè assai cunfidendu chì l'ughjettu appartene à a classe. Masticà a regressione logistica. Videmu ciò chì fine sarà emessu quandu si usa MNC и Perdita logistica.

Codice per calculà e penalità secondu a funzione di perdita utilizata

# класс объекта
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

Un casu di sbagghiatu - u mudellu assigna un oggettu à una classa Masticà a regressione logistica cù una probabilità di 0,01

Penalità à l'usu MNC serà:
Masticà a regressione logistica

Penalità à l'usu Perdita logistica serà:
Masticà a regressione logistica

Un casu di forte fiducia - u mudellu assigna un oggettu à una classa Masticà a regressione logistica cù una probabilità di 0,99

Penalità à l'usu MNC serà:
Masticà a regressione logistica

Penalità à l'usu Perdita logistica serà:
Masticà a regressione logistica

Stu esempiu illustra bè chì in casu di un errore grossu a funzione di perdita Perdita di log penalizeghja u mudellu significativamente più cà MSE. Andemu avà capisce ciò chì u fondu teorichi hè à aduprà a funzione di perdita Perdita di log in i prublemi di classificazione.

05. Metudu di probabilità massima è regressione logistica

Cum'è prumessu à u principiu, l'articulu hè pienu di esempi simplici. In u studiu ci hè un altru esempiu è vechji invitati - prestiti bancari: Vasya, Fedya è Lesha.

Solu in casu, prima di sviluppà l'esempiu, lasciami ricurdà chì in a vita avemu trattatu un campionu di furmazione di millaie o milioni d'uggetti cù decine o centinaie di funzioni. Tuttavia, quì i numeri sò pigliati in modu chì ponu facirmenti intruduce in u capu di un scientist di dati novi.

Riturnemu à l'esempiu. Fighjemu chì u direttore di u bancu hà decisu di emette un prestitu à tutti quelli chì anu bisognu, malgradu u fattu chì l'algoritmu hà dettu di ùn emette micca à Lesha. È avà hè passatu abbastanza tempu è sapemu quale di i trè eroi hà rimbursatu u prestitu è ​​quale ùn hà micca. Ciò chì deve esse espertu: Vasya è Fedya rimbursatu u prestitu, ma Lesha ùn hà micca. Avà imaginemu chì stu risultatu serà un novu campionu di furmazione per noi è, à u stessu tempu, hè cum'è s'è tutti i dati nantu à i fatturi chì influenzanu a probabilità di rimborsu di u prestitu (salariu di u prestitu, dimensione di u pagamentu mensuale) hè sparitu. Allora, intuitivamente, pudemu suppone chì ogni terzu prestitu ùn rimborsa micca u prestitu à u bancu, o in altri palori, a probabilità di u prossimu prestitu di rimbursà u prestitu. Masticà a regressione logistica. Questa supposizione intuitiva hà cunfirmazione teorica è si basa metudu di massima probabilità, spessu in a literatura hè chjamatu principiu di massima probabilità.

Prima, facemu cunniscenze cù l'apparatu cuncettuale.

Probabilità di campionamentu hè a probabilità di ottene esattamente un tali campionu, ottene esattamente tali osservazioni / risultati, i.e. u pruduttu di e probabilità di ottene ognuna di i risultati di mostra (per esempiu, se u prestitu di Vasya, Fedya è Lesha hè statu rimbursatu o micca rimbursatu à u stessu tempu).

Funzione di probabilità mette in relazione a probabilità di una mostra cù i valori di i paràmetri di distribuzione.

In u nostru casu, a mostra di furmazione hè un schema generalizatu di Bernoulli, in quale a variabile aleatoria piglia solu dui valori: Masticà a regressione logistica o Masticà a regressione logistica. Dunque, a probabilità di mostra pò esse scritta cum'è una funzione di probabilità di u paràmetru Masticà a regressione logistica a siguenti:

Masticà a regressione logistica
Masticà a regressione logistica

L'entrata sopra pò esse interpretata cum'è seguita. A probabilità cumuna chì Vasya è Fedya rimborsanu u prestitu hè uguali à Masticà a regressione logistica, a probabilità chì Lesha ùn rimbursà micca u prestitu hè uguali à Masticà a regressione logistica (siccomu ùn era micca u rimborsu di u prestitu chì hè accadutu), dunque a probabilità cumuna di tutti i trè avvenimenti hè uguali Masticà a regressione logistica.

Metudu di massima probabilità hè un metudu per stimà un paràmetru scunnisciutu per maximizà funzioni di probabilità. In u nostru casu, avemu bisognu di truvà un tali valore Masticà a regressione logistica, à quale Masticà a regressione logistica righjunghji u so massimu.

Da induve vene l'idea attuale - per circà u valore di un paràmetru scunnisciutu à quale a funzione di probabilità righjunghji u massimu? L'urighjini di l'idea venenu da l'idea chì una mostra hè l'unica fonte di cunniscenze dispunibile per noi nantu à a pupulazione. Tuttu ciò chì sapemu di a pupulazione hè rapprisintatu in a mostra. Dunque, tuttu ciò chì pudemu dì hè chì una mostra hè a riflessione più precisa di a pupulazione dispunibile per noi. Per quessa, avemu bisognu di truvà un paràmetru à quale a mostra dispunibule diventa u più prubabile.

Ovviamente, avemu trattatu un prublema di ottimisazione in quale avemu bisognu di truvà u puntu estremu di una funzione. Per truvà u puntu estremu, hè necessariu di cunsiderà a cundizione di primu ordine, vale à dì, equate a derivativa di a funzione à cero è risolve l'equazioni in quantu à u paràmetru desideratu. Tuttavia, a ricerca di u derivatu di un pruduttu di un gran numaru di fatturi pò esse un compitu longu; per evitari, ci hè una tecnica speciale - cambià à u logaritmu. funzioni di probabilità. Perchè una tale transizione hè pussibule? Fighjemu attente à u fattu chì ùn avemu micca circà l'estremu di a funzione stessuMasticà a regressione logistica, è u puntu extremum, vale à dì u valore di u paràmetru scunnisciutu Masticà a regressione logistica, à quale Masticà a regressione logistica righjunghji u so massimu. Quandu si move à un logaritmu, u puntu di l'extremu ùn cambia micca (ancu chì l'estremu stessu serà diversu), postu chì u logaritmu hè una funzione monotonica.

Andemu, in cunfurmità cù u sopra, cuntinuà à sviluppà u nostru esempiu cù prestiti da Vasya, Fedya è Lesha. Prima andemu à logaritmu di a funzione di probabilità:

Masticà a regressione logistica

Avà pudemu facilmente diferenze l'espressione per Masticà a regressione logistica:

Masticà a regressione logistica

È infine, cunzidira a cundizione di primu ordine - equatemu a derivativa di a funzione à zero:

Masticà a regressione logistica

Cusì, a nostra stima intuitiva di a probabilità di rimborsu di prestitu Masticà a regressione logistica era teoricamente justificata.

Grande, ma chì duvemu fà cù sta infurmazione avà? Se assumemu chì ogni terzu prestitu ùn torna micca i soldi à u bancu, allora l'ultimi inevitabbilmente fallenu. Hè propiu, ma solu quandu valutà a probabilità di rimborsu di u prestitu uguale à Masticà a regressione logistica Ùn avemu micca cunsideratu i fatturi chì influenzanu u rimborsu di u prestitu: u salariu di u prestitu è ​​a dimensione di u pagamentu mensuale. Ricurdemu chì avemu calculatu prima a probabilità di rimborsu di u prestitu da ogni cliente, tenendu in contu sti stessi fattori. Hè logicu chì avemu ottenutu probabilità diverse da a constante uguale Masticà a regressione logistica.

Definimu a probabilità di campioni:

Codice per u calculu di probabilità di mostra

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)

Probabilità di mostra à un valore constante Masticà a regressione logistica:

Masticà a regressione logistica

Prubabilità di mostra quandu si calcula a probabilità di rimborsu di u prestitu in cunsiderà fattori Masticà a regressione logistica:

Masticà a regressione logistica
Masticà a regressione logistica

A probabilità di una mostra cù una probabilità calculata sicondu i fatturi hè stata più altu ch'è a probabilità cun un valore di probabilità constante. Chì significà questu? Questu suggerisce chì a cunniscenza di i fatturi hà permessu di selezziunà più precisamente a probabilità di rimborsu di prestitu per ogni cliente. Dunque, quandu emette u prossimu prestitu, saria più currettu per utilizà u mudellu prupostu à a fine di a sezione 3 di l'articulu per evaluà a probabilità di rimborsu di u debitu.

Ma dopu, si vulemu maximizà funzione di probabilità di mostra, Allora perchè micca aduprà qualchì algoritmu chì pruducerà probabilità per Vasya, Fedya è Lesha, per esempiu, uguali à 0.99, 0.99 è 0.01, rispettivamente. Forse un tale algoritmu farà bè nantu à a mostra di furmazione, postu chì avvicinarà u valore di probabilità di mostra. Masticà a regressione logistica, ma, prima, un tali algoritmu avarà assai prubabilmente difficultà cù a capacità di generalizazione, è in segundu, questu algoritmu ùn serà micca definitu lineare. È se i metudi di cumbattimentu di l'overtraining (ugualmente debule capacità di generalizazione) ùn sò chjaramente micca inclusi in u pianu di stu articulu, allora andemu à traversu u sicondu puntu in più detail. Per fà questu, basta à risponde à una quistione simplice. A probabilità di Vasya è Fedya di rimborsà u prestitu pò esse a stessa, tenendu in contu i fatturi cunnisciuti da noi? Da u puntu di vista di a logica sana, di sicuru micca, ùn pò micca. Allora Vasya hà da pagà 2.5% di u so salariu per mese per rimbursà u prestitu, è Fedya - quasi 27,8%. Ancu in u graficu 2 "Classificazione di u cliente" vedemu chì Vasya hè assai più luntanu da a linea chì separa e classi cà Fedya. È infine, sapemu chì a funzione Masticà a regressione logistica per Vasya è Fedya piglia valori diffirenti: 4.24 per Vasya è 1.0 per Fedya. Avà, se Fedya, per esempiu, hà guadagnatu un ordine di grandezza più o dumandava un prestitu più chjucu, allora e probabilità di rimborsà u prestitu per Vasya è Fedya seranu simili. In altre parolle, a dependenza lineale ùn pò micca esse ingannata. È se avemu veramente calculatu e probabilità Masticà a regressione logistica, È ùn li pigliò fora di l'aria magre, pudemu dì sicuru chì i nostri valori Masticà a regressione logistica megliu permettenu di stimà a probabilità di rimborsu di u prestitu da ogni prestitu, ma postu chì avemu accunsentutu à suppone chì a determinazione di i coefficienti Masticà a regressione logistica hè statu realizatu secondu tutte e regule, allora assumeremu cusì - i nostri coefficienti ci permettenu di dà una stima megliu di a probabilità :)

Tuttavia, avemu digressu. In questa sezione avemu bisognu di capiscenu cumu si determina u vettore di pesi Masticà a regressione logistica, chì hè necessariu per valutà a probabilità di rimborsu di u prestitu da ogni prestitu.

Riassumemu brevemente cù quale arsenale andemu à circà probabilità Masticà a regressione logistica:

1. Assumimu chì a relazione trà a variabile di destinazione (valore di prediczione) è u fattore chì influenza u risultatu hè lineale. Per questu mutivu hè utilizatu funzione di regressione lineare gentile Masticà a regressione logistica, a linea di quale divide l'uggetti (clienti) in classi Masticà a regressione logistica и Masticà a regressione logistica o Masticà a regressione logistica (clienti chì sò capaci di rimbursà u prestitu è ​​quelli chì ùn sò micca). In u nostru casu, l'equazioni hà a forma Masticà a regressione logistica.

2. Avemu aduprà funzione logit inversa gentile Masticà a regressione logistica per determinà a probabilità di un oggettu chì appartene à una classe Masticà a regressione logistica.

3. Cunsideremu u nostru gruppu di furmazione cum'è una implementazione di un generale schemi di Bernoulli, vale à dì, per ogni ughjettu una variabile aleatoria hè generata, chì cun probabilità Masticà a regressione logistica (u so propiu per ogni ughjettu) piglia u valore 1 è cun probabilità Masticà a regressione logistica - 0.

4. Sapemu ciò chì avemu bisognu di maximizà funzione di probabilità di mostra piglià in contu i fattori accettati per chì a mostra dispunibile diventa u più plausibile. In altri palori, avemu bisognu di selezziunà i paràmetri à quale a mostra serà più plausibile. In u nostru casu, u paràmetru sceltu hè a probabilità di rimborsu di prestitu Masticà a regressione logistica, chì à u turnu dipende di coefficienti scunnisciuti Masticà a regressione logistica. Allora avemu bisognu di truvà un tali vettore di pesi Masticà a regressione logistica, à quale a probabilità di a mostra serà massima.

5. Sapemu ciò chì maximizà funzioni di probabilità di mostra pudete aduprà metudu di massima probabilità. È sapemu tutti i scherzi dilicati per travaglià cù stu metudu.

Questu hè cumu si hè una mossa in più tappe :)

Avà ricurdate chì à u principiu di l'articulu avemu vulsutu derivà dui tipi di funzioni di perdita Perdita logistica secondu cumu e classi di l'ughjetti sò designati. Hè accadutu chì in i prublemi di classificazione cù dui classi, i classi sò denotati cum'è Masticà a regressione logistica и Masticà a regressione logistica o Masticà a regressione logistica. Sicondu a notazione, l'output avarà una funzione di perdita currispundente.

Casu 1. Classificazione di l'uggetti in Masticà a regressione logistica и Masticà a regressione logistica

Prima, quandu determinava a probabilità di un campione, in quale a probabilità di rimborsu di u debitu da u prestitu hè stata calculata in basa di fatturi è dati coefficienti. Masticà a regressione logistica, avemu applicatu a formula:

Masticà a regressione logistica

In fattu Masticà a regressione logistica hè u significatu funzioni di risposta logistica Masticà a regressione logistica per un datu vettore di pesi Masticà a regressione logistica

Allora nunda ci impedisce di scrive a funzione di probabilità di mostra cum'è seguente:

Masticà a regressione logistica

Succede chì qualchì volta hè difficiule per alcuni analisti principianti di capisce immediatamente cumu funziona sta funzione. Fighjemu 4 brevi esempi chì sbulicà tuttu:

1. se Masticà a regressione logistica (vale à dì, secondu a mostra di furmazione, l'ughjettu appartene à a classa +1), è u nostru algoritmu Masticà a regressione logistica determina a probabilità di classificà un oggettu à una classe Masticà a regressione logistica uguali à 0.9, allora stu pezzu di probabilità di mostra serà calculatu cum'è seguente:

Masticà a regressione logistica

2. se Masticà a regressione logisticae Masticà a regressione logistica, allura u calculu serà cusì:

Masticà a regressione logistica

3. se Masticà a regressione logisticae Masticà a regressione logistica, allura u calculu serà cusì:

Masticà a regressione logistica

4. se Masticà a regressione logisticae Masticà a regressione logistica, allura u calculu serà cusì:

Masticà a regressione logistica

Hè ovvi chì a funzione di probabilità serà maximizata in i casi 1 è 3 o in u casu generale - cù i valori indovinati currettamente di e probabilità di assignà un oggettu à una classe. Masticà a regressione logistica.

A causa di u fattu chì quandu si determina a probabilità di assignà un oggettu à una classa Masticà a regressione logistica Ùn sapemu solu i coefficienti Masticà a regressione logistica, allora li cercheremu. Cumu l'esitatu sopra, questu hè un prublema di ottimisazione in quale prima avemu bisognu di truvà a derivativa di a funzione di probabilità in quantu à u vettore di pesi. Masticà a regressione logistica. In ogni casu, prima hè sensu per simplificà u compitu per noi stessu: cercheremu a derivativa di u logaritmu. funzioni di probabilità.

Masticà a regressione logistica

Perchè dopu à logaritmu, in funzioni di errore logisticu, avemu cambiatu u signu da Masticà a regressione logistica nantu Masticà a regressione logistica. Tuttu hè simplice, postu chì in i prublemi di valutà a qualità di un mudellu hè abitudine di minimizzà u valore di una funzione, avemu multiplicatu u latu drittu di l'espressione per Masticà a regressione logistica è dunque, invece di maximizà, ora minimizemu a funzione.

In verità, avà, davanti à i vostri ochji, a funzione di perdita hè stata currettamente derivata - Perdita logistica per un set di furmazione cù dui classi: Masticà a regressione logistica и Masticà a regressione logistica.

Avà, per truvà i coefficienti, avemu solu bisognu di truvà a derivativa funzioni di errore logisticu è dopu, utilizendu metudi di ottimisazione numerica, cum'è a discesa di gradiente o a discesa di gradiente stochasticu, selezziunate i coefficienti più ottimali. Masticà a regressione logistica. Ma, datu u voluminu considerableu di l'articulu, hè prupostu di realizà a differenziazione nantu à u vostru propiu, o forsi questu serà un tema per u prossimu articulu cù assai aritmetica senza tali esempi detallati.

Casu 2. Classificazione di l'uggetti in Masticà a regressione logistica и Masticà a regressione logistica

L'approcciu quì serà u listessu cum'è cù e classi Masticà a regressione logistica и Masticà a regressione logistica, ma u percorsu stessu à a pruduzzioni di a funzione di perdita Perdita logistica, serà più ornatu. Cuminciamu. Per a funzione di probabilità useremu l'operatore "se... allora...". Questu hè, se Masticà a regressione logisticaL'ughjettu th appartene à a classa Masticà a regressione logistica, dopu per calculà a probabilità di u sample usemu a probabilità Masticà a regressione logistica, se l'ughjettu appartene à a classa Masticà a regressione logistica, tandu sustituemu in a probabilità Masticà a regressione logistica. Eccu ciò chì pare a funzione di probabilità:

Masticà a regressione logistica

Descrivimu nantu à e nostre dite cumu funziona. Cunsideremu 4 casi:

1. se Masticà a regressione logistica и Masticà a regressione logistica, allora a probabilità di campionamentu "andà" Masticà a regressione logistica

2. se Masticà a regressione logistica и Masticà a regressione logistica, allora a probabilità di campionamentu "andà" Masticà a regressione logistica

3. se Masticà a regressione logistica и Masticà a regressione logistica, allora a probabilità di campionamentu "andà" Masticà a regressione logistica

4. se Masticà a regressione logistica и Masticà a regressione logistica, allora a probabilità di campionamentu "andà" Masticà a regressione logistica

Hè ovvi chì in i casi 1 è 3, quandu e probabilità sò state determinate currettamente da l'algoritmu, funzione di probabilità serà maximizatu, vale à dì, questu hè esattamente ciò chì vulemu ottene. Tuttavia, stu approcciu hè abbastanza ingombrante è dopu cunsideremu una notazione più compacta. Ma prima, logaritmimu a funzione di probabilità cù un cambiamentu di signu, postu chì avà avemu da minimizzà.

Masticà a regressione logistica

Sustituemu invece Masticà a regressione logistica espressione Masticà a regressione logistica:

Masticà a regressione logistica

Simplificàmu u termu ghjustu sottu u logaritmu utilizendu tecniche aritmetiche simplici è uttene:

Masticà a regressione logistica

Avà hè u tempu di caccià l'operatore "se... allora...". Nota chì quandu un ughjettu Masticà a regressione logistica appartene à a classe Masticà a regressione logistica, dopu in l'espressione sottu u logaritmu, in u denominatore, Masticà a regressione logistica elevatu à u putere Masticà a regressione logistica, se l'ughjettu appartene à a classa Masticà a regressione logistica, tandu $e$ hè elevatu à u putere Masticà a regressione logistica. Dunque, a notazione per u gradu pò esse simplificata cumminendu i dui casi in unu: Masticà a regressione logistica. Allora funzione di errore logisticu prendrà a forma:

Masticà a regressione logistica

In cunfurmità cù e regule di logaritmu, vultemu a frazzioni è mette u segnu ".Masticà a regressione logistica"(minus) per u logaritmu, avemu:

Masticà a regressione logistica

Eccu a funzione di perdita perdita logistica, chì hè utilizatu in u settore di furmazione cù l'uggetti assignati à e classi: Masticà a regressione logistica и Masticà a regressione logistica.

Ebbè, à questu puntu pigliu u mo permessu è cuncludemu l'articulu.

Masticà a regressione logistica U travagliu precedente di l'autore hè "Purtà l'equazioni di regressione lineare in forma di matrice"

Materiali ausiliari

1. Literatura

1) Analisi di regressione applicata / N. Draper, G. Smith - 2nd ed. – M.: Finance and Statistics, 1986 (traduzzione da l'inglese)

2) Teoria di probabilità è statistiche matematiche / V.E. Gmurman - 9ª ed. - M. : Liceu, 2003

3) Teoria di probabilità / N.I. Chernova - Novosibirsk: Università Statale di Novosibirsk, 2007

4) Analitiche cummerciale: da i dati à a cunniscenza / Paklin N. B., Oreshkov V. I. - 2nd ed. — San Petruburgu : Petru, 2013

5) Data Science Data Science da zero / Joel Gras - San Pietroburgo: BHV Petersburg, 2017

6) Statistiche pratiche per i specialisti di Data Science / P. Bruce, E. Bruce - St. Petersburg: BHV Petersburg, 2018

2. Lezioni, corsi (video)

1) L'essenza di u metudu di massima probabilità, Boris Demeshev

2) Metudu di prubbabbilità massima in u casu cuntinuu, Boris Demeshev

3) Regressione logistica. Open ODS course, Yury Kashnitsky

4) Lecture 4, Evgeny Sokolov (da 47 minuti di video)

5) A regressione logistica, Vyacheslav Vorontsov

3. Fonti Internet

1) Classificazione lineari è mudelli di regressione

2) Cumu capisce facilmente a regressione logistica

3) Funzione di errore logisticu

4) Testi indipendenti è formula di Bernoulli

5) Ballata di MMP

6) Metudu di massima probabilità

7) Formule è proprietà di logaritmi

8) Perchè numeru Masticà a regressione logistica?

9) Classificatore lineare

Source: www.habr.com

Add a comment