99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務建站與企業(yè)官網運營的一線實戰(zhàn)洞察。

Python實戰(zhàn):從零構建金融風控預測模型,解決數據不平衡與特征工程難題

Python實戰(zhàn):從零構建金融風控預測模型,解決數據不平衡與特征工程難題 簡介機器學習中的分類問題是預測建模的核心任務之一旨在根據輸入特征將樣本劃分到預定義的類別中。其基本原理是通過算法學習歷史數據中的模式構建一個從特征到類別標簽的映射函數。在金融科技領域分類模型的技術價值尤為突出它能夠自動化、精準化地處理海量數據識別復雜非線性關系從而支持關鍵業(yè)務決策。典型的應用場景包括信用評分、欺詐檢測和客戶流失預警等。本文聚焦于金融信貸中的個貸違約預測這是一個典型的二分類問題但面臨數據高度不平衡的挑戰(zhàn)。文章深入探討了如何使用SMOTE等過采樣技術和調整類別權重來應對這一難題并詳細介紹了基于業(yè)務理解的特征工程方法如構建負債收入比等衍生特征以提升模型對風險客戶的識別能力。1. 項目緣起從業(yè)務痛點到一個Python預測模型的誕生在金融信貸業(yè)務里最讓風控和業(yè)務部門頭疼的事情之一就是“壞賬”。你放出去的貸款總有一部分人因為各種原因還不上錢這筆錢就成了銀行的損失。傳統(tǒng)上銀行依賴專家經驗、規(guī)則引擎和簡單的統(tǒng)計模型來做審批和預警但面對海量的客戶數據和復雜的還款行為這些方法越來越力不從心。我最近用業(yè)余時間基于公開可獲取的思路和一份模擬數據集用Python完整地走了一遍“個貸違約預測”的建模流程。這不僅僅是一個技術Demo它更像是一次對信貸風控核心邏輯的深度還原和實操演練。通過這個項目你能清晰地看到如何從一堆雜亂的客戶信息數據開始一步步清洗、分析、構建特征最終訓練出一個能相對準確判斷客戶“好壞”的機器學習模型。整個過程涉及數據科學、機器學習以及金融風控的交叉知識對于想進入金融科技領域的數據從業(yè)者或者對信貸業(yè)務邏輯感興趣的技術人員來說是一次絕佳的動手機會。2. 理解風控預測的核心什么是個貸違約預測在深入代碼之前我們必須先搞清楚我們要解決的究竟是什么問題。這決定了我們后續(xù)所有技術選型和評估標準。2.1 預測的本質一個二分類問題個貸違約預測本質上是一個二分類Binary Classification問題。我們的目標是為每一個貸款申請客戶或在貸客戶打上一個標簽“好客戶”會正常還款或“壞客戶”會違約。在建模時我們通常將“違約”定義為正例Positive Class 標簽為1將“正?!倍x為負例Negative Class 標簽為0。這樣模型輸出的就是一個介于0到1之間的概率值表示該客戶違約的可能性有多大。注意定義誰是正例很關鍵它直接影響模型評估指標的選擇。在風控中我們更關心能否準確地抓住“壞人”違約者所以通常將“違約”設為正例。2.2 業(yè)務目標與模型目標的銜接模型預測概率本身不是終點它必須服務于業(yè)務決策。常見的業(yè)務應用場景包括貸前審批在放款前根據模型預測的違約概率結合其他規(guī)則決定是否批準貸款、以及批準多少額度、什么利率。這時模型需要一個閾值Threshold。例如設定閾值為0.3那么預測概率高于0.3的申請將被拒絕或進入人工復核。貸中監(jiān)控對于已放款的客戶定期如每月用其最新的行為數據如還款記錄、消費行為通過模型重新計算違約概率對概率升高的客戶提前預警采取催收或風險化解措施??蛻舴謱痈鶕L險評分將客戶分為不同等級如A、B、C、D級用于差異化營銷或風險定價。因此我們構建的模型最終要能輸出一個穩(wěn)定、可解釋的風險評分并能通過調整閾值來平衡業(yè)務中的“誤殺”拒絕了好客戶損失利息收入和“漏殺”通過了壞客戶造成本金損失。2.3 項目數據集的構成與挑戰(zhàn)一個典型的個貸違約預測數據集通常會包含以下幾類信息這些也是我們后續(xù)特征工程的主要來源客戶基本信息年齡、職業(yè)、教育程度、婚姻狀況、居住城市等。這些是靜態(tài)的、相對穩(wěn)定的信息。財務狀況收入水平、負債收入比、資產情況、歷史信用記錄長度等。貸款信息本次申請的貸款金額、期限、利率、貸款用途、擔保方式等。歷史信用表現(xiàn)如果有過去信用卡的逾期次數、逾期天數、其他貸款的還款記錄等。這是最具預測力的信息但往往難以獲取。外部數據如征信分、多頭借貸信息、消費行為數據等。本項目使用的模擬數據集雖然并非真實銀行數據但會盡可能模擬上述字段的結構。我們面臨的典型挑戰(zhàn)包括數據不平衡違約客戶正例的數量通常遠少于正常客戶負例比例可能達到1:99甚至更懸殊。直接在這種數據上訓練模型會傾向于把所有樣本都預測為“正常”導致對違約客戶完全失效。特征缺失客戶信息填寫不完整存在大量空值。特征異常收入為0或極高年齡超過合理范圍等。數據泄露不小心使用了未來才能知道的信息如“是否最終違約”衍生出的指標作為特征導致模型在訓練時表現(xiàn)虛假的優(yōu)秀上線后完全失效。3. 環(huán)境搭建與核心工具鏈選型工欲善其事必先利其器。一個高效、穩(wěn)定且易于復現(xiàn)的分析環(huán)境是項目成功的基礎。下面是我選擇的工具鏈及理由。3.1 Python環(huán)境管理Anaconda的絕對優(yōu)勢我強烈推薦使用Anaconda來管理Python環(huán)境尤其是數據科學項目。理由如下隔離性可以為這個項目創(chuàng)建一個獨立的環(huán)境例如命名為loan_risk里面只安裝項目所需的包避免與系統(tǒng)或其他項目的包版本沖突。包管理簡便通過conda install命令可以輕松安裝大多數科學計算包如numpy, pandas, scikit-learn它會自動處理復雜的C庫依賴這是pip有時做不到的。集成性自帶Jupyter Notebook/Lab非常適合進行探索性數據分析EDA和交互式建模。創(chuàng)建環(huán)境的命令如下# 創(chuàng)建一個名為loan_risk的Python3.9環(huán)境 conda create -n loan_risk python3.9 # 激活環(huán)境 conda activate loan_risk3.2 核心庫介紹與安裝在激活的loan_risk環(huán)境中我們需要安裝以下核心庫# 使用conda安裝基礎科學計算包 conda install numpy pandas scipy matplotlib seaborn jupyter # 使用pip安裝機器學習相關庫conda通道可能版本較舊 pip install scikit-learn xgboost lightgbm catboost imbalanced-learn # 用于模型解釋 pip install shap # 用于生成分析報告可選但推薦 pip install pandas-profiling ydata-profilingpandas numpy數據操作的基石。pandas的DataFrame是處理表格數據的標準容器numpy提供高效的數值計算。scikit-learn機器學習的“瑞士軍刀”。提供了從數據預處理標準化、編碼、特征選擇、到模型訓練邏輯回歸、隨機森林、評估交叉驗證、ROC曲線的全套工具。它是本項目的主力。XGBoost/LightGBM/CatBoost三大梯度提升樹GBDT框架。它們在結構化數據的表格分類任務上尤其是金融風控領域表現(xiàn)通常優(yōu)于傳統(tǒng)的隨機森林或邏輯回歸是當前競賽和工業(yè)界的首選。我會在后續(xù)對比它們的使用。imbalanced-learn專門處理不平衡數據集的庫。提供了過采樣如SMOTE、欠采樣、以及結合采樣等多種策略是解決風控數據不平衡問題的利器。shap模型解釋領域的王牌工具??梢詫碗s的樹模型預測結果分解到每個特征的貢獻度讓我們知道模型是“憑啥”做出判斷的這對于通過風控模型評審至關重要。matplotlib seaborn數據可視化。Seaborn基于matplotlib提供了更美觀、更簡單的統(tǒng)計圖形接口。3.3 項目目錄結構規(guī)劃一個清晰的項目結構能極大提升協(xié)作效率和代碼可維護性。建議按如下方式組織loan_default_prediction/ ├── data/ # 存放所有數據 │ ├── raw/ # 原始數據只讀 │ ├── processed/ # 清洗處理后的數據 │ └── external/ # 外部數據如有 ├── notebooks/ # Jupyter Notebook用于EDA和實驗 │ ├── 01_eda.ipynb │ ├── 02_feature_engineering.ipynb │ └── 03_model_experiment.ipynb ├── src/ # 源代碼模塊化 │ ├── __init__.py │ ├── data_preprocessing.py │ ├── feature_engineering.py │ ├── modeling.py │ └── utils.py ├── models/ # 保存訓練好的模型文件.pkl或.joblib ├── reports/ # 生成的分析報告、圖表 ├── config.yaml # 配置文件數據庫連接、路徑、參數等 ├── requirements.txt # 項目依賴包列表 └── README.md # 項目說明文檔這種結構將數據、探索性代碼、生產代碼、產出物清晰分離。src下的模塊化代碼最終可以被一個主腳本如train.py調用實現(xiàn)從數據到模型的一鍵化訓練。4. 數據探索性分析用眼睛“看見”風險在動任何模型之前我們必須深入了解數據。探索性數據分析EDA的目標是發(fā)現(xiàn)數據的特點、問題以及潛在的規(guī)律。這個過程我通常在Jupyter Notebook中完成。4.1 數據加載與初窺首先使用pandas加載數據集假設為CSV格式文件loan_data.csv。import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns sns.set_style(whitegrid) # 設置顯示所有列 pd.set_option(display.max_columns, None) # 加載數據 df pd.read_csv(./data/raw/loan_data.csv) print(f數據集形狀: {df.shape}) print(df.head()) print(df.info()) print(df.describe())df.info()會告訴我們每列的非空值數量、數據類型是發(fā)現(xiàn)缺失值的第一步。df.describe()則展示數值型特征的統(tǒng)計摘要均值、標準差、分位數等能快速發(fā)現(xiàn)異常值比如年齡為200歲。4.2 目標變量分布直面不平衡現(xiàn)實接下來首要任務是查看目標變量假設列名為is_default的分布。target_dist df[is_default].value_counts(normalizeTrue) print(f目標變量分布:\n{target_dist}) plt.figure(figsize(6,4)) sns.countplot(xis_default, datadf) plt.title(Distribution of Loan Default (0No, 1Yes)) plt.show()如果違約比例is_default1遠低于10%我們就確認了這是一個嚴重不平衡數據集。這是風控數據的常態(tài)也決定了我們不能用準確率Accuracy作為核心評估指標而應關注精確率Precision、召回率Recall和F1-Score尤其是召回率我們抓住了多少比例的違約客戶。4.3 單變量與多變量分析單變量分析查看每個特征的分布。對于連續(xù)型特征如收入、貸款金額繪制直方圖Histogram或核密度估計圖KDE查看其分布形態(tài)是否偏態(tài)、是否有異常值。fig, axes plt.subplots(2, 3, figsize(15, 8)) num_cols [income, loan_amount, debt_to_income_ratio, credit_history_length, age, loan_term] for idx, col in enumerate(num_cols): ax axes[idx//3, idx%3] sns.histplot(df[col], kdeTrue, axax) ax.set_title(fDistribution of {col}) plt.tight_layout() plt.show()對于類別型特征如職業(yè)、教育程度繪制柱狀圖查看各類別的樣本數量。同時可以計算每個類別下違約率的差異初步判斷該特征是否與違約相關。# 分析‘education’與違約的關系 edu_default_rate df.groupby(education)[is_default].mean().sort_values(ascendingFalse) print(edu_default_rate) edu_default_rate.plot(kindbar) plt.title(Default Rate by Education Level) plt.ylabel(Default Rate) plt.show()多變量分析相關性分析計算數值特征之間的皮爾遜相關系數并繪制熱力圖。這有助于發(fā)現(xiàn)高度相關的特征后續(xù)可以考慮去除或合并以降低模型復雜度、避免多重共線性。plt.figure(figsize(12, 8)) # 選擇數值型列 numeric_df df.select_dtypes(include[np.number]) correlation_matrix numeric_df.corr() sns.heatmap(correlation_matrix, annotTrue, fmt.2f, cmapcoolwarm, center0) plt.title(Correlation Matrix of Numerical Features) plt.show()特征與目標的關系對于重要的連續(xù)特征可以繪制箱線圖Boxplot或小提琴圖Violin Plot按違約與否分組觀察其特征分布的差異。plt.figure(figsize(10, 6)) sns.boxplot(xis_default, ydebt_to_income_ratio, datadf) plt.title(Debt-to-Income Ratio vs. Default Status) plt.show()如果違約組和非違約組在某個特征上的分布有顯著差異那么這個特征很可能是一個強預測因子。4.4 發(fā)現(xiàn)數據問題并記錄通過EDA我們可能會發(fā)現(xiàn)缺失值某些特征如annual_income存在大量空值。異常值age列中出現(xiàn)0或150等不合理數值income列中有個別極大值可能是錄入錯誤或特殊富豪客戶。數據不一致employment_length列中有的寫“5 years”有的寫“5”需要統(tǒng)一。類別不平衡某些類別特征如job_type的某個類別樣本極少。潛在泄露特征是否存在如days_past_due已逾期天數這類在貸前根本不可能知道的信息。將這些問題一一記錄它們是下一步數據預處理和特征工程的輸入。5. 數據預處理與特征工程將原始數據轉化為模型“語言”原始數據就像未經加工的礦石特征工程就是冶煉和提純的過程目的是提取出對預測目標最有用的信息。這一步直接決定了模型性能的上限。5.1 缺失值處理策略缺失值不能直接丟給模型必須處理。策略因特征類型和缺失原因而異連續(xù)型特征均值/中位數/眾數填充最常用。如果數據分布對稱用均值如果存在偏態(tài)或異常值用中位數更穩(wěn)健。對于風控數據我通常優(yōu)先使用中位數填充因為它對異常值不敏感。from sklearn.impute import SimpleImputer # 對收入用中位數填充 median_imputer SimpleImputer(strategymedian) df[income] median_imputer.fit_transform(df[[income]])基于模型的填充用其他特征預測缺失值。更復雜但可能更準確。例如用年齡、職業(yè)、教育程度來預測收入??梢允褂肒NN或隨機森林回歸。增加缺失指示器創(chuàng)建一個新的布爾特征標記該位置是否缺失。有時“缺失”本身也是一種信息例如拒絕填寫收入可能意味著收入不穩(wěn)定。類別型特征單獨作為一個類別如‘Unknown’填充。用眾數出現(xiàn)最頻繁的類別填充。5.2 異常值檢測與處理異常值可能是錯誤也可能是特殊但真實的個案如超高凈值客戶。粗暴刪除可能損失信息。檢測方法標準差法假設數據服從正態(tài)分布將超出均值±3倍標準差的值視為異常。但金融數據常不服從正態(tài)分布。分位數法IQR更穩(wěn)健。計算第一四分位數Q1和第三四分位數Q3定義異常值為小于Q1 - 1.5*IQR或大于Q3 1.5*IQR的值。Q1 df[loan_amount].quantile(0.25) Q3 df[loan_amount].quantile(0.75) IQR Q3 - Q1 lower_bound Q1 - 1.5 * IQR upper_bound Q3 1.5 * IQR outliers df[(df[loan_amount] lower_bound) | (df[loan_amount] upper_bound)]處理方法刪除僅當確信是數據錄入錯誤且占比極小時使用??s尾Winsorization將超出指定分位數如1%和99%的值用該分位數的值替換。這是風控中處理極端值的常用方法能保留樣本但削弱極端值的影響。lower_limit df[income].quantile(0.01) upper_limit df[income].quantile(0.99) df[income] np.where(df[income] lower_limit, lower_limit, df[income]) df[income] np.where(df[income] upper_limit, upper_limit, df[income])視為缺失值并用中位數等填充。分箱Binning將連續(xù)變量離散化異常值會被歸入最高或最低的箱中。5.3 類別型特征編碼機器學習模型只能處理數值。需要將文本類別轉化為數字。標簽編碼Label Encoding為每個類別分配一個整數如[‘高中’ ‘本科’ ‘碩士’]-[0, 1, 2]。適用于有序類別如學歷等級。對于無序類別模型可能會錯誤地認為數字大小有意義。獨熱編碼One-Hot Encoding為每個類別創(chuàng)建一個新的二進制特征0或1。這是處理無序類別的標準方法。但若類別很多如“職業(yè)”有上百種會產生大量稀疏特征增加計算負擔和過擬合風險。from sklearn.preprocessing import OneHotEncoder encoder OneHotEncoder(sparse_outputFalse, dropfirst) # dropfirst避免多重共線性 encoded_features encoder.fit_transform(df[[education, job_type]]) # 將編碼后的特征合并回原DataFrame需處理列名目標編碼Target Encoding / Mean Encoding用該類別下目標變量的均值對于回歸或違約率對于分類來替換類別。例如“職業(yè)學生”的違約率是5%就用0.05替換所有“學生”。這種方法能捕捉類別與目標的關系但容易引起過擬合需要配合交叉驗證進行平滑處理。category_encoders庫提供了穩(wěn)健的實現(xiàn)。5.4 創(chuàng)造新特征領域知識的體現(xiàn)這是特征工程中最有價值的部分需要結合對信貸業(yè)務的理解。衍生比率特征負債收入比DTI 總月負債 / 月收入。這是風控的核心指標。貸款收入比LTI 貸款金額 / 年收入。月供收入比 月還款額 / 月收入。分箱與離散化將連續(xù)年齡分為[18-25, 26-35, 36-50, 51-65, 65]。將收入分為[低 中 高]。分箱后可以作為類別特征處理或者進行目標編碼能更好地捕捉非線性關系并且對異常值更魯棒。交互特征年齡 * 收入或許年輕高收入者和年輕低收入者的風險模式不同。貸款期限 * 貸款利率反映總利息負擔。時間維度特征如果有時間序列數據歷史逾期次數、最大逾期天數、最近一次逾期距今月份數等?;谶^去6/12個月的消費、還款行為計算出的趨勢指標如月均消費增長率。實操心得特征工程不是一蹴而就的。我通常先構建一個基礎特征集原始特征少量關鍵衍生特征訓練一個基線模型。然后通過特征重要性分析如樹模型提供的feature_importances_或SHAP值找出重要特征再圍繞它們進行更精細的加工和創(chuàng)造。這是一個迭代的過程。6. 應對不平衡數據讓模型“看見”少數派在不平衡數據上直接訓練模型會嚴重偏向多數類。我們必須采取策略讓模型“公平”地學習。6.1 評估指標的選擇放棄準確率首先要確立正確的評估標準。假設我們有10000個樣本其中9900個正常100個違約。一個將所有樣本都預測為“正常”的傻瓜模型準確率高達99%。但這毫無用處。我們更關心在所有的違約客戶中我們抓住了多少召回率 Recall/Sensitivity以及在我們預測為違約的客戶中有多少真的是違約精確率 PrecisionF1-Score是精確率和召回率的調和平均數是一個不錯的綜合指標。ROC-AUC接收者操作特征曲線下面積。它衡量的是模型將正例違約排在負例正常前面的能力。AUC越接近1越好0.5相當于隨機猜測。AUC對類別不平衡相對不敏感是風控模型常用的核心指標。PR-AUC精確率-召回率曲線下面積。在正例非常少的不平衡場景下PR-AUC有時比ROC-AUC更能反映模型在正例上的表現(xiàn)。在sklearn中我們可以方便地計算這些指標from sklearn.metrics import classification_report, roc_auc_score, average_precision_score # y_true 真實標簽 y_pred 預測標簽 y_pred_proba 預測概率 print(classification_report(y_true, y_pred)) print(fROC-AUC: {roc_auc_score(y_true, y_pred_proba)}) print(fPR-AUC (Average Precision): {average_precision_score(y_true, y_pred_proba)})6.2 采樣技術改變數據分布過采樣Oversampling增加少數類樣本。隨機過采樣簡單復制少數類樣本。容易導致過擬合。SMOTESynthetic Minority Oversampling Technique在少數類樣本之間進行插值生成“合成”新樣本。這是目前最流行的方法之一。from imblearn.over_sampling import SMOTE smote SMOTE(random_state42) X_resampled, y_resampled smote.fit_resample(X_train, y_train)ADASYN在SMOTE基礎上根據樣本密度自適應地生成不同數量的新樣本關注那些更難學習的少數類樣本。欠采樣Undersampling減少多數類樣本。隨機欠采樣隨機丟棄多數類樣本。會損失大量信息。Tomek Links移除多數類中與少數類樣本非常接近的樣本“邊界”樣本使類別邊界更清晰。Cluster Centroids使用K-Means對多數類進行聚類然后用聚類中心代替整個簇實現(xiàn)有代表性的欠采樣。結合采樣如SMOTEENN先SMOTE過采樣再用Edited Nearest Neighbours清理噪聲樣本。注意事項采樣必須在訓練集上進行絕對不能在整個數據集上做也絕對不能影響測試集標準的流程是先劃分訓練集和測試集然后在訓練集內部進行交叉驗證和采樣。測試集必須保持原始分布以評估模型在真實不平衡世界中的表現(xiàn)。6.3 算法層面的調整改變模型目標許多算法本身提供了處理不平衡的選項。調整類別權重Class Weight在訓練時給少數類的樣本更高的權重讓模型更關注它們。Scikit-learn的許多模型如LogisticRegression,RandomForestClassifier,SVC都支持class_weight參數??梢栽O置為‘balanced’讓算法自動按類別頻率的倒數調整權重。from sklearn.ensemble import RandomForestClassifier model RandomForestClassifier(class_weightbalanced, random_state42)使用對不平衡不敏感的算法梯度提升樹如LightGBM, XGBoost本身對不平衡數據有一定魯棒性并且它們也提供了scale_pos_weightXGBoost或is_unbalanceLightGBM等參數來進一步調整。我的常用策略我會先嘗試在不采樣的情況下使用帶有class_weightbalanced的邏輯回歸或隨機森林作為基線。然后嘗試SMOTE過采樣結合LightGBM/XGBoost。通過交叉驗證對比ROC-AUC和PR-AUC選擇效果最好的組合。通常樹模型配合適當的采樣或權重調整效果最佳。7. 模型構建、訓練與評估尋找最優(yōu)風險識別器現(xiàn)在我們有了干凈、平衡或加權的訓練數據可以開始構建和選擇模型了。7.1 數據劃分與交叉驗證首先將特征X和目標y分離并劃分訓練集和測試集。測試集在整個訓練過程中絕對不能觸碰它用于最終評估模型的泛化能力。from sklearn.model_selection import train_test_split # 假設df是經過預處理和特征工程后的DataFrame X df.drop(columns[is_default, loan_id]) # 去掉目標列和ID列 y df[is_default] # 劃分訓練集和測試集通常70%-80%用于訓練 X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.2, stratifyy, random_state42)stratifyy參數非常重要它保證在劃分后訓練集和測試集中正負樣本的比例與原始數據集一致。為了在訓練集上可靠地評估模型性能并調參我們使用K折交叉驗證K-Fold Cross-Validation。特別是對于不平衡數據使用分層K折交叉驗證Stratified K-Fold更好它能確保每一折中類別比例相同。from sklearn.model_selection import StratifiedKFold, cross_val_score cv StratifiedKFold(n_splits5, shuffleTrue, random_state42) # 以ROC-AUC為評估指標進行交叉驗證 model RandomForestClassifier(class_weightbalanced, random_state42) cv_scores cross_val_score(model, X_train, y_train, cvcv, scoringroc_auc) print(f交叉驗證ROC-AUC得分: {cv_scores.mean():.4f} (/- {cv_scores.std()*2:.4f}))7.2 模型選型與對比我們將對比幾種在風控領域常用的模型邏輯回歸Logistic Regression線性模型可解釋性強是風控模型的傳統(tǒng)主力。它可以輸出概率并且可以通過系數大小判斷特征影響的方向和程度。作為優(yōu)秀的基線模型。隨機森林Random Forest集成樹模型能捕捉非線性關系對異常值和缺失值不敏感能輸出特征重要性??惯^擬合能力較強。梯度提升樹Gradient Boosting TreesXGBoost速度、精度和功能性的標桿提供了豐富的正則化選項防止過擬合。LightGBM微軟出品采用基于直方圖的算法和Leaf-wise生長策略訓練速度更快內存消耗更小在大數據集上表現(xiàn)優(yōu)異是當前工業(yè)界風控建模的“標配”之一。CatBoost擅長處理類別特征無需單獨編碼且對過擬合有很好的抵抗。我會用交叉驗證的ROC-AUC來初步比較這些模型。通常LightGBM和XGBoost會表現(xiàn)最好。7.3 超參數調優(yōu)讓模型發(fā)揮最佳性能模型有很多“旋鈕”超參數如樹的深度、學習率等需要調整以獲得最佳性能。手動調參費時費力我們使用自動化工具。網格搜索GridSearchCV指定一組超參數值窮舉所有組合。適用于參數較少的情況。隨機搜索RandomizedSearchCV在指定的參數分布中隨機采樣一定數量的組合。效率更高尤其當參數空間很大時。貝葉斯優(yōu)化Bayesian Optimization使用如scikit-optimize或optuna庫根據歷史評估結果智能地選擇下一組要嘗試的參數通常能以更少的嘗試找到更優(yōu)解。以下是一個使用GridSearchCV對LightGBM進行調優(yōu)的示例from lightgbm import LGBMClassifier from sklearn.model_selection import GridSearchCV # 定義模型 lgb LGBMClassifier(random_state42, verbosity-1, n_jobs-1) # n_jobs-1使用所有CPU核心 # 定義要搜索的參數網格 param_grid { n_estimators: [100, 200, 300], max_depth: [3, 5, 7, -1], # -1表示不限深度 learning_rate: [0.01, 0.05, 0.1], num_leaves: [31, 63, 127], # 葉子節(jié)點數與max_depth相關 subsample: [0.8, 1.0], # 樣本采樣比例 colsample_bytree: [0.8, 1.0], # 特征采樣比例 } # 使用分層K折交叉驗證進行網格搜索 grid_search GridSearchCV( estimatorlgb, param_gridparam_grid, cvStratifiedKFold(n_splits3, shuffleTrue, random_state42), # 調參時可以用少一些的折數加快速度 scoringroc_auc, n_jobs-1, verbose1 ) grid_search.fit(X_train, y_train) print(f最佳參數: {grid_search.best_params_}) print(f最佳交叉驗證ROC-AUC: {grid_search.best_score_:.4f}) # 獲取最佳模型 best_lgb_model grid_search.best_estimator_7.4 模型評估與閾值選擇用最佳模型在測試集上進行最終評估。記住測試集是模型從未見過的數據。from sklearn.metrics import roc_curve, precision_recall_curve, confusion_matrix # 預測概率 y_pred_proba_test best_lgb_model.predict_proba(X_test)[:, 1] # 計算測試集ROC-AUC test_auc roc_auc_score(y_test, y_pred_proba_test) print(f測試集 ROC-AUC: {test_auc:.4f}) # 繪制ROC曲線 fpr, tpr, thresholds_roc roc_curve(y_test, y_pred_proba_test) plt.figure() plt.plot(fpr, tpr, labelfLightGBM (AUC {test_auc:.3f})) plt.plot([0, 1], [0, 1], k--) # 對角線 plt.xlabel(False Positive Rate) plt.ylabel(True Positive Rate) plt.title(ROC Curve on Test Set) plt.legend() plt.show()模型輸出的是違約概率。我們需要一個閾值來將其轉化為“違約”或“不違約”的決策。閾值的選擇是一個業(yè)務決策取決于我們更看重召回率抓住更多壞人還是精確率減少誤殺好人。如果業(yè)務目標是嚴格控制壞賬率寧愿錯殺好客戶也不放過壞客戶可以選擇一個較低的閾值如0.3提高召回率。如果業(yè)務目標是擴大業(yè)務規(guī)模容忍一定壞賬但希望盡可能減少對好客戶的誤拒可以選擇一個較高的閾值如0.7提高精確率。我們可以通過分析不同閾值下的精確率-召回率曲線來輔助決策precisions, recalls, thresholds_pr precision_recall_curve(y_test, y_pred_proba_test) # 找到使F1-Score最大的閾值 f1_scores 2 * (precisions * recalls) / (precisions recalls) optimal_idx np.argmax(f1_scores) optimal_threshold thresholds_pr[optimal_idx] print(f基于最大F1-Score的最佳閾值: {optimal_threshold:.3f}) print(f對應精確率: {precisions[optimal_idx]:.3f}, 召回率: {recalls[optimal_idx]:.3f}) # 使用選定的閾值做最終預測 final_threshold 0.4 # 根據業(yè)務需求調整 y_pred_final (y_pred_proba_test final_threshold).astype(int) # 輸出分類報告和混淆矩陣 print(classification_report(y_test, y_pred_final)) cm confusion_matrix(y_test, y_pred_final) sns.heatmap(cm, annotTrue, fmtd, cmapBlues) plt.xlabel(Predicted) plt.ylabel(Actual) plt.title(Confusion Matrix) plt.show()混淆矩陣能直觀地展示真正例TP實際違約且被預測為違約抓對了。假正例FP實際正常但被預測為違約誤殺。真負例TN實際正常且被預測為正常放對了。假負例FN實際違約但被預測為正常漏殺。業(yè)務人員可以根據混淆矩陣和成本誤殺損失利息漏殺損失本金來量化模型帶來的價值。8. 模型解釋與部署準備從黑盒到白盒在金融風控領域模型的可解釋性至關重要。監(jiān)管要求、內部風控評審都需要知道模型為什么做出某個決策。8.1 全局解釋哪些特征最重要樹模型如LightGBM自帶特征重要性屬性可以告訴我們哪些特征對模型預測的貢獻最大。importances best_lgb_model.feature_importances_ feature_names X_train.columns # 創(chuàng)建DataFrame并按重要性排序 feat_imp_df pd.DataFrame({feature: feature_names, importance: importances}) feat_imp_df feat_imp_df.sort_values(importance, ascendingFalse).reset_index(dropTrue) plt.figure(figsize(10, 8)) sns.barplot(ximportance, yfeature, datafeat_imp_df.head(20)) plt.title(Top 20 Feature Importances (LightGBM)) plt.tight_layout() plt.show()通常你會發(fā)現(xiàn)debt_to_income_ratio負債收入比、credit_history_length信用歷史長度、annual_income年收入等特征排名靠前這符合業(yè)務直覺。8.2 局部解釋為什么這個客戶被拒絕對于單個客戶的預測我們可以使用SHAP (SHapley Additive exPlanations)值進行解釋。SHAP值基于博弈論公平地將模型預測值分配到每個特征上。import shap # 初始化JS可視化用于Notebook shap.initjs() # 創(chuàng)建一個解釋器 explainer shap.TreeExplainer(best_lgb_model) # 計算測試集前100個樣本的SHAP值計算全部可能較慢 shap_values explainer.shap_values(X_test.iloc[:100]) # 1. 單個樣本的解釋例如第一個被預測為高風險的用戶 shap_index 0 # 選擇你想解釋的樣本索引 shap.force_plot(explainer.expected_value[1], shap_values[1][shap_index], X_test.iloc[shap_index]) # 2. 匯總圖看特征的整體影響方向 shap.summary_plot(shap_values[1], X_test.iloc[:100])力Force圖展示單個預測中每個特征是如何將基礎值所有樣本的平均預測推向最終預測值的。紅色特征推高預測概率增加風險藍色特征推低預測概率降低風險。匯總圖每個點代表一個樣本。x軸是SHAP值對預測的影響大小顏色表示特征值的大小??梢钥刺卣髦蹬c風險的關系例如debt_to_income_ratio越高SHAP值越大即風險越高。當模型拒絕一個客戶的貸款申請時風控人員可以調出該客戶的SHAP解釋圖清晰地告訴客戶“您的申請被拒絕主要是因為您的負債收入比過高0.15且信用歷史較短0.08?!?這大大增強了模型的透明度和可信度。8.3 模型持久化與部署準備訓練好的模型需要保存下來以便在新的數據上做預測。import joblib # 或使用 pickle # 保存模型 model_filename ./models/lgbm_default_predictor_v1.pkl joblib.dump(best_lgb_model, model_filename) print(f模型已保存至 {model_filename}) # 加載模型 loaded_model joblib.load(model_filename) # 對新數據進行預測 # new_data 是經過完全相同預處理和特征工程后的DataFrame new_pred_proba loaded_model.predict_proba(new_data)[:, 1]在實際部署中你可能會封裝成API服務使用Flask或FastAPI創(chuàng)建一個Web服務接收客戶數據返回風險評分和決策建議。集成到風控系統(tǒng)將模型預測邏輯寫成函數嵌入到銀行現(xiàn)有的信貸審批流程中。定期監(jiān)控與更新模型會隨著時間“老化”因為客戶行為和宏觀經濟在變化。需要定期如每季度用新數據評估模型性能必要時重新訓練或更新。9. 項目總結與避坑指南走完整個流程你會發(fā)現(xiàn)一個完整的風控預測項目遠不止“調個包跑個模型”那么簡單。它融合了業(yè)務理解、數據處理、算法應用和工程實踐。最后分享幾點我在這個項目復現(xiàn)和實際工作中的深刻體會第一數據質量決定天花板特征工程決定你能摸多高?;ㄔ跀祿逑春吞卣鞴こ躺系臅r間通常占整個項目的60%-70%。一個聰明的特征如“近三個月查詢征信次數”可能比換一個更復雜的模型提升更大。務必警惕數據泄露確保所有特征在預測時都是可獲得的。第二不平衡處理是風控建模的必修課。不要只看準確率。ROC-AUC和PR-AUC是你的好朋友。多嘗試幾種采樣方法和算法內置的類別權重調整并在驗證集上仔細評估其對召回率抓壞人能力的影響。第三模型解釋性與性能同等重要。特別是在金融領域一個無法解釋的“黑盒”模型即使AUC再高也很難通過內審和監(jiān)管的挑戰(zhàn)。LightGBM/XGBoost SHAP 是目前兼顧性能與可解釋性的黃金組合。在特征設計時也要盡量使用業(yè)務上可理解的變量。第四交叉驗證是防止過擬合的保險繩。永遠不要用測試集來調參或做模型選擇。堅持使用交叉驗證來評估模型在訓練集上的泛化能力。隨機種子random_state要固定確保結果可復現(xiàn)。第五從實驗到生產有很長的路要走。Notebook里的模型只是原型。要將其轉化為生產系統(tǒng)你需要考慮特征工程的代碼如何模塊化、自動化模型如何版本管理預測服務如何保證低延遲、高并發(fā)預測結果如何與業(yè)務系統(tǒng)聯(lián)動監(jiān)控指標如何設計如模型穩(wěn)定性PSI、預測分數分布變化這是一個更大的系統(tǒng)工程。這個基于Python的個貸違約預測項目就像一張精細的“風險地圖”繪制指南。它從數據源頭開始教你如何清理、加工信息如何選擇合適的“繪圖工具”模型如何校準“圖例”閾值以適應不同的業(yè)務場景最后還教你如何向別人解釋這張地圖為什么這么畫。希望這份詳盡的指南能幫你不僅跑通代碼更能理解背后每一步的“為什么”真正掌握用數據驅動信貸風險決策的核心能力。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
99在线免费视频| 26uuu丁香婷婷五月| 国产亚洲在线| 婷婷五月丁香综合激情| 五月丁香六月色婷| 丁香婷婷五月人体| 99ree6| 99综合一区| 成人短视频免费| 伊人五月综合网| AV激情五月| 亚洲AV在线免费看| 99热这里是精品| 精品婷婷五月视| 婷婷色色宗合网| 五月天婷婷激情小说电影| 26uuu亚洲欧美另类| 国产操逼网站| 欧美情色一区| 亚洲国产精品二二三三区| 丁香五月六月婷婷殴美综合| 开心六月丁香五月婷婷| 丁香五月综合激情啪啪| 伊人玖玖精品| 婷婷伊人75| 欧美激情综合色综合啪啪五月| 日韩五月丁香| 五月天激情啪啪| 天天综合网、天天综合色| 婷婷五月综合性爱| 国产肥白大熟妇BBBB视频| 噜噜噜噜综合在线| 99热只有精| www99热| 激情久久月| 色婷婷久久| 婷婷丁香五月亚洲| 26uuu国产激情视频| 91人人操人人爱| 色色欧美色色| 五月停停大香蕉| 久久婷婷成人综合色怡春院| 国产成人AV在线| 日韩在线看AV| 欧美性色A片免费免费观看的| 伊人超碰| www.久久久.com| 五月丁香天堂网| 久久99热免费| 激情图片婷婷| 99aese| av中文在线| 六月综合婷婷开心伊人| 久久婷婷五月天激情| 狠狠婷婷色| 开心五月天激情网| 五月天婷婷影院| 色婷婷亚洲| 天天日夜夜曹| 97人人操人人| 五月婷婷激情五月| 99国产精品久久久久久久久久久| 大香蕉520| 五月丁香色综合| 五月天激情社区| 九九热99精品在线| 亚洲AV成人无码久久精品老人法拉利| 99国产精品白浆在线观看免费 | 五月天成人小说| 久久精品系列| 99热最新网址| 影音先锋91网站在线观看| 久久小视频| 婷婷五月天福利| 激情又色又爽又黄的A片| 色婷婷五月天偷拍| 综合久久五| 91色性感五月婷婷丁香| 99热99精品| 久久人人九| 国产1区2区| 综合99视频| 香蕉久久六月| 色吧五月婷婷六月丁香| 婷婷性福五月天| 日韩精品999| 久久综合丁香激情五月| 久久久久9久无码视频| 日本色超碰| 蜜乳人妻一区二区三区| 无码网| 亚洲综合干| 天天色综合综合| 婷婷99狠狠躁天天躁中文| 婷婷五月综合网激情| 中文字幕婷婷在线| 97超碰免费超级在线观看| 色婷丁香五月| 99乱视频| 五月丁香无码| 色综合9| 六月婷婷AV| 日本三级大片| 真实亲子乱子伦高清在线观看| 五月天激情啪啪| 色色五月天婷婷| 99热这里只有精品免费| 免费观看2018www黄色操逼网站| 国产熟女一区二区三区五月婷| 激情久久久| 黄色99网| 婷婷丁香熟妇综合网| 99热人人艹| 久久婷婷久久| 六月婷婷五月天| 九九综合色| 最新无码专区| 成人必爱视| 色婷婷社区| 日日天天干| 亚洲精品第一国产综合亚AV| 欧美在线骚货| 婷婷五月天精品| 欧在线一区| 91性高潮久久久久久久久| 六月五月久久丁香| 9l视频自拍9l九色成人| 色婷婷a| 天天干天天 亚洲| 欧美99热| 午夜成人AV在线| 成人丁香婷婷| 色色97丁香婷婷五月天| 五月天深爱激情网| 亚洲精品第一国产综合亚AV | 亚洲操精品| 先锋av性爱成人电影| 超碰成人av| 99热传媒| 婷婷五月天激情五月天网站| 在线中文AV| 五月婷色| 九九人人操| 激情亚洲婷婷| 一本到不卡高清DVD| 五月综合色| 五月天久久婷婷| 97高清国语自产拍| 五月色婷婷激情| 国产成人+综合亚洲+天堂| 日韩在线观看亚洲| 99热伊人| 丁香色五月婷婷17C| 日韩在线观看亚洲| 99九色视频在线观看| 青青草五月天| 婷婷99热| 亚洲精品视频在线播放| 色五月天综合| 激情四射亚洲| 丁香五月天之婷婷影院| 全高清无码视頻| 能看的av| 99久久99九九99九九九| 天天操天天插| 欧美婷婷五月天综合| 国产肥白大熟妇BBBB视频| 丁香婷婷性爱| 无码99| www.av视频xx999.com| 久久99网| 99在线视频在线观看| 99国产精品久久久久久久久久久 | 99欧美| 婷婷99狠狠躁天天躁| 综合色五月| 在线观看的av| 疯狂做受XXXX高潮A片动画| www.99热国产| 9久热视频| 五月丁香六月综合激情无码软件亮点 | 97色久| 亚洲第一黄网| 天天日天天久久青青| 开心激情站婷婷五月天| 91凹凸在线| 91人妻人人做人碰人人爽九色| 91色在线 | 日韩| 99人妻碰碰碰久久久久视| 97婷婷在线| 色婷婷久久| 噜噜色五月| 日韩一区二区A片免费观看| 天天操天天爱天天玩| 丁香五月婷婷99| 99热大香蕉| 五月丁香五月丁香| 久热伊人9| 97热精品| 婷婷五月噜噜| 日本三级黄色大片| 久久aaaaa| 伊人久久大香线蕉av最新| 99热99干| 影音先锋91男人资源在线播放| 婷婷五月综合色拍| 国产AV一区二区三区最新精品| 久狠日av| 六月婷婷之青青草| 五月婷婷亚洲| 91麻豆国产三级精品福利在线观看 | 久久久久久久综合狠狠综合| 亚洲成人中文字幕| 婷婷五月欧美综合| 六月丁香激情网| 热久久视频99| 狠狠夜夜五月丁香| 色播丁香| 久久9热| 99精品国产乱码久久久人妻| 色综合综合色| 丁香五月天狠狠| VA婷婷| 亚洲婷婷综合视频| 六月婷婷毛片| 国产精品久久欧美久久一区| 91久久久久久久久| 欧洲色色| 五月天婷婷激情小说电影| 色婷婷深爱五月| 六月丁香中文字幕| 五月丁香亭亭AV女优| 99久久婷婷国产综合| 五月婷婷在线视频| 五月婷婷人妻| 五月伊人婷婷| 五月天五月天成人网亭亭成人色网站| 99热这里只有精品青草| 久综合| 射久久丁香五月| 综合玖玖性爱免费视频| 9色在线视频| 蜜桃婷婷狠狠久久综合| www.com在线操视频免费观看| 99综合免费视频| 97色天堂| 五月婷婷激情久久| 丁香五月综合激情啪啪| 六月婷婷av| 五月丁香六月综合激情无码软件亮点 | 色天天狠狠干| 夜夜操夜夜爽| 天堂婷婷五月在线| 开心婷婷五月激情网小说| 久久精品系列| 五月丁香啪啪综合网| 99久久偷拍视频| 亚洲亚洲人成综合网络| 97操碰98| 色色色1网址| 国产SUV精品一区二区883| 日韩色色视频| 99爱视频在线| 99热这里| 1024AV视频| 另类婷婷五月天啪帕帕| 亚洲国产另类av| 九九丁香社区欧美激情| 91色色色视频| 九艹在线| 婷婷6月综合网| 成人电影一区| 激情五月亚洲综合网| a69在线视频| 少妇伦子伦精品无吗| 五月婷婷激情网| 超碰日日操| 色日本综合| 亚洲欧美丁香五月天亚洲欧美| 五月天婷婷丁香社区| 婷婷五月天黄色小说| 深爱婷婷丁香五月激情| 五月婷婷偷拍| 五月婷婷六月天| 亚洲亚洲人成综合网络| 人人97操| 丁香婷婷五月天激情四射| 97色欧美| www.99热视频在线观看| 另类五月激情| 99在线视频播放| 丁香色色网| 99人人干| 婷婷丁香成人色综合| 大香蕉久久久久久久久| 色色激情网| 五月婷婷干干干| 色色影院aaaav| 26UUU精品一区二区c〇m| 97亚洲色 torrent magnet| 九九视频免费| 色婷婷社区| 14色综合婷婷| 国产无遮挡又黄又爽免费网站| 亚洲网综合在线| 大香伊人婷婷影院| 国产激情综合五月| 色狠狠婷婷| 99玖玖视频| 欧美视频五区| 六月丁香五月激情婷婷| 91超碰在线播放| 一起草AV| 123草逼网| www.婷婷网| 激情五月色在线播放| www99在线观看视频| 91久久久久久久| 成人AV播放| www.色情五月天.com| 久久精品女人天堂AAA| 狠狠色婷婷777| 日日日日做夜夜夜夜无码| 9999热这里只有精品| 99色精品| 天天婬色综合| 另类图片 五月激情| 国产毛片精品一区二区色欲黄A片| 激情五月丁香五月| 超碰97免费在线| 国产 A片 自拍| 丁香五月AV| 亚洲国产精品SUV| 亚洲操B视频| 婷婷五月天激情视频| 超碰日日操| 亚洲狠9| 婷婷偷拍网| 五月婷婷深深爱| 九九热思思热| 五月天婷婷激情| 色色色在线观看| 狠狠干伊人| 大香蕉婷婷| 26.uuu丁香五月婷婷| 亚洲五月天狠狠| 天天色色天天| 色婷婷久久综合| 亭亭玉月丁香| 五月婷中文娱乐综合| 色。 日日日| 99热国产精品| 五月丁香久人妻中文| 丁香五月婷婷天| 激情五月天视频| 999激情视频| 激情综合五月婷婷六月丁香| 热99玖玖99玖玖99九九| 九九热99精品| 在线视频区| 婷婷丁香六月五月天| 色婷婷精品视频| 精品国产a| 婷婷射图五月天| 免费无码毛片一区二区A片 | 婷婷五月综合激情免费视频| 色涩视频久久| 天天综合天综合| 五月日韩中文字幕| 99这里只有精彩视频| 九九伊人网| 大香蕉久久久久| 亚洲av成人在线| 超碰色综合| 亚洲成人另类| 婷婷九月| 五月久久噜噜| 九月丁香很很色| 99视频这里只有久久精品| AA片在线观看视频在线播放| 五月婷婷影视| 婷婷五月激情视频网| 人人草人人爱手机视频看看| 五月婷婷,六月婷婷| 亚洲色情网站| 任你搞网站| 99国产精品久久久久久久久久久| 婷婷久久久久| 婷婷激情五月综合| 97五月天婷婷| 色婷婷啪啪啪啪啪啪| 国产avapp 网| 包操45分钟网站| 五月婷婷性爱| www.开心激情| 综合久久综合久久| 欧美日本日韩| 激情五月天婷婷丁香| 五月丁香最新| 五月丁香婷婷综合网| 日日干日日s| 国产97在线日韩亚洲女人被黑人巨大| 这里只有精彩视频| 99精品偷自拍| 五月婷婷啪啪| 激情婷婷内射| 九九热99在线视频| 色99在线观看| 色欲一二三| 五月丁香自拍| XX色综合| 五月天开心色情网| 操一操插一插| 啪啪激情网| 女人被躁到高潮嗷嗷叫小| 五月天色社区| 精品色情一区二区三区四区| 丁香婷婷婷五月综合色情| 亚洲综合九九| 99热费观看| 欧美色五月| 日本精品人妻无码77777| 色五月激情| 99久热在线精品| 五月久久丁香| 久热这里| 成人版视频在线观看| 日日操,日日爽| 久久日本wwww色| 天天色视频| 久热只有这里精品| 97福利视频| 五月激情婷婷偷拍| 国产精品久久久久久妇女6080| 精品人妻伦一二三区久| 色婷激情网| 婷婷五月综合基地| 97性视频| 99热精品中文字幕| 丁香激情婷婷网| 激情综合啪啪| 久色五月天| 激情内射人妻1区2区3区| 偷拍91九色| 婷婷丁香综合| 激情纯色婷婷五月天在线不卡视频| 麻豆精品| 9精品一区| 国产超碰在线| 五月丁香色综合| 99精品在线观看视频| oVV4WIB3vFi8D| 五月大香蕉| 天天透天天干| wuyuedingxiang| 亚洲精品V天堂中文字幕| 婷婷综合亚洲| 天天插天天插| 精品热青草| www五月| 狠狠久久婷五月| 婷婷六月丁香欧美视频在线| 99热成人在线观看| 不卡影院午夜理论片| 亚洲久久视频| 国产精品成人AV在线| 成人片在线播放| 99综合| 色色网站| 丁香五月影院| 任你日视频| 日日干夜夜干| 久久婷.com| 免费看欧美成人A片无码| 五月天激情社区| 9999色色色色| 99操逼| 精品A√| 天天干天天爽天天操| 五月丁香婷婷中文网| 婷婷涩涩网| 色五月丁香一区在线| 丁香六月天AV| 9999热这里只有精品| 婷婷激情五月综合在线视频| 婷婷精品性性性性性性性| 偷拍视频五月天| www九九热| 激情五月天啪啪| #NAME?| 能看的av| 日本三级第一页| 日韩丰满少妇无码内射| WWW色五月| 五月婷婷 激情按摩| 黄色短视频在线观看| 激情五月婷婷丁香综合网| 99se丁香| 亚洲在线综合| 婷婷五月天av| 色五月婷婷丁香凹凸| 成人视频免费观看高清完整版在线观看| 色婷婷色综合| 亚洲1区| 色吧五月婷婷六月丁香| 天天色宗合| 综合狠狠干| 色吧五月婷婷| 91精品刘玥| www.久9| 成人av在线网站| 毛片新网地| 涩九九九九| 超碰网站在线观看| 五月丁香久久综合| 伊人婷婷五月| 亚洲无码成人| 又大又粗九一在线| 色色色色色日韩午夜激情| 亚洲AV久久久久久久久久久久久久久久| 亚洲欧美日韩另类| 99热免费精品热久久66| 99免费热视频| 五月婷婷之综合激情| 日日噜噜夜夜狠狠久久丁香五月| 综合性爱网| 五月视频日本免费观看| 免费看欧美成人A片无码| 这里只有精品视频免费在线观看| 99视频综合网| 欧美熟女99| 99热只有这里才是精品| 久久99网| 日韩黄色电影| 蜜乳中文字| 中文AV网站| 加勒比久热| 爱爱色五月天| 成人网站在线观看视频| 97碰91| 色之综合网| 婷婷五月婷婷| 香蕉久日夜| 色情综合网| 丁香涩涩爱| 性色人人爽| 五月天激情婷婷久久| 久9热| 激情婷婷九月| 丁香五月天激情视频| 国产精品久久久爽爽爽麻豆色哟哟| 97热这里精品在线视频| 日日色综合| 青青草伊人婷婷| 性爱先锋AV| 狼友超碰| 99精品国产在热久久婷婷| 另类视频丁香五月| 国产成人综合电影| 嫩草综合网| jiZZdr| 色综合中文| 婷婷狠狠色| 91无码一区人妻A片蜜| 久久欧洲久久| 天天草天天爽| 久久网站免费亚洲| www.夜夜| 99色看这里只有精品| 99精品色| 久久五月天综合视频网站| 91男同| 91丨九色丨熟女丰满| 色婷婷五月天偷拍| 天天色99| 噜噜干日本| 五月丁香激情婷婷| 美日韩成人| 婷婷四色五月| 婷婷五月天综合网| 五月丁香啪啪激情| 五月婷婷综合在线亚洲视频| 色婷婷综合久久| 婷婷四色五月| 99五丁香月| 日韩乱玛久久| 91碰碰碰久久久久| 可以免费观看的AV| 九热视频在线精品15| 久久婷丁香五月| 久色五月天| www..999热久| 欧亚洲在线高清视频| 久久免片| 26UUU在线观看| 在线不卡AC| 五月婷婷在线综合| 黄色一级影片| 天天插天天插天天插天天插| 美女va| 免费观看18视频网站| 婷婷激情五月天色| 在线亚洲综合网| 丁香婷婷六月| 九九热这里只有精品556| 色激情五月天| 国产玖玖资源| 7777激情基地| 伊人高清无码| 色呦呦美女| 五月婷五月婷伊人伊人五月婷| 99亚洲精品| 色婷婷九月| pom538精品视频| 激情五月天社区| 我要看激情五月天| 99热综合在线| 久久久天堂国产精品女人| 丁香五月亚综合图片| 久久婷狠狠色| 欧美大片免费观看| 99九无网码| peg 2区三区四区的| 丁香五月激情久久麻豆| 五月婷婷综合在线| 综合狠狠干| 97久操视频| 99无码视频| 99无吗| 99这里有精品久久97| 亚洲第一成人AV| 久久久久久五月天| 99re66热这里只有精品| 69久久久| 9色在线| 五月天色五月| 丁香桃色网| 韩国久久少妇视屏| 亚洲欧洲99| 激情久久婷婷| 人人人操 超碰| 婷婷成人综合| 婷婷五月在线播放| 五月天成人伊人| 国産精品| 欧美婷婷精品激| 免费看欧美成人A片无码| 97操碰在线视频| 久久婷婷操| 日韩色色色色色| 免费看成人747474九号视频在线观看| 久久婷婷五月综合色丁香花| 色优久久| 精品久久久人妻| 日日夜夜狠狠| 激情小说婷婷五月| 玖久精品视频9| 99热99ai| 欧美极品999| 超级碰碰91| 999精品久久久久久久| 中文字幕按摩做爰| 国产精品美女| 丁香五月手机在线| 99ri视频| 久久网日本| 色偷偷色婷婷| 丁香五月婷久久| 婷婷综合在线观看视频| 色婷婷丁香五月在线| 99这里有精品视频3| 激情五月婷| 色色色97| 日本女人久久| 九九re精品视频在线观看| 丁香五月婷婷欧美成人色图| 大香蕉丁香五月| 五月婷婷视频| 碰碰人人人| 五月丁香婷婷五月色| 99精品偷自拍| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 激情综合色婷婷啪啪六月天| 牛牛色av| 青青草Avb在线| 九九美女视频| 婷婷玖玖丁香| 99久精品视频| 久久曰曰| 色七色九九| 色婷婷激情小说网| 噜噜噜色噜噜| www.久久av.com| 五月天狠狠网| 婷婷五月丁香91| 9l视频自拍9l视频自拍九色学生| 97干网站| 99视频这里有精品| 久久婷婷五月天激情新地址| 久久婷婷五月综合网| 99热伊人综合| 午夜爱爱网站| 九九人妻福利| 男女久久婷婷五月天| 色婷婷裸体色性在线| 亚洲五月花| 丁香五月在线自慰| 66精品国产成人| 激情婷婷亚洲五月| 九九免费视频| 亚洲网视屏| 婷婷伊人| 99操网站| 色婷五月| 五月丁香激情婷婷综合| 99.N在线视频| 亚洲丁香花色| 综合九色| 掩去也综合五月视频| 婷婷激情蜜桃玖玖丁香| 色情五月婷婷| 色婷婷久久| 91人妻九色大屁股| 丁香激情网| 午夜九九电影| 亚洲综合五月天婷婷丁香| 噜噜视频| 日韩精品VIP| 国产精品成人在线| 五月综合精品| 99热这里只有精品16| 播丁香五月婷婷欧美| 综合色影院| 深爱网深爱综合网| 超碰在线9| 江苏少妇性BBB搡BBB爽爽爽 | 久草性爱| WWW.99热| 久久精彩视频| 五月花激情网| 亚洲综合干| 婷婷综合97| 超碰在线网站9| 伊人超碰| 玖玖热视频| 91碰碰碰| 99大香蕉| 久久少妇视频| 北京熟妇搡BBBB搡BBBB| 丁香婷婷色九月| 久热视频这里只有精品68| 操久久网| www.五月婷| 五月丁香婷婷婷婷综合网| 91狠狠色| 伊人婷婷五月天av| 五月丁香婷婷激激激综合网色播| 国洲夜色亚热在线久久| 人人色性网| 成人五月丁香社区| 色婷婷综合电影| 五月丁香六月婷婷中合网| 成人国产综合| 国产黄色一级片| 婷婷天天综合| 国产超碰在线| 99在线精品观看99| 国产婷婷综合| 久久女人九九| 涩婷婷五月天| 婷婷视频在线碰| 激情涩涩网| 欧美日韩成人在线| 99精品一二三四视频| 五月丁香六月婷婷亚洲综合| 久九男女天堂| 2023天天日夜夜爽| h在线看免费版在线看| 亚洲操人| 国产激情久久| 久热大香蕉| 亚洲在线资源| 国产免费一区二区三州老师F1F1| 色五月 五月婷婷| 狠狠狠狠青草| 天天综合中文| 18久久| 99热这里只有精品在线观看| 99热www| 六月丁香婷婷亚洲中文玖玖| 99热这里只有精品22| 精品网站:999WWW| 九九热视频思思| 九久久婷婷| 婷婷开心激情综合五月天| 少妇出轨做爰高潮A片| 五月丁香婷婷五月色| 日本狠狠干| 色综合天天网| 韩国中文字幕91| 亚洲行行色色| 超碰人人妻| www.婷婷五月| 亚州操操| 激情丁香五月天| 色热久资源| 午夜天堂一区人妻| 婷婷综合五月色播| 午夜av网| 色伊人婷婷| 久久这里都是精品免费| 北京熟妇搡BBBB搡BBBB| 激情五月天色爱| 激情婷婷五月社区| 能看的av| 五月天狠狠网站| 天天综合网站| 五月久久丁香| 99热在线看片| 色五月天综合网| 开心五月婷婷六月丁香| 九九精品9| 另类视屏| 色人久久| 深爱激情69热| 99久久精品色老| WWW.桔色成人.COM| 婷婷精品性视频| 粉嫩av蜜桃av蜜臀av| www.色五月| 丁香五月色欲| 久久ww| 色婷婷呢狠禁久禁| 午夜九九九九九九九九九九九九九| 婷婷啪啪| 五月九九综合| 东京热免费视频| 人人操超踫| 碰97久久| 日本少妇裸体做爰高潮片| 99热这里全是精品| 久碰视频| 9色小视频在线观看| 色综合综合色| 婷婷五月天色综合| 97人人操在线| www,setingting| 丁香九月激情| 直接看的AV网站| 欧美在线视频99| 香蕉色色网| 亚洲综合婷婷| 六月婷婷八月丁香| 久久午夜理论| 六月婷婷综合| 色色色色色日韩午夜激情| 久久丁香| 五月婷婷天天| 久色中文| 草综合网| 国产亚洲网站在线| 日本在线播放97| 五月天色丁香| www.色婷婷| 一本伊人色婷| 丁香五月综合激情久久潮喷| 激情五月婷婷啪啪| 五婷婷综合网| 成人在线视频网| 日本高清久| 五月天激情AV| 婷婷五月天激情视频| jiZZdr| 久久九九99| 亚洲AV成人无码精品| 丁香综合网| 久久久久丁香婷婷五月天| 丁香五月天AV在线| 综合99久久天天综合| 五月丁香久久久| 五月天婷婷色综合| 五月丁香久久综合| 丁香五月日韩| 久久亚洲无码| 久久9热综合| av操B网站| 成人精品一区日本无码网| www.99热这里只有精品| 伊人五月丁香| 天天 日综合| 9久热免费视频99| 国产91在线视频| 99热这里都是精品| 大香蕉久久久久| 狠狠狠狠狠狠狠狠| www.日日日.com| 亚洲人成网亚洲欧洲无码久久| 婷婷色片| 99综合97| 热久久这里只有精品| 色色五月天婷婷丁香| 亚洲色视频| 丁香五月色| 99性爱视频| 欧美性色视频| 婷婷五月丁香欧洲| 日本九九视频| 久99综合婷婷| 九九aV| 九九久久精品| 五月丁香激情综合| 色色热| 97精品人人A片免费看| 极品人妻VIDEOSSS人妻| 国产成人精品一区二三区熟女在线| 国产色色视频| 亚洲色色色| 青草视频在线播放| 色婷婷很很十八禁| 丁香五月婷婷总啪啪| 九九在线91| 99在线视频女女视频| 久久免费丁香| 五月天啪啪视频| 五月丁香美女| 精品综合五月| 激情深爱五月| 超碰资源在线| WWW,五月| AA片在线观看视频在线播放 | 久久久.COM| 玖玖色综合| 另类少妇人与禽zOZZ0性伦| 97久久人人人干| 99艹精品在线观看| 91色综合网| peg 2区三区四区的| 五月天色婷好好| 好激情在线综合网| 成人综合AV| 97视频久久| 五月丁香啪啪| www色五月| 99热在线观看| 亚洲色99综合天堂| 成人版视频在线观看| 狠狠艹狠狠艹| 色色综合网www| 14色综合婷婷| 欧美激情丁香五月天久久婷婷一区| 婷婷丁香六月综合激情站| 99福利视频| 8区视频在线| 白人荫道BBWBBB大荫道| 激情碰碰碰| 一级片sese片.COM| 日韩操| 国产67194| 丰满少妇乱A片无码| 日本视频欧美观看免费| 再次出发二| 六月丁香婷婷综合在线| 欧美性爱五月天| 伊人热婷婷| 琪琪秋霞| 欧美乱码国产一级A片| 成人无码髙潮喷水A片| 欧美婷婷丁香五月| 美女婷婷六月色| 激情五月婷婷在线观看| 国产成人精品亚洲线观看| 99色日本| 婷婷之六月丁香| 9久久精品| 国内9l视频自拍老熟女九色| 亚洲欧洲99| 久久五月婷天天干| 99九九视频| 99噜噜噜在线播放| 久久网址99热| eeuss人妻| 五月天婷婷视频30| 99九九久久| www.婷婷com| 色综合大香蕉| 提提热五月天婷婷| 亚洲色婷婷五月天| 色婷婷成人做爰A片免费看网站| 色色草97| 五月丁香啪啪网| 99热九九在线| 色婷婷九月| JlZZJlZZ8JlZZ亚洲熟女| 九热免费视频| 日本狠狠网| 九九综合影音先锋| 再次出发二| 丁香婷婷网| 色青五月天| 婷婷五月天香蕉| 色天堂婷婷| 五月丁香色婷婷伊人| 久久多色| 久久综合婷婷五月| 婷婷天天色| 五月丁香婷婷伊人日韩| 少妇激情五月婷婷| 超碰在线观看9| 久久99网| 欧美日韩精品一区二区三区钱| 亚洲 在线 性爱 | 九色婷婷| 久久久久久18| 欧美婷婷五月激情| 丁香五月91| 色婷狠狠| 丁香色啪综合| 激情综合网址| 中文字幕AV网址| 五月天深爱激情网| 丁香五月狠狠在线观看| 五月天色婷好好| 婷婷内射视频在线| 五月婷久草| 五月丁香综合精品| 婷婷六月综合激情| a色色色色色| 91精品久久久久久77777| 日本偷拍九九九| 五月色婷婷综合色| 六月丁香婷| 99热只有精品在线观看| 操操综合网婷婷| 天天爽天天做| AVV黄| 久久综合影院 | 亚洲精品国产成人AV在线| 97碰在线| 久久9视频| 丁香婷婷人妻综合网| 久久A极片| 人人操Av| 色情五月婷婷| 99亚色色色| 五月天综合视频| 婷婷九月| 99国产精品白浆在线观看免费| 五月婷丁香| 国产毛片精品一区二区色欲黄A片| 天天色一道本综合婷婷| 欧美99热| 天天爱天天做天天舔| 亚洲V国产V欧美V久久久久久 | 免费不卡狠操美女视频网 | 超碰在线视屏| 亚洲九九免费| 色九四色| 狠狠爱婷婷爱| 99操99| 丁香九月婷婷色| 九九亚洲无码| 五月色综合| www九九热| 99精品偷拍视频| 五月丁香综合| 野战J办公桌椅H| 国产午夜一区二区三区| 97色热| 色99色| 综合色五月| 久久9视频| 欧美三级巜人妻互换| 色XX综合网| 五月天丁香六月综合| 婷婷色色综合| 日韩人妻在线观看| 深爱婷婷色| 久久婷婷五月综合成人d啪| 婷婷五月成人| 色婷婷亚洲五月天| VA日本视频| 亚洲国产另类av| 亚洲综合激情五月久久| 天天视频亚洲| 99re在线观看| 丁香五月婷婷国产在线| 深爱激情五月婷婷| 婷婷日日夜夜| 蜜桃婷婷五月| 亚洲热久| 五月婷婷插一插| 丁香久久综合| 五月婷婷av在线| 丁香六月色婷婷| 色婷婷基地| av在线超清中文| 激情久久婷婷| 最近中文字幕大全免费版在线 | 九九成人| 97色伦另类图片小说视频 | 久久久97| 99久久精彩视频。| 冬月かえでAV无码播放| 99色综合| 超碰免费成人| 狠狠xx| w婷婷五月婷婷w| 婷婷五月在线免费| 91视频五月丁香| 久久99久久99久久99| 色5月婷婷| 婷婷五月综合网| 五月天激情AV| 六月丁香深深爱| 色色综合网站| 97婷婷狠狠久久综合9色| 极骚大香蕉伊人| 日本色婷婷| 九九AV在线| 丁香五月婷婷六月丁香| 天天舔天天摸天天透| 2025中文在线视频字幕免费观看| 黄色五月婷婷| 亚韩精品视频1区| 久久人妻视频| 99资源在线视频| 欧美色色色| av在线免费播放| 综合性爱网| 99超碰在线免费| 丁香五月伊人| 天天草女人| 曰韩少妇内射免费播放| 五月婷婷六月丁香| 欧美色色色| 综合色情网| 久热一本| www色五月| 色综合久久综合中文综合网| 国产激情婷婷| 五月激情小说网| 久久一热| 黄色AAAAA| 噜噜色com| 婷婷五月深爱五月| 99国产小视频| 九九精品视频在线6| 99在线国| 热久久视频99| 婷婷丁香色五月天久久88| AV九九| 综合色影| 成人视屏在线观看| 五月色情婷婷| 丁香五月自拍| 91精品熟女| 九六五月天婷婷| 91大屁股| 色狠狠色噜噜噜a天堂一区| 丁香五月天的网址。| 六月婷婷九月丁香亚洲综合| 婷婷丁香人妻天天久久| 亚州操人在线视频| 丁香六月欧美| 久久精彩免费视频| 婷色五月天| 怎么样可以看免费的一级av| 大香蕉久久综合网| www.lchjjc.com| www.爱婷婷.com| 91九九| 99热99这里有免费的精品| 五月婷婷av| 国内外色色色色色成人视频| 亚洲网综合在线| 日本色久| 色。 婷婷婷| 久久久精品人妻| 色综合婷婷| 激情文学 综合 九月| 五月香婷婷| 五月天精品综合| www.99久| 五月激香蕉网| 综合色五月| 婷婷五月激情在线| 大香蕉五月天婷婷| 久久精彩视频18| 色综合com| 午夜婷婷六月天| 九九re精品视频在线观看| 久久久网站| 五月丁香婷婷激情图片| 亚洲综合碰| bukadeavzaixian| 久久久27操| 婷婷五月天六点丁香五月| 99天堂网| 五月天六月丁香| 我爱宗和色| 色婷婷九月| 99色热视频在线| 激情五月婷| 五月婷婷精品| 激情五月综合视频| cc精品国产性传播| 美女五月天| 韩国97天堂| 99久久婷婷国产综合精品青桔| 五月婷婷欲色| 丁香啪啪| 欧美人人草草| 9.1综合网| 五月六月婷| 婷婷六月天| 99玖玖在线视频| 精品九九视频| 色综合婷婷| 99久久天堂婷婷| 深爱五月激情综合| 少妇综合网| 亚洲第一成人无码A片| 五月天婷婷色色网| anquye五月| 久久婷婷六月综合| 人人看人人97| 五月婷婷影视| 狠狠色综合网站久久久久| 婷婷五月综合免费在线| wwW天天干| 丁香久久综合| 久久99网| 日日天天操| 五月天激情亚洲| 天天综合网~91| 日日肏夜夜干| 九九热精品| 久久婷婷五月丁香网| 开心激情网五月| 亚洲国产精品VA在线看黑人| 综合色情网| 综合激情视频| 婷婷的99视频网站| 激情深爱五月| 久热99| 色综合久久天天综合网| 伊人大香蕉毛片| 九玖欧洲亚洲| 日日干四虎| 六月香五月婷| 色狠狠色噜噜AV天堂五区| 丁香五月狠狠在线观看| 亚洲九九视频| 天天弄天天爽| 色色婷婷丁香| 96人人操人人操人人| 五月丁香综合激情| 99久久99热| 成 人片 黄 色 大 片| 综合久色五月| 国产又色又爽又黄又免费| 日本熟妇人妻在线| 激情人妻蜜夜系列区| 丁香五月天啪啪激情综和网 | www.五月天。com| 丁香五月婷婷图片综合|