采样方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了采样方法相关的知识,希望对你有一定的参考价值。
参考技术A 拒绝采样,又叫接受/拒绝采样(Accept-Reject Sampling)。对于目标分布p(x),选取一个容易采样的参考分布q(x),使得对于任意x都有,则可以按如下过程进行采样:逆变换采样
均匀法
在平时生成随机数的时候,实际上用的就是均匀采样,主要是掌握线性同余法。
拒绝采样,重要性采样
在高维空间中,拒绝采样和重要性重采样经常难以寻找合适的参考分布,采样效率低下(样本的接受概率小或重要性权重低),此时可以考虑马尔可夫蒙特卡洛(Markov Chain Monte Carlo,MCMC)采样
从名字看,MCMC采样法主要包括两个MC,即蒙特卡洛法(Monte Carlo)和马尔可夫链(Markov Chain)。蒙特卡洛法是指基于采样的数值型近似求解方法,而马尔可夫链则用于进行采样。MCMC采样法基本思想是:针对待采样的目标分布,构造一个马尔可夫链,使得该马尔可夫链的平稳分布就是目标分布;然后,从任何一个初始状态出发,沿着马尔可夫链进行状态转移,最终得到的状态转移序列会收敛到目标分布,由此可以得到目标分布的一系列样本。在实际操作中,核心点是如何构造合适的马尔可夫链,即确定马尔可夫链的状态转移概率,这涉及一些马尔可夫链的相关知识点,如时齐性、细致平衡条件、可遍历性、平稳分布等
Gibbs Sampling解决了什么问题
对于高维的情形,由于接受率a的存在(通常a< 1), 以上 Metropolis-Hastings 算法的效率不够高。能否找到一个转移矩阵Q使得接受率a=1呢?
不需要接受率了,根据细致平稳分布。
对数据进行重采样,使原本不均衡的样本变得均衡
数据不平衡(class_weight评估方法上采样下采样)详解及实战
数据不平衡(class_weight、评估方法、上采样、下采样)、详解及实战
核心学习函数方法:
np.random.choice()
np.where()
np.concatenate()
np.vstack()
np.hstack()
数据不平衡也叫作数据倾斜
处理方法:
- 欠采样:从样本较多的类中再抽取,仅保留这些样本点的一部分;
- 过采样:复制少数类中的一些点,以增加其基数;
- 生成合成数据:从少数类创建新的合成点,以增加其基数;
- 新的评估指标:ACC或者AUC等传统指标是否合适、是否无法表征数据不平衡引发的指标不可靠,例如使用F1指标,或者甚至使用阈值偏移的方法。
- 配置class_weight:在模型中配置class_weight参数,指定合适的数据配比;
以上是关于采样方法的主要内容,如果未能解决你的问题,请参考以下文章