TradaBoost算法由来已久,具体算法可以参考作者的原始文章,Boosting For Transfer Learning。

1.问题定义

传统的机器学习的模型都是建立在训练数据和测试数据服从相同的数据分布的基础上。典型的比如有监督学习,我们可以在训练数据上面训练得到一个分类器,用于测试数据。但是在许多的情况下,这种同分布的假设并不满足,有时候我们的训练数据会过期,而重新去标注新的数据又是十分昂贵的。这个时候如果丢弃训练数据又是十分可惜的,所以我们就想利用这些不同分布的训练数据,训练出一个分类器,在我们的测试数据上可以取得不错的分类效果。

定义问题模型如下:设为源样例空间,为辅助样例空间。源样例空间也就是我们的目标空间,就是想要去分类的样例空间。设Y={0,1}为类别空间,这里简化了多分类问题为二分类问题讨论,这样我们的训练数据也就是

测试数据:

其中测试数据是未标注的,我们可以将训练数据划分为两个数据集:

其中代表样本数据x的真实所属的类别,和的区别在于和测试数据S是同分布的,和测试数据是不同分布的,现在的任务就是给定很少的源数据和大量的辅助数据训练出一个分类器在测试数据S上的分类误差最小。这里假设利用已有的数据不足以训练出一个泛化能力很强的分类器。

2.TrAdaBoost算法

我们利用AdaBoost算法的思想原理来解决这个问题,起初给训练数据T中的每一个样例都赋予一个权重,当一个源域中的样本被错误的分类之后,我们认为这个样本是很难分类的,于是乎可以加大这个样本的权重,这样在下一次的训练中这个样本所占的比重就更大了,这一点和基本的AdaBoost算法的思想是一样的。如果辅助数据集中的一个样本被错误的分类了,我们认为这个样本对于目标数据是很不同的,我们就降低这个数据在样本中所占的权重,降低这个样本在分类器中所占的比重,下面给出TradaBoost算法的具体流程:

可以看到,在每一轮的迭代中,如果一个辅助训练数据被误分类,那么这个数据可能和源训练数据是矛盾的,那么我们就可以降低这个数据的权重。具体来说,就是给数据乘上一个,其中的值在0到1之间,所以在下一轮的迭代中,被误分类的样本就会比上一轮少影响分类模型一些,在若干次以后,辅助数据中符合源数据的那些数据会拥有更高的权重,而那些不符合源数据的权重会降低。极端的一个情况就是,辅助数据被全部忽略,训练数据就是源数据Tb,这样这时候的算法就成了AdaBoost算法了。在计算错误率的时候,当计算得到的错误率大于0.5的话,需要将其重置为0.5。

可以看到,TrAdaBoost算法在源数据和辅助数据具有很多的相似性的时候可以取得很好效果,但是算法也有不足,当开始的时候辅助数据中的样本如果噪声比较多,迭代次数控制的不好,这样都会加大训练分类器的难度。

【迁移学习】算法之TrAdaBoost相关推荐

  1. 迁移学习算法之TrAdaBoost ——本质上是在用不同分布的训练数据,训练出一个分类器...

    迁移学习算法之TrAdaBoost from: https://blog.csdn.net/Augster/article/details/53039489 TradaBoost算法由来已久,具体算法 ...

  2. 清华大学开源迁移学习算法库:基于PyTorch实现,支持轻松调用已有算法

    机器之心报道 编辑:魔王 作者:清华大学大数据研究中心 近日,清华大学大数据研究中心机器学习研究部开源了一个高效.简洁的迁移学习算法库 Transfer-Learn,并发布了第一个子库--深度领域自适 ...

  3. 原创 | 清华开源迁移学习算法库

    作者:清华大数据软件团队机器学习组 本文长度为1700字,建议阅读6分钟 本文为你介绍 Trans-Learn 算法库. Trans-Learn是基于PyTorch实现的一个高效.简洁的迁移学习算法库 ...

  4. 分布对齐 目标函数 迁移学习_原创 | 清华开源迁移学习算法库

    本文长度为1700字,建议阅读6分钟 本文为你介绍 Trans-Learn 算法库. Trans-Learn是基于PyTorch实现的一个高效.简洁的迁移学习算法库,目前发布了第一个子库--深度域自适 ...

  5. 清华大学开源迁移学习算法库:基于PyTorch实现已有算法

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:机器之心 AI博士笔记系列推荐 周志华<机器学习> ...

  6. 2019 outlook 数据迁移_清华开源迁移学习算法库

    清华大学龙明盛老师课题组长期致力于迁移学习研究.今天,我们很高兴地宣布,我们开源了基于PyTorch实现的一个高效.简洁的迁移学习算法库--Trans-Learn. 目前我们发布了第一个子库--深度域 ...

  7. 一文了解迁移学习经典算法

    来源 | linolzhang的CSDN博客 作者 | linolzhang ▌一. 了解迁移学习 迁移学习(Transfer Learning)目标是将从一个环境中学到的知识用来帮助新环境中的学习任 ...

  8. 迁移学习:经典算法解析

    转自:https://blog.csdn.net/linolzhang/article/details/73358219 一. 了解迁移学习 迁移学习(Transfer Learning)目标是将从一 ...

  9. 半监督分类算法_基于同质区和迁移学习的高光谱图像半监督分类

    作 者 信 息 赵婵娟,周绍光,丁 倩,刘丽丽 (河海大学 地球科学与工程学院,江苏 南京 211100) " [摘要]针对高光谱遥感图像分类中标记样本难获取的问题,提出了一种基于同质区和迁 ...

  10. 迁移学习——入门笔记

    一.简介 背景: 现如今数据爆炸: 对机器学习模型来说要求快速构建,强泛化 对于数据来说,大部分数据没有标签 所以收集标签数据和从头开始构建一个模型都是代价高昂的,需要对模型和带有标签的数据进行重用 ...

最新文章

  1. 7999元大疆最新无人机,支持第一人称视角极速拍摄,网友:不是航拍,是直接起飞...
  2. 信息系统项目管理知识--项目范围管理
  3. Geotools简介以及quickstsrt加载shp文件并显示
  4. wxWidgets:wxSpinCtrlDouble类用法
  5. js 字符串减去字符串_js关于字符串、条件语句和自加和自减
  6. 应用程序添加到服务器,在同一应用程序中的配置服务器和eureka服务器:尝试连接到localhost:8761...
  7. 深入理解uwsgi和gunicorn网络模型
  8. 使用matplotlib绘制高级图表
  9. Urule-Pro 规则引擎 本地Urule下载 初始化教程
  10. linux proc文件创建指南
  11. timestamp与datetime的对比
  12. UML用例图-软件需求分析与设计(很详细,很详细,很详细)
  13. TiDB监控pd面板显示:Region Health: empty-regin-count很多,怎么回收empty-regin?
  14. kaldi跑自己数据遇到的问题合集(持续更)
  15. 安防工程商遇六大挑战考验 能否披荆斩棘?
  16. gen8服务器性能,HP助AMD平台Gen8服务器提高性能
  17. 教你怎样来优化Apache服务器的性能
  18. opencv surf特征点检测(二),API接口分析
  19. Python:实现sobel边缘检测算法(附完整源码)
  20. 【黑苹果升级到ventura13】 Y7000P-2018升级到 ventura13

热门文章

  1. adboost,随机森林,gbdt,xgboost,lightgbm区别
  2. 数据科学高级分析 (Data science advanced analytics)
  3. [Liferay6.2]Liferay Dynamic Query API示例
  4. spring-session(一)揭秘续篇
  5. Linux交换空间(swap space)
  6. 诺基亚收购阿朗再交易 持股比例将超95%
  7. apache tuscany(一)
  8. Jquery动态进行图片缩略
  9. java se基础复习3
  10. struts2 + json 包冲突问题