Processing math: 31%
  • 中国精品科技期刊
  • CCF推荐A类中文期刊
  • 计算领域高质量科技期刊T1类
高级检索

一种新的半监督归纳迁移学习框架:Co-Transfer

文益民, 员喆, 余航

文益民, 员喆, 余航. 一种新的半监督归纳迁移学习框架:Co-Transfer[J]. 计算机研究与发展, 2023, 60(7): 1603-1614. DOI: 10.7544/issn1000-1239.202220232
引用本文: 文益民, 员喆, 余航. 一种新的半监督归纳迁移学习框架:Co-Transfer[J]. 计算机研究与发展, 2023, 60(7): 1603-1614. DOI: 10.7544/issn1000-1239.202220232
Wen Yimin, Yuan Zhe, Yu Hang. A New Semi-Supervised Inductive Transfer Learning Framework: Co-Transfer[J]. Journal of Computer Research and Development, 2023, 60(7): 1603-1614. DOI: 10.7544/issn1000-1239.202220232
Citation: Wen Yimin, Yuan Zhe, Yu Hang. A New Semi-Supervised Inductive Transfer Learning Framework: Co-Transfer[J]. Journal of Computer Research and Development, 2023, 60(7): 1603-1614. DOI: 10.7544/issn1000-1239.202220232
文益民, 员喆, 余航. 一种新的半监督归纳迁移学习框架:Co-Transfer[J]. 计算机研究与发展, 2023, 60(7): 1603-1614. CSTR: 32373.14.issn1000-1239.202220232
引用本文: 文益民, 员喆, 余航. 一种新的半监督归纳迁移学习框架:Co-Transfer[J]. 计算机研究与发展, 2023, 60(7): 1603-1614. CSTR: 32373.14.issn1000-1239.202220232
Wen Yimin, Yuan Zhe, Yu Hang. A New Semi-Supervised Inductive Transfer Learning Framework: Co-Transfer[J]. Journal of Computer Research and Development, 2023, 60(7): 1603-1614. CSTR: 32373.14.issn1000-1239.202220232
Citation: Wen Yimin, Yuan Zhe, Yu Hang. A New Semi-Supervised Inductive Transfer Learning Framework: Co-Transfer[J]. Journal of Computer Research and Development, 2023, 60(7): 1603-1614. CSTR: 32373.14.issn1000-1239.202220232

一种新的半监督归纳迁移学习框架:Co-Transfer

基金项目: 国家自然科学基金项目(61866007);广西自然科学基金项目(2018GXNSFDA138006);广西重点研发计划项目(桂科AB21220023);广西图像图形与智能处理重点实验室项目(GIIP2005,GIIP201505)
详细信息
    作者简介:

    文益民: 1969年生. 博士,教授,博士生导师. CCF杰出会员. 主要研究方向为机器学习、推荐系统和大数据分析

    员喆: 1995年生. 硕士研究生. 主要研究方向为机器学习和数据挖掘

    余航: 1991年生. 博士,教授,博士生导师. IEEE和CCF会员. 主要研究方向为在线机器学习、知识图谱和多智能体系统

  • 中图分类号: TP391

A New Semi-Supervised Inductive Transfer Learning Framework: Co-Transfer

Funds: The work was supported by the National Natural Science Foundation of China (61866007), the Guangxi Natural Science Foundation (2018GXNSFDA138006), the Key Research and Development Program of Guangxi (桂科AB21220023), and the Program of Guangxi Key Laboratory of Image and Graphic Intelligent Processing (GIIP2005, GIIP201505)
More Information
    Author Bio:

    Wen Yimin: born in 1969. PhD,professor,PhD supervisor. Distinguished member of CCF. His main research interests include machine learning, recommendation systems, and big data analysis

    Yuan Zhe: born in 1995. Master candidate. His main research interests include machine learning and data mining

    Yu Hang: born in 1991. PhD, professor, PhD supervisor. Member of IEEE and CCF. His main research interests include online machine learning, knowledge graph and multi-agent system

  • 摘要:

    在许多实际的数据挖掘应用场景,如网络入侵检测、Twitter垃圾邮件检测、计算机辅助诊断等中,与目标域分布不同但相关的源域普遍存在. 一般情况下,在源域和目标域中都有大量未标记样本,对其中的每个样本都进行标记是件困难的、昂贵的、耗时的事,有时也没必要. 因此,充分挖掘源域和目标域中标记和未标记样本来解决目标域中的分类任务非常重要且有意义. 结合归纳迁移学习和半监督学习,提出一种名为Co-Transfer的半监督归纳迁移学习框架. Co-Transfer首先生成3个TrAdaBoost分类器用于实现从原始源域到原始目标域的迁移学习,同时生成另外3个TrAdaBoost分类器用于实现从原始目标域到原始源域的迁移学习. 这2组分类器都使用从原始源域和原始目标域的原有标记样本的有放回抽样来训练. 在Co-Transfer的每一轮迭代中,每组TrAdaBoost分类器使用新的训练集更新,其中一部分训练样本是原有的标记样本,一部分是由本组TrAdaBoost分类器标记的样本,还有一部分则由另一组TrAdaBoost分类器标记. 迭代终止后,把从原始源域到原始目标域的3个TrAdaBoost分类器的集成作为原始目标域分类器. 在UCI数据集和文本分类数据集上的实验结果表明,Co-Transfer可以有效地学习源域和目标域的标记和未标记样本从而提升泛化性能.

    Abstract:

    In many practical data mining scenarios, such as network intrusion detection, Twitter spam detection, and computer-aided diagnosis, source domain that is different but related to a target domain is very common. Generally, a large amount of unlabeled data is available in both source domain and target domain, but labeling each of them is difficult, expensive, time-consuming, and sometime unnecessary. Therefore, it is very important and worthwhile to fully explore the labeled and unlabeled data in source domain and target domain to handle classification tasks in target domain. To leverage transfer learning and semi-supervised learning, we propose a new inductive transfer learning framework named Co-Transfer. Co-Transfer first generates three TrAdaBoost classifiers for transfer learning from the original source domain to the original target domain, and meanwhile another three TrAdaBoost classifiers are generated for transfer learning from the original target domain to the original source domain by bootstrapping samples from the original labeled data. In each round of Co-Transfer, each group of TrAdaBoost classifiers is refined by using the carefully labeled data, one part of which is the original labeled samples, the second part is the samples labeled by one group of TrAdaBoost classifiers, and the other samples are labeled by another group of TrAdaBoost classifiers. Finally, the group of TrAdaBoost classifiers learned to transfer from the original source domain to the original target domain to produce the final hypothesis. Experimental results on UCI and text classification task datasets illustrate that Co-Transfer can significantly improve generalization performance by exploring labeled and unlabeled data across different tasks.

  • 域名系统(domain name system, DNS)是互联网最重要的基础服务之一,它提供人类可读的域名和其相关的DNS记录之间的映射. 域名由“. ”分隔的字符构成,子域名以父域名结尾,完整的域名被称为完全限定域名(fully qualified domain name, FQDN),其中忽略掉最后的点号时最右边的一组字符被称为顶级域名(top-level domain, TLD),例如com,net,org,cn等,顶级域向下数一级的子域称为二级域(second-level domain, SLD). 顶级域名中不代表一个国家或地区的顶级域名被称为通用顶级域名(generic top-level domain, gTLD). 为了扩展域名系统、增加域名注册者的选择,互联网名称与数字地址分配机构(Internet Corporation for Assigned Names and Numbers, ICANN)推出了新通用顶级域名(new generic top-level domain, new gTLD)计划,自2013年10月的首批授权以来,new gTLD计划已经使上千个新顶级域名,包括使用ASCII字符和不同字母系统的域名加入了互联网的根区(root zone).

    new gTLD为内容发布者(域名注册者)带来了灵活性,使内容发布者能够为其网站创建易于记忆的定制名称. new gTLD还为DNS生态中的利益相关者,如注册机构和注册商提供了新的机会. 近年来,注册new gTLD域名逐渐成了一种潮流,这些new gTLD域名 1日渐增加的使用给互联网带来了新的变化. 已有研究指出,尽管与传统顶级域名相比,new gTLD域名解析量依然存在较大差距,但new gTLD呈现逐年增长的活跃趋势,且大部分注册的域名被投入了实际使用[1]. 但同时域名滥用[2]随之出现,new gTLD域名用于开展恶意行为的情况也越来越多,new gTLD域名成为各种恶意行为的“热土”. 因此,研究new gTLD域名的解析行为将提供有关其使用情况的态势,并进一步促进new gTLD的推广、相关基础设施的加强. 然而,已有研究都集中在注册人的行为[3]或其他安全问题,例如中间人攻击[1,4-6],缺少对于new gTLD域名尤其是恶意域名的解析行为分析;此外由于new gTLD域名的特殊性,已有恶意域名检测方法可能不适用于new gTLD恶意域名的检测. 因此,需要分析new gTLD域名的解析行为,寻找new gTLD恶意域名的重要行为特征,并据此设计new gTLD恶意域名检测方法.

    本文使用包含对815个new gTLD的930万次查询的被动DNS日志,对new gTLD的解析行为进行了深入分析. 同时,在相同测量期内收集了包含所有类型域名的30亿次DNS查询,以便进行比较. 本文首先通过考察查询量、SLD数量和查询失败率来分析new gTLD的活跃状况. 然后从内容复制和基础设施共享等角度探讨了new gTLD域名的承载基础设施. 最后分析了恶意new gTLD域名的行为,发现按承载域名量排序的前5个IP/24网段所承载的域名之中有73.6%是恶意的. 根据上述分析设计了new gTLD恶意域名检测方法.

    本文的主要贡献包括4个方面:

    1)发现每个new gTLD的查询量和对应SLD数量符合重尾分布. 例如,按DNS查询量排名前3的new gTLD合计贡献了48.7%的查询量.

    2)大多数new gTLD域名只将它们的内容复制到1或2个IP/24网段,这些IP/24网段被域名共享,因为有89.1%的域名与其他域名使用相同的IP/24网段,并且new gTLD域名倾向使用云作为内容承载基础设施,导致内容承载基础设施的集中性,即少量的IP/24网段专门承载了大部分域名.

    3)与正常域名相比,恶意域名有独特的行为. 例如请求用户网络空间分布独特、内容承载基础设施更集中(存在某些AS或IP/24承载大量恶意域名)、SLD长度分布偏斜(更短)、对应的FQDN数量更多、每个FQDN的平均查询次数少以及倾向使用默认生存时间(TTL)设置(例如10 min).

    4)基于上述发现设计并实现了一种new gTLD恶意域名检测方法,以new gTLD域名解析行为特征为输入,使用随机森林作为分类器,实现恶意域名的快速识别. 实验结果表明,该方法的准确率可达94%,优于传统恶意域名检测方法.

    在new gTLD的行为方面,已有研究多集中在注册人的行为或安全问题,如域名滥用行为等. Halvorson等人[3]提出了一种自动识别注册目的的方法,并分析了new gTLD域名的注册类型. Chen等人[4-5]刻画了在new gTLD域名时代通过域名碰撞(domain name collision)实现的中间人(man in the middle,MitM)攻击,并讨论了缓解策略. Korczynśki等人[1]对比了new gTLD与传统通用顶级域名的域名滥用行为,发现new gTLD已经成为了恶意行为者的“吸铁石”(a magnet for malicious actors).Pouryousef等人[6]发现在引入new gTLD之后,误植域名(typosquatted domains)的数量增加了几个数量级.

    在恶意域名检测方面已经有许多研究. Hao等人[7-8]利用域名注册信息尝试在发生大量查询之前识别恶意域名. Manadhata等人[9]利用域名-IP映射建立二部图,在已知少量域名标签前提下,使用置信度传播推测其他域名是否为恶意域名. Schüppen等人[10]基于域名文本特征检测DGA产生的恶意域名. Yu等人[11]将域名字符串输入到CNN进行恶意域名检测. Lei等人[12]用二部图建模域名解析行为,用图嵌入学习域名的向量表示,最后用SVM分类. 然而,现有研究仍然缺乏针对new gTLD恶意域名检测的方法.

    本文所使用的被动DNS日志数据集覆盖我国3个主要互联网服务提供商(Internet service provider, ISP). 每条DNS应答对应1条日志记录,每条日志包含用户的BGP(Border Gateway Protocol)前缀、自治系统号(autonomous system number,ASN)、域名、DNS查询类型、所有应答资源记录、TTL和时间戳. 本文使用nTLDStats[13]的列表来识别new gTLD,将ICANN发起的new gTLD计划之后引入的通用顶级域名称为new gTLD,在该计划之前引入的通用顶级域名,例如com,net,info则被标记为传统通用顶级域名.

    为了进行对比分析,同时收集了包括传统通用顶级域名、国家代码顶级域名(country code top-level domain, ccTLD)和new gTLD的所有类型域名共30亿条DNS日志.

    在进行数据预处理时,使用public suffix库[14]把FQDN映射到对应的SLD. 由于数据集不包括应答码(response code),在判断一次查询是否成功时无法直接从NOERROR或NXDOMAIN这样的应答码中进行判断. 因此为了计算查询失败率,采取一种启发式的方法过滤掉大概率是NXDOMAIN的或者无法准确标记的应答. 这里不检查返回的应答IP地址是否正确,而只考虑一次查询是否包含有效的DNS应答. 如果一次查询返回了有效的DNS应答,就把这次查询标记为成功. 例如对某一次A类型查询,如果应答中存在所查询域名的A记录,则认为该次查询成功. 在进行完上述标记之后,对于每个查询类型 QTYPE ,检查数据集中每一个被查询的域名QNAME是否至少成功过1次,将从未成功过的二元组QTYPEQNAME对应的日志过滤掉.

    经过上述预处理之后,获得了9 295 368次对815个new gTLD的611 769个FQDN的查询;作为对比使用的总体数据集则包含约28亿条日志.

    需要说明的是,数据集中所有可能关联到用户的信息均已删除或者匿名化. 特别地,数据集不包含最终用户的IP地址,用户所在网络的BGP前缀也经过匿名化处理. 此外,所有分析以聚合的方式进行统计分析,而不进行任何针对单个用户的分析.

    本节从查询量和域名数量的总览分析new gTLD域名的解析行为,并与非new gTLD域名进行对比. 为了分析new gTLD计划首批授权对顶级域名带来的扩展,首先使用whois来获取数据集中每个顶级域名的创建日期,并收集了547个顶级域名的成功回复. 图1展示了每年创建的顶级域名的数量,可以看出new gTLD快速增长.

    图  1  每年创建的顶级域名个数
    Figure  1.  The number of TLDs created per year

    本节分析各个new gTLD的DNS查询量和SLD的数量,并将它们的分布绘制在对数图中,如图2所示,其中x轴是分别按查询量和SLD排序的顶级域名排名,y轴是相应的查询量或SLD数量.

    图  2  顶级域名对应的查询量和SLD数量分布
    Figure  2.  Distribution of the number of queries and SLDs across TLDs

    图2中可以看到一个重尾分布,表明查询量和注册的域名数量集中在少数的顶级域名上. 事实上,如表1所示,前3个顶级域名吸引了大约一半的与new gTLD相关的查询. 表1也列出了查询失败率,可以看出,不同的new gTLD失败率为1.6%~45.8%,这意味着顶级域名的可靠性存在较大差异,其中help的失败率最低,表明其最为可靠;而win的失效率最高,意味着对其下域名的查询更容易失败,可靠性最差.

    表  1  按查询量排序的前10个新通用顶级域名
    Table  1.  Top 10 New gTLDs Ranked by the Number of Queries %
    顶级域名查询量占比查询失败率
    top31.116.0
    xyz11.119.0
    help6.51.6
    win6.245.8
    link6.12.3
    club5.120.9
    vip4.210.8
    space2.817.4
    online2.19.6
    loan1.93.7
    下载: 导出CSV 
    | 显示表格

    接下来分析域名查询失败量,表2呈现了2种主要的DNS查询类型:A类型和AAAA类型的查询量占比和查询成功率. 为了进行比较,还计算了所有类型的顶级域名(包括传统通用顶级域名、国家代码顶级域名和新通用顶级域名)的成功率. 可以看出,AAAA类型查询的成功率明显较低,且只占了10.4%的查询量,与2012年观察到的情况相似[15]. 此外,new gTLD域名的查询中AAAA类型的查询量占比略大.

    表  2  A类型和AAAA类型查询量占比与查询成功率
    Table  2.  Percentages of the Number of Queries and Success Rates for A and AAAA Queries %
    指标 所有域名 new gTLD域名
    A AAAA A AAAA
    查询量占比 86.2 10.4 84.3 14.8
    查询成功率 93.1 35.8 88.6 25.9
    下载: 导出CSV 
    | 显示表格

    图3进一步分析查询失败量是否集中在少数顶级域名上. 可以看到曲线是一个近似对角线的趋势,这表明new gTLD的失败查询量也集中在少数顶级域名上.

    图  3  顶级域名的查询失败量分布
    Figure  3.  Distribution of the number of failures for TLDs

    综上,在查询量、每个顶级域名的相关SLD数量和查询失败率方面,new gTLD域名的行为呈现重尾分布,并且new gTLD域名的成功率比所有域名低.

    本节分析new gTLD域名的内容承载基础设施. 由于AAAA类型查询在DNS查询中占比较小,而且经常失败,在接下来的分析中使用应答含有IPv4地址的A类型查询.

    通过测量承载每个SLD使用的IP/24网段的数量,考察new gTLD域名的内容在互联网上的复制情况,其分布情况如图4所示,其中按照DNS查询次数对域名进行排序. 图4分析了3组结果,即前1000域名、前10000域名和全部new gTLD域名. 可以看出,流行域名被复制到更多的IP/24网段. 然而,在排名前1000的域名中,只使用一个IP/24网段来承载其内容的域名多达40%;当考虑所有new gTLD域名时,这一占比上升到93.7%. 相比之下,即使是排名第100000的非new gTLD域名(该域名是mattel.com)也在10个IP/24网段上进行复制. 这些结果表明,new gTLD域名的内容复制非常有限.

    图  4  每个SLD使用IP/24网段数量的分布
    Figure  4.  Distribution of the number of IP/24 segments used by each SLD

    进一步分析了这些IP/24网段的内容承载特征. 为此,参考文献[16]定义了2个指标:内容分发潜力(content delivery potential,CDP)和内容垄断指数(content monopoly index,CMI). CDP定义了IP/24网段能服务的域名(即域名解析后得到的目标地址在该IP/24网段中)占比,以此衡量潜在地可以从一个IP/24网段提供的内容数量. 具体地,给定一个SLD集合(记为R),IP/24网段i的CDP计算公式为

    CDPi=|Si||R| (1)

    其中SiR是该IP/24网段承载的SLD集合.

    CMI通过对IP/24网段能服务的所有域名求权重平均值(其中每个域名的权重为能承载该域名的IP/24网段数量的倒数,这样设置权重是因为如果能承载该域名的IP/24网段越多,则该域名越无法体现该IP/24网段的内容垄断性,因此权重越低)衡量一个IP/24网段承载其他IP/24网段所没有的新通用顶级域名的程度. 一个IP/24网段的CMI为

    CMIi=1|Si|jSi1mj (2)

    其中mj是承载SLDjSi的IP/24网段数量. 一个IP/24网段的CMI大,意味着一些new gTLD域名是由该IP/24网段独家提供服务的.

    图5分析了按CDP排序的前15个IP/24网段. 可以看出,除了前2个IP/24网段之外,其他IP/24网段的CDP都相当小. 大约30.3%的SLD可以由第1个IP/24网段提供服务,该网段属于中国电信天翼云(CTCloud). 第2个IP/24网段属于阿里巴巴云,它可以为26.5%的new gTLD的SLD提供服务. 由此可见,new gTLD域名的所有者倾向于将网站外包给云服务进行内容承载,这些域名广泛使用了共享的内容承载基础设施. 另一个观察结果是,这些IP/24网段的CMI值都相当高(接近1),表明new gTLD域名几乎唯一地承载在对应IP/24网段. 这也是符合预期的,因为大多数SLD只使用1个IP/24网段进行内容承载,如图4所示.

    图  5  按照CDP排序前15个IP/24网段的CDP和CMI
    Figure  5.  CDP and CMI of the top 15 IP/24 segments ranked by CDP

    进一步,图6展示了new gTLD域名解析到的IP地址范围分布. 对于一个由多个IP地址承载的域名,选择使用次数最多的IP地址用于作图,以确保y轴取值不超过1. 观察到3条线中每条都有几个突起,再次证实了new gTLD域名的承载服务器集中在某些IP地址范围内. 此外,new gTLD域名和IP地址有不同的集中范围. 这表明,一些内容承载服务商使用少数IP地址承载大部分的域名,而其他服务商则使用一个IP地址池进行内容承载.

    图  6  new gTLD域名和应答IP地址在IPv4地址空间上的分布
    Figure  6.  new gTLD domain and response IP address distribution across IPv4 address space

    为研究new gTLD恶意域名,本文将IP/24网段按其承载的new gTLD域名数量进行排序,并提取前5个网段所承载的new gTLD域名,其中这5个网段对应的自治系统(autonomous system,AS)分别属于Enzu,Leaseweb,Psychz Net,Alibaba等数据中心、云服务提供商,所承载的new gTLD域名对应了约24.3万个FQDN和25.5万次查询,然后使用VirusTotal和360这2个黑名单对域名进行检查,如果这2个黑名单中的任何1个将域名分类为恶意域名,就将该域名标记为恶意域名. 由于域名数量较大,只检查了SLD而没有检查完整的FQDN,最终有1 171个SLD被标记为恶意域名,对应17.9万个FQDN(73.6%)和18.8万次查询(73.7%).

    如此高的恶意域名数量占比和查询量占比,再结合3.2节中的发现,说明存在承载大量new gTLD恶意域名的基础设施. 此外,可以观察到new gTLD恶意域名的查询量小、与域名个数非常接近,说明这些域名存在时间短、变化快.

    接下来从域名个数、源(用户)IP、域名长度和TTL等角度分别考察识别到的new gTLD恶意域名的DNS行为特征,这些特征对恶意域名的早期检测至关重要[7]. 为了叙述方便,由所有new gTLD域名组成的域名集合用Sall表示,而仅包含恶意new gTLD域名的集合用Smalicious表示.

    图7给出了new gTLD恶意域名的SLD对应FQDN数量分布,可以看出恶意的SLD对应更多的FQDN. 具体地,对于Smalicious来说,88.5%的SLD有超过10个FQDN. 与此相比,当考虑Sall时,87.2%的SLD只对应1个FQDN. 其原因有可能是DGA被用来生成恶意域名的FQDN.

    图  7  SLD对应FQDN数量的分布
    Figure  7.  Distribution of the number of FQDNs across SLDs

    接下来分析请求这些恶意域名的网络地址区域是否与整体分布不同. 为此,计算请求2类域名的用户BGP前缀的排名,即分别根据SallSmalicious中域名的发送查询次数对用户的BGP前缀进行排序,并计算2种排名的Kendall距离指标[17].Kendall距离是从Kendall’s tau(衡量2个排名列表的相似程度)推广出来的指标,该指标放宽了Kendall’s tau对于“被比较的2个排名列表必须有相同的元素”这一要求,为此,Kendall距离引入了一个惩罚参数p,并引入一个参数k表示对2个排名列表的前k个元素进行比较. 具体地,带有惩罚参数p的Kendall距离定义为:

    K(p)(τ1,τ2)=i,jτ1τ2¯K(p)i,j(τ1,τ2) (3)

    其中τ1τ2表示被比较的2个前k排名列表. 本文使用“乐观法”(optimistic approach),具体地,将p设置为0,并且判断3个条件是否成立:1)ij都出现在2个列表中,但它们在2个列表中的顺序是相反的;2)ij都出现在某一个列表中,其中i的排名高于j,而j出现在另一个列表中;3)只有i出现在一个列表中,而j出现在另一个列表中. 当这3个条件之一成立时,令¯K(p)i,j(τ1,τ2)=1,否则,令¯K(p)i,j(τ1,τ2)=0. 最后,计算归一化的K(normalized K[18]

    K=1K(0)(τ1,τ2)k2 (4)

    所得到的K取值范围在0~1,如果列表τ1τ2不包含相同元素,则K=0;如果2个列表τ1τ2完全相同,则K=1.

    表3给出了归一化K随考虑的域名个数k的变化情况,其中k=20, 40, 60, 80, 100. 从表3中可以看出2个列表的距离小于0.1时表明2个排名差距大,也就是说SallSmalicious中域名的用户前缀差距大.

    表  3  用户BGP前缀比较
    Table  3.  Comparison of Users’ BGP Prefixes
    kK
    200.08
    400.06
    600.07
    800.06
    1000.08
    下载: 导出CSV 
    | 显示表格

    进一步分析new gTLD域名的SLD长度,结果如表4所示,可以发现超过90%的new gTLD恶意域名长度为4,而考虑所有域名时,域名更长且域名长度分布更均匀. 在传统域名下,考虑到大量的短域名已经被注册,为保证恶意域名可以被攻击者注册,恶意域名长度一般较长,已有DGA域名检测方法往往忽略较短的域名,因此这些方法无法应用于new gTLD恶意域名的检测.

    表  4  不同SLD长度的new gTLD域名占比
    Table  4.  Fraction of new gTLD Domains of Different SLD Lengths
    长度(字符个数) 在new gTLD域名
    中的占比/%
    在恶意new gTLD域名
    中的占比/%
    3 8.5 0.1
    4 25.2 93.0
    5 17.2 6.1
    \geqslant 6 49.1 0.8
    下载: 导出CSV 
    | 显示表格

    域名解析行为的另一个重要特征是域名解析应答的TTL值. 图8给出了A类型查询的TTL值分布,其中包括全体new gTLD域名、恶意new gTLD域名、非恶意(合法)new gTLD域名的TTL分布,以及作为对比的数据集中全部域名的A类型查询TTL值分布. 考虑到由于可以从递归解析器的缓存中返回应答,日志中看到的TTL值可能小于权威域名服务器设置的原始值. 因此,本文参考文献[19-20]中的做法,使用每个域名观察到的最大TTL值作为权威域名服务器设置的原始TTL值的估计.

    图  8  A类型查询的TTL值分布
    Figure  8.  TTL value distribution of A type queries

    图8中可以看出,大约45%的全体域名TTL值小于120 s,而new gTLD域名倾向于使用600 s的TTL值,并且几乎所有的new gTLD恶意域名都把TTL值设置为600 s(这也是许多内容承载提供商的默认设置). 因此,TTL值可能不适用于new gTLD恶意域名的检测.

    对恶意new gTLD域名行为的分析发现,按承载域名量排序的前5个IP/24网段所承载的域名之中有73.6%是恶意的,且与正常域名相比,恶意域名有独特的行为,例如请求用户网络空间分布独特、内容承载基础设施更集中(存在某些AS或IP/24承载大量恶意域名)、SLD长度分布偏斜(更短)、对应FQDN数量更多、每个FQDN的平均查询次数少以及倾向使用默认TTL值设置(例如TTL值为600 s). 上述发现从多角度对恶意域名检测的输入特征选择有所启发. 例如在查询量角度,发现恶意域名FQDN查询量少,启发使用SLD对应的FQDN查询量的统计量作为恶意域名检测的输入特征;在域名个数角度,发现恶意SLD对应的FQDN更多,启发使用SLD对应的FQDN个数作为输入特征;在请求用户网络空间和应答地址角度,发现恶意域名有独特的网络足迹,启发使用域名与请求用户地址(应答地址)的映射关系,从查询量和域名个数入手,用统计量展开维度作为输入特征;在域名长度角度,发现恶意域名短,启发避免使用域名的文本特征作为输入;在TTL角度,发现集中在600 s,启发不使用TTL值作为输入.

    需要说明的是,本文在标记数据集中的域名时使用VirusTotal和360黑名单等恶意域名标记工具,其工作原理是聚合多家杀毒引擎、网站扫描器、URL分析工具和域名屏蔽列表判断所提交域名是否为恶意域名. 这些工具的恶意域名识别准确度高,但是在域名覆盖度上以及检测时效性上存在不足. 因此,它们被广泛应用在基准数据集的构造上,以评估所设计方法的准确性,而不能直接作为恶意域名检测的工具.

    本文旨在设计一种基于解析特征的简单有效的new gTLD恶意域名识别方法,实现恶意域名的快速准确检测,降低恶意域名造成的危害.

    本节基于第3节分析发现的new gTLD恶意域名行为特征,设计new gTLD恶意域名检测方法. 恶意域名检测本质上是一个二分类问题,主要包括输入特征、分类器、输出0/1标签(0为正常域名(本问题中作为负类);1为恶意域名(本问题中作为正类)).

    new gTLD恶意域名检测的主要挑战在于,new gTLD恶意域名相比传统恶意域名有特殊性,需要选取更合适的特征. 现有恶意域名检测方法中缺少针对new gTLD域名的检测方法,而传统恶意域名检测方法设计中往往利用域名的文本特征(如可发音单词数、数字符号字符占比等)进行检测. 但是,第3节的分析发现了若干new gTLD恶意域名的独特行为特征,使得传统恶意域名检测方法并不适用. 如new gTLD域名长度分布偏斜(恶意域名相比正常域名更短),因此域名的文本特征区分性不强,进而导致传统方法对于new gTLD恶意域名检测效果不佳. 因此,本文基于第3节的分析结果,选择具有区分度的特征设计针对new gTLD的恶意域名检测方法,这些特征包括请求用户网络空间分布独特、内容承载基础设施更集中、对应FQDN数量更多、每个FQDN的平均查询次数少等.

    结合3.2节与3.3节的发现,本节避免使用域名的文本特征,也不使用TTL值作为输入,而是分别从域名的查询量、域名个数、发起查询的用户(源IP)、应答IP的角度提取了特征. 表5总结了使用的特征.

    表  5  特征集合
    Table  5.  Feature Sets
    特征集合 特征名称 维度
    域名的查询量SLD对应FQDN查询量的统计量8
    域名个数SLD对应FQDN的个数(总数+每天)15
    客户端(源IP)SLD对应源AS和BGP prefix的个数2
    SLD对应源AS和BGP prefix
    查询量的统计量
    16
    SLD对应源AS和BGP prefix
    在查询方面的特征
    14
    应答IP(AS)SLD对应应答AS的个数1
    SLD映射到AS次数的统计量8
    SLD映射到AS在内容承载方面的特征7
    下载: 导出CSV 
    | 显示表格

    在域名查询量角度,使用每个SLD对应的FQDN查询量的统计量作为输入特征. 例如,某个SLD对应了n个FQDN,这n个FQDN的查询量分别是 {x_1}, {x_2},\cdots,{x_n} ,则对( {x_1},{x_2},\cdots,{x_n} )计算统计量,这里使用的统计量包括了最大值、最小值、均值、标准差、下四分位点、中位数、上四分位点和熵,共8维. 这样做是因为,3.3节中观察到这些new gTLD恶意域名的查询量与域名个数非常接近,说明这些域名查询量少、存在时间短、变化快.

    在域名个数的角度,使用了每个SLD对应的FQDN数量作为输入特征. 除了总量之外,也统计了每天对应的数量,以反映域名数量在时间上的变化. 这样做的原因是,在图7中发现恶意的SLD比new gTLD域名整体有更多的FQDN.

    在发起查询的用户(源IP)的角度,使用查询每个SLD的源AS和BGP prefix数量、查询量的统计量以及在查询方面的特征作为输入. 考虑这些特征是因为发起恶意域名查询次数多的用户BGP前缀与发起非恶意域名查询次数多的用户BGP前缀有很大不同,如表3所示. 这启发了使用SLD与源IP的映射关系,从查询量和域名数量入手,用统计量展开特征维度作为new gTLD恶意域名早期检测的一部分输入特征.

    除了BGP prefix之外,本文也考虑把AS级别的统计量加入. 查询量的统计量与域名查询量使用的统计量相同,都是8维,具体计算的是查询某SLD的每个源AS(或BGP prefix)查询该SLD次数的统计量. 例如,有n个AS(或BGP prefix)查询过某SLD,查询该SLD的次数分别是 {x_1},{x_2},\cdots,{x_n} ,则计算( {x_1}, {x_2},\cdots,{x_n} )的统计量,即最大值、最小值、均值、标准差、下四分位点、中位数、上四分位点和熵. 源AS和BGP prefix在查询方面的特征则是这样考虑的,对查询某个SLD的每个源AS(或BGP prefix),计算它们查询SLD数量的统计量. 例如,有n个AS(或BGP prefix)查询过某SLD,它们查询过SLD的数量分别是 {x_1},{x_2},\cdots,{x_n} ,则对( {x_1},{x_2},\cdots,{x_n} )计算统计量,即计算最大值、最小值、均值、标准差、下四分位点、中位数、上四分位 2.

    在内容承载基础设施角度,从应答IP映射到AS,使用了每个SLD映射到的AS个数、映射到AS次数的统计量以及所映射到的AS在内容承载方面的特征作为输入. 考虑这些特征是因为发现了存在承载大量new gTLD恶意域名的基础设施(见3.3节),并且new gTLD域名使用有限的内容复制和共享的基础设施(如图5图6所示). 同样,使用SLD与应答IP的映射关系,从查询量和域名数量入手,用统计量展开特征维度. 在计算SLD映射到AS次数的统计量时,假设某SLD能被n个AS所承载,且在应答中映射到各AS的次数分别是 {x_1},{x_2},\cdots,{x_n} ,则对( {x_1}, {x_2},\cdots, {x_n} )计算统计量. 而在考虑SLD所映射到的AS在内容承载方面的特征时,对该SLD映射到的每个应答AS所承载SLD的个数计算统计量. 例如,有n个AS能服务某SLD,它们所能承载的SLD的个数分别是 {x_1},{x_2},\cdots,{x_n} ,则对( {x_1},{x_2},\cdots,{x_n} )计算统计量.

    我们观察发现new gTLD恶意域名的活跃天数很短:97.4%的FQDN只活跃1天. 因此,需要选择简单、快速、高效的分类器. 本文考虑随机森林(random forest,RF)、支持向量机(support vector machine,SVM)和Boosting类3种典型方法.

    本节用来研究new gTLD恶意域名检测方法的SLD数据是由3.3节识别到的共1 171个恶意域名和4 770非恶意域名组成. 本节使用的评价指标包括准确率(accuracy)、精确率(precision)、召回率(recall)和F1分数(F1-score),其计算公式分别为

    accuracy{\text{ = }}\frac{{TP + TN}}{{TP + TN + FP + FN}} \text{,} (5)
    precision{\text{ = }}\frac{{TP}}{{TP + FP}} \text{,} (6)
    recall = \frac{{TP}}{{TP + FN}} \text{,} (7)
    F1 - score = \frac{{2 \times precision \times recall}}{{precision + recall}} \text{,} (8)

    其中 TP FP TN FN 分别代表真阳性、假阳性、真阴性和假阴性. 由于本文的分类任务更关心对恶意域名的分类性能,因此将恶意域名作为正样本,将正常域名作为负样本.

    对3类分类器进行了性能评估,经过5折交叉验证并计算了各指标的平均值,结果如表6所示. 其中SVM使用径向基核函数(RBF核),可以看出SVM和RF已经取得了较好的实验效果,SVM在召回率上比RF略高,而RF在精确率和F1分数指标表现更好. 而实验结果表明,集成学习中的3种Boosting类算法(AdaBoost,GBDT,XGBoost)并没能带来明显的性能提升,但是增加了额外的开销. 综上所述,基于实现简单、运行高效且综合性能表现更好的事实,本文选择了RF作为分类器.

    表  6  不同分类器经过5折交叉验证得到各指标的均值
    Table  6.  Average Value of Each Metric for Different Classifiers Under 5-Fold Cross-Validation %
    指标RFSVMAdaBoostGBDTXGBoost
    准确率9494939493
    精确率8883878887
    召回率8486778073
    F1分数8684818378
    下载: 导出CSV 
    | 显示表格

    本节分别从基于域名文本特征和基于解析行为特征的两大类方法中,选择3种有代表性的方法进行对比实验. 在基于域名文本特征的方法中,选择了文献[10-11]提出的方法;而在基于行为特征的方法中,选择文献[12]提出的方法. 下面首先简单介绍这3种方法的实现.

    文献[10]提取域名的结构特征(如下划线数量占比)、语言特征(如元音占比)和统计特征(如信息熵),然后将手动提取出的特征输入到作为分类器的SVM和RF中进行分类,输出对每个域名的预测结果. 文献[11]将域名字符串作为输入,利用深度学习自动提取域名特征并完成分类. 文献[12]利用DNS解析数据提供的映射关系,通过二部图建模域名之间在源IP、应答IP、查询时间3个维度的相似性,用图嵌入得到域名的向量表示,再输入到SVM分类器进行分类. 文献[12]提到这样做相比从领域知识、网络流量或者文本词汇提取特征更加鲁棒、稳定,因为恶意域名的基本行为特征倾向于高度一致性. 已有研究表明,领域知识在不同网络中有所区别,网络特征,例如恶意域名设置的TTL值会随时间改变(为了避免被检测到),恶意域名也会模仿正常域名的文本特征,比如用相似的字符个数或者可发音的单词.

    本文复现了文献[10-12]的3种方法,并与本文方法对比,结果如表7所示. 可以看出:1)在基于域名文本特征的方法中,对于文献[10]提出的方法,其输出将所有域名标记为正常域名,说明在new gTLD恶意域名检测问题上,使用这些人为提取的域名文本特征难以区分恶意与正常域名;而文献[11]的方法优于使用人为提取的域名文本特征的方法[10],但各项指标明显弱于基于解析行为特征的方法.2)在基于DNS解析行为特征的方法中,文献[12]提出的方法优于基于域名文本特征的方法,但由于new gTLD域名活跃天数短,减弱了查询时间维度相似性的效果,且没有考虑域名个数、查询量方面的特征,综合指标不如本文方法;此外,文献[12]提出的方法中的召回率最高但是精确率偏低,说明将更多域名标记为恶意域名,漏检最少但是误检较多.3)综合各个指标,本文方法取得了最好的效果,更适用于new gTLD恶意域名检测. 其原因在于本文方法在输入特征的选择上具有更强的针对性与区分性.

    表  7  与其他恶意域名检测方法的对比
    Table  7.  Comparison with Other Malicious Domain Detection Methods %
    指标 基于域名文本特征 基于DNS解析行为特征
    文献[10] 文献[11] 文献[12] RF
    准确率 80 41 79 94
    精确率 0 65 53 88
    召回率 0 16 88 84
    F1分数 0 25 66 86
    下载: 导出CSV 
    | 显示表格

    进一步地,调整恶意域名和正常域名的比例,原始数据集中恶意域名与正常域名的比例约为1∶4,通过随机采样正常域名的方法分别将此比例调整为1∶3,1∶2,1∶1,并对比数据集正负样本数量的比例对本文方法的影响;此外还通过随机采样恶意域名的方法将比例调整为1∶10,以考察样本较为不均衡的情况,实验结果如表8所示. 可以看出,本文方法的性能较为稳定,而样本中正负例数量的比值确实会影响检测结果,样本数量越均衡,分类性能指标越好. 当比例调整为1∶10时,精确率、召回率和F1分数都有一定的下降,而准确率反而比原始比例(1∶4)更高了,这是因为此时由于负样本太多,分类器倾向于输出分类结果为“正常域名”,反而提高了准确率.

    表  8  恶意SLD和正常SLD数量的比例对指标的影响
    Table  8.  The Effect of the Ratio of the Number of Malicious and Legitimate SLDs on the Metrics %
    指标1∶101∶41∶31∶21∶1
    准确率9694959696
    精确率8388919395
    召回率7984919497
    F1分数8086919496
    下载: 导出CSV 
    | 显示表格

    本文使用被动DNS日志对new gTLD的解析行为进行了分析. 主要发现包括:1)new gTLD的查询量和对应SLD数量符合重尾分布;2)大多数new gTLD域名只将它们的内容复制到1或2个IP/24网段,且使用共享的承载基础设施;3)与正常域名相比,恶意域名在内容承载基础设施集中性、SLD对应的FQDN数目、域名查询次数、请求用户网络空间分布、SLD长度分布等方面具有独特的特征. 基于这些发现,设计了一种new gTLD恶意域名的检测方法,充分考虑了new gTLD恶意域名在解析行为方面的独特特征,并使用RF作为分类器,以实现快速、高效的恶意域名检测. 实验结果表明,与已有方法相比,本文方法具有较高的准确率.

    作者贡献声明:杨东辉、曾彬、李振宇提出了研究思路和实验方案;杨东辉负责完成实验并撰写论文初稿;曾彬获取原始数据与完成部分数据分析;李振宇负责修改论文.

  • 图  1   Co-Transfer训练过程的数据流图

    Figure  1.   Data flow diagram of Co-Transfer training process

    图  2   文本分类任务上各对比算法在迭代过程中的错误率

    Figure  2.   Error rates of the comparative algorithms during their iteration on the text classification tasks

    图  3   不同ND条件下Co-Transfer的错误率

    Figure  3.   Error rates of Co-Transfer with different N and D

    表  1   实验数据集

    Table  1   Experimental Data Sets

    数据集属性数 \left|{D}_{\mathrm{S}}\right| 源域正负比 \left|{D}_{\mathrm{T}}\right| 目标域正负比类别数
    Mushroom2246080.5625/0.437535160.4596/0.54042
    Waveform2117220.5081/0.491915820.494 3/0.50572
    Magic1097180.7075/0.292593020.5865/0.41352
    Splice607950.4591/0.54097400.5432/0.45682
    Orgs vs People477112370.5247/0.475312080.5141/0.48592
    Orgs vs Places441510160.5787/0.421310430.5628/0.43722
    People vs Places456210770.6026/0.397410770.5766/0.42342
    下载: 导出CSV

    表  2   各算法的数据使用策略

    Table  2   Data Strategy Used by the Algorithms

    方法训练数据测试数据
    {D}_{\mathrm{S}\mathrm{L}} {D}_{\mathrm{S}\mathrm{U}} {D}_{\mathrm{T}\mathrm{L}} {D}_{\mathrm{T}\mathrm{U}}
    DT××× {D}_{\mathrm{T}\mathrm{e}\mathrm{s}\mathrm{t}}
    TrAdaBoost×× {D}_{\mathrm{T}\mathrm{e}\mathrm{s}\mathrm{t}}
    Tri-training××/ {D}_{\mathrm{T}\mathrm{e}\mathrm{s}\mathrm{t}}
    {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{A}} {D}_{\mathrm{T}\mathrm{e}\mathrm{s}\mathrm{t}}
    Co- {\mathrm{T}\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{s}\mathrm{f}\mathrm{e}\mathrm{r}}_{\mathrm{S}} /× {D}_{\mathrm{T}\mathrm{e}\mathrm{s}\mathrm{t}}
    {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{S}} × {D}_{\mathrm{T}\mathrm{e}\mathrm{s}\mathrm{t}}
    Co- {\mathrm{T}\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{s}\mathrm{f}\mathrm{e}\mathrm{r}}_{\mathrm{T}} ×/ {D}_{\mathrm{T}\mathrm{e}\mathrm{s}\mathrm{t}}
    Co-Transfer// {D}_{\mathrm{T}\mathrm{e}\mathrm{s}\mathrm{t}}
    注:“×”表示未使用该数据;“/”表示使用该数据但未使用样本的类别标记;“√”则表示使用该数据和全部样本的类别标记.
    下载: 导出CSV

    表  3   在原始源域与原始目标域标记比率均为10%下所对比算法的错误率

    Table  3   Error Rates of the Comparative Algorithms Under the Label Rate 10% of Original Source Domain and Target Domain

    数据集DTTrAdaBoostTri-training {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{A}} Co-TransferCo- {\mathrm{T}\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{s}\mathrm{f}\mathrm{e}\mathrm{r}}_{\mathrm{S}} Co- {\mathrm{T}\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{s}\mathrm{f}\mathrm{e}\mathrm{r}}_{\mathrm{T}}
    Mushroom0.004 ★0.006 ★0.004 ★0.0 ○0.0060.006 ★0.006 ★
    Waveform0.198 ●0.145 ●0.190 ●0.160 ●0.1360.147 ●0.138 ★
    Magic0.156 ●0.159 ●0.149 ●0.107 ○0.1390.152 ●0.140 ★
    Splice0.134 ●0.118 ●0.112 ●0.056 ○0.0840.103 ●0.094 ●
    Orgs vs People0.264 ●0.216 ●0.258 ●0.158 ○0.1920.209 ●0.199 ★
    Orgs vs Places0.279 ●0.266 ●0.274 ●0.178 ○0.2290.266 ●0.239 ●
    People vs Places0.274 ●0.228 ●0.264 ●0.154 ○0.1980.236 ●0.209 ★
    平均错误率0.1870.1630.1790.1160.1410.1600.146
    赢/平/输的次数6/1/06/1/06/1/01/0/66/1/02/5/0
    注:“●”或“○”表示有95%的置信度,说明Co-Transfer显著优于或差于所比较的算法;“★”表示Co-Transfer没有以95%的置信度优于所比较的算法.
    下载: 导出CSV

    表  4   在原始源域与原始目标域标记比率均为20%下所对比算法的错误率

    Table  4   Error Rates of the Comparative Algorithms Under the Label Rate 20% of Original Source Domain and Target Domain

    数据集DTTrAdaBoostTri-training {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{A}} Co-TransferCo- {\mathrm{T}\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{s}\mathrm{f}\mathrm{e}\mathrm{r}}_{\mathrm{S}} Co- {\mathrm{T}\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{s}\mathrm{f}\mathrm{e}\mathrm{r}}_{\mathrm{T}}
    Mushroom0.002 ★0.001 ★0.002 ★0.0 ○0.0020.002 ★0.002 ★
    Waveform0.173 ●0.148 ●0.169 ●0.160 ●0.1260.145 ●0.131 ★
    Magic0.149 ●0.146 ●0.139 ●0.107 ○0.1220.143 ●0.122 ★
    Splice0.104 ●0.096 ●0.095 ●0.056 ○0.0810.101 ●0.085 ★
    Orgs vs People0.208 ●0.18 ●0.198 ●0.158 ★0.1540.181 ●0.157 ★
    Orgs vs Places0.242 ●0.237 ●0.231 ●0.178 ○0.1950.226 ●0.208 ●
    People vs Places0.217 ●0.206 ●0.199 ●0.154 ○0.170.207 ●0.178 ★
    平均错误率0.1560.1450.1480.1160.1210.1440.126
    赢/平/输的次数6/1/06/1/06/1/01/1/56/1/01/6/0
    注:“●”或“○”表示有95%的置信度,说明Co-Transfer显著优于或差于所比较的算法;“★”表示Co-Transfer没有以95%的置信度优于所比较的算法.
    下载: 导出CSV

    表  5   在原始源域与原始目标域标记比率均为40%下所对比算法的错误率

    Table  5   Error Rates of the Comparative Algorithms Under the Label Rate 40% of Original Source Domain and Target Domain

    数据集DTTrAdaBoostTri-training {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{A}} Co-TransferCo- {\mathrm{T}\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{s}\mathrm{f}\mathrm{e}\mathrm{r}}_{\mathrm{S}} Co- {\mathrm{T}\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{s}\mathrm{f}\mathrm{e}\mathrm{r}}_{\mathrm{T}}
    Mushroom0.0 ★0.0 ★0.0 ★0.0 ★0.00.0 ★0.0 ★
    Waveform0.165 ●0.145 ●0.165 ●0.160 ●0.1320.145 ●0.131 ★
    Magic0.142 ●0.135 ●0.130 ●0.107 ★0.1090.132 ●0.112 ★
    Splice0.084 ★0.088 ●0.070 ★0.056 ○0.0770.081 ★0.074 ★
    Orgs vs People0.180 ●0.185 ●0.165 ●0.158 ★0.1550.183 ●0.155★
    Orgs vs Places0.197 ●0.219 ●0.190 ★0.178 ★0.1850.220 ●0.192 ★
    People vs Places0.190 ●0.192 ●0.177 ●0.154 ●0.1420.192 ●0.145 ★
    平均错误率0.1370.1380.1280.1160.1140.1360.116
    赢/平/输的次数5/2/06/1/04/3/02/4/15/2/00/7/0
    注:“●”或“○”表示有95%的置信度,说明Co-Transfer显著优于或差于所比较的算法;“★”表示Co-Transfer没有以95%的置信度优于所比较的算法.
    下载: 导出CSV

    表  6   在原始源域与原始目标域标记比率均为50%下所对比算法的错误率

    Table  6   Error Rates of the Comparative Algorithms Under the Label Rate 50% of Original Source Domain and Target Domain

    数据集DTTrAdaBoostTri-training {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{A}} Co-TransferCo- {\mathrm{T}\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{s}\mathrm{f}\mathrm{e}\mathrm{r}}_{\mathrm{S}} Co- {\mathrm{T}\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{s}\mathrm{f}\mathrm{e}\mathrm{r}}_{\mathrm{T}}
    Mushroom0.0 ★0.0 ★0.0 ★0.0 ★0.00.0 ★0.0 ★
    Waveform0.169 ●0.151 ●0.167 ●0.160 ●0.1390.152 ●0.139 ★
    Magic0.141 ●0.137 ●0.130 ●0.107 ★0.1080.129 ●0.108 ★
    Splice0.081 ●0.080 ●0.069 ★0.056 ○0.0710.071 ★0.070 ★
    Orgs vs People0.170 ●0.199 ●0.162 ●0.158 ★0.1490.182 ●0.151 ★
    Orgs vs Places0.188 ●0.214 ●0.168 ★0.178 ★0.1760.212 ●0.175 ★
    People vs Places0.183 ●0.200 ●0.166 ●0.154 ●0.1350.183 ●0.143 ★
    平均错误率0.1330.1400.1230.1160.1110.1330.112
    赢/平/输的次数6/1/06/1/04/3/02/4/15/2/00/7/0
    注:“●”或“○”表示有95%的置信度,说明Co-Transfer显著优于或差于所比较的算法;“★”表示Co-Transfer没有以95%的置信度优于所比较的算法.
    下载: 导出CSV

    表  7   不同标记比率下TrAdaBoost与 {\mathbf{T}\mathbf{r}\mathbf{A}\mathbf{d}\mathbf{a}\mathbf{B}\mathbf{o}\mathbf{o}\mathbf{s}\mathbf{t}}_{\mathbf{S}} 算法的错误率

    Table  7   Error Rates of TrAdaBoost and {\mathbf{T}\mathbf{r}\mathbf{A}\mathbf{d}\mathbf{a}\mathbf{B}\mathbf{o}\mathbf{o}\mathbf{s}\mathbf{t}}_{\mathbf{S}} Under Different Label Rates

    数据集10%标记比例20%标记比例40%标记比例50%标记比例
    TrAdaBoost {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{S}} TrAdaBoost {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{S}} TrAdaBoost {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{S}} TrAdaBoost {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{S}}
    Mushroom0.006 ★0.0050.001 ★0.0020.0 ★0.00.0 ★0.0
    Waveform0.145 ★0.1480.148 ★0.1430.145 ★0.1480.151 ★0.157
    Magic0.159 ★0.1570.146 ★0.1450.135 ★0.130.137 ★0.138
    Splice0.118 ●0.0980.096 ★0.0970.088 ●0.0750.08 ★0.079
    Orgs vs People0.216 ●0.1990.18 ★0.1720.185 ★0.1890.199 ★0.185
    Orgs vs Places0.266 ★0.2620.237 ●0.2150.219 ★0.2260.214 ★0.222
    People vs Places0.228 ★0.2210.206 ○0.2230.192 ★0.1820.2 ●0.175
    平均错误率0.1630.1560.1450.1420.1380.1360.140.137
    注:“●”或“○”表示有95%的置信度,说明 {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{S}} 显著优于或差于TrAdaBoost;“★”表示 {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{S}} 没有以95%的置信度优于TrAdaBoost.
    下载: 导出CSV

    表  8   在原始源域标记比率为50%、原始目标域标记比率为10%下所有对比算法的错误率

    Table  8   Error Rates of the Comparative Algorithms Under the Label Rate 50% of the Original Source Domain and 10% of the Original Target Domain

    数据集DTTrAdaBoostTri-trainingTrAdaBoostACo-TransferCo-TransferSCo-TransferT
    Mushroom0.004 ★0.006 ★0.004 ★0.0 ○0.0060.006 ★0.005 ★
    Waveform0.198 ●0.147 ●0.190 ●0.160 ●0.1310.148 ●0.140 ●
    Magic0.156 ●0.156 ●0.149 ●0.107 ○0.1370.154 ●0.140 ★
    Splice0.134 ●0.109 ●0.112 ●0.056 ○0.0790.106 ●0.085 ★
    Orgs vs People0.264 ●0.216 ●0.258 ●0.158 ○0.1860.212 ●0.194 ★
    Orgs vs Places0.279 ●0.254 ●0.274 ●0.178 ○0.2200.257 ●0.234 ●
    People vs Places0.274 ●0.222 ●0.264 ●0.154 ○0.1960.221 ●0.208 ★
    平均错误率0.1870.1590.1790.1160.1360.1580.144
    赢/平/输的次数6/1/06/1/06/1/01/0/66/1/02/5/0
    注:“●”或“○”表示有95%的置信度,说明Co-Transfer显著优于或差于所比较的算法;“★”表示Co-Transfer没有以95%的置信度优于所比较的算法.
    下载: 导出CSV

    表  9   在原始源域标记比率为50%、原始目标域标记比率为20%下所有对比算法的错误率

    Table  9   Error Rates of the Comparative Algorithms Under the Label Rate 50% of the Original Source Domain and 20% of the Original Target Domain

    数据集DTTrAdaBoostTri-training {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{A}} Co-TransferCo- {\mathrm{T}\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{s}\mathrm{f}\mathrm{e}\mathrm{r}}_{\mathrm{S}} Co- {\mathrm{T}\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{s}\mathrm{f}\mathrm{e}\mathrm{r}}_{\mathrm{T}}
    Mushroom0.002 ★0.003 ★0.002 ★0.0 ○0.0010.002 ★0.002 ★
    Waveform0.173 ●0.149 ●0.169 ●0.160 ●0.1330.142 ●0.130 ★
    Magic0.149 ●0.143 ●0.139 ●0.107 ○0.1240.144 ●0.123 ★
    Splice0.104 ●0.091 ●0.095 ●0.056 ○0.0820.094 ●0.077 ★
    Orgs vs People0.208 ●0.176 ★0.198 ●0.158 ○0.1680.177 ●0.174 ★
    Orgs vs Places0.242 ●0.234 ●0.231 ●0.178 ○0.1950.231 ●0.2 ★
    People vs Places0.217 ●0.216 ●0.199 ●0.154 ○0.1730.204 ●0.179 ★
    平均错误率0.1560.1450.1480.1160.1270.1420.124
    赢/平/输的次数6/1/05/2/06/1/01/6/05/2/00/7/0
    注:“●”或“○”表示有95%的置信度,说明Co-Transfer显著优于或差于所比较的算法;“★”表示Co-Transfer没有以95%的置信度优于所比较的算法.
    下载: 导出CSV

    表  10   在原始源域标记比率为50%、原始目标域标记比率分别为10%和20%下TrAdaBoost与 {\mathbf{T}\mathbf{r}\mathbf{A}\mathbf{d}\mathbf{a}\mathbf{B}\mathbf{o}\mathbf{o}\mathbf{s}\mathbf{t}}_{\mathbf{S}} 的错误率

    Table  10   Error Rates of TrAdaBoost and {\mathbf{T}\mathbf{r}\mathbf{A}\mathbf{d}\mathbf{a}\mathbf{B}\mathbf{o}\mathbf{o}\mathbf{s}\mathbf{t}}_{\mathbf{S}} Under the Label Rate 50% of the Original Source Domain and 10% and 20% of the Original Target Domain, Respectively

    数据集源域50%, 目标域10%源域50%, 目标域20%
    TrAdaBoost {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{S}} TrAdaBoost {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{S}}
    Mushroom0.006 ★0.0050.003 ★0.002
    Waveform0.147 ★0.1480.149 ★0.143
    Magic0.156 ★0.1570.143 ★0.145
    Splice0.109 ★0.0980.091 ★0.097
    Orgs vs People0.216 ●0.1990.176 ★0.172
    Orgs vs Places0.254 ★0.2620.234 ●0.215
    People vs Places0.222 ★0.2210.216 ★0.223
    平均错误率0.1590.1560.1450.142
    注:“●”或“○”表示有95%的置信度,说明 {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{S}} 显著优于或差于TrAdaBoost;“★”表示 {\mathrm{T}\mathrm{r}\mathrm{A}\mathrm{d}\mathrm{a}\mathrm{B}\mathrm{o}\mathrm{o}\mathrm{s}\mathrm{t}}_{\mathrm{S}} 没有以95%的置信度优于TrAdaBoost.
    下载: 导出CSV
  • [1]

    Pan S, Yang Qiang. A survey on transfer learning[J]. IEEE Transactions on Knowledge and Data Engineering, 2010, 22(10): 1345−1359 doi: 10.1109/TKDE.2009.191

    [2]

    Zhuang Fuzhen, Qi Zhiyuan, Duan Keyu, et al. A comprehensive survey on transfer learning[J]. Proceedings of the IEEE, 2020, 109(1): 43−76

    [3]

    Liu Xiaobo, Zhang H, Cai Zhihua, et al. A Tri-training based transfer learning algorithm[C]//Proc of the 24th Int Conf on Tools with Artificial Intelligence. Piscataway. NJ: IEEE, 2012: 698−703

    [4]

    Tang Yejun, Wu Bin, Peng Liangrui, et al. Semi-supervised transfer learning for convolution neural network based Chinese character recognition[C]//Proc of the 14th IAPR Int Conf on Document Analysis and Recognition (ICDAR). Piscataway, NJ: IEEE, 2017: 441−447

    [5]

    Abuduweili A, Li Xingjian, Shi H, et al. Adaptive consistency regularization for semi-supervised transfer learning[C]//Proc of the 34th IEEE/CVF Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2021: 6923−6932

    [6]

    Wei Wei, Meng Deyu, Zhao Qian, et al. Semi-supervised transfer learning for image rain removal[C]//Proc of the 32nd IEEE/CVF Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2019: 3877−3886

    [7]

    Chebli A, Djebbar A, Marouani H. Semi-supervised learning for medical application: A survey[C]//Proc of the 9th Int Conf on Applied Smart Systems (ICASS). Piscataway, NJ: IEEE, 2018: 1−9

    [8]

    Mohanasundaram R, Malhotra A, Arun R, et al. Deep Learning and Semi-supervised and Transfer Learning Algorithms for Medical Imaging[M]// Deep Learning and Parallel Computing Environment for Bioengineering Systems. New York: Academic Press, 2019: 139−151

    [9]

    Liu Quande, Yu Lequan, Luo Luyang, et al. Semi-supervised medical image classification with relation-driven self-ensembling model[J]. IEEE Transactions on Medical Imaging, 2020, 39(11): 3429−3440 doi: 10.1109/TMI.2020.2995518

    [10]

    Liu Qinhua, Liao Xuejun, Li Hui, et al. Semi-supervised multitask learning[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2008, 31(6): 1074−1086

    [11]

    Skolidis G, Sanguinetti G. Semisupervised multitask learning with Gaussian processes[J]. IEEE Transactions on Neural Networks and Learning Systems, 2013, 24(12): 2101−2112 doi: 10.1109/TNNLS.2013.2272403

    [12]

    Naji K, Ulas B. Semi-supervised multi-task learning for lung cancer diagnosis[C]//Proc of the 40th Annual Int Conf of the IEEE Engineering in Medicine and Biology Society. Piscataway, NJ: IEEE, 2018: 710−713

    [13]

    Chu Xu, Lin Yang, Wang Yasha, et al. Mlrda: A multi-task semi-supervised learning framework for drug-drug interaction prediction[C]//Proc of the 28th Int Joint Conf on Artificial Intelligence. New York: ACM, 2019: 4518−4524

    [14]

    Qi Qi, Wang Xiaolu, Sun Haifeng, et al. A novel multi-task learning framework for semi-supervised semantic parsing[J]. IEEE/ACM Transactions on Audio, Speech, and Language Processing, 2020, 28: 2552−2560 doi: 10.1109/TASLP.2020.3018233

    [15]

    Van Engelen J, Hoos H. A survey on semi-supervised learning[J]. Machine Learning, 2020, 109(2): 373−440 doi: 10.1007/s10994-019-05855-6

    [16] 许勐璠,李兴华,刘海,等. 基于半监督学习和信息增益率的入侵检测方案[J]. 计算机研究与发展,2017,54(10):2255−2267 doi: 10.7544/issn1000-1239.2017.20170456

    Xu Mengfan, Li Xinghua, Liu Hai, et al. An intrusion detection scheme based on semi-supervised learning and information gain ratio[J]. Journal of Computer Research and Development, 2017, 54(10): 2255−2267 (in Chinese) doi: 10.7544/issn1000-1239.2017.20170456

    [17]

    Dai Wenyuan, Yang Qiang, Xue Guirong, et al. Boosting for transfer learning[C]//Proc of the 24th Int Conf on Machine Learning (ICML '07). New York: ACM, 2007: 193–200

    [18]

    Zhou Zhihua, Li Ming. Tri-training: Exploiting unlabeled data using three classifiers[J]. IEEE Transactions on Knowledge and Data Engineering, 2005, 17(11): 1529−1541 doi: 10.1109/TKDE.2005.186

    [19]

    Bache K, Lichman M. UCI machine learning repository [DB/OL]. 2013[2022-06-08].https://archive.ics.uci.edu/ml/index.php

    [20]

    Scrucca L. A fast and efficient modal EM algorithm for Gaussian mixtures[J]. The ASA Data Science Journal:Statistical Analysis and Data Mining, 2021, 14(4): 305−314 doi: 10.1002/sam.11527

    [21]

    Li Ming, Zhou Zhihua. Improve computer-aided diagnosis with machine learning techniques using undiagnosed samples[J]. IEEE Transactions on Systems, Man, and Cybernetics-Part A:Systems and Humans, 2007, 37(6): 1088−1098 doi: 10.1109/TSMCA.2007.904745

    [22]

    Cervantes J, Garcia-Lamont F, Rodriguez-Mazahua L, et al. A comprehensive survey on support vector machine classification: Applications, challenges and trends[J]. Neurocomputing, 2020, 408: 189−215 doi: 10.1016/j.neucom.2019.10.118

    [23]

    Shimomura L, Oyamada R, Vieira M et al. A survey on graph-based methods for similarity searches in metric spaces[J]. Information Systems, 2021, 95: 101507 doi: 10.1016/j.is.2020.101507

    [24]

    Blum A, Mitchell T. Combining labeled and unlabeled data with co-training[C]//Proc of the 8th Annual Conf on Computational Learning Theory. New York: ACM, 1998: 92−100

    [25]

    Dasgupta S, Littman M, McAllester D. PAC generalization bounds for co-training[C]//Proc of the 14th Int Conf on Neural Information Processing Systems. Cambridge, MA: MIT Press, 2002: 375−382

    [26]

    Triguero I, García S, Herrera F. Self-labeled techniques for semi-supervised learning: Taxonomy, software and empirical study[J]. Knowledge and Information Systems, 2015, 42(2): 245−284 doi: 10.1007/s10115-013-0706-y

    [27]

    Kamishima T, Hamasaki M, Akaho S. TrBagg: A simple transfer learning method and its application to personalization in collaborative tagging[C]//Proc of the 9th IEEE Int Conf on Data Mining. Piscataway, NJ: IEEE, 2009: 219−228

    [28]

    Shi Yuan, Lan Zhenzhong, Liu Wei, et al. Extending semi-supervised learning methods for inductive transfer learning[C]//Proc of the 9th IEEE Int Conf on Data Mining. Piscataway, NJ: IEEE, 2009: 483−492

    [29] 刘壮,刘畅,Wayne L,等. 用于金融文本挖掘的多任务学习预训练金融语言模型[J]. 计算机研究与发展,2021,58(8):1761−1772 doi: 10.7544/issn1000-1239.2021.20210298

    Liu Zhuang, Liu Chang, Wayne L, et al. Pretraining financial language model with multi-task learning for financial text mining[J]. Journal of Computer Research and Development, 2021, 58(8): 1761−1772 (in Chinese) doi: 10.7544/issn1000-1239.2021.20210298

  • 期刊类型引用(1)

    1. 曹成昊,陈海英,王雯毅,梁金刚,佘顶,曹建主. 球床式高温气冷堆精细化堆芯核素积存量计算方法研究. 原子能科学技术. 2025(05): 1075-1084 . 百度学术

    其他类型引用(0)

图(3)  /  表(10)
计量
  • 文章访问数:  248
  • HTML全文浏览量:  28
  • PDF下载量:  138
  • 被引次数: 1
出版历程
  • 收稿日期:  2022-03-17
  • 修回日期:  2022-07-12
  • 网络出版日期:  2023-02-28
  • 刊出日期:  2023-06-30

目录

/

返回文章
返回