• 面对imbalance data的时候


    面对imbalance data的时候

    解决问题的思路

       1:增加数据

       2:算法

       3:阈值

    1 增加数据:增加数据的方法主要是smote ,borderline smote......这是这篇文章具体关注的

    smote的算法是这样的,

    先聚类,找到k近邻,具体地说,就是比如现在有两个类,其中一个类是女生,有10张图片;另一类是男生,有100张图片,这样的话,当进行分类的时候,可能很难把女生分出来,那么需要对女生的图片进行增加

    smote的算法的方式是先聚类,找到女生为x,再找他身边的近邻x1,

    然后生成图片:xnew =x+(0~1)*(x-x1)

    borderline smote

    而这个思路的一个弊端是如果找到的x(女生)是一个假小子,因为如果是一个长头发女生,本来就可以分清,多增加一些,应该还是能分清,但是对于不太能分清的假小子,如果多增加这些数据,那么会更好的辨别,

    这个想法首先要注意:增加负样本数据一定会增加正确率,因为相当于起到了weight的作用,在这个角度讨论的话,那么增加长头发女生还是短头发女生其实无所谓,但是如果说对于分类更有利,那么增加短头发更有利,因为他告诉了分类器,不能靠头发长短来辨别男女,等于让机器学了一个新的知识点。

    所以,按照这个来说,增加图片要增加borderline example的数量

    具体的borderline-smote算法是这样的:

    1(还是据需按照上面的例子)先正确理解我们的目的,就是生成女生里面假小子(也就是边缘)的图片,

    2 首先把女生图片所有的m个近邻算出来,

    3 把男生所有的m'个近邻算出来

    4 遍历所有的m和m',如果m=m',意味着这两个应该是一类,才能m=m',否则一方应该大于一方的,这个不纳入考虑

  • 相关阅读:
    Odoo安装教程2-创建新的插件模块第一讲
    Odoo安装教程1-创建第一个 Odoo 应用
    Odoo开发教程21-Odoo服务器端开发者模式
    Ubuntu 安装LAMP
    Roundcube Webmail信息泄露漏洞(CVE-2015-5383)
    Roundcube Webmail跨站脚本漏洞(CVE-2015-5381 )
    Roundcube Webmail File Disclosure Vulnerability(CVE-2017-16651)
    Roundcube 1.2.2
    XAMPP重置MySQL密码
    python importlib动态导入模块
  • 原文地址:https://www.cnblogs.com/lllcccddd/p/10637279.html
Copyright © 2020-2023  润新知