1 简介
在用不对称数据训练一个预测模型时,比如在训练广告的CTR模型时,训练数据就严重正负样本不对称,负样本可能是正样本的几百倍,对于这种问题,常用的做法是对负样本进行采样,将采样后的负样本和正样本一起作为训练数据。但是这样的训练数据训练出的模型预测概率会比实际的概念要打,以为对负样本采样导致训练数据的分布和原始数据的分布不一致了。所以在预测时要对模型预测出的概念进行矫正。下面介绍采样前后的概念关系。
2 推导过程
-
n : 为 正 样 本 的 个 数 n:为正样本的个数 n:为正样本的个数
-
N : 为 采 样 后 的 负 样 本 的 个 数 N:为采样后的负样本的个数 N:为采样后的负样本的个数
-
r : 为 采 样 频 率 r:为采样频率 r:为采样频率
-
p ′ : 为 采 样 后 的 预 测 概 率 {p}':为采样后的预测概率 p′:为采样后的预测概率
-
p : 为 实 际 的 预 测 概 率 p:为实际的预测概率 p:为实际的预测概率
-
采样后事件的几率表示为
p ′ 1 − p ′ = n N . . . . . ( 1 ) \frac{{p}'}{1-{p}'}=\frac{n}{N} ..... (1) 1−p′p′=Nn.....(1) -
原始数据的事件几率为:
p 1 − p = n N r \frac{p}{1-p}=\frac{n}{\frac{N}{r}} 1−pp=rNn
所以有
p ( 1 − p ) r = n N . . . . . ( 2 ) \frac{p}{(1-p)r}=\frac{n}{N} .....(2) (1−p)rp=Nn.....(2)
由(1),(2)及对数几率概念得:
l
n
p
(
1
−
p
)
r
=
l
n
p
′
(
1
−
p
′
)
=
w
x
ln\frac{p}{(1-p)r}=ln\frac{{p}'}{(1-{p}')}=wx
ln(1−p)rp=ln(1−p′)p′=wx
所以有
- 采样后训练数据训练出的模型预测的概念用如下公式
p ′ = 1 1 + e − w x p'=\frac{1}{1+e^{-wx}} p′=1+e−wx1
- 原始数据的概率需要对训练数据训练出的模型做矫正,公式如下
p = 1 1 + e − ( w x + l n ( r ) ) p=\frac{1}{1+e^{-(wx+ln(r))}} p=1+e−(wx+ln(r))1