首页 > 其他分享 >IMBALANCED TARGET DISTRIBUTIONS LEARING(目标类别不平衡学习)

IMBALANCED TARGET DISTRIBUTIONS LEARING(目标类别不平衡学习)

时间:2024-03-17 12:11:20浏览次数:31  
标签:MA TARGET 假设 MI 距离 类别 LEARING IMBALANCED 数据

什么是目标类别不平衡?

假设你训练集中数据的目标类别的分布较为均匀,那么这样的数据集所建立的分类模型,通常会有比较好的分类效能。

假设你训练集中数据的目标类别的分布不均匀(存在Majority Class和Minority Class的时候),那么这样的数据集造成的问题是分类模型通常倾向将所有数据预测为多数类别,而完全忽视少数类别。

解决目标类别不平衡的方法:

减少多数类别的抽样法:

最近邻策略(KNN Approach)减少多数类别:

  • NearMiss-1(核心思想:如果与MI比较近的样本点,模型都可以分开,那么其他离MI比较远的点,模型自然可以分开。)

Step1:首先计算每个MA与所有MI的距离,然后每个MA会挑选与它最接近的3个MI,并计算与这3个MI的平均距离。

Step2:假如想降到多数类别:少数类别的比例为1:1,那么我们可以选取平均距离较小的前4个MA。

  • NearMiss-2:(核心思想:NearMiss-1的条件有些严格,可能导致后续分类模型不再能将样本点分开。NearMiss-2对其做了距离上的改进。)

Step1:首先计算每个MA与所有MI的距离,然后每个MA会挑选与它最远的3个MI,并计算与这3个MI的平均距离。

Step2:假如想降到多数类别:少数类别的比例为1:1,那么我们可以选取平均距离较小的前4个MA。

 

  • NearMiss-3:(核心思想:NearMiss-3试图将距离最近的MA和MI拆分开。)

Step1:首先计算每个MA与所有MI的距离。

Step2:假如想降到多数类别:少数类别的比例为1:1,那么我们可以对每个MI挑选1个距离较近的MA;如果想降到2:1,那么我们可以对每个MI挑选2个距离较近的MA。

 

 

最近邻策略(KNN Approach)减少多数类别的缺点:

1.计算时间过长  计算每个MA与所有MI的距离通常需要花时间。假设正、负样本数量为3000:900w,那么相当于要算 900w^3000次,之后算完后还要排序,计算平均距离。

2.分类效果并没有想象中那么好

3.方法没有考虑多数类别的分布情形  假如数据集有两个MA,一个MI,那么虽然我们为每个MI寻找了各自的“MA“,但如果选择的都是两个MA中数量较多的MA,那么分类结果可能并不偏向于较少的MA。

 

结合聚类解决目标类别不平衡问题

  • Cluster_based Approach:该方法的假设样本可以分为多个不同的类别,设法从多数类别中抽取出具有代表性的样本点。

 假设原来资料点本身的类别是不平衡的,(MA:1000;MI:100)。

Step_1:对原来的资料点进行聚类,假设我们聚了3类。

Step_2:假设第一个类别中的资料点分布比例为10:1,第二个类别中的资料点分布比例为20:1,第三个类别中的资料点分布比例为5:1

Step_3假设总共要从原来资料点中总共抽取100笔的MA,以期将MA:MI比例降低到1:1。

那么我们认为,

第一类别要抽100×(10/35),

第二个类别要抽100×(20/35),

第三个类别要抽100×(5/35)。

Cluster_based Approach的缺点

  1. 聚类的方法需要根据特征来计算距离,不同的特征(重要、非重要)将直接影响到聚类结果的好坏,进而影响抽样的效果。
  2. 需抽取的数据数量需要大于该簇的数据总数。

增加少数类别的抽样法

  • SMOTE:SMOTE的基本假设是:两个MI直线距离之间的样本点也可以被认为是MI

 Step1:针对每个MI,计算与之最近的K个MI。

 Step2:随机选取某个MI中的数据i,并从与之最近的K个MI中随机选取一个数据j

 Step3:计算数据i和数据j之间的差

 Step4:随机产生一个介于0~1之间的值w

 Step5:产生人造数据x+w*p

重复Step2~Step5,直到人造数据满足需求的个数为止。

重复Step2~Step6,直到所有MI都执行过一次,

SMOTE方法 增加少数类别的缺点:

1.没有考虑多数类别数据的分布情形 作者认为少数类别应该分布在一起,在少数类别数据间产生的数据也必然是少数类别。这种假设存在一定的局限性,因为多数类别的分布并没有被考虑进去。

2.分类效果并没有想象中那么好 SMOTE方法带来的分类效能在一些资料集上并没有明显的提升,其分类效能并未明显优于随机减少多数类别抽样法(随机欠采样)

 

标签:MA,TARGET,假设,MI,距离,类别,LEARING,IMBALANCED,数据
From: https://www.cnblogs.com/liuguangshou123/p/18062279

相关文章

  • Paper Reading: Imbalanced regression and extreme value prediction
    目录研究动机文章贡献本文方法不平衡回归的相关函数控制点插值方法自动和非参数相关函数评价指标实验结果数据集和实验设置模型选择实验模型优化优点和创新点PaperReading是从个人角度进行的一些总结分享,受到个人关注点的侧重和实力所限,可能有理解不到位的地方。具体的细节还需......
  • Preview pipeline: Display_Out SetupTargetBuffer
    camx/src/core/hal/camxhaldevice.cppCamxResultHALDevice::ProcessCaptureRequest(Camera3CaptureRequest*pRequest){result=GetCHIAppCallbacks()->chi_override_process_request(reinterpret_cast<constcamera3_device*>(&m_c......
  • Paper Reading: Density‑based weighting for imbalanced regression
    目录研究动机文章贡献本文方法DenseWeight稀有度度量权重函数DenseLoss实验结果实验整体的设置合成数据集实验实验设置实验结果对比实验实验设置降水量预测任务优点和创新点PaperReading是从个人角度进行的一些总结分享,受到个人关注点的侧重和实力所限,可能有理解不到位的地方。......
  • 【STM32】使用Keil5加载程序时出现No Target Connected错误的解决办法
    错误情况加载程序时弹出Notargetconnected的Error框,随后弹出Flashdownloadfailed-TargetDLLhasbeencancelled。此时打开设置中Debug选项的Setting窗口,显示SWDIO中Notargetconnected解决办法检查设置里的Debug选项里的调试器型号有没有选对,如下图所示,我用的是S......
  • 解决Linux卸载磁盘时出现umount: /home/mrc/wanglab: target is busy.
    问题描述:/home/mrc/wanglab是数据的挂载点,出现问题时我正在将数据从挂载点cp到本地,导致数据挂载点的数据无法访问(ls/home/mrc/wanglab会卡死)。于是我尝试umount,报以下错误:mrc@mrc-Precision-3660:~$sudoumount./wanglabumount:/home/mrc/wanglab:targetisbusy.错误产生......
  • typescript修改target导致模块找不到
    编译ts代码时,发现一个包只支持es6及更高的版本,无奈修改编译选项target,从es5修改为es6,发现原来导入包的地方报错,提示notfound。tsconfig.json{"files":["src/main.ts"],"compilerOptions":{"noImplicitAny":true,"target":......
  • SharePoint Online 列表的 Audience Targeting
    前言最近,碰到一个需求,用户希望列表的视图,不被管理员以外的任何人看到,这样数据会更加安全。正文1.这时候,我们就需要用到列表的AudienceTargeting功能了,我们首先要去到列表设置,如下图:2.进去以后启用列表的AudienceTargeting,如下图:3.我们去到列表视......
  • Sliver C2 实战 vulntarget-f
    ‍网络拓扑hostip1ip2ubuntu(自用)192.168.130.14/centos192.168.130.310.0.10.2ubuntu110.0.10.310.0.20.2ubuntu210.0.20.3/‍信息收集开放了很多端口,优先从web入手。​​fscan过一遍网站指纹,发现可能可以利用xxe。​​‍zimbracmk​......
  • Unity打包Android报错:Target Android SDK not installed Android SDK does not includ
    1.需要查看当前unity版本中安装的SDKVersion2.找到对应路径下的文件,打开build-tools文件,其中就是对应的SDKVersion4.修改Unity中对应的配置 ......
  • 初始安装 Prometheus 监控k8s组件 target 状态显示失败的处理办法
    当我们使用Kubeadm完成Kubernetes的搭建时,默认控制面的组件的metrics端点会监听在本机127.0.0.1接口上,这会导致Prometheus/kube-Prometheus-stack开局配置无法从自动发现的端点拉取到指标。方法有如下两种:在使用kubeadm初始安装集群时,更新相关配置在Kubernete......