标签(空格分隔): 毕业论文


(OS: 最近在做关于多类分类的综述,但是搜索出来好多方向搞得自己云里雾里的,好吧,又是在下孤陋寡闻了。还是那句话,不知道不可怕,但一直不知道就很尴尬了。)

one-class classification -- 一元分类

In machine learning, one-class classification, also known as unary classification, tries to identify objects of a specific class amongst all objects, by learning from a training set containing only the objects of that class. -- Wikipedia

维基百科中的定义是:一类分类,即一元分类,通过仅包含该类的对象的训练数据中学习,试图能够在所有对象中识别该特定类的对象。

one-class classification是由[Moya & Hush][1]在1996年提出的,目前已有很多这方面的研究。一个类似的问题是PU Learning,后者是以半监督的学习方式从正类样本和未标记样本中学习,建立二元分类器。

multi-label classification -- 多标签学习

Multi-label classification is a classification problem where multiple target labels must be assigned to each instance. -- Wikipedia

多标签学习与另外一个工作有强相关的联系——(multi-output classification)多输出学习(?)。另外,一定要与multi-class classification区分开。前者是指一个样本一般所属不仅仅是一个类别,它的输出一般是一个向量(010110,属于第2,4,5类);而后者一个样本只属于一个类。有两种方法解决这类问题:一类是problem transformation methods(即吧问题转换成二元分类问题,然后用上面所说的一元分类器来解决),一类是problem adaption methods。

multi-class classification -- 多类分类

终于到了我们的leading role。
In machine learning, multiclass or multinomial classification is the problem of classifying instances into one of the more than two classes(classifying instances into one of the two classes is called binary classification). -- Wikipedia

维基中的定义是:多类学习是指将样本从超出两个类的可能类别中分入一个类中。

有两类策略可以解决此类问题。

One vs. all

这样的策略是为每个类别都训练一个分类器,在这个分类器中,将该类的样例视为正例,其他所有类的样例视为负例。该策略要求每个基分类器都产生一个概率值(置信值,一个样本分为这个类的置信值有多大),而不仅仅是类别标签,只给出类别标签可能会导致一个样本被分入多个类。这样通过所有对比所有的分类器给出最终的决策。
\(y = argmax_{k\in \{1,...,K\}}f_{k}(x)\)

这种策略很方便但是带来了一些问题。例如:即使在训练集中样本的类别分布是均衡的,对于基二元分类器来说却是不均衡的,因为对基分类器来说,负例样本要远远多于正例样本[此处输入链接的描述][2]。

One vs. one

对于一对一的策略来说,K分类问题需要训练\(\frac{K(K-1)}{2}\)个二元分类器。每个分类器从原始的训练集中选择两个类,然后针对这两个类训练一个基分类器。在决策的时候,用\(\frac{K(K-1)}{2}\)个分类器分别做决策,然后将样本分入"+1"得到最多的那个类别中。

目前,已有很多工作基于神经网络、决策树、K近邻、朴素贝叶斯、SVM等的改进算法可以直接处理多分类问题。这些技术也被称为Algorithm Adaptation techniques.

神经网络

多层感知器(Multilayer perceptron)为解决多类问题提供了自然的延伸。不像之前的在输出层只有一个神经元,多层感知器有N个二进制神经元,以便处理多分类问题。

KNN

KNN被认为是最经典的非参分类模型。对于一个未知label的样本,需要计算它与其他所有样本之间的距离,选择其中距离最小的K个样本,并且这K个样本中类别数最多的一个被认为是这个未知样本的label。KNN可以直接处理多分类问题。

朴素贝叶斯

NB是基于贝叶斯后验概率(MAP)的一类分类器。尽管贝叶斯定理有要求样本间条件独立的假设,NB仍能很方便的扩展到多分类问题中,而且效果较好。

SVM

SVM分类器的思想是最大化从分离超平面到最近样本之间的最小距离,基本的SVM用来处理二分类问题,但可以在优化条件中加入附加参数和约束来处理多分类问题。

【参考文献】

[1]: Moya, M. and Hush, D. (1996). "Network constraints and multi- objective optimization for one-class classification". Neural Networks, 9(3):463–474. doi:10.1016/0893-6080(95)00120-4

[2]: Bishop, Christopher M. (2006). Pattern Recognition and Machine Learning. Springer.

Multi-class Classification相关的更多相关文章

  1. Link-based Classification相关数据集

    Link-based Classification相关数据集 Datasets Document Classification Datasets: CiteSeer: The CiteSeer dat ...

  2. 目标检测之RefineDet

    RefineDet 一.相关背景 中科院自动化所最新成果,CVPR 2018 <Single-Shot Refinement Neural Network for Object Detectio ...

  3. (Deep) Neural Networks (Deep Learning) , NLP and Text Mining

    (Deep) Neural Networks (Deep Learning) , NLP and Text Mining 最近翻了一下关于Deep Learning 或者 普通的Neural Netw ...

  4. [C2P3] Andrew Ng - Machine Learning

    ##Advice for Applying Machine Learning Applying machine learning in practice is not always straightf ...

  5. PaperWeekly 第五期------从Word2Vec到FastText

    PaperWeekly 第五期------从Word2Vec到FastText 张俊 10 个月前 引 Word2Vec从提出至今,已经成为了深度学习在自然语言处理中的基础部件,大大小小.形形色色的D ...

  6. 嵌入式单片机STM32应用技术(课本)

    目录SAIU R20 1 6 第1页第1 章. 初识STM32..................................................................... ...

  7. Deep Learning 28:读论文“Multi Column Deep Neural Network for Traffic Sign Classification”-------MCDNN 简单理解

    读这篇论文“ Multi Column Deep Neural Network for Traffic Sign Classification”是为了更加理解,论文“Multi-column Deep ...

  8. Halcon相关

      1.Halcon的自我描述 Program Logic Ø Each program consists of a sequence of HALCON operators Ø The progra ...

  9. DeepWalk论文精读:(1)解决问题&相关工作

    模块1 1. 研究背景 随着互联网的发展,社交网络逐渐复杂化.多元化.在一个社交网络中,充斥着不同类型的用户,用户间产生各式各样的互动联系,形成大小不一的社群.为了对社交网络进行研究分析,需要将网络中 ...

随机推荐

  1. FileCopy方法

    复制文件. 语法 FileCopy源,目标 FileCopy 语句语法包含以下命名参数: 部分 说明 source 必需. 指定要复制的文件的名称的字符串表达式. _源_可能包含目录或文件夹,和驱动器 ...

  2. 开发人员常用的DOS命令

    1.远程连接:mstsc /admin 2.开启服务:services.msc 3.打开注册表:regedit 4.IIS服务器重启:iisreset 5.打开记事本:notepad 6.查看系统信息 ...

  3. @RestController注解

    @RestController注解其实就是@@Controller和@ResponseBody的组合:RESTFUL风格 看下源码: 当@ResponseBody放到Controller类上,改Con ...

  4. Linux 安装Nginx(使用Mac远程访问)

    阅读本文需要一定的Linux基础 一 Nginx简介 nginx是用c语言编写的一款高性能的http服务器|反向代理服务器|电子邮件(IMAP/POP3)代理服务器 由俄罗斯的程序设计师Igor Sy ...

  5. 浅谈ajax同步、异步的问题

    最近实习的时候看到过firefox的同步.异步的警告,想着概念不是那么清楚,于是整理了一下ajax同步异步方面的知识.我是小白,做个笔记. 首先就是概念问题,ajax根据async进行区分同步和异步过 ...

  6. Netty 粘包/拆包应用案例及解决方案分析

    熟悉TCP变成的可以知道,无论是客户端还是服务端,但我们读取或者发送消息的时候,都需要考虑TCP底层粘包/拆包机制,下面我们先看一下TCP 粘包/拆包和基础知识,然后模拟一个没有考虑TCP粘包/拆包导 ...

  7. mysql读写分离配置(整理)

    mysql读写分离配置 环境:centos7.2 mysql5.7 场景描述: 数据库Master主服务器:192.168.206.100 数据库Slave从服务器:192.168.206.200 M ...

  8. .NetCore下使用EF DbFirst操作MySql

    新建.NetCore的控制台项目 使用Nuget安装Pomelo.entityframeworkcore.mysql 工程右键--->编辑.csproj文件,把以下内容写入到工程文件 <I ...

  9. windows 7 php 7.1 命令行 执行 中文文件名 的PHP文件

    在PHP5.6时代直接执行 php.exe  文件.php 是没有的这个问题 在win下的命令行中 活动代码页命令 chcp 修改 chcp 936  //gbk chcp 65001 //utf-8 ...

  10. centos安装eclise启动报错

    A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be avail http://blog.csdn.net/u0 ...