categorization of domain adaptation(域自适应分类)

分类

传统的域适应假设特征和标签空间保持不变,而它们的概率分布可能在域之间变化。然而,找到一个具有等效标签空间的源域和目标域是很困难的,甚至是不可能的。当源标签空间和目标标签空间不相同时,匹配整个源分布和目标分布将创建一个标签空间,其中包含属于目标类而不属于源类的数据的特征。目标域将这些类视为离群值类,将它们扩展到目标域会导致负转移,从而严重损害模型的性能。因此,除了边际分布差异之外,我们还需要考虑不同领域不同场景下的标签空间。不同的边缘分布和不同的标签空间分别称为domain gap 和 category gap。根据 category gap,领域适应可分为四大类: closed set, open set, partial, and universal domain adaptation。

Closed set domain

closed set domain adaption是指源域和目标域共享相同的类(即它们的标签集是同一个标签集),而域之间仍然存在域差距的情况。传统的领域适应就属于这一类。

open set domain adaptation

open set domain adaptation中,源域和目标域共享公共标签集中的一些标签,它们也可能有私有标签。Saito 等人定义了新的open set domain adaptation,其中源域私有类中的数据被删除。在修改后的标签集中,源标签集被认为是目标标签集的一个子集。
在这里插入图片描述

partial domain adaptation

partial domain adaptation是指目标标签集是源标签集的一个子集的情况。

网络架构:
在这里插入图片描述Gf表示特征提取器, Gy是源域分类器, Gd是域判别器,主要是用来判别输入的样本是不是还在目标域类别中,如果既属于源域类别,又属于目标域类别,其权重就变大,反之就变小。 γ 体现的是源域数据的总体分布权重情况,源域分类器对源域分类后,源域数据总体的分布实际上体现了各个类别的分布情况,而不难发现属于源域而不属于目标域类别的分布与既属于源域又属于目标域类别的分布情况应该是有很大的不同的,所以实际上把属于后者的误分到前者的可能性是很小的, Ly是有监督学习的损失函数,Ld 则是域分类损失。
在这里插入图片描述

universal domain adaptation

与上述域自适应需要关于源标签集和目标标签集的先验知识相比,通用域自适应并不局限于任何先验知识。在通用域自适应中,源域和目标域可能共享共同的标签集,而且每个域也可能有一个私有标签集或离群值类。通用域自适应首先倾向于找到跨域的共享标签空间,然后部分域自适应对齐公共标签集中的数据分布。最终,一个分类器将在匹配的源标记数据上进行训练,以安全地应用于未标记的目标数据。在测试阶段,训练过的开放集和通用域自适应的分类器为属于共享标签空间的目标样本分配准确的标签,并将离群值类中的样本标记为未知。

图示

在这里插入图片描述

图片中可以很明显的看出四种域自适应的区别。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
新闻文本分类是自然语言处理(NLP)中的一个重要应用场景,它可以将大量的新闻文本按照不同的主题分类,为用户提供更加精准的信息检索服务。在这里,我们将介绍如何使用Python来进行新闻文本分类。 1. 数据收集 首先,我们需要获取新闻文本数据集。可以从互联网上爬取新闻网站的文章,或者从已有的数据集中获取。一个常用的新闻文本数据集是Reuters-21578,包含21578条新闻文本,按照46个不同的主题分类。可以从网站上下载:https://archive.ics.uci.edu/ml/datasets/reuters-21578+text+categorization+collection 2. 数据预处理 在获取数据集后,我们需要对其进行预处理。这包括去除HTML标签、数字、标点符号和停用词等不必要的信息,以及进行词干提取(stemming)和词形还原(lemmatization)等文本预处理操作。可以使用Python中的NLTK包或SpaCy包来完成这些操作。 3. 特征提取 在预处理完成后,我们需要将文本数据转换成数值型特征向量,以便于机器学习算法进行处理。常用的特征提取方法包括词袋模型(bag of words)、TF-IDF、词嵌入(word embedding)等。可以使用Python中的sklearn包或gensim包来完成这些操作。 4. 模型选择和训练 在特征提取完成后,我们需要选择合适的机器学习算法来进行分类。常用的算法包括朴素贝叶斯(Naive Bayes)、支持向量机(SVM)、决策树(Decision Tree)等。可以使用Python中的sklearn包来构建分类器,并使用训练数据集对其进行训练。 5. 模型评估 在模型训练完成后,我们需要使用测试数据集对其进行评估。可以使用Python中的sklearn包中的评估函数,如accuracy_score、precision_score、recall_score、f1_score等来评估分类器的性能。 6. 模型应用 最后,我们可以使用训练好的分类器对新的文本数据进行分类,以实现新闻文本分类的功能。 以上就是使用Python进行新闻文本分类的基本流程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值