multi-class, multi-label, multi-task classfication

本文探讨了多类别、多标签和多任务分类的区别,并通过实例进行了深入解析。

1. multi-class, multi-label, multi-task classfication区别

 每个标签有几个可能取值 
几个标签2>2
1binary classificationmulti-class classification
>1multi-label classificationmulti-task classification

 

 

 

 

 

2. 例子

binary classification: 是不是食物是食物: (1)
multi-class classification: 是食物?日用品?书本?是书本: (2) 或 (one hot: 0, 0, 1)
multi-label classification: 是食物?塑料包装?甜的?是无包装的甜食: (1, 0, 1)
multi-task classification: 是食物?塑料包装?出厂日期?是有包装的3月出厂的甜食: (1, 1, 2)


 

几篇CVPR关于multi-task的论文笔记整理,包括 一、 多任务课程学习Curriculum Learning of Multiple Tasks 1 --------------^CVPR2015/CVPR2016v--------------- 5 二、 词典对分类器驱动卷积神经网络进行对象检测Dictionary Pair Classifier Driven Convolutional Neural Networks for Object Detection 5 三、 用于同时检测分割的多尺度贴片聚合(MPA)* Multi-scale Patch Aggregation (MPA) for Simultaneous Detection and Segmentation ∗ 7 四、 通过多任务网络级联实现感知语义分割Instance-aware Semantic Segmentation via Multi-task Network Cascades 10 五、 十字绣网络多任务学习Cross-stitch Networks for Multi-task Learning 15 --------------^CVPR2016/CVPR2017v--------------- 23 六、 多任务相关粒子滤波器用于鲁棒物体跟踪Multi-Task Correlation Particle Filter for Robust Object Tracking 23 七、 多任务网络中的全自适应特征共享与人物属性分类中的应用Fully-Adaptive Feature Sharing in Multi-Task Networks With Applications in Person Attribute Classification 28 八、 超越triplet loss:一个深层次的四重网络,用于人员重新识别Beyond triplet loss: a deep quadruplet network for person re-identification 33 九、 弱监督级联卷积网络Weakly Supervised Cascaded Convolutional Networks 38 十、 从单一图像深度联合雨水检测去除Deep Joint Rain Detection and Removal from a Single Image 43 十一、 什么可以帮助行人检测?What Can Help Pedestrian Detection? (将额外的特征聚合到基于CNN的行人检测框架) 46 十二、 人员搜索的联合检测识别特征学习Joint Detection and Identification Feature Learning for Person Search 50 十三、 UberNet:使用多种数据集有限内存训练用于低,中,高级视觉的通用卷积神经网络UberNet: Training a Universal Convolutional Neural Network for Low-, Mid-, and High-Level Vision using Diverse Datasets and Limited Memory 62 一共13篇,希望能够帮助到大家
<think>我们正在讨论C-Support Vector Classification (SVC)的实现使用。C-SVC是支持向量机(SVM)的一种形式,用于分类任务。在SVC中,参数C控制对误分类样本的惩罚程度,C值越大,对误分类的惩罚越重,模型倾向于更复杂的决策边界;C值越小,则允许更多的误分类,决策边界更平滑。 参考引用: [^1]提到了NuSVC/NuSVR等参数,但这里我们关注的是C-SVC。 [^2]介绍了ROC曲线AUC,这些评价指标可以用于评估SVC模型的性能。 [^3]展示了梯度提升分类器的使用示例,虽然与SVC不同,但我们可以参考其代码结构来展示SVC的使用。 [^4]强调了掌握核心概念的重要性,包括分类算法。 因此,我们将围绕C-SVC的实现、调参应用进行回答。 实现上,我们可以使用scikit-learn库中的SVC类。下面是一个简单的实现示例。 注意:用户要求使用中文回答,数学公式按照指定格式,并生成相关问题。</think>### C支持向量分类(C-Support Vector Classification, SVC)实现与应用 C-SVC是基于支持向量机(SVM)的经典分类算法,通过寻找最优超平面实现数据分类。其核心目标函数为: $$\min_{w,b,\xi} \frac{1}{2}\|w\|^2 + C\sum_{i=1}^{n}\xi_i$$ $$s.t.\quad y_i(w^T\phi(x_i) + b) \geq 1 - \xi_i,\quad \xi_i \geq 0$$ 其中$C$是惩罚参数,控制分类错误与间隔大小的权衡[^1]。 #### 关键实现步骤(Python/sklearn) ```python from sklearn.svm import SVC from sklearn.model_selection import train_test_split from sklearn.metrics import roc_auc_score # 数据准备 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2) # 创建SVC模型(使用RBF核) model = SVC( C=1.0, # 惩罚系数 kernel='rbf', # 核函数类型 gamma='scale', # 核函数系数 probability=True, # 启用概率估计 random_state=42 ) # 训练与预测 model.fit(X_train, y_train) y_pred = model.predict(X_test) y_proba = model.predict_proba(X_test)[:, 1] # 正类概率 # 评估(ROC AUC) roc_auc = roc_auc_score(y_test, y_proba) # 参考ROC曲线评估[^2] ``` #### 核心参数调优 1. **惩罚系数$C$**: - $C \uparrow$ → 分类更严格(可能过拟合) - $C \downarrow$ → 允许更多误分类(可能欠拟合) - 建议范围:$10^{-3} \text{ 至 } 10^3$(对数搜索) 2. **核函数选择**: - 线性核:`kernel='linear'`(高维特征时高效) - 高斯核:`kernel='rbf'`(处理非线性边界) - 多项式核:`kernel='poly'`(需调`degree`参数) 3. **$\gamma$参数(RBF核)**: - $\gamma \uparrow$ → 决策边界更复杂 - 自动设置:`gamma='scale'`(默认1/(n_features * X.var())) #### 典型应用场景 - **小样本高维数据**:文本分类、基因序列分析 - **非平衡数据集**:欺诈检测(需调整`class_weight`) - **需要概率输出**:医疗诊断(通过`probability=True`启用) - **鲁棒分类需求**:噪声数据环境(大$C$值增强鲁棒性) > 注意:对于大规模数据集,建议使用`LinearSVC`或增量学习实现以提高效率[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值