信貸風控規則策略累計增益lift測算

在大數據風控業務實踐過程中,目前業內主要還是采用規則疊加的辦法做策略,但是會遇到一些問題:
1.我們有10條規則,我上了前7條后,后面3條的絕對風險增益是多少?
2.我的規則之間應該做排序嗎,最重要的放在前面?
3.規則重合了怎么辦,我又想收風險又想保留較高批核怎么辦?
4.我應用完所有的規則后,金額逾期風險能下降到什么水平?
因此,我們按規則的重要性(lift高且抓壞規模大)將規則封裝,再按照循環做逐個碰撞,計算由先到后每個規則的絕對增益。

本篇代碼的優點是:就能充分確保后面的規則不因為前面的規則而喪失效率,批核能全部用在刀刃上,規則不重合,計算不同口徑Y指標下的風險情況,風險目標更清晰準確的預算。
本文是代碼交流,里面的策略閾值都為虛構。

定義規則并應用

rules = [  ('1_rhzx_nnm_over_acct>11', lambda row: row['rhzx_nnm_over_acct'] > 11),  ('2_rhzx_nnm_over_cnt>=22', lambda row: row['rhzx_nnm_over_cnt'] >= 22), ('3_multi_final_level>=33', lambda row: row['multi_final_level'] >=33),  # 可以添加更多規則...  
]  

定義一個計算金額逾期風險的函數

def cal_risk2(df2):  total_fm7_amt = df2['fpd_fm7_amt'].sum()  total_fz7_amt = df2['fpd_fz7_amt'].sum()  total_mob4m2fenmu_amt = df2['mob4m2fenmu_amt'].sum()  total_mob4m2fenzi_amt = df2['mob4m2fenzi_amt'].sum() return total_fz7_amt / total_fm7_amt if total_fm7_amt > 0 else 0,total_mob4m2fenzi_amt / total_mob4m2fenmu_amt if total_mob4m2fenmu_amt > 0 else 0   

應用規則并計算邊際風險壓降效果

def cal_risk_lift(current_df):  results2=[]results2 = [  {  'Rule': 'Baseline',  'Touched_Count': len(current_df),  'Due_FPD7_Amt': round(float(current_df['fpd_fm7_amt'].sum()),2),  'FPD_Fz7_Amt': current_df['fpd_fz7_amt'].sum(), '命中_$FPD7': current_df['fpd_fz7_amt'].sum()/ current_df['fpd_fm7_amt'].sum(),         '命中_$MOB4M2': current_df['mob4m2fenzi_amt'].sum()/ current_df['mob4m2fenmu_amt'].sum(),    '應用規則后_$FPD7': cal_risk2(current_df)[0],'應用規則后_$MOB4M2': cal_risk2(current_df)[1] }  ] for i, (rule_name, rule_func) in enumerate(rules, start=1):  touched_loans = current_df[current_df.apply(rule_func, axis=1)]  touched_loan_ids = set(touched_loans['loan_id'].unique())  	# 計算被規則觸碰的貸款數據的到期金額和逾期金額  new_fm7_amount = round(touched_loans['fpd_fm7_amt'].sum() ,2) new_fz7_amount = touched_loans['fpd_fz7_amt'].sum()  new_mob4m2fm_amt = touched_loans['mob4m2fenmu_amt'].sum()  new_mob4m2fz_amt = touched_loans['mob4m2fenzi_amt'].sum()    # 計算剩余貸款的風險情況(在應用當前規則之后,以借據為唯一主鍵)  remaining_df = current_df[~current_df['loan_id'].isin(touched_loan_ids)]  new_df_risk = cal_risk2(remaining_df) if not remaining_df.empty else 0  # 記錄結果  results2.append({  'Rule': rule_name,  'Touched_Count': len(touched_loan_ids),  'Due_FPD7_Amt': new_fm7_amount,  'FPD_Fz7_Amt': new_fz7_amount,  '命中_$FPD7': new_fz7_amount/new_fm7_amount, '命中_$MOB4M2': new_mob4m2fz_amt/new_mob4m2fm_amt,### 展示純新增命中# '命中_$MOB4M2': df['mob4m2fenzi_amt'].sum()/df['mob4m2fenmu_amt'].sum(),## 展示總命中'應用規則后_$FPD7': new_df_risk[0],'應用規則后_$MOB4M2': new_df_risk[1] })  # 更新current_df以反映應用規則后的效果current_df = remaining_df  # 將結果轉換為DataFrame  results_df = pd.DataFrame(results2)return results_df

于是我們可以按分組group來統計規則的累計lift了

data6.groupby(['xj_sxdurseg']).apply(cal_risk_lift)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/83354.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/83354.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/83354.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Python窗體編程技術詳解

文章目錄 1. Tkinter簡介示例代碼優勢劣勢 2. PyQt/PySide簡介示例代碼(PyQt5)優勢劣勢 3. wxPython簡介示例代碼優勢劣勢 4. Kivy簡介示例代碼優勢劣勢 5. PySimpleGUI簡介示例代碼優勢劣勢 技術對比總結選擇建議 Python提供了多種實現圖形用戶界面(GUI)編程的技術&#xff0c…

Linux 操作系統安裝及基本使用

Linux 操作系統安裝及基本使用 在信息技術飛速發展的今天,Linux 操作系統憑借其開源、高性能、穩定性強等優勢,在服務器、云計算、嵌入式等領域占據著重要地位。本文將詳細介紹如何在 VMware 虛擬機下安裝 Linux 系統(以 CentOS 為例&#x…

Python數學可視化——顯函數、隱函數及復雜曲線的交互式繪圖技術

Python數學可視化——顯函數、隱函數及復雜曲線的交互式繪圖技術 一、引言 在科學計算和數據分析中,函數與方程的可視化是理解數學關系和物理現象的重要工具。本文基于Python的Tkinter和Matplotlib庫,實現一個功能完善的函數與方程可視化工具&#xff…

【MySQL基礎】庫的操作:創建、刪除與管理數據庫

MySQL學習: https://blog.csdn.net/2301_80220607/category_12971838.html?spm1001.2014.3001.5482 前言: 在上一篇我們已經講解了數據庫的基本內容,相信大家對數據庫已經有了一些自己的理解,從這篇開始我們就開始正式進入如何…

Linux服務器系統配置初始化腳本

服務器系統配置初始化腳本 #!/bin/bash set -euo pipefail # 安全設置:遇錯退出、未定義變量報錯、管道錯誤處理# 設置時區并同步時間 timedatectl set-timezone Asia/Shanghai >/dev/null || ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime# 安裝c…

Milvus單機模式安裝和試用

1.安裝ollama的package包; # install package pip install -U langchain-ollama2.我們直接使用ChatOllama實例化模型,并通過invoke進行調用; from langchain_ollama import ChatOllamallm ChatOllama(model"deepseek-r1") messa…

秒出PPT正式改名秒出AI,開啟AI賦能新體驗!

在現代辦公環境中,借助智能工具提升工作效率已經成為趨勢。秒出AI作為一款集AI PPT制作、動畫、巨幕、視頻、設計以及智能簡歷功能于一體的綜合辦公平臺,為用戶提供一站式智能內容生成解決方案,極大地簡化了內容創作流程。 1. AI驅動的一鍵P…

Rust 學習筆記:發布一個 crate 到 crates.io

Rust 學習筆記:發布一個 crate 到 crates.io Rust 學習筆記:發布一個 crate 到 crates.io提供有用的文檔注釋常用標題文檔注釋作為測試注釋所包含的項目 使用 pub use 導出一個方便的公共 API設置 crates.io 賬戶添加 metadata 到一個新的 crate發布到 c…

C++輸入與輸出技術詳解

文章目錄 引言一、C標準輸入輸出流1.1 cin與cout1.2 cerr與clog 二、C風格輸入輸出函數2.1 scanf與printf2.2 fgets與puts 三、輸入輸出優化四、總結 引言 在C編程中,輸入與輸出(I/O)操作是程序與用戶、文件或其他系統組件交互的核心環節。C…

安全編碼與AI接口權限控制

安全編碼與AI接口權限控制 在AI系統中,模型服務的開放接口往往涉及敏感數據、核心算法與算力資源,如果缺乏有效的安全編碼與權限控制機制,極易引發數據泄露、濫用調用或非法操作等問題。本節將從“接口安全策略”“權限驗證流程”“Token管控機制”“多租戶身份隔離”四個方…

redis五種數據結構詳解(java實現對應的案例)

一、簡述 Redis是一款高性能的鍵值對存儲數據庫,它支持五種基本數據類型,分別是字符串(String)、列表(List)、哈希(Hash)、集合(Set)、有序集合(Sorted Set)。 二、五種基本數據類型 2.1 字符串(String) String是Redis最基本的類型,一個key對…

大數據-273 Spark MLib - 基礎介紹 機器學習算法 決策樹 分類原則 分類原理 基尼系數 熵

點一下關注吧!!!非常感謝!!持續更新!!! 大模型篇章已經開始! 目前已經更新到了第 22 篇:大語言模型 22 - MCP 自動操作 FigmaCursor 自動設計原型 Java篇開…

第十一章 Java基礎-繼承

文章目錄 1.繼承來源2.繼承特點3.子類能繼承父類中哪些內容1.繼承來源 是為了解決代碼的重復冗余。

Axure項目實戰:駕駛艙(數據一張圖)制作教程

親愛的小伙伴,在您瀏覽之前,煩請關注一下,在此深表感謝!如有幫助請訂閱專欄! Axure產品經理精品視頻課已登錄CSDN可點擊學習https://edu.csdn.net/course/detail/40420 視頻展示(本文第三部分含所有echarts示例JS代碼,可復制使用): Axure項目實戰:駕駛艙(數據一張圖…

針對Python開發的工具推薦及分析,涵蓋集成開發環境(IDE)、輕量級工具、在線開發平臺、代碼管理工具等)

以下是針對Python開發的工具推薦及全面分析,涵蓋集成開發環境(IDE)、輕量級工具、在線開發平臺、代碼管理工具等,結合不同場景和需求進行分類說明: 目錄 一、集成開發環境(IDE) 1. PyCharm 2…

不使用綁定的方法

public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); // 初始設置 A 控件的寬度 ControlA.Width ControlB.Width / 2; // 監聽 B 控件的 SizeChanged 事件 ControlB.SizeChanged (sender, e) > { ControlA.Width ControlB.Actual…

DDR5 ECC詳細原理介紹與基于協議講解

本文篇幅較長,涉及背景原理介紹方便大家理解其運作方式 以及 基于DDR5協議具體展開介紹。 背景原理介紹 上圖參考:DDR 內存中的 ECC 寫入操作時,On-die ECC的工作過程如下: SoC將需要寫入到Memory中的數據發送給控制器控制器將需要寫入的數據直接發送給DRAM芯片在DDR5 DR…

基于springboot的益智游戲系統的設計與實現

博主介紹:java高級開發,從事互聯網行業六年,熟悉各種主流語言,精通java、python、php、爬蟲、web開發,已經做了六年的畢業設計程序開發,開發過上千套畢業設計程序,沒有什么華麗的語言&#xff0…

STM32軟件spi和硬件spi

核心觀點 本文主要介紹了SPI通信的兩種實現方式:軟件SPI和硬件SPI。詳細闡述了SPI通信協議的基本概念、硬件電路連接方式、移位示意圖、時序基本單元以及四種工作模式。同時,對W25Q64模塊進行了詳細介紹,包括其硬件電路、框圖以及操作注意事…

NLP學習路線圖(十五):TF-IDF(詞頻-逆文檔頻率)

在自然語言處理(NLP)的浩瀚宇宙中,TF-IDF(詞頻-逆文檔頻率) 猶如一顆恒星,雖古老卻依然璀璨。當ChatGPT、BERT等大模型光芒四射時,TF-IDF作為傳統方法的代表,其簡潔性、高效性與可解…