tritraining算法的研究与改进
摘 要在实际应用中,大量的未标记样本数据比较容易获取,而获取已标记样本数据需要大量的人力物力,获取的难度大大增加。因此,结合标记数据和未标记数据的半监督分类算法成为研究者关注的热点,而Tri-Training算法正是经典的半监督协同训练算法,它不需要交叉验证,效率很高,目前已经被广泛使用于多个领域。本文针对Tri-Training算法进行了研究,分析了算法的初始分类器,并做出了改进,由原本单一的基分类器换成三个不同基分类器的组合,最后原始的Tri-Training算法与改进的Tri-Training算法的对比实验结果证明了改进的有效性。
目 录
第一章 课题介绍 1
1.1研究背景和意义 1
1.2国内外的研究现状和发展方向 1
1.3论文章节安排 3
第二章 开发技术 4
2.1开发平台Weka 4
2.2编程语言Java 4
第三章 算法介绍与分析 6
3.1算法介绍 6
3.2算法步骤 6
第四章 算法的改进与实现 9
4.1算法的改进思路 9
4.1.1基本思路 9
4.1.2开发环境 10
4.2算法的实现 10
4.2.1算法的功能 10
4.2.2算法实现的主要代码 11
4.3算法的对比实验 13
4.3.1实验数据 13
4.3.2实验结果与分析 13
结束语 16
致 谢 17
参考文献 18
第一章 课题介绍
1.1研究背景和意义
1946年,世界上第一台计算机ENIAC在美国宾夕法尼亚大学宣布出世,自此,计算机技术发展迅速,数据的存储和计算能力飞速提升,随着互联网快速的发展和普及,信息的传递和交流也被加快。换句话说,信息大爆炸的今天,人们生活在被数据包裹的现实生活中。因此,如何利用计算机对数据进行分析和提取有价值的信息越来越受到人们的关注,机器学习技术由此产生并迅速发展。
机器学习是人工智能的核心,是信息处理智能化的重要途径。传统的机器学习
*好棒文|www.hbsrm.com +Q: ^351916072#
主要分为两类:一类是无监督学习,另一类是监督学习[1]。无监督学习只使用无标记的样本,在这些数据内部发掘规律,并将满足该模型的未标记样本聚堆,称之为聚类;而监督学习只使用有标记的样例集来学习训练分类器,并对未标记样本进行预测,称之为分类。在现实问题中,研究人员常常面临的是少量的标记样例和大量的未标记样例同时存在的情况。在这种情况下,无监督学习只利用未标记样例,虽然需要耗费的成本比较少,但往往效果不是很理想,且少量标记样例中的有效信息得不到充分的利用;而监督学习只利用标记样例,虽然结果比较可靠,但标记训练样本的标签信息需要耗费大量的人力、物力和财力,甚至在有些情况下无法完成,而且训练得到的分类器大多不具有较强的泛化能力,同时忽略大量的未标记样例,对数据资源造成极大的浪费。也就是说,无论是无监督学习还是监督学习在实际应用中都不尽如人意,都存在着比较大的缺陷。
因此,半监督学习[2]随后被提出,它在利用少量已标记样例的基础上,还能利用大量的未标记样例来辅助分类器的训练,提高学习效果,在一定程度上,克服了无监督学习和监督学习的缺陷。由于实际问题的需要,半监督学习受到了机器学习领域研究学者们的广泛关注,并成为一个研究热点。
协同训练[3]算法是半监督学习算法的一种,2005年周志华等人提出了TriTrai
ning算法,该算法既不需要充分冗余视图[1]也不需要使用不同的分类方法。该算法通过在原始数据集上抽取有差异的数据子集上进行训练来保证分类器的差异性,数据子集由可放回的随机取样法bootstrap获得,并且使用三个分类器以投票的方法来确定置信度较高的标记样例。可见TriTraining算法不但能简便地解决标记样例置信度估计的问题以及对未见样例的预测问题,还能利用集成学习来提高泛化能力。
原始的TriTraining算法中三个基分类器是使用同一种分类算法,这会使得分类器之间的差异性比较小,分类结果不够准确。为了提高分类器之间的差异性使得分类结果更加精确,本文提出将三种不同的分类算法作为基分类器算法的方式对原始的TriTraining算法进行改进。
1.2国内外的研究现状和发展方向
二十世纪80年代末90年代初,部分研究者已经察觉到了未标记样例的价值。因为当时的技术发展的还不够成熟,未标记样本的深度挖掘相比较现在而言是十分困难的,导致真正开始研究半监督学习的时间相对较晚,直到90年代中期,B.Shahshahani和D.Landgrebe才在该领域做了开展性的工作[4],伴随着统计技术的不断前进和发展,利用未标记样例的半监督学习已然成为机器学习方向的一个研究热点。
九十年代中期以后,国内外相关的专家和研究者对半监督学习展开了广而深的研究,主要的研究的几个方向有:第一是在半监督学习中有效地结合有监督学习和无监督学习的算法,来提高学习的能力。第二是在半监督学习中引入一些新的数学方法和分类算法,不断地更新和拓宽半监督学习的理论知识。第三是使得半监督学习的研究对象更加丰富、更加多样化,目前的研究对象已经从单纯的半监督数据扩展延伸到了半监督数据的流行分析、半监督数据和图模型的关系[1]等其他方面。
近几年来,国内的研究者在半监督学习领域做了不少研究。文献5将半监督学习与主动学习相结合[5],利用未标注评论数据有效地提高虚假评论检测的效果。文献6提出了一种结合单类学习和集成学习优点的Ensemble oneclass[6]半监督学习算法。文献3为提高半监督分类的性能,提出了一种安全的基于分歧的半监督学习算法Safe CoSSC[3]。半监督学习自提出之后,经过许多专家和研究学者的努力,已经在很多领域成功地开展应用比如自然语言处理、图像检索。
协同训练算法是半监督学习领域中取得进展较多的其中一个分支,1998年,Blum和Mitchell[7]提出了最早的协同训练算法即cotraining算法,该算法利用两个分类器在数据集上进行学习且数据集必须要有两个充分冗余的视图。训练过程中,每个分类器都从数据集中随机挑选未标记样例对其进行标记,标记完成后将标记好的样例移交给另一个分类器进行学习。由于该算法对数据集的要求比较高,而这种要求在现实问题中无法经常被满足。为了降低该限制条件,Zhou Z H和Li Ming[8]在2005年提出了TriTraining算法,该算法的数据集不需要有两个充分冗余的视图,且对分类器也没有类型的限制。该算法不仅有效地解决了未标记样例的预测问题和置信度估计问题[9],也可以通过集成学习进一步地提高泛化能力。
目 录
第一章 课题介绍 1
1.1研究背景和意义 1
1.2国内外的研究现状和发展方向 1
1.3论文章节安排 3
第二章 开发技术 4
2.1开发平台Weka 4
2.2编程语言Java 4
第三章 算法介绍与分析 6
3.1算法介绍 6
3.2算法步骤 6
第四章 算法的改进与实现 9
4.1算法的改进思路 9
4.1.1基本思路 9
4.1.2开发环境 10
4.2算法的实现 10
4.2.1算法的功能 10
4.2.2算法实现的主要代码 11
4.3算法的对比实验 13
4.3.1实验数据 13
4.3.2实验结果与分析 13
结束语 16
致 谢 17
参考文献 18
第一章 课题介绍
1.1研究背景和意义
1946年,世界上第一台计算机ENIAC在美国宾夕法尼亚大学宣布出世,自此,计算机技术发展迅速,数据的存储和计算能力飞速提升,随着互联网快速的发展和普及,信息的传递和交流也被加快。换句话说,信息大爆炸的今天,人们生活在被数据包裹的现实生活中。因此,如何利用计算机对数据进行分析和提取有价值的信息越来越受到人们的关注,机器学习技术由此产生并迅速发展。
机器学习是人工智能的核心,是信息处理智能化的重要途径。传统的机器学习
*好棒文|www.hbsrm.com +Q: ^351916072#
主要分为两类:一类是无监督学习,另一类是监督学习[1]。无监督学习只使用无标记的样本,在这些数据内部发掘规律,并将满足该模型的未标记样本聚堆,称之为聚类;而监督学习只使用有标记的样例集来学习训练分类器,并对未标记样本进行预测,称之为分类。在现实问题中,研究人员常常面临的是少量的标记样例和大量的未标记样例同时存在的情况。在这种情况下,无监督学习只利用未标记样例,虽然需要耗费的成本比较少,但往往效果不是很理想,且少量标记样例中的有效信息得不到充分的利用;而监督学习只利用标记样例,虽然结果比较可靠,但标记训练样本的标签信息需要耗费大量的人力、物力和财力,甚至在有些情况下无法完成,而且训练得到的分类器大多不具有较强的泛化能力,同时忽略大量的未标记样例,对数据资源造成极大的浪费。也就是说,无论是无监督学习还是监督学习在实际应用中都不尽如人意,都存在着比较大的缺陷。
因此,半监督学习[2]随后被提出,它在利用少量已标记样例的基础上,还能利用大量的未标记样例来辅助分类器的训练,提高学习效果,在一定程度上,克服了无监督学习和监督学习的缺陷。由于实际问题的需要,半监督学习受到了机器学习领域研究学者们的广泛关注,并成为一个研究热点。
协同训练[3]算法是半监督学习算法的一种,2005年周志华等人提出了TriTrai
ning算法,该算法既不需要充分冗余视图[1]也不需要使用不同的分类方法。该算法通过在原始数据集上抽取有差异的数据子集上进行训练来保证分类器的差异性,数据子集由可放回的随机取样法bootstrap获得,并且使用三个分类器以投票的方法来确定置信度较高的标记样例。可见TriTraining算法不但能简便地解决标记样例置信度估计的问题以及对未见样例的预测问题,还能利用集成学习来提高泛化能力。
原始的TriTraining算法中三个基分类器是使用同一种分类算法,这会使得分类器之间的差异性比较小,分类结果不够准确。为了提高分类器之间的差异性使得分类结果更加精确,本文提出将三种不同的分类算法作为基分类器算法的方式对原始的TriTraining算法进行改进。
1.2国内外的研究现状和发展方向
二十世纪80年代末90年代初,部分研究者已经察觉到了未标记样例的价值。因为当时的技术发展的还不够成熟,未标记样本的深度挖掘相比较现在而言是十分困难的,导致真正开始研究半监督学习的时间相对较晚,直到90年代中期,B.Shahshahani和D.Landgrebe才在该领域做了开展性的工作[4],伴随着统计技术的不断前进和发展,利用未标记样例的半监督学习已然成为机器学习方向的一个研究热点。
九十年代中期以后,国内外相关的专家和研究者对半监督学习展开了广而深的研究,主要的研究的几个方向有:第一是在半监督学习中有效地结合有监督学习和无监督学习的算法,来提高学习的能力。第二是在半监督学习中引入一些新的数学方法和分类算法,不断地更新和拓宽半监督学习的理论知识。第三是使得半监督学习的研究对象更加丰富、更加多样化,目前的研究对象已经从单纯的半监督数据扩展延伸到了半监督数据的流行分析、半监督数据和图模型的关系[1]等其他方面。
近几年来,国内的研究者在半监督学习领域做了不少研究。文献5将半监督学习与主动学习相结合[5],利用未标注评论数据有效地提高虚假评论检测的效果。文献6提出了一种结合单类学习和集成学习优点的Ensemble oneclass[6]半监督学习算法。文献3为提高半监督分类的性能,提出了一种安全的基于分歧的半监督学习算法Safe CoSSC[3]。半监督学习自提出之后,经过许多专家和研究学者的努力,已经在很多领域成功地开展应用比如自然语言处理、图像检索。
协同训练算法是半监督学习领域中取得进展较多的其中一个分支,1998年,Blum和Mitchell[7]提出了最早的协同训练算法即cotraining算法,该算法利用两个分类器在数据集上进行学习且数据集必须要有两个充分冗余的视图。训练过程中,每个分类器都从数据集中随机挑选未标记样例对其进行标记,标记完成后将标记好的样例移交给另一个分类器进行学习。由于该算法对数据集的要求比较高,而这种要求在现实问题中无法经常被满足。为了降低该限制条件,Zhou Z H和Li Ming[8]在2005年提出了TriTraining算法,该算法的数据集不需要有两个充分冗余的视图,且对分类器也没有类型的限制。该算法不仅有效地解决了未标记样例的预测问题和置信度估计问题[9],也可以通过集成学习进一步地提高泛化能力。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/2138.html