Multi-class Classification相关
标签(空格分隔): 毕业论文
(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相关的更多相关文章
- Link-based Classification相关数据集
Link-based Classification相关数据集 Datasets Document Classification Datasets: CiteSeer: The CiteSeer dat ...
- 目标检测之RefineDet
RefineDet 一.相关背景 中科院自动化所最新成果,CVPR 2018 <Single-Shot Refinement Neural Network for Object Detectio ...
- (Deep) Neural Networks (Deep Learning) , NLP and Text Mining
(Deep) Neural Networks (Deep Learning) , NLP and Text Mining 最近翻了一下关于Deep Learning 或者 普通的Neural Netw ...
- [C2P3] Andrew Ng - Machine Learning
##Advice for Applying Machine Learning Applying machine learning in practice is not always straightf ...
- PaperWeekly 第五期------从Word2Vec到FastText
PaperWeekly 第五期------从Word2Vec到FastText 张俊 10 个月前 引 Word2Vec从提出至今,已经成为了深度学习在自然语言处理中的基础部件,大大小小.形形色色的D ...
- 嵌入式单片机STM32应用技术(课本)
目录SAIU R20 1 6 第1页第1 章. 初识STM32..................................................................... ...
- 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 ...
- Halcon相关
1.Halcon的自我描述 Program Logic Ø Each program consists of a sequence of HALCON operators Ø The progra ...
- DeepWalk论文精读:(1)解决问题&相关工作
模块1 1. 研究背景 随着互联网的发展,社交网络逐渐复杂化.多元化.在一个社交网络中,充斥着不同类型的用户,用户间产生各式各样的互动联系,形成大小不一的社群.为了对社交网络进行研究分析,需要将网络中 ...
随机推荐
- 180813-Spring之RestTemplate使用小结一
Spring之RestTemplate使用小结 作为一个Java后端,需要通过HTTP请求其他的网络资源可以说是一个比较常见的case了:一般怎么做呢? 可能大部分的小伙伴直接捞起Apache的Htt ...
- Netty源码分析第3章(客户端接入流程)---->第1节: 初始化NioSockectChannelConfig
Netty源码分析第三章: 客户端接入流程 概述: 之前的章节学习了server启动以及eventLoop相关的逻辑, eventLoop轮询到客户端接入事件之后是如何处理的?这一章我们循序渐进, 带 ...
- [shell] 一次性赋值多个变量
管道符是fork子进程,子进程的变量无法传回父进程 [root@XM-v106 ~]# echo "1 2 3" | read a b c;echo $a [root@XM-v10 ...
- Python之并发编程-多进程
目录 一.multiprocessiong模块介绍 二.Process类的介绍 三.进一步介绍(守护进程.锁.队列.管道.事件等) 1.守护进程 2.锁(同步锁.互斥锁) 3.信号量(了解) 4.队列 ...
- -lPods-NewsPushClientSDK is not an object file (not allowed in a library)
今天在给客户定制SDK的过程中,出现了下面的一个问题,具有代表性,现在记录下来 问题: Showing All Errors Only : /Applications/Xcode.app/Conten ...
- C++ 函数 参数传递方式
用函数调用所给出的实参(实际参数,actual arguments)向函数定义给出的形参(形式参数,formal arguments)设置初始值的过程,叫做参数传递(Argument Passing) ...
- 20172319 实验三 《敏捷开发与XP实践》 实验报告
20172319 2018.05.17-30 实验三 <敏捷开发与XP实践> 实验报告 课程名称:<程序设计与数据结构> 学生班级:1723班 学生姓名:唐才铭 学生学号:20 ...
- 【贪心算法】POJ-1328 区间问题
一.题目 Description Assume the coasting is an infinite straight line. Land is in one side of coasting, ...
- 在visual studio中查看源代码
地址:https://docs.microsoft.com/zh-cn/visualstudio/ide/go-to-and-peek-definition?view=vs-2017 在 Visual ...
- 牛客网国庆集训派对Day6 题目 2018年
链接:https://www.nowcoder.com/acm/contest/206/A来源:牛客网 Birthday 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 1048576 ...