校正收集的数据的已知偏压
-
23-08-2019 - |
题
好了,所以这里是一个类似的问题我的问题(我将阐述如下真正的问题,但我认为这个比喻会更容易理解)。
我在每1001个掷只有过来头(随机地)一个奇怪的双面硬币1(其余为尾部)。换句话说,每1000个反面我看到,会有1头。
我有一个特殊的疾病,其中我只注意到在每1000个反面我看到1,但我注意到每头,并且因此它看来,我认为一个注意到正面或反面的速率为0.5。当然,我知道这个病和它的效果,所以我可以弥补它。
现在有人给了我一个新的硬币,我注意到注意到头的速度现在是0.6。鉴于我的病情并没有改变(我仍然只有1通知每1000尾),我怎么计算的头实际比例的尾巴,这个新的硬币产生?
好了,什么是真正的问题吗?好了,我有一堆由输入的数据,并输出它们是1和0的。我想教有监督的机器学习算法来预测预期的输出(0之间的浮体和1)给定的输入。的问题是,1秒是非常罕见的,并且该螺丝了内部数学因为它变成舍入误差非常敏感。 - 即使采用高精度的浮点运算
所以,我通过以便它似乎有1和0的一个大致相等的比率随机省去大部分0训练样本的归一化数据。当然,这意味着现在的机器学习算法的输出是不再视为预测的概率,即。代替预测0.001,因为它应该,这将现在预测0.5。
我需要的方式给机器学习算法的输出转换回原始训练集合内的概率。
作者注(2015年10月7日):我后来发现,这种技术通常被称为 “采样”
解决方案
正在计算下面的
calculatedRatio = heads / (heads + tails / 1000)
和需要
realRatio = heads / (heads + tails)
对于尾部求解两个方程得到以下的公式。
tails = 1000 / calculatedRatio - 1000
tails = 1 / realRatio - 1
结合两者产生以下。
1000 / calculateRatio - 1000 = 1 / realRatio - 1
和最后求解realRatio。
realRatio = 1 / (1000 / calculatedRatio - 999)
似乎是正确的。 calculatedRatio 0.5收率realRatio一千〇一分之一,0.6收率二千零三分之三。
不隶属于 StackOverflow