Шағын мысал: несиені қайтармауды болжау.
6.1-Кестеде. Lending Club инвестициялық несие компаниясында жеке несие деректерінің бірнеше жазбалары ұсынылған. Lending Club инвесторлар пулын Жеке тұлғаларға жеке несиелер беретін тең құқықты несиелеудің көшбасшысы болып табылады. Талдаудың мақсаты жаңа әлеуетті несиенің нәтижесін болжау болады: өтелген қарсы қайтару
Кесте 6.1. Lending Club инвестициялық несие компаниясының несие деректерінен бірнеше жазбалар мен бағандар
Тек екі болжамды айнымалысы бар өте қарапайым модельді қарастырыңыз: dti, яғни қарыз бойынша төлемдердің кіріске қатынасы (ипотеканы қоспағанда) және payment_inc_ratio, яғни несие бойынша төлемдердің кіріске қатынасы. Екі қатынас 100-ге көбейтіледі. Белгілі екілік нәтижелері бар 200 loan 200 несиелерінің шағын жиынтығы негізінде (outcome200 болжауында берілген оның қарама - қарсылығын қайтармады) және 20-да орнатылған K, dti=22.5 және payment_inc_ratio=9 көмегімен болжанатын жаңа несиенің newloan ұпайы.
library(FNN) knn_pred <-
knn(train=loan200, test=newloan, cl=outcome200, k=20)
knn_pred == 'default'
[1] TRUE
KNN болжамы-несие қайтарылмайды.
R өзінің knn функциясына ие болғанымен, үшінші тараптың Fnn R
бағдарламалық жасақтамасы (fast nearest neighbor-жылдам көрші) үлкен деректерге жақсырақ масштабтайды және көбірек икемділік береді.
6.2 -Суретте. бұл мысалдың визуалды көрінісі берілген. Болжауға болатын жаңа несие орталықтағы квадратпен ұсынылған. Шеңберлер (қайтарылмайтын) және кресттер (сөндірілген) - бұл жаттығу деректері. Сопақ ең жақын 20 нүктенің шекарасын көрсетеді. Бұл жағдайда 14 қайтарылмайтын несие тек 6 өтелген несиемен салыстырғанда сопақ ішінде жатыр. Демек, несиенің болжамды нәтижесі қайтарылмайды.
6.2.-Сурет. Екі айнымалыны қолдана отырып, KNN несиені қайтармау алгоритмін болжау: қарыздың кіріске қатынасы және несие бойынша төлемдердің кіріске қатынасы
Қашықтықтың метрикалық көрсеткіштері
Ұқсастық (жақындық) қашықтықтың метрикалық көрсеткіші арқылы анықталады, яғни екі жазбаның қаншалықты алыс екенін өлшейтін функция
(x1 , x2, ... x p) және (u1, u2 , ... up) бір-бірінен. Екі вектор арасындағы қашықтықтың ең танымал метрикалық көрсеткіші-евклидтік қашықтық. Екі вектор арасындағы евклидтік қашықтықты өлшеу үшін екіншісінен біреуін алып тастау керек, айырмашылықтарды квадраттап, оларды қорытындылап, квадрат түбірді алу керек
Евклидтік қашықтық арнайы есептеу артықшылықтарын ұсынады. Бұл, әсіресе, үлкен деректер жиынтығы үшін өте маңызды, өйткені KNN k×n жұптық салыстыруды ұсынады, мұндағы n — жолдар саны.
Сандық мәліметтер үшін тағы бір қабылданған метрика-Манхэттен қашықтығы (немесе Минковский қашықтығы):
Евклидтік қашықтық екі нүкте арасындағы түзу сызыққа сәйкес келеді (олар айтқандай, "қарға қалай ұшады"). Манхэттен қашықтығы-бір уақытта бір бағытта қиылысатын екі нүкте арасындағы қашықтық (мысалы, тікбұрышты қалалық блоктар бойымен қозғалу). Осы себепті Манхэттен қашықтығы пайдалы жуықтау болып табылады, егер ұқсастық жолдағы нүктелік уақыт ретінде анықталса. Екі вектор арасындағы қашықтықты өлшеуде салыстырмалы түрде үлкен шкала бойынша өлшенетін айнымалылар (белгілер) бұл өлшемде басым болады. Мысалы, несие деректері үшін қашықтық тек ондаған немесе жүздеген мыңмен өлшенетін кіріс пен несие сомасының айнымалыларының функциясы болар еді. Салыстыру кезінде қатынастарға негізделген айнымалылар іс жүзінде жойылады. Бұл мәселе деректерді стандарттау арқылы шешіледі
Достарыңызбен бөлісу: |