当前位置: 首页 > wzjs >正文

怎么做公司网站竞价重庆网站优化软件

怎么做公司网站竞价,重庆网站优化软件,react可以做门户网站么,php个人网站模板下载一、KS指标的定义原理 背景 KS(Kolmogorov–Smirnov)原本用于检验样本分布与理论分布或两个样本分布是否一致。风控建模中,将“好样本”(Good)与“坏样本”(Bad)的模型输出概率看作两组经验分布…

一、KS指标的定义原理

  • 背景
    • KS(Kolmogorov–Smirnov)原本用于检验样本分布与理论分布或两个样本分布是否一致。
    • 风控建模中,将“好样本”(Good)与“坏样本”(Bad)的模型输出概率看作两组经验分布,用KS度量它们的最大分离程度,从而评估模型的区分度。
  • 数学本质
    • F bad ( x ) F_{\text{bad}}(x) Fbad(x) F good ( x ) F_{\text{good}}(x) Fgood(x)分别为坏、好样本在阈值 x x x下的经验累积分布函数(ECDF),则
      K S = max ⁡ x ∣ F bad ( x ) − F good ( x ) ∣ \mathrm{KS} \;=\; \max_{x}\,\bigl|\,F_{\text{bad}}(x)\;-\;F_{\text{good}}(x)\bigr| KS=xmax Fbad(x)Fgood(x)
    • 直观上,KS 是两条累积分布曲线间的最大垂直距离,衡量“在某个阈值处,坏人被甄别出的累积比例”与“好人被误伤出的累积比例”之差。

二、KS计算流程

分箱(Binning)

  • 可选等频、等距或基于分数段(如 decile、percentile、WOE 分箱)。
  • 保证每个箱内样本量满足统计显著性。
    统计各箱好坏比
  • 令箱 i i i中:
    • n i n_i ni为总样本数,
    • g i g_i gi b i b_i bi 分别为好/坏样本数。
  • 计算比率: r i = n i N , δ g i = g i G , δ b i = b i B , r_i = \frac{n_i}{N},\quad \delta g_i = \frac{g_i}{G},\quad \delta b_i = \frac{b_i}{B}, ri=Nni,δgi=Ggi,δbi=Bbi,
    其中 N , G , B N,G,B N,G,B分别为总体、好样本和坏样本总数。
    累积比率
  • 按得分升序(或降序)累加:
    F good , i = ∑ j ≤ i δ g j , F bad , i = ∑ j ≤ i δ b j . F_{\text{good},i} = \sum_{j\le i}\delta g_j,\quad F_{\text{bad},i} = \sum_{j\le i}\delta b_j. Fgood,i=jiδgj,Fbad,i=jiδbj.
    KS值
  • 计算每个箱的 ∣ F bad , i − F good , i ∣ |F_{\text{bad},i} - F_{\text{good},i}| Fbad,iFgood,i,取最大者即为该变量或模型的 KS:
    K S = max ⁡ i ∣ F bad , i − F good , i ∣ . \mathrm{KS} = \max_i \bigl|F_{\text{bad},i} - F_{\text{good},i}\bigr|. KS=imax Fbad,iFgood,i .
    业务解读
  • 在最佳分隔点(最大KS对应的分数阈值)处,坏样本累积识别率与好样本累积误识率之差即为 KS,上限即模型区分度的“天花板”。

三、KS的几何意义

  • 累积分布差异图(鱼眼图)

    • 横轴:阈值;纵轴:累积百分比。
    • 两条曲线分别为 F bad ( x ) F_{\text{bad}}(x) Fbad(x)(虚)与 F good ( x ) F_{\text{good}}(x) Fgood(x)(实),两者差值(红)即 KS 曲线。
      在这里插入图片描述
  • 直观感受

    • 当两条分布曲线重叠时,KS→0;当完全分离时,KS→1。
    • 最大距离处的“鱼眼”最宽,代表最优的坏/好样本分隔效果。

四、KS在互联网风控模型中的应用价值

  1. 样本极度不均衡
    • 风控中好坏比常为 100∶1 甚至更低,传统准确率难以反映模型性能;KS 不受类别不平衡影响,更能捕捉排序能力。
  2. 连续性与模糊边界
    • 信用、欺诈均属于连续风险,KS 基于概率分布差异判断,契合业务定义的“软边界”概念。
  3. 策略制定
    • KS 最优阈值可作为放贷/拒贷策略的参考切点(需进一步权衡通过率与坏账率)。
  4. 风控监控
    • 随时间和策略变化,监控 KS 的波动,可预警模型老化、数据漂移或信息泄露。
  5. 优化思路
    • 变量筛选:剔除已被策略使用的“重复”信息;
    • 样本诊断:分析训练/验证集差异;
    • 特征工程:引入更具针对性的新变量(金融属性、短期负面信号);
    • 分群建模:按客户群体分级建模,提高局部区隔能力;
    • Bad‑case 深挖:针对漏判与误判样本提取特征。

五、从几何角度看 KS 与 ROC 的关系

  • 对应关系
    • 在 ROC 曲线中,横轴为 FPR(False Positive Rate,等同于 F good ( x ) F_{\text{good}}(x) Fgood(x)),纵轴为 TPR(True Positive Rate,等同于 F bad ( x ) F_{\text{bad}}(x) Fbad(x))。
    • KS 在某阈值处的差值即为 ROC 曲线上点 ( F P R , T P R ) (\mathrm{FPR},\,\mathrm{TPR}) (FPR,TPR)与对角线 y = x y=x y=x间的垂直距离。
  • 几何映射
    1. 在 ROC 图上,过对角线(随机模型)平行线的最大切线截距即为 KS。
    2. KS 越大,ROC 曲线离对角线越远,AUC(曲线下面积)一般也越高。
  • 取舍与权衡
    • 某一阈值下,可能存在两个 KS 相同的点:一个在高 FPR/高 TPR 区,另一个在低 FPR/低 TPR 区。
    • 业务可根据对“坏人召回”与“好人误伤”侧重,选取对应阈值。
  • 过高警示
    • KS >75% 时,ROC 曲线形态会异常凸出,往往伴随分布双峰、不合常理,需警惕过拟合或数据泄漏。
      在这里插入图片描述

在这里插入图片描述

六、KS计算示例代码(Python)

import numpy as np
import pandas as pd
from scipy.stats import ks_2sampdef compute_ks(proba: np.ndarray, target: np.ndarray, n_bins: int = 50):"""计算KS值及对应阈值。参数:proba (np.ndarray): 模型输出的正类概率数组,形状 (n_samples,)target (np.ndarray): 真实标签数组,取值 {0,1},形状 (n_samples,)n_bins (int): 分箱数量,默认 50返回:ks_value (float): KS 统计量(最大差值)ks_cutoff (float): 达到 KS 最大值时的分数阈值"""# 构造 DataFrame 便于分箱df = pd.DataFrame({'proba': proba, 'target': target})df['bin'] = pd.qcut(df['proba'], q=n_bins, duplicates='drop')# 统计各箱好坏样本数及累积比率grouped = df.groupby('bin').agg(total=('target', 'count'),bad=('target', 'sum')).reset_index()grouped['good'] = grouped['total'] - grouped['bad']G = grouped['good'].sum()B = grouped['bad'].sum()grouped = grouped.sort_values('bin')grouped['cum_bad_rate'] = grouped['bad'].cumsum() / Bgrouped['cum_good_rate'] = grouped['good'].cumsum() / G# 计算KS及阈值grouped['ks'] = np.abs(grouped['cum_bad_rate'] - grouped['cum_good_rate'])idx = grouped['ks'].idxmax()ks_value = grouped.loc[idx, 'ks']# 取该箱上限作阈值ks_cutoff = grouped.loc[idx, 'bin'].rightreturn ks_value, ks_cutoff# 示例
if __name__ == '__main__':# 模拟数据y = np.random.binomial(1, 0.05, size=10000)scores = np.random.rand(10000) * (0.5 + 0.5 * y)  # 模拟分数与标签关联ks_val, ks_thr = compute_ks(scores, y)print(f'KS = {ks_val:.4f}, 最优阈值 = {ks_thr:.4f}')
http://www.dtcms.com/wzjs/129486.html

相关文章:

  • 新疆建设兵团投诉网站持续优化完善防控措施
  • 慈溪 网站建设怎么找拉新推广平台
  • 东莞网站上排名谷歌paypal官网入口
  • 网站域名需icp备案吗今日短新闻20条
  • 苹果网站网站开发步骤
  • 春季高考网站建设网络营销的12种手段
  • 17做网站广州伟哥seo博客
  • 服装网站建设效果百度网站管理员工具
  • 平台网站建设方案百度人工客服电话怎么转人工
  • 网站建设培训深圳门户网站有哪些
  • 百度景安空间网站58同城发布免费广告
  • 一个做3dh视频的国外网站营销网站建站公司
  • 自学做网站需要多久b2b平台都有哪些网站
  • 莞城做网站公司手机优化软件哪个好用
  • 建设信源网站网页浏览器
  • 重庆市网站建设培训班招生方案有哪些
  • 成都网站建设 3e长春建站服务
  • 专业做家电的网站百度手机助手网页版
  • 河南网站推广深圳seo优化公司排名
  • 游戏网站开发公司app001推广平台官网
  • 网站建设 凡科鹤壁seo
  • 寿光建设银行网站营销型网站建设模板
  • 湖北建设银行官方网站首页新媒体运营哪个培训机构好
  • 东莞集团网站建设网络营销公司怎么注册
  • 养殖p2p网站建设百度快照推广是什么意思
  • wordpress 产品多图响应式模版移动优化
  • 网站模板软件新闻网最新消息
  • 惠州营销型网站建设广告联盟看广告赚钱
  • 免费销售网站模板下载怎样做推广营销
  • 网站备案人什么意思官网seo是什么