koneoppimisessa tarvitaan paljon dataa, joten joskus on järkevää yhdistää todellinen data simuloituun dataan oikeiden kaavojen löytämiseksi datasta tai pienoismallien rakentamiseksi.

keskiraja sanoo, että mitä suurempi aineiston koko on, sen parempi, koska populaation keskiarvo likimain approksimoi otoksen keskiarvoa otoksen koon kasvaessa todella suureksi. Tuottamalla toistettuja kopioita otosaineistosta voimme arvioida otoksen keskiarvon eri populaatioissa varmistaaksemme, että keskiarvo on vakaa. Voimme myös arvioida keskiarvon ennustuksen varianssi (epävarmuus).

jotta voidaan simuloida tietystä näyteaineistosta saatavaa tietoa, meidän on kyettävä tunnistamaan otosaineistossa olevat kuviot ja meillä on myös jonkin verran tietoa ominaisuuksista ja niiden jakautumisesta. Esimerkiksi, jos minulla on pieni näyte miesten korkeuksista, ja tiedän, että korkeudet noudattavat normaalia jakaumaa, voisin luoda aineiston miesten korkeuksista käyttämällä seuraavia:

mu = mean(male_heights)sd = sd(male_heights)N = 1000simulated_data = rnorm(N, mu,sd)

tässä artikkelissa käsitellään sitä, miten Monte-Carlo (MC) – simulaatiota voidaan käyttää tuottamaan likimääräisiä jäljennöksiä näytetietokannasta. Tämän jälkeen koulutetaan jokainen näistä tietokokonaisuuksista. Tämän jälkeen mallin kokonaissuorituskyky lasketaan suorittamalla datalohkojen kokonaiskeskiarvo, mukaan lukien todellinen ja simuloitu data.

Johdanto: lainan tilan ennustaminen on tärkeä ongelma riskinarvioinnissa. Pankin tai rahoitusorganisaation on pystyttävä arvioimaan siihen liittyvä riski ennen lainan myöntämistä asiakkaalle. Datatiede ja ennakoiva analytiikka ovat tärkeässä roolissa rakennettaessa malleja, joita voidaan käyttää lainan maksukyvyttömyyden todennäköisyyden ennustamiseen. Tässä projektissa, olemme mukana laina_timing.csv-tietokokonaisuus, joka sisältää 50000 datapistettä. Jokainen datapiste edustaa lainaa, ja kaksi ominaisuutta esitetään seuraavasti:

  1. sarakkeeseen, jonka otsikko on ”päiviä lähdön jälkeen”, merkitään niiden päivien lukumäärä, jotka kuluivat lähdön ja tietojen keruun välillä.
  2. sellaisten lainojen osalta, jotka perittiin pois ennen tietojen keräämistä, sarakkeeseen, jonka otsikkona on ”päivät luottoriskin vähentämisestä luottoriskin vähentämiseen”, merkitään niiden päivien lukumäärä, jotka kuluivat luottoriskin vähentämisen ja luottoriskin vähentämisen välillä. Kaikkien muiden lainojen osalta tämä sarake on tyhjä.

teknisten termien määritelmä

  1. Originointi: tällä tarkoitetaan päivämäärää, jona lainanottaja saa lainan lainanantajalta.
  2. lyhennysvapaan (lainan maksukyvyttömyys) tila: Tämän jälkeen lainanottaja suorittaa säännöllisiä lyhennyksiä, kunnes lainanottaja lopettaa maksujen suorittamisen, tyypillisesti taloudellisten vaikeuksien vuoksi, ennen laina-ajan päättymistä. Tätä tapahtumaa kutsutaan charge-offiksi,ja lainan sanotaan sitten veloittaneen tai olevan maksukyvytön.
  3. nykyinen tai aktiivinen tilanne: lainanottaja jatkaa takaisinmaksua koko laina-ajan. Tässä vaiheessa velka on maksettu kokonaan takaisin.
  4. laina-aika: ajanjakso, jonka aikana lainasopimus on voimassa ja jonka päättyessä tai sitä ennen laina on joko maksettava takaisin tai neuvoteltava uudelleen toiselle kaudelle. Tässä esimerkissä harkitsemme lainaa, jonka kesto tai kesto on 3 vuotta.

projektin tavoite: projektin tavoitteena on käyttää datatieteen tekniikoita arvioidakseen, mikä osuus näistä lainoista on (50 000 asiakasrekisteriä laina_timingissä.csv dataset) on veloitettu 3 vuoden laina-aikana.

tämän artikkelin aineisto ja R-koodi voidaan ladata tästä arkistosta: https://github.com/bot13956/Monte_Carlo_Simulation_Loan_Status.

tuo tarvittavat kirjastot

library(readr)
library(tidyverse)
library(broom)
library(caret)

tuo aineisto ja valmistele aineisto analysointia varten

df<-read_csv("loan_timing.csv",na="NA")names(df)=c("origination","chargeoff")# partition data set into two: default (charged off ) and currentindex<-which(!(df$chargeoff=="NA"))default<-df%>%slice(index)current<-df%>%slice(-index)

Esitietoanalyysi

A) todellinen aineisto

# Plot of days to charge-off vs. days since origination for defaulted loans using actual datadefault%>%ggplot(aes(origination,chargeoff))+geom_point()+xlab('days since origination')+ ylab('days to charge-off')+ggtitle("days to charge-off vs. days since origination")+theme(plot.title = element_text(color="black", size=12, hjust=0.5, face="bold"),axis.title.x = element_text(color="black", size=12, face="bold"),axis.title.y = element_text(color="black", size=12, face="bold"),legend.title = element_blank())

B) simuloitu aineisto

# Monte Carlo Simulation of Defaulted Loansset.seed(2)N <- 3*365 # loan duration in daysdf_MC<-data.frame(u=round(runif(15500,0,N)),v=round(runif(15500,0,N)))df_MC<-df_MC%>%filter(v<=u)df_MC<-df_MC%>%filter(u<=730 & v<=730) #select loans within first 2 yearsdf_MC%>%ggplot(aes(u,v))+geom_point()+xlab('days since origination')+ylab('days to charge-off')+ggtitle("MC simulation of days to charge-off vs. days since origination")+theme(plot.title = element_text(color="black", size=12, hjust=0.5, face="bold"),axis.title.x = element_text(color="black", size=12, face="bold"),axis.title.y = element_text(color="black", size=12, face="bold"),legend.title = element_blank())

todellinen ja MC-simulointi lataukseen kuluvista päivistä ja lähdön jälkeisistä päivistä.

koska lainan perintään liittyy sattumanvaraisuutta, MC-simulointi antaa hyvän likiarvon maksuhäiriöisten lainojen jakamiselle.

ennustukset: Koska olemme osoittaneet, että kahden ensimmäisen vuoden (eli 0-730 päivän) alkuunpanon jälkeisten päivien suhdetta voidaan approksimoida MC-simulaatiolla, voimme ennustaa lainojen osuuden, joka veloitetaan siihen mennessä, kun kaikki niiden 3 vuoden ehdot ovat valmiit MC-simulaatiolla.

perittyjen lainojen kokonaismäärä aineistossamme on 3 305. Tällä hetkellä voimassa olevia lainoja on siis 46 695. Näistä aktiivilainoista tietty osa tulee maksukyvyttömäksi kolmen vuoden aikana. Arvioidaksemme maksuhäiriöisten lainojen kokonaisosuutta simuloimme maksuhäiriöiset lainat, joiden maksu-ja alkamispäivät kattavat koko laina-ajan (eli 0-1095 päivää), sitten laskimme asianmukaisella skaalauksella lainojen osuuden, joka on veloitettu pois 3 vuoden ajanjakson jälkeen eli 1095 päivää.

# Predicting fraction of these loans will have charged off by the time all of their 3-year term is finished.set.seed(2)B<-1000fraction<-replicate(B, {df2<-data.frame(u=round(runif(50000,0,N)),v=round(runif(50000,0,N)))df2<-df2%>%filter(v<=u)b2<-(df2%>%filter(u<=730 & v<=730))total<-(nrow(df2)/nrow(b2))*nrow(default)100.0*(total/50000.0)})
mean(fraction)# Histogram of total fraction of charged off loansfdf<-data.frame(fraction=fraction)fdf%>%ggplot(aes(fraction))+geom_histogram(color="white",fill="skyblue")+xlab('fraction of charged off loans after 3-year term')+ylab('count')+ggtitle("Histogram of total fraction of charged off loans")+theme(
plot.title = element_text(color="black", size=12, hjust=0.5, face="bold"),
axis.title.x = element_text(color="black", size=12, face="bold"),
axis.title.y = element_text(color="black", size=12, face="bold"),
legend.title = element_blank()
)# Calculate Confidence Interval of Percentage of Defaulted Loans after 3-year termmean<-mean(fraction)sd<-sd(fraction)confidence_interval<-c(mean-2*sd, mean+2*sd)confidence_interval

luomalla n = 1000 satunnaiskokeita saimme seuraavan jakauman maksuhäiriöisten lainojen 3-vuotiselle jaksolle:

kuva 6: Histogrammi 3 vuoden jakson jälkeen veloitettujen lainojen osuudelle käyttäen N = 1000 näytettä.

laskelmiemme perusteella 3 vuoden laina-ajan jälkeen veloitettujen lainojen 95 prosentin luottamusväli on vastaavasti 14,8% + / – 0,2%. Jos siis 50 000 lainaa annettiin 3 vuoden laina-ajalla, noin 15 prosenttia näistä lainoista jää maksamatta.

päätelmät: olemme esittäneet yksinkertaisen mallin, joka perustuu MC-simulaatioon ja jonka avulla voidaan ennustaa lainojen osuus, joka jää maksamatta 3 vuoden laina-ajan päättyessä. Monte Carlo-simulaatio on tärkeä menetelmä, jota voidaan käyttää ohjaavassa analytiikassa määräävässä toimintatavassa tapauksissa, joissa aineisto on luonteeltaan hyvin stokastinen.

tämän artikkelin aineisto ja R-koodi voidaan ladata tästä arkistosta: https://github.com/bot13956/Monte_Carlo_Simulation_Loan_Status.

Vastaa

Sähköpostiosoitettasi ei julkaista.

lg