久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

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

Python實(shí)戰(zhàn):從零構(gòu)建金融風(fēng)控預(yù)測(cè)模型,解決數(shù)據(jù)不平衡與特征工程難題

Python實(shí)戰(zhàn):從零構(gòu)建金融風(fēng)控預(yù)測(cè)模型,解決數(shù)據(jù)不平衡與特征工程難題 簡(jiǎn)介機(jī)器學(xué)習(xí)中的分類問(wèn)題是預(yù)測(cè)建模的核心任務(wù)之一旨在根據(jù)輸入特征將樣本劃分到預(yù)定義的類別中。其基本原理是通過(guò)算法學(xué)習(xí)歷史數(shù)據(jù)中的模式構(gòu)建一個(gè)從特征到類別標(biāo)簽的映射函數(shù)。在金融科技領(lǐng)域分類模型的技術(shù)價(jià)值尤為突出它能夠自動(dòng)化、精準(zhǔn)化地處理海量數(shù)據(jù)識(shí)別復(fù)雜非線性關(guān)系從而支持關(guān)鍵業(yè)務(wù)決策。典型的應(yīng)用場(chǎng)景包括信用評(píng)分、欺詐檢測(cè)和客戶流失預(yù)警等。本文聚焦于金融信貸中的個(gè)貸違約預(yù)測(cè)這是一個(gè)典型的二分類問(wèn)題但面臨數(shù)據(jù)高度不平衡的挑戰(zhàn)。文章深入探討了如何使用SMOTE等過(guò)采樣技術(shù)和調(diào)整類別權(quán)重來(lái)應(yīng)對(duì)這一難題并詳細(xì)介紹了基于業(yè)務(wù)理解的特征工程方法如構(gòu)建負(fù)債收入比等衍生特征以提升模型對(duì)風(fēng)險(xiǎn)客戶的識(shí)別能力。1. 項(xiàng)目緣起從業(yè)務(wù)痛點(diǎn)到一個(gè)Python預(yù)測(cè)模型的誕生在金融信貸業(yè)務(wù)里最讓風(fēng)控和業(yè)務(wù)部門頭疼的事情之一就是“壞賬”。你放出去的貸款總有一部分人因?yàn)楦鞣N原因還不上錢這筆錢就成了銀行的損失。傳統(tǒng)上銀行依賴專家經(jīng)驗(yàn)、規(guī)則引擎和簡(jiǎn)單的統(tǒng)計(jì)模型來(lái)做審批和預(yù)警但面對(duì)海量的客戶數(shù)據(jù)和復(fù)雜的還款行為這些方法越來(lái)越力不從心。我最近用業(yè)余時(shí)間基于公開(kāi)可獲取的思路和一份模擬數(shù)據(jù)集用Python完整地走了一遍“個(gè)貸違約預(yù)測(cè)”的建模流程。這不僅僅是一個(gè)技術(shù)Demo它更像是一次對(duì)信貸風(fēng)控核心邏輯的深度還原和實(shí)操演練。通過(guò)這個(gè)項(xiàng)目你能清晰地看到如何從一堆雜亂的客戶信息數(shù)據(jù)開(kāi)始一步步清洗、分析、構(gòu)建特征最終訓(xùn)練出一個(gè)能相對(duì)準(zhǔn)確判斷客戶“好壞”的機(jī)器學(xué)習(xí)模型。整個(gè)過(guò)程涉及數(shù)據(jù)科學(xué)、機(jī)器學(xué)習(xí)以及金融風(fēng)控的交叉知識(shí)對(duì)于想進(jìn)入金融科技領(lǐng)域的數(shù)據(jù)從業(yè)者或者對(duì)信貸業(yè)務(wù)邏輯感興趣的技術(shù)人員來(lái)說(shuō)是一次絕佳的動(dòng)手機(jī)會(huì)。2. 理解風(fēng)控預(yù)測(cè)的核心什么是個(gè)貸違約預(yù)測(cè)在深入代碼之前我們必須先搞清楚我們要解決的究竟是什么問(wèn)題。這決定了我們后續(xù)所有技術(shù)選型和評(píng)估標(biāo)準(zhǔn)。2.1 預(yù)測(cè)的本質(zhì)一個(gè)二分類問(wèn)題個(gè)貸違約預(yù)測(cè)本質(zhì)上是一個(gè)二分類Binary Classification問(wèn)題。我們的目標(biāo)是為每一個(gè)貸款申請(qǐng)客戶或在貸客戶打上一個(gè)標(biāo)簽“好客戶”會(huì)正常還款或“壞客戶”會(huì)違約。在建模時(shí)我們通常將“違約”定義為正例Positive Class 標(biāo)簽為1將“正常”定義為負(fù)例Negative Class 標(biāo)簽為0。這樣模型輸出的就是一個(gè)介于0到1之間的概率值表示該客戶違約的可能性有多大。注意定義誰(shuí)是正例很關(guān)鍵它直接影響模型評(píng)估指標(biāo)的選擇。在風(fēng)控中我們更關(guān)心能否準(zhǔn)確地抓住“壞人”違約者所以通常將“違約”設(shè)為正例。2.2 業(yè)務(wù)目標(biāo)與模型目標(biāo)的銜接模型預(yù)測(cè)概率本身不是終點(diǎn)它必須服務(wù)于業(yè)務(wù)決策。常見(jiàn)的業(yè)務(wù)應(yīng)用場(chǎng)景包括貸前審批在放款前根據(jù)模型預(yù)測(cè)的違約概率結(jié)合其他規(guī)則決定是否批準(zhǔn)貸款、以及批準(zhǔn)多少額度、什么利率。這時(shí)模型需要一個(gè)閾值Threshold。例如設(shè)定閾值為0.3那么預(yù)測(cè)概率高于0.3的申請(qǐng)將被拒絕或進(jìn)入人工復(fù)核。貸中監(jiān)控對(duì)于已放款的客戶定期如每月用其最新的行為數(shù)據(jù)如還款記錄、消費(fèi)行為通過(guò)模型重新計(jì)算違約概率對(duì)概率升高的客戶提前預(yù)警采取催收或風(fēng)險(xiǎn)化解措施??蛻舴謱痈鶕?jù)風(fēng)險(xiǎn)評(píng)分將客戶分為不同等級(jí)如A、B、C、D級(jí)用于差異化營(yíng)銷或風(fēng)險(xiǎn)定價(jià)。因此我們構(gòu)建的模型最終要能輸出一個(gè)穩(wěn)定、可解釋的風(fēng)險(xiǎn)評(píng)分并能通過(guò)調(diào)整閾值來(lái)平衡業(yè)務(wù)中的“誤殺”拒絕了好客戶損失利息收入和“漏殺”通過(guò)了壞客戶造成本金損失。2.3 項(xiàng)目數(shù)據(jù)集的構(gòu)成與挑戰(zhàn)一個(gè)典型的個(gè)貸違約預(yù)測(cè)數(shù)據(jù)集通常會(huì)包含以下幾類信息這些也是我們后續(xù)特征工程的主要來(lái)源客戶基本信息年齡、職業(yè)、教育程度、婚姻狀況、居住城市等。這些是靜態(tài)的、相對(duì)穩(wěn)定的信息。財(cái)務(wù)狀況收入水平、負(fù)債收入比、資產(chǎn)情況、歷史信用記錄長(zhǎng)度等。貸款信息本次申請(qǐng)的貸款金額、期限、利率、貸款用途、擔(dān)保方式等。歷史信用表現(xiàn)如果有過(guò)去信用卡的逾期次數(shù)、逾期天數(shù)、其他貸款的還款記錄等。這是最具預(yù)測(cè)力的信息但往往難以獲取。外部數(shù)據(jù)如征信分、多頭借貸信息、消費(fèi)行為數(shù)據(jù)等。本項(xiàng)目使用的模擬數(shù)據(jù)集雖然并非真實(shí)銀行數(shù)據(jù)但會(huì)盡可能模擬上述字段的結(jié)構(gòu)。我們面臨的典型挑戰(zhàn)包括數(shù)據(jù)不平衡違約客戶正例的數(shù)量通常遠(yuǎn)少于正常客戶負(fù)例比例可能達(dá)到1:99甚至更懸殊。直接在這種數(shù)據(jù)上訓(xùn)練模型會(huì)傾向于把所有樣本都預(yù)測(cè)為“正?!睂?dǎo)致對(duì)違約客戶完全失效。特征缺失客戶信息填寫不完整存在大量空值。特征異常收入為0或極高年齡超過(guò)合理范圍等。數(shù)據(jù)泄露不小心使用了未來(lái)才能知道的信息如“是否最終違約”衍生出的指標(biāo)作為特征導(dǎo)致模型在訓(xùn)練時(shí)表現(xiàn)虛假的優(yōu)秀上線后完全失效。3. 環(huán)境搭建與核心工具鏈選型工欲善其事必先利其器。一個(gè)高效、穩(wěn)定且易于復(fù)現(xiàn)的分析環(huán)境是項(xiàng)目成功的基礎(chǔ)。下面是我選擇的工具鏈及理由。3.1 Python環(huán)境管理Anaconda的絕對(duì)優(yōu)勢(shì)我強(qiáng)烈推薦使用Anaconda來(lái)管理Python環(huán)境尤其是數(shù)據(jù)科學(xué)項(xiàng)目。理由如下隔離性可以為這個(gè)項(xiàng)目創(chuàng)建一個(gè)獨(dú)立的環(huán)境例如命名為loan_risk里面只安裝項(xiàng)目所需的包避免與系統(tǒng)或其他項(xiàng)目的包版本沖突。包管理簡(jiǎn)便通過(guò)conda install命令可以輕松安裝大多數(shù)科學(xué)計(jì)算包如numpy, pandas, scikit-learn它會(huì)自動(dòng)處理復(fù)雜的C庫(kù)依賴這是pip有時(shí)做不到的。集成性自帶Jupyter Notebook/Lab非常適合進(jìn)行探索性數(shù)據(jù)分析EDA和交互式建模。創(chuàng)建環(huán)境的命令如下# 創(chuàng)建一個(gè)名為loan_risk的Python3.9環(huán)境 conda create -n loan_risk python3.9 # 激活環(huán)境 conda activate loan_risk3.2 核心庫(kù)介紹與安裝在激活的loan_risk環(huán)境中我們需要安裝以下核心庫(kù)# 使用conda安裝基礎(chǔ)科學(xué)計(jì)算包 conda install numpy pandas scipy matplotlib seaborn jupyter # 使用pip安裝機(jī)器學(xué)習(xí)相關(guān)庫(kù)conda通道可能版本較舊 pip install scikit-learn xgboost lightgbm catboost imbalanced-learn # 用于模型解釋 pip install shap # 用于生成分析報(bào)告可選但推薦 pip install pandas-profiling ydata-profilingpandas numpy數(shù)據(jù)操作的基石。pandas的DataFrame是處理表格數(shù)據(jù)的標(biāo)準(zhǔn)容器numpy提供高效的數(shù)值計(jì)算。scikit-learn機(jī)器學(xué)習(xí)的“瑞士軍刀”。提供了從數(shù)據(jù)預(yù)處理標(biāo)準(zhǔn)化、編碼、特征選擇、到模型訓(xùn)練邏輯回歸、隨機(jī)森林、評(píng)估交叉驗(yàn)證、ROC曲線的全套工具。它是本項(xiàng)目的主力。XGBoost/LightGBM/CatBoost三大梯度提升樹(shù)GBDT框架。它們?cè)诮Y(jié)構(gòu)化數(shù)據(jù)的表格分類任務(wù)上尤其是金融風(fēng)控領(lǐng)域表現(xiàn)通常優(yōu)于傳統(tǒng)的隨機(jī)森林或邏輯回歸是當(dāng)前競(jìng)賽和工業(yè)界的首選。我會(huì)在后續(xù)對(duì)比它們的使用。imbalanced-learn專門處理不平衡數(shù)據(jù)集的庫(kù)。提供了過(guò)采樣如SMOTE、欠采樣、以及結(jié)合采樣等多種策略是解決風(fēng)控?cái)?shù)據(jù)不平衡問(wèn)題的利器。shap模型解釋領(lǐng)域的王牌工具。可以將復(fù)雜的樹(shù)模型預(yù)測(cè)結(jié)果分解到每個(gè)特征的貢獻(xiàn)度讓我們知道模型是“憑啥”做出判斷的這對(duì)于通過(guò)風(fēng)控模型評(píng)審至關(guān)重要。matplotlib seaborn數(shù)據(jù)可視化。Seaborn基于matplotlib提供了更美觀、更簡(jiǎn)單的統(tǒng)計(jì)圖形接口。3.3 項(xiàng)目目錄結(jié)構(gòu)規(guī)劃一個(gè)清晰的項(xiàng)目結(jié)構(gòu)能極大提升協(xié)作效率和代碼可維護(hù)性。建議按如下方式組織loan_default_prediction/ ├── data/ # 存放所有數(shù)據(jù) │ ├── raw/ # 原始數(shù)據(jù)只讀 │ ├── processed/ # 清洗處理后的數(shù)據(jù) │ └── external/ # 外部數(shù)據(jù)如有 ├── notebooks/ # Jupyter Notebook用于EDA和實(shí)驗(yàn) │ ├── 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/ # 保存訓(xùn)練好的模型文件.pkl或.joblib ├── reports/ # 生成的分析報(bào)告、圖表 ├── config.yaml # 配置文件數(shù)據(jù)庫(kù)連接、路徑、參數(shù)等 ├── requirements.txt # 項(xiàng)目依賴包列表 └── README.md # 項(xiàng)目說(shuō)明文檔這種結(jié)構(gòu)將數(shù)據(jù)、探索性代碼、生產(chǎn)代碼、產(chǎn)出物清晰分離。src下的模塊化代碼最終可以被一個(gè)主腳本如train.py調(diào)用實(shí)現(xiàn)從數(shù)據(jù)到模型的一鍵化訓(xùn)練。4. 數(shù)據(jù)探索性分析用眼睛“看見(jiàn)”風(fēng)險(xiǎn)在動(dòng)任何模型之前我們必須深入了解數(shù)據(jù)。探索性數(shù)據(jù)分析EDA的目標(biāo)是發(fā)現(xiàn)數(shù)據(jù)的特點(diǎn)、問(wèn)題以及潛在的規(guī)律。這個(gè)過(guò)程我通常在Jupyter Notebook中完成。4.1 數(shù)據(jù)加載與初窺首先使用pandas加載數(shù)據(jù)集假設(shè)為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) # 設(shè)置顯示所有列 pd.set_option(display.max_columns, None) # 加載數(shù)據(jù) df pd.read_csv(./data/raw/loan_data.csv) print(f數(shù)據(jù)集形狀: {df.shape}) print(df.head()) print(df.info()) print(df.describe())df.info()會(huì)告訴我們每列的非空值數(shù)量、數(shù)據(jù)類型是發(fā)現(xiàn)缺失值的第一步。df.describe()則展示數(shù)值型特征的統(tǒng)計(jì)摘要均值、標(biāo)準(zhǔn)差、分位數(shù)等能快速發(fā)現(xiàn)異常值比如年齡為200歲。4.2 目標(biāo)變量分布直面不平衡現(xiàn)實(shí)接下來(lái)首要任務(wù)是查看目標(biāo)變量假設(shè)列名為is_default的分布。target_dist df[is_default].value_counts(normalizeTrue) print(f目標(biāo)變量分布:\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遠(yuǎn)低于10%我們就確認(rèn)了這是一個(gè)嚴(yán)重不平衡數(shù)據(jù)集。這是風(fēng)控?cái)?shù)據(jù)的常態(tài)也決定了我們不能用準(zhǔn)確率Accuracy作為核心評(píng)估指標(biāo)而應(yīng)關(guān)注精確率Precision、召回率Recall和F1-Score尤其是召回率我們抓住了多少比例的違約客戶。4.3 單變量與多變量分析單變量分析查看每個(gè)特征的分布。對(duì)于連續(xù)型特征如收入、貸款金額繪制直方圖Histogram或核密度估計(jì)圖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()對(duì)于類別型特征如職業(yè)、教育程度繪制柱狀圖查看各類別的樣本數(shù)量。同時(shí)可以計(jì)算每個(gè)類別下違約率的差異初步判斷該特征是否與違約相關(guān)。# 分析‘education’與違約的關(guān)系 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()多變量分析相關(guān)性分析計(jì)算數(shù)值特征之間的皮爾遜相關(guān)系數(shù)并繪制熱力圖。這有助于發(fā)現(xiàn)高度相關(guān)的特征后續(xù)可以考慮去除或合并以降低模型復(fù)雜度、避免多重共線性。plt.figure(figsize(12, 8)) # 選擇數(shù)值型列 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()特征與目標(biāo)的關(guān)系對(duì)于重要的連續(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()如果違約組和非違約組在某個(gè)特征上的分布有顯著差異那么這個(gè)特征很可能是一個(gè)強(qiáng)預(yù)測(cè)因子。4.4 發(fā)現(xiàn)數(shù)據(jù)問(wèn)題并記錄通過(guò)EDA我們可能會(huì)發(fā)現(xiàn)缺失值某些特征如annual_income存在大量空值。異常值age列中出現(xiàn)0或150等不合理數(shù)值income列中有個(gè)別極大值可能是錄入錯(cuò)誤或特殊富豪客戶。數(shù)據(jù)不一致employment_length列中有的寫“5 years”有的寫“5”需要統(tǒng)一。類別不平衡某些類別特征如job_type的某個(gè)類別樣本極少。潛在泄露特征是否存在如days_past_due已逾期天數(shù)這類在貸前根本不可能知道的信息。將這些問(wèn)題一一記錄它們是下一步數(shù)據(jù)預(yù)處理和特征工程的輸入。5. 數(shù)據(jù)預(yù)處理與特征工程將原始數(shù)據(jù)轉(zhuǎn)化為模型“語(yǔ)言”原始數(shù)據(jù)就像未經(jīng)加工的礦石特征工程就是冶煉和提純的過(guò)程目的是提取出對(duì)預(yù)測(cè)目標(biāo)最有用的信息。這一步直接決定了模型性能的上限。5.1 缺失值處理策略缺失值不能直接丟給模型必須處理。策略因特征類型和缺失原因而異連續(xù)型特征均值/中位數(shù)/眾數(shù)填充最常用。如果數(shù)據(jù)分布對(duì)稱用均值如果存在偏態(tài)或異常值用中位數(shù)更穩(wěn)健。對(duì)于風(fēng)控?cái)?shù)據(jù)我通常優(yōu)先使用中位數(shù)填充因?yàn)樗鼘?duì)異常值不敏感。from sklearn.impute import SimpleImputer # 對(duì)收入用中位數(shù)填充 median_imputer SimpleImputer(strategymedian) df[income] median_imputer.fit_transform(df[[income]])基于模型的填充用其他特征預(yù)測(cè)缺失值。更復(fù)雜但可能更準(zhǔn)確。例如用年齡、職業(yè)、教育程度來(lái)預(yù)測(cè)收入??梢允褂肒NN或隨機(jī)森林回歸。增加缺失指示器創(chuàng)建一個(gè)新的布爾特征標(biāo)記該位置是否缺失。有時(shí)“缺失”本身也是一種信息例如拒絕填寫收入可能意味著收入不穩(wěn)定。類別型特征單獨(dú)作為一個(gè)類別如‘Unknown’填充。用眾數(shù)出現(xiàn)最頻繁的類別填充。5.2 異常值檢測(cè)與處理異常值可能是錯(cuò)誤也可能是特殊但真實(shí)的個(gè)案如超高凈值客戶。粗暴刪除可能損失信息。檢測(cè)方法標(biāo)準(zhǔn)差法假設(shè)數(shù)據(jù)服從正態(tài)分布將超出均值±3倍標(biāo)準(zhǔn)差的值視為異常。但金融數(shù)據(jù)常不服從正態(tài)分布。分位數(shù)法IQR更穩(wěn)健。計(jì)算第一四分位數(shù)Q1和第三四分位數(shù)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)]處理方法刪除僅當(dāng)確信是數(shù)據(jù)錄入錯(cuò)誤且占比極小時(shí)使用。縮尾Winsorization將超出指定分位數(shù)如1%和99%的值用該分位數(shù)的值替換。這是風(fēng)控中處理極端值的常用方法能保留樣本但削弱極端值的影響。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])視為缺失值并用中位數(shù)等填充。分箱Binning將連續(xù)變量離散化異常值會(huì)被歸入最高或最低的箱中。5.3 類別型特征編碼機(jī)器學(xué)習(xí)模型只能處理數(shù)值。需要將文本類別轉(zhuǎn)化為數(shù)字。標(biāo)簽編碼Label Encoding為每個(gè)類別分配一個(gè)整數(shù)如[‘高中’ ‘本科’ ‘碩士’]-[0, 1, 2]。適用于有序類別如學(xué)歷等級(jí)。對(duì)于無(wú)序類別模型可能會(huì)錯(cuò)誤地認(rèn)為數(shù)字大小有意義。獨(dú)熱編碼One-Hot Encoding為每個(gè)類別創(chuàng)建一個(gè)新的二進(jìn)制特征0或1。這是處理無(wú)序類別的標(biāo)準(zhǔn)方法。但若類別很多如“職業(yè)”有上百種會(huì)產(chǎn)生大量稀疏特征增加計(jì)算負(fù)擔(dān)和過(guò)擬合風(fēng)險(xiǎn)。from sklearn.preprocessing import OneHotEncoder encoder OneHotEncoder(sparse_outputFalse, dropfirst) # dropfirst避免多重共線性 encoded_features encoder.fit_transform(df[[education, job_type]]) # 將編碼后的特征合并回原DataFrame需處理列名目標(biāo)編碼Target Encoding / Mean Encoding用該類別下目標(biāo)變量的均值對(duì)于回歸或違約率對(duì)于分類來(lái)替換類別。例如“職業(yè)學(xué)生”的違約率是5%就用0.05替換所有“學(xué)生”。這種方法能捕捉類別與目標(biāo)的關(guān)系但容易引起過(guò)擬合需要配合交叉驗(yàn)證進(jìn)行平滑處理。category_encoders庫(kù)提供了穩(wěn)健的實(shí)現(xiàn)。5.4 創(chuàng)造新特征領(lǐng)域知識(shí)的體現(xiàn)這是特征工程中最有價(jià)值的部分需要結(jié)合對(duì)信貸業(yè)務(wù)的理解。衍生比率特征負(fù)債收入比DTI 總月負(fù)債 / 月收入。這是風(fēng)控的核心指標(biāo)。貸款收入比LTI 貸款金額 / 年收入。月供收入比 月還款額 / 月收入。分箱與離散化將連續(xù)年齡分為[18-25, 26-35, 36-50, 51-65, 65]。將收入分為[低 中 高]。分箱后可以作為類別特征處理或者進(jìn)行目標(biāo)編碼能更好地捕捉非線性關(guān)系并且對(duì)異常值更魯棒。交互特征年齡 * 收入或許年輕高收入者和年輕低收入者的風(fēng)險(xiǎn)模式不同。貸款期限 * 貸款利率反映總利息負(fù)擔(dān)。時(shí)間維度特征如果有時(shí)間序列數(shù)據(jù)歷史逾期次數(shù)、最大逾期天數(shù)、最近一次逾期距今月份數(shù)等。基于過(guò)去6/12個(gè)月的消費(fèi)、還款行為計(jì)算出的趨勢(shì)指標(biāo)如月均消費(fèi)增長(zhǎng)率。實(shí)操心得特征工程不是一蹴而就的。我通常先構(gòu)建一個(gè)基礎(chǔ)特征集原始特征少量關(guān)鍵衍生特征訓(xùn)練一個(gè)基線模型。然后通過(guò)特征重要性分析如樹(shù)模型提供的feature_importances_或SHAP值找出重要特征再圍繞它們進(jìn)行更精細(xì)的加工和創(chuàng)造。這是一個(gè)迭代的過(guò)程。6. 應(yīng)對(duì)不平衡數(shù)據(jù)讓模型“看見(jiàn)”少數(shù)派在不平衡數(shù)據(jù)上直接訓(xùn)練模型會(huì)嚴(yán)重偏向多數(shù)類。我們必須采取策略讓模型“公平”地學(xué)習(xí)。6.1 評(píng)估指標(biāo)的選擇放棄準(zhǔn)確率首先要確立正確的評(píng)估標(biāo)準(zhǔn)。假設(shè)我們有10000個(gè)樣本其中9900個(gè)正常100個(gè)違約。一個(gè)將所有樣本都預(yù)測(cè)為“正?!钡纳倒夏P蜏?zhǔn)確率高達(dá)99%。但這毫無(wú)用處。我們更關(guān)心在所有的違約客戶中我們抓住了多少召回率 Recall/Sensitivity以及在我們預(yù)測(cè)為違約的客戶中有多少真的是違約精確率 PrecisionF1-Score是精確率和召回率的調(diào)和平均數(shù)是一個(gè)不錯(cuò)的綜合指標(biāo)。ROC-AUC接收者操作特征曲線下面積。它衡量的是模型將正例違約排在負(fù)例正常前面的能力。AUC越接近1越好0.5相當(dāng)于隨機(jī)猜測(cè)。AUC對(duì)類別不平衡相對(duì)不敏感是風(fēng)控模型常用的核心指標(biāo)。PR-AUC精確率-召回率曲線下面積。在正例非常少的不平衡場(chǎng)景下PR-AUC有時(shí)比ROC-AUC更能反映模型在正例上的表現(xiàn)。在sklearn中我們可以方便地計(jì)算這些指標(biāo)from sklearn.metrics import classification_report, roc_auc_score, average_precision_score # y_true 真實(shí)標(biāo)簽 y_pred 預(yù)測(cè)標(biāo)簽 y_pred_proba 預(yù)測(cè)概率 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 采樣技術(shù)改變數(shù)據(jù)分布過(guò)采樣Oversampling增加少數(shù)類樣本。隨機(jī)過(guò)采樣簡(jiǎn)單復(fù)制少數(shù)類樣本。容易導(dǎo)致過(guò)擬合。SMOTESynthetic Minority Oversampling Technique在少數(shù)類樣本之間進(jìn)行插值生成“合成”新樣本。這是目前最流行的方法之一。from imblearn.over_sampling import SMOTE smote SMOTE(random_state42) X_resampled, y_resampled smote.fit_resample(X_train, y_train)ADASYN在SMOTE基礎(chǔ)上根據(jù)樣本密度自適應(yīng)地生成不同數(shù)量的新樣本關(guān)注那些更難學(xué)習(xí)的少數(shù)類樣本。欠采樣Undersampling減少多數(shù)類樣本。隨機(jī)欠采樣隨機(jī)丟棄多數(shù)類樣本。會(huì)損失大量信息。Tomek Links移除多數(shù)類中與少數(shù)類樣本非常接近的樣本“邊界”樣本使類別邊界更清晰。Cluster Centroids使用K-Means對(duì)多數(shù)類進(jìn)行聚類然后用聚類中心代替整個(gè)簇實(shí)現(xiàn)有代表性的欠采樣。結(jié)合采樣如SMOTEENN先SMOTE過(guò)采樣再用Edited Nearest Neighbours清理噪聲樣本。注意事項(xiàng)采樣必須在訓(xùn)練集上進(jìn)行絕對(duì)不能在整個(gè)數(shù)據(jù)集上做也絕對(duì)不能影響測(cè)試集標(biāo)準(zhǔn)的流程是先劃分訓(xùn)練集和測(cè)試集然后在訓(xùn)練集內(nèi)部進(jìn)行交叉驗(yàn)證和采樣。測(cè)試集必須保持原始分布以評(píng)估模型在真實(shí)不平衡世界中的表現(xiàn)。6.3 算法層面的調(diào)整改變模型目標(biāo)許多算法本身提供了處理不平衡的選項(xiàng)。調(diào)整類別權(quán)重Class Weight在訓(xùn)練時(shí)給少數(shù)類的樣本更高的權(quán)重讓模型更關(guān)注它們。Scikit-learn的許多模型如LogisticRegression,RandomForestClassifier,SVC都支持class_weight參數(shù)??梢栽O(shè)置為‘balanced’讓算法自動(dòng)按類別頻率的倒數(shù)調(diào)整權(quán)重。from sklearn.ensemble import RandomForestClassifier model RandomForestClassifier(class_weightbalanced, random_state42)使用對(duì)不平衡不敏感的算法梯度提升樹(shù)如LightGBM, XGBoost本身對(duì)不平衡數(shù)據(jù)有一定魯棒性并且它們也提供了scale_pos_weightXGBoost或is_unbalanceLightGBM等參數(shù)來(lái)進(jìn)一步調(diào)整。我的常用策略我會(huì)先嘗試在不采樣的情況下使用帶有class_weightbalanced的邏輯回歸或隨機(jī)森林作為基線。然后嘗試SMOTE過(guò)采樣結(jié)合LightGBM/XGBoost。通過(guò)交叉驗(yàn)證對(duì)比ROC-AUC和PR-AUC選擇效果最好的組合。通常樹(shù)模型配合適當(dāng)?shù)牟蓸踊驒?quán)重調(diào)整效果最佳。7. 模型構(gòu)建、訓(xùn)練與評(píng)估尋找最優(yōu)風(fēng)險(xiǎn)識(shí)別器現(xiàn)在我們有了干凈、平衡或加權(quán)的訓(xùn)練數(shù)據(jù)可以開(kāi)始構(gòu)建和選擇模型了。7.1 數(shù)據(jù)劃分與交叉驗(yàn)證首先將特征X和目標(biāo)y分離并劃分訓(xùn)練集和測(cè)試集。測(cè)試集在整個(gè)訓(xùn)練過(guò)程中絕對(duì)不能觸碰它用于最終評(píng)估模型的泛化能力。from sklearn.model_selection import train_test_split # 假設(shè)df是經(jīng)過(guò)預(yù)處理和特征工程后的DataFrame X df.drop(columns[is_default, loan_id]) # 去掉目標(biāo)列和ID列 y df[is_default] # 劃分訓(xùn)練集和測(cè)試集通常70%-80%用于訓(xùn)練 X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.2, stratifyy, random_state42)stratifyy參數(shù)非常重要它保證在劃分后訓(xùn)練集和測(cè)試集中正負(fù)樣本的比例與原始數(shù)據(jù)集一致。為了在訓(xùn)練集上可靠地評(píng)估模型性能并調(diào)參我們使用K折交叉驗(yàn)證K-Fold Cross-Validation。特別是對(duì)于不平衡數(shù)據(jù)使用分層K折交叉驗(yàn)證Stratified K-Fold更好它能確保每一折中類別比例相同。from sklearn.model_selection import StratifiedKFold, cross_val_score cv StratifiedKFold(n_splits5, shuffleTrue, random_state42) # 以ROC-AUC為評(píng)估指標(biāo)進(jìn)行交叉驗(yàn)證 model RandomForestClassifier(class_weightbalanced, random_state42) cv_scores cross_val_score(model, X_train, y_train, cvcv, scoringroc_auc) print(f交叉驗(yàn)證ROC-AUC得分: {cv_scores.mean():.4f} (/- {cv_scores.std()*2:.4f}))7.2 模型選型與對(duì)比我們將對(duì)比幾種在風(fēng)控領(lǐng)域常用的模型邏輯回歸Logistic Regression線性模型可解釋性強(qiáng)是風(fēng)控模型的傳統(tǒng)主力。它可以輸出概率并且可以通過(guò)系數(shù)大小判斷特征影響的方向和程度。作為優(yōu)秀的基線模型。隨機(jī)森林Random Forest集成樹(shù)模型能捕捉非線性關(guān)系對(duì)異常值和缺失值不敏感能輸出特征重要性。抗過(guò)擬合能力較強(qiáng)。梯度提升樹(shù)Gradient Boosting TreesXGBoost速度、精度和功能性的標(biāo)桿提供了豐富的正則化選項(xiàng)防止過(guò)擬合。LightGBM微軟出品采用基于直方圖的算法和Leaf-wise生長(zhǎng)策略訓(xùn)練速度更快內(nèi)存消耗更小在大數(shù)據(jù)集上表現(xiàn)優(yōu)異是當(dāng)前工業(yè)界風(fēng)控建模的“標(biāo)配”之一。CatBoost擅長(zhǎng)處理類別特征無(wú)需單獨(dú)編碼且對(duì)過(guò)擬合有很好的抵抗。我會(huì)用交叉驗(yàn)證的ROC-AUC來(lái)初步比較這些模型。通常LightGBM和XGBoost會(huì)表現(xiàn)最好。7.3 超參數(shù)調(diào)優(yōu)讓模型發(fā)揮最佳性能模型有很多“旋鈕”超參數(shù)如樹(shù)的深度、學(xué)習(xí)率等需要調(diào)整以獲得最佳性能。手動(dòng)調(diào)參費(fèi)時(shí)費(fèi)力我們使用自動(dòng)化工具。網(wǎng)格搜索GridSearchCV指定一組超參數(shù)值窮舉所有組合。適用于參數(shù)較少的情況。隨機(jī)搜索RandomizedSearchCV在指定的參數(shù)分布中隨機(jī)采樣一定數(shù)量的組合。效率更高尤其當(dāng)參數(shù)空間很大時(shí)。貝葉斯優(yōu)化Bayesian Optimization使用如scikit-optimize或optuna庫(kù)根據(jù)歷史評(píng)估結(jié)果智能地選擇下一組要嘗試的參數(shù)通常能以更少的嘗試找到更優(yōu)解。以下是一個(gè)使用GridSearchCV對(duì)LightGBM進(jìn)行調(diào)優(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核心 # 定義要搜索的參數(shù)網(wǎng)格 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é)點(diǎn)數(shù)與max_depth相關(guān) subsample: [0.8, 1.0], # 樣本采樣比例 colsample_bytree: [0.8, 1.0], # 特征采樣比例 } # 使用分層K折交叉驗(yàn)證進(jìn)行網(wǎng)格搜索 grid_search GridSearchCV( estimatorlgb, param_gridparam_grid, cvStratifiedKFold(n_splits3, shuffleTrue, random_state42), # 調(diào)參時(shí)可以用少一些的折數(shù)加快速度 scoringroc_auc, n_jobs-1, verbose1 ) grid_search.fit(X_train, y_train) print(f最佳參數(shù): {grid_search.best_params_}) print(f最佳交叉驗(yàn)證ROC-AUC: {grid_search.best_score_:.4f}) # 獲取最佳模型 best_lgb_model grid_search.best_estimator_7.4 模型評(píng)估與閾值選擇用最佳模型在測(cè)試集上進(jìn)行最終評(píng)估。記住測(cè)試集是模型從未見(jiàn)過(guò)的數(shù)據(jù)。from sklearn.metrics import roc_curve, precision_recall_curve, confusion_matrix # 預(yù)測(cè)概率 y_pred_proba_test best_lgb_model.predict_proba(X_test)[:, 1] # 計(jì)算測(cè)試集ROC-AUC test_auc roc_auc_score(y_test, y_pred_proba_test) print(f測(cè)試集 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--) # 對(duì)角線 plt.xlabel(False Positive Rate) plt.ylabel(True Positive Rate) plt.title(ROC Curve on Test Set) plt.legend() plt.show()模型輸出的是違約概率。我們需要一個(gè)閾值來(lái)將其轉(zhuǎn)化為“違約”或“不違約”的決策。閾值的選擇是一個(gè)業(yè)務(wù)決策取決于我們更看重召回率抓住更多壞人還是精確率減少誤殺好人。如果業(yè)務(wù)目標(biāo)是嚴(yán)格控制壞賬率寧愿錯(cuò)殺好客戶也不放過(guò)壞客戶可以選擇一個(gè)較低的閾值如0.3提高召回率。如果業(yè)務(wù)目標(biāo)是擴(kuò)大業(yè)務(wù)規(guī)模容忍一定壞賬但希望盡可能減少對(duì)好客戶的誤拒可以選擇一個(gè)較高的閾值如0.7提高精確率。我們可以通過(guò)分析不同閾值下的精確率-召回率曲線來(lái)輔助決策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對(duì)應(yīng)精確率: {precisions[optimal_idx]:.3f}, 召回率: {recalls[optimal_idx]:.3f}) # 使用選定的閾值做最終預(yù)測(cè) final_threshold 0.4 # 根據(jù)業(yè)務(wù)需求調(diào)整 y_pred_final (y_pred_proba_test final_threshold).astype(int) # 輸出分類報(bào)告和混淆矩陣 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實(shí)際違約且被預(yù)測(cè)為違約抓對(duì)了。假正例FP實(shí)際正常但被預(yù)測(cè)為違約誤殺。真負(fù)例TN實(shí)際正常且被預(yù)測(cè)為正常放對(duì)了。假負(fù)例FN實(shí)際違約但被預(yù)測(cè)為正常漏殺。業(yè)務(wù)人員可以根據(jù)混淆矩陣和成本誤殺損失利息漏殺損失本金來(lái)量化模型帶來(lái)的價(jià)值。8. 模型解釋與部署準(zhǔn)備從黑盒到白盒在金融風(fēng)控領(lǐng)域模型的可解釋性至關(guān)重要。監(jiān)管要求、內(nèi)部風(fēng)控評(píng)審都需要知道模型為什么做出某個(gè)決策。8.1 全局解釋哪些特征最重要樹(shù)模型如LightGBM自帶特征重要性屬性可以告訴我們哪些特征對(duì)模型預(yù)測(cè)的貢獻(xiàn)最大。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()通常你會(huì)發(fā)現(xiàn)debt_to_income_ratio負(fù)債收入比、credit_history_length信用歷史長(zhǎng)度、annual_income年收入等特征排名靠前這符合業(yè)務(wù)直覺(jué)。8.2 局部解釋為什么這個(gè)客戶被拒絕對(duì)于單個(gè)客戶的預(yù)測(cè)我們可以使用SHAP (SHapley Additive exPlanations)值進(jìn)行解釋。SHAP值基于博弈論公平地將模型預(yù)測(cè)值分配到每個(gè)特征上。import shap # 初始化JS可視化用于Notebook shap.initjs() # 創(chuàng)建一個(gè)解釋器 explainer shap.TreeExplainer(best_lgb_model) # 計(jì)算測(cè)試集前100個(gè)樣本的SHAP值計(jì)算全部可能較慢 shap_values explainer.shap_values(X_test.iloc[:100]) # 1. 單個(gè)樣本的解釋例如第一個(gè)被預(yù)測(cè)為高風(fēng)險(xiǎn)的用戶 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圖展示單個(gè)預(yù)測(cè)中每個(gè)特征是如何將基礎(chǔ)值所有樣本的平均預(yù)測(cè)推向最終預(yù)測(cè)值的。紅色特征推高預(yù)測(cè)概率增加風(fēng)險(xiǎn)藍(lán)色特征推低預(yù)測(cè)概率降低風(fēng)險(xiǎn)。匯總圖每個(gè)點(diǎn)代表一個(gè)樣本。x軸是SHAP值對(duì)預(yù)測(cè)的影響大小顏色表示特征值的大小。可以看特征值與風(fēng)險(xiǎn)的關(guān)系例如debt_to_income_ratio越高SHAP值越大即風(fēng)險(xiǎn)越高。當(dāng)模型拒絕一個(gè)客戶的貸款申請(qǐng)時(shí)風(fēng)控人員可以調(diào)出該客戶的SHAP解釋圖清晰地告訴客戶“您的申請(qǐng)被拒絕主要是因?yàn)槟呢?fù)債收入比過(guò)高0.15且信用歷史較短0.08?!?這大大增強(qiáng)了模型的透明度和可信度。8.3 模型持久化與部署準(zhǔn)備訓(xùn)練好的模型需要保存下來(lái)以便在新的數(shù)據(jù)上做預(yù)測(cè)。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) # 對(duì)新數(shù)據(jù)進(jìn)行預(yù)測(cè) # new_data 是經(jīng)過(guò)完全相同預(yù)處理和特征工程后的DataFrame new_pred_proba loaded_model.predict_proba(new_data)[:, 1]在實(shí)際部署中你可能會(huì)封裝成API服務(wù)使用Flask或FastAPI創(chuàng)建一個(gè)Web服務(wù)接收客戶數(shù)據(jù)返回風(fēng)險(xiǎn)評(píng)分和決策建議。集成到風(fēng)控系統(tǒng)將模型預(yù)測(cè)邏輯寫成函數(shù)嵌入到銀行現(xiàn)有的信貸審批流程中。定期監(jiān)控與更新模型會(huì)隨著時(shí)間“老化”因?yàn)榭蛻粜袨楹秃暧^經(jīng)濟(jì)在變化。需要定期如每季度用新數(shù)據(jù)評(píng)估模型性能必要時(shí)重新訓(xùn)練或更新。9. 項(xiàng)目總結(jié)與避坑指南走完整個(gè)流程你會(huì)發(fā)現(xiàn)一個(gè)完整的風(fēng)控預(yù)測(cè)項(xiàng)目遠(yuǎn)不止“調(diào)個(gè)包跑個(gè)模型”那么簡(jiǎn)單。它融合了業(yè)務(wù)理解、數(shù)據(jù)處理、算法應(yīng)用和工程實(shí)踐。最后分享幾點(diǎn)我在這個(gè)項(xiàng)目復(fù)現(xiàn)和實(shí)際工作中的深刻體會(huì)第一數(shù)據(jù)質(zhì)量決定天花板特征工程決定你能摸多高?;ㄔ跀?shù)據(jù)清洗和特征工程上的時(shí)間通常占整個(gè)項(xiàng)目的60%-70%。一個(gè)聰明的特征如“近三個(gè)月查詢征信次數(shù)”可能比換一個(gè)更復(fù)雜的模型提升更大。務(wù)必警惕數(shù)據(jù)泄露確保所有特征在預(yù)測(cè)時(shí)都是可獲得的。第二不平衡處理是風(fēng)控建模的必修課。不要只看準(zhǔn)確率。ROC-AUC和PR-AUC是你的好朋友。多嘗試幾種采樣方法和算法內(nèi)置的類別權(quán)重調(diào)整并在驗(yàn)證集上仔細(xì)評(píng)估其對(duì)召回率抓壞人能力的影響。第三模型解釋性與性能同等重要。特別是在金融領(lǐng)域一個(gè)無(wú)法解釋的“黑盒”模型即使AUC再高也很難通過(guò)內(nèi)審和監(jiān)管的挑戰(zhàn)。LightGBM/XGBoost SHAP 是目前兼顧性能與可解釋性的黃金組合。在特征設(shè)計(jì)時(shí)也要盡量使用業(yè)務(wù)上可理解的變量。第四交叉驗(yàn)證是防止過(guò)擬合的保險(xiǎn)繩。永遠(yuǎn)不要用測(cè)試集來(lái)調(diào)參或做模型選擇。堅(jiān)持使用交叉驗(yàn)證來(lái)評(píng)估模型在訓(xùn)練集上的泛化能力。隨機(jī)種子random_state要固定確保結(jié)果可復(fù)現(xiàn)。第五從實(shí)驗(yàn)到生產(chǎn)有很長(zhǎng)的路要走。Notebook里的模型只是原型。要將其轉(zhuǎn)化為生產(chǎn)系統(tǒng)你需要考慮特征工程的代碼如何模塊化、自動(dòng)化模型如何版本管理預(yù)測(cè)服務(wù)如何保證低延遲、高并發(fā)預(yù)測(cè)結(jié)果如何與業(yè)務(wù)系統(tǒng)聯(lián)動(dòng)監(jiān)控指標(biāo)如何設(shè)計(jì)如模型穩(wěn)定性PSI、預(yù)測(cè)分?jǐn)?shù)分布變化這是一個(gè)更大的系統(tǒng)工程。這個(gè)基于Python的個(gè)貸違約預(yù)測(cè)項(xiàng)目就像一張精細(xì)的“風(fēng)險(xiǎn)地圖”繪制指南。它從數(shù)據(jù)源頭開(kāi)始教你如何清理、加工信息如何選擇合適的“繪圖工具”模型如何校準(zhǔn)“圖例”閾值以適應(yīng)不同的業(yè)務(wù)場(chǎng)景最后還教你如何向別人解釋這張地圖為什么這么畫。希望這份詳盡的指南能幫你不僅跑通代碼更能理解背后每一步的“為什么”真正掌握用數(shù)據(jù)驅(qū)動(dòng)信貸風(fēng)險(xiǎn)決策的核心能力。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
蜜臀久久99精品久久久老,,| 最新日产中文在线麻豆| 黄色成年| 久射吧| 超91综合网| 伊人一区二区在线播放| 屁股久久久久久久| 2020中文字幕在线| 91劲爆| 大香蕉色网| 人妻少妇视频在线播放| 丁香五月天堂网| 97任你吞精| 国产成人拍国产亚洲精品| 超碰99热中文字幕| 亚洲男人的天堂一区二区| 高跟丝袜AV专区国产| 日夜伊人网| 欧美亚洲韩国视频十五区| 狠色婷婷久久一区二区三区_| 亚洲综合九| AV天天综合| 人妻少妇色综合| 日本国产欧美高清在线| 不卡免费av在线播放| 一牛影视成人片免费| 91网站18| 欧美黄色片AAAAA| 国产 亚洲 丝袜 制服| 黄视频免费| 天天视频网站黄| 国产成人亚洲精品无| 操逼视频亚洲| 探花激情视频| 国产欧美一区激情交| 国产亚洲精品农村妇女| 欧美成人四级在线播放| 亚洲美女自拍偷拍视频| 久久久18| 蜜臀亚洲中文| 色偷综合| 91亚洲欧美激情| 91亚洲欧美激情| 亚州综合网| 成人午夜高潮av猛片| 97久久国产亚洲精品超碰热| 超碰视97中文| 操逼无毒无码免费视频| 大香蕉2017| 1禁看欧美黄片免费看| 欧美v亚洲v综合v国产v妖精| 任我爽视频在线观看| 国产视频一区二区三区在线免费观看| 操逼日韩无码| 久久大陆| 欧美综合天天| 91GD.COM| 国产AV色黄看到爽| 在线观看中文字幕| 人妻夜夜爽天天爽麻豆三区网站| 中文97国产| 人澡逼| 观看免费区二区三区二| 91狠| 国产精品亚洲色婷婷久久久| 大香蕉懂9| 丝袜内射| 日日夜夜模| 夜夜爽爽夜夜精品视频| 中文字幕乱偷人妻久久艾草网| 我中文字幕6区 | 欧美综合色综合| 97亚洲资源| 色婷婷在线视频精品导航| 人妻久久久久久久久久久久久久久| 91操人| 亚洲一区二区三区不卡国产欧美| 国产精品毛片?v一区二区三区| 国产精品又黄又猛又粗| 国产刺激视频| 色五91| 欧美少妇一区二区三区| 一区二区激情国产熟女 | 蜜臀中文无码午夜| 97超碰中文字幕| 久视频在线观看| 亚洲综合20p| 亚洲综合色在线| 激情婷婷丁香网| 亚洲欧美97| 91色图| 日本成a人v网站在线观看| 懂色中文一区二区三区| 久久99热这里只频精品6学生| 日本熟妇人妻中出视频| 久久久久国产一区二| 91干熟女| 色哟哟精品1精品2| 大香蕉99999| 人人操人人摸人人看人人插| 国产亚洲一黄| 亚洲 图片 欧美 色图| 99热日| 国产熟女无套内射| 日本午夜操逼| 综合网,亚洲,欧美| 国产91丝袜 在线播放| 成人97人人超碰人人| 一线黄色免费性爱片| 狠日操| 色噜噜狠狠色综合日日| 天美久久久久| 在线无码操| 亚洲影视综合网| 麻豆区久久久久亚| 久操操AV电影| 亚洲欧洲美腿丝袜| 亚洲三级。日韩三级| 久久夜夜夜| 啊啊啊啊免费视频| 自拍偷拍国产欧美日韩韩| 97啪啪| 久久精品人妻一区二区三区| 亚洲色图日韩精品| 999综合色| 蜜臀一区二区三区在线| 日va操| 亚洲区限制级| 色欲无码人妻日韩欧美精品| 亚洲AV高潮| 久操精品| 欧美黄片视频在线观看免费 | 亚洲精品国产日韩无码AV永久免| 人妻AV 中文字幕的| av久日| 日本欧美一区二区三区免费| 91麻豆天美传媒HD| 日本欧美一区二区三区视频麻豆| 蜜桃在线观看一区二区三区| 青青青国产手线观看视频2| 日韩乱码Av| 丁香五月天堂网| 亚洲美腿丝袜香蕉影视欧美成人| 亚洲五码一区二区三区| 丝袜加勒比| 自拍偷拍 日韩无码| 亚洲婷婷五月天| 欧美97日韩| 亚洲图片欧美色| 99999久久久久9国产精品| 天天噜| 91色黑人少妇| 久久久久亚洲Aⅴ无码| 熟女露脸激情自拍视频| 熟女精品一区二区三区| 人人射人人操人人摸| 久久婷婷欧美| 天天日B狠狠操| 93人人操人人| a片自拍直播视频| 啊啊啊不要嗯嗯在线观看| 九九九九日本| 亚洲精品乱码久久久久久蜜桃麻豆| 青青伊人久久| 亚洲久久久| 老熟妇综合| 婷婷丁香熟妇综合网| 一区二区乱码福利| 久久亚洲AV无码专区首页| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 国产精选视频| 夫妻四区五区六区| 精品久久久中文字幕不| 色五月婷婷网| AV九九| 操逼视频免费日韩无码| 天天日天天干天天操| 搡老女人老91妇女熟女| 四季AV综合网址| 色综合中文字幕不卡| 狼狼色丁香久久婷婷综合五月| 青草精品视频一日本久久久久网站| 一区麻豆 高清中文字幕| 五月大香蕉| 婷婷亚洲天堂| 丁香五月影院| 国产熟女精品一区二区| 91热色| 欧洲亚洲人人爽爽视频| 中日韩一区二区三区欧美| 高清国产性猛交xxxx乱大交| 精品一二三区四视频| 国内毛片四区| 久久专区| 91美女在线看| 亚洲综合贴图91| 天天射日日干| 亚洲精品蜜桃久久久久久久| 久操婷婷| 人妻熟妇一区二区三区| 国产一级久久久| 夜夜操天| 人人插人人搞人人操| 超碰碰97资源站| 9997se| 狠狠干,狠狠操| 又摸又舔在线观看网站| 国产精品激情久久久久久久| 欧美精品第3页| 三男一女不戴套的A片| 欧美视频一区二区三区| 性色高清在线| 青青草依人大香蕉| 久久久人体| 97超视频在线观看| 九九精品热| 蜜桃av综合网发布| 成人A片男人的天堂| 中文字幕黄色一起草| 夜夜操二区| 欧美大片91| 天天日美女的B| 大香蕉AV在线| 正在播放国产精品一区| 18禁久久| 亚洲丝袜色图| 亚洲一二三四区在线免费看视频| 一卡二卡在线播放| 亚洲第91页 | 熟妇一区,二区,三区。| 日韩国产乱子伦App| 亚洲男人在线观看天堂| 91精品国产长腿丝袜美女| 久久人人妻| 欧美日韩国产黄色片| 亚洲一区日韩精品中文字幕| 无码天天操| 亚洲综合九| 久久亚洲精品成人av| 亚洲在钱| 亚洲 另类 丝袜 自拍 动漫| 超91综合网| 久久久久久AⅤ无码免费肉站 | 99国产精品自在自在| 四虎永久在线精品免费网址 | 欧美96交| 98久久超碰| 婷婷三区| 欧美夜夜草视频| 蜜桃精品一区二区三区ww| 殴美牲| 97在线免费| 91处女在线视频| 亚洲欧洲美腿丝袜| 亚洲最大91网| 91碰碰| 可免费观看的av毛片中日美韩| WWW美腿丝袜香蕉中文| 天美国产三级传媒| 日本一线产区和二线产区伦理片| 国产蜜臀精品一区免费尤物| 狠狠搞 亚洲91| 日本狂喷奶水在线播放212| 九九九九精品一区| 啊啊啊好舒服好爽啊啊啊视频| 亚洲一区深夜| 伦理片秋霞免费影院| 婷婷丁香成人| 97视频免费播放| 偷窥自拍亚洲色图| 亚洲好看强奸乱伦| 久久超碰大香蕉| 日语五十路和六十路亚洲国产精品| 花野真衣| 国产路线专区| 国产超碰在线| 另类图片五月| 亚洲成人性爱网站在线播放| 美女黄色91| 激情久久av一区av二区av| 97欧美日韩| 亚洲综合性网址| 国产综合操逼高清| 黄片com.| 色婷婷蜜臀av| 久久婷五月天| 色哟哟511老熟女| 女同性恋一区二区三区精品视频| 欧美性爱第一页久久| 试看60秒| 欧美日韩人人早| 2018天天干在线视频| 日韩97P| 亚洲色资源| 大香蕉伊利av| 日日爽夜夜爽| 国产精品久久久久综合| 操人人| 无码二级三级| 久久亚洲天堂| 成人麻豆av电影网站| 在线播放成人高清免费视频| 国产传媒一区日韩| 久久久一区二区三区麻豆| 97久久久久久久精| 日逼国产| 成人免费看吃奶视频网站| 亚洲精品欧洲色| 91网站18+| 色欲久久综合| 嫩草一区二区在线观看| 91无码人妻精品一区二区三区蜜桃| 狠狠色丁香| 91|九色|国产熟女| 手机看片1024你懂的国产| 精品国产无码中文| 亚洲图片激情小说| AND人妻系列| 5月婷婷6月六月丁香| 欧美性爱三区二区| 精品性爱无码在线播放| 凹凸视频特色日本特黄| 天天操天天舔| 欧美人人曰人人操人人射射| 制度丝袜99| 日韩精品在线视频,日韩精品……| 天天噜| 九九九九九九综合| 亚洲色图 综合| 欧美在线第五页| 久久一二三四五六七八九区| 欧美96精品在线| 亚洲天堂精品日韩电影| 91AV入口| 日本 色 导航| 激情综合网一盗摄| 久久久久久中文| 亚洲欲色| 久久首页| 极品尤物女神在线观看| 色情成人五月天| 久草婷婷| 啊啊啊啊好疼| 超碰国产精品无码| 久久婷婷五月综合| 99久久久er直播网址| 97在线精品观看视频| 999国产精品999| 日韩偷拍色图| 婷婷另类小说| 精品一区二区2| 日本韩国国产精品一区| 久久久成人国产精品无码| 国产原创自拍| 亚洲男人综合网| 三上悠亚在线毛片91| 久久久少妇诱惑精品视频| 四季av一区二区凹凸精品小说| a片在线播放| 天天看高清麻豆| 欧美少妇色综合| 超碰地址久久| 一级特级aaaa毛片免费观看| 97精品国产97久久久久久免费| 性性欧美| 东北女人无套内谢视频| α√在线| 美女诱惑在线一区| 色综和网| 国产主播福利| 欧美综合自拍成人自拍第二十页| 亚洲综合婷婷| 欧美色66| www国产无码| 亚州综合AⅤ| 97中文综合| 极品欧美一区二区三区| www.操| 亚洲高清色综合| 午夜福利无毒不卡| 色爱综合网| 亚洲欧美97√| 欧美国产欧美在线观看| 91天天综合网,天天综合网| 久久婷婷一区| 激情久久av一区av二区av| 色五月激情AV在线| 思思热影视| 噜噜噜亚洲精品| 日韩黄片视频试看| 性性欧美| 视频一区二区三区精品| 99青青草国产视频| 少妇厨房愉情理伦片bd在线观看| 色哟哟-国产专区| 国产成年女黄特黄| 美女大乳久久久久久久女人18| 久久精品中文| 2025年A片视频精品| 欧美熟妇视频| 亚洲无码99| 久久久久久欧美精品se一二三四| 亚洲精品啪视频| 91小视频| 一本色道熟妇| 日韩无码嘿咻黑热久| A级在线视频| 欧美狠狠鲁| 超碰在线香蕉| 久久久久久久久女黄| 色99色| 欧美97| 久久免费看高潮毛片韩国| 亚洲无码太久| 男人天堂无码| 伊人操| 中文字幕视频一区视频二区| 国产精品女aA片爽爽视频| a人欧美综合天堂麻豆| 3d成人精品一区二区| 国产精品久久久午夜夜伦鲁鲁| 思思热在线观看| 99热这里都是精品| 60秒试看最爽10分钟网站| 高清一区AV无码| 东京男人天堂| 99国产精品自在自在| 日本在线视频导航| 操逼操逼操| 国产诱惑| 精品国产自在在线99| 日韩精品在线观看观看| 性色综合网| 国产成人精品一区| 久久精品国产AV一区二区三区| 另类专区加勒比| 999日韩中文精品观看视频。| 在线日韩日本亚洲国产| 999久久芭蕾| 绯色AV粉色AV蜜臀AV| 尤物网站91| 另类欧美| 国产精品自拍欧美在线| 综合亚洲情色| 一区二区三区机械有限公司| 欲色影视综合吧| 人人干人人搞人人摸| 综合伊人网12色| 伊人激情五月天一区二区| 九九九九久久久久| KK色在线影院| 9 1超碰九色| 蜜屁Av| 福利风月五月天影院| www色色com| 色噜噜精品一区二区三| 欧美综合娱乐久久| 日韩福利综合一区| 性91| 天美av在线| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 麻豆精品久久久久久久| 日本九九九九| 丁香六月婷婷| 伊人五月天| 六月婷婷激情| 老女人爆菊| 超碰久久性爱| 色综合加勒比四四季| 人妻一区二区三区视频 | 欧美日韩大香蕉| 成人羞羞视频国产| 极品销魂美女一区二区| 国产福利电影| 国产专区第一页| 久久九九视频九九视频| 亚洲AV无码乱码在线观看性色| 日韩一级成人毛片免费观看| 99久久久无码国产精品性男| 人人透人人操| 熟女天天干| 日韩精品国产一区二区| 操逼片中文| 超碰在线人妻| 久久综合精品一区二区三区| 91视频综合在线| 天天操熟妇| 91东北熟女| 国产精品爽爽v| 久久激情五月| 久久精品亚洲婷婷| 久久亚码| 熟女探花啪啪| 插日本熟女视频| 亚洲精品色| 99老司机精品视频在线观看| 熟女五十路一区二区三| 欧美成人性爱视频大全| 亚洲视频,小说| 蜜桃午夜视频一区二区| 精品十三区| 逼逼逼逼操操操操操操操操操午夜剧场| 天天操天天舔| 加勒比日本在线| 亚洲色电影在线| 影音先锋日本一区二区| 国产女人高潮视频| 国产AV天美传媒一区二区三区 | 怡红院成人av| 91精品国产91综合久久蜜臀| 草草影院日本第一页| 婷婷久草一区二区三区| 夜夜嗨绯色| 欧美区亚洲区偷拍区 | 色五月激情网| 97色欧洲| 久久露脸国产老熟女| 性性久久| 欧美日韩亚洲一区二区在线观看| 裸体女人草逼视频播放一区,二区,三区,四区,五区| 亚洲欧洲激情| 国产大片精久久久久久| 日本护士高潮| 亚洲中文日韩欧美大香蕉视频| 天天综合网国产| 日日不卡av| 青青色在线观看| 国语对白在线播放视频| 330dv亚洲成年视频网| 呦呦影院| 91丨九色丨东北熟女| 色九九九综合| 日韩99精品视频综合区| 国产日韩精品一区二区三区| 91网站18禁| 欧美性特| 五月婷婷无码| 欧美日韩99精品麻豆传媒| www.人人摸在线视频| 91GD.COM| 97日亚洲欧美| 爱爱动态120秒| 999综合网| 亚洲日本韩国极品一区二区| 91 欧美| 99成人| 色综合加勒比| 久久视网78| 啊啊啊草死我| 久艹免费| 久久久无码av精| 午夜福利合集| 国产suv精品一区二区四| 日韩免费簧片| 天天插夜夜爽| 成人性爱电影网| 久久久久夜夜夜夜| 久久久久久9999| 人妻中文字幕精品无码 | 久久小视频| 中英熟女操女| 91欧美综合在线| 人人看人人摸人人色| 天美传媒麻豆一区二区三区国产精| 激情综合五月| 精品日韩人妻精品一二三区| 亚洲欧洲激情| 丝袜狠狠草尤物人妻av91| 日韩av不卡在线看| 国产97色在线| 9999亚洲精品| ′ !γ}丶。。久久精品欧美一区二区三区 | 大香蕉伊人在线成人AV在线观看| 人妻无码后入| 日韩欧无码一区二区三区免费不卡| 亚洲欧美电影| 亚洲吊色| 久久网亚洲| 毛片17S| 欧美久久伊人| 美国精品国产精品| 性色aV一区二区三区噜噜| 黑人与人妻| 欧美超碰96| 日本久久99| 乱伦AVxx| 国产乱伦亚洲| 人人人干干人人干| 97青青操视频| 99色色网| 人人看人人摸人人色| 18禁免费视频| 欧洲黄色网| 四虎在线视频| 丰满熟女人妻一区二区三五十一路| 美女久久久久久久| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 日韩999| 欧美日韩国内不卡| 在线性黄高清免费视频| 肉丝中文无码高清| 二三四区精品| 久久久中文版| 99久在线精品99re8a| 亚洲色图在线视频| 青青国产精品在线| 97超碰jingpin| 亚洲偷拍自拍在线视频| 狠狠色噜噜狠狠狠狠狠色综合久久 | 九九热免费国产视频婷婷伊人五月 | 国产精品内射婷婷一级二| 精品午夜福利| 九九九精品| jizz啪啪| 少妇一级婬片免费放一级a性色.| www.yeyecao| 呦呦影院| 国产91乱伦| 亚洲天堂另类美腿| 国产成人拍国产亚洲精品| 无码精品久久久久久亚洲| 中文字幕一区二区三区四区在线视频| 久久精品国产亚洲AV先锋| 又大又大又大又粗爽高潮观看 | 亚洲一区二区三区春色| 欧美1区二区三区公司| ..日韩av毛片精品久久久| 精品毛片av一区二区| 亚洲va有码在线天堂| 国产福利第一视频| 欧美日韩丝袜| 97精品97| 欧美97免费| 欧美Ⅴ性爱| 日韩欧美aⅴ综合网站发布| 97色伦97色伦国产欧美| 97视频在线视频| 日本天堂网| 人人妻人人色| 久操电影网| 男人夜色天堂ss| 亚洲啪啪视频一区二区| 色情五月婷婷| 天天看片麻豆| 熟女熟妇一区二区三四区| 熟女精品日韩一区二区三区| 手机看片日韩人妻| 日本色婷婷| 日本新免费二区三区| 玖玖久久久| 久久成人午夜精品影院 | 亚洲精品一区二区精品| 一区二区三区机械有限公司| 九九热九九热| 久久综合av| 国产毛片毛片4p懂色| 怡红院一区二区熟女人妻| 亚洲 图片 欧美 色图| 伊人网在线点播| 在线综合 亚洲 欧美中文字幕| 亚洲砖码砖专无区2023| 欧亚第一综合网| 久艹日日日| 亚洲啪啪性视频| 中出后入| 北约熟女超碰| 人妻天堂综合网| 白嫩白嫩的午夜九久久久久久久久久久久成人剧场| 乱伦1色页| 老熟女天天操| 人妻夜夜爽天天爽三区麻豆AV网站| 秋霞无码av鲁丝片一区| 一区 欧美 日韩 麻豆| 91精品国产91久久久久久久久久久久| 久久91精品国产9丨久久分亭| 婷婷综合在线观看| 99热国产精品| 久久风骚城市| 18禁的网站在线| 在线观看视频91| 国产福利视频精品视频| 欧美亚男人的天堂| 国产美女在线精品免费看| 91 手机在线播放 绯色| www.男人的天堂| caopeng97| 激情小说亚洲| 91精品成人www| 天天看天天日| 亚洲情色一区三区| 欧美黄色大片在线观看 | 九九九九九九成人| 亚洲国产精品久久AV| 后X久久| 91美女精品| 丁香五月婷婷啪啪| 亚洲另类色综合网站| 国产精品欧美日韩久久| 97综合久第一页| 麻豆60秒| 成人小说视频在线精品欧美| 97超碰总站| 色色国产| www亚洲免费| 欧美肥臀在线| 神马视频久久久久久| 亚洲图片色图欧美另类| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 日韩天堂av电影在线观看| 99少妇内射| 亚洲日韩美女中文字幕乱| 天天综合~91| 69AV女优男人的天堂| 日逼国产| 日韩欧美性爱电影在线观看| 97精品视频网站| 久久久久久人妻| 日本成人A片网站| 狠狠入| av一区二区三区四区五区久草臀| 久久99网站| 老司机天天操| 婷婷伊人綜合中文字幕| 超碰97.com| 99这里有精品视频| 91精品啪在线观看国产城中村| 60秒不遮不挡| 国产精品另类| 91爱做| 亚洲熟妇图片| 五月婷婷久久综合| a v网站在线播放| 玖玖爱视频网站| 五月天亚洲网| 吉田爱美AV在线| 久操B网| 91人妻爽爽人人做人人澡| 日韩欧美国产高清视频| 少妇xx精品| 无码人妻精品一区二区中文 | 91精品无码久久久久久久 | 精品视频久久区| 这里是精品| 五月天春色激情网| 亚洲激情网一二三四区| www.狠狠| 日本色婷婷| 十八禁视频网站| 国产精品探花在线| 人人操人人干网页| 久久草草亚洲蜜桃臀| 久久久久久久91| 大香蕉狠狠爱| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 久久欧洲| 美女AV一区二区| 青青操少妇| 青青草乱入乱欲视频在线观看| 色嘟嘟人妻天堂网| 欧美高清性猛交| 日韩成人色图| 四虎884a| 麻豆a'v电影| 东京太热久久久| 天色综合网| 男人的天堂在线| 俺也射| 亚洲AV无码乱码| 日韩强奸av| 日韩A优精品在线观看| 2019天天干天天操| 午夜免费福利视频一区| 成人影 天天操 亚洲| 欧美 日韩 另类 亚洲| 午夜福利合集| 84YTCOM性无码| www.av在线观看| 欧美九九爱| 亚洲天天精品| 999久久久| 日本精品高清一二区一本到| 亚洲黑丝在线| 无码人妻系列少妇| 女人久久久| 乱伦Av网| 六月丁香五月婷婷| 欧美亚洲20p| 欧洲大香蕉| 丁香婷婷五月| 久污| 91热| 91 亚洲 欧美 日韩 国产 综合| 蜜桃视频精品一区二区| 久欲AV| 日本潮催一卡操| 五月激情影院| 亚洲交换| 最新的亚洲无吗| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 久久久999国产| 亚洲系列第一页| 四虎影视在线| 日韩15p| 午夜男女爽爽爽在线视频| 亚洲精品1区| 香蕉欧美| 97天天爽| 精品一区二区久久| 欧美性爱1080p| 九九九久久久久| 欧洲久久一二线| 东京热亚洲一区二区| 亚洲第一男人天堂| 免费啪啪一级视频| 亚洲日韩欧美一区二区| 欧美综合娱乐久久| 亚洲欧美一区二区不卡视频播放| 五月天婷婷在线看| 蜜桃久久久久久久| 成人蜜乳小视频网站| 久久只有精品一区二区三区| 日日爱99| 日日夜夜国产综合| 国产中文字幕在线点播| 久操在97| 无码不卡亚洲成?人片| 国产强奸乱伦xd| 99热精品在线播放| 日韩成人网址| 人人爽天天爽| 国产呦精品系列在线观看| 旡码电影特区| 免费av在线播放二区| 嗯嗯嗯,草死我| 人妻少妇被猛烈进入中| 丝袜美腿射精91| 中文字幕免费看大片| 久久宗合97| 性色avv| 中国农村熟妇毛片视频| 91欧美丨精品丨入口| 蜜臀操逼黄色视频操的好爽| 午夜九九九九九九| 99热免费精品| 日本精品不卡一二三区| 91色婷婷综合久久中文字幕二区| 亚洲另类久操网| 国产最火爆久久国产网站网站| 任你干在线视频| 亚洲天堂,男人| 人妻一区二区三区视频| WWW美腿丝袜香蕉中文| 又大又白奶子| 亚洲囯产精品女人久久久| 性性欧美| 亚洲欧美日韩精品久久久一区二区 | 午夜噜噜噜| 夫妻四区五区六区| 去干网最新版| 老司机午夜精品视频| 久久久久久中文| 欧美曰韩国产精品| 97色在线| 久久一区二区高清免费| 午夜精品久久久久久久第一页按摩| 打av高清| 欧美综合站| 国产综合操逼高清| 欧美aa一级片| 91欧美在线| 清纯唯美综合| 裸体美女久久久| 亚洲综合影片| 色99视频| 色婷婷av在线观看| 国产1769在线| 久久综合资源一区二区| 色哟哟AⅤ| 综合色好色| 噜噜噜亚洲精| 是还免费视频1727我| 97超碰色屌| 亚洲色性情三级| 亚洲色天堂日韩中| 91chinese在线| 日本道久久综合色色| 八戒无码国产午夜福利| 东京热天堂网| 精品国产乱码久久久久久蜜臀| 南澳成人一级片在线播放| 欧美色图97| 日本高清一本二本免费不卡| 亚洲精品一区二区免费在线观看| 精品97久久综合| 爱干爱射网啊啊啊| 中文字幕人妻色偷偷久久皮| 亚洲综合有玛| 亚洲天堂自拍| 国产视频小说| 欧美91精品国产自产| 天堂亚洲精品久久老牛| 综合激情97 | 欧美一级特黄淫片在线观看| 正在播放国产精品一区| 国产AV久久野战精品| 欧美视频中文字幕区| 日本肏逼视频在线观看| 夜夜一区二区| 色盈盈影院| 亚洲色图 综合| 超碰色97| 操一操摸一摸| 亚洲色 国产 欧美 日韩| 国产女人操逼视频| 日日夜夜天天| 精品视频久久久久九九九九9999 | 亚洲天天更新| 伊人五月天婷婷| 青青操狠狠撩| 色色色网站| 亚洲成a人在线观看久| 日本一二三免费久久| 少妇久久久久久久久| 乱伦熟女论坛| A片 AV一级在线播放观看免费| 天天干,天天日| 亚洲色9| 后入合集| 日本乱人伦片中文三区| 日本高清有码网址视频| 亚洲精品丝袜| 蜜臀aV午夜一区二区三区| aa片毛片| 黄片免费看黄片免费看| 综精品久久久aaaa| 欧美日韩小说| 日本十八禁免费看污网站| 欧美日韩性爱精品| 欧美操逼视频二区| 资源新线在线天堂| 青青草丝袜在线视频| 熟妇人妻一区二区| 蜜臀99久久国产| 日本免费人成视频播放120秒| 久久超碰爱| 亚洲猛交| 亚洲中文一区二区三区| 国产a级精品| 成人国产二区三区在线,男女精品。| PMv在线观看| 亚洲欧美精品一区天堂久久 | 国产又粗又长视频| 影音先锋中文字幕日本好一区二区| 亚洲91亚洲| 蜜臀中文字幕| 丝袜美腿欧美| 一摸二插三插| 国产一区二区欧美日本| 99久热精品99re6热| 日韩成年人性爱视频| 99色悠悠| 久草线上视频免费看| 天天操夜夜嗨| 精品毛片av一区二区| 色综合色欲色综合色综合色综合| 99热国产| 国产色呦呦| 色97欧美| 色色热| 亚洲毛片久久| 超碰亚洲97| 亚洲国产丝袜熟女av| 久久大香蕉手机高清视频| 大香蕉欧美| 日本不卡高清免v欧美日韩在线观看| 欧美亚洲91| 日韩三级在线观看mp4| av网站免费线看| 人夜夜精品网站香蕉嫩草| 国产精品天干天干综合网麻豆 | www.夜夜| 色在线视频导航| 1234区中文字幕在线观看_青青草国产在线_日韩一区二区 | 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | 99黄页网站| 久久美女国产| 久久老熟女| 蜜桃精品一区二区三区ww| 无码久久国产| 亚洲一区中文精品| 九九精品热| 天天综合97| 秋霞男人网| 久久高清欧美国产| se..亚洲欧美| 看黑丝美女操逼青青网站| 天天搞在线综合网| 日韩本不卡视频在线观看 | 亚洲在饯| 啊啊啊啊啊操我视频| 丁香五月天久久精品视频一区二区三区| AV一起草在线| 伊人在线大香蕉视频久久| 嗯嗯啊在线视频| 伊人久久综合影院| 人人操人人操人妻人| 亚州色图狠狠干| A久久| 国产又猛又粗又爽又黄| 日韩无码第3页| 中亚精品极乱| 手机看av网站在线看| 三级日韩一区二区三区| 热热色AV| 午夜欧美神马久久久久| 天天综合色| 1769国内精品视频| 亚洲精品人体| 精彩久久中文| 国内操逼视频二区| 91原创在线观看| 亚洲色综合| 久久婷婷电影网| 99re视频在线播放青草| 亚洲宗合网| 久久欧洲| 毛片17S| 人妻夜夜爽天天爽麻豆三区网站 | 亚洲日韩美女丝袜美腿人妻视频| 九七人妻在线| 亚洲国产尤物yw在线观看| 欧美色图片| 欧美天天综合在线| 男女啊啊啊| 97国产精品在线观看| 好爽要喷了| 欧美一区二区在线资源| 色噜噜狠狠色综合日日| 欧美亚洲日本视频久久久| 天天插夜夜操| 手机在线A片| 亚洲精品aa久久伊人| 国产免费操逼| 麻豆国产96在线| 色爱国产| 五月天婷婷成人网| 亚洲精品丝袜-不卡成人免费……| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 亚洲情色1区| 久久精品欧美一区蜜桃| 日韩ab网 | 强奸少妇AV导航网| 九九九九精品视频| 婷婷丁香人妻| 张柏芝国产一区在线观看| AV中亚| 欧美人与动性人交a| 欧美呦呦性爱| 色偷偷综合91久久噜噜| 99热在线不卡| 国产外初女出血视频| 欧美中日韩XXXX| 囯产精品久久久久久久久久二区三区| yiqicaoav| 思思热影视| 国产黄片精品在线| 一区二区三区机械有限公司| 女人爽到高潮久久久| 97爱爱影院| 美女上床网站| 色婷婷国产精品一区在线观看| 美女啊啊啊啊啊啊| 你懂的在线观看区国产| 日美免费黄片| 久久国产99精品72福利| 亚洲熟女乱熟乱熟妇综合网二区| 国产91专区| 人人性爱视频免费| 久久AV无码网址| 精品人妻一区二区三区-国产精品 一个人在线看的黄色电影网站 | 欧美综合中文| 久艾草在线精品视频在线观看| 天天插天天操| 色综合加勒比四四季| 久久精品操| 亚欧性爱无码| 日本狠狠干| 中文熟女五十乱码在线| 人人么人人操| 韩日精品四区| 成人精品视频一区二区| 亚欧美色| 深田咏美亚洲精品福利社| 蜜桃精品一区二区三区ww| 亚洲精品久久久久久| 欧美激情性爱视频网站| 亚洲 综合 欧美| 成人无码欧美一级A片狼牙直播| 美女视频尤物网在线看| 懂色综合久久久| 日本高清视频在线观看黄已三辽| 91久久九九精品国产综合| 99青草| 91情色在线| 国产精品自产拍在线观看社区 | 色偷偷色偷偷欧美日韩| 乱伦日本中文自拍| 玖玖在线视频| 日本一卡二区在线| 99精品久久久久久久婷婷| 亚洲精品一区二区免费在线观看| 人人操人人色网| 四虎永久在线精品免费网址| 超碰97伊人| 亚洲综合色婷婷| 国产精品粉嫩福利在线| 丰满人妻无码一区二区三区| 欧美老妇综合网| 九九视频黄色片| 97香蕉人人乳| 亚洲,日韩,欧美,成人播放| 人妻熟女一区二区三区在线| 韩国一级婬片A片无码天美 | 超碰97男人| 手机在线播放国产福利| 欧美 亚洲 大香| 日韩无码视频黄色| 大奶尤物鲍汁淫荡欧美视频粉嫩夜夜骚 | 六月丁香久久| 五月天精品| 五月丁香影院| 999999精品| 有码人妻系列| 一级人妻性爱视频| 久久av色| 亚洲一卡二卡在线免费| 亚洲高清少妇| 欧美成人性爱视频大全| 丰满人妻一区二区三区免费| 熟女丝袜视频| 色欲三区| 加勒比久久av| 色婷五月天| 亚洲高清自拍| 久久超碰大香蕉| 精品久久久亚洲AV成人网站| 男人在线天堂| 亚洲涩图欧美| 日本有码影片下载 | 欧美天天在线| 精品女人999| 99热这里是精品| 国产丝袜啪啪| 佐山爱中文字幕| 亚州AV无码国产精品| 亚州欧美在线| 亚洲AV无码久久精品蜜桃小说| 日本午夜久久电影| 日本乱人伦片中文三区| 影音综合网|