$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Zbieranie danych
Badanie to wykorzystało zestaw danych Loan Approval Prediction Dataset dostępny na Kaggle. Zbiór danych został wyodrębniony w lutym 2025 roku i składa się z 4269 rekordów mających na celu ocenę danych kredytowych oraz prognozowanie wyników zatwierdzania kredytów. Zawiera 12 kolumn zawierających szczegółowe informacje o profilu demograficznym kandydatów, takich jak status zatrudnienia, osoby na utrzymaniu, osoby na utrzymaniu, osoby samozatrudnione, kwota pożyczki, okres trwania pożyczki, wyniki CIBIL, historia finansowa oraz specyficzne cechy kredytowe. Zbiór danych został zaimportowany za pomocą biblioteki Pandas i wizualnie sprawdzony za pomocą df.head (), aby zrozumieć jego strukturę i jakość.
Wstępne przetwarzanie danych
Podczas fazy wstępnego przetwarzania danych pierwszym krokiem było usunięcie kolumny identyfikatora (loan_id) ze względu na brak wartości predykcyjnej i potencjał wprowadzania szumu do modelu. Drugi etap polegał na kodowaniu etykiet, gdzie zmienne kategoryczne, takie jak wykształcenie, osoby samozatrudnione i loan_status, były przekształcane w reprezentacje liczbowe. Transformacja ta została przeprowadzona za pomocą Label Encoder z modułu sklearn.preprocessing. Konkretnie, edukacja była kodowana jako 0 dla Graduate i 1 dla Not Graduate; self_employed 0 oznaczająca Nie i 1 oznaczającą Tak, a loan_status – zmienną docelową, 0 – Niezatwierdzone i 1 – Zatwierdzone. Konwersje te były konieczne, aby zapewnić kompatybilność z modelami uczenia maszynowego, które wymagają numerycznych wejść, szczególnie w aplikacjach cyfrowych pożyczek. Cechy zostały oddzielone od zmiennej docelowej za pomocą X=df.drop (["loan_status"], osi=1) oraz y=df ["loan_status]. Takie rozwiązanie stanowiło kompleksową podstawę do analizy czynników wpływających na decyzje dotyczące zatwierdzania kredytów, wykorzystując historyczne zapisy pożyczkowe do trenowania wielu modeli uczenia maszynowego zespołowego. Modele te miały na celu poprawę ogólnej dokładności i odporności poprzez połączenie przewidywającej siły wielu klasyfikatorów.
Przetworzony zbiór danych został następnie podzielony na podzbiory treningowe i testowe za pomocą funkcji train_test_split z sklearn.model_selection, przy czym 80% danych wykorzystywano do treningu, a 20% do testowania. Zapewniało to, że model był trenowany na wystarczająco dużej części danych, jednocześnie zachowując reprezentatywną próbę do oceny wydajności. Po oczyszczeniu, ustrukturyzowaniu i statystycznym zbadaniu zbioru danych, położono fundament pod wdrożenie solidnych ram uczenia maszynowego, mających na celu zwiększenie dokładności predykcyjnej klasyfikacji zatwierdzania kredytów. Rozwój modelu przeprowadzono przy użyciu czterech algorytmów uczenia maszynowego opartego na zespole zespołowym: Gradient Boosting Model, AdaBoost, Efficient Gradient Boosting Model oraz Extra Trees Classifier. Zostały one wybrane ze względu na udowodnioną skuteczność w zadaniach klasyfikacyjnych obejmujących dane strukturalne, tabelaryczne. Gradient Boosting Model Classifier, zaimplementowany z biblioteki Gradient Boosting Model, został uruchomiony z domyślnymi ustawieniami (iteracje=1000, tempo uczenia=0,1, głębokość=6, verbose=False). Był trenowany w używaniu. dopasowanie (x_train, y_train) i oceniano za pomocą .predict (X_test). Chociaż Model Gradient Boosting automatycznie obsługuje kodowanie danych kategorycznych, funkcja ta nie została wykorzystana, ponieważ dane zostały już zakodowane etykietami. AdaBoost Classifier (Adaptive Boosting, który poprawia słabych uczniów) został zaimplementowany za pomocą sklearn-ensemble. AdaBoost Classifier został skonfigurowany z n_estimators=100 i learning_rate=1,0, używając decyzyjnego stumps jako domyślnego estymatora bazowego. Był trenowany i oceniany w podobny sposób, co zapewniało odporność poprzez iteracyjne ważenie błędnie sklasyfikowanych przypadków. Efficient Gradient Boosting, zaimplementowany za pomocą biblioteki Efficient Gradient Boosting Model (LGBMClassifier), został skonfigurowany z n_estimators=100, learning_rate=0,1 oraz max_depth=-1 (nieograniczona głębokość drzewa). Model ten, znany ze swojej szybkości i efektywności, szczególnie wyróżnia się na dużych zbiorach danych o cechach o wysokich wymiarach, wykorzystując zoptymalizowane drzewa decyzyjne zwiększające gradient.
Na koniec użyto klasyfikatora ExtraTrees ze sklearn.ensemble z n_estimators=100 i criterion="gini" jako strategią rozdzielania. W przeciwieństwie do Random Forest, Extra Trees wprowadza dodatkową losowość poprzez losowe wybieranie punktów cięcia, co pomaga zmniejszyć wariancję modelu i poprawić uogólnienie. Zespół przeprowadzono za pomocą Stacking Classifier scikit-learn, który zwiększa uogólnienie poprzez agregację prognoz uczniów bazowych. Każdy model był oceniany za pomocą standardowych wskaźników klasyfikacji, w tym dokładności, precyzji, wyniku F1, analizy błędów oraz macierzy pomyłek. Wskaźniki te zostały obliczone za pomocą funkcji z modułu sklearn.metrics, aby zapewnić ustandaryzowane porównanie wydajności we wszystkich modelach.
Model najlepiej działający (oparty na dokładności i wyniku F1) został zapisany do wdrożenia przy użyciu biblioteki Python. dump(model, "best_model.pkl"), zapewniając, że wytrenowany model może być ponownie używany bez potrzeby ponownego trenowania. Aby zasymulować rzeczywiste zastosowanie, stworzono przykładową tablicę wejściową zawierającą 11 cech za pomocą NumPy i przekazano ją do funkcji modelu .predict (). Na przykład wektor wejściowy [[0, 1, 1,4100000, 12200000, 8, 417, 27000000, 2200000, 88000000, 3300000]] zwracał prognozę 1, co wskazuje na zatwierdzenie pożyczki. Wszystkie eksperymenty prowadzono w środowisku Python 3.10 za pomocą Google Notebook na Kaggle. Rozwój i ocena modeli były prowadzone przy użyciu bibliotek scikit-learn (v1.3), Gradient Boosting Model oraz Efficient Gradient Boosting Model. Wszystkie hiperparametry były wyraźnie dokumentowane, a domyślne wartości jasno określano, gdzie to było stosowne. Procedury kodowania podążały za podejściem opisanym przez Pedregosę i zostały zaimplementowane w scikit-learn46. Ta kompleksowa i przejrzysta metodologia zapewnia, że protokół eksperymentalny jest w pełni powtarzalny i zgodny z rygorystycznymi standardami akademickimi w badaniach nad uczeniem maszynowym.
Struktura proponowanej metodologii, obejmująca fazę przygotowania danych, sekcję cech, trening modelu i ocenę, przedstawiona jest na Rysunku 1.
Badania wprowadzają ramy uczenia zespołu stacking, które łączą możliwości czterech potężnych klasyfikatorów: Gradient Boosting Model, AdaBoost, Efficient Gradient Boosting Model oraz Extra Trees, aby przewidywać decyzje dotyczące zatwierdzania kredytów na podstawie historycznych zapisów finansowych. Łącząc strategie boostingu i bagowania w architekturze modelu stacked46. Podejście to skutecznie przezwycięża indywidualne niedociągnięcia tych modeli, takie jak stronniczość i wariancja, co przyczynia się do poprawy dokładności predykcji i uogólnienia modelu. Każdy uczący się bazowy wnosi unikalne mocne strony. Model Gradient Boosting jest efektywny z funkcjami kategorycznymi, zaprojektowany do obsługi cech o wysokiej życzliwości i wewnętrznie wykonuje kodowanie celów za pomocą uporządkowanego boostingu47. To zapobiega nadmiernemu dopasowaniu, zapewniając, że w obliczeniach statystyki wykorzystywane są tylko dane z przeszłości. W wzorze
,
Każdy ht (x) reprezentuje drzewo decyzyjne wytrenowane na resztach poprzedniego modelu, a nt oznacza wkład w naukę specyficzną dla poszczególnych kroków. AdaBoost, czyli Adaptive Boosting, koryguje wagę każdego przypadku podczas treningu i skupia się na wcześniej błędnie sklasyfikowanych punktachdanych 48. W wzorze

αt odzwierciedla wyniki t-tego słabego ucznia h(x), kładąc większy nacisk na wcześniej błędnie sklasyfikowane próbki. Efektywny Model Gradient Boosting Zawiera gradientowe jednostronne próbkowanie (GOSS) oraz ekskluzywne pakiety funkcji dla szybszej wydajności. Efficient Gradient Boosting oferuje wysoką szybkość i wydajność na dużych skalach danych49.

ft(xi) oznacza nowe drzewo decyzyjne dodane w celu minimalizacji strat l(•), natomiast Ω(ft) to wyraz regularizacyjny . W przeciwieństwie do algorytmów wzmacniających algorytmy, Extra Trees zmniejsza wariancję poprzez dodanie losowości w podziałach drzewa decyzyjnegoo 50. Opiera się na zasadach bagowania, ale wprowadza dodatkową losowość podczas podziału węzłów do reguły predykcji

Uśrednia wyniki M niezależnie trenowanych drzew losowych. Dla każdego podziału drzewa Extra wybierają losowe progi dla cech i wybierają najlepsze spośród nich, zmniejszając wariancję i oferując wysoką różnorodność między drzewami, co poprawia uogólnienie. Modele te są łącznie integrowane przez klasyfikator stosowania, który uczy się optymalnie łączyć ich wyniki, aby zdecydować, czy pożyczka powinna zostać zatwierdzona. Ramy zostały ocenione według wspólnych metryk klasyfikacji i przetestowane na próbkach danych wejściowych na żywo, co wykazało jego praktyczne znaczenie w cyfrowych środowiskach kredytowych51. Modele te są łączone za pomocą klasyfikatora stacking, który uczy się idealnie łączyć ich wyniki w celu określenia wyników akceptacji kredytów. Wydajność modelu oceniano za pomocą ważnych miar klasyfikacji, takich jak dokładność, precyzja, przypomnienie, ocena F1 oraz AUC-ROC, a także macierzy pomyłek, aby określić jego zdolność do redukcji błędów zarówno Typu I, jak i Typu II. Aby utrzymać równowagę klas, zastosowano stratyfikowany podział pociąg-test 80:20, z pięciokrotną walidacją krzyżową, która zapewniła odporność i ograniczyła zmienność próby. Ponadto model został oceniony na podstawie realistycznych profili wnioskodawców o pożyczkę, które zawierały takie informacje jak historia kredytowa, dochody, status zatrudnienia oraz kwota pożyczki, co dało binarne oceny i oceny prawdopodobieństwa. Ten dwuetapowy test demonstruje skuteczność, uczciwość i praktyczność modelu w kontekstach cyfrowego kredytowania w czasie rzeczywistym. Nowość tej pracy tkwi w hybrydowym projekcie zespołowym dostosowanym do oceny kredytowej, co czyni ją solidnym, interpretowalnym i powtarzalnym modelem dla nowoczesnych platform finansowych52 .