机器学习中的过采样和欠采样是什么意思?

  统计/机器学习 数据预处理    浏览次数:387        分享
0

机器学习中的过采样和欠采样是什么意思?

 

莱莱0915   2020-04-25 17:11



   2个回答 
3

我理解是不同数据有不同定义,可分为空间/非空间数据。空间数据指空间上邻近的数据含有相关信息,可以用信号处理滤波的方法提取出这些相关信号,比如图像,声音。非空间数据指数据不是空间上的邻居,不能提取空间信息,比如身高,姓名,工作,收入等不相关信号。

对于空间信号,欠采样和过采样就是信号处理中的under-sample和over-sample。其中心思想是根据采样定理,数字信号能保存的最大频率是其采样频率的1/2。

  • 欠采样是采样频率小于信号最大频率的2倍,会有频谱的叠加,产生混叠
  • 过采样是采样频率远大于信号最大频率的2倍,会增加计算量,在数字换模拟信号时,还会增加模拟噪声。

对于非空间信号,欠采样和过采样是对数据的down/sub-sample和up-sample,参考这里。其目的是调整数据量,或者做分类平衡(class balance)。

  • 欠采样:只想用少量数据代表大量的原始数据。 比如k-means里用mean代表一簇数据。Random forest也可以认为是对数据点和特征做down-sample。
  • 过采样:生成新数据或重复采样。比如SMOTE,bootstrap。
SofaSofa数据科学社区DS面试题库 DS面经

Zealing   2020-05-03 23:44

1

过采样和欠采样是处理非平衡分类问题时的常用手段。

拿二元分类为例,如果训练集中阳性样本有1000个,阴性样本有10万个,两者比例为1:100严重失衡。为了一些模型的性能考虑,我们需要进行一些处理使得两者的比例尽可能接近。

过采样:对少的一类进行重复选择,比如我们对1000个阳性样本进行有放回的抽样,抽5万次(当然其中有很多重复的样本),现在两类的比例就变成了1:2,比较平衡。

欠采样:对多的一类进行少量随机选择,比如我们对10万个阴性样本进行随机选择,抽中2000个(当然原样本中很多样本未被选中),现在两类的比例就变成了1:2,比较平衡。

SofaSofa数据科学社区DS面试题库 DS面经

kym1990   2020-05-27 00:13



  相关主题

z-score标准化不适用于处理什么样的数据?   1回答

在数据预处理阶段,特征的标准化有哪些方法?   1回答

什么时候需要对y或者特征进行对数变换?   1回答

在训练前数据处理的时候,怎么剔除异常值?   2回答

二值化和Onehot表示的特征哪一个较好?   1回答

数据白化是什么意思?   1回答

机器学习中的维度灾难怎么防止和克服?   0回答

怎么对特征做标准化使得数值都是正数?   3回答

dummy variable是n个还是n-1个   3回答

python 读json 错误 ValueError: Unexpected character found when decoding array value (2)   0回答

str.replace为什么会将数字替换成NaN   1回答

把分组频数统计的结果添加到原来dataframe中   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!