📜  数据挖掘中的迁移学习

📅  最后修改于: 2022-05-13 01:56:15.497000             🧑  作者: Mango

数据挖掘中的迁移学习

迁移学习是人类在一项任务中应用他们的知识来学习另一项任务的方式。迁移学习从一个或多个成功批准的任务中获取知识,并将这些知识应用于解决新问题。在迁移学习中,用于训练和测试的分布和数据域可以不同。迁移学习支持两种类型的学习:

  • 正迁移:当在一种情况下的学习促进在另一种情况下的学习时,称为正迁移。
  • 负迁移:当学习一项任务使另一项任务的学习变得更加困难时,称为负迁移。

迁移学习的优势:

  • 迁移学习对更大的应用有广泛的研究,例如社交网络分析和网络分类。
  • 迁移学习节省了成本和时间,使我们能够开发与某些概念相关的许多类似应用程序。例如,如果我们知道会弹奏竖笛,我们就可以应用这种注意音乐音轨的知识来学习弹钢琴。
  • 迁移学习在数据在特定时间段内过时或数据动态变化的情况下很有用。例如,应用迁移学习的地方是网络文档分类,我们可能已经用不同新闻组的分类数据训练了模型。如果我们使用网站上的网络数据来训练分类器很容易变得过时,因为网站上的主题数据可以经常更改。
  • 电子邮件垃圾邮件过滤是迁移学习的另一个应用程序。通过使用分类算法训练模型,我们可以将用户的电子邮件过滤为垃圾邮件或火腿。如果出现新电子邮件并且这些电子邮件可能与最初训练的电子邮件不同,因此我们需要调整学习模型以能够对不同类别的新电子邮件进行分类。
  • 通过迁移学习进行知识迁移将减少对大量数据进行注释的需要,这是迁移学习的核心优势。
  • 因此,迁移学习可以节省时间并减少从头开始重建设计和模型的工作量。
传统学习与迁移学习

迁移学习的方法:

在数据挖掘中灌输迁移学习有不同的方法。最常见的方法是 TrAdaBoost(Transfer AdaBoost)算法,这是一种基于实例的迁移学习方法。在这种方法中,一些经过训练的数据可以调整和重新加权类标签数据,并用它来学习目标任务。考虑上面讨论的 Web 文档分类示例,其中经过训练的旧数据分类器的分布与目标数据不同。 TrAdaBoost 假设训练数据和测试数据(目标域数据)具有相同的属性域集,并且它们也具有相同的类标签集。但是,如果训练数据和测试数据的分布属于不同的域,就会变得很困难。 TrAdaBoost 还配置 AdaBoost 集成方法的属性。旧的源数据或训练数据可能会更有用,因为 TrAdaBoost 假设其中大部分可用于训练其他新分类模型。我们可以通过过滤掉与新数据不同的旧数据来做到这一点,并且我们需要调整分配给训练元组的权重。

如果新问题的模型是从基础知识模式成功构建的,则迁移学习将成为正迁移。如果新训练的设计模型与基础模型相比到目前为止不相关并且与目标数据异质,则会发生负迁移。如果未对训练数据进行预处理或基础模型的特征不适合特定数据属性,则会发生负迁移。

迁移学习的挑战:

  • 迁移学习的挑战之一是负迁移。这使得模型的学习效率低下。所以有必要避免负转移。
  • 如果数据没有经过预处理,那么迁移学习可能会提供不相关的模型。